Browse Source

feat:supervision v3.10 监督模块 任务详情扩充

shc 7 tháng trước cách đây
mục cha
commit
2c2c418580

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

@@ -3,11 +3,11 @@ package com.qunzhixinxi.hnqz.admin.service.impl;
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.date.DatePattern;
 import cn.hutool.core.lang.Assert;
 import cn.hutool.core.map.MapUtil;
 import cn.hutool.core.text.CharSequenceUtil;
 import cn.hutool.core.util.ArrayUtil;
-import cn.hutool.core.util.NumberUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.json.JSONUtil;
 import com.alibaba.fastjson.JSON;
@@ -22,10 +22,7 @@ import com.baomidou.mybatisplus.core.metadata.OrderItem;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.qunzhixinxi.hnqz.admin.api.constant.enums.UserSignPurposeEnum;
-import com.qunzhixinxi.hnqz.admin.api.constant.enums.UserSignResultEnum;
 import com.qunzhixinxi.hnqz.admin.api.dto.SysCheckChainNodeCheckHistoryDTO;
-import com.qunzhixinxi.hnqz.admin.api.dto.WmTaskDTO;
 import com.qunzhixinxi.hnqz.admin.api.entity.*;
 import com.qunzhixinxi.hnqz.admin.config.UpmsConfig;
 import com.qunzhixinxi.hnqz.admin.api.dto.CommonEvidenceDTO;
@@ -39,6 +36,7 @@ import com.qunzhixinxi.hnqz.admin.api.constant.enums.PackageTypeEnum;
 import com.qunzhixinxi.hnqz.admin.api.constant.enums.ScorePackageStatusEnum;
 import com.qunzhixinxi.hnqz.admin.api.constant.enums.TaskStatusEnum;
 import com.qunzhixinxi.hnqz.admin.manager.SysCheckChainManager;
+import com.qunzhixinxi.hnqz.admin.mapper.WmDaDrugEntDrugtableMapper;
 import com.qunzhixinxi.hnqz.admin.mapper.WmReportMapper;
 import com.qunzhixinxi.hnqz.admin.mapper.WmScorePackageMapper;
 import com.qunzhixinxi.hnqz.admin.mapper.WmTaskContentConfigMapper;
@@ -53,7 +51,6 @@ import com.qunzhixinxi.hnqz.common.core.util.R;
 import com.qunzhixinxi.hnqz.common.data.datascope.DataScope;
 import com.qunzhixinxi.hnqz.common.security.service.HnqzUser;
 import com.qunzhixinxi.hnqz.common.security.util.SecurityUtils;
-import lombok.AllArgsConstructor;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections4.CollectionUtils;
@@ -98,7 +95,6 @@ import java.util.UUID;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.function.Function;
 import java.util.stream.Collectors;
-import java.util.stream.Stream;
 
 /**
  * 任务表
@@ -127,7 +123,6 @@ public class WmTaskServiceImpl extends ServiceImpl<WmTaskMapper, WmTask> impleme
     private final UpmsConfig upmsConfig;
     private final SysCheckChainManager checkChainManager;
     private final SysDictItemService sysDictItemService;
-    private final WmUserSignDetailService wmUserSignDetailService;
 
     @Resource
     private WmWkArticleShareService wmWkArticleShareService;
@@ -146,6 +141,8 @@ public class WmTaskServiceImpl extends ServiceImpl<WmTaskMapper, WmTask> impleme
     private WmTaskContentConfigMapper wmTaskContentConfigMapper;
     @Autowired
     private WmUserSignMapper wmUserSignMapper;
+    @Autowired
+    private WmDaDrugEntDrugtableMapper wmDaDrugEntDrugtableMapper;
 
     @Override
     public List<WmTask> listTask(QueryWrapper wrappers) {
@@ -2981,6 +2978,28 @@ public class WmTaskServiceImpl extends ServiceImpl<WmTaskMapper, WmTask> impleme
             //     userSignPurposeMap.putAll(itemList.stream().collect(Collectors.groupingBy(SysDictItem::getType)));
             // }
 
+            // 获取包的关联药品
+            String[] drugtable = scorePackage.getDrugtable();
+            String drugName;
+            String mahName;
+
+            if (ArrayUtil.isNotEmpty(drugtable)) {
+                List<WmDaDrugEntDrugtable> drugtables = wmDaDrugEntDrugtableMapper.selectList(Wrappers.<WmDaDrugEntDrugtable>lambdaQuery().in(WmDaDrugEntDrugtable::getId, Arrays.stream(drugtable).collect(Collectors.toList())));
+
+                if (CollUtil.isEmpty(drugtables)) {
+                    drugName = "";
+                    mahName = "";
+                } else {
+                    drugName = drugtables.get(0).getDrugname();
+                    mahName = drugtables.get(0).getDrugEntName();
+                }
+
+            } else {
+                drugName = "";
+                mahName = "";
+            }
+
+
             // 查询任务字段配置
             Set<String> configedTaskTypeId = new HashSet<>();
             taskTypeIdSet.forEach(s -> {
@@ -3030,6 +3049,9 @@ public class WmTaskServiceImpl extends ServiceImpl<WmTaskMapper, WmTask> impleme
 
             Map<Integer, Map<String, Object>> targetLatestCheckState = checkChainManager.getTargetLatestCheckState(taskIds);
 
+            DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy/MM/dd");
+            String finalDrugName = drugName;
+            String finalMahName = mahName;
             taskList.forEach(wmTask -> {
 
                 wmTask.setCheckState(targetLatestCheckState.get(Integer.parseInt(wmTask.getId())));
@@ -3038,6 +3060,10 @@ public class WmTaskServiceImpl extends ServiceImpl<WmTaskMapper, WmTask> impleme
                 wmTask.setTaskTypeName(taskTypeNameMap.get(wmTask.getTaskTypeId()));
                 map.put("taskType", wmTask.getTaskTypeId());
                 map.put("score", wmTask.getScore());
+                map.put("pkgName", scorePackage.getScorePackageName());
+                map.put("drugName", finalDrugName);
+                map.put("mah", finalMahName);
+                map.put("period", String.format("%s 至 %s", formatter.format(scorePackage.getStartTime()), formatter.format(scorePackage.getEndTime())));
                 map.put("taskUserName", userMap.get(Integer.parseInt(wmTask.getTaskUserId())));
                 map.put("taskInfo", wmTask);
                 map.put("id", wmTask.getId());