diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionStaff.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionStaff.java index 8dcbd552..dd5f0178 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionStaff.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionStaff.java @@ -99,4 +99,10 @@ public class InspectionStaff extends TenantBaseDO { */ @TableField("folder_id") private Long folderId; + + /** + * 唯一码 + */ + @TableField("unique_code") + private String uniqueCode; } diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/AppInspectionPartnerServiceImpl.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/AppInspectionPartnerServiceImpl.java index ec04096a..b5e7493c 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/AppInspectionPartnerServiceImpl.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/AppInspectionPartnerServiceImpl.java @@ -2308,16 +2308,31 @@ public class AppInspectionPartnerServiceImpl extends ServiceImpl meetManIdCountMap = list.stream() .filter(info -> info.getMeetManId() != null) // 过滤 null 值 .collect(Collectors.groupingBy(InspectionInfo::getMeetManId, Collectors.counting())); + // 根据userId查询还车人 + List returnCarList = inspectionInfoService.list(Wrappers.lambdaQuery() + .eq(InspectionInfo::getIsReturnCar, 1)); + // 统计每个 returnCarUserId 的数量,避免 null key 异常 + Map returnCarUserIdCountMap = returnCarList.stream() + .filter(info -> info.getReturnCarUserId() != null) // 过滤 null 值 + .collect(Collectors.groupingBy(InspectionInfo::getReturnCarUserId, Collectors.counting())); for (Map stringObjectMap : staffCount) { Long userId = (Long) stringObjectMap.get("userId"); List> children = (List>) stringObjectMap.get("children"); - stringObjectMap.put("meetCarCount", meetManIdCountMap.get(userId)); +// stringObjectMap.put("meetCarCount", meetManIdCountMap.get(userId)); stringObjectMap.put("totalCount", (Long) stringObjectMap.get("totalCount") == null ? 0 : (Long) stringObjectMap.get("totalCount") + (meetManIdCountMap.get(userId) == null ? 0 : meetManIdCountMap.get(userId))); HashMap objectObjectHashMap = new HashMap<>(); objectObjectHashMap.put("count", meetManIdCountMap.get(userId) == null ? 0 : meetManIdCountMap.get(userId)); objectObjectHashMap.put("projectName", "接车"); + children.add(objectObjectHashMap); + //还车 + //设置totalCount + stringObjectMap.put("totalCount", (Long) stringObjectMap.get("totalCount") == null ? 0 : (Long) stringObjectMap.get("totalCount") + (returnCarUserIdCountMap.get(userId) == null ? 0 : returnCarUserIdCountMap.get(userId))); + Map objectObjectHashMap1 = new HashMap<>(); + objectObjectHashMap1.put("count", returnCarUserIdCountMap.get(userId) == null ? 0 : returnCarUserIdCountMap.get(userId)); + objectObjectHashMap1.put("projectName", "还车"); + children.add(objectObjectHashMap1); } // 按 meetCarCount 降序排序员工 staffCount.sort(Comparator.comparingLong( diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/InspectionStaffServiceImpl.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/InspectionStaffServiceImpl.java index 803e09d3..89c95d47 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/InspectionStaffServiceImpl.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/InspectionStaffServiceImpl.java @@ -21,6 +21,7 @@ import cn.iocoder.yudao.module.inspection.vo.ImportStaffVo; import cn.iocoder.yudao.module.inspection.vo.InspectionStaffExportVo; import cn.iocoder.yudao.module.inspection.vo.InspectionStaffSaveVo; import cn.iocoder.yudao.module.inspection.vo.StaffImportExcelVO; +import cn.iocoder.yudao.module.staff.service.UniqueCodeService; import cn.iocoder.yudao.module.system.api.user.AdminUserApi; import cn.iocoder.yudao.module.system.api.user.dto.UserDTO; import cn.iocoder.yudao.module.system.api.user.dto.UserRoleDTO; @@ -39,6 +40,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import javax.annotation.Resource; import java.util.*; import java.util.stream.Collectors; @@ -69,6 +71,9 @@ public class InspectionStaffServiceImpl extends ServiceImpl userRoleDTOS = permissionService.userRoleDTOList(Collections.singletonList(id)); inspectionStaffSaveVo.setRoleIds(userRoleDTOS.stream() @@ -146,6 +154,8 @@ public class InspectionStaffServiceImpl extends ServiceImpllambdaUpdate().eq(InspectionStaff::getUserId, inspectionStaffSaveVo.getId()).set(InspectionStaff::getUniqueCode, inspectionStaffSaveVo.getUniqueCode())); + } return inspectionStaffSaveVo; } diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/vo/InspectionStaffSaveVo.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/vo/InspectionStaffSaveVo.java index a0fd7ffc..a85da251 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/vo/InspectionStaffSaveVo.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/vo/InspectionStaffSaveVo.java @@ -3,6 +3,8 @@ package cn.iocoder.yudao.module.inspection.vo; import cn.iocoder.yudao.annotation.Excel; import cn.iocoder.yudao.module.infra.dal.dataobject.file.FileDO; import cn.iocoder.yudao.module.inspection.entity.InspectionStaff; +import cn.iocoder.yudao.module.system.api.user.dto.UserRoleDTO; +import cn.iocoder.yudao.module.system.dal.dataobject.permission.RoleDO; import com.alibaba.excel.annotation.ExcelIgnore; import com.alibaba.excel.annotation.ExcelProperty; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; @@ -106,7 +108,12 @@ public class InspectionStaffSaveVo extends InspectionStaff { private List fileList; /** - * 角色集合 + * 角色ID集合 */ private List roleIds; + + /** + * 角色集合 + */ + private List userRoles; } diff --git a/dl-module-inspection/src/main/resources/mapper/inspection/AppInspectionPartnerMapper.xml b/dl-module-inspection/src/main/resources/mapper/inspection/AppInspectionPartnerMapper.xml index 718c2a76..c109a971 100644 --- a/dl-module-inspection/src/main/resources/mapper/inspection/AppInspectionPartnerMapper.xml +++ b/dl-module-inspection/src/main/resources/mapper/inspection/AppInspectionPartnerMapper.xml @@ -476,6 +476,7 @@ FROM count(1) allNum, IFNULL(SUM(ii.status='0'),0) jxzNum, IFNULL(SUM(ii.status='1'),0) ywcNum, + IFNULL(SUM(ii.status='1' and ii.is_pass='0'),0) tblNum, IFNULL(SUM(oi.sku_name LIKE '%年审%'),0) nsNum, IFNULL(SUM(oi.sku_name LIKE '%上户%'),0) shNum, IFNULL(SUM(oi.sku_name LIKE '%非定检%'),0) fdjNum, diff --git a/dl-module-inspection/src/main/resources/mapper/inspection/InspectionInfoMapper.xml b/dl-module-inspection/src/main/resources/mapper/inspection/InspectionInfoMapper.xml index 6f371919..ade6bc61 100644 --- a/dl-module-inspection/src/main/resources/mapper/inspection/InspectionInfoMapper.xml +++ b/dl-module-inspection/src/main/resources/mapper/inspection/InspectionInfoMapper.xml @@ -640,6 +640,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" AND FIND_IN_SET(#{info.userId}, ibc.user_ids) AND imco.creator = #{info.userId} + + AND imco.car_num LIKE CONCAT('%', #{info.carNum}, '%') + AND ii.status = '0' diff --git a/dl-module-inspection/src/main/resources/mapper/inspection/InspectionStaffMapper.xml b/dl-module-inspection/src/main/resources/mapper/inspection/InspectionStaffMapper.xml index f9687111..b082039b 100644 --- a/dl-module-inspection/src/main/resources/mapper/inspection/InspectionStaffMapper.xml +++ b/dl-module-inspection/src/main/resources/mapper/inspection/InspectionStaffMapper.xml @@ -68,7 +68,8 @@ iss.emergency_contact_name, iss.emergency_contact_phone, iss.driver_license_type, - iss.folder_id + iss.folder_id, + iss.unique_code FROM system_users su left join system_user_role sur on su.id = sur.user_id left join system_role sr on sur.role_id = sr.id