From f55c563e2a0b52e4569ce6b5f81632cac598f7fe Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 30 十月 2024 18:36:55 +0800
Subject: [PATCH] 代码提交
---
smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java | 113 +++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 86 insertions(+), 27 deletions(-)
diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java
index b4ca1a8..0773844 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java
@@ -4,16 +4,19 @@
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
+import com.google.gson.Gson;
import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.DtoConversionUtils;
+import com.ruoyi.common.utils.http.HttpUtils;
import org.apache.commons.lang3.StringUtils;
import com.smartor.domain.*;
import com.smartor.mapper.*;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import com.smartor.service.IServiceTaskService;
import org.springframework.transaction.annotation.Transactional;
@@ -34,6 +37,15 @@
private ServiceSubtaskMapper serviceSubtaskMapper;
@Autowired
+ private IvrTaskTemplateMapper ivrTaskTemplateMapper;
+
+ @Autowired
+ private SvyTaskTemplateMapper svyTaskTemplateMapper;
+
+ @Autowired
+ private HeLibraryMapper heLibraryMapper;
+
+ @Autowired
private IvrLibaTemplateScriptMapper ivrLibaTemplateScriptMapper;
@Autowired
@@ -41,9 +53,6 @@
@Autowired
private PatArchiveMapper patArchiveMapper;
-
- @Autowired
- private HeLibraryMapper heLibraryMapper;
@Autowired
@@ -75,6 +84,11 @@
@Override
public List<ServiceTask> selectServiceTaskList(ServiceTask serviceTask) {
+ //濡傛灉涓�0涓嶇疆绌猴紝浼氬奖鍝嶅埌鎴戠殑鏌ヨ
+ if (CollectionUtils.isEmpty(serviceTask.getLeaveldeptcodes()) || serviceTask.getLeaveldeptcodes().size() == 0)
+ serviceTask.setLeaveldeptcodes(null);
+ if (CollectionUtils.isEmpty(serviceTask.getLeavehospitaldistrictcodes()) || serviceTask.getLeavehospitaldistrictcodes().size() == 0)
+ serviceTask.setLeavehospitaldistrictcodes(null);
return serviceTaskMapper.selectServiceTaskList(serviceTask);
}
@@ -87,6 +101,7 @@
@Override
public int insertServiceTask(ServiceTask serviceTask) {
serviceTask.setCreateTime(DateUtils.getNowDate());
+ serviceTask.setUpdateTime(DateUtils.getNowDate());
return serviceTaskMapper.insertServiceTask(serviceTask);
}
@@ -135,7 +150,20 @@
}
@Override
- public List getScriptInfoByCondition(Long taskid, Long patid) {
+ public Map<String, Object> getScriptInfoByCondition(Long taskid, Long patid, Boolean isFinish) {
+ Map<String, Object> map = new HashMap<>();
+ ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO();
+ serviceSubtaskVO.setPatid(patid);
+ serviceSubtaskVO.setTaskid(taskid);
+ List<ServiceSubtask> selectServiceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
+ //鏌ヨ鎮h�呮槸鍚﹂噸瑕嗗仛棰�
+ if (CollectionUtils.isEmpty(selectServiceSubtaskList)) {
+ Long submit = selectServiceSubtaskList.get(0).getSubmit();
+ if (submit == 1L) {
+ map.put("submit", "1");
+ return map;
+ }
+ }
//閫氳繃浠诲姟ID鑾峰彇妯℃澘ID
ServiceTask serviceTask = selectServiceTaskByTaskid(taskid);
List info = new ArrayList();
@@ -144,21 +172,31 @@
info = sfInfo(serviceTask, patid);
} else if (serviceTask.getType().equals("2")) {
//闂嵎
- info = wjInfo(serviceTask, patid);
+ info = wjInfo(serviceTask, patid, isFinish);
} else {
//瀹f暀
- info = xjInfo(serviceTask.getTemplateid());
+ info = xjInfo(Long.valueOf(serviceTask.getLibtemplateid()), taskid, patid, isFinish);
}
//鍙鎵撳紑浜嗛〉闈紝灏辩畻鎴愬姛
- ServiceSubtask ServiceTaskSingle = new ServiceSubtask();
- ServiceTaskSingle.setTaskid(taskid);
- ServiceTaskSingle.setPatid(patid);
- ServiceTaskSingle.setResult("success");
- ServiceTaskSingle.setFinishtime(new Date());
- serviceSubtaskMapper.updateServiceSubtaskByCondition(ServiceTaskSingle);
+ if (isFinish) {
+ ServiceSubtask ss = new ServiceSubtask();
+ ss.setTaskid(taskid);
+ ss.setPatid(patid);
+ ss.setSendstate(1L);
+ ss.setResult("success");
+ ss.setFinishtime(new Date());
+ serviceSubtaskMapper.updateServiceSubtaskByCondition(ss);
+ }
+ SvyTaskTemplate svyTaskTemplate = svyTaskTemplateMapper.selectSvyTaskTemplateBySvyid(serviceTask.getTemplateid());
+ if (StringUtils.isNotEmpty(serviceTask.getKcb())) map.put("kcb", serviceTask.getKcb());
+ map.put("script", info);
+ if (StringUtils.isNotEmpty(serviceTask.getJsy())) map.put("jsy", serviceTask.getJsy());
+ map.put("type", serviceTask.getType());
+ map.put("taskName", serviceTask.getTaskName());
+ map.put("submit", "0");
- return info;
+ return map;
}
/**
@@ -171,7 +209,7 @@
public List sfInfo(ServiceTask serviceTask, Long patid) {
//閫氳繃妯℃澘ID鑾峰彇闂淇℃伅
IvrLibaTemplateScript ivrLibaTemplateScript = new IvrLibaTemplateScript();
- ivrLibaTemplateScript.setTemplateID(serviceTask.getTemplateid());
+ ivrLibaTemplateScript.setTemplateid(Long.valueOf(serviceTask.getLibtemplateid()));
ivrLibaTemplateScript.setDelFlag("0");
List<IvrLibaTemplateScript> ivrLibaTemplateScripts = ivrLibaTemplateScriptMapper.selectIvrLibaTemplateScriptList(ivrLibaTemplateScript);
if (CollectionUtils.isEmpty(ivrLibaTemplateScripts) || ivrLibaTemplateScripts.size() == 0) {
@@ -199,25 +237,27 @@
//灏嗘ā鏉块棶棰樿瘽鏈噷鐨勯�氶厤绗︽浛鎹�
for (IvrLibaTemplateScriptVO ivrLibaTemplateScriptVO : ivrLibaTemplateScriptVOS) {
- if (StringUtils.isNotEmpty(ivrLibaTemplateScriptVO.getQuestionText())) {
+ if (StringUtils.isNotEmpty(ivrLibaTemplateScriptVO.getScriptContent())) {
for (Map<String, String> map : mapList) {
for (String key : map.keySet()) {
- ivrLibaTemplateScriptVO.setQuestionText(ivrLibaTemplateScriptVO.getQuestionText().replace(key, StringUtils.isNotEmpty(map.get(key)) ? map.get(key) : ""));
+ ivrLibaTemplateScriptVO.setScriptContent(ivrLibaTemplateScriptVO.getScriptContent().replace(key, StringUtils.isNotEmpty(map.get(key)) ? map.get(key) : ""));
}
}
//鏇挎崲鎮h�呬釜浜轰俊鎭暟鎹�
- ivrLibaTemplateScriptVO.setQuestionText(ivrLibaTemplateScriptVO.getQuestionText().replace("${name}", StringUtils.isNotEmpty(patArchive.getName()) ? patArchive.getName() : ""));
- ivrLibaTemplateScriptVO.setQuestionText(ivrLibaTemplateScriptVO.getQuestionText().replace("${dzz}", StringUtils.isNotEmpty(patArchive.getPlaceOfResidence()) ? patArchive.getPlaceOfResidence() : ""));
- ivrLibaTemplateScriptVO.setQuestionText(ivrLibaTemplateScriptVO.getQuestionText().replace("${dhh}", StringUtils.isNotEmpty(patArchive.getTelcode()) ? patArchive.getTelcode() : ""));
+ ivrLibaTemplateScriptVO.setScriptContent(ivrLibaTemplateScriptVO.getScriptContent().replace("${name}", StringUtils.isNotEmpty(patArchive.getName()) ? patArchive.getName() : ""));
+ ivrLibaTemplateScriptVO.setScriptContent(ivrLibaTemplateScriptVO.getScriptContent().replace("${dzz}", StringUtils.isNotEmpty(patArchive.getPlaceOfResidence()) ? patArchive.getPlaceOfResidence() : ""));
+ ivrLibaTemplateScriptVO.setScriptContent(ivrLibaTemplateScriptVO.getScriptContent().replace("${dhh}", StringUtils.isNotEmpty(patArchive.getTelcode()) ? patArchive.getTelcode() : ""));
//鑾峰彇闂閫夐」
IvrLibaTemplateTargetoption ivrLibaTemplateTargetoption = new IvrLibaTemplateTargetoption();
- ivrLibaTemplateTargetoption.setScriptid(ivrLibaTemplateScriptVO.getID());
+ ivrLibaTemplateTargetoption.setScriptid(ivrLibaTemplateScriptVO.getId());
List<IvrLibaTemplateTargetoption> ivrLibaTemplateTargetoptions = ivrLibaTemplateTargetOptionMapper.selectIvrLibaTemplateTargetoptionList(ivrLibaTemplateTargetoption);
ivrLibaTemplateScriptVO.setIvrLibaScriptTargetoptionList(ivrLibaTemplateTargetoptions);
}
}
+ Collections.sort(ivrLibaTemplateScriptVOS, Comparator.comparingInt(IvrLibaTemplateScriptVO::getSort));
+
return ivrLibaTemplateScriptVOS;
}
@@ -228,10 +268,18 @@
* @param patid
* @return
*/
- private List wjInfo(ServiceTask serviceTask, Long patid) {
+ private List wjInfo(ServiceTask serviceTask, Long patid, Boolean isFinish) {
+ //鐢ㄦ埛鐐瑰嚮浜嗗閾撅紝灏辩畻浠栭鍙栦簡
+ if (isFinish == true) {
+ ServiceSubtask serviceSubtask = new ServiceSubtask();
+ serviceSubtask.setSendstate(1L);
+ serviceSubtask.setPatid(patid);
+ serviceSubtask.setTaskid(serviceTask.getTaskid());
+ serviceSubtaskMapper.updateServiceSubtaskByPatId(serviceSubtask);
+ }
//閫氳繃妯℃澘ID鑾峰彇闂淇℃伅
SvyLibTemplateScript svyLibTemplateScript = new SvyLibTemplateScript();
- svyLibTemplateScript.setSvyid(Long.valueOf(serviceTask.getTemplateid()));
+ svyLibTemplateScript.setSvyid(Long.valueOf(serviceTask.getLibtemplateid()));
svyLibTemplateScript.setDelFlag("0");
List<SvyLibTemplateScript> svyLibTemplateScripts = svyLibTemplateScriptMapper.selectSvyLibTemplateScriptList(svyLibTemplateScript);
if (CollectionUtils.isEmpty(svyLibTemplateScripts) || svyLibTemplateScripts.size() == 0) {
@@ -267,10 +315,12 @@
}
}
//鏇挎崲鎮h�呬釜浜轰俊鎭暟鎹�
- svyLibTemplateScriptVO.setScriptContent(svyLibTemplateScriptVO.getScriptContent().replace("${name}", StringUtils.isNotEmpty(patArchive.getName()) ? patArchive.getName() : ""));
- svyLibTemplateScriptVO.setScriptContent(svyLibTemplateScriptVO.getScriptContent().replace("${dzz}", StringUtils.isNotEmpty(patArchive.getPlaceOfResidence()) ? patArchive.getPlaceOfResidence() : ""));
- svyLibTemplateScriptVO.setScriptContent(svyLibTemplateScriptVO.getScriptContent().replace("${dhh}", StringUtils.isNotEmpty(patArchive.getTelcode()) ? patArchive.getTelcode() : ""));
-
+ log.error("闂id锛歿}, 闂鍐呭锛歿}", svyLibTemplateScriptVO.getId(), svyLibTemplateScriptVO.getScriptContent());
+ if (StringUtils.isNotEmpty(svyLibTemplateScriptVO.getScriptContent())) {
+ svyLibTemplateScriptVO.setScriptContent(svyLibTemplateScriptVO.getScriptContent().replace("${name}", StringUtils.isNotEmpty(patArchive.getName()) ? patArchive.getName() : ""));
+ svyLibTemplateScriptVO.setScriptContent(svyLibTemplateScriptVO.getScriptContent().replace("${dzz}", StringUtils.isNotEmpty(patArchive.getPlaceOfResidence()) ? patArchive.getPlaceOfResidence() : ""));
+ svyLibTemplateScriptVO.setScriptContent(svyLibTemplateScriptVO.getScriptContent().replace("${dhh}", StringUtils.isNotEmpty(patArchive.getTelcode()) ? patArchive.getTelcode() : ""));
+ }
//鑾峰彇闂閫夐」
SvyLibTemplateTargetoption svyLibTemplateTargetoption = new SvyLibTemplateTargetoption();
svyLibTemplateTargetoption.setScriptid(svyLibTemplateScriptVO.getId());
@@ -278,10 +328,19 @@
svyLibTemplateScriptVO.setSvyLibTemplateTargetoptions(svyLibTemplateTargetoptions);
}
}
+ Collections.sort(svyLibTemplateScriptVOS, Comparator.comparingLong(SvyLibTemplateScriptVO::getSort));
return svyLibTemplateScriptVOS;
}
- private List xjInfo(Long templateId) {
+ private List xjInfo(Long templateId, Long taskid, Long patid, Boolean isFinish) {
+ if (isFinish == true) {
+ ServiceSubtask serviceSubtask = new ServiceSubtask();
+ serviceSubtask.setTaskid(taskid);
+ serviceSubtask.setPatid(patid);
+ serviceSubtask.setResult("瀹屾垚");
+ serviceSubtask.setFinishtime(new Date());
+ serviceSubtaskMapper.updateServiceSubtaskByCondition(serviceSubtask);
+ }
HeLibrary heLibrary = heLibraryMapper.selectHeLibraryById(Long.valueOf(templateId));
List list = new ArrayList();
list.add(heLibrary);
--
Gitblit v1.9.3