From 0b7fea7a41732f6cc7d00570b562c10046b8f5f6 Mon Sep 17 00:00:00 2001 From: "@jyuhsin" <729757837@qq.com> Date: Wed, 15 Oct 2025 15:18:53 +0800 Subject: [PATCH 1/5] commit --- .../budwk/app/base/constant/RoleConstant.java | 3 +- .../flow/controller/FlowDesignController.java | 11 +++- .../FlowUnitPartySecretaryHandler.java | 55 +++++++++++++++++++ .../controller/MeetingDelegationApproval.java | 4 +- .../controller/MeetingLeaveController.java | 4 +- .../MeetingSchoolUnionApproval.java | 6 +- .../service/impl/MeetingInfoServiceImpl.java | 2 + .../ContributionTypeController.java | 5 +- .../H5ContributionListController.java | 3 +- .../platform/flow/design/assigneeForm.js | 4 +- .../zhgh/activity/family/apply/signForm.js | 2 +- .../activity/sports/applyUser/applyUser.js | 6 +- .../zhgh/activity/sports/applyUser/index.html | 8 +-- .../activity/trainSignUp/apply/applyForm.js | 2 +- .../dayofficework/edu/courses/contentForm.js | 5 +- .../dayofficework/literacy/apply/applyForm.js | 2 +- .../zhghh5/activity/family/list/applyForm.js | 4 +- .../activity/trainSignUp/list/applyForm.js | 4 +- .../dayofficework/edu/courses/index.html | 9 +-- .../dayofficework/literacy/list/applyForm.js | 4 +- 20 files changed, 108 insertions(+), 35 deletions(-) create mode 100644 src/main/java/com/budwk/app/flow/handler/FlowUnitPartySecretaryHandler.java diff --git a/src/main/java/com/budwk/app/base/constant/RoleConstant.java b/src/main/java/com/budwk/app/base/constant/RoleConstant.java index ff9d81d7..ec51f0ff 100644 --- a/src/main/java/com/budwk/app/base/constant/RoleConstant.java +++ b/src/main/java/com/budwk/app/base/constant/RoleConstant.java @@ -45,6 +45,8 @@ RoleConstant { BRANCH_UNION_SHENGGHUO_WY("分工会生活委员"), BRANCH_UNION_TIAOJIE_WY("分工会调解委员"), + UNIT_PARTY_SECRETARY("单位党委书记"), + TEACHER_CONGRESS_DELEGATE_FORMAL("教代会正式代表"), TEACHER_CONGRESS_DELEGATE_ATTENDANCE("教代会列席代表"), TEACHER_CONGRESS_DELEGATE_SPECIALLY_INVITE("教代会特邀代表"), @@ -58,7 +60,6 @@ RoleConstant { PROPOSAL_UNIT_LEADER("提案承办单位领导"), PROPOSAL_UNIT_PROXY("提案承办单位代理答复人"), - WORKER_CONGRESS_DELEGATE_FORMAL("工代会正式代表"), WORKER_CONGRESS_DELEGATE_ATTENDANCE("工代会列席代表"), WORKER_CONGRESS_DELEGATE_SPECIALLY_INVITE("工代会特邀代表"), diff --git a/src/main/java/com/budwk/app/flow/controller/FlowDesignController.java b/src/main/java/com/budwk/app/flow/controller/FlowDesignController.java index de4973bc..e7c26a9f 100644 --- a/src/main/java/com/budwk/app/flow/controller/FlowDesignController.java +++ b/src/main/java/com/budwk/app/flow/controller/FlowDesignController.java @@ -4,6 +4,7 @@ import cn.dev33.satoken.annotation.SaCheckLogin; import cn.dev33.satoken.annotation.SaCheckPermission; import cn.hutool.core.lang.ClassScanner; import cn.hutool.core.util.ReflectUtil; +import cn.hutool.core.util.StrUtil; import cn.hutool.json.JSONObject; import com.budwk.app.base.page.Pagination; import com.budwk.app.base.param.PageForm; @@ -21,6 +22,7 @@ import org.nutz.dao.Cnd; import org.nutz.dao.Dao; import org.nutz.dao.Sqls; import org.nutz.dao.sql.Sql; +import org.nutz.dao.util.cri.SqlExpressionGroup; import org.nutz.ioc.aop.Aop; import org.nutz.ioc.loader.annotation.Inject; import org.nutz.ioc.loader.annotation.IocBean; @@ -220,9 +222,16 @@ public class FlowDesignController { @At @SaCheckLogin @ApiOperation("获取流程设计任务参与者分页数据") - public Result assigneePage(Integer pageNumber, Integer pageSize, String keyword, @Param("userIds") String[] userIds) { + public Result assigneePage(Integer pageNumber, Integer pageSize, String searchKeyword, @Param("userIds") String[] userIds) { Sql sql = Sqls.create("select id,loginname,username,unitName from vw_user $condition"); Cnd cnd = Cnd.NEW(); + if(StrUtil.isNotBlank(searchKeyword)) { + SqlExpressionGroup group = new SqlExpressionGroup(); + group.orLike("username", searchKeyword); + group.orLike("loginname", searchKeyword); + cnd.and(group); + } + sql.setCondition(cnd); // cnd.andEX("id", "in", userIds); Pagination pagination = sysUserService.listPageMap(pageNumber, pageSize, sql); return Result.success(pagination); diff --git a/src/main/java/com/budwk/app/flow/handler/FlowUnitPartySecretaryHandler.java b/src/main/java/com/budwk/app/flow/handler/FlowUnitPartySecretaryHandler.java new file mode 100644 index 00000000..940f8082 --- /dev/null +++ b/src/main/java/com/budwk/app/flow/handler/FlowUnitPartySecretaryHandler.java @@ -0,0 +1,55 @@ +package com.budwk.app.flow.handler; + +import com.budwk.app.base.constant.RoleConstant; +import com.budwk.app.flow.engine.AssignmentHandler; +import com.budwk.app.flow.engine.core.Execution; +import com.budwk.app.flow.engine.core.ServiceContext; +import com.budwk.app.flow.engine.model.TaskModel; +import com.budwk.app.sys.models.Sys_role; +import com.budwk.app.sys.models.Sys_user_role; +import com.budwk.app.sys.services.SysRoleService; +import com.budwk.app.web.commons.auth.utils.SecurityUtil; +import org.nutz.dao.Cnd; +import org.nutz.dao.Dao; +import org.nutz.lang.Lang; + +import java.util.List; + +/** + * @ClassName FlowUnitPartySecretaryHandler + * @Author JyuHsin + * @Date 2025/10/15 10:55 + * @Version 1.0 + * @Description TODO + */ +public class FlowUnitPartySecretaryHandler implements AssignmentHandler { + + @Override + public List assign(TaskModel model, Execution execution) { + String unitId = SecurityUtil.getUnitId(); + + SysRoleService sysRoleService = ServiceContext.find(SysRoleService.class); + Sys_role role = sysRoleService.getByCode(RoleConstant.UNIT_PARTY_SECRETARY); + + List roles = ServiceContext.find(Dao.class).query( + Sys_user_role.class, + Cnd.where(Sys_user_role::getRoleId, "=", role.getId()) + .and(Sys_user_role::getUnitId, "=", unitId) + ); + + if (Lang.isEmpty(roles)) { + throw new RuntimeException("当前登录用户所在单位未设置单位党委书记,请联系校工会进行设置。"); + } + return roles.stream().map(Sys_user_role::getUserId).toList(); + } + + @Override + public String getMessage() { + return "获取当前登录用户所在单位党委书记"; + } + + @Override + public int getOrder() { + return AssignmentHandler.super.getOrder(); + } +} diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/meeting/controller/MeetingDelegationApproval.java b/src/main/java/com/budwk/app/zhgh/dayofficework/meeting/controller/MeetingDelegationApproval.java index 294d4f4f..9ec8afbf 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/meeting/controller/MeetingDelegationApproval.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/meeting/controller/MeetingDelegationApproval.java @@ -107,7 +107,7 @@ public class MeetingDelegationApproval { SqlExpressionGroup seg = new SqlExpressionGroup(); seg.or("mi.name", "like", "%" + pageForm.getSearchKeyword() + "%"); seg.or("mi.address", "like", "%" + pageForm.getSearchKeyword() + "%"); - seg.or("info.periodName", "like", "%" + pageForm.getSearchKeyword() + "%"); + seg.or("mtp.periodName", "like", "%" + pageForm.getSearchKeyword() + "%"); cnd.and(seg); } if(year != null) { @@ -116,7 +116,7 @@ public class MeetingDelegationApproval { cnd.and("ins.createdAt", ">=", startTime); cnd.and("ins.createdAt", "<=", endTime); } - cnd.andEX("mi.type", "=", type); + cnd.andEX("mi.typeId", "=", type); cnd.and("t.taskName", "=", "e0ef2404-7468-480a-97b6-b918e0a9232f"); cnd.and("ta.actorId", "in", List.of(SecurityUtil.getUserId())); diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/meeting/controller/MeetingLeaveController.java b/src/main/java/com/budwk/app/zhgh/dayofficework/meeting/controller/MeetingLeaveController.java index 3da4f241..0f6079d0 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/meeting/controller/MeetingLeaveController.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/meeting/controller/MeetingLeaveController.java @@ -111,12 +111,12 @@ public class MeetingLeaveController { SqlExpressionGroup seg = new SqlExpressionGroup(); seg.or("mi.name", "like", "%" + pageForm.getSearchKeyword() + "%"); seg.or("mi.address", "like", "%" + pageForm.getSearchKeyword() + "%"); - seg.or("info.periodName", "like", "%" + pageForm.getSearchKeyword() + "%"); + seg.or("mtp.periodName", "like", "%" + pageForm.getSearchKeyword() + "%"); cnd.and(seg); } cnd.and("info.userId", "=", SecurityUtil.getUserId()); cnd.and("ins.id", "is not", null); - cnd.andEX("mi.type", "=", type); + cnd.andEX("mi.typeId", "=", type); if(year != null) { long startTime = DateUtil.parse(year + "-01-01").getTime(); long endTime = DateUtil.parse(year + "-12-31").getTime(); diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/meeting/controller/MeetingSchoolUnionApproval.java b/src/main/java/com/budwk/app/zhgh/dayofficework/meeting/controller/MeetingSchoolUnionApproval.java index 9473a4d8..33c1e151 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/meeting/controller/MeetingSchoolUnionApproval.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/meeting/controller/MeetingSchoolUnionApproval.java @@ -38,7 +38,7 @@ import java.util.List; @Slf4j @IocBean @Ok("json:full") -@Api(tags = "会议请假团长审核") +@Api(tags = "会议请假校工会审核") @At("/platform/meeting/schoolUnionApproval") public class MeetingSchoolUnionApproval { @@ -106,7 +106,7 @@ public class MeetingSchoolUnionApproval { SqlExpressionGroup seg = new SqlExpressionGroup(); seg.or("mi.name", "like", "%" + pageForm.getSearchKeyword() + "%"); seg.or("mi.address", "like", "%" + pageForm.getSearchKeyword() + "%"); - seg.or("info.periodName", "like", "%" + pageForm.getSearchKeyword() + "%"); + seg.or("mtp.periodName", "like", "%" + pageForm.getSearchKeyword() + "%"); cnd.and(seg); } if(year != null) { @@ -115,7 +115,7 @@ public class MeetingSchoolUnionApproval { cnd.and("ins.createdAt", ">=", startTime); cnd.and("ins.createdAt", "<=", endTime); } - cnd.andEX("mi.type", "=", type); + cnd.andEX("mi.typeId", "=", type); cnd.and("t.taskName", "=", "e28e9ab0-5546-4d97-9939-47df088f38ab"); cnd.and("ta.actorId", "in", List.of(SecurityUtil.getUserId())); diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/meeting/service/impl/MeetingInfoServiceImpl.java b/src/main/java/com/budwk/app/zhgh/dayofficework/meeting/service/impl/MeetingInfoServiceImpl.java index 3d12a5b3..e30b1b52 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/meeting/service/impl/MeetingInfoServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/meeting/service/impl/MeetingInfoServiceImpl.java @@ -119,6 +119,8 @@ public class MeetingInfoServiceImpl extends BaseServiceImpl impleme if (!newRelations.isEmpty()) { dao().insert(newRelations); } + + dao().updateIgnoreNull(info); } private MeetingTimePeriodUser buildRelation(String meetingId, String periodId, MeetingTimePeriodUser user) { diff --git a/src/main/java/com/budwk/app/zhgh/staffbenefit/contribution/controller/ContributionTypeController.java b/src/main/java/com/budwk/app/zhgh/staffbenefit/contribution/controller/ContributionTypeController.java index d2833844..d21d62c5 100644 --- a/src/main/java/com/budwk/app/zhgh/staffbenefit/contribution/controller/ContributionTypeController.java +++ b/src/main/java/com/budwk/app/zhgh/staffbenefit/contribution/controller/ContributionTypeController.java @@ -1,5 +1,6 @@ package com.budwk.app.zhgh.staffbenefit.contribution.controller; +import cn.dev33.satoken.annotation.SaCheckLogin; import cn.dev33.satoken.annotation.SaCheckPermission; import cn.hutool.core.util.StrUtil; import com.budwk.app.base.annotation.SLog; @@ -88,7 +89,7 @@ public class ContributionTypeController { @At @ApiOperation("查询慈善捐助专题") - @SaCheckPermission("contribution") + @SaCheckLogin public Result queryContributionType() { List list = typeService.query(Cnd.NEW().desc(ContributionType::getTypeCode)); return Result.success(list); @@ -96,7 +97,7 @@ public class ContributionTypeController { @At @ApiOperation("查询单个慈善捐助专题") - @SaCheckPermission("contribution") + @SaCheckLogin public Result fetchOne(String id) { ContributionType type = typeService.fetch(id); List list = dao.query(ContributionProject.class, Cnd.where(ContributionProject::getContributionTypeCode, "=", type.getTypeCode()).and(ContributionProject::getIsContributionEnable, "=", true)); diff --git a/src/main/java/com/budwk/app/zhgh/staffbenefit/contribution/h5Controller/H5ContributionListController.java b/src/main/java/com/budwk/app/zhgh/staffbenefit/contribution/h5Controller/H5ContributionListController.java index 5b6f1613..4fee2911 100644 --- a/src/main/java/com/budwk/app/zhgh/staffbenefit/contribution/h5Controller/H5ContributionListController.java +++ b/src/main/java/com/budwk/app/zhgh/staffbenefit/contribution/h5Controller/H5ContributionListController.java @@ -1,5 +1,6 @@ package com.budwk.app.zhgh.staffbenefit.contribution.h5Controller; +import cn.dev33.satoken.annotation.SaCheckLogin; import cn.dev33.satoken.annotation.SaCheckPermission; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; @@ -95,7 +96,7 @@ public class H5ContributionListController { @At @ApiOperation("查询单个慈善捐助专题") - @SaCheckPermission("contribution") + @SaCheckLogin public Result fetchOne(String id) { Sql sql = Sqls.create(""" SELECT diff --git a/src/main/resources/views/platform/flow/design/assigneeForm.js b/src/main/resources/views/platform/flow/design/assigneeForm.js index c5a9b03d..6b1bec3d 100644 --- a/src/main/resources/views/platform/flow/design/assigneeForm.js +++ b/src/main/resources/views/platform/flow/design/assigneeForm.js @@ -48,12 +48,12 @@ var assigneeForm = { - +
- + 搜索
- + diff --git a/src/main/resources/views/platform/zhgh/activity/sports/applyUser/applyUser.js b/src/main/resources/views/platform/zhgh/activity/sports/applyUser/applyUser.js index ab9859e1..661c0ddc 100644 --- a/src/main/resources/views/platform/zhgh/activity/sports/applyUser/applyUser.js +++ b/src/main/resources/views/platform/zhgh/activity/sports/applyUser/applyUser.js @@ -322,9 +322,9 @@ var ACTIVITY_SPORTS_APPLY_USER = { - - + - - + @@ -304,8 +304,8 @@ layout("/layouts/platform.html"){ v-model="coachData.userId" > - - + diff --git a/src/main/resources/views/platform/zhgh/activity/trainSignUp/apply/applyForm.js b/src/main/resources/views/platform/zhgh/activity/trainSignUp/apply/applyForm.js index bc1aa080..54d868c5 100644 --- a/src/main/resources/views/platform/zhgh/activity/trainSignUp/apply/applyForm.js +++ b/src/main/resources/views/platform/zhgh/activity/trainSignUp/apply/applyForm.js @@ -17,7 +17,7 @@ const applyForm = { - + diff --git a/src/main/resources/views/platform/zhgh/dayofficework/edu/courses/contentForm.js b/src/main/resources/views/platform/zhgh/dayofficework/edu/courses/contentForm.js index 9919659d..a5d70937 100644 --- a/src/main/resources/views/platform/zhgh/dayofficework/edu/courses/contentForm.js +++ b/src/main/resources/views/platform/zhgh/dayofficework/edu/courses/contentForm.js @@ -241,7 +241,10 @@ const contentForm = { cancelButtonText: '取消', type: 'warning' }).then(() => { - this.$message.success('删除成功'); + this.$axios.post('/platform/edu/chapters/delete', {id}).then(res => { + this.$message.success('删除成功') + this.listChapter() + }) }); }, diff --git a/src/main/resources/views/platform/zhgh/dayofficework/literacy/apply/applyForm.js b/src/main/resources/views/platform/zhgh/dayofficework/literacy/apply/applyForm.js index 25f3a597..52741db3 100644 --- a/src/main/resources/views/platform/zhgh/dayofficework/literacy/apply/applyForm.js +++ b/src/main/resources/views/platform/zhgh/dayofficework/literacy/apply/applyForm.js @@ -17,7 +17,7 @@ const applyForm = { - + diff --git a/src/main/resources/views/platform/zhghh5/activity/family/list/applyForm.js b/src/main/resources/views/platform/zhghh5/activity/family/list/applyForm.js index 2da46e58..3ffb94a4 100644 --- a/src/main/resources/views/platform/zhghh5/activity/family/list/applyForm.js +++ b/src/main/resources/views/platform/zhghh5/activity/family/list/applyForm.js @@ -13,7 +13,7 @@ const applyForm = { - +