From 449428b76231525ff14d1a92f8c15e564a18be74 Mon Sep 17 00:00:00 2001 From: zhouhefeng Date: Tue, 2 Jun 2026 08:17:07 +0800 Subject: [PATCH] commit --- .../info/MemberInfoGroupController.java | 56 +++ .../member/info/common/commonQuery.js | 13 +- .../staffmanage/member/info/group/index.html | 422 ++++++++++++++---- 3 files changed, 409 insertions(+), 82 deletions(-) diff --git a/src/main/java/com/budwk/app/zhgh/staffmanage/member/controller/info/MemberInfoGroupController.java b/src/main/java/com/budwk/app/zhgh/staffmanage/member/controller/info/MemberInfoGroupController.java index 3ff2d154..211b3c3d 100644 --- a/src/main/java/com/budwk/app/zhgh/staffmanage/member/controller/info/MemberInfoGroupController.java +++ b/src/main/java/com/budwk/app/zhgh/staffmanage/member/controller/info/MemberInfoGroupController.java @@ -7,6 +7,8 @@ import com.alibaba.excel.EasyExcel; import com.budwk.app.base.annotation.SLog; import com.budwk.app.base.page.Pagination; import com.budwk.app.base.result.Result; +import com.budwk.app.sys.models.Sys_union; +import com.budwk.app.sys.models.Sys_union_cadre; import com.budwk.app.zhgh.staffmanage.member.models.MemberHistory; import com.budwk.app.zhgh.staffmanage.member.param.pageform.MemberInfoPageForm; import com.budwk.app.zhgh.staffmanage.member.service.MemberInfoService; @@ -14,6 +16,7 @@ import com.budwk.app.zhgh.staffmanage.member.vo.MemberImportVo; import lombok.extern.slf4j.Slf4j; import org.nutz.aop.interceptor.ioc.TransAop; import org.nutz.dao.Cnd; +import org.nutz.dao.Sqls; import org.nutz.dao.sql.Sql; import org.nutz.ioc.aop.Aop; import org.nutz.ioc.loader.annotation.Inject; @@ -30,6 +33,7 @@ import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; import java.net.URLEncoder; import java.util.ArrayList; +import java.util.stream.Collectors; /** * @version 1.0 @@ -72,6 +76,58 @@ public class MemberInfoGroupController { return Result.success(pagination); } + @At + @SaCheckPermission("member.info.group") + public Result unionOverview(String unionId) { + Sys_union union = memberInfoService.dao().fetch(Sys_union.class, unionId); + if (union == null) { + return Result.success(NutMap.NEW()); + } + + int staffTotal = memberInfoService.count(Sqls.create(""" + select count(1) + from vw_user u + where u.unionId = @unionId + and u.personType in ( + select dict.code + from sys_dict dict + left join sys_dict parent on parent.id = dict.parentId + where parent.code = 'USER_PERSON_TYPE' + and dict.name = '教职工' + ) + """) + .setParam("unionId", unionId)); + int memberTotal = memberInfoService.count(Sqls.create("select count(1) from vw_user where unionId = @unionId and member = 1") + .setParam("unionId", unionId)); + int maleTotal = memberInfoService.count(Sqls.create("select count(1) from vw_user where unionId = @unionId and member = 1 and (sex = '男' or sex = '男性')") + .setParam("unionId", unionId)); + int femaleTotal = memberInfoService.count(Sqls.create("select count(1) from vw_user where unionId = @unionId and member = 1 and (sex = '女' or sex = '女性')") + .setParam("unionId", unionId)); + + java.util.List chairmen = memberInfoService.dao().query(Sys_union_cadre.class, + Cnd.where("unionId", "=", unionId) + .and("roleCode", "=", "BRANCH_UNION_CHAIRMAN") + .and(Cnd.exps("isServing", "=", true).or("isServing", "is", null))); + String chairman = chairmen.stream() + .map(item -> item.getUserName() + "(" + item.getLoginName() + ")") + .collect(Collectors.joining("、")); + String chairmanMobile = chairmen.stream() + .map(Sys_union_cadre::getMobile) + .filter(mobile -> mobile != null && !mobile.isBlank()) + .collect(Collectors.joining("、")); + + return Result.success(NutMap.NEW() + .addv("unionName", union.getName()) + .addv("unionCode", union.getUnionCode()) + .addv("chairman", chairman) + .addv("telephone", union.getTelephone()) + .addv("chairmanMobile", chairmanMobile) + .addv("memberTotal", memberTotal) + .addv("staffTotal", staffTotal) + .addv("maleTotal", maleTotal) + .addv("femaleTotal", femaleTotal)); + } + @At @SaCheckPermission("member.info.group") diff --git a/src/main/resources/views/platform/zhgh/staffmanage/member/info/common/commonQuery.js b/src/main/resources/views/platform/zhgh/staffmanage/member/info/common/commonQuery.js index 04d2d688..093e1245 100644 --- a/src/main/resources/views/platform/zhgh/staffmanage/member/info/common/commonQuery.js +++ b/src/main/resources/views/platform/zhgh/staffmanage/member/info/common/commonQuery.js @@ -20,7 +20,7 @@ - @@ -94,6 +94,17 @@ pageForm.preparedBys = JSON.stringify(this.pageForm.preparedBys) this.$emit('search', pageForm) }, + handleUnionChange() { + this.flushUnits() + this.$emit("union-change", this.pageForm.unionId || "") + }, + handleUnionClear() { + this.handleUnionChange() + }, + setUnionFromTree(unionId) { + this.$set(this.pageForm, "unionId", unionId || "") + this.flushUnits() + }, async initData(){ if (this.$auth.hasRoleOr("SYSADMIN, SCHOOL_UNION_ADMIN, SCHOOL_UNION_MEMBER_ADMIN")) { this.$businessTool.listUnion(this.pageForm.unionId).then((data) => { diff --git a/src/main/resources/views/platform/zhgh/staffmanage/member/info/group/index.html b/src/main/resources/views/platform/zhgh/staffmanage/member/info/group/index.html index 2c415fde..77518eb9 100644 --- a/src/main/resources/views/platform/zhgh/staffmanage/member/info/group/index.html +++ b/src/main/resources/views/platform/zhgh/staffmanage/member/info/group/index.html @@ -4,88 +4,187 @@ layout("/layouts/platform.html"){