wwh 4 месяцев назад
Родитель
Сommit
3ba6ddcaa8

+ 4 - 1
huimv-farm/src/main/java/vip/xiaonuo/hr/modular/basedepartment/entity/HrBaseDepartment.java

@@ -13,10 +13,13 @@
 package vip.xiaonuo.hr.modular.basedepartment.entity;
 
 import com.baomidou.mybatisplus.annotation.*;
+import com.fhs.core.trans.vo.TransPojo;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.Getter;
 import lombok.Setter;
+import vip.xiaonuo.common.pojo.CommonEntity;
+
 import java.util.Date;
 
 /**
@@ -27,7 +30,7 @@ import java.util.Date;
  **/
 @Data
 @TableName("hr_base_department")
-public class HrBaseDepartment {
+public class HrBaseDepartment  {
 
     /** ID */
     @TableId

+ 42 - 41
huimv-farm/src/main/java/vip/xiaonuo/hr/modular/baseemployeeinfo/controller/HrBaseEmployeeInfoController.java

@@ -13,6 +13,7 @@
 package vip.xiaonuo.hr.modular.baseemployeeinfo.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import com.github.xiaoymin.knife4j.annotations.ApiSupport;
@@ -58,7 +59,7 @@ public class HrBaseEmployeeInfoController {
     @ApiOperationSupport(order = 1)
     @ApiOperation("获取人员明细分页")
     @GetMapping("/hr/baseemployeeinfo/page")
-    public CommonResult<Page<HrBaseEmployeeInfo>> page(HrBaseEmployeeInfoPageParam hrBaseEmployeeInfoPageParam) {
+    public CommonResult<Page<HrBaseEmployeeInfo>> page(@RequestBody HrBaseEmployeeInfoPageParam hrBaseEmployeeInfoPageParam) {
         return CommonResult.data(hrBaseEmployeeInfoService.page(hrBaseEmployeeInfoPageParam));
     }
 
@@ -93,30 +94,30 @@ public class HrBaseEmployeeInfoController {
 
     @ApiOperation("获取人员明细详情")
     @PostMapping("/hr/baseemployeeinfo/detail")
-    public CommonResult<HrBaseEmployeeInfo> detail(@Valid HrBaseEmployeeInfoIdParam hrBaseEmployeeInfoIdParam) {
+    public CommonResult<HrBaseEmployeeInfo> detail(@Valid @RequestBody HrBaseEmployeeInfoIdParam hrBaseEmployeeInfoIdParam) {
         return CommonResult.data(hrBaseEmployeeInfoService.detail(hrBaseEmployeeInfoIdParam));
     }
 
 
     @ApiOperation("部门本科及以上学历")
     @PostMapping("/hr/baseemployeeinfo/listByEoucation")
-    public CommonResult<List<EoucationVo>> listByEoucation(@Valid EmployeeInfoEoucation employeeInfoEoucation) {
+    public CommonResult<List<EoucationVo>> listByEoucation(@Valid @RequestBody EmployeeInfoEoucation employeeInfoEoucation) {
         return CommonResult.data(hrBaseEmployeeInfoService.listByEoucation(employeeInfoEoucation));
     }
 
     @ApiOperation("数量统计及退休人员")
     @PostMapping("/hr/baseemployeeinfo/countPerson")
-    public CommonResult<CountPerson> countPerson(@Valid EmployeeInfoEoucation employeeInfoEoucation) {
+    public CommonResult<CountPerson> countPerson(@Valid @RequestBody EmployeeInfoEoucation employeeInfoEoucation) {
         return CommonResult.data(hrBaseEmployeeInfoService.countPerson(employeeInfoEoucation));
     }
 
     @ApiOperation("历史总人数等")
     @PostMapping("/hr/baseemployeeinfo/countNum")
-    public CommonResult<CountNum> countNum(@Valid EmployeeInfoEoucation employeeInfoEoucation) {
+    public CommonResult<CountNum> countNum(@Valid @RequestBody EmployeeInfoEoucation employeeInfoEoucation) {
         QueryWrapper<HrBaseEmployeeInfo> mapper = new QueryWrapper<>();
         CountNum countNum = new CountNum();
 
-        long historyNum = hrBaseEmployeeInfoService.count(mapper.eq("ORG_ID", employeeInfoEoucation.getOrgId()));
+        long historyNum = hrBaseEmployeeInfoService.count(mapper.eq(StringUtils.isNotBlank(employeeInfoEoucation.getOrgId()),"ORG_ID", employeeInfoEoucation.getOrgId()));
         long jobNum = hrBaseEmployeeInfoService.count(mapper.eq("USER_TYPE",0));
         long maleNum = hrBaseEmployeeInfoService.count(mapper.eq("GENDER",0));
 
@@ -129,41 +130,41 @@ public class HrBaseEmployeeInfoController {
 
     @ApiOperation("部门人数统计")
     @PostMapping("/hr/baseemployeeinfo/listByDepart")
-    public CommonResult<List<EoucationVo>> listByDepart(@Valid EmployeeInfoEoucation employeeInfoEoucation) {
+    public CommonResult<List<EoucationVo>> listByDepart(@Valid @RequestBody EmployeeInfoEoucation employeeInfoEoucation) {
         return CommonResult.data(hrBaseEmployeeInfoService.listByDepart(employeeInfoEoucation));
     }
     @ApiOperation("部门人数性别统计")
     @PostMapping("/hr/baseemployeeinfo/listByDepartGender")
-    public CommonResult<List<EoucationVo>> listByDepartGender(@Valid EmployeeInfoEoucation employeeInfoEoucation) {
+    public CommonResult<List<EoucationVo>> listByDepartGender(@Valid @RequestBody EmployeeInfoEoucation employeeInfoEoucation) {
         return CommonResult.data(hrBaseEmployeeInfoService.listByDepartGender(employeeInfoEoucation));
     }
 
     @ApiOperation("年龄分布")
     @PostMapping("/hr/baseemployeeinfo/ageDis")
-    public CommonResult<List<PerNum>> ageDis(@Valid EmployeeInfoEoucation employeeInfoEoucation) {
+    public CommonResult<List<PerNum>> ageDis(@Valid @RequestBody EmployeeInfoEoucation employeeInfoEoucation) {
         String orgId = employeeInfoEoucation.getOrgId();
-        long age22 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).between("AGE", 18,22));
-        long age30 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).between("AGE", 23,30));
-        long age40 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).between("AGE", 31,40));
-        long age45 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).between("AGE", 41,45));
-        long age60 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).between("AGE", 46,60));
-        long age61 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).ge("AGE", 60));
+        long age22 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).between("AGE", 18,22));
+        long age30 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).between("AGE", 23,30));
+        long age40 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).between("AGE", 31,40));
+        long age45 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).between("AGE", 41,45));
+        long age60 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).between("AGE", 46,60));
+        long age61 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).ge("AGE", 60));
         ArrayList<PerNum> perNums = new ArrayList<>();
-        perNums.add(new PerNum("18-22",age22));
-        perNums.add(new PerNum("23-30",age30));
-        perNums.add(new PerNum("31-40",age40));
-        perNums.add(new PerNum("41-45",age45));
-        perNums.add(new PerNum("46-60",age60));
-        perNums.add(new PerNum("60以上",age61));
+        perNums.add(new PerNum("18-22",age22));
+        perNums.add(new PerNum("23-30",age30));
+        perNums.add(new PerNum("31-40",age40));
+        perNums.add(new PerNum("41-45",age45));
+        perNums.add(new PerNum("46-60",age60));
+        perNums.add(new PerNum("60以上",age61));
         return CommonResult.data(perNums);
     }
 
     @ApiOperation("性别分布")
     @PostMapping("/hr/baseemployeeinfo/genderDis")
-    public CommonResult<List<PerNum>> genderDis(@Valid EmployeeInfoEoucation employeeInfoEoucation) {
+    public CommonResult<List<PerNum>> genderDis(@Valid @RequestBody EmployeeInfoEoucation employeeInfoEoucation) {
         String orgId = employeeInfoEoucation.getOrgId();
-        long age22 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).eq("GENDER", 0));
-        long age30 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).eq("GENDER", 1));
+        long age22 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("GENDER", 0));
+        long age30 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("GENDER", 1));
         ArrayList<PerNum> perNums = new ArrayList<>();
         perNums.add(new PerNum("男性",age22));
         perNums.add(new PerNum("女性",age30));
@@ -172,10 +173,10 @@ public class HrBaseEmployeeInfoController {
 
     @ApiOperation("婚姻状况")
     @PostMapping("/hr/baseemployeeinfo/marrDis")
-    public CommonResult<List<PerNum>> marrDis(@Valid EmployeeInfoEoucation employeeInfoEoucation) {
+    public CommonResult<List<PerNum>> marrDis(@Valid @RequestBody EmployeeInfoEoucation employeeInfoEoucation) {
         String orgId = employeeInfoEoucation.getOrgId();
-        long age22 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).eq("MARRIAGE", 0));
-        long age30 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).eq("MARRIAGE", 1));
+        long age22 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("MARRIAGE", 0));
+        long age30 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("MARRIAGE", 1));
         ArrayList<PerNum> perNums = new ArrayList<>();
         perNums.add(new PerNum("未婚",age22));
         perNums.add(new PerNum("已婚",age30));
@@ -183,10 +184,10 @@ public class HrBaseEmployeeInfoController {
     }
     @ApiOperation("民族分布")
     @PostMapping("/hr/baseemployeeinfo/nationDis")
-    public CommonResult<List<PerNum>> nationDis(@Valid EmployeeInfoEoucation employeeInfoEoucation) {
+    public CommonResult<List<PerNum>> nationDis(@Valid @RequestBody EmployeeInfoEoucation employeeInfoEoucation) {
         String orgId = employeeInfoEoucation.getOrgId();
-        long age22 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).eq("NATION", "汉族"));
-        long age30 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).ne("NATION", "汉族"));
+        long age22 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("NATION", "汉族"));
+        long age30 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).ne("NATION", "汉族"));
         ArrayList<PerNum> perNums = new ArrayList<>();
         perNums.add(new PerNum("汉族",age22));
         perNums.add(new PerNum("其他",age30));
@@ -195,14 +196,14 @@ public class HrBaseEmployeeInfoController {
 
     @ApiOperation("学历分布")
     @PostMapping("/hr/baseemployeeinfo/educationDis")
-    public CommonResult<List<PerNum>> educationDis(@Valid EmployeeInfoEoucation employeeInfoEoucation) {
+    public CommonResult<List<PerNum>> educationDis(@Valid @RequestBody EmployeeInfoEoucation employeeInfoEoucation) {
         String orgId = employeeInfoEoucation.getOrgId();
-        long age22 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 0));
-        long age2 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 1));
-        long age3 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 2));
-        long age4 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 3));
-        long age5 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 4));
-        long age6 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq("ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 5));
+        long age22 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 0));
+        long age2 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 1));
+        long age3 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 2));
+        long age4 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 3));
+        long age5 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 4));
+        long age6 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 5));
 
         ArrayList<PerNum> perNums = new ArrayList<>();
         perNums.add(new PerNum("小学",age22));
@@ -216,25 +217,25 @@ public class HrBaseEmployeeInfoController {
 
     @ApiOperation("部门学历分布")
     @PostMapping("/hr/baseemployeeinfo/listByDepartGenderEducationDis")
-    public CommonResult<List<EoucationVo>> listByDepartGenderEducationDis(@Valid EmployeeInfoEoucation employeeInfoEoucation) {
+    public CommonResult<List<EoucationVo>> listByDepartGenderEducationDis(@Valid @RequestBody EmployeeInfoEoucation employeeInfoEoucation) {
         return CommonResult.data(hrBaseEmployeeInfoService.listByDepartGenderEducationDis(employeeInfoEoucation));
     }
 
     @ApiOperation("生日分布")
     @PostMapping("/hr/baseemployeeinfo/birthDis")
-    public CommonResult<List<PerNum>> birthDis(@Valid EmployeeInfoEoucation employeeInfoEoucation) {
+    public CommonResult<List<PerNum>> birthDis(@Valid @RequestBody EmployeeInfoEoucation employeeInfoEoucation) {
         return CommonResult.data(hrBaseEmployeeInfoService.birthDis(employeeInfoEoucation));
     }
 
     @ApiOperation("司龄分布")
     @PostMapping("/hr/baseemployeeinfo/siLingDis")
-    public CommonResult<List<PerNum>> siLingDis(@Valid EmployeeInfoEoucation employeeInfoEoucation) {
+    public CommonResult<List<PerNum>> siLingDis(@Valid @RequestBody EmployeeInfoEoucation employeeInfoEoucation) {
         return CommonResult.data(hrBaseEmployeeInfoService.siLingDis(employeeInfoEoucation));
     }
 
     @ApiOperation("工龄分布")
     @PostMapping("/hr/baseemployeeinfo/gongLingDis")
-    public CommonResult<List<PerNum>> gongLingDis(@Valid EmployeeInfoEoucation employeeInfoEoucation) {
+    public CommonResult<List<PerNum>> gongLingDis(@Valid @RequestBody EmployeeInfoEoucation employeeInfoEoucation) {
         return CommonResult.data(hrBaseEmployeeInfoService.gongLingDis(employeeInfoEoucation));
     }
 }

+ 1 - 1
huimv-farm/src/main/java/vip/xiaonuo/hr/modular/baseemployeeinfo/entity/vo/CountPerson.java

@@ -22,7 +22,7 @@ public class CountPerson {
     private Long retireAndDutyNum;
 
     @ApiModelProperty(value = "即将退休名单")
-    private List<HrBaseEmployeeInfo> retirePersonList;
+    private List<HrBaseEmployeeInfoVo> retirePersonList;
 
     @ApiModelProperty(value = "即将退休人员")
     private List<EoucationVo> retirePersonNum;

+ 3 - 3
huimv-farm/src/main/java/vip/xiaonuo/hr/modular/baseemployeeinfo/entity/vo/PerNum.java

@@ -5,10 +5,10 @@ import lombok.Data;
 @Data
 public class PerNum {
     private String name;
-    private long vlue;
+    private long value;
 
-    public PerNum(String name, long vlue) {
+    public PerNum(String name, long value) {
         this.name = name;
-        this.vlue = vlue;
+        this.value = value;
     }
 }

+ 7 - 7
huimv-farm/src/main/java/vip/xiaonuo/hr/modular/baseemployeeinfo/mapper/HrBaseEmployeeInfoMapper.java

@@ -28,17 +28,17 @@ import java.util.List;
  * @date  2024/11/14 15:02
  **/
 public interface HrBaseEmployeeInfoMapper extends BaseMapper<HrBaseEmployeeInfo> {
-    List<EoucationVo> listByEoucation(@Param("orgId") String orgId);
+    List<EoucationVo> listByEoucation(String orgId);
 
-    List<EoucationVo> listByDepart(@Param("orgId") String orgId);
+    List<EoucationVo> listByDepart( String orgId);
 
-    List<EoucationVo> listByDepartGender(@Param("orgId")String orgId);
+    List<EoucationVo> listByDepartGender(String orgId);
 
-    List<EoucationVo> listByDepartGenderEducationDis(@Param("orgId") String orgId);
+    List<EoucationVo> listByDepartGenderEducationDis( String orgId);
 
-    List<PerNum> birthDis(@Param("orgId")String orgId);
+    List<PerNum> birthDis(String orgId);
 
-    List<PerNum> siLingDis( @Param("orgId") String orgId);
+    List<PerNum> siLingDis(String orgId);
 
-    List<PerNum> gongLingDis( @Param("orgId")String orgId);
+    List<PerNum> gongLingDis(String orgId);
 }

+ 0 - 101
huimv-farm/src/main/java/vip/xiaonuo/hr/modular/baseemployeeinfo/mapper/mapping/HrBaseEmployeeInfoMapper.xml

@@ -1,101 +0,0 @@
-<?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="vip.xiaonuo.hr.modular.baseemployeeinfo.mapper.HrBaseEmployeeInfoMapper">
-
-    <select id="listByEoucation" resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.EoucationVo">
-        SELECT b.NAME departmentName ,COUNT(a.ID)  countNum FROM `hr_base_employee_info` a JOIN `hr_base_department`  b ON a.DEPARTMENT_ID = b.ID
-        AND a.ORG_ID = ${orgId} AND a.USER_TYPE =0 AND a.EDUCATION >2  GROUP BY a.DEPARTMENT_ID
-
-    </select>
-    <select id="listByDepart" resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.EoucationVo">
-        SELECT
-            b.NAME AS departmentName,
-            COUNT(a.ID) AS countNum
-        FROM
-            `hr_base_department` b
-        LEFT JOIN
-            `hr_base_employee_info` a
-        ON
-            b.ID = a.DEPARTMENT_ID AND a.ORG_ID = ${orgId} AND a.USER_TYPE = 0
-        GROUP BY
-    b.NAME;
-    </select>
-    <select id="listByDepartGender" resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.EoucationVo">
-          SELECT
-
-           b.NAME AS departmentName ,SUM(CASE WHEN a.GENDER = 0 AND a.USER_TYPE = 0 THEN 1 ELSE 0 END) AS maleNum,
-        SUM(CASE WHEN a.GENDER = 1  AND a.USER_TYPE = 0 THEN 1 ELSE 0 END) AS femaleNum
-         FROM
-            `hr_base_department` b
-        LEFT JOIN
-    `hr_base_employee_info` a  ON a.DEPARTMENT_ID = b.ID  WHERE a.ORG_ID = ${orgId}   GROUP BY a.DEPARTMENT_ID
-    </select>
-    <select id="listByDepartGenderEducationDis"
-            resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.EoucationVo">
-SELECT
-            b.NAME AS departmentName ,
-
-         SUM(CASE WHEN a.EDUCATION = 0  THEN 1 ELSE 0 END) AS priNum,
-        SUM(CASE WHEN a.EDUCATION = 1  THEN 1 ELSE 0 END) AS midNum,
-        SUM(CASE WHEN a.EDUCATION = 2  THEN 1 ELSE 0 END) AS highNum,
-        SUM(CASE WHEN a.EDUCATION = 3  THEN 1 ELSE 0 END) AS underNum,
-        SUM(CASE WHEN a.EDUCATION = 4  THEN 1 ELSE 0 END) AS postNum,
-        SUM(CASE WHEN a.EDUCATION = 5  THEN 1 ELSE 0 END) AS phdNum
-        FROM
-            `hr_base_department` b
-        LEFT JOIN
-           `hr_base_employee_info` a
-        ON
-            b.ID = a.DEPARTMENT_ID AND a.ORG_ID = ${orgId} AND a.USER_TYPE = 0
-        GROUP BY
-    b.NAME;
-
-    </select>
-
-
-    <select id="birthDis" resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.PerNum">
-
-
-SELECT
-    CONCAT(months.month_num,"月") AS `name`,
-    COUNT(b.BIRTHDAY) AS `value`
-FROM
-    (SELECT 1 AS month_num UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9 UNION ALL SELECT 10 UNION ALL SELECT 11 UNION ALL SELECT 12) AS months
-LEFT JOIN
-    `hr_base_employee_info` b ON DATE_FORMAT(b.BIRTHDAY, '%m') = months.month_num AND b.ORG_ID = ${orgId} AND b.USER_TYPE = 0
-GROUP BY
-    months.month_num
-ORDER BY
-    months.month_num;
-
-
-    </select>
-    <select id="siLingDis" resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.PerNum">
-
-    SELECT
-
-        SUM(CASE WHEN a.SI_LING BETWEEN 0 AND 1 THEN 1 ELSE 0 END) AS 1年,
-    SUM(CASE WHEN a.SI_LING BETWEEN 2 AND 5 THEN 1 ELSE 0 END) AS 5年,
-    SUM(CASE WHEN a.SI_LING BETWEEN 6 AND 10 THEN 1 ELSE 0 END) AS 10年,
-    SUM(CASE WHEN a.SI_LING BETWEEN 11 AND 15 THEN 1 ELSE 0 END) AS 15年,
-    SUM(CASE WHEN a.SI_LING BETWEEN 16 AND 20 THEN 1 ELSE 0 END) AS 20年,
-    SUM(CASE WHEN a.SI_LING BETWEEN 21 AND 25 THEN 1 ELSE 0 END) AS 25年,
-    SUM(CASE WHEN a.SI_LING  BETWEEN 26 AND 30 THEN 1 ELSE 0 END) AS 30年
-    FROM
-           `hr_base_employee_info` a
-          WHERE a.ORG_ID = ${orgId} AND a.USER_TYPE = 0
-
-    </select>
-    <select id="gongLingDis" resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.PerNum">
-            SUM(CASE WHEN SENIORITY BETWEEN 0 AND 1 THEN 1 ELSE 0 END) AS 1年,
-    SUM(CASE WHEN SENIORITY BETWEEN 2 AND 5 THEN 1 ELSE 0 END) AS 5年,
-    SUM(CASE WHEN SENIORITY BETWEEN 6 AND 10 THEN 1 ELSE 0 END) AS 10年,
-    SUM(CASE WHEN SENIORITY BETWEEN 11 AND 15 THEN 1 ELSE 0 END) AS 15年,
-    SUM(CASE WHEN SENIORITY BETWEEN 16 AND 20 THEN 1 ELSE 0 END) AS 20年,
-    SUM(CASE WHEN SENIORITY BETWEEN 21 AND 25 THEN 1 ELSE 0 END) AS 25年,
-    SUM(CASE WHEN SENIORITY  BETWEEN 26 AND 30 THEN 1 ELSE 0 END) AS 30年
-    FROM
-           `hr_base_employee_info`
-          WHERE ORG_ID = ${orgId} AND USER_TYPE = 0
-    </select>
-</mapper>

+ 28 - 10
huimv-farm/src/main/java/vip/xiaonuo/hr/modular/baseemployeeinfo/service/impl/HrBaseEmployeeInfoServiceImpl.java

@@ -33,16 +33,14 @@ import vip.xiaonuo.hr.modular.basedepartment.mapper.HrBaseDepartmentMapper;
 import vip.xiaonuo.hr.modular.baseemployeeinfo.entity.HrBaseEmployeeInfo;
 import vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.CountPerson;
 import vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.EoucationVo;
+import vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.HrBaseEmployeeInfoVo;
 import vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.PerNum;
 import vip.xiaonuo.hr.modular.baseemployeeinfo.mapper.HrBaseEmployeeInfoMapper;
 import vip.xiaonuo.hr.modular.baseemployeeinfo.param.*;
 import vip.xiaonuo.hr.modular.baseemployeeinfo.service.HrBaseEmployeeInfoService;
 import vip.xiaonuo.purchase.entity.PurchaseContract;
 
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -120,7 +118,7 @@ public class HrBaseEmployeeInfoServiceImpl extends ServiceImpl<HrBaseEmployeeInf
         QueryWrapper<HrBaseEmployeeInfo> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId).ne("USER_TYPE",1);
         long count = this.count(queryWrapper);
-        queryWrapper.eq("GENDER",0);
+        queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId).eq("GENDER",0);
         long maleNum = this.count(queryWrapper);
         countPerson.setCountNum(count);
         countPerson.setMaleNum(maleNum);
@@ -135,21 +133,37 @@ public class HrBaseEmployeeInfoServiceImpl extends ServiceImpl<HrBaseEmployeeInf
         countPerson.setRetireAndDutyNum(this.count(queryWrapper));
 
         queryWrapper.clear();
-        queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId).ge("RETIRE_TIME", DateUtil.offset(new Date(), DateField.YEAR,employeeInfoEoucation.getDateYear()));
+        queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId).between("RETIRE_TIME", new Date(), DateUtil.offset(new Date(), DateField.YEAR, employeeInfoEoucation.getDateYear()));
         List<HrBaseEmployeeInfo> list = this.list(queryWrapper);
-        if (ObjectUtil.isEmpty(list)) {
+        List<HrBaseEmployeeInfoVo> voList = new ArrayList<>();
+        List<EoucationVo> personList = new ArrayList<>();
+        if (ObjectUtil.isNotEmpty(list)) {
             countPerson.setRetireNum(list.size());
 
-            countPerson.setRetirePersonList(list);
 
-            List<HrBaseDepartment> baseDepartments = hrBaseDepartmentMapper.selectList(new QueryWrapper<HrBaseDepartment>().eq("ORG_ID", orgId));
+
+            List<HrBaseDepartment> baseDepartments = hrBaseDepartmentMapper.selectList(new QueryWrapper<HrBaseDepartment>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId));
+
+            Map<String, String> map = new HashMap<>();
+            for (HrBaseDepartment department : baseDepartments) {
+                map.put(department.getId(),department.getName());
+            }
+            for (HrBaseEmployeeInfo info : list) {
+                HrBaseEmployeeInfoVo vo = new HrBaseEmployeeInfoVo();
+                BeanUtil.copyProperties(info, vo);
+                if (map.containsKey(info.getDepartmentId())) {
+                    vo.setDepartName(map.get(info.getDepartmentId()));
+                }
+                voList.add(vo);
+            }
+            countPerson.setRetirePersonList(voList);
 
             Map<Object, Long> departmentCountMap = list.stream()
                     .collect(Collectors.groupingBy(
                             o -> o.getDepartmentId(), // 分组的键是部门ID
                             Collectors.counting()    // 分组的值是该部门ID对应的人数
                     ));
-            List<EoucationVo> personList = baseDepartments.stream()
+             personList = baseDepartments.stream()
                     .map(baseDepartment -> {
                         EoucationVo eoucationVo = new EoucationVo();
                         eoucationVo.setDepartmentName(baseDepartment.getName());
@@ -160,6 +174,10 @@ public class HrBaseEmployeeInfoServiceImpl extends ServiceImpl<HrBaseEmployeeInf
                     .collect(Collectors.toList());
             countPerson.setRetirePersonNum(personList);
 
+        } else {
+            countPerson.setRetireNum(list.size());
+            countPerson.setRetirePersonList(voList);
+            countPerson.setRetirePersonNum(personList);
         }
         return countPerson;
     }

+ 32 - 0
huimv-farm/src/main/java/vip/xiaonuo/money/controller/MoneyBusinessController.java

@@ -15,6 +15,8 @@ import org.springframework.web.bind.annotation.*;
 import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.hr.modular.baseemployeeinfo.entity.HrBaseEmployeeInfo;
 import vip.xiaonuo.hr.modular.baseemployeeinfo.param.HrBaseEmployeeInfoPageParam;
+import vip.xiaonuo.money.entity.MoneyBusiness;
+import vip.xiaonuo.money.param.MoneyBusinessPageParam;
 import vip.xiaonuo.money.param.MoneyBusinessParam;
 import vip.xiaonuo.money.service.IMoneyBusinessService;
 
@@ -44,4 +46,34 @@ public class MoneyBusinessController {
         return CommonResult.data(businessService.listBusiness(moneyBusinessParam));
     }
 
+    @ApiOperationSupport(order = 2)
+    @ApiOperation("指标卡列表")
+    @PostMapping("/money/getPage")
+    public CommonResult<Page<MoneyBusiness>> getPage(@RequestBody MoneyBusinessPageParam pageParam) {
+        return CommonResult.data(businessService.getPage(pageParam));
+    }
+
+    @ApiOperationSupport(order = 3)
+    @ApiOperation("财务指标卡填报")
+    @PostMapping("/money/addBusiness")
+    public CommonResult<String> addBusiness(@RequestBody  MoneyBusiness business) {
+        businessService.addBusiness(business);
+        return CommonResult.ok();
+    }
+
+    @ApiOperationSupport(order = 4)
+    @ApiOperation("财务指标卡修改")
+    @PostMapping("/money/updateBusiness")
+    public CommonResult<String> updateBusiness(@RequestBody  MoneyBusiness business) {
+        businessService.updateBusiness(business);
+        return CommonResult.ok();
+    }
+
+    @ApiOperationSupport(order = 5)
+    @ApiOperation("财务指标卡删除")
+    @PostMapping("/money/deleteBusiness")
+    public CommonResult<String> deleteBusiness(@RequestBody  MoneyBusiness business) {
+        businessService.deleteBusiness(business);
+        return CommonResult.ok();
+    }
 }

+ 10 - 3
huimv-farm/src/main/java/vip/xiaonuo/money/entity/MoneyBusiness.java

@@ -8,6 +8,7 @@ import java.io.Serializable;
 import java.util.Date;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
+import com.sun.istack.NotNull;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
@@ -35,39 +36,43 @@ public class MoneyBusiness implements Serializable {
     /**
      * 组织id
      */
-    @ApiModelProperty(value = "组织id", position = 2)
+    @ApiModelProperty(value = "组织id", position = 1)
     private String orgId;
 
     /**
      * 营业收入
      */
-    @ApiModelProperty(value = "营业收入", position = 3)
+    @ApiModelProperty(value = "营业收入", position = 2)
     private String businessIncome;
 
     /**
      * 营业成本
      */
-
+    @ApiModelProperty(value = "营业成本", position = 3)
     private String businessCost;
 
     /**
      * 净利润
      */
+    @ApiModelProperty(value = "净利润", position = 4)
     private String profit;
 
     /**
      * 已交税金
      */
+    @ApiModelProperty(value = "已交税金", position = 5)
     private String taxes;
 
     /**
      * 当前资金余额
      */
+    @ApiModelProperty(value = "当前资金余额", position = 6)
     private String balance;
 
     /**
      * 创建时间
      */
+    @ApiModelProperty(value = "创建时间", position = 7)
     @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
     private Date createTime;
 
@@ -75,6 +80,8 @@ public class MoneyBusiness implements Serializable {
     /**
      * 营业类型 0为单个公司 1为全部合营
      */
+    @ApiModelProperty(value = "营业类型 0为单个公司 1为全部合营", position = 8)
+    @NotNull
     private Integer type;
 
 }

+ 16 - 0
huimv-farm/src/main/java/vip/xiaonuo/money/service/IMoneyBusinessService.java

@@ -1,8 +1,10 @@
 package vip.xiaonuo.money.service;
 
 import com.alibaba.fastjson.JSONArray;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import vip.xiaonuo.money.entity.MoneyBusiness;
 import com.baomidou.mybatisplus.extension.service.IService;
+import vip.xiaonuo.money.param.MoneyBusinessPageParam;
 import vip.xiaonuo.money.param.MoneyBusinessParam;
 
 import java.util.List;
@@ -22,4 +24,18 @@ public interface IMoneyBusinessService extends IService<MoneyBusiness> {
     JSONArray listBusiness(MoneyBusinessParam moneyBusinessParam);
 
 
+    //指标卡列表
+    Page<MoneyBusiness> getPage(MoneyBusinessPageParam pageParam);
+
+
+    //财务指标卡填报
+    void addBusiness(MoneyBusiness business);
+
+
+    //财务指标卡修改
+    void updateBusiness(MoneyBusiness business);
+
+    //财务指标卡删除
+    void deleteBusiness(MoneyBusiness business);
+
 }

+ 27 - 0
huimv-farm/src/main/java/vip/xiaonuo/money/service/impl/MoneyBusinessServiceImpl.java

@@ -6,9 +6,11 @@ import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.springframework.beans.factory.annotation.Autowired;
 import vip.xiaonuo.money.entity.MoneyBusiness;
 import vip.xiaonuo.money.mapper.MoneyBusinessMapper;
+import vip.xiaonuo.money.param.MoneyBusinessPageParam;
 import vip.xiaonuo.money.param.MoneyBusinessParam;
 import vip.xiaonuo.money.service.IMoneyBusinessService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -111,4 +113,29 @@ public class MoneyBusinessServiceImpl extends ServiceImpl<MoneyBusinessMapper, M
         jsonArray.add(jsonObject1);
         return jsonArray;
     }
+
+    @Override
+    public Page<MoneyBusiness> getPage(MoneyBusinessPageParam pageParam) {
+        String orgId = pageParam.getOrgId();
+        Page<MoneyBusiness> page = new Page(pageParam.getPageNum(), pageParam.getPageSize());
+        QueryWrapper<MoneyBusiness> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
+        return businessMapper.selectPage(page, queryWrapper);
+    }
+
+    @Override
+    public void addBusiness(MoneyBusiness business) {
+        business.setCreateTime(new Date());
+        businessMapper.insert(business);
+    }
+
+    @Override
+    public void updateBusiness(MoneyBusiness business) {
+        businessMapper.updateById(business);
+    }
+
+    @Override
+    public void deleteBusiness(MoneyBusiness business) {
+        businessMapper.deleteById(business);
+    }
 }

+ 124 - 0
huimv-farm/src/main/resources/mapper/HrBaseEmployeeInfoMapper.xml

@@ -0,0 +1,124 @@
+<?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="vip.xiaonuo.hr.modular.baseemployeeinfo.mapper.HrBaseEmployeeInfoMapper">
+
+    <select id="listByEoucation" resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.EoucationVo">
+        SELECT b.NAME departmentName ,COUNT(a.ID) countNum FROM `hr_base_employee_info` a JOIN `hr_base_department` b ON
+        a.DEPARTMENT_ID = b.ID
+        where
+        <if test="orgId!=null and orgId!=''">
+            a.ORG_ID = #{orgId} AND
+        </if>
+        a.USER_TYPE =0 AND a.EDUCATION >2 GROUP BY a.DEPARTMENT_ID
+        order by count(a.ID)
+    </select>
+    <select id="listByDepart" resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.EoucationVo">
+        SELECT
+        b.NAME AS departmentName,
+        COUNT(a.ID) AS countNum
+        FROM
+        `hr_base_department` b
+        LEFT JOIN
+        `hr_base_employee_info` a
+        ON
+        b.ID = a.DEPARTMENT_ID
+        <if test="orgId!=null and orgId!=''">
+            AND a.ORG_ID = #{orgId}
+        </if>
+        AND a.USER_TYPE = 0
+        GROUP BY
+        b.NAME;
+    </select>
+    <select id="listByDepartGender" resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.EoucationVo">
+        SELECT
+        b.NAME AS departmentName ,SUM(CASE WHEN a.GENDER = 0 AND a.USER_TYPE = 0 THEN 1 ELSE 0 END) AS maleNum,
+        SUM(CASE WHEN a.GENDER = 1 AND a.USER_TYPE = 0 THEN 1 ELSE 0 END) AS femaleNum
+        FROM
+        `hr_base_department` b
+        LEFT JOIN
+        `hr_base_employee_info` a ON a.DEPARTMENT_ID = b.ID
+        <if test="orgId!=null and orgId!=''">
+         WHERE   a.ORG_ID = #{orgId}
+        </if>
+        GROUP BY a.DEPARTMENT_ID
+    </select>
+    <select id="listByDepartGenderEducationDis"
+            resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.EoucationVo">
+        SELECT
+        b.NAME AS departmentName ,
+        SUM(CASE WHEN a.EDUCATION = 0 THEN 1 ELSE 0 END) AS priNum,
+        SUM(CASE WHEN a.EDUCATION = 1 THEN 1 ELSE 0 END) AS midNum,
+        SUM(CASE WHEN a.EDUCATION = 2 THEN 1 ELSE 0 END) AS highNum,
+        SUM(CASE WHEN a.EDUCATION = 3 THEN 1 ELSE 0 END) AS underNum,
+        SUM(CASE WHEN a.EDUCATION = 4 THEN 1 ELSE 0 END) AS postNum,
+        SUM(CASE WHEN a.EDUCATION = 5 THEN 1 ELSE 0 END) AS phdNum
+        FROM
+        `hr_base_department` b
+        LEFT JOIN
+        `hr_base_employee_info` a
+        ON
+        b.ID = a.DEPARTMENT_ID
+        <if test="orgId!=null and orgId!=''">
+            AND a.ORG_ID = #{orgId}
+        </if>
+        AND a.USER_TYPE = 0
+        GROUP BY
+        b.NAME;
+
+    </select>
+
+
+    <select id="birthDis" resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.PerNum">
+        SELECT
+        CONCAT(months.month_num,"月") AS `name`,
+        COUNT(b.BIRTHDAY) AS `value`
+        FROM
+        (SELECT 1 AS month_num UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL
+        SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9 UNION ALL SELECT 10 UNION ALL SELECT 11 UNION
+        ALL SELECT 12) AS months
+        LEFT JOIN
+        `hr_base_employee_info` b ON DATE_FORMAT(b.BIRTHDAY, '%m') = months.month_num
+        <if test="orgId!=null and orgId!=''">
+            AND b.ORG_ID = #{orgId}
+        </if>
+        AND b.USER_TYPE = 0
+        GROUP BY
+        months.month_num
+        ORDER BY
+        months.month_num;
+    </select>
+    <select id="siLingDis" resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.PerNum">
+        SELECT
+        IFNULL(SUM(CASE WHEN a.SI_LING BETWEEN 0 AND 1 THEN 1 ELSE 0 END),'0') AS '1年',
+        IFNULL(SUM(CASE WHEN a.SI_LING BETWEEN 2 AND 5 THEN 1 ELSE 0 END),'0') AS '5年',
+        IFNULL(SUM(CASE WHEN a.SI_LING BETWEEN 6 AND 10 THEN 1 ELSE 0 END),'0') AS '10年',
+        IFNULL(SUM(CASE WHEN a.SI_LING BETWEEN 11 AND 15 THEN 1 ELSE 0 END),'0') AS '15年',
+        IFNULL(SUM(CASE WHEN a.SI_LING BETWEEN 16 AND 20 THEN 1 ELSE 0 END),'0') AS '20年',
+        IFNULL(SUM(CASE WHEN a.SI_LING BETWEEN 21 AND 25 THEN 1 ELSE 0 END),'0') AS '25年',
+        IFNULL(SUM(CASE WHEN a.SI_LING BETWEEN 26 AND 30 THEN 1 ELSE 0 END),'0') AS '30年'
+        FROM
+        `hr_base_employee_info` a
+        WHERE
+        <if test="orgId!=null and orgId!=''">
+            a.ORG_ID = #{orgId} AND
+        </if>
+        a.USER_TYPE = 0
+    </select>
+    <select id="gongLingDis" resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.PerNum">
+        select
+        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 0 AND 1 THEN 1 ELSE 0 END),'0') AS '1年',
+        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 2 AND 5 THEN 1 ELSE 0 END),'0') AS '5年',
+        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 6 AND 10 THEN 1 ELSE 0 END),'0') AS '10年',
+        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 11 AND 15 THEN 1 ELSE 0 END),'0') AS '15年',
+        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 16 AND 20 THEN 1 ELSE 0 END),'0') AS '20年',
+        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 21 AND 25 THEN 1 ELSE 0 END),'0') AS '25年',
+        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 26 AND 30 THEN 1 ELSE 0 END),'0') AS '30年'
+        FROM
+        `hr_base_employee_info`
+        WHERE
+        <if test="orgId!=null and orgId!=''">
+            ORG_ID = #{orgId} AND
+        </if>
+        USER_TYPE = 0
+    </select>
+</mapper>

+ 10 - 0
snowy-plugin/snowy-plugin-sys/src/main/java/vip/xiaonuo/sys/modular/org/controller/SysOrgController.java

@@ -13,6 +13,7 @@
 package vip.xiaonuo.sys.modular.org.controller;
 
 import cn.hutool.core.lang.tree.Tree;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import com.github.xiaoymin.knife4j.annotations.ApiSupport;
@@ -177,4 +178,13 @@ public class SysOrgController {
     public CommonResult<List<SysOrg> > getOrgs(String orgId) {
         return CommonResult.data(sysOrgService.getOrgIds(orgId));
     }
+
+
+    @ApiOperationSupport(order = 10)
+    @ApiOperation("获取组织列表")
+    @GetMapping("/sys/org/listOrgIds")
+    public CommonResult<List<SysOrg>> listOrgIds() {
+        return CommonResult.data(sysOrgService.list(new QueryWrapper<SysOrg>().eq("PARENT_ID","1543842934270394368")
+                .eq("CATEGORY","COMPANY")));
+    }
 }