From 0b02577ab12ac83a0530b7e0495b513dd0cdabca Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期二, 02 七月 2024 11:25:08 +0800 Subject: [PATCH] 代码提交 --- smartor/src/main/java/com/smartor/service/impl/SvyTaskServiceImpl.java | 113 ++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 97 insertions(+), 16 deletions(-) diff --git a/smartor/src/main/java/com/smartor/service/impl/SvyTaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/SvyTaskServiceImpl.java index 6f74476..830c70d 100644 --- a/smartor/src/main/java/com/smartor/service/impl/SvyTaskServiceImpl.java +++ b/smartor/src/main/java/com/smartor/service/impl/SvyTaskServiceImpl.java @@ -1,13 +1,22 @@ package com.smartor.service.impl; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; import com.ruoyi.common.utils.DateUtils; -import com.smartor.domain.SvyTask; -import com.smartor.mapper.SvyTaskMapper; +import com.ruoyi.common.utils.DtoConversionUtils; +import com.smartor.domain.*; +import com.smartor.mapper.*; import com.smartor.service.ISvyTaskService; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang3.StringUtils; 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涓氬姟灞傚鐞� @@ -15,11 +24,23 @@ * @author ruoyi * @date 2024-06-12 */ +@Slf4j @Service -public class SvyTaskServiceImpl implements ISvyTaskService -{ +public class SvyTaskServiceImpl implements ISvyTaskService { @Autowired private SvyTaskMapper svyTaskMapper; + + @Autowired + private SvyLibTemplateScriptMapper svyLibTemplateScriptMapper; + + @Autowired + private SvyLibTemplateTargetoptionMapper svyLibTemplateTargetoptionMapper; + + @Autowired + private SvyTaskSingleMapper svyTaskSingleMapper; + + @Autowired + private PatArchiveMapper patArchiveMapper; /** * 鏌ヨ缁煎悎闂嵎浠诲姟锛堜换鍔★級 @@ -28,8 +49,7 @@ * @return 缁煎悎闂嵎浠诲姟锛堜换鍔★級 */ @Override - public SvyTask selectSvyTaskByTaskid(Long taskid) - { + public SvyTask selectSvyTaskByTaskid(Long taskid) { return svyTaskMapper.selectSvyTaskByTaskid(taskid); } @@ -40,8 +60,7 @@ * @return 缁煎悎闂嵎浠诲姟锛堜换鍔★級 */ @Override - public List<SvyTask> selectSvyTaskList(SvyTask svyTask) - { + public List<SvyTask> selectSvyTaskList(SvyTask svyTask) { return svyTaskMapper.selectSvyTaskList(svyTask); } @@ -52,8 +71,7 @@ * @return 缁撴灉 */ @Override - public int insertSvyTask(SvyTask svyTask) - { + public int insertSvyTask(SvyTask svyTask) { svyTask.setCreateTime(DateUtils.getNowDate()); return svyTaskMapper.insertSvyTask(svyTask); } @@ -65,8 +83,7 @@ * @return 缁撴灉 */ @Override - public int updateSvyTask(SvyTask svyTask) - { + public int updateSvyTask(SvyTask svyTask) { svyTask.setUpdateTime(DateUtils.getNowDate()); return svyTaskMapper.updateSvyTask(svyTask); } @@ -78,8 +95,7 @@ * @return 缁撴灉 */ @Override - public int deleteSvyTaskByTaskids(Long[] taskids) - { + public int deleteSvyTaskByTaskids(Long[] taskids) { return svyTaskMapper.deleteSvyTaskByTaskids(taskids); } @@ -90,8 +106,73 @@ * @return 缁撴灉 */ @Override - public int deleteSvyTaskByTaskid(Long taskid) - { + public int deleteSvyTaskByTaskid(Long taskid) { return svyTaskMapper.deleteSvyTaskByTaskid(taskid); } + + @Override + public List<SvyLibTemplateScriptVO> getScriptInfoByCondition(Long taskid, Long patid) { + //閫氳繃浠诲姟ID鑾峰彇妯℃澘ID + SvyTask svyTask = selectSvyTaskByTaskid(taskid); + + //閫氳繃妯℃澘ID鑾峰彇闂淇℃伅 + SvyLibTemplateScript svyLibTemplateScript = new SvyLibTemplateScript(); + svyLibTemplateScript.setSvyid(Long.valueOf(svyTask.getTemplateid())); + svyLibTemplateScript.setDelFlag("0"); + List<SvyLibTemplateScript> svyLibTemplateScripts = svyLibTemplateScriptMapper.selectSvyLibTemplateScriptList(svyLibTemplateScript); + if (CollectionUtils.isEmpty(svyLibTemplateScripts) || svyLibTemplateScripts.size() == 0) { + log.info("ivrLibaTemplateScripts涓虹┖浜嗭紝璇峰敖蹇仈绯荤鐞嗗憳澶勭悊"); + return new ArrayList<>(); + } + List<SvyLibTemplateScriptVO> svyLibTemplateScriptVOS = DtoConversionUtils.sourceToTarget(svyLibTemplateScripts, SvyLibTemplateScriptVO.class); + + //鑾峰彇鎮h�呬俊鎭� + PatArchive patArchive = patArchiveMapper.selectPatArchiveByPatid(patid); + + //閫氳繃鎮h�呬俊鎭拰浠诲姟淇℃伅涓殑textParam瀵归棶棰樹腑鐨勫彉閲忚繘琛屽~鍏� + ObjectMapper objectMapper = new ObjectMapper(); + Map<String, Map<String, String>> ivrTaskMap = null; + try { + ivrTaskMap = objectMapper.readValue(svyTask.getTextParam(), Map.class); + } catch (JsonProcessingException e) { + e.printStackTrace(); + } + List<Map<String, String>> mapList = new ArrayList<>(); + + for (Map<String, String> map : ivrTaskMap.values()) { + mapList.add(map); + } + + //灏嗘ā鏉块棶棰樿瘽鏈噷鐨勯�氶厤绗︽浛鎹� + for (SvyLibTemplateScriptVO svyLibTemplateScriptVO : svyLibTemplateScriptVOS) { + if (StringUtils.isNotEmpty(svyLibTemplateScriptVO.getScriptContent())) { + for (Map<String, String> map : mapList) { + for (String key : map.keySet()) { + + svyLibTemplateScriptVO.setScriptContent(svyLibTemplateScriptVO.getScriptContent().replace(key, StringUtils.isNotEmpty(map.get(key)) ? map.get(key) : "")); + } + } + //鏇挎崲鎮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() : "")); + + //鑾峰彇闂閫夐」 + SvyLibTemplateTargetoption svyLibTemplateTargetoption = new SvyLibTemplateTargetoption(); + svyLibTemplateTargetoption.setScriptid(svyLibTemplateScriptVO.getId()); + List<SvyLibTemplateTargetoption> svyLibTemplateTargetoptions = svyLibTemplateTargetoptionMapper.selectSvyLibTemplateTargetoptionList(svyLibTemplateTargetoption); + svyLibTemplateScriptVO.setSvyLibTemplateTargetoptions(svyLibTemplateTargetoptions); + } + } + + //鍙鎵撳紑浜嗛〉闈㈠氨绠楁垚鍔� + SvyTaskSingle svyTaskSingle = new SvyTaskSingle(); + svyTaskSingle.setTaskid(taskid); + svyTaskSingle.setPatid(patid); + svyTaskSingle.setResult("success"); + svyTaskSingle.setFinishtime(new Date()); + svyTaskSingleMapper.updateSvyTaskSingle(svyTaskSingle); + + return svyLibTemplateScriptVOS; + } } -- Gitblit v1.9.3