八大员缺员兼职查询
This commit is contained in:
parent
f02d86e801
commit
9f582413c2
|
|
@ -0,0 +1,65 @@
|
|||
package com.bonus.system.dept.controller;
|
||||
|
||||
import com.bonus.common.core.web.controller.BaseController;
|
||||
import com.bonus.common.core.web.domain.AjaxResult;
|
||||
import com.bonus.common.core.web.page.TableDataInfo;
|
||||
import com.bonus.common.log.annotation.Log;
|
||||
import com.bonus.common.log.enums.BusinessType;
|
||||
import com.bonus.common.security.annotation.RequiresPermissions;
|
||||
import com.bonus.system.dept.entity.EightMembersVacancyVo;
|
||||
import com.bonus.system.dept.service.EightMembersVacancyService;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @className:EightMembersVacancyController
|
||||
* @author:cwchen
|
||||
* @date:2025-02-10-13:35
|
||||
* @version:1.0
|
||||
* @description:八大员缺员兼职查询-controller
|
||||
*/
|
||||
@ApiOperation("八大员缺员兼职查询")
|
||||
@RestController
|
||||
@RequestMapping("/eightMembersVacancy")
|
||||
public class EightMembersVacancyController extends BaseController {
|
||||
|
||||
@Resource(name = "EightMembersVacancyService")
|
||||
private EightMembersVacancyService service;
|
||||
|
||||
// @RequiresPermissions("dept:eightMembers:query")
|
||||
@ApiOperation("八大员缺员兼职查询-列表查询")
|
||||
@GetMapping("/getList")
|
||||
@Log(title = "项目部角色管理->八大员缺员兼职查询->列表查询", businessType = BusinessType.QUERY)
|
||||
public TableDataInfo getList(EightMembersVacancyVo vo) {
|
||||
startPage();
|
||||
List<EightMembersVacancyVo> list = service.getList(vo);
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
@ApiOperation("八大员缺员兼职查询-缺员项目部数量详情")
|
||||
@GetMapping("/getUnderStaffingList")
|
||||
@Log(title = "项目部角色管理->八大员缺员兼职查询->列表查询->缺员项目部详情", businessType = BusinessType.QUERY)
|
||||
public TableDataInfo getUnderStaffingList(EightMembersVacancyVo vo) {
|
||||
List<EightMembersVacancyVo.VacancyDetail> list = service.getUnderStaffingList(vo);
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
@ApiOperation("八大员缺员兼职查询-兼职项目部数量详情")
|
||||
@GetMapping("/getPartTimeList")
|
||||
@Log(title = "项目部角色管理->八大员缺员兼职查询->列表查询->兼职项目部详情", businessType = BusinessType.QUERY)
|
||||
public TableDataInfo getPartTimeList(EightMembersVacancyVo vo) {
|
||||
List<EightMembersVacancyVo.VacancyDetail> list = service.getPartTimeList(vo);
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
@ApiOperation("角色下拉选")
|
||||
@GetMapping("/getRoleList")
|
||||
public AjaxResult getRoleList() {
|
||||
return service.getRoleList();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,56 @@
|
|||
package com.bonus.system.dept.dao;
|
||||
|
||||
import com.bonus.system.dept.entity.EightMembersVacancyVo;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @className:EightMembersVacancyDao
|
||||
* @author:cwchen
|
||||
* @date:2025-02-10-13:41
|
||||
* @version:1.0
|
||||
* @description:八大员缺员兼职-数据库层
|
||||
*/
|
||||
@Repository(value = "EightMembersVacancyDao")
|
||||
public interface EightMembersVacancyDao {
|
||||
|
||||
/**
|
||||
* 八大员缺员兼职查询-列表查询
|
||||
* @param vo
|
||||
* @return List<EightMembersVacancyVo>
|
||||
* @author cwchen
|
||||
* @date 2025/2/10 14:15
|
||||
*/
|
||||
List<EightMembersVacancyVo> getList(EightMembersVacancyVo vo);
|
||||
|
||||
/**
|
||||
*
|
||||
* @param id 角色id
|
||||
* @param type 1.缺员项目部数量 2.兼职项目部数量
|
||||
* @return Integer
|
||||
* @author cwchen
|
||||
* @date 2025/2/10 15:11
|
||||
*/
|
||||
List<Long> getNumByType(@Param("id")Long id,@Param("type") int type);
|
||||
|
||||
/**
|
||||
* 八大员缺员兼职查询-缺员/兼职项目部详情
|
||||
* @param list
|
||||
* @return List<VacancyDetail>
|
||||
* @author cwchen
|
||||
* @date 2025/2/10 16:36
|
||||
*/
|
||||
List<EightMembersVacancyVo.VacancyDetail> getStaffingList(@Param("list")List<Long> list,@Param("params") EightMembersVacancyVo vo);
|
||||
|
||||
/**
|
||||
* 角色下拉选
|
||||
* @return List<Map<String,Object>>
|
||||
* @author cwchen
|
||||
* @date 2025/2/10 17:50
|
||||
*/
|
||||
List<Map<String, Object>> getRoleList();
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
package com.bonus.system.dept.entity;
|
||||
|
||||
import cn.afterturn.easypoi.excel.annotation.Excel;
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @className:EightMembersVacancyVo
|
||||
* @author:cwchen
|
||||
* @date:2025-02-10-14:03
|
||||
* @version:1.0
|
||||
* @description:八大员缺员兼职查询-vo
|
||||
*/
|
||||
@Data
|
||||
public class EightMembersVacancyVo {
|
||||
/**序号*/
|
||||
@JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
|
||||
@Excel(name = "序号", width = 20,height = 15,orderNum = "0")
|
||||
private long serialNumber;
|
||||
/**id*/
|
||||
private Long id;
|
||||
/**角色名称*/
|
||||
@Excel(name = "角色名称", width = 30,height = 15,orderNum = "1")
|
||||
private String roleName;
|
||||
/**缺员项目部数量*/
|
||||
@Excel(name = "缺员项目部数量", width = 30,height = 15,orderNum = "2")
|
||||
private int vacancyDeptNum;
|
||||
/**兼职项目部数量*/
|
||||
@Excel(name = "兼职项目部数量", width = 30,height = 15,orderNum = "3")
|
||||
private int partTimeJobNum;
|
||||
/**1.缺员项目部详情 2.兼职项目部详情*/
|
||||
@JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
|
||||
private int type;
|
||||
|
||||
@Data
|
||||
public static class VacancyDetail{
|
||||
/**角色ID*/
|
||||
@JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
|
||||
public String departmentRoleId;
|
||||
/**姓名*/
|
||||
@JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
|
||||
public String userName;
|
||||
/**项目部名称*/
|
||||
public String orgName;
|
||||
/**项目经理*/
|
||||
public String projectManager;
|
||||
/**安全员*/
|
||||
public String safetyOfficer;
|
||||
/**质检员*/
|
||||
public String qualityInspector;
|
||||
/**项目总工*/
|
||||
public String projectChiefEngineer;
|
||||
/**机械员*/
|
||||
public String machinist;
|
||||
/**资料员*/
|
||||
public String document;
|
||||
/**施工员*/
|
||||
public String constructionWorker;
|
||||
/**材料员*/
|
||||
public String materialMan;
|
||||
/**其他*/
|
||||
public String other;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
package com.bonus.system.dept.service;
|
||||
|
||||
import com.bonus.common.core.web.domain.AjaxResult;
|
||||
import com.bonus.system.dept.entity.EightMembersVacancyVo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @className:EightMembersVacancyService
|
||||
* @author:cwchen
|
||||
* @date:2025-02-10-13:40
|
||||
* @version:1.0
|
||||
* @description:八大员缺员兼职查询-service
|
||||
*/
|
||||
public interface EightMembersVacancyService {
|
||||
|
||||
/**
|
||||
* 八大员缺员兼职查询-列表查询
|
||||
* @param vo
|
||||
* @return List<EightMembersVacancyVo>
|
||||
* @author cwchen
|
||||
* @date 2025/2/10 14:13
|
||||
*/
|
||||
List<EightMembersVacancyVo> getList(EightMembersVacancyVo vo);
|
||||
|
||||
/**
|
||||
* 八大员缺员兼职查询-缺员项目部详情
|
||||
* @param vo
|
||||
* @return List<VacancyDetail>
|
||||
* @author cwchen
|
||||
* @date 2025/2/10 16:32
|
||||
*/
|
||||
List<EightMembersVacancyVo.VacancyDetail> getUnderStaffingList(EightMembersVacancyVo vo);
|
||||
|
||||
/**
|
||||
* 八大员缺员兼职查询-兼职项目部详情
|
||||
* @param vo
|
||||
* @return List<VacancyDetail>
|
||||
* @author cwchen
|
||||
* @date 2025/2/10 16:32
|
||||
*/
|
||||
List<EightMembersVacancyVo.VacancyDetail> getPartTimeList(EightMembersVacancyVo vo);
|
||||
|
||||
/**
|
||||
* 角色下拉选
|
||||
* @return AjaxResult
|
||||
* @author cwchen
|
||||
* @date 2025/2/10 16:40
|
||||
*/
|
||||
AjaxResult getRoleList();
|
||||
}
|
||||
|
|
@ -0,0 +1,161 @@
|
|||
package com.bonus.system.dept.service;
|
||||
|
||||
import com.bonus.common.core.web.domain.AjaxResult;
|
||||
import com.bonus.system.dept.dao.EightMembersVacancyDao;
|
||||
import com.bonus.system.dept.entity.EightMembersVacancyVo;
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
|
||||
import static com.bonus.common.core.utils.PageUtils.startPage;
|
||||
|
||||
/**
|
||||
* @className:EightMembersVacancyServiceImpl
|
||||
* @author:cwchen
|
||||
* @date:2025-02-10-13:40
|
||||
* @version:1.0
|
||||
* @description:八大员缺员兼职-业务层
|
||||
*/
|
||||
@Service(value = "EightMembersVacancyService")
|
||||
@Slf4j
|
||||
public class EightMembersVacancyServiceImpl implements EightMembersVacancyService{
|
||||
|
||||
@Resource(name = "EightMembersVacancyDao")
|
||||
private EightMembersVacancyDao dao;
|
||||
|
||||
@Resource(name = "testTaskExecutor")
|
||||
private ThreadPoolTaskExecutor testTaskExecutor;
|
||||
|
||||
@Override
|
||||
public List<EightMembersVacancyVo> getList(EightMembersVacancyVo vo) {
|
||||
List<EightMembersVacancyVo> list = new ArrayList<>();
|
||||
try {
|
||||
list = dao.getList(vo);
|
||||
for (EightMembersVacancyVo vacancyVo : list) {
|
||||
testTaskExecutor.execute(() -> {
|
||||
// 查询缺员项目部数量
|
||||
List<Long> numList = dao.getNumByType(vacancyVo.getId(),1);
|
||||
// 查询兼职项目部数量
|
||||
List<Long> numList2 = dao.getNumByType(vacancyVo.getId(),2);
|
||||
vacancyVo.setVacancyDeptNum(CollectionUtils.isEmpty(numList) ? 0 : numList.size());
|
||||
vacancyVo.setPartTimeJobNum(CollectionUtils.isEmpty(numList2) ? 0 : numList2.size());
|
||||
});
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error(e.toString(),e);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<EightMembersVacancyVo.VacancyDetail> getUnderStaffingList(EightMembersVacancyVo vo) {
|
||||
List<EightMembersVacancyVo.VacancyDetail> list = new ArrayList<>();
|
||||
try {
|
||||
// 查询缺员项目部id
|
||||
List<Long> underStaffingIds = dao.getNumByType(vo.getId(),1);
|
||||
startPage();
|
||||
if(CollectionUtils.isNotEmpty(underStaffingIds)){
|
||||
list = dao.getStaffingList(underStaffingIds,vo);
|
||||
handleData(list);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error(e.toString(),e);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<EightMembersVacancyVo.VacancyDetail> getPartTimeList(EightMembersVacancyVo vo) {
|
||||
List<EightMembersVacancyVo.VacancyDetail> list = new ArrayList<>();
|
||||
try {
|
||||
// 查询兼职项目部id
|
||||
List<Long> partTimeIds = dao.getNumByType(vo.getId(),2);
|
||||
startPage();
|
||||
if(CollectionUtils.isNotEmpty(partTimeIds)){
|
||||
list = dao.getStaffingList(partTimeIds,vo);
|
||||
handleData(list);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error(e.toString(),e);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AjaxResult getRoleList() {
|
||||
List<Map<String,Object>> list = new ArrayList<>();
|
||||
try {
|
||||
list = dao.getRoleList();
|
||||
} catch (Exception e) {
|
||||
log.error(e.toString(),e);
|
||||
}
|
||||
return AjaxResult.success(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理项目经理、安全员、质检员等数据
|
||||
* @param list
|
||||
* @return void
|
||||
* @author cwchen
|
||||
* @date 2025/2/11 10:18
|
||||
*/
|
||||
public void handleData(List<EightMembersVacancyVo.VacancyDetail> list){
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
for (EightMembersVacancyVo.VacancyDetail vacancyDetail : list) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
StringBuilder sb2 = new StringBuilder();
|
||||
StringBuilder sb3 = new StringBuilder();
|
||||
StringBuilder sb4 = new StringBuilder();
|
||||
StringBuilder sb5 = new StringBuilder();
|
||||
StringBuilder sb6 = new StringBuilder();
|
||||
StringBuilder sb7 = new StringBuilder();
|
||||
StringBuilder sb8 = new StringBuilder();
|
||||
StringBuilder sb9 = new StringBuilder();
|
||||
if(StringUtils.isNotBlank(vacancyDetail.getDepartmentRoleId())){
|
||||
String[] departmentRoleIdArr = vacancyDetail.getDepartmentRoleId().split(",");
|
||||
String[] userNameArr = vacancyDetail.getUserName().split(",");
|
||||
for (int i = 0; i < departmentRoleIdArr.length; i++) {
|
||||
String departmentRoleId = departmentRoleIdArr[i];
|
||||
if(Objects.equals(departmentRoleId,"1")){
|
||||
sb.append(userNameArr[i]).append("、");
|
||||
}else if(Objects.equals(departmentRoleId,"2")){
|
||||
sb2.append(userNameArr[i]).append("、");
|
||||
}else if(Objects.equals(departmentRoleId,"3")){
|
||||
sb3.append(userNameArr[i]).append("、");
|
||||
}else if(Objects.equals(departmentRoleId,"4")){
|
||||
sb4.append(userNameArr[i]).append("、");
|
||||
}else if(Objects.equals(departmentRoleId,"5")){
|
||||
sb5.append(userNameArr[i]).append("、");
|
||||
}else if(Objects.equals(departmentRoleId,"6")){
|
||||
sb6.append(userNameArr[i]).append("、");
|
||||
}else if(Objects.equals(departmentRoleId,"7")){
|
||||
sb7.append(userNameArr[i]).append("、");
|
||||
}else if(Objects.equals(departmentRoleId,"8")){
|
||||
sb8.append(userNameArr[i]).append("、");
|
||||
}else if(Objects.equals(departmentRoleId,"9")){
|
||||
sb9.append(userNameArr[i]).append("、");
|
||||
}
|
||||
}
|
||||
}
|
||||
vacancyDetail.setProjectManager(StringUtils.stripEnd(sb.toString(),"、"));
|
||||
vacancyDetail.setSafetyOfficer(StringUtils.stripEnd(sb2.toString(),"、"));
|
||||
vacancyDetail.setQualityInspector(StringUtils.stripEnd(sb3.toString(),"、"));
|
||||
vacancyDetail.setProjectChiefEngineer(StringUtils.stripEnd(sb4.toString(),"、"));
|
||||
vacancyDetail.setMachinist(StringUtils.stripEnd(sb5.toString(),"、"));
|
||||
vacancyDetail.setDocument(StringUtils.stripEnd(sb6.toString(),"、"));
|
||||
vacancyDetail.setConstructionWorker(StringUtils.stripEnd(sb7.toString(),"、"));
|
||||
vacancyDetail.setMaterialMan(StringUtils.stripEnd(sb8.toString(),"、"));
|
||||
vacancyDetail.setOther(StringUtils.stripEnd(sb9.toString(),"、"));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -25,7 +25,9 @@ import com.bonus.system.basic.domain.SysOrg;
|
|||
import com.bonus.system.basic.domain.SysOrgExport;
|
||||
import com.bonus.system.basic.service.SysOrgService;
|
||||
import com.bonus.system.dept.dao.ProDeptRoleDao;
|
||||
import com.bonus.system.dept.entity.EightMembersVacancyVo;
|
||||
import com.bonus.system.dept.entity.SubOrgBean;
|
||||
import com.bonus.system.dept.service.EightMembersVacancyService;
|
||||
import com.bonus.system.dept.service.SubOrgService;
|
||||
import com.bonus.system.evection.entity.EvectionBean;
|
||||
import com.bonus.system.evection.service.EvectionService;
|
||||
|
|
@ -140,6 +142,9 @@ public class ExportFileController {
|
|||
@Resource
|
||||
private SysOrgDao sysOrgDao;
|
||||
|
||||
@Resource(name = "EightMembersVacancyService")
|
||||
private EightMembersVacancyService eightMembersVacancyService;
|
||||
|
||||
|
||||
/**
|
||||
* 分公司项目部导出
|
||||
|
|
@ -1266,5 +1271,26 @@ public class ExportFileController {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 八大员缺员兼职查询-导出
|
||||
* @param response
|
||||
* @param vo
|
||||
* @return void
|
||||
* @author cwchen
|
||||
* @date 2025/2/11 9:16
|
||||
*/
|
||||
@GetMapping("/exportEightMembersVacancy")
|
||||
public void exportEightMembersVacancy(HttpServletResponse response, EightMembersVacancyVo vo) {
|
||||
try {
|
||||
List<EightMembersVacancyVo> list = eightMembersVacancyService.getList(vo);
|
||||
for (int i = 0; i < list.size(); i++) {
|
||||
list.get(i).setSerialNumber(i + 1);
|
||||
}
|
||||
extracted(list, WechatLeaveReportingBean.class, "八大员缺员兼职查询", "八大员缺员兼职查询", "八大员缺员兼职查询", response);
|
||||
} catch (IOException e) {
|
||||
log.error(e.toString(),e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,79 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.bonus.system.dept.dao.EightMembersVacancyDao">
|
||||
|
||||
<!--八大员缺员兼职查询-列表查询-->
|
||||
<select id="getList" resultType="com.bonus.system.dept.entity.EightMembersVacancyVo">
|
||||
SELECT sd.id,
|
||||
sd.value AS roleName
|
||||
FROM sys_dict sd
|
||||
WHERE sd.type = 'deptRole' AND sd.is_active = '1'
|
||||
<if test="id!=null">
|
||||
AND sd.id = #{id}
|
||||
</if>
|
||||
ORDER BY update_time
|
||||
</select>
|
||||
<!--1.查询缺员项目部数量、2.查询兼职项目部数量-->
|
||||
<select id="getNumByType" resultType="java.lang.Long">
|
||||
<if test="type == 1">
|
||||
SELECT so.id
|
||||
FROM sys_organization so
|
||||
LEFT JOIN sys_department_role sdr ON so.id = sdr.org_id AND sdr.department_role_id = #{id} AND sdr.reviewer_status = '1'
|
||||
LEFT JOIN sys_department_user sdu ON sdr.id = sdu.department_id AND sdu.is_active = '1'
|
||||
WHERE so.is_department = '1' AND so.reviewer_status = '1' AND so.is_active = '1'
|
||||
GROUP BY so.id
|
||||
HAVING(GROUP_CONCAT(ANY_VALUE(sdu.user_id))) IS NULL
|
||||
</if>
|
||||
<if test="type == 2">
|
||||
SELECT so.id
|
||||
FROM sys_organization so
|
||||
LEFT JOIN sys_department_role sdr ON so.id = sdr.org_id AND sdr.department_role_id = #{id} AND sdr.reviewer_status = '1'
|
||||
LEFT JOIN sys_department_user sdu ON sdr.id = sdu.department_id AND sdu.is_active = '1'
|
||||
LEFT JOIN (
|
||||
SELECT sdr.org_id,
|
||||
sdu.user_id,
|
||||
COUNT(*) AS num
|
||||
FROM sys_department_user sdu
|
||||
LEFT JOIN sys_department_role sdr ON sdu.department_id = sdr.id AND sdr.reviewer_status = '1' AND sdr.department_role_id != #{id}
|
||||
WHERE sdu.is_active = '1'
|
||||
GROUP BY sdr.org_id,sdu.user_id
|
||||
) a ON so.id = a.org_id AND sdu.user_id = a.user_id
|
||||
WHERE so.is_department = '1' AND so.reviewer_status = '1' AND so.is_active = '1'
|
||||
AND sdu.user_id IS NOT NULL AND a.num IS NOT NULL
|
||||
</if>
|
||||
</select>
|
||||
<!--八大员缺员兼职查询-缺员项目部详情-->
|
||||
<select id="getStaffingList"
|
||||
resultType="com.bonus.system.dept.entity.EightMembersVacancyVo$VacancyDetail">
|
||||
SELECT so.id,
|
||||
so.org_name AS orgName,
|
||||
GROUP_CONCAT(sdr.department_role_id) AS departmentRoleId,
|
||||
GROUP_CONCAT(su.user_name) AS userName
|
||||
FROM sys_organization so
|
||||
LEFT JOIN sys_department_role sdr ON so.id = sdr.org_id AND sdr.reviewer_status = '1'
|
||||
LEFT JOIN sys_dict sd ON sd.id = sdr.department_role_id AND sd.type = 'deptRole' AND sd.is_active = '1'
|
||||
LEFT JOIN sys_department_user sdu ON sdr.id = sdu.department_id AND sdu.is_active = '1'
|
||||
LEFT JOIN sys_user su ON su.user_id = sdu.user_id AND su.is_active = '1'
|
||||
<where>
|
||||
so.is_department = '1' AND so.reviewer_status = '1' AND so.is_active = '1'
|
||||
<if test="list!=null">
|
||||
AND so.id IN
|
||||
<foreach collection="list" open="(" close=")" separator="," item="item">
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
</where>
|
||||
GROUP BY so.id
|
||||
</select>
|
||||
|
||||
<!--角色下拉选-->
|
||||
<select id="getRoleList" resultType="java.util.Map">
|
||||
SELECT sd.id,
|
||||
sd.value AS `value`
|
||||
FROM sys_dict sd
|
||||
WHERE sd.is_active = '1'
|
||||
ORDER BY update_time
|
||||
</select>
|
||||
</mapper>
|
||||
Loading…
Reference in New Issue