update code

dev_xds
haha 2024-05-07 22:38:42 +08:00
parent 2787535ef5
commit 0703ac1fa3
5 changed files with 146 additions and 4 deletions

View File

@ -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<SurProjectAttendanceUser> 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<SurProjectAttendanceData> list=attendanceUserService.groupByWorkerByDept(where);
redisCache.setCacheObject(key, list, Constants.BIGSCREEN_QUERY_CACHE, TimeUnit.MINUTES);
return AjaxResult.success(list);
}
/**
*
*/

View File

@ -131,5 +131,18 @@ public interface SurProjectAttendanceUserMapper
* @param where
* @return
*/
List<SurProjectAttendanceData> groupByWorkerOnDutyByDept(SurProjectAttendanceData where);
List<SurProjectAttendanceData> groupByWorkerOnDutyByDept(SurProjectAttendanceUser where);
/**
* |
* @param where
* @return
*/
List<SurProjectAttendanceData> groupByWorkerByDept(SurProjectAttendanceUser where);
/**
* |
* @param where
* @return
*/
List<SurProjectAttendanceUser> queryWorkerByState(SurProjectAttendanceUser where);
}

View File

@ -124,7 +124,19 @@ public interface ISurProjectAttendanceUserService
* @param where
* @return
*/
List<SurProjectAttendanceData> groupByWorkerOnDutyByDept(SurProjectAttendanceData where);
List<SurProjectAttendanceData> groupByWorkerOnDutyByDept(SurProjectAttendanceUser where);
List<SurProjectAttendanceUser> querySurProjectAttendanceUserList(SurProjectAttendanceUser surProjectAttendanceUser);
/**
* |
* @param where
* @return
*/
List<SurProjectAttendanceData> groupByWorkerByDept(SurProjectAttendanceUser where);
/**
* |
* @param where
* @return
*/
List<SurProjectAttendanceUser> queryWorkerByState(SurProjectAttendanceUser where);
}

View File

@ -243,7 +243,7 @@ public class SurProjectAttendanceUserServiceImpl implements ISurProjectAttendanc
* @return
*/
@Override
public List<SurProjectAttendanceData> groupByWorkerOnDutyByDept(SurProjectAttendanceData where) {
public List<SurProjectAttendanceData> groupByWorkerOnDutyByDept(SurProjectAttendanceUser where) {
return surProjectAttendanceUserMapper.groupByWorkerOnDutyByDept(where);
}
@ -251,6 +251,24 @@ public class SurProjectAttendanceUserServiceImpl implements ISurProjectAttendanc
public List<SurProjectAttendanceUser> querySurProjectAttendanceUserList(SurProjectAttendanceUser surProjectAttendanceUser) {
return surProjectAttendanceUserMapper.querySurProjectAttendanceUserList(surProjectAttendanceUser);
}
/**
* |
* @param where
* @return
*/
@Override
public List<SurProjectAttendanceData> groupByWorkerByDept(SurProjectAttendanceUser where) {
return surProjectAttendanceUserMapper.groupByWorkerByDept(where);
}
/**
* |
* @param where
* @return
*/
@Override
public List<SurProjectAttendanceUser> queryWorkerByState(SurProjectAttendanceUser where) {
return surProjectAttendanceUserMapper.queryWorkerByState(where);
}
private Date findDate(List<SurProjectAttendanceUser> datas, SurProjectAttendanceUser u, String type) {
for (SurProjectAttendanceUser user:datas) {

View File

@ -697,4 +697,58 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
order by p.id
</select>
<select id="groupByWorkerByDept" parameterType="SurProjectAttendanceUser" resultMap="SurProjectAttendanceUserResult">
SELECT p.id, p.projectName NAME,c.dept_name groupName,g.companyTypeId companyId,COUNT(1) cfgid
FROM sur_project_attendance_user u,sur_project_attendance_cfg b,view_sur_project_attendance_group g,sur_project p,sys_dept c
where u.cfgid=b.id and u.state= #{state} and u.companyId=g.companyId and b.project_id=p.id and c.dept_id=b.sub_dept_id
and p.isDel=0 and p.progressVisible=0
and g.companyTypeId in (1,6,0,2,3,4,5,8)
<if test="deptId!=null and deptId>0">
and p.deptId=#{deptId}
</if>
<if test='proType != null and proType != "" and proType != "0"'> and p.projectType = #{proType}</if>
<if test="prjIds !=null and prjIds.size()>0">
and b.project_id in
<foreach collection="prjIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
group by p.projectName,c.dept_name,g.companyTypeId,p.id
order by p.id
</select>
<select id="queryWorkerByState" parameterType="SurProjectAttendanceUser" resultMap="SurProjectAttendanceUserResult">
SELECT u.id,u.cfgid,u.app_id,u.vendors_code,u.workerId,u.laborWorkerId,u.workerCategory,u.qrCode,u.name,
u.ethnic,u.nativePlace,u.gender,u.birthDate,u.phone,u.photo,u.recentPhoto,
u.groupId,u.leader,u.workTypeCode,u.specWorkType,
u.hatCode,u.state,u.enterDate,u.exitDate,u.companyId,u.vendorId,
u.teamId,u.teamName,u.enterType,u.is_del,u.create_by,u.create_time,u.update_by,u.update_time,
b.project_id,b.sub_dept_id,u.companyName,u.workTypeName,u.groupName,
b.project_id,b.sub_dept_id, g.teamname remark,g.companyName degreeName
FROM sur_project_attendance_user u,sur_project_attendance_cfg b,view_sur_project_attendance_group g,sur_project sp
WHERE u.cfgid=b.id and u.state=#{state} and u.companyId=g.companyId and sp.isDel=0 and sp.progressVisible=0 and b.project_id = sp.id
<if test="id==101">
and g.companyTypeId in (1,6)
</if>
<if test="id==102">
and g.companyTypeId =8
</if>
<if test="id==103">
and g.companyTypeId in (0,2,3,4,5)
</if>
<if test="projectId!=null and projectId>0">
and b.project_id=#{projectId}
</if>
<if test="deptId!=null and deptId>0">
and sp.deptId=#{deptId}
</if>
<if test='proType != null and proType != "" and proType != "0"'> and sp.projectType = #{proType}</if>
<if test="prjIds !=null and prjIds.size()>0">
and b.project_id in
<foreach collection="prjIds" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
</select>
</mapper>