Ver código fonte

fix:解决任务类型ID不匹配的问题

shc 8 meses atrás
pai
commit
11bb965004

+ 67 - 67
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/WmTaskServiceImpl.java

@@ -2939,31 +2939,30 @@ public class WmTaskServiceImpl extends ServiceImpl<WmTaskMapper, WmTask> impleme
             Map<Integer, WmTaskContent> taskContentMap = taskContentList.stream().collect(Collectors.toMap(WmTaskContent::getId, Function.identity()));
             // 查询scorePackage
             WmScorePackage scorePackage = wmScorePackageService.getById(pkgId);
-            // 查询打卡记录userSign
-            boolean hasSignTask = taskList.stream().anyMatch(wmTask -> "5".equals(wmTask.getTaskTypeId())
-                    || "6".equals(wmTask.getTaskTypeId()) || "33".equals(wmTask.getTaskTypeId()));
-            Map<Integer, WmUserSign> userSignMap = new HashMap<>();
-            Map<Integer, WmUserSignDetail> userSignDetailMap = new HashMap<>();
-            Map<String, List<SysDictItem>> userSignPurposeMap = new HashMap<>();
-            if (hasSignTask) {
-                Set<String> userSignIdSet = taskContentList.stream()
-                        .map(WmTaskContent::getTemp3)
-                        .filter(StrUtil::isNotBlank)
-                        .collect(Collectors.toSet());
-                List<WmUserSign> userSignList = wmUserSignMapper.selectBatchIds(userSignIdSet);
-                userSignMap.putAll(userSignList.stream().collect(Collectors.toMap(WmUserSign::getId, Function.identity())));
-                List<WmUserSignDetail> signDetailList = wmUserSignDetailService.list(Wrappers.<WmUserSignDetail>lambdaQuery()
-                        .in(WmUserSignDetail::getSignId, userSignIdSet));
-                if (CollUtil.isNotEmpty(signDetailList)) {
-                    userSignDetailMap.putAll(signDetailList.stream().collect(Collectors.toMap(WmUserSignDetail::getSignId, Function.identity())));
-                }
-
-                // 拜访目的字典值
-                List<SysDictItem> itemList = sysDictItemService.list(Wrappers.<SysDictItem>lambdaQuery()
-                        .in(SysDictItem::getType, "user_sign_detail_purpose", "user_sign_detail_distribution_purpose", "user_sign_detail_pharmacy_purpose")
-                        .eq(SysDictItem::getDelFlag, DelEnum.NOT_DEL.getVal()));
-                userSignPurposeMap.putAll(itemList.stream().collect(Collectors.groupingBy(SysDictItem::getType)));
-            }
+            // // 查询打卡记录userSign
+            // boolean hasSignTask = taskList.stream().anyMatch(wmTask -> "51".equals(wmTask.getTaskTypeId())
+            //         || "52".equals(wmTask.getTaskTypeId()) || "53".equals(wmTask.getTaskTypeId()));
+            // Map<Integer, WmUserSign> userSignMap = new HashMap<>();
+            // Map<Integer, WmUserSignDetail> userSignDetailMap = new HashMap<>();
+            // Map<String, List<SysDictItem>> userSignPurposeMap = new HashMap<>();
+            // if (hasSignTask) {
+            //     Set<String> userSignIdSet = taskContentList.stream()
+            //             .map(WmTaskContent::getTemp3)
+            //             .filter(StrUtil::isNotBlank)
+            //             .collect(Collectors.toSet());
+            //     List<WmUserSign> userSignList = wmUserSignMapper.selectBatchIds(userSignIdSet);
+            //     userSignMap.putAll(userSignList.stream().collect(Collectors.toMap(WmUserSign::getId, Function.identity())));
+            //     List<WmUserSignDetail> signDetailList = wmUserSignDetailService.list(Wrappers.<WmUserSignDetail>lambdaQuery().in(WmUserSignDetail::getSignId, userSignIdSet));
+            //     if (CollUtil.isNotEmpty(signDetailList)) {
+            //         userSignDetailMap.putAll(signDetailList.stream().collect(Collectors.toMap(WmUserSignDetail::getSignId, Function.identity())));
+            //     }
+            //
+            //     // 拜访目的字典值
+            //     List<SysDictItem> itemList = sysDictItemService.list(Wrappers.<SysDictItem>lambdaQuery()
+            //             .in(SysDictItem::getType, "user_sign_detail_purpose", "user_sign_detail_distribution_purpose", "user_sign_detail_pharmacy_purpose")
+            //             .eq(SysDictItem::getDelFlag, DelEnum.NOT_DEL.getVal()));
+            //     userSignPurposeMap.putAll(itemList.stream().collect(Collectors.groupingBy(SysDictItem::getType)));
+            // }
 
             // 查询任务字段配置
             Set<String> configedTaskTypeId = new HashSet<>();
@@ -3047,48 +3046,49 @@ public class WmTaskServiceImpl extends ServiceImpl<WmTaskMapper, WmTask> impleme
                         wmTaskContent.setTemp31(wmTaskContent.getTemp4());
                     }
 
-                    // 医院拜访、商业公司拜访、药店拜访打卡记录
-                    List<WmUserSign> wmUserSignList = new ArrayList<>();
-                    if (Arrays.asList("5", "6", "33").contains(wmTask.getTaskTypeId()) && NumberUtil.isNumber(wmTaskContent.getTemp3())) {
-                        int userSignId = Integer.parseInt(wmTaskContent.getTemp3());
-                        WmUserSign userSign = userSignMap.get(userSignId);
-                        // 关联查询签到详情
-                        WmUserSignDetail userSignDetail = userSignDetailMap.get(userSignId);
-                        if (userSignDetail != null) {
-                            if (ArrayUtil.isNotEmpty(userSignDetail.getPurpose())) {
-                                // 拜访目的字典值匹配
-                                Map<String, String> dictPurposeMap = userSignPurposeMap.get(UserSignPurposeEnum.getDictTypeBySignEntType(userSign.getSignEntType()))
-                                        .stream().collect(Collectors.toMap(SysDictItem::getValue, SysDictItem::getLabel));
-
-                                String[] purposeNameArr = Stream.of(userSignDetail.getPurpose())
-                                        .map(s -> dictPurposeMap.getOrDefault(s, s))
-                                        .toArray(String[]::new);
-                                userSignDetail.setPurposeName(purposeNameArr);
-                            }
-                            if (StrUtil.isNotBlank(userSignDetail.getResult())) {
-                                userSignDetail.setResultName(UserSignResultEnum.resolve(userSignDetail.getResult()).getName());
-                            }
-
-                            // 医院打卡, 兼容历史字段department
-                            if ("1".equals(userSign.getSignEntType())) {
-                                if (CollUtil.isEmpty(userSignDetail.getDetail()) && ArrayUtil.isNotEmpty(userSignDetail.getDepartment())) {
-                                    List<Map<String, Object>> detail = new ArrayList<>();
-                                    for (String dep : userSignDetail.getDepartment()) {
-                                        Map<String, Object> detailMap = new HashMap<>();
-                                        detailMap.put("departmentName", dep);
-                                        detailMap.put("fileUrl", new String[0]);
-                                        detail.add(detailMap);
-                                    }
-                                    userSignDetail.setDetail(detail);
-                                }
-                                userSignDetail.setDepartment(null);
-                            }
-
-                            userSign.setUserSignDetail(userSignDetail);
-                        }
-                        wmUserSignList.add(userSign);
-                    }
-                    map.put("wmUserSignList", wmUserSignList);
+                    // // 医院拜访、商业公司拜访、药店拜访打卡记录
+                    // List<WmUserSign> wmUserSignList = new ArrayList<>();
+                    // if (Arrays.asList("5", "6", "33").contains(wmTask.getTaskTypeId()) && NumberUtil.isNumber(wmTaskContent.getTemp3())) {
+                    //     int userSignId = Integer.parseInt(wmTaskContent.getTemp3());
+                    //     WmUserSign userSign = userSignMap.get(userSignId);
+                    //     // 关联查询签到详情
+                    //     WmUserSignDetail userSignDetail = userSignDetailMap.get(userSignId);
+                    //     if (userSignDetail != null) {
+                    //         if (ArrayUtil.isNotEmpty(userSignDetail.getPurpose())) {
+                    //             // 拜访目的字典值匹配
+                    //             Map<String, String> dictPurposeMap = userSignPurposeMap.get(UserSignPurposeEnum.getDictTypeBySignEntType(userSign.getSignEntType()))
+                    //                     .stream().collect(Collectors.toMap(SysDictItem::getValue, SysDictItem::getLabel));
+                    //
+                    //             String[] purposeNameArr = Stream.of(userSignDetail.getPurpose())
+                    //                     .map(s -> dictPurposeMap.getOrDefault(s, s))
+                    //                     .toArray(String[]::new);
+                    //             userSignDetail.setPurposeName(purposeNameArr);
+                    //         }
+                    //         if (StrUtil.isNotBlank(userSignDetail.getResult())) {
+                    //             userSignDetail.setResultName(UserSignResultEnum.resolve(userSignDetail.getResult()).getName());
+                    //         }
+                    //
+                    //         // 医院打卡, 兼容历史字段department
+                    //         if ("1".equals(userSign.getSignEntType())) {
+                    //             if (CollUtil.isEmpty(userSignDetail.getDetail()) && ArrayUtil.isNotEmpty(userSignDetail.getDepartment())) {
+                    //                 List<Map<String, Object>> detail = new ArrayList<>();
+                    //                 for (String dep : userSignDetail.getDepartment()) {
+                    //                     Map<String, Object> detailMap = new HashMap<>();
+                    //                     detailMap.put("departmentName", dep);
+                    //                     detailMap.put("fileUrl", new String[0]);
+                    //                     detail.add(detailMap);
+                    //                 }
+                    //                 userSignDetail.setDetail(detail);
+                    //             }
+                    //             userSignDetail.setDepartment(null);
+                    //         }
+                    //
+                    //         userSign.setUserSignDetail(userSignDetail);
+                    //     }
+                    //     wmUserSignList.add(userSign);
+                    // }
+                    // map.put("wmUserSignList", wmUserSignList);
+                    map.put("wmUserSignList", Collections.emptyList());
                 }
 
                 // 转发分享类任务