From afb277a81e060c6275f11e9f9f102b5dcfd80a72 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期四, 27 六月 2024 09:46:05 +0800
Subject: [PATCH] 代码提交

---
 smartor/src/main/java/com/smartor/service/impl/SvyTaskSingleServiceImpl.java |   99 ++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 85 insertions(+), 14 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/service/impl/SvyTaskSingleServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/SvyTaskSingleServiceImpl.java
index 7ec6671..ec35965 100644
--- a/smartor/src/main/java/com/smartor/service/impl/SvyTaskSingleServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/SvyTaskSingleServiceImpl.java
@@ -1,14 +1,13 @@
 package com.smartor.service.impl;
 
 import com.alibaba.fastjson2.JSON;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
 import com.google.gson.Gson;
 import com.ruoyi.common.exception.base.BaseException;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.DtoConversionUtils;
-import com.smartor.domain.PatTaskRelevance;
-import com.smartor.domain.SvyTask;
-import com.smartor.domain.SvyTaskSingle;
-import com.smartor.domain.SvyTaskVO;
+import com.smartor.domain.*;
 import com.smartor.mapper.SvyTaskSingleMapper;
 import com.smartor.service.ISvyTaskService;
 import com.smartor.service.ISvyTaskSingleService;
@@ -18,7 +17,10 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
+import java.util.Map;
 
 /**
  * 鍗曚竴浠诲姟锛堥棶鍗凤級Service涓氬姟灞傚鐞�
@@ -133,7 +135,7 @@
                     svyTaskSingle.setPhone(patTaskRelevance.getPhone());
                     svyTaskSingle.setAddr(patTaskRelevance.getAddr());
                     svyTaskSingle.setPatid(patTaskRelevance.getPatid());
-                    svyTaskSingle.setCreateTime(DateUtils.getNowDate());
+                    svyTaskSingle.setSendstate(1L);
                     svyTaskSingle.setCreateTime(DateUtils.getNowDate());
                     svyTaskSingleMapper.insertSvyTaskSingle(svyTaskSingle);
                     integer = svyTaskSingle.getId().intValue();
@@ -163,20 +165,89 @@
                     svyTaskSingle.setCreateTime(DateUtils.getNowDate());
                     svyTaskSingle.setTextParam(new Gson().toJson(svyTaskVO.getTextParamMap()));
                     if (patTaskRelevance.getIsoperation() != null) {
-                        if (patTaskRelevance.getIsoperation() == 2)
-                            svyTaskSingleMapper.updateSvyTaskSingle(svyTaskSingle);
-                        if (patTaskRelevance.getIsoperation() == 1)
-                            svyTaskSingleMapper.insertSvyTaskSingle(svyTaskSingle);
-                        if (patTaskRelevance.getIsoperation() == 3)
-                            //  閫氳繃taskid鍜宲atid鍘诲垹闄よ鏉℃暟鎹�
-                            svyTaskSingleMapper.deleteSvyTaskcallByCondition(svyTaskVO.getTaskid(), patTaskRelevance.getPatid());
+                        optionHandle(svyTaskSingle, svyTaskVO.getTaskid(), patTaskRelevance.getIsoperation(), patTaskRelevance.getPatid());
+                    } else if (patTaskRelevance.getIsoperation() == null) {
+                        optionHandle(svyTaskSingle, svyTaskVO.getTaskid(), svyTaskVO.getIsoperation(), patTaskRelevance.getPatid());
                     }
                     integer = svyTaskSingle.getTaskid().intValue();
                 }
             }
         }
-
-
         return integer;
     }
+
+    @Override
+    public SvyTaskVO queryTaskByCondition(SvyTaskSingle svyTaskSingle) {
+        //瀹氫箟鎮h�呬笌鍗曚竴浠诲姟鍏宠仈琛ㄩ泦鍚�
+        List<PatTaskRelevance> patTaskRelevances = new ArrayList<>();
+        List<SvyTaskSingle> list = selectSvyTaskSingleList(svyTaskSingle);
+        if (CollectionUtils.isEmpty(list) || list.size() == 0) {
+            return new SvyTaskVO();
+        }
+        SvyTask svyTask = svyTaskService.selectSvyTaskByTaskid(svyTaskSingle.getTaskid());
+        //灏嗘煡鍑烘潵鐨勬暟鎹�掑叆ivrTasksingleVO涓�
+        SvyTaskVO svyTaskVO = DtoConversionUtils.sourceToTarget(list.get(0), SvyTaskVO.class);
+        svyTaskVO.setShowDate(svyTask.getShowDate());
+        svyTaskVO.setShowTimeMorn(svyTask.getShowTimeMorn());
+        svyTaskVO.setShowTimeNoon(svyTask.getShowTimeNoon());
+        svyTaskVO.setShowTimeNight(svyTask.getShowTimeNight());
+        svyTaskVO.setPreachform(svyTask.getPreachform());
+        String sendTimeSlot = svyTask.getSendTimeSlot();
+        ObjectMapper objectMapper = new ObjectMapper();
+        try {
+            //鑾峰彇鍒板彂閫佹椂闂寸殑闆嗗悎
+            if (com.ruoyi.common.utils.StringUtils.isNotEmpty(sendTimeSlot)) {
+                List<TaskSendTimeVO> taskSendTimeVOList = objectMapper.readValue(sendTimeSlot, List.class);
+                svyTaskVO.setSendTimeSlot(taskSendTimeVOList);
+                svyTaskVO.setSendType(svyTask.getSendType());
+            }
+            //鏂囨湰鍙橀噺鍙傛暟
+            if (com.ruoyi.common.utils.StringUtils.isNotEmpty(svyTask.getTextParam())) {
+                Map<String, Map<String, String>> textParam = objectMapper.readValue(svyTask.getTextParam(), Map.class);
+                svyTaskVO.setTextParam(textParam);
+            }
+        } catch (JsonProcessingException e) {
+            e.printStackTrace();
+        }
+
+        for (SvyTaskSingle svyTaskSingle1 : list) {
+            PatTaskRelevance patTaskRelevance = new PatTaskRelevance();
+            if (!svyTaskSingle1.getHospType().equals("2")) {
+                log.info("闅忚鏌ヨ涓嶄负鍑洪櫌锛寋}", svyTaskSingle1.getHospType());
+                //鑾峰彇鍒版偅鑰呬俊鎭紝骞舵斁鍏ュ埌闆嗗悎涓�
+                patTaskRelevance.setName(svyTaskSingle1.getSendname());
+                patTaskRelevance.setAge(svyTaskSingle1.getAge());
+                patTaskRelevance.setSfzh(svyTaskSingle1.getSfzh());
+                patTaskRelevance.setPhone(svyTaskSingle1.getPhone());
+                patTaskRelevance.setAddr(svyTaskSingle1.getAddr());
+                patTaskRelevance.setDiagname(svyTaskSingle1.getDiagname());
+                patTaskRelevance.setPatid(svyTaskSingle1.getPatid());
+                patTaskRelevances.add(patTaskRelevance);
+            }
+            if (svyTaskSingle1.getHospType().equals("2")) {
+                log.info("闅忚鏌ヨ涓哄嚭闄紝{}", svyTaskSingle1.getHospType());
+                patTaskRelevance.setName(svyTaskSingle1.getSendname());
+                patTaskRelevance.setAge(svyTaskSingle1.getAge());
+                patTaskRelevance.setSfzh(svyTaskSingle1.getSfzh());
+                patTaskRelevance.setPhone(svyTaskSingle1.getPhone());
+                patTaskRelevance.setAddr(svyTaskSingle1.getAddr());
+                patTaskRelevance.setDeptName(svyTaskSingle1.getDeptname());
+                patTaskRelevance.setBedNo(svyTaskSingle1.getBedno());
+                patTaskRelevance.setDiagname(svyTaskSingle1.getDiagname());
+                patTaskRelevance.setPatid(svyTaskSingle1.getPatid());
+                patTaskRelevances.add(patTaskRelevance);
+            }
+        }
+
+        svyTaskVO.setPatTaskRelevances(patTaskRelevances);
+        return svyTaskVO;
+    }
+
+    private void optionHandle(SvyTaskSingle svyTaskSingle, Long taskId, Integer isoperation, Long patid) {
+        if (isoperation == 1) {
+            svyTaskSingle.setSendstate(1L);
+            svyTaskSingleMapper.insertSvyTaskSingle(svyTaskSingle);
+        } else if (isoperation == 2) svyTaskSingleMapper.updateSvyTaskSingle(svyTaskSingle);
+        else if (isoperation == 3) svyTaskSingleMapper.deleteSvyTaskcallByCondition(taskId, patid);
+    }
 }

--
Gitblit v1.9.3