From 31f3dcc7c566174cbdec4f41a9a96e58a1be9a4e Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期二, 17 十二月 2024 16:20:12 +0800
Subject: [PATCH] 统计2.0+首页2.0+检验下单型号过滤修改

---
 inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java |  208 ++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 147 insertions(+), 61 deletions(-)

diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
index 8e2ec17..21996f2 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
@@ -17,16 +17,16 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.yuanchu.mom.common.GetLook;
 import com.yuanchu.mom.common.PrintChina;
-import com.yuanchu.mom.dto.InsOrderPlanDTO;
-import com.yuanchu.mom.dto.InsProductResultDto;
-import com.yuanchu.mom.dto.SampleProductDto;
-import com.yuanchu.mom.dto.SubmitPlanDto;
+import com.yuanchu.mom.dto.*;
 import com.yuanchu.mom.exception.ErrorException;
 import com.yuanchu.mom.mapper.*;
 import com.yuanchu.mom.pojo.*;
 import com.yuanchu.mom.service.*;
 import com.yuanchu.mom.utils.*;
 import com.yuanchu.mom.vo.*;
+import org.apache.poi.ss.usermodel.CellValue;
+import org.apache.poi.xssf.usermodel.XSSFCell;
+import org.apache.poi.xssf.usermodel.XSSFRow;
 import org.apache.poi.xssf.usermodel.XSSFSheet;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.springframework.beans.factory.annotation.Value;
@@ -126,6 +126,9 @@
     @Resource
     FuSheUtils fuSheUtils;
 
+    @Resource
+    DianLuUtils dianLuUtils;
+
     @Override
     public Map<String, Object> selectInsOrderPlanList(Page page, InsOrderPlanDTO insOrderPlanDTO) {
         Map<String, Object> map = new HashMap<>();
@@ -182,6 +185,12 @@
         if (BeanUtil.isEmpty(order.getInsTime())) {
             insOrder.setInsTime(LocalDateTime.now());//璁㈠崟鐨勬楠屾椂闂�
             insOrderMapper.updateById(insOrder);
+        }
+        InsOrderState orderState = insOrderStateMapper.selectOne(Wrappers.<InsOrderState>lambdaQuery()
+                .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId())
+                .eq(InsOrderState::getInsSampleId, sampleId)
+                .eq(InsOrderState::getLaboratory, laboratory));
+        if (ObjectUtils.isEmpty(orderState.getInsTime())) {
             //鏇存柊妫�楠屼换鍔¤〃鐨勬楠屾椂闂�
             insOrderStateMapper.update(null, Wrappers.<InsOrderState>lambdaUpdate()
                     .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId())
@@ -295,13 +304,13 @@
             sampleId = insOrderFile.getInsSampleId();
             insOrderFile.setInsSampleId(null);
         }
-        IPage<InsOrderFile> insOrderFileIPage = insOrderFileMapper.getFileList(page, QueryWrappers.queryWrappers(insOrderFile), insOrderId, sonLaboratory,sampleId);
+        IPage<InsOrderFile> insOrderFileIPage = insOrderFileMapper.getFileList(page, QueryWrappers.queryWrappers(insOrderFile), insOrderId, sonLaboratory, sampleId);
         map.put("body", insOrderFileIPage);
         return map;
     }
 
     @Override
-    public int uploadFile(Integer orderId, MultipartFile file, String sonLaboratory, Integer sampleId) {
+    public Object uploadFile(Integer orderId, MultipartFile file, String sonLaboratory, Integer sampleId) {
         String urlString;
         String pathName;
         String path;
@@ -311,6 +320,9 @@
         insOrderFile.setInsOrderId(orderId);
         if (ObjectUtils.isNotEmpty(sampleId)) {
             insOrderFile.setInsSampleId(sampleId);
+        }
+        if (ObjectUtils.isNotEmpty(sonLaboratory)) {
+            insOrderFile.setSonLaboratory(sonLaboratory);
         }
         insOrderFile.setFileName(filename);
         if (contentType != null && contentType.startsWith("image/")) {
@@ -327,24 +339,23 @@
             if (!realpath.exists()) {
                 realpath.mkdirs();
             }
-            pathName = UUID.randomUUID() + "_"+file.getOriginalFilename().replace("#", "&");
+            pathName = UUID.randomUUID() + "_" + file.getOriginalFilename().replace("#", "&");
             urlString = realpath + "/" + pathName;
             file.transferTo(new File(urlString));
             insOrderFile.setFileUrl(pathName);
             insOrderFileMapper.insert(insOrderFile);
-            //濡傛灉鏄緪灏勮瘯楠�(杩戝満/杩滅▼涓婁紶鐨刢sv鏂囦欢)
             String[] split = filename.split("\\.");
-            if (ObjectUtils.isNotEmpty(sonLaboratory) && (sonLaboratory.equals("杩戝満") || sonLaboratory.equals("杩滃満")) &&
-                    split[split.length - 1].equals("csv")) {
-                //鍒ゆ柇鏄摢绉峜sv鏂囦欢,鏄惁鏈夆�斺��
-                if (sonLaboratory.equals("杩戝満")) {
-                    fuSheUtils.getFuSheWord1(sonLaboratory, insOrderFile);
-                } else {
-                    fuSheUtils.getFuSheWord2(sonLaboratory, insOrderFile);
-                }
+            if (ObjectUtils.isNotEmpty(sonLaboratory) && sonLaboratory.equals("杩戝満") && split[split.length - 1].equals("csv")) {
+                fuSheUtils.getFuSheWord1(sonLaboratory, insOrderFile);
+            } else if (ObjectUtils.isNotEmpty(sonLaboratory) && sonLaboratory.equals("杩滃満") && split[split.length - 1].equals("xlsx")) {
+                fuSheUtils.getFuSheWord2(sonLaboratory, insOrderFile);
+            } else if (ObjectUtils.isNotEmpty(sonLaboratory) && sonLaboratory.equals("鐢佃矾璇曢獙") && split[split.length - 1].equals("xlsx") && filename.contains("浜よ皟")) {
+                dianLuUtils.readDianLuFile1(sampleId, insOrderFile);
+            } else if (ObjectUtils.isNotEmpty(sonLaboratory) && sonLaboratory.equals("鐢佃矾璇曢獙") && split[split.length - 1].equals("csv") && filename.contains("椹绘尝")) {
+                dianLuUtils.readDianLuFile2(sampleId, insOrderFile);
             }
         } catch (Exception e) {
-            System.err.println("闄勪欢涓婁紶閿欒");
+            throw new ErrorException(e.getMessage());
         }
         return 0;
     }
@@ -368,12 +379,15 @@
 
     //鎵爜鎶ユ
     @Override
-    public int scanInsOrderState(String sonLaboratory, String sampleCode, String trees) {
+    public int scanInsOrderState(String sonLaboratory, String sampleCode, String trees, String entrustCode) {
         /*鏍峰搧鍏ュ簱*/
-        warehouseService.inWarehouse(trees, sampleCode);
+        warehouseService.inWarehouse(trees, sampleCode, entrustCode);
         /*鏂板妫�楠屼换鍔�*/
         //鍏堝垽鏂鏍峰搧鏄惁鏈夎繖涓珯鐐圭殑椤圭洰
-        InsSample insSample = insSampleMapper.selectOne(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getSampleCode, sampleCode));
+        List<InsOrder> insOrders = insOrderMapper.selectList(Wrappers.<InsOrder>lambdaQuery().eq(InsOrder::getEntrustCode, entrustCode));
+        InsSample insSample = insSampleMapper.selectOne(Wrappers.<InsSample>lambdaQuery()
+                .eq(InsSample::getSampleCode, sampleCode)
+                .eq(InsSample::getInsOrderId, insOrders.get(0).getId()));
         List<String> collect = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
                 .eq(InsProduct::getState, 1)
                 .eq(InsProduct::getInsSampleId, insSample.getId())).stream().map(InsProduct::getSonLaboratory).collect(Collectors.toList());
@@ -401,7 +415,7 @@
         } else {
             InsOrderState insOrderState = new InsOrderState();
             insOrderState.setInsOrderId(insSample.getInsOrderId());
-            insOrderState.setInsOrderId(insSample.getId());
+            insOrderState.setInsSampleId(insSample.getId());
             insOrderState.setLaboratory(sonLaboratory);
             insOrderState.setInsState(0);
             insOrderState.setNum(1);//鍒濆鏄涓�娆�
@@ -412,10 +426,13 @@
 
     //鎵爜鍑哄簱
     @Override
-    public int outInsOrderState(String sonLaboratory, String sampleCode) {
+    public int outInsOrderState(String sonLaboratory, String sampleCode, String entrustCode) {
         //鍒ゆ柇璇ユ牱鍝佺殑妫�楠屼换鍔℃槸鍚﹀凡缁忕粨鏉�(缁х画璇曢獙鎴栬�呮槸缁撴潫璇曢獙)
         //鍏堝垽鏂鏍峰搧鏄惁鏈夎繖涓珯鐐圭殑椤圭洰
-        InsSample insSample = insSampleMapper.selectOne(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getSampleCode, sampleCode));
+        List<InsOrder> insOrders = insOrderMapper.selectList(Wrappers.<InsOrder>lambdaQuery().eq(InsOrder::getEntrustCode, entrustCode));
+        InsSample insSample = insSampleMapper.selectOne(Wrappers.<InsSample>lambdaQuery()
+                .eq(InsSample::getSampleCode, sampleCode)
+                .eq(InsSample::getInsOrderId, insOrders.get(0).getId()));
         List<String> collect = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
                 .eq(InsProduct::getState, 1)
                 .eq(InsProduct::getInsSampleId, insSample.getId())).stream().map(InsProduct::getSonLaboratory).collect(Collectors.toList());
@@ -437,7 +454,7 @@
             }
         }
         boolean a = true;
-        warehouseService.outWarehouse(sampleCode, a);
+        warehouseService.outWarehouse(sampleCode, a, entrustCode);
         return 0;
     }
 
@@ -480,11 +497,60 @@
                 //鑾峰彇鏈�鍚庝竴琛岀殑num锛屽嵆鎬昏鏁般�傛澶勪粠0寮�濮�
                 int maxRow = sheet.getLastRowNum();
                 for (int row = 0; row <= maxRow; row++) {
+                    XSSFRow xssfRow = sheet.getRow(row);
                     //鑾峰彇鏈�鍚庡崟鍏冩牸num锛屽嵆鎬诲崟鍏冩牸鏁� ***娉ㄦ剰锛氭澶勪粠1寮�濮嬭鏁�***
                     int maxRol = sheet.getRow(row).getLastCellNum();
                     StringBuilder aLine = new StringBuilder();
-                    for (int rol = 0; rol < maxRol; rol++) {
+                    /*for (int rol = 0; rol < maxRol; rol++) {
                         aLine.append(sheet.getRow(row).getCell(rol)).append(",");
+                    }*/
+                    for (int rol = 0; rol < maxRol; rol++) {
+                        XSSFCell cell = xssfRow.getCell(rol);
+                        if (cell == null) {
+                            aLine.append(",");
+                        } else {
+                            switch (cell.getCellType()) {
+                                case FORMULA:
+                                    // 璁$畻鍏紡骞惰幏鍙栫粨鏋�
+                                    CellValue cellValue = xssfWorkbook.getCreationHelper().createFormulaEvaluator().evaluate(cell);
+                                    switch (cellValue.getCellType()) {
+                                        case NUMERIC:
+                                            String formattedValue = String.format("%.4f", cellValue.getNumberValue());
+                                            aLine.append(formattedValue);
+                                            break;
+                                        case STRING:
+                                            aLine.append(cellValue.getStringValue());
+                                            break;
+                                        case BOOLEAN:
+                                            aLine.append(cellValue.getBooleanValue());
+                                            break;
+                                        case ERROR:
+                                            aLine.append("#ERR!");
+                                            break;
+                                        default:
+                                            aLine.append("");
+                                            break;
+                                    }
+                                    break;
+                                case NUMERIC:
+                                    String formattedValue = String.format("%.4f", cell.getNumericCellValue());
+                                    aLine.append(formattedValue);
+                                    break;
+                                case STRING:
+                                    aLine.append(cell.getStringCellValue());
+                                    break;
+                                case BOOLEAN:
+                                    aLine.append(cell.getBooleanCellValue());
+                                    break;
+                                case ERROR:
+                                    aLine.append("#ERR!");
+                                    break;
+                                default:
+                                    aLine.append("");
+                                    break;
+                            }
+                            aLine.append(",");
+                        }
                     }
                     String substring = aLine.substring(0, aLine.length() - 1);
                     result.append(substring).append("\n");
@@ -684,22 +750,23 @@
             throw new ErrorException("棰戠巼涓嶈兘涓虹┖");
         }
         Integer userId = getLook.selectPowerByMethodAndUserId(null).get("userId");
+        //鏌ヨ鏍峰搧淇℃伅
+        InsSample insSample = insSampleMapper.selectById(insProductResultDtos.getSampleId());
         //鏌ヨ妫�楠屽崟淇℃伅
-        InsOrder insOrder = insOrderMapper.selectById(insProductResultDtos.getOrderId());
         InsOrderState orderState = insOrderStateMapper.selectOne(Wrappers.<InsOrderState>lambdaQuery()
-                .eq(InsOrderState::getInsOrderId, insProductResultDtos.getOrderId())
+                .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId())
                 .eq(InsOrderState::getInsSampleId, insProductResultDtos.getSampleId())
                 .eq(InsOrderState::getLaboratory, insProductResultDtos.getSonLaboratory())
                 .orderByDesc(InsOrderState::getId)
                 .last("LIMIT 1"));// 纭繚鍙彇涓�鏉¤褰�
-        //鏌ヨ鏍峰搧淇℃伅
-        InsSample insSample = insSampleMapper.selectById(insProductResultDtos.getSampleId());
         List<Integer> list = new ArrayList<>();
         /*鏂板妫�楠岄」鐩楠屽�艰褰曡〃(閲囧彇鍏堝垹鍚庡)*/
         insProductResult2Mapper.delete(Wrappers.<InsProductResult2>lambdaQuery()
                 .in(InsProductResult2::getInsProductId, insProductResultDtos.getInsProductResult2s().stream().map(InsProductResult2::getInsProductId).distinct().collect(Collectors.toList()))
                 .eq(InsProductResult2::getNum, orderState.getNum())
                 .eq(InsProductResult2::getFrequency, insProductResultDtos.getFrequency()));
+        List<InsProductResult2> result2s = new ArrayList<>();
+        List<InsProductUser> insProductUsers = new ArrayList<>();
         for (InsProductResult2 insProductResult2 : insProductResultDtos.getInsProductResult2s()) {
             InsProduct insProduct = new InsProduct();
             insProduct.setId(insProductResult2.getInsProductId());//椤圭洰id
@@ -735,7 +802,7 @@
                 //缁撹
                 int ressult = 1;
                 String valueStr = insProductResult2.getValue();
-                String regex ="[\u4e00-\u9fa5]";
+                String regex = "[\u4e00-\u9fa5]";
                 if (!insProduct.getAsk().contains(",")) {
                     if (insProduct.getAsk().equals("/") || Pattern.compile(regex).matcher(insProduct.getAsk()).find()) {
                         ressult = 3; //涓嶅垽瀹�
@@ -777,10 +844,13 @@
             }
             result2.setCreateUser(userId);
             result2.setUpdateUser(userId);
-            insProductResult2Mapper.insert(result2);
-            insProduct.setUpdateUser(userId);
-            insProductMapper.updateById(insProduct);
-            insProductUserMapper.insert(new InsProductUser(null, userId, LocalDateTime.now(), insProduct.getId()));
+            result2s.add(result2);
+            //insProductResult2Mapper.insert(result2);
+            //insProduct.setUpdateUser(userId);
+            //insProducts.add(insProduct);
+            //insProductMapper.updateById(insProduct);
+            insProductUsers.add(new InsProductUser(null, userId, LocalDateTime.now(), insProduct.getId()));
+            //insProductUserMapper.insert(new InsProductUser(null, userId, LocalDateTime.now(), insProduct.getId()));
             /*鏇存柊鏍峰搧鐨勬楠岀姸鎬�*/
             insSample.setInsState(1);
             Long l = insProductMapper.selectCount(Wrappers.<InsProduct>lambdaQuery()
@@ -796,18 +866,29 @@
                 //濡傛灉鎵�鏈夐」鐩兘鏈夌粨璁�,閭d箞璇ユ牱鍝佺姸鎬佸凡妫�
                 insSample.setInsState(2);
             }
-            insSampleMapper.updateById(insSample);
         }
+        insProductResult2Mapper.saveBatch(result2s);
+        insProductUserMapper.saveBatch(insProductUsers);
+        insSampleMapper.updateById(insSample);
         /*鍒ゆ柇璇ョ珯鐐圭殑妫�楠岄」鐩槸鍚﹀叏閮ㄥ凡妫�*/
-        int count = insProductMapper.selectInsProductCountByOrderId(insProductResultDtos.getOrderId());
+        int count = insProductMapper.selectInsProductCountByOrderId(insSample.getInsOrderId());
         if (count == 0) {
             insOrderStateMapper.update(new InsOrderState(), Wrappers.<InsOrderState>lambdaUpdate()
-                    .eq(InsOrderState::getInsOrderId, insProductResultDtos.getOrderId())
+                    .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId())
                     .eq(InsOrderState::getInsSampleId, insProductResultDtos.getSampleId())
                     .eq(InsOrderState::getLaboratory, insProductResultDtos.getSonLaboratory())
                     .set(InsOrderState::getInsState, 2));
         }
         return list;
+    }
+
+    //鐢佃矾璇曢獙鐨勪繚瀛樻楠屽唴瀹�(杩斿洖/鎻愪氦)
+    @Override
+    public int saveInsContext2s(InsProductResultDtos insProductResultDtos) {
+        for (InsProductResultDto insProductResultDto : insProductResultDtos.getInsProductResultDtos()) {
+            saveInsContext2(insProductResultDto);
+        }
+       return  1;
     }
 
     //娓╂箍搴﹁瘯楠�+鍔熺巼璇曢獙鐨勪繚瀛樻楠屽唴瀹�
@@ -958,7 +1039,7 @@
                             .set(InsOrderState::getCreateTime, LocalDateTime.now()));
                     break;
                 case 1:
-                    //缁х画璇曢獙:璇ョ珯鐐逛换鍔$粨鏉�(鍙互鍐嶆鎵爜妫�楠�)锛�
+                    //缁х画璇曢獙:璇ユ牱鍝佽绔欑偣浠诲姟缁撴潫(鍙互鍐嶆鎵爜妫�楠�)锛�
                     insOrderStateMapper.update(null, Wrappers.<InsOrderState>lambdaUpdate()
                             .eq(InsOrderState::getInsOrderId, insSample.getInsOrderId())
                             .eq(InsOrderState::getInsSampleId, sampleId)
@@ -980,7 +1061,10 @@
                     if (insOrder.getFormType().equals("鍘熺悊鏍锋満")) {
                         //鍑哄簱
                         try {
-                            outInsOrderState(laboratory, insSample.getSampleCode());
+                            List<InsSample> insSamples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getInsOrderId, insSample.getInsOrderId()));
+                            for (InsSample sample : insSamples) {
+                                outInsOrderState(laboratory, sample.getSampleCode(), insOrder.getEntrustCode());
+                            }
                         } catch (Exception e) {
 
                         }
@@ -1039,6 +1123,11 @@
         List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
                 .eq(InsProduct::getInsSampleId, insSample.getId())
                 .eq(InsProduct::getSonLaboratory, submitPlanDto.getLaboratory())
+                .and(wrapper -> wrapper
+                        .isNull(InsProduct::getInsResult)
+                        .or()
+                        .eq(InsProduct::getInsResult, 2)
+                )
                 .eq(InsProduct::getState, 1));
         if (insProducts.size() > 0) {
             String str = "";
@@ -1084,27 +1173,12 @@
         info.setCreateUser(insProductMapper.selectUserById(userId).get("name"));
         info.setMessageType("2");
         info.setTheme("澶嶆牳閫氱煡");
-        info.setContent("鎮ㄦ湁涓�鏉℃楠屼换鍔″緟澶嶆牳娑堟伅");
+        info.setContent("鎮ㄦ湁涓�鏉℃楠屼换鍔″緟澶嶆牳娑堟伅,璁㈠崟鍙锋槸锛�" + insOrder.getEntrustCode() + ",鏍峰搧鍚嶇О涓猴細" + insSample.getSample());
         info.setSenderId(userId);
         info.setConsigneeId(submitPlanDto.getVerifyUser());
         info.setViewStatus(false);
         info.setJumpPath("b1-inspect-order-plan");
         informationNotificationService.addInformationNotification(info);
-        //  todo 浼佷笟寰俊娑堟伅鎺ㄩ�丂zss
-        HashMap<String, Object> map = new HashMap<>();
-        String account = userMapper.selectById(submitPlanDto.getVerifyUser()).getAccount();
-        map.put("touser", account);//鎺ユ敹娑堟伅鎴愬憳鐨勮处鍙�'ZT-031292'杩欑绫诲瀷(濡傛灉鏈夊涓敤'|'鍒嗛殧)
-        map.put("toparty", "");//鎺ユ敹閮ㄩ棬id
-        map.put("totag", "");//娑堟伅鏍囩id
-        map.put("msgtype", "text");//娑堟伅绫诲瀷 text:鏂囨湰
-        map.put("agentid", 1000517);//搴旂敤id
-        HashMap<String, Object> hashMap = new HashMap<>();
-        hashMap.put("content", "鎮ㄦ湁涓�鏉℃楠屼换鍔″緟澶嶆牳娑堟伅,璁㈠崟鍙锋槸锛�" + insOrder.getEntrustCode() + ",璇峰墠寰�LIMS绯荤粺鏌ョ湅銆�<a href=\"https://ztwxlims.ztt.cn:7443/enter\">涓ぉ閫氫俊LIMS绯荤粺 </a>");
-        map.put("text", hashMap);//娑堟伅鍐呭
-        map.put("safe", 0);//鏄惁淇濆瘑娑堟伅.0鍚�
-        map.put("enable_id_trans", 0);//鏄惁寮�鍚痠d杞瘧.0鍚�
-        map.put("enable_duplicate_check", 0);//鏄惁寮�鍚噸澶嶆秷鎭鏌�.0鍚�
-        qywxApi.send(map);
         //澶嶆牳浜�--妫�楠屽崟鐩稿叧璐熻矗浜�
         InsSampleUser insSampleUser = new InsSampleUser();
         insSampleUser.setUserId(submitPlanDto.getVerifyUser());
@@ -1114,7 +1188,7 @@
         insSampleUserMapper.insert(insSampleUser);
         /*鐢熸垚鐢佃矾璇曢獙鐨勭珯鐐规姤鍛婂苟涓婁紶鍒伴檮浠朵腑*/
         if (submitPlanDto.getLaboratory().equals("鐢佃矾璇曢獙")) {
-            //wordUtils.generateWord(submitPlanDto.getTerm(), orderState);
+//            wordUtils.generateWord(submitPlanDto.getTerm(), orderState);
             //todo 鐢佃矾绔欑偣鎶ュ憡 姝e紡搴撻儴缃叉斁寮�
             try {
                 wordUtils.generateWord(submitPlanDto.getTerm(), orderState);
@@ -1122,10 +1196,6 @@
                 throw new ErrorException("鐢佃矾璇曢獙鐨勭珯鐐规姤鍛婄敓鎴愭湁璇�,璇疯仈绯诲紑鍙戜汉鍛樿皟鏁�!");
             }
         }
-        /*// 鍒犻櫎鏁伴噰閲囬泦娆℃暟
-        String key = "frequency" + ":" + submitPlanDto.getEntrustCode() + ":*";
-        RedisUtil.delsLike(key);*/
-
         /*鐢熸垚浜ч噺宸ユ椂*/
         //鏍¢獙濡傛灉杩欎釜浜鸿繖涓娴嬮」鐩凡缁忔坊鍔犺繃浜嗗垯涓嶉渶瑕佸啀鏂板
         //棣栧厛鍒ゆ柇褰撳墠浜虹殑褰撳墠鏃堕棿鏄惁鏄帓鐝椂闂村唴,濡傛灉涓嶆槸灏辨槸鍔犵彮
@@ -1170,11 +1240,27 @@
                     DateTime parse = DateUtil.parse(localDateTime.format(formatter));
                     auxiliaryOutputWorkingHours.setWeekDay(getWeek(localDateTime.format(formatters)));//鏄熸湡
                     auxiliaryOutputWorkingHours.setWeek(String.valueOf(DateUtil.weekOfYear(DateUtil.offsetDay(parse, 1))));//鍛ㄦ
-                    auxiliaryOutputWorkingHours.setCheck(userId);//todo 妫�娴嬩汉(鍚庨潰瑕佸幓鎺夌敱鍓嶇浼犲叆)
                     auxiliaryOutputWorkingHoursMapper.insert(auxiliaryOutputWorkingHours);
                 }
             }
         }
+
+        //  todo 浼佷笟寰俊娑堟伅鎺ㄩ�丂zss
+        HashMap<String, Object> map = new HashMap<>();
+        String account = userMapper.selectById(submitPlanDto.getVerifyUser()).getAccount();
+        map.put("touser", account);//鎺ユ敹娑堟伅鎴愬憳鐨勮处鍙�'ZT-031292'杩欑绫诲瀷(濡傛灉鏈夊涓敤'|'鍒嗛殧)
+        map.put("toparty", "");//鎺ユ敹閮ㄩ棬id
+        map.put("totag", "");//娑堟伅鏍囩id
+        map.put("msgtype", "text");//娑堟伅绫诲瀷 text:鏂囨湰
+        map.put("agentid", 1000517);//搴旂敤id
+        HashMap<String, Object> hashMap = new HashMap<>();
+        hashMap.put("content", "鎮ㄦ湁涓�鏉℃楠屼换鍔″緟澶嶆牳娑堟伅,璁㈠崟鍙锋槸锛�" + insOrder.getEntrustCode() + ",鏍峰搧鍚嶇О涓猴細" + insSample.getSample() +
+                ",璇峰墠寰�LIMS绯荤粺鏌ョ湅銆傝鐐瑰嚮<a href=\"https://ztwxlims.ztt.cn:7443/enter\">涓ぉ閫氫俊LIMS绯荤粺 </a>");
+        map.put("text", hashMap);//娑堟伅鍐呭
+        map.put("safe", 0);//鏄惁淇濆瘑娑堟伅.0鍚�
+        map.put("enable_id_trans", 0);//鏄惁寮�鍚痠d杞瘧.0鍚�
+        map.put("enable_duplicate_check", 0);//鏄惁寮�鍚噸澶嶆秷鎭鏌�.0鍚�
+        qywxApi.send(map);
         return 1;
     }
 

--
Gitblit v1.9.3