From fbd7e9b20750a2a85fcbfd3db5e628ac92a2e71b Mon Sep 17 00:00:00 2001 From: zty <1048209592@qq.com> Date: Tue, 6 Aug 2024 17:48:44 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=9E=9A=E4=B8=BE=E7=B1=BB=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E9=A2=86=E5=AF=BC=E8=AF=B7=E5=81=87=202.=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E8=A7=92=E8=89=B2=E6=96=B9=E6=B3=95=203.?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=A2=86=E5=AF=BC=E8=AF=B7=E5=81=87=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E5=9B=BE=204.=E8=AF=B7=E5=81=87=E6=97=B6=E5=A6=82?= =?UTF-8?q?=E6=9E=9C=E8=A7=92=E8=89=B2=E6=98=AF=E5=89=AF=E6=89=80=E9=95=BF?= =?UTF-8?q?=E3=80=81=E6=80=BB=E6=94=AF=E5=A7=94=E5=91=98=E3=80=81=E5=B7=A5?= =?UTF-8?q?=E4=BC=9A=E4=B8=BB=E5=B8=AD=E3=80=81=E9=83=A8=E9=97=A8=E4=B8=BB?= =?UTF-8?q?=E4=BB=BB=E8=AF=B7=E5=81=87=E7=9B=B4=E6=8E=A5=E7=94=B1=E6=89=80?= =?UTF-8?q?=E9=95=BF=E5=AE=A1=E6=89=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/service/ISystemRoleService.java | 3 + .../service/impl/SystemRoleServiceImpl.java | 7 ++ .../xqopen/kehui/flows/util/activitiEnum.java | 4 +- .../xqopen/kehui/mapper/SystemRoleDao.java | 8 +++ .../xqopen/kehui/mapper/xml/SystemRoleDao.xml | 7 ++ .../action/PersonalEventsController.java | 25 +++++++ src/main/resources/processes/leaveLeader.bpmn | 70 +++++++++++++++++++ 7 files changed, 123 insertions(+), 1 deletion(-) create mode 100644 src/main/resources/processes/leaveLeader.bpmn diff --git a/src/main/java/com/xqopen/kehui/common/service/ISystemRoleService.java b/src/main/java/com/xqopen/kehui/common/service/ISystemRoleService.java index dbbab40..10386f5 100644 --- a/src/main/java/com/xqopen/kehui/common/service/ISystemRoleService.java +++ b/src/main/java/com/xqopen/kehui/common/service/ISystemRoleService.java @@ -1,10 +1,12 @@ package com.xqopen.kehui.common.service; import java.util.List; +import java.util.Map; import com.baomidou.mybatisplus.plugins.Page; import com.xqopen.kehui.common.entity.SystemRole; import com.baomidou.mybatisplus.service.IService; +import org.apache.ibatis.annotations.Param; /** *

@@ -23,4 +25,5 @@ public interface ISystemRoleService extends IService { List getSystemRoleByRoleTagAUserId(String roleTag, Long userId); SystemRole getLeaderRoleByDeptId(Long orgId); + List getRoleListMap(@Param("userId") Long userId); } diff --git a/src/main/java/com/xqopen/kehui/common/service/impl/SystemRoleServiceImpl.java b/src/main/java/com/xqopen/kehui/common/service/impl/SystemRoleServiceImpl.java index 8748195..bb0c9d4 100644 --- a/src/main/java/com/xqopen/kehui/common/service/impl/SystemRoleServiceImpl.java +++ b/src/main/java/com/xqopen/kehui/common/service/impl/SystemRoleServiceImpl.java @@ -1,6 +1,8 @@ package com.xqopen.kehui.common.service.impl; +import java.util.Collections; import java.util.List; +import java.util.Map; import com.baomidou.mybatisplus.plugins.Page; import com.xqopen.kehui.common.entity.SystemRole; @@ -44,4 +46,9 @@ public class SystemRoleServiceImpl extends ServiceImpl getRoleListMap(Long userId) { + return systemRoleDao.getRoleListMap(userId); + } } diff --git a/src/main/java/com/xqopen/kehui/flows/util/activitiEnum.java b/src/main/java/com/xqopen/kehui/flows/util/activitiEnum.java index ebef009..b082e97 100644 --- a/src/main/java/com/xqopen/kehui/flows/util/activitiEnum.java +++ b/src/main/java/com/xqopen/kehui/flows/util/activitiEnum.java @@ -104,6 +104,9 @@ public class activitiEnum { //小假 1、事假/年休假/陪护假/育儿假1天、病假3天以内:申请人-部门主任 @ApiModelProperty("请假流程审批") leaveMin("请假流程审批"), + + @ApiModelProperty("请假流程审批") + leaveLeader("领导请假"), //协会 //请假时间在三天以内:申请人(填单)——部门主任(审核) //请假时间在三天以上:申请人(填单)——部门主任(审核)——副秘书长(审核) @@ -524,7 +527,6 @@ public class activitiEnum { leave("请假"), @ApiModelProperty("请假(婚丧/产假)") leaveCountry("请假(婚丧/产假) "), - @ApiModelProperty("请假(小假)") leaveMin("请假(小假) "), /* @ApiModelProperty("请假") diff --git a/src/main/java/com/xqopen/kehui/mapper/SystemRoleDao.java b/src/main/java/com/xqopen/kehui/mapper/SystemRoleDao.java index 075ffc6..3a01caf 100644 --- a/src/main/java/com/xqopen/kehui/mapper/SystemRoleDao.java +++ b/src/main/java/com/xqopen/kehui/mapper/SystemRoleDao.java @@ -1,6 +1,7 @@ package com.xqopen.kehui.mapper; import java.util.List; +import java.util.Map; import com.baomidou.mybatisplus.plugins.Page; import com.xqopen.kehui.common.entity.SystemRole; @@ -26,4 +27,11 @@ public interface SystemRoleDao extends BaseMapper { List getSystemRoleByRoleTagAUserId(@Param("roleTag") String roleTag, @Param("userId") Long userId); SystemRole getLeaderRoleByDeptId(@Param("orgId") Long orgId); + + /** + * 通过账号id拿到角色集合 + * @param userId + * @return + */ + List getRoleListMap(@Param("userId") Long userId); } \ No newline at end of file diff --git a/src/main/java/com/xqopen/kehui/mapper/xml/SystemRoleDao.xml b/src/main/java/com/xqopen/kehui/mapper/xml/SystemRoleDao.xml index 727388a..90413ed 100644 --- a/src/main/java/com/xqopen/kehui/mapper/xml/SystemRoleDao.xml +++ b/src/main/java/com/xqopen/kehui/mapper/xml/SystemRoleDao.xml @@ -63,5 +63,12 @@ AND sr.is_leader = TRUE AND sor.org_id =#{orgId} + diff --git a/src/main/java/com/xqopen/kehui/personal/action/PersonalEventsController.java b/src/main/java/com/xqopen/kehui/personal/action/PersonalEventsController.java index a22f22f..4840581 100644 --- a/src/main/java/com/xqopen/kehui/personal/action/PersonalEventsController.java +++ b/src/main/java/com/xqopen/kehui/personal/action/PersonalEventsController.java @@ -35,6 +35,7 @@ import java.time.temporal.ChronoUnit; import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.Map; import java.util.concurrent.TimeUnit; /** @@ -124,6 +125,30 @@ public class PersonalEventsController implements PersonalEventsApi { Date endDate = personalEventsReq.getEndDate(); //结束日期 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); if (!ObjectUtils.isEmpty(ext)) { + List roleListMap = roleService.getRoleListMap(userId); + boolean flag = false; + if(!ObjectUtils.isEmpty(roleListMap)){ + for (int i = 0; i < roleListMap.size(); i++) { + Map map = roleListMap.get(i); + String roleName = String.valueOf(map.get("role_name")); + switch (roleName){ + case "副所长": + case "总支委员": + case "会主席": + case "部门主任": + flag = true; + break; + default: + flag = false; + break; + } + if(flag) break; + } + if(flag){ + aType = activitiEnum.activitiType.leaveLeader; + break; + } + } String beginM = String.valueOf(ext.get("beginM"));//请假时间 String endM = String.valueOf(ext.get("endM")); //结束时间 if (ext.containsKey("leaveType")) { diff --git a/src/main/resources/processes/leaveLeader.bpmn b/src/main/resources/processes/leaveLeader.bpmn new file mode 100644 index 0000000..6e6cf59 --- /dev/null +++ b/src/main/resources/processes/leaveLeader.bpmn @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + _3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +