From 709ffd40d5acf1ea11f0d3192f4ede03058c5964 Mon Sep 17 00:00:00 2001 From: Joe Date: Wed, 14 Jun 2023 23:47:05 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Sqlitedb/training.db | Bin 5963776 -> 5963776 bytes .../jingcheng/cms/model/EducationResume.java | 110 +++++++++- .../com/jingcheng/cms/model/Employee.java | 194 ++++++++++++++++++ .../java/com/jingcheng/cms/model/Honor.java | 2 +- .../cms/service/impl/EmployeeServiceImpl.java | 135 +++++++++--- .../jingcheng/cms/vo/DataStatisticsVO.java | 3 + .../resources/generator/generatorConfig.xml | 6 +- src/main/resources/mapper/EmployeeMapper.xml | 21 ++ 8 files changed, 437 insertions(+), 34 deletions(-) diff --git a/Sqlitedb/training.db b/Sqlitedb/training.db index a0fd03c53c3befc08474fdbf130c32547449b63e..bb5e7cf85fcacbff824dfc3f6027794b8c6e63c3 100644 GIT binary patch delta 1849 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 ptqIds = jsonArray != null ? jsonArray.toJavaList(Long.class) : new ArrayList<>(); + JSONArray ptqIdsJson = jsonObject.getJSONArray("ptqIds"); + List ptqIds = ptqIdsJson != null ? ptqIdsJson.toJavaList(Long.class) : new ArrayList<>(); + JSONArray postIdsJson = jsonObject.getJSONArray("postIds"); + List postIds = postIdsJson != null ? postIdsJson.toJavaList(Long.class) : new ArrayList<>(); + JSONArray groupsIdsJson = jsonObject.getJSONArray("groupsIds"); + List groupsIds = groupsIdsJson != null ? groupsIdsJson.toJavaList(Long.class) : new ArrayList<>(); + JSONArray skillLevelIdsJson = jsonObject.getJSONArray("skillLevelIds"); + List skillLevelIds = skillLevelIdsJson != null ? skillLevelIdsJson.toJavaList(Long.class) : new ArrayList<>(); + JSONArray highestEducationIdsJson = jsonObject.getJSONArray("highestEducationIds"); + List highestEducationIds = highestEducationIdsJson != null ? highestEducationIdsJson.toJavaList(Long.class) : new ArrayList<>(); + JSONArray unitIdsJson = jsonObject.getJSONArray("unitIds"); + List unitIds = unitIdsJson != null ? unitIdsJson.toJavaList(Long.class) : new ArrayList<>(); + JSONArray honorLevelsJson = jsonObject.getJSONArray("honorLevels"); + List honorLevels = honorLevelsJson != null ? honorLevelsJson.toJavaList(Long.class) : new ArrayList<>(); + JSONArray sexesJson = jsonObject.getJSONArray("sexes"); + List sexes = sexesJson != null ? sexesJson.toJavaList(Integer.class) : new ArrayList<>(); + JSONArray departmentIdsJson = jsonObject.getJSONArray("departmentIds"); + List departmentIds = departmentIdsJson != null ? departmentIdsJson.toJavaList(Long.class) : new ArrayList<>(); + JSONArray ageIdsJson = jsonObject.getJSONArray("ageIds"); + List ageIds = ageIdsJson != null ? ageIdsJson.toJavaList(Long.class) : new ArrayList<>(); List honorEmployees = new ArrayList<>(); - if (StringUtils.isNotEmpty(honorLevel) || StringUtils.isNotEmpty(honorDescription)) { + if ((null != honorLevels && honorLevels.size() > 0) || StringUtils.isNotEmpty(honorDescription)) { Example example1 = new Example(Honor.class); Example.Criteria criteria1 = example1.createCriteria(); criteria1.andEqualTo("state",Constants.STATE_VALID); - if (StringUtils.isNotEmpty(honorLevel)) { - criteria1.andEqualTo("honorLevel", honorLevel); + if (null != honorLevels && honorLevels.size() > 0) { + criteria1.andIn("honorLevel", honorLevels); } if (StringUtils.isNotEmpty(honorDescription)) { criteria1.andLike("honorDescription", "%"+honorDescription+"%"); @@ -76,13 +93,17 @@ public class EmployeeServiceImpl implements EmployeeService { if (honorEmployees.size() > 0) criteria.andIn("employeeNo", honorEmployees); if (StringUtils.isNotEmpty(employee.getEmployeeName())) criteria.andLike("employeeName", "%"+employee.getEmployeeName()+"%"); if (StringUtils.isNotEmpty(employee.getMobile())) criteria.andLike("mobile", "%"+employee.getMobile()+"%"); - if (null != employee.getPostId()) criteria.andEqualTo("postId", employee.getPostId()); - if (null != employee.getGroupsId()) criteria.andEqualTo("groupsId", employee.getGroupsId()); + if (null != sexes && sexes.size() > 0) criteria.andIn("sex", sexes); + if (null != departmentIds && departmentIds.size() > 0) criteria.andIn("departmentId", departmentIds); + if (null != ageIds && ageIds.size() > 0) criteria.andIn("ageId", ageIds); if (null != ptqIds && ptqIds.size() > 0) criteria.andIn("ptqId", ptqIds); - if (null != employee.getSkillLevelId()) criteria.andEqualTo("skillLevelId", employee.getSkillLevelId()); - if (null != employee.getHighestEducationId()) criteria.andEqualTo("highestEducationId", employee.getHighestEducationId()); + if (null != unitIds && unitIds.size() > 0) criteria.andIn("unitId", unitIds); + if (null != postIds && postIds.size() > 0) criteria.andIn("postId", postIds); + if (null != groupsIds && groupsIds.size() > 0) criteria.andIn("groupsId", groupsIds); + if (null != skillLevelIds && skillLevelIds.size() > 0) criteria.andIn("skillLevelId", skillLevelIds); + if (null != highestEducationIds && highestEducationIds.size() > 0) criteria.andIn("highestEducationId", highestEducationIds); List employeeList = employeeMapper.selectByExample(example); - if ((StringUtils.isNotEmpty(honorLevel) || StringUtils.isNotEmpty(honorDescription)) && honorEmployees.size() == 0) employeeList = new ArrayList<>(); + if (((null != honorLevels && honorLevels.size() > 0) || StringUtils.isNotEmpty(honorDescription)) && honorEmployees.size() == 0) employeeList = new ArrayList<>(); JSONObject pageJson = PageUtils.page(employeeList,current,pageSize); return pageJson; } @@ -94,17 +115,34 @@ public class EmployeeServiceImpl implements EmployeeService { Employee employee = JSONObject.toJavaObject(jsonObject, Employee.class); Example.Criteria criteria = example.createCriteria(); criteria.andEqualTo("state",Constants.STATE_VALID); - String honorLevel = jsonObject.getString("honorLevel"); String honorDescription = jsonObject.getString("honorDescription"); - JSONArray jsonArray = jsonObject.getJSONArray("ptqIds"); - List ptqIds = jsonArray.toJavaList(Long.class); + JSONArray ptqIdsJson = jsonObject.getJSONArray("ptqIds"); + List ptqIds = ptqIdsJson != null ? ptqIdsJson.toJavaList(Long.class) : new ArrayList<>(); + JSONArray postIdsJson = jsonObject.getJSONArray("postIds"); + List postIds = postIdsJson != null ? postIdsJson.toJavaList(Long.class) : new ArrayList<>(); + JSONArray groupsIdsJson = jsonObject.getJSONArray("groupsIds"); + List groupsIds = groupsIdsJson != null ? groupsIdsJson.toJavaList(Long.class) : new ArrayList<>(); + JSONArray skillLevelIdsJson = jsonObject.getJSONArray("skillLevelIds"); + List skillLevelIds = skillLevelIdsJson != null ? skillLevelIdsJson.toJavaList(Long.class) : new ArrayList<>(); + JSONArray highestEducationIdsJson = jsonObject.getJSONArray("highestEducationIds"); + List highestEducationIds = highestEducationIdsJson != null ? highestEducationIdsJson.toJavaList(Long.class) : new ArrayList<>(); + JSONArray unitIdsJson = jsonObject.getJSONArray("unitIds"); + List unitIds = unitIdsJson != null ? unitIdsJson.toJavaList(Long.class) : new ArrayList<>(); + JSONArray honorLevelsJson = jsonObject.getJSONArray("honorLevels"); + List honorLevels = honorLevelsJson != null ? honorLevelsJson.toJavaList(Long.class) : new ArrayList<>(); + JSONArray sexesJson = jsonObject.getJSONArray("sexes"); + List sexes = sexesJson != null ? sexesJson.toJavaList(Integer.class) : new ArrayList<>(); + JSONArray departmentIdsJson = jsonObject.getJSONArray("departmentIds"); + List departmentIds = departmentIdsJson != null ? departmentIdsJson.toJavaList(Long.class) : new ArrayList<>(); + JSONArray ageIdsJson = jsonObject.getJSONArray("ageIds"); + List ageIds = ageIdsJson != null ? ageIdsJson.toJavaList(Long.class) : new ArrayList<>(); List honorEmployees = new ArrayList<>(); - if (StringUtils.isNotEmpty(honorLevel) || StringUtils.isNotEmpty(honorDescription)) { + if ((null != honorLevels && honorLevels.size() > 0) || StringUtils.isNotEmpty(honorDescription)) { Example example1 = new Example(Honor.class); Example.Criteria criteria1 = example1.createCriteria(); criteria1.andEqualTo("state",Constants.STATE_VALID); - if (StringUtils.isNotEmpty(honorLevel)) { - criteria1.andEqualTo("honorLevel", honorLevel); + if (null != honorLevels && honorLevels.size() > 0) { + criteria1.andIn("honorLevel", honorLevels); } if (StringUtils.isNotEmpty(honorDescription)) { criteria1.andLike("honorDescription", "%"+honorDescription+"%"); @@ -116,13 +154,17 @@ public class EmployeeServiceImpl implements EmployeeService { if (honorEmployees.size() > 0) criteria.andIn("employeeNo", honorEmployees); if (StringUtils.isNotEmpty(employee.getEmployeeName())) criteria.andLike("employeeName", "%"+employee.getEmployeeName()+"%"); if (StringUtils.isNotEmpty(employee.getMobile())) criteria.andLike("mobile", "%"+employee.getMobile()+"%"); - if (null != employee.getPostId()) criteria.andEqualTo("postId", employee.getPostId()); - if (null != employee.getGroupsId()) criteria.andEqualTo("groupsId", employee.getGroupsId()); if (null != ptqIds && ptqIds.size() > 0) criteria.andIn("ptqId", ptqIds); - if (null != employee.getSkillLevelId()) criteria.andEqualTo("skillLevelId", employee.getSkillLevelId()); - if (null != employee.getHighestEducationId()) criteria.andEqualTo("highestEducationId", employee.getHighestEducationId()); + if (null != sexes && sexes.size() > 0) criteria.andIn("sex", sexes); + if (null != departmentIds && departmentIds.size() > 0) criteria.andIn("departmentId", departmentIds); + if (null != ageIds && ageIds.size() > 0) criteria.andIn("ageId", ageIds); + if (null != unitIds && unitIds.size() > 0) criteria.andIn("unitId", unitIds); + if (null != postIds && postIds.size() > 0) criteria.andIn("postId", postIds); + if (null != groupsIds && groupsIds.size() > 0) criteria.andIn("groupsId", groupsIds); + if (null != skillLevelIds && skillLevelIds.size() > 0) criteria.andIn("skillLevelId", skillLevelIds); + if (null != highestEducationIds && highestEducationIds.size() > 0) criteria.andIn("highestEducationId", highestEducationIds); List employeeList = employeeMapper.selectByExample(example); - if ((StringUtils.isNotEmpty(honorLevel) || StringUtils.isNotEmpty(honorDescription)) && honorEmployees.size() == 0) employeeList = new ArrayList<>(); + if (((null != honorLevels && honorLevels.size() > 0) || StringUtils.isNotEmpty(honorDescription)) && honorEmployees.size() == 0) employeeList = new ArrayList<>(); ExportParams exportParams = new ExportParams(); Workbook workbook = ExcelExportUtil.exportExcel(exportParams,Employee.class, employeeList); ExcelUtils.export(workbook, response, "员工导出"); @@ -205,6 +247,22 @@ public class EmployeeServiceImpl implements EmployeeService { employee.setHighestEducationId(infoSettingValuesFilter.get(0).getId()); } } + //年龄 + if (StringUtils.isNotEmpty(employee.getAge())) { + List infoSettingValues = infoSettingValueService.getAllInfoSettingValueBySettingName("年龄"); + List infoSettingValuesFilter = infoSettingValues.stream().filter(item -> item.getSettingValue().equals(employee.getAge())).collect(Collectors.toList()); + if (infoSettingValuesFilter.size() > 0) { + employee.setAgeId(infoSettingValuesFilter.get(0).getId()); + } + } + //部门 + if (StringUtils.isNotEmpty(employee.getDepartment())) { + List infoSettingValues = infoSettingValueService.getAllInfoSettingValueBySettingName("部门"); + List infoSettingValuesFilter = infoSettingValues.stream().filter(item -> item.getSettingValue().equals(employee.getDepartment())).collect(Collectors.toList()); + if (infoSettingValuesFilter.size() > 0) { + employee.setDepartmentId(infoSettingValuesFilter.get(0).getId()); + } + } Employee employeeSelect = new Employee(); employeeSelect.setEmployeeNo(employee.getEmployeeNo()); employeeSelect.setState(Constants.ENABLE); @@ -253,15 +311,21 @@ public class EmployeeServiceImpl implements EmployeeService { @Override public AjaxResult dataStatistics(JSONObject jsonObject) { AjaxResult ajaxResult = new AjaxResult(); - String postName = jsonObject.getString("postName"); + JSONArray postNamesJson = jsonObject.getJSONArray("postNames"); + List postNames = postNamesJson != null ? postNamesJson.toJavaList(String.class) : new ArrayList<>(); + JSONArray departmentsJson = jsonObject.getJSONArray("departments"); + List departments = departmentsJson != null ? departmentsJson.toJavaList(String.class) : new ArrayList<>(); // List postIdList = (List) Arrays.stream(postIds.split(",")).mapToLong(num -> Long.parseLong(num)); Integer isEdu = jsonObject.getInteger("isEdu"); Integer isSkill = jsonObject.getInteger("isSkill"); Integer isPtq = jsonObject.getInteger("isPtq"); + Integer isDepartment = jsonObject.getInteger("isDepartment"); + Integer isAge = jsonObject.getInteger("isAge"); + Integer isSex = jsonObject.getInteger("isSex"); List dataStatisticsVOS = new ArrayList<>(); List postNameList = new ArrayList<>(); - if (StringUtils.isNotEmpty(postName)) { - postNameList.add(postName); + if (postNames != null && postNames.size() > 0) { + postNameList = postNames; } else { List infoSettingValues = infoSettingValueService.getAllInfoSettingValueBySettingName("岗位"); postNameList = infoSettingValues.stream().map(item -> item.getSettingValue()).collect(Collectors.toList()); @@ -282,6 +346,27 @@ public class EmployeeServiceImpl implements EmployeeService { List dataAnalysisVOS = employeeMapper.dataStatistics(3, s); dataStatisticsVO.setSkillLevelList(dataAnalysisVOS); } + if (null != isSex && isSex == 1) { + List dataAnalysisVOS = employeeMapper.dataStatistics(4, s); + dataStatisticsVO.setSexList(dataAnalysisVOS); + } + if (null != isAge && isAge == 1) { + List dataAnalysisVOS = employeeMapper.dataStatistics(5, s); + dataStatisticsVO.setAgeList(dataAnalysisVOS); + } + if (null != isDepartment && isDepartment == 1) { + List dataAnalysisVOS = employeeMapper.dataStatistics(6, s); + if (departments != null && departments.size()>0) { + List dataAnalysisVOS1 = new ArrayList<>(); + for (DataAnalysisVO dataAnalysisVO : dataAnalysisVOS) { + if (departments.contains(dataAnalysisVO.getAnalysisName())) { + dataAnalysisVOS1.add(dataAnalysisVO); + } + } + dataAnalysisVOS = dataAnalysisVOS1; + } + dataStatisticsVO.setDepartmentList(dataAnalysisVOS); + } dataStatisticsVOS.add(dataStatisticsVO); } diff --git a/src/main/java/com/jingcheng/cms/vo/DataStatisticsVO.java b/src/main/java/com/jingcheng/cms/vo/DataStatisticsVO.java index bccaf97..3a3b030 100644 --- a/src/main/java/com/jingcheng/cms/vo/DataStatisticsVO.java +++ b/src/main/java/com/jingcheng/cms/vo/DataStatisticsVO.java @@ -12,4 +12,7 @@ public class DataStatisticsVO { private List educationList; private List ptqList; private List skillLevelList; + private List sexList; + private List departmentList; + private List ageList; } diff --git a/src/main/resources/generator/generatorConfig.xml b/src/main/resources/generator/generatorConfig.xml index bd760e4..15c6164 100644 --- a/src/main/resources/generator/generatorConfig.xml +++ b/src/main/resources/generator/generatorConfig.xml @@ -26,10 +26,10 @@ - + - + + diff --git a/src/main/resources/mapper/EmployeeMapper.xml b/src/main/resources/mapper/EmployeeMapper.xml index 09ce8b9..a6897f6 100644 --- a/src/main/resources/mapper/EmployeeMapper.xml +++ b/src/main/resources/mapper/EmployeeMapper.xml @@ -18,6 +18,18 @@ t1.skill_level as analysisName, COUNT( t1.skill_level ) as analysisCount + + t1.sex as analysisName, + COUNT( t1.sex ) as analysisCount + + + t1.age as analysisName, + COUNT( t1.age ) as analysisCount + + + t1.department as analysisName, + COUNT( t1.department ) as analysisCount + FROM employee t1 JOIN (SELECT post, COUNT(post) as postCount FROM employee GROUP BY post) t2 ON t1.post = t2.post @@ -36,6 +48,15 @@ t1.skill_level + + t1.sex + + + t1.age + + + t1.department + \ No newline at end of file