diff --git a/src/main/java/com/lz/common/utils/DingTalkUtil.java b/src/main/java/com/lz/common/utils/DingTalkUtil.java index 45ce1bde..5ad039d0 100644 --- a/src/main/java/com/lz/common/utils/DingTalkUtil.java +++ b/src/main/java/com/lz/common/utils/DingTalkUtil.java @@ -8,6 +8,8 @@ import com.dingtalk.api.DingTalkClient; import com.dingtalk.api.request.*; import com.dingtalk.api.response.*; import com.lz.modules.app.entity.StaffEntity; +import com.lz.modules.app.entity.StaffOccupationEntity; +import com.lz.modules.app.service.StaffOccupationService; import com.lz.modules.app.service.StaffService; import com.lz.modules.job.model.responseBo.DepartmentInfosBo; import com.lz.modules.job.model.responseBo.DepartmentStaffBo; @@ -55,6 +57,9 @@ public class DingTalkUtil { @Autowired private SysUserTokenService sysUserTokenService; + @Autowired + StaffOccupationService staffOccupationService; + CloseableHttpClient getHttpClient(){ @@ -325,20 +330,26 @@ public class DingTalkUtil { if(json.getIntValue("errcode") == 0){ String employeeId = json.getString("userid"); StaffEntity staffEntity = staffService.selectStaffByEmployeeId(employeeId); + if(staffEntity != null){ - //登录操作 - SysUserEntity user = new SysUserEntity(); - user.setPassword(staffEntity.getPassword()); - user.setMobile(staffEntity.getMobile()); - user.setUserId(staffEntity.getId()); - user.setEmail(staffEntity.getEmail()); - user.setSalt(staffEntity.getSalt()); - user.setStatus(1); - user.setType(1); - user.setRealName(staffEntity.getName()); - user.setUsername(staffEntity.getMobile()); - user.setUserNo(staffEntity.getMobile()); - return sysUserTokenService.createTokenSetTokenCode(user, code); + StaffOccupationEntity staffOccupationEntity = + staffOccupationService.getStaffOccupationByStaffId(staffEntity.getId()); + if(staffOccupationEntity != null && staffOccupationEntity.getStaffStatus() == 0){ + //登录操作 + SysUserEntity user = new SysUserEntity(); + user.setPassword(staffEntity.getPassword()); + user.setMobile(staffEntity.getMobile()); + user.setUserId(staffEntity.getId()); + user.setEmail(staffEntity.getEmail()); + user.setSalt(staffEntity.getSalt()); + user.setStatus(1); + user.setType(1); + user.setRealName(staffEntity.getName()); + user.setUsername(staffEntity.getMobile()); + user.setUserNo(staffEntity.getMobile()); + return sysUserTokenService.createTokenSetTokenCode(user, code); + } + } return R.error("用户不存在"); } diff --git a/src/main/java/com/lz/config/ShiroConfig.java b/src/main/java/com/lz/config/ShiroConfig.java index 386981fe..98c33d21 100644 --- a/src/main/java/com/lz/config/ShiroConfig.java +++ b/src/main/java/com/lz/config/ShiroConfig.java @@ -64,8 +64,6 @@ public class ShiroConfig { filterMap.put("/captcha.jpg", "anon"); filterMap.put("/aaa.txt", "anon"); filterMap.put("/dtlg/login", "anon"); - filterMap.put("/oneCode/**", "anon"); - filterMap.put("/modules/**", "anon");//临时添加,后期去掉 filterMap.put("/dtlg/luck", "anon"); filterMap.put("/dtlg/look", "anon"); filterMap.put("/dtlg/jump", "anon"); diff --git a/src/main/java/com/lz/modules/app/controller/ReportResultController.java b/src/main/java/com/lz/modules/app/controller/ReportResultController.java index 00b5eb2c..a43ac4cf 100644 --- a/src/main/java/com/lz/modules/app/controller/ReportResultController.java +++ b/src/main/java/com/lz/modules/app/controller/ReportResultController.java @@ -54,19 +54,20 @@ public class ReportResultController extends AbstractController{ @RequestMapping("chart") - public R reportChart(String monthTime,String departmentId){ - if(StringUtil.isBlank(monthTime)){ - monthTime = YearMonth.now().toString(); + public R reportChart(String selectMonthTime,String departmentId){ + if(StringUtil.isBlank(selectMonthTime)){ + selectMonthTime = YearMonth.now().toString(); } ReportChartResp data = new ReportChartResp(); //月初目标 - List start = chartService.resultProgressDistribution(ResultRecordTypeEnum.TARGET.getType(),monthTime,departmentId); + List start = chartService.resultProgressDistribution(ResultRecordTypeEnum.TARGET.getType(),selectMonthTime,departmentId); //月末结果 - List end = chartService.resultProgressDistribution(ResultRecordTypeEnum.RESULT.getType(),monthTime,departmentId); + List end = chartService.resultProgressDistribution(ResultRecordTypeEnum.RESULT.getType(),selectMonthTime,departmentId); //人员等级分布 List allDeparmentIds = staffService.selectAllDeparmentIdsByDepartmentParentId(departmentId); - int total = staffService.countStaffByAllDeparmentIds(allDeparmentIds); - List staffLevels = resultRecordService.staffDistribution(monthTime); + List strings = staffService.staffsByAllDeparmentIds(allDeparmentIds); + int total = strings.size(); + List staffLevels = resultRecordService.staffDistribution(selectMonthTime,strings); List names = new ArrayList<>(); List datas = new ArrayList<>(); int konwn = 0; @@ -90,7 +91,6 @@ public class ReportResultController extends AbstractController{ barDto.setDatas(datas); barDto.setTotal(total); data.setStaffDistribution(barDto); - data.setMonthTime(YearMonth.now().toString()); return R.ok().put("data",data); } diff --git a/src/main/java/com/lz/modules/app/service/StaffService.java b/src/main/java/com/lz/modules/app/service/StaffService.java index 45946fb8..13b88aab 100644 --- a/src/main/java/com/lz/modules/app/service/StaffService.java +++ b/src/main/java/com/lz/modules/app/service/StaffService.java @@ -80,8 +80,8 @@ public interface StaffService extends IService { //查询部门下的所有子部门 List selectAllDeparmentIdsByDepartmentParentId(String departmentId); - //统计部门下的人数 - int countStaffByAllDeparmentIds(List deparmentIds); + //统计部门下的人 + List staffsByAllDeparmentIds(List deparmentIds); List selectAll(); } diff --git a/src/main/java/com/lz/modules/app/service/impl/StaffServiceImpl.java b/src/main/java/com/lz/modules/app/service/impl/StaffServiceImpl.java index a26c12c5..656c36de 100644 --- a/src/main/java/com/lz/modules/app/service/impl/StaffServiceImpl.java +++ b/src/main/java/com/lz/modules/app/service/impl/StaffServiceImpl.java @@ -404,9 +404,9 @@ public class StaffServiceImpl extends ServiceImpl impleme @Override - public int countStaffByAllDeparmentIds(List deparmentIds) { + public List staffsByAllDeparmentIds(List deparmentIds) { if(CollectionUtils.isEmpty(deparmentIds)){ - return 0; + return Lists.newArrayList(); } //获取所有子部门 List list = departmentsStaffRelateService.list(new QueryWrapper() @@ -414,12 +414,12 @@ public class StaffServiceImpl extends ServiceImpl impleme .eq("is_delete", 0) .in("department_id", deparmentIds)); if(CollectionUtils.isEmpty(list)){ - return 0; + return Lists.newArrayList(); } //获取人员个数去重 List staffs = list.stream().map(e -> e.getStaffId() + "").collect(Collectors.toList()); List staffdistincts = staffs.stream().distinct().collect(Collectors.toList()); - return staffdistincts.size(); + return staffdistincts; } diff --git a/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java b/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java index 93d475bc..fd8fcecf 100644 --- a/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java +++ b/src/main/java/com/lz/modules/sys/dao/app/ResultRecordMapper.java @@ -54,7 +54,7 @@ public interface ResultRecordMapper extends BaseMapper { List ownResult(@Param("userId") Long userId, @Param("status") int status); - List staffDistribution(@Param("monthTime") String monthTime); + List staffDistribution(@Param("monthTime") String monthTime,@Param("staffIds") List staffIds); ResultRecord selectResultRecordByStaffIdStatus(@Param("staffId") Long staffId, @Param("status") int status); } \ No newline at end of file diff --git a/src/main/java/com/lz/modules/sys/service/app/ResultRecordService.java b/src/main/java/com/lz/modules/sys/service/app/ResultRecordService.java index 1d97d8bf..273fe658 100644 --- a/src/main/java/com/lz/modules/sys/service/app/ResultRecordService.java +++ b/src/main/java/com/lz/modules/sys/service/app/ResultRecordService.java @@ -79,7 +79,7 @@ public interface ResultRecordService extends IService { * @param monthTime * @return */ - List staffDistribution(String monthTime); + List staffDistribution(String monthTime,List staffIds); Map> getStringListMap(List tDepartments); diff --git a/src/main/java/com/lz/modules/sys/service/app/impl/ChartServiceImpl.java b/src/main/java/com/lz/modules/sys/service/app/impl/ChartServiceImpl.java index a306d089..ec65b14d 100644 --- a/src/main/java/com/lz/modules/sys/service/app/impl/ChartServiceImpl.java +++ b/src/main/java/com/lz/modules/sys/service/app/impl/ChartServiceImpl.java @@ -30,7 +30,7 @@ public class ChartServiceImpl implements ChartService { List dtos = new ArrayList<>(); //获取所有人员总数 List allDeparmentIds = staffService.selectAllDeparmentIdsByDepartmentParentId(departmentId); - int total = staffService.countStaffByAllDeparmentIds(allDeparmentIds); + int total = staffService.staffsByAllDeparmentIds(allDeparmentIds).size(); //已提交 int commit = resultRecordService.count(new QueryWrapper() .eq("is_delete", 0) diff --git a/src/main/java/com/lz/modules/sys/service/app/impl/ResultRecordServiceImpl.java b/src/main/java/com/lz/modules/sys/service/app/impl/ResultRecordServiceImpl.java index e00b0008..d8599996 100644 --- a/src/main/java/com/lz/modules/sys/service/app/impl/ResultRecordServiceImpl.java +++ b/src/main/java/com/lz/modules/sys/service/app/impl/ResultRecordServiceImpl.java @@ -691,7 +691,8 @@ public class ResultRecordServiceImpl extends ServiceImpl staffDistribution(String monthTime) { - return resultRecordMapper.staffDistribution(monthTime); + public List staffDistribution(String monthTime,List staffIds) { + + return resultRecordMapper.staffDistribution(monthTime,staffIds); } } diff --git a/src/main/resources/mapper/app/ResultRecordMapper.xml b/src/main/resources/mapper/app/ResultRecordMapper.xml index abf97f38..f76aca27 100644 --- a/src/main/resources/mapper/app/ResultRecordMapper.xml +++ b/src/main/resources/mapper/app/ResultRecordMapper.xml @@ -265,7 +265,13 @@