From 0703ac1fa3f23813bfe36c7e29930baed1ca22b7 Mon Sep 17 00:00:00 2001 From: haha Date: Tue, 7 May 2024 22:38:42 +0800 Subject: [PATCH] update code --- .../ProjectAttendanceController.java | 47 +++++++++++++++- .../SurProjectAttendanceUserMapper.java | 15 +++++- .../ISurProjectAttendanceUserService.java | 14 ++++- .../SurProjectAttendanceUserServiceImpl.java | 20 ++++++- .../SurProjectAttendanceUserMapper.xml | 54 +++++++++++++++++++ 5 files changed, 146 insertions(+), 4 deletions(-) diff --git a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectAttendanceController.java b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectAttendanceController.java index 0fa26b11..37addbbc 100644 --- a/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectAttendanceController.java +++ b/yanzhu-bigscreen/src/main/java/com/yanzhu/jh/bigscreen/web/controller/ProjectAttendanceController.java @@ -193,7 +193,7 @@ public class ProjectAttendanceController extends BaseController { * @return */ @GetMapping("/groupByWorkerOnDuty") - public AjaxResult groupByWorkerOnDuty(SurProjectAttendanceData where){ + public AjaxResult groupByWorkerOnDuty(SurProjectAttendanceUser where){ Long deptId= where.getDeptId(); if(deptId==null || deptId<=0){ if (SecurityUtils.isUserB()) { @@ -210,6 +210,51 @@ public class ProjectAttendanceController extends BaseController { redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES); return AjaxResult.success(list); } + + + /** + * 在岗|离岗工人查询 + * @param where + * @return + */ + @GetMapping("/queryWorkerByState") + public TableDataInfo queryWorkerByState(SurProjectAttendanceUser where){ + Long deptId= where.getDeptId(); + if(deptId==null || deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } + PageDomain pageDomain = TableSupport.buildPageRequest(); + Integer pageNum = pageDomain.getPageNum(); + Integer pageSize = pageDomain.getPageSize(); + startPage(); + List list=attendanceUserService.queryWorkerByState(where); + return getDataTable(list); + } + /** + * 按部门汇总在岗|离岗人数 + * @param where + * @return + */ + @GetMapping("/groupByWorkerState") + public AjaxResult groupByWorkerState(SurProjectAttendanceUser where){ + Long deptId= where.getDeptId(); + if(deptId==null || deptId<=0){ + if (SecurityUtils.isUserB()) { + where.setPrjIds(getProjectIds()); + } + } + String key="bgscreen_attendance_groupByWorkerState-"+where.getDeptId()+where.getState()+"_"+where.getProjectId()+"_"+where.getProType()+Md5Utils.hash(where.getPrjIds()); + Object obj=redisCache.getCacheObject(key); + if(obj!=null){ + return success(obj); + } + + List list=attendanceUserService.groupByWorkerByDept(where); + redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES); + return AjaxResult.success(list); + } /** * 今日出勤详情 */ diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectAttendanceUserMapper.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectAttendanceUserMapper.java index fe31950c..3629c6eb 100644 --- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectAttendanceUserMapper.java +++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/mapper/SurProjectAttendanceUserMapper.java @@ -131,5 +131,18 @@ public interface SurProjectAttendanceUserMapper * @param where * @return */ - List groupByWorkerOnDutyByDept(SurProjectAttendanceData where); + List groupByWorkerOnDutyByDept(SurProjectAttendanceUser where); + /** + * 按部门汇总在岗|离岗人数 + * @param where + * @return + */ + List groupByWorkerByDept(SurProjectAttendanceUser where); + /** + * 在岗|离岗工人查询 + * @param where + * @return + */ + List queryWorkerByState(SurProjectAttendanceUser where); + } diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/ISurProjectAttendanceUserService.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/ISurProjectAttendanceUserService.java index 2cf44efb..eb9653a0 100644 --- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/ISurProjectAttendanceUserService.java +++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/ISurProjectAttendanceUserService.java @@ -124,7 +124,19 @@ public interface ISurProjectAttendanceUserService * @param where * @return */ - List groupByWorkerOnDutyByDept(SurProjectAttendanceData where); + List groupByWorkerOnDutyByDept(SurProjectAttendanceUser where); List querySurProjectAttendanceUserList(SurProjectAttendanceUser surProjectAttendanceUser); + /** + * 按部门汇总在岗|离岗人数 + * @param where + * @return + */ + List groupByWorkerByDept(SurProjectAttendanceUser where); + /** + * 在岗|离岗工人查询 + * @param where + * @return + */ + List queryWorkerByState(SurProjectAttendanceUser where); } diff --git a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectAttendanceUserServiceImpl.java b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectAttendanceUserServiceImpl.java index 8f5cde9c..d6cc7ac2 100644 --- a/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectAttendanceUserServiceImpl.java +++ b/yanzhu-jh/src/main/java/com/yanzhu/jh/project/service/impl/SurProjectAttendanceUserServiceImpl.java @@ -243,7 +243,7 @@ public class SurProjectAttendanceUserServiceImpl implements ISurProjectAttendanc * @return */ @Override - public List groupByWorkerOnDutyByDept(SurProjectAttendanceData where) { + public List groupByWorkerOnDutyByDept(SurProjectAttendanceUser where) { return surProjectAttendanceUserMapper.groupByWorkerOnDutyByDept(where); } @@ -251,6 +251,24 @@ public class SurProjectAttendanceUserServiceImpl implements ISurProjectAttendanc public List querySurProjectAttendanceUserList(SurProjectAttendanceUser surProjectAttendanceUser) { return surProjectAttendanceUserMapper.querySurProjectAttendanceUserList(surProjectAttendanceUser); } + /** + * 按部门汇总在岗|离岗人数 + * @param where + * @return + */ + @Override + public List groupByWorkerByDept(SurProjectAttendanceUser where) { + return surProjectAttendanceUserMapper.groupByWorkerByDept(where); + } + /** + * 在岗|离岗工人查询 + * @param where + * @return + */ + @Override + public List queryWorkerByState(SurProjectAttendanceUser where) { + return surProjectAttendanceUserMapper.queryWorkerByState(where); + } private Date findDate(List datas, SurProjectAttendanceUser u, String type) { for (SurProjectAttendanceUser user:datas) { diff --git a/yanzhu-jh/src/main/resources/mapper/project/SurProjectAttendanceUserMapper.xml b/yanzhu-jh/src/main/resources/mapper/project/SurProjectAttendanceUserMapper.xml index b07e30b9..100d8301 100644 --- a/yanzhu-jh/src/main/resources/mapper/project/SurProjectAttendanceUserMapper.xml +++ b/yanzhu-jh/src/main/resources/mapper/project/SurProjectAttendanceUserMapper.xml @@ -697,4 +697,58 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" order by p.id + + + \ No newline at end of file