Forráskód Böngészése

fix:
1.手动分配区域协调人去掉服务单元比例限制

caozixuan 1 éve
szülő
commit
3acbdf0ee7

+ 1 - 1
sop-api/src/main/java/com/qmth/sop/server/api/TBUserArchivesAllocationController.java

@@ -133,6 +133,6 @@ public class TBUserArchivesAllocationController {
     @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = ArchivesSourceResult.class)})
     public Result findFreeCoordinator(@ApiParam(value = "服务单元id", required = true) @RequestParam String serviceUnitId,
                                       @ApiParam(value = "派单号") @RequestParam(required = false) String crmNo) {
-        return ResultUtil.ok(tbUserArchivesService.findFreeCoordinatorByServiceId(SystemConstant.convertIdToLong(serviceUnitId), crmNo));
+        return ResultUtil.ok(tbUserArchivesService.findFreeCoordinatorByServiceId(SystemConstant.convertIdToLong(serviceUnitId), crmNo, false));
     }
 }

+ 2 - 1
sop-business/src/main/java/com/qmth/sop/business/service/TBUserArchivesService.java

@@ -114,7 +114,8 @@ public interface TBUserArchivesService extends IService<TBUserArchives> {
      *
      * @param serviceUnitId 服务单元id
      * @param crmNo         派单号(调配选人列表的特殊查询)
+     * @param verifyRate    校验服务单元区域配比
      * @return 区域负责人
      */
-    List<ArchivesSourceResult> findFreeCoordinatorByServiceId(Long serviceUnitId, String crmNo);
+    List<ArchivesSourceResult> findFreeCoordinatorByServiceId(Long serviceUnitId, String crmNo, boolean verifyRate);
 }

+ 1 - 1
sop-business/src/main/java/com/qmth/sop/business/service/impl/TBUserArchivesAllocationServiceImpl.java

@@ -300,7 +300,7 @@ public class TBUserArchivesAllocationServiceImpl extends ServiceImpl<TBUserArchi
                     .filter(e -> province.equals(e.getProvince()) && city.equals(e.getCity()))
                     .collect(Collectors.toList());
 
-            List<ArchivesSourceResult> coordinatorFree = tbUserArchivesService.findFreeCoordinatorByServiceId(serviceUnitId, null)
+            List<ArchivesSourceResult> coordinatorFree = tbUserArchivesService.findFreeCoordinatorByServiceId(serviceUnitId, null, true)
                     .stream()
                     .filter(e -> province.equals(e.getProvince()) && city.equals(e.getCity()))
                     .collect(Collectors.toList());

+ 12 - 9
sop-business/src/main/java/com/qmth/sop/business/service/impl/TBUserArchivesServiceImpl.java

@@ -95,7 +95,7 @@ public class TBUserArchivesServiceImpl extends ServiceImpl<TBUserArchivesMapper,
             record.setAge(this.getAgeByIdentity(record.getIdentity()));
             record.setAuthenticationStatus(record.getAuthenticationValidTime() != null && record.getAuthenticationValidTime() > currentTime);
             String basePhotoPath = record.getBasePhotoPath();
-            if (basePhotoPath != null && basePhotoPath.length() > 0){
+            if (basePhotoPath != null && basePhotoPath.length() > 0) {
                 record.setBasePhotoPreviewPath(basicAttachmentService.filePreviewPath(basePhotoPath));
             }
         }
@@ -353,22 +353,22 @@ public class TBUserArchivesServiceImpl extends ServiceImpl<TBUserArchivesMapper,
             String roleNames = hasRoles.stream().map(RoleTypeEnum::getDesc).collect(Collectors.joining(","));
             userArchivesImportDto.setRoleNames(roleNames);
             GenderEnum gender = userArchivesImportDto.getGenderEnum();
-            if (Objects.nonNull(gender)){
+            if (Objects.nonNull(gender)) {
                 userArchivesImportDto.setGender(gender.getTitle());
             }
             EducationEnum education = userArchivesImportDto.getEducationEnum();
-            if (Objects.nonNull(education)){
+            if (Objects.nonNull(education)) {
                 userArchivesImportDto.setEducation(education.getTitle());
             }
 
             SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
             Long archivesTime = userArchivesImportDto.getArchivesTime();
             Long authenticationValidTime = userArchivesImportDto.getAuthenticationValidTime();
-            if (Objects.nonNull(archivesTime)){
+            if (Objects.nonNull(archivesTime)) {
                 String archivesTimeStr = sdf.format(new Date(archivesTime));
                 userArchivesImportDto.setArchivesTimeStr(archivesTimeStr);
             }
-            if (Objects.nonNull(authenticationValidTime)){
+            if (Objects.nonNull(authenticationValidTime)) {
                 String authenticationValidTimeStr = sdf.format(new Date(authenticationValidTime));
                 userArchivesImportDto.setAuthenticationValidTimeStr(authenticationValidTimeStr);
             }
@@ -389,8 +389,8 @@ public class TBUserArchivesServiceImpl extends ServiceImpl<TBUserArchivesMapper,
                     throw ExceptionResultEnum.ERROR.exception(String.format("[%s]的认证状态为有效,不能作废", userArchivesResult.getName()));
                 }
                 // 作废校验2 - 没有进行中的SOP
-                List<SopInfoResult> sopInfoResultList = tbSopInfoService.findFlowByServiceId(null,userArchivesResult.getUserId());
-                if (CollectionUtils.isNotEmpty(sopInfoResultList)){
+                List<SopInfoResult> sopInfoResultList = tbSopInfoService.findFlowByServiceId(null, userArchivesResult.getUserId());
+                if (CollectionUtils.isNotEmpty(sopInfoResultList)) {
                     throw ExceptionResultEnum.ERROR.exception("该用户存在正在进行的SOP不能作废");
                 }
 
@@ -479,7 +479,7 @@ public class TBUserArchivesServiceImpl extends ServiceImpl<TBUserArchivesMapper,
     }
 
     @Override
-    public List<ArchivesSourceResult> findFreeCoordinatorByServiceId(Long serviceUnitId, String crmNo) {
+    public List<ArchivesSourceResult> findFreeCoordinatorByServiceId(Long serviceUnitId, String crmNo, boolean verifyRate) {
         List<ArchivesSourceResult> result = new ArrayList<>();
         TBService tbService = tbServiceService.getById(serviceUnitId);
         if (Objects.isNull(tbService)) {
@@ -500,7 +500,10 @@ public class TBUserArchivesServiceImpl extends ServiceImpl<TBUserArchivesMapper,
                     })
                     .collect(Collectors.toList());
 
-            list = list.stream().filter(e -> e.getRemainCount() > 0).collect(Collectors.toList());
+            if (verifyRate) {
+                // 只有自动调配才启用服务单元区域配比
+                list = list.stream().filter(e -> e.getRemainCount() > 0).collect(Collectors.toList());
+            }
 
             // 调配选人列表查询的特殊处理
             if (crmNo != null && crmNo.length() > 0) {