From d2e8d9d18e28b5c7a86467ff8007183f5f77273f Mon Sep 17 00:00:00 2001 From: pengjie <17373303529@163.com> Date: Tue, 31 Dec 2024 14:57:52 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=8C=E6=AC=A1=E8=B0=83=E6=95=B4=E6=8F=90?= =?UTF-8?q?=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/basicdata/entity/SystemUser.java | 13 ++ .../basicdata/mapper/xml/SystemUserMapper.xml | 2 + .../service/impl/SystemUserServiceImpl.java | 57 +++++-- .../mapper/QualityInspectionRecordMapper.java | 17 ++ .../xml/QualityInspectionRecordMapper.xml | 58 +++++++ .../QualityInspectionRecordServiceImpl.java | 15 +- .../impl/SafetyHatDataServiceImpl.java | 1 + .../worker/mapper/WorkerInfoMapper.java | 48 ++++++ .../mapper/xml/WorkerAttendanceMapper.xml | 3 + .../worker/mapper/xml/WorkerInfoMapper.xml | 151 +++++++++++++++++- .../impl/WorkerAttendanceServiceImpl.java | 32 ++-- .../service/impl/WorkerInfoServiceImpl.java | 63 ++++++-- .../xmgl/modules/xz/entity/XzProjectOrg.java | 3 + ...SecurityQualityInspectionRecordMapper.java | 26 +++ ...zSecurityQualityInspectionRecordMapper.xml | 77 +++++++++ ...ityQualityInspectionRecordServiceImpl.java | 23 ++- .../com/zhgd/xmgl/task/SafetyHatTask.java | 27 +++- 17 files changed, 570 insertions(+), 46 deletions(-) diff --git a/src/main/java/com/zhgd/xmgl/modules/basicdata/entity/SystemUser.java b/src/main/java/com/zhgd/xmgl/modules/basicdata/entity/SystemUser.java index 947a73889..07b3bc0b4 100644 --- a/src/main/java/com/zhgd/xmgl/modules/basicdata/entity/SystemUser.java +++ b/src/main/java/com/zhgd/xmgl/modules/basicdata/entity/SystemUser.java @@ -14,6 +14,7 @@ import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.util.Date; +import java.util.List; /** * @Description: 账号 @@ -193,6 +194,18 @@ public class SystemUser implements Serializable { @ApiModelProperty(value = "项目组织机构名称") private java.lang.String projectOrgName; + @TableField(exist = false) + @ApiModelProperty(value = "项目组织机构ID") + private java.lang.String projectOrgId; + + @TableField(exist = false) + @ApiModelProperty(value = "项目组织机构名称") + private java.lang.String ancestors; + + @TableField(exist = false) + @ApiModelProperty(value = "项目组织机构名称") + private List ancestorsName; + @TableField(exist = false) private java.lang.Long enterpriseId; diff --git a/src/main/java/com/zhgd/xmgl/modules/basicdata/mapper/xml/SystemUserMapper.xml b/src/main/java/com/zhgd/xmgl/modules/basicdata/mapper/xml/SystemUserMapper.xml index c4e47b115..3dab6d2cf 100644 --- a/src/main/java/com/zhgd/xmgl/modules/basicdata/mapper/xml/SystemUserMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/basicdata/mapper/xml/SystemUserMapper.xml @@ -37,7 +37,9 @@ group_concat(distinct c.role_name) as role_name, group_concat(distinct b.role_id) as role_id, d.worker_name, + po.id as projectOrgId, po.dept_name as projectOrgName, + po.ancestors, d.enterprise_id, d.person_mail, ei.enterprise_name diff --git a/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/SystemUserServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/SystemUserServiceImpl.java index 8e99908c2..fe244eb7f 100644 --- a/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/SystemUserServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/basicdata/service/impl/SystemUserServiceImpl.java @@ -54,11 +54,14 @@ import com.zhgd.xmgl.modules.worker.entity.WorkerInfo; import com.zhgd.xmgl.modules.worker.mapper.WorkerInfoMapper; import com.zhgd.xmgl.modules.worker.service.IUserEnterpriseService; import com.zhgd.xmgl.modules.worker.service.impl.WorkerInfoServiceImpl; +import com.zhgd.xmgl.modules.xz.entity.XzProjectOrg; import com.zhgd.xmgl.modules.xz.entity.XzRegistry; +import com.zhgd.xmgl.modules.xz.mapper.XzProjectOrgMapper; import com.zhgd.xmgl.modules.xz.mapper.XzRegistryMapper; import com.zhgd.xmgl.modules.xz.security.entity.XzSecurityQualityInspectionRecord; import com.zhgd.xmgl.modules.xz.security.enums.XzSecurityQualityInspectionRecordStatusEnum; import com.zhgd.xmgl.modules.xz.security.service.IXzSecurityQualityInspectionRecordService; +import com.zhgd.xmgl.modules.xz.service.IXzProjectOrgService; import com.zhgd.xmgl.modules.xz.service.impl.XzRegistryServiceImpl; import com.zhgd.xmgl.security.JwtTokenProvider; import com.zhgd.xmgl.security.entity.UserInfo; @@ -188,6 +191,8 @@ public class SystemUserServiceImpl extends ServiceImpl getToken(Map map) { @@ -327,19 +332,20 @@ public class SystemUserServiceImpl extends ServiceImpl dealList(List list) { + if (list.size() > 0) { + List xzProjectOrgList = xzProjectOrgMapper.selectList(null); + for (SystemUser systemUser : list) { + String ancestors = systemUser.getAncestors(); + List name = new ArrayList<>(); + if (ancestors.equals("0")) { + name.add(systemUser.getProjectOrgName()); + } else { + String[] split = ancestors.split(","); + for (int i = 1; i < split.length; i++) { + int finalI = i; + List collect = xzProjectOrgList.stream().filter(l -> l.getId().toString().equals(split[finalI])).collect(Collectors.toList()); + if (collect.size() > 0) { + name.add(collect.get(0).getDeptName()); + } + } + name.add(systemUser.getProjectOrgName()); + } + systemUser.setAncestorsName(name); + } + } + return list; } @Override diff --git a/src/main/java/com/zhgd/xmgl/modules/quality/mapper/QualityInspectionRecordMapper.java b/src/main/java/com/zhgd/xmgl/modules/quality/mapper/QualityInspectionRecordMapper.java index 0967f0f96..f4b7898d3 100644 --- a/src/main/java/com/zhgd/xmgl/modules/quality/mapper/QualityInspectionRecordMapper.java +++ b/src/main/java/com/zhgd/xmgl/modules/quality/mapper/QualityInspectionRecordMapper.java @@ -215,6 +215,14 @@ public interface QualityInspectionRecordMapper extends BaseMapper statsByInspectManVo(@Param("param") Map paramMap, Page page); + /** + * 检查人统计 + * + * @param paramMap + * @param page + * @return + */ + Page statsByParentInspectManVo(@Param("param") Map paramMap, Page page); /** * 按分包单位统计 * @@ -224,6 +232,15 @@ public interface QualityInspectionRecordMapper extends BaseMapper statsByEnterprise(@Param("param") Map paramMap, Page page); + /** + * 按总包单位统计 + * + * @param paramMap + * @param page + * @return + */ + Page statsByParentEnterprise(@Param("param") Map paramMap, Page page); + /** * 隐患类型分析 * diff --git a/src/main/java/com/zhgd/xmgl/modules/quality/mapper/xml/QualityInspectionRecordMapper.xml b/src/main/java/com/zhgd/xmgl/modules/quality/mapper/xml/QualityInspectionRecordMapper.xml index 7cd67b7a5..9653b75c9 100644 --- a/src/main/java/com/zhgd/xmgl/modules/quality/mapper/xml/QualityInspectionRecordMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/quality/mapper/xml/QualityInspectionRecordMapper.xml @@ -674,6 +674,39 @@ order by rectifiedNum desc) t + + + + diff --git a/src/main/java/com/zhgd/xmgl/modules/worker/mapper/xml/WorkerInfoMapper.xml b/src/main/java/com/zhgd/xmgl/modules/worker/mapper/xml/WorkerInfoMapper.xml index a030323f2..0df802c37 100644 --- a/src/main/java/com/zhgd/xmgl/modules/worker/mapper/xml/WorkerInfoMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/worker/mapper/xml/WorkerInfoMapper.xml @@ -438,17 +438,21 @@ and w1.person_type = #{personType} - SELECT COUNT(1) totalPerson, IFNULL(sum((CASE WHEN w1.person_type = 1 then 1 ELSE 0 END)), 0) lwPersonTotal, IFNULL(sum((CASE WHEN w1.person_type = 2 then 1 ELSE 0 END)), 0) glPersonTotal, IFNULL(sum((CASE WHEN w1.person_type = 3 then 1 ELSE 0 END)), 0) lsPersonTotal, COUNT(distinct w1.team_id) total_team_num FROM worker_info w1 + JOIN project_enterprise pe on pe.enterprise_id=w1.enterprise_id and pe.project_sn=w1.project_sn w1.project_sn = #{projectSn} + + and pe.parent_enterprise_id = 0 + and w1.inService_type = 1 and w1.project_sn in @@ -479,9 +483,13 @@ IFNULL(sum((CASE WHEN w1.person_type = 3 then 1 ELSE 0 END)), 0) lsPersonTotal, COUNT(distinct g.worker_type_id) total_worker_type_num from worker_info w1 + JOIN project_enterprise pe on pe.enterprise_id=w1.enterprise_id and pe.project_sn=w1.project_sn INNER JOIN worker_attendance_presence p ON w1.person_sn = p.person_sn Left JOIN team_info g ON (w1.project_sn = g.project_sn and w1.team_id = g.id) + + pe.parent_enterprise_id = 0 + AND (w1.enterprise_id = #{supplierEnterpriseId} OR w1.enterprise_id IN ( SELECT t.enterprise_id FROM project_enterprise t WHERE find_in_set(#{projectEnterpriseId}, ancestors) )) @@ -694,6 +702,50 @@ + + + + + + + + + + + + + + +