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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +