diff --git a/src/main/java/com/budwk/app/zhgh/activity/declarereimbursement/reimbursement/controller/ActivityReimbursementBoardController.java b/src/main/java/com/budwk/app/zhgh/activity/declarereimbursement/reimbursement/controller/ActivityReimbursementBoardController.java index 5ea50cb..678edb7 100644 --- a/src/main/java/com/budwk/app/zhgh/activity/declarereimbursement/reimbursement/controller/ActivityReimbursementBoardController.java +++ b/src/main/java/com/budwk/app/zhgh/activity/declarereimbursement/reimbursement/controller/ActivityReimbursementBoardController.java @@ -51,13 +51,13 @@ public class ActivityReimbursementBoardController { @ApiOperation("获取参与人数和活动报销经费数据") @SaCheckPermission("activityReimbursement.board") public Result getNumData(Integer startYear, Integer endYear){ - Sql schoolSignNum = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, false).setParam("type", ActivityDeclareReimbursement.SCHOOL_UNION.name()); - Sql unionSignNum = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, false).setParam("type", ActivityDeclareReimbursement.BRANCH_UNION.name()); - Sql clubSignNum = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, false).setParam("type", ActivityDeclareReimbursement.CLUB.name()); + Sql schoolSignNum = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, false).setParam("type", "ACTIVITY_BUDGET_TYPE_ONE"); + Sql unionSignNum = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, false).setParam("type", "ACTIVITY_BUDGET_TYPE_TWO"); + Sql clubSignNum = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, false).setParam("type", "ACTIVITY_BUDGET_TYPE_THREE"); - Sql schoolActivityMoney = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, true).setParam("type", ActivityDeclareReimbursement.SCHOOL_UNION.name()); - Sql unionActivityMoney = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, true).setParam("type", ActivityDeclareReimbursement.BRANCH_UNION.name()); - Sql clubActivityMoney = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, true).setParam("type", ActivityDeclareReimbursement.CLUB.name()); + Sql schoolActivityMoney = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, true).setParam("type", "ACTIVITY_BUDGET_TYPE_ONE"); + Sql unionActivityMoney = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, true).setParam("type", "ACTIVITY_BUDGET_TYPE_TWO"); + Sql clubActivityMoney = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, true).setParam("type", "ACTIVITY_BUDGET_TYPE_THREE"); HashMap result = new HashMap() {{ put("schoolSignNum", activityReimbursementService.listMap(schoolSignNum).stream().mapToInt(v->v.getInt("activityNum")).sum()); put("unionSignNum", activityReimbursementService.listMap(unionSignNum).stream().mapToInt(v->v.getInt("activityNum")).sum()); @@ -82,8 +82,8 @@ public class ActivityReimbursementBoardController { activity_reimbursement_info info LEFT JOIN wf_process_instance ins ON info.id = ins.businessNo WHERE - ins.state = 30 - AND info.activityType = @type + ins.state = 20 + AND info.outlayManageSource = @type AND info.`year` = @year """); @@ -99,19 +99,19 @@ public class ActivityReimbursementBoardController { list.add(new NutMap() {{ put("year", year); put("type", "校工会活动"); - put("num", activityReimbursementService.count(sql.setParam("type", ActivityDeclareReimbursement.SCHOOL_UNION.name()).setParam("year", year))); + put("num", activityReimbursementService.count(sql.setParam("type", "ACTIVITY_BUDGET_TYPE_ONE").setParam("year", year))); }}); list.add(new NutMap() {{ put("year", year); put("type", "分工会活动"); - put("num", activityReimbursementService.count(sql.setParam("type", ActivityDeclareReimbursement.BRANCH_UNION.name()).setParam("year", year))); + put("num", activityReimbursementService.count(sql.setParam("type","ACTIVITY_BUDGET_TYPE_TWO").setParam("year", year))); }}); list.add(new NutMap() {{ put("year", year); put("type", "社团活动"); - put("num", activityReimbursementService.count(sql.setParam("type", ActivityDeclareReimbursement.CLUB.name()).setParam("year", year))); + put("num", activityReimbursementService.count(sql.setParam("type", "ACTIVITY_BUDGET_TYPE_THREE").setParam("year", year))); }}); } return Result.success().addData(list); @@ -129,8 +129,8 @@ public class ActivityReimbursementBoardController { activity_reimbursement_info info LEFT JOIN wf_process_instance ins ON info.id = ins.businessNo WHERE - ins.state = 30 - AND activityType = @type + ins.state = 20 + AND outlayManageSource = @type AND `year` <= @startYear AND `year` >= @endYear """).setParam("startYear", startYear).setParam("endYear", endYear); @@ -138,15 +138,15 @@ public class ActivityReimbursementBoardController { List list = new ArrayList<>(); list.add(new NutMap() {{ put("type", "校工会活动"); - put("num", activityReimbursementService.count(sql.setParam("type", ActivityDeclareReimbursement.SCHOOL_UNION.name()))); + put("num", activityReimbursementService.count(sql.setParam("type", "ACTIVITY_BUDGET_TYPE_ONE"))); }}); list.add(new NutMap() {{ put("type", "分工会活动"); - put("num", activityReimbursementService.count(sql.setParam("type", ActivityDeclareReimbursement.BRANCH_UNION.name()))); + put("num", activityReimbursementService.count(sql.setParam("type", "ACTIVITY_BUDGET_TYPE_TWO"))); }}); list.add(new NutMap() {{ put("type", "社团活动"); - put("num", activityReimbursementService.count(sql.setParam("type", ActivityDeclareReimbursement.CLUB.name()))); + put("num", activityReimbursementService.count(sql.setParam("type", "ACTIVITY_BUDGET_TYPE_THREE"))); }}); return Result.success(list); } @@ -163,8 +163,8 @@ public class ActivityReimbursementBoardController { activity_reimbursement_info info LEFT JOIN wf_process_instance ins ON info.id = ins.businessNo WHERE - ins.state = 30 - AND info.activityType = @type + ins.state = 20 + AND info.outlayManageSource = @type AND info.`year` = @year """); @@ -180,19 +180,19 @@ public class ActivityReimbursementBoardController { list.add(new NutMap() {{ put("year", year); put("type", "校工会费用"); - put("num", activityReimbursementService.list(sql.setParam("type", ActivityDeclareReimbursement.SCHOOL_UNION.name()).setParam("year", year)).get(0).getDouble("money")); + put("num", activityReimbursementService.list(sql.setParam("type", "ACTIVITY_BUDGET_TYPE_ONE").setParam("year", year)).get(0).getDouble("money")); }}); list.add(new NutMap() {{ put("year", year); put("type", "分工会费用"); - put("num", activityReimbursementService.list(sql.setParam("type", ActivityDeclareReimbursement.BRANCH_UNION.name()).setParam("year", year)).get(0).getDouble("money")); + put("num", activityReimbursementService.list(sql.setParam("type", "ACTIVITY_BUDGET_TYPE_TWO").setParam("year", year)).get(0).getDouble("money")); }}); list.add(new NutMap() {{ put("year", year); put("type", "社团费用"); - put("num", activityReimbursementService.list(sql.setParam("type", ActivityDeclareReimbursement.CLUB.name()).setParam("year", year)).get(0).getDouble("money")); + put("num", activityReimbursementService.list(sql.setParam("type", "ACTIVITY_BUDGET_TYPE_THREE").setParam("year", year)).get(0).getDouble("money")); }}); } @@ -204,9 +204,9 @@ public class ActivityReimbursementBoardController { @ApiOperation("获取活动的经费饼图") @SaCheckPermission("activityReimbursement.board") public Result getActivityMoneyPieNum(Integer startYear, Integer endYear){ - Sql schoolSql = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, true).setParam("type", ActivityDeclareReimbursement.SCHOOL_UNION.name()); - Sql unionSql = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, true).setParam("type", ActivityDeclareReimbursement.BRANCH_UNION.name()); - Sql clubSql = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, true).setParam("type", ActivityDeclareReimbursement.CLUB.name()); + Sql schoolSql = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, true).setParam("type", "ACTIVITY_BUDGET_TYPE_ONE"); + Sql unionSql = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, true).setParam("type", "ACTIVITY_BUDGET_TYPE_TWO"); + Sql clubSql = activityReimbursementService.getActivityUserNumAndMoneySql(startYear, endYear, true).setParam("type", "ACTIVITY_BUDGET_TYPE_THREE"); List list = new ArrayList<>(); list.add(new NutMap() {{ diff --git a/src/main/java/com/budwk/app/zhgh/activity/declarereimbursement/reimbursement/controller/ActivityReimbursementDeputySchoolUnionController.java b/src/main/java/com/budwk/app/zhgh/activity/declarereimbursement/reimbursement/controller/ActivityReimbursementDeputySchoolUnionController.java index 03ae5b7..7f7c3bd 100644 --- a/src/main/java/com/budwk/app/zhgh/activity/declarereimbursement/reimbursement/controller/ActivityReimbursementDeputySchoolUnionController.java +++ b/src/main/java/com/budwk/app/zhgh/activity/declarereimbursement/reimbursement/controller/ActivityReimbursementDeputySchoolUnionController.java @@ -108,7 +108,7 @@ public class ActivityReimbursementDeputySchoolUnionController { pageParam.buildSearch(cnd, "info."); cnd.and("t.taskName", "=", "f9b8379f-f348-4985-ba58-b6ba28deb9af"); -// cnd.and("ta.actorId", "in", List.of(SecurityUtil.getUserId())); + cnd.and("ta.actorId", "in", List.of(SecurityUtil.getUserId())); cnd.andEX("outlay.budgetReimburseType", "=", pageParam.getBudgetReimburseType()); cnd.andEX("info.outlayManageSource", "=", pageParam.getOutlayManageSource()); cnd.andEX("info.activityReimbursementMode", "=", pageParam.getActivityReimbursementMode()); diff --git a/src/main/java/com/budwk/app/zhgh/activity/declarereimbursement/reimbursement/service/impl/ActivityReimbursementServiceImpl.java b/src/main/java/com/budwk/app/zhgh/activity/declarereimbursement/reimbursement/service/impl/ActivityReimbursementServiceImpl.java index b1a7e35..a7ac654 100644 --- a/src/main/java/com/budwk/app/zhgh/activity/declarereimbursement/reimbursement/service/impl/ActivityReimbursementServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/activity/declarereimbursement/reimbursement/service/impl/ActivityReimbursementServiceImpl.java @@ -45,8 +45,8 @@ public class ActivityReimbursementServiceImpl extends BaseServiceImpl= @startYear AND info.`year` <= @endYear """) @@ -59,8 +59,8 @@ public class ActivityReimbursementServiceImpl extends BaseServiceImpl= @startYear AND info.`year` <= @endYear """).setParam("startYear", startYear).setParam("endYear", endYear); diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/caredata/StaffCareDataCon.java b/src/main/java/com/budwk/app/zhgh/dayofficework/caredata/StaffCareDataCon.java new file mode 100644 index 0000000..275d764 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/caredata/StaffCareDataCon.java @@ -0,0 +1,207 @@ +package com.budwk.app.zhgh.dayofficework.careData; + + +import cn.dev33.satoken.annotation.SaCheckPermission; +import com.budwk.app.base.result.Result; +import com.budwk.app.base.service.BaseService; +import com.budwk.app.sys.models.Sys_user; +import com.budwk.app.sys.services.SysUserService; +import com.budwk.app.web.commons.auth.utils.SecurityUtil; +import org.nutz.dao.Cnd; +import org.nutz.dao.Sqls; +import org.nutz.dao.entity.Record; +import org.nutz.dao.sql.Sql; +import org.nutz.dao.sql.SqlCallback; +import org.nutz.dao.util.cri.SqlExpressionGroup; +import org.nutz.dao.util.cri.Static; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.lang.Strings; +import org.nutz.log.Log; +import org.nutz.log.Logs; +import org.nutz.mvc.annotation.At; +import org.nutz.mvc.annotation.Ok; + +import java.util.ArrayList; +import java.util.Calendar; +import java.util.HashMap; +import java.util.List; + +/** + * @Author: 1V + * @DateTime: 2020/10/15 10:37 + * @Description: 职工关爱大数据 + */ +@At("/platform/careData/staff") +@IocBean +@Ok("json") +public class StaffCareDataCon { + private static final Log log = Logs.get(); + + @At("") + @Ok("beetl:/platform/zhgh/dayofficework/careData/staff/index.html") + @SaCheckPermission("careData.staff") + public void index() { + + } + + @Inject + private SysUserService sysUserService; + + @Inject + private BaseService baseService; + + + @At + @SaCheckPermission("careData.staff") + public Object getNumByYear(Integer yearnum, String userid, Integer startYear, Integer endYear) { + try { + Sys_user user = sysUserService.fetch(userid); + + ArrayList result = new ArrayList<>(); + + if (startYear == null && endYear == null) { + int year = Calendar.getInstance().get(Calendar.YEAR); + yearnum = yearnum == null ? 10 : yearnum; + startYear = year - yearnum + 1; + endYear = year; + } + + for (int i = startYear; i <= endYear; i++) { + final int y = i; + List list = baseService.list(Sqls.create("SELECT '职工慰问' type,count( 1 ) value, YEAR ( con.createTime ) `year` FROM condolence con WHERE YEAR ( con.createTime ) = @year and con.applyUserId = @user GROUP BY YEAR ( con.createTime )").setParam("year", i).setParam("user", userid)); + result.addAll(list.size() > 0 ? list : new ArrayList() {{ + add(new HashMap() {{ + put("type", "职工慰问"); + put("value", 0); + put("year", y); + }}); + }}); + List list1 = baseService.list(Sqls.create("SELECT '困难帮扶' type,count(1) value,year(bf.applyTime) `year` from difficult_help_info bf WHERE YEAR ( bf.applyTime ) = @year and bf.proxyUserId = @user GROUP BY YEAR(bf.applyTime) ").setParam("year", i).setParam("user", userid)); + result.addAll(list1.size() > 0 ? list1 : new ArrayList() {{ + add(new HashMap() {{ + put("type", "困难帮扶"); + put("value", 0); + put("year", y); + }}); + }}); + + result.add(new HashMap() {{ + put("type", "撰写提案"); + put("value", baseService.count(Sqls.create("SELECT count(1) from proposal_info info where info.createUserId = @user and YEAR(info.createTime) = @year").setParam("year", y).setParam("user", userid))); + put("year", y); + }}); + + result.add(new HashMap() {{ + put("type", "经费报销"); + put("value", baseService.count(Sqls.create("SELECT count(1) from activity_reimbursement_info bx WHERE bx.userId = @user and year(bx.applyTime) = @year").setParam("year", y).setParam("user", userid))); + put("year", y); + }}); + } + + return Result.success().addData(result); + } catch (Exception e) { + return Result.error(); + } + } + + @At + @SaCheckPermission("careData.staff") + public Result getYearNumAndAllNum(String userid) { + HashMap map = new HashMap<>(); + int year = Calendar.getInstance().get(Calendar.YEAR); + Sys_user user = sysUserService.fetch(userid); + + map.put("now_year", new HashMap() {{ + put("zgww", baseService.count(Sqls.create("SELECT count(1) FROM condolence con WHERE YEAR ( con.createTime ) = @year and con.applyUserId = @user").setParam("year", year).setParam("user", userid))); + put("knbf", baseService.count(Sqls.create("SELECT count(1) FROM difficult_help_info bf WHERE YEAR ( bf.applyTime ) = @year and bf.userId = @user").setParam("year", year).setParam("user", userid))); + put("ta", baseService.count(Sqls.create("SELECT count(1) from proposal_info info where info.createUserId = @user and YEAR(info.createTime) = @year").setParam("year", year).setParam("user", userid))); + put("jfbx", baseService.count(Sqls.create("SELECT count(1) from activity_reimbursement_info bx WHERE bx.userId = @user and year(bx.applyTime) = @year").setParam("year", year).setParam("user", userid))); + }}); + + map.put("all", new HashMap() {{ + put("zgww", baseService.count(Sqls.create("SELECT count(1) FROM condolence con WHERE YEAR ( con.createTime ) = @year and con.applyUserId = @user").setParam("year", year).setParam("user", userid))); + put("knbf", baseService.count(Sqls.create("SELECT count(1) FROM difficult_help_info bf WHERE YEAR ( bf.applyTime ) = @year and bf.userId = @user").setParam("year", year).setParam("user", userid))); + put("ta", baseService.count(Sqls.create("SELECT count(1) from proposal_info info where info.createUserId = @user and YEAR(info.createTime) = @year").setParam("year", year).setParam("user", userid))); + put("jfbx", baseService.count(Sqls.create("SELECT count(1) from activity_reimbursement_info bx WHERE bx.userId = @user").setParam("user", userid))); + }}); + return Result.success(map); + } + + + @At + @SaCheckPermission("careData.staff") + public Object queryUser(String key) { + try { + Sql sql = Sqls.create("select id,username,loginname,sex,birthday,unitName,unionName FROM vw_user $condition"); + Cnd cnd = Cnd.NEW(); + SqlExpressionGroup group = new SqlExpressionGroup(); + group.orLike("username", key); + group.orLike("loginname", key); + cnd.and(group); + + sql.setCondition(cnd); + return Result.success().addData(baseService.listPage(1, 50, sql)); + } catch (Exception e) { + log.error(e); + return Result.error(); + } + } + + + @At + @SaCheckPermission("careData.staff") + public Object timeLine(String userid, String type, Boolean desc, String startTime, String endTime) { + try { + Sys_user user = sysUserService.fetch(userid); + Sql sql = Sqls.create("SELECT * from (\n" + + "SELECT con.id id,con.createTime time,'zgww' type FROM condolence con WHERE con.applyUserId= @user\n" + + "union all \n" + + "SELECT bf.id id ,bf.applyTime time,'knbf' type FROM difficult_help_info bf WHERE bf.userId = @user\n" + + "union all\n" + + "SELECT info.id id, info.createTime time , 'ta' type from proposal_info info where info.createUserId = @user\n" + + "union all\n" + + "SELECT school.id, school.startTime time , 'xhd' type from activity_school_apply apply left join activity_school school on apply.activityId = school.id WHERE apply.userId = @user\n" + + "union all\n" + + "SELECT bx.id id , bx.applyTime time ,'yybx' type from activity_reimbursement_info bx WHERE bx.userId = @user\n" + + ") tab WHERE 1=1 $type $year\n" + + "ORDER BY tab.time $order"); + if (Strings.isNotBlank(type) && !type.equals("all")) { + sql.setVar("type", "AND tab.type = '" + type + "'"); + } + if (Strings.isNotBlank(startTime) && Strings.isNotBlank(endTime)) { + sql.setVar("year", "AND tab.time >= '" + startTime + "' AND tab.time <= '" + endTime + "'"); + } + + if (desc == null || desc) { + sql.setVar("order", "desc"); + } else { + sql.setVar("order", "asc"); + } + + sql.setParam("user", userid); + sql.setParam("loginname", user.getLoginname()); + + List list = sysUserService.list(sql); + + return Result.success().addData(list); + } catch (Exception e) { + log.error(e); + return Result.error(); + } + } + + @At + @SaCheckPermission("careData.staff") + public Result initUser() { + Sql sql = Sqls.create(""" + select id,username,loginname,sex,birthday,unitName,unionName FROM vw_user WHERE id=@id + """).setParam("id", SecurityUtil.getUserId()); + sql.setCallback(Sqls.callback.map()); + sysUserService.execute(sql); + return Result.success().addData(sql.getResult()); + + } + + +} diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/caredata/UnionCareDataCon.java b/src/main/java/com/budwk/app/zhgh/dayofficework/caredata/UnionCareDataCon.java new file mode 100644 index 0000000..951378d --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/caredata/UnionCareDataCon.java @@ -0,0 +1,182 @@ +package com.budwk.app.zhgh.dayofficework.caredata; + +import cn.dev33.satoken.annotation.SaCheckPermission; +import com.budwk.app.base.constant.RoleConstant; +import com.budwk.app.base.result.Result; +import com.budwk.app.base.service.BaseService; +import com.budwk.app.sys.services.SysUserService; +import com.budwk.app.web.commons.auth.utils.AuthUtil; +import com.budwk.app.web.commons.auth.utils.SecurityUtil; +import com.budwk.app.zhgh.club.model.SysClub; +import com.budwk.app.zhgh.club.service.SysClubService; +import com.budwk.app.zhgh.dayofficework.outlay.activityBudget.service.ActivityBudgetApplyStatisticsService; +import org.nutz.dao.Cnd; +import org.nutz.dao.Sqls; +import org.nutz.dao.entity.Record; +import org.nutz.dao.sql.Sql; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.ioc.loader.annotation.IocBean; +import org.nutz.lang.util.NutMap; +import org.nutz.log.Log; +import org.nutz.log.Logs; +import org.nutz.mvc.annotation.At; +import org.nutz.mvc.annotation.Ok; + +import java.util.*; + +/** + * @Author: 1V + * @DateTime: 2020/10/15 11:39 + * @Description: 工会大数据 + */ +@At("/platform/careData/union") +@IocBean +@Ok("json") +public class UnionCareDataCon { + private static final Log log = Logs.get(); + + @At("") + @Ok("beetl:/platform/zhgh/dayofficework/careData/unionCare/index.html") + @SaCheckPermission("careData.union") + public void index() { + + } + + @Inject + private BaseService baseService; + + @Inject + private SysUserService sysUserService; + + @Inject + private SysClubService sysClubService; + + @Inject + private ActivityBudgetApplyStatisticsService activityBudgetService; + + @At + @SaCheckPermission("careData.union") + public Result getNumData() { + Sql sql1 = Sqls.create("SELECT count(1) FROM sys_user u WHERE u.member=1"); + Sql sql2 = Sqls.create("SELECT count(1) from sys_union"); + List myManageClub = sysClubService.getMyManageClub(); + + Map result = new HashMap() {{ + put("hy_num", baseService.count(sql1)); + put("fgh_num", baseService.count(sql2)); + put("st_num", myManageClub.size()); + }}; + return Result.success(result); + + } + + + @At + @SaCheckPermission("careData.union") + public Result getHyNumBySex() { + Sql sql1 = Sqls.create("SELECT IFNULL(count(1),0) FROM vw_user u WHERE u.member=1 and u.sex='男' and u.unionId!='' $fgh"); + Sql sql2 = Sqls.create("SELECT IFNULL(count(1),0) FROM vw_user u WHERE u.member=1 and u.sex='女' and u.unionId!='' $fgh"); + + if (!AuthUtil.hasRoleOr(RoleConstant.SYSADMIN.name(), RoleConstant.SCHOOL_UNION_ADMIN.name()) + && AuthUtil.hasRole(RoleConstant.BRANCH_UNION_CHAIRMAN.name())) { + sql1.setVar("fgh", "AND u.unionId = %s".formatted(SecurityUtil.getUnionId())); + sql2.setVar("fgh", "AND u.unionId = %s".formatted(SecurityUtil.getUnionId())); + } + + return Result.success().addData(new ArrayList() {{ + add(new HashMap() {{ + put("name", "男"); + put("value", baseService.count(sql1)); + }}); + add(new HashMap() {{ + put("name", "女"); + put("value", baseService.count(sql2)); + }}); + }}); + } + + + + @At + @SaCheckPermission("careData.union") + public Result getActivityBudget(){ + int nowYear = Calendar.getInstance().get(Calendar.YEAR); + Integer startYear = nowYear - 9; + Integer endYear = nowYear; + List list = new ArrayList<>(); + for (int i = startYear; i <= endYear; i++) { + final int year = i; + + Sql sql = activityBudgetService.getsql(year, null, null, "ACTIVITY_BUDGET_TYPE_ONE", null, null); + List mapList = activityBudgetService.listMap(sql); + mapList = mapList.stream().filter(v -> !v.getBoolean("isSchoolBudget")).toList(); + double totalBudgetMoney = mapList.stream().mapToDouble(map -> map.getDouble("totalBudgetMoney")).sum(); + list.add(new HashMap() {{ + put("year", year); + put("type", "校工会经费"); + put("value", totalBudgetMoney); + }}); + + Sql sql2 = activityBudgetService.getsql(year, null, null, "ACTIVITY_BUDGET_TYPE_TWO", null, null); + List mapList2 = activityBudgetService.listMap(sql2); + mapList2 = mapList2.stream().filter(v -> !v.getBoolean("isSchoolBudget")).toList(); + double totalBudgetMoney2 = mapList2.stream().mapToDouble(map -> map.getDouble("totalBudgetMoney")).sum(); + list.add(new HashMap() {{ + put("year", year); + put("type", "分工会经费"); + put("value", totalBudgetMoney2); + }}); + + Sql sql3 = activityBudgetService.getsql(year, null, null, "ACTIVITY_BUDGET_TYPE_THREE", null, null); + List mapList3 = activityBudgetService.listMap(sql3); + mapList3 = mapList3.stream().filter(v -> !v.getBoolean("isSchoolBudget")).toList(); + double totalBudgetMoney3 = mapList3.stream().mapToDouble(map -> map.getDouble("totalBudgetMoney")).sum(); + list.add(new HashMap() {{ + put("year", year); + put("type", "协会经费"); + put("value", totalBudgetMoney3); + }}); + + } + return Result.success(list); + } + + + @At + @SaCheckPermission("careData.union") + public Result getDifficultHelpNum(){ + int nowYear = Calendar.getInstance().get(Calendar.YEAR); + Integer startYear = nowYear - 9; + Integer endYear = nowYear; + List list = new ArrayList<>(); + + + String sqls= """ + SELECT + COUNT(info.id) + FROM + difficult_help_info info + LEFT JOIN `wf_process_instance` ins ON ins.businessNo = info.id + LEFT JOIN wf_process_task t ON t.processInstanceId = ins.id + AND t.taskState = 10 + LEFT JOIN wf_process_task_actor ta ON ta.processTaskId = t.id + $condition + """; + for (int i = startYear; i <= endYear; i++) { + final int year = i; + + Sql sql = Sqls.create(sqls); + Cnd cnd = Cnd.NEW(); + cnd.andEX("YEAR(info.applyTime)", "=", year); + sql.setCondition(cnd); + int count = baseService.count(sql); + list.add(new HashMap() {{ + put("value", count); + put("year", year); + }}); + + } + return Result.success(list); + } + +} diff --git a/src/main/java/com/budwk/app/zhgh/democratic/proposal/listenter/ProposalCommitteeFilingRevokeEventListener.java b/src/main/java/com/budwk/app/zhgh/democratic/proposal/listenter/ProposalCommitteeFilingRevokeEventListener.java new file mode 100644 index 0000000..e659426 --- /dev/null +++ b/src/main/java/com/budwk/app/zhgh/democratic/proposal/listenter/ProposalCommitteeFilingRevokeEventListener.java @@ -0,0 +1,49 @@ +package com.budwk.app.zhgh.democratic.proposal.listenter; + +import cn.hutool.json.JSONObject; +import cn.hutool.json.JSONUtil; +import com.budwk.app.flow.engine.event.ProcessEvent; +import com.budwk.app.flow.engine.event.ProcessEventListener; +import com.budwk.app.flow.entity.ProcessInstance; +import com.budwk.app.flow.entity.ProcessTask; +import com.budwk.app.flow.enums.ProcessEventTypeEnum; +import com.budwk.app.flow.service.ProcessInstanceService; +import com.budwk.app.zhgh.democratic.proposal.models.ProposalMerge; +import org.nutz.dao.Cnd; +import org.nutz.dao.Dao; +import org.nutz.ioc.loader.annotation.Inject; +import org.nutz.lang.Lang; + +/** + * @version 1.0 + * @Author FKY + * @name:ProposalCommitteeFilingRevokeEventListener + * @Date 2025/12/22 17:43 + * @注释 提案立案审核撤回监听器 + */ +public class ProposalCommitteeFilingRevokeEventListener implements ProcessEventListener { + + @Inject + private Dao dao; + @Inject + private ProcessInstanceService processInstanceService; + + @Override + public void onEvent(ProcessEvent event) { + if (event.getEventType() == ProcessEventTypeEnum.PROCESS_TASK_REVOKE) { + Long taskId = event.getSourceId(); + ProcessTask task = dao.fetch(ProcessTask.class, taskId); + ProcessInstance processInstance = processInstanceService.getById(task.getProcessInstanceId()); + + // 处理并案信息撤回 + if ("committee".equals(task.getTaskName())) { + // 如果有并案,删掉并案数据(傻逼提的需求) + ProposalMerge proposalMerge = dao.fetch(ProposalMerge.class, Cnd.where("proposalId", "=", processInstance.getBusinessNo())); + + if (Lang.isNotEmpty(proposalMerge)) { + dao.clear(ProposalMerge.class, Cnd.where(ProposalMerge::getGroupId, "=", proposalMerge.getGroupId())); + } + } + } + } +} diff --git a/src/main/resources/static/none.png b/src/main/resources/static/none.png new file mode 100644 index 0000000..633131b Binary files /dev/null and b/src/main/resources/static/none.png differ diff --git a/src/main/resources/views/platform/zhgh/activity/declarereimbursement/reimbursement/board/index.html b/src/main/resources/views/platform/zhgh/activity/declarereimbursement/reimbursement/board/index.html index 0917ecc..fc18516 100644 --- a/src/main/resources/views/platform/zhgh/activity/declarereimbursement/reimbursement/board/index.html +++ b/src/main/resources/views/platform/zhgh/activity/declarereimbursement/reimbursement/board/index.html @@ -69,7 +69,7 @@ layout("/layouts/platform.html"){ placeholder="选择年"> - + +
校工会活动报销费用(元)
{{numData.schoolActivityMoney?numData.schoolActivityMoney:'0'}}
- +
分工会活动报销费用(元)
{{numData.unionActivityMoney?numData.unionActivityMoney:'0'}}
- +
社团活动报销费用(元)
{{numData.clubActivityMoney?numData.clubActivityMoney:'0'}}
@@ -106,7 +106,7 @@ layout("/layouts/platform.html"){ - +
@@ -558,8 +558,8 @@ layout("/layouts/platform.html"){ }, async mounted() { await this.getActivityJfChart() - await this.getActivityTypeChart() - await this.getActivityTypePieNum() + // await this.getActivityTypeChart() + // await this.getActivityTypePieNum() await this.getActivityJfPieNum() await this.allUnionActivityAndJf() await this.allClubActivityAndJf() diff --git a/src/main/resources/views/platform/zhgh/dayofficework/careData/staff/index.html b/src/main/resources/views/platform/zhgh/dayofficework/careData/staff/index.html new file mode 100644 index 0000000..bb713f8 --- /dev/null +++ b/src/main/resources/views/platform/zhgh/dayofficework/careData/staff/index.html @@ -0,0 +1,509 @@ + + + +
+
+ + + +
+
+ {{user.sex?user.sex:''}}{{user.unitName?' / '+user.unitName:''}} {{user.unionName?' / '+user.unionName:''}} +
+
+
+
+ + + 职工慰问申请数 + + + 困难帮扶申请数 + + + 子女入学登记数 + + + 撰写提案数 + + + 参与活动数 + + + 经费报销次数 + + + + + + + 今年 + + + {{numData.now_year.zgww?numData.now_year.zgww:0}} + + + {{numData.now_year.knbf?numData.now_year.knbf:0}} + + + {{numData.now_year.znrx?numData.now_year.znrx:0}} + + + {{numData.now_year.ta?numData.now_year.ta:0}} + + + {{numData.now_year.hd?numData.now_year.hd:0}} + + + {{numData.now_year.jfbx?numData.now_year.jfbx:0}} + + + + + + 全部 + + + {{numData.all.zgww?numData.all.zgww:0}} + + + {{numData.all.knbf?numData.all.knbf:0}} + + + {{numData.all.znrx?numData.all.znrx:0}} + + + {{numData.all.ta?numData.all.ta:0}} + + + {{numData.all.hd?numData.all.hd:0}} + + + {{numData.all.jfbx?numData.all.jfbx:0}} + + +
+ + +
+ + + - + + +
+
职工动态曲线
+
+
+ + + +
+ 职工动态时间线 + + + +
+ + +
+
+
+ + + + + + + + + + + + + + 暂无数据 + +
+
+
+
+
+ + + diff --git a/src/main/resources/views/platform/zhgh/dayofficework/careData/unionCare/index.html b/src/main/resources/views/platform/zhgh/dayofficework/careData/unionCare/index.html new file mode 100644 index 0000000..070d487 --- /dev/null +++ b/src/main/resources/views/platform/zhgh/dayofficework/careData/unionCare/index.html @@ -0,0 +1,462 @@ + + + +
+
+ +
+ + +
会员数
+
{{numData.hy_num?numData.hy_num:'0'}}
+
+
+ +
分工会数
+
{{numData.fgh_num?numData.fgh_num:'0'}}
+
+
+ +
社团数
+
{{numData.st_num?numData.st_num:'0'}}
+
+
+
+
+ + + +
会员性别占比
+
+
+ +
年度经费
+
+
+
+ + + +
困难帮扶申请趋势
+
+
+
+ + +
+ + +
+ +
{{allUnionYear}}年工会报销费用及活动情况 + + + +
+
+
+
+ + +
+ + +
+ +
{{allClubYear}}年社团报销费用及活动情况 + + + +
+
+
+
+ + +
+
+
+ + +