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/ServiceSubtaskServiceImpl.java | 356 +++++++++++++++++++++++++++++++++-------------------------- 1 files changed, 200 insertions(+), 156 deletions(-) diff --git a/smartor/src/main/java/com/smartor/service/impl/IvrTaskSingleServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java similarity index 71% rename from smartor/src/main/java/com/smartor/service/impl/IvrTaskSingleServiceImpl.java rename to smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java index c6bb3b5..a8e83f2 100644 --- a/smartor/src/main/java/com/smartor/service/impl/IvrTaskSingleServiceImpl.java +++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java @@ -8,16 +8,18 @@ import com.ruoyi.common.exception.base.BaseException; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.DtoConversionUtils; +import com.ruoyi.common.utils.RSAPublicKeyExample; import com.smartor.config.PhoneUtils; import com.smartor.domain.*; import com.smartor.mapper.*; -import com.smartor.service.IIvrTaskService; -import com.smartor.service.IIvrTaskSingleService; +import com.smartor.service.IServiceSubtaskService; +import com.smartor.service.IServiceTaskService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -35,27 +37,35 @@ */ @Slf4j @Service -public class IvrTaskSingleServiceImpl implements IIvrTaskSingleService { +public class ServiceSubtaskServiceImpl implements IServiceSubtaskService { @Autowired - private IvrTaskSingleMapper ivrTaskSingleMapper; + private ServiceSubtaskMapper serviceSubtaskMapper; @Autowired - private IIvrTaskService ivrTaskService; + private IvrTaskcalldetailMapper ivrTaskcalldetailMapper; + @Autowired + private SvyTasksingledetailMapper svyTasksingledetailMapper; @Autowired - private IvrTaskTemplateTargetoptionMapper ivrTaskScriptTargetoptionMapper; + private IServiceTaskService serviceTaskService; @Autowired - private IvrLibaTemplateScriptMapper ivrTaskTemplateScriptMapper; + private IvrTaskTemplateTargetoptionMapper serviceTaskScriptTargetoptionMapper; @Autowired - private IvrTaskVisitResultMapper ivrTaskVisitResultMapper; + private IvrLibaTemplateScriptMapper ivrLibaTemplateScriptMapper; + + @Autowired + private IvrTaskVisitResultMapper serviceTaskVisitResultMapper; @Autowired private RedisCache redisCache; @Autowired private IvrLibaExtemplatescriptMapper ivrLibaExtemplatescriptMapper; + + @Value("${pri_key}") + private String pri_key; /** @@ -65,117 +75,119 @@ * @return 鍗曚竴浠诲姟锛堥殢璁匡級 */ @Override - public IvrTaskSingle selectIvrTaskcallById(Long id) { - return ivrTaskSingleMapper.selectIvrTaskcallById(id); + public ServiceSubtask selectServiceSubtaskById(Long id) { + return serviceSubtaskMapper.selectServiceSubtaskById(id); } /** * 鏌ヨ鍗曚竴浠诲姟锛堥殢璁匡級鍒楄〃 * - * @param ivrTaskcall 鍗曚竴浠诲姟锛堥殢璁匡級 + * @param ServiceSubtask 鍗曚竴浠诲姟锛堥殢璁匡級 * @return 鍗曚竴浠诲姟锛堥殢璁匡級 */ @Override - public List<IvrTaskSingle> selectIvrTaskcallList(IvrTaskSingle ivrTaskcall) { - return ivrTaskSingleMapper.selectIvrTaskcallList(ivrTaskcall); + public List<ServiceSubtask> selectServiceSubtaskList(ServiceSubtask ServiceSubtask) { + return serviceSubtaskMapper.selectServiceSubtaskList(ServiceSubtask); } @Override - public IvrTaskVO queryTaskByCondition(IvrTaskSingle ivrTaskcall) { + public ServiceTaskVO queryTaskByCondition(ServiceSubtask ServiceSubtask) { //瀹氫箟鎮h�呬笌鍗曚竴浠诲姟鍏宠仈琛ㄩ泦鍚� List<PatTaskRelevance> patTaskRelevances = new ArrayList<>(); - List<IvrTaskSingle> list = selectIvrTaskcallList(ivrTaskcall); + List<ServiceSubtask> list = selectServiceSubtaskList(ServiceSubtask); if (CollectionUtils.isEmpty(list) || list.size() == 0) { - return new IvrTaskVO(); + return new ServiceTaskVO(); } - IvrTask ivrTask = ivrTaskService.selectIvrTaskByTaskid(ivrTaskcall.getTaskid()); - //灏嗘煡鍑烘潵鐨勬暟鎹�掑叆ivrTasksingleVO涓� - IvrTaskVO ivrTaskVO = DtoConversionUtils.sourceToTarget(list.get(0), IvrTaskVO.class); - ivrTaskVO.setShowDate(ivrTask.getShowDate()); - ivrTaskVO.setShowTimeMorn(ivrTask.getShowTimeMorn()); - ivrTaskVO.setShowTimeNoon(ivrTask.getShowTimeNoon()); - ivrTaskVO.setShowTimeNight(ivrTask.getShowTimeNight()); - ivrTaskVO.setPreachform(ivrTask.getPreachform()); - String sendTimeSlot = ivrTask.getSendTimeSlot(); + ServiceTask serviceTask = serviceTaskService.selectServiceTaskByTaskid(ServiceSubtask.getTaskid()); + //灏嗘煡鍑烘潵鐨勬暟鎹�掑叆ServiceSubtaskVO涓� + ServiceTaskVO serviceTaskVO = DtoConversionUtils.sourceToTarget(list.get(0), ServiceTaskVO.class); + serviceTaskVO.setShowDate(serviceTask.getShowDate()); + serviceTaskVO.setShowTimeMorn(serviceTask.getShowTimeMorn()); + serviceTaskVO.setShowTimeNoon(serviceTask.getShowTimeNoon()); + serviceTaskVO.setShowTimeNight(serviceTask.getShowTimeNight()); + serviceTaskVO.setPreachform(serviceTask.getPreachform()); + String sendTimeSlot = serviceTask.getSendTimeSlot(); ObjectMapper objectMapper = new ObjectMapper(); try { //鑾峰彇鍒板彂閫佹椂闂寸殑闆嗗悎 if (com.ruoyi.common.utils.StringUtils.isNotEmpty(sendTimeSlot)) { List<TaskSendTimeVO> taskSendTimeVOList = objectMapper.readValue(sendTimeSlot, List.class); - ivrTaskVO.setSendTimeslot(taskSendTimeVOList); - ivrTaskVO.setSendType(ivrTask.getSendType()); + serviceTaskVO.setSendTimeslot(taskSendTimeVOList); + serviceTaskVO.setSendType(serviceTask.getSendType()); } //鏂囨湰鍙橀噺鍙傛暟 - if (com.ruoyi.common.utils.StringUtils.isNotEmpty(ivrTask.getTextParam())) { - Map<String, Map<String, String>> textParam = objectMapper.readValue(ivrTask.getTextParam(), Map.class); - ivrTaskVO.setTextParam(textParam); + if (com.ruoyi.common.utils.StringUtils.isNotEmpty(serviceTask.getTextParam())) { + Map<String, Map<String, String>> textParam = objectMapper.readValue(serviceTask.getTextParam(), Map.class); + serviceTaskVO.setTextParam(textParam); } } catch (JsonProcessingException e) { e.printStackTrace(); } - for (IvrTaskSingle ivrTaskcall1 : list) { + for (ServiceSubtask serviceSubtask1 : list) { PatTaskRelevance patTaskRelevance = new PatTaskRelevance(); - if (!ivrTaskcall1.getHospType().equals("2")) { - log.info("闅忚鏌ヨ涓嶄负鍑洪櫌锛寋}", ivrTaskcall1.getHospType()); + if (!serviceSubtask1.getHospType().equals("2")) { + log.info("闅忚鏌ヨ涓嶄负鍑洪櫌锛寋}", serviceSubtask1.getHospType()); //鑾峰彇鍒版偅鑰呬俊鎭紝骞舵斁鍏ュ埌闆嗗悎涓� - patTaskRelevance.setName(ivrTaskcall1.getSendname()); - patTaskRelevance.setAge(ivrTaskcall1.getAge()); - patTaskRelevance.setSfzh(ivrTaskcall1.getSfzh()); - patTaskRelevance.setPhone(ivrTaskcall1.getPhone()); - patTaskRelevance.setAddr(ivrTaskcall1.getAddr()); - patTaskRelevance.setDiagname(ivrTaskcall1.getDiagname()); - patTaskRelevance.setPatid(ivrTaskcall1.getPatid()); + patTaskRelevance.setName(serviceSubtask1.getSendname()); + patTaskRelevance.setAge(serviceSubtask1.getAge()); + patTaskRelevance.setSfzh(serviceSubtask1.getSfzh()); + patTaskRelevance.setPhone(serviceSubtask1.getPhone()); + patTaskRelevance.setAddr(serviceSubtask1.getAddr()); + patTaskRelevance.setDiagname(serviceSubtask1.getDiagname()); + patTaskRelevance.setPatid(serviceSubtask1.getPatid()); + patTaskRelevance.setSendState(serviceSubtask1.getSendstate()); patTaskRelevances.add(patTaskRelevance); } - if (ivrTaskcall1.getHospType().equals("2")) { - log.info("闅忚鏌ヨ涓哄嚭闄紝{}", ivrTaskcall1.getHospType()); - patTaskRelevance.setName(ivrTaskcall1.getSendname()); - patTaskRelevance.setAge(ivrTaskcall1.getAge()); - patTaskRelevance.setSfzh(ivrTaskcall1.getSfzh()); - patTaskRelevance.setPhone(ivrTaskcall1.getPhone()); - patTaskRelevance.setAddr(ivrTaskcall1.getAddr()); - patTaskRelevance.setDeptName(ivrTaskcall1.getDeptname()); - patTaskRelevance.setBedNo(ivrTaskcall1.getBedNo()); - patTaskRelevance.setDiagname(ivrTaskcall1.getDiagname()); - patTaskRelevance.setPatid(ivrTaskcall1.getPatid()); + if (serviceSubtask1.getHospType().equals("2")) { + log.info("闅忚鏌ヨ涓哄嚭闄紝{}", serviceSubtask1.getHospType()); + patTaskRelevance.setName(serviceSubtask1.getSendname()); + patTaskRelevance.setAge(serviceSubtask1.getAge()); + patTaskRelevance.setSfzh(serviceSubtask1.getSfzh()); + patTaskRelevance.setPhone(serviceSubtask1.getPhone()); + patTaskRelevance.setAddr(serviceSubtask1.getAddr()); + patTaskRelevance.setDeptName(serviceSubtask1.getDeptname()); + patTaskRelevance.setBedNo(serviceSubtask1.getBedNo()); + patTaskRelevance.setDiagname(serviceSubtask1.getDiagname()); + patTaskRelevance.setPatid(serviceSubtask1.getPatid()); + patTaskRelevance.setSendState(serviceSubtask1.getSendstate()); patTaskRelevances.add(patTaskRelevance); } } - ivrTaskVO.setPatTaskRelevances(patTaskRelevances); - return ivrTaskVO; + serviceTaskVO.setPatTaskRelevances(patTaskRelevances); + return serviceTaskVO; } @Override - public List<IvrTaskSingle> patItem(IvrTaskSingle ivrTaskSingle) { + public List<ServiceSubtask> patItem(ServiceSubtask serviceSubtask) { - return this.selectIvrTaskcallList(ivrTaskSingle); + return this.selectServiceSubtaskList(serviceSubtask); } /** * 鏂板鍗曚竴浠诲姟锛堥殢璁匡級 * - * @param ivrTaskcall 鍗曚竴浠诲姟锛堥殢璁匡級 + * @param serviceSubtask 鍗曚竴浠诲姟锛堥殢璁匡級 * @return 缁撴灉 */ @Override - public int insertIvrTaskcall(IvrTaskSingle ivrTaskcall) { - ivrTaskcall.setCreateTime(DateUtils.getNowDate()); - return ivrTaskSingleMapper.insertIvrTaskcall(ivrTaskcall); + public int insertServiceSubtask(ServiceSubtask serviceSubtask) { + serviceSubtask.setCreateTime(DateUtils.getNowDate()); + return serviceSubtaskMapper.insertServiceSubtask(serviceSubtask); } /** * 淇敼鍗曚竴浠诲姟锛堥殢璁匡級 * - * @param ivrTaskcall 鍗曚竴浠诲姟锛堥殢璁匡級 + * @param serviceSubtask 鍗曚竴浠诲姟锛堥殢璁匡級 * @return 缁撴灉 */ @Override - public Boolean updateIvrTaskcall(IvrTaskSingle ivrTaskcall) { - ivrTaskcall.setUpdateTime(DateUtils.getNowDate()); - return ivrTaskSingleMapper.updateIvrTaskcall(ivrTaskcall); + public Boolean updateServiceSubtask(ServiceSubtask serviceSubtask) { + serviceSubtask.setUpdateTime(DateUtils.getNowDate()); + return serviceSubtaskMapper.updateServiceSubtask(serviceSubtask); } /** @@ -184,10 +196,10 @@ * @return 缁撴灉 */ @Override - public int deleteIvrTaskcallByIds(Long[] ids) { + public int deleteServiceSubtaskByIds(Long[] ids) { Integer i = 0; for (Long id : ids) { - i = ivrTaskSingleMapper.deleteIvrTaskcallById(id); + i = serviceSubtaskMapper.deleteServiceSubtaskById(id); } return i; } @@ -199,84 +211,83 @@ */ @Transactional(rollbackFor = Exception.class) @Override - public int insertOrUpdateTask(IvrTaskVO ivrTaskVO) { - if (ObjectUtils.isEmpty(ivrTaskVO)) { + public int insertOrUpdateTask(ServiceTaskVO serviceTaskVO) { + if (ObjectUtils.isEmpty(serviceTaskVO)) { log.info("浠诲姟鍏ュ弬涓虹┖锛岃妫�鏌ュ叆鍙�"); throw new BaseException("浠诲姟鍏ュ弬涓虹┖锛岃妫�鏌ュ叆鍙�"); } Integer integer = 1; - IvrTask ivrTask = DtoConversionUtils.sourceToTarget(ivrTaskVO, IvrTask.class); - ivrTask.setTextParam(JSON.toJSONString(ivrTaskVO.getTextParam())); - if (ivrTaskVO.getIsoperation() != null && ivrTaskVO.getIsoperation() == 1) { + ServiceTask serviceTask = DtoConversionUtils.sourceToTarget(serviceTaskVO, ServiceTask.class); + serviceTask.setTextParam(JSON.toJSONString(serviceTaskVO.getTextParam())); + if (serviceTaskVO.getIsoperation() != null && serviceTaskVO.getIsoperation() == 1) { //寰�浠诲姟琛ㄤ腑锛屾柊澧炰换鍔� - if (ObjectUtils.isNotEmpty(ivrTaskVO.getSendTimeslot())) - ivrTask.setSendTimeSlot(JSON.toJSONString(ivrTaskVO.getSendTimeslot())); - if (ivrTask.getSendState() == null) ivrTask.setSendState(1); - ivrTask.setTemplateid(ivrTaskVO.getLibtemplateid()); - ivrTaskService.insertIvrTask(ivrTask); + if (ObjectUtils.isNotEmpty(serviceTaskVO.getSendTimeslot())) + serviceTask.setSendTimeSlot(JSON.toJSONString(serviceTaskVO.getSendTimeslot())); + if (serviceTask.getSendState() == null) serviceTask.setSendState(1); + serviceTask.setTemplateid(serviceTaskVO.getLibtemplateid()); + serviceTaskService.insertServiceTask(serviceTask); //灏嗕换鍔′俊鎭斁鍒版湇鍔¤〃涓� - IvrTaskSingle ivrTaskcall = DtoConversionUtils.sourceToTarget(ivrTaskVO, IvrTaskSingle.class); - ivrTaskcall.setTaskid(ivrTask.getTaskid().longValue()); + ServiceSubtask serviceSubtask = DtoConversionUtils.sourceToTarget(serviceTaskVO, ServiceSubtask.class); + serviceSubtask.setTaskid(serviceTask.getTaskid().longValue()); //鏂板 - if (CollectionUtils.isNotEmpty(ivrTaskVO.getPatTaskRelevances())) { - for (PatTaskRelevance patTaskRelevance : ivrTaskVO.getPatTaskRelevances()) { + if (CollectionUtils.isNotEmpty(serviceTaskVO.getPatTaskRelevances())) { + for (PatTaskRelevance patTaskRelevance : serviceTaskVO.getPatTaskRelevances()) { //灏嗕换鍔′俊鎭柊澧炲埌闅忚鏈嶅姟琛ㄤ腑 - ivrTaskcall.setSendname(patTaskRelevance.getName()); - ivrTaskcall.setAge(patTaskRelevance.getAge()); - ivrTaskcall.setSfzh(patTaskRelevance.getSfzh()); - ivrTaskcall.setPhone(patTaskRelevance.getPhone()); - ivrTaskcall.setAddr(patTaskRelevance.getAddr()); - ivrTaskcall.setPatid(patTaskRelevance.getPatid()); - ivrTaskcall.setCreateTime(DateUtils.getNowDate()); - ivrTaskcall.setSendstate(1L); - ivrTaskcall.setType(ivrTaskVO.getHospType()); - ivrTaskSingleMapper.insertIvrTaskcall(ivrTaskcall); - integer = ivrTaskcall.getId().intValue(); + serviceSubtask.setSendname(patTaskRelevance.getName()); + serviceSubtask.setAge(patTaskRelevance.getAge()); + serviceSubtask.setSfzh(patTaskRelevance.getSfzh()); + serviceSubtask.setPhone(patTaskRelevance.getPhone()); + serviceSubtask.setAddr(patTaskRelevance.getAddr()); + serviceSubtask.setPatid(patTaskRelevance.getPatid()); + serviceSubtask.setCreateTime(DateUtils.getNowDate()); + serviceSubtask.setSendstate(1L); + serviceSubtask.setType(serviceTaskVO.getHospType()); + serviceSubtask.setHospType(patTaskRelevance.getHospType()); + serviceSubtaskMapper.insertServiceSubtask(serviceSubtask); + integer = serviceSubtask.getId().intValue(); } } - } else if (ivrTaskVO.getIsoperation() != null && ivrTaskVO.getIsoperation() == 2) { + } else if (serviceTaskVO.getIsoperation() != null && serviceTaskVO.getIsoperation() == 2) { //浠诲姟淇敼 - if (ObjectUtils.isNotEmpty(ivrTaskVO.getSendTimeslot())) - ivrTask.setSendTimeSlot(JSON.toJSONString(ivrTaskVO.getSendTimeslot())); + if (ObjectUtils.isNotEmpty(serviceTaskVO.getSendTimeslot())) + serviceTask.setSendTimeSlot(JSON.toJSONString(serviceTaskVO.getSendTimeslot())); //淇敼鎿嶄綔锛岄渶瑕佸皢stopState鐘舵��+1 - IvrTask ivrTask1 = ivrTaskService.selectIvrTaskByTaskid(ivrTask.getTaskid()); - ivrTask.setStopState(ivrTask1.getStopState() + 1); - ivrTask.setTemplateid(ivrTaskVO.getLibtemplateid()); - ivrTaskService.updateIvrTask(ivrTask); + ServiceTask serviceTask1 = serviceTaskService.selectServiceTaskByTaskid(serviceTask.getTaskid()); + serviceTask.setStopState(serviceTask1.getStopState() + 1); + serviceTask.setTemplateid(serviceTaskVO.getLibtemplateid()); + serviceTaskService.updateServiceTask(serviceTask); - if (CollectionUtils.isNotEmpty(ivrTaskVO.getPatTaskRelevances())) { - for (PatTaskRelevance patTaskRelevance : ivrTaskVO.getPatTaskRelevances()) { + if (CollectionUtils.isNotEmpty(serviceTaskVO.getPatTaskRelevances())) { + for (PatTaskRelevance patTaskRelevance : serviceTaskVO.getPatTaskRelevances()) { - IvrTaskSingle ivrTaskcall = DtoConversionUtils.sourceToTarget(ivrTaskVO, IvrTaskSingle.class); - ivrTaskcall.setSendname(patTaskRelevance.getName()); - ivrTaskcall.setAge(patTaskRelevance.getAge()); - ivrTaskcall.setSfzh(patTaskRelevance.getSfzh()); - ivrTaskcall.setPhone(patTaskRelevance.getPhone()); - ivrTaskcall.setAddr(patTaskRelevance.getAddr()); - ivrTaskcall.setPatid(patTaskRelevance.getPatid()); - ivrTaskcall.setType(ivrTaskVO.getHospType()); - ivrTaskcall.setCreateTime(DateUtils.getNowDate()); - - ivrTaskcall.setTextParam(new Gson().toJson(ivrTaskVO.getTextParam())); + ServiceSubtask serviceSubtask = DtoConversionUtils.sourceToTarget(serviceTaskVO, ServiceSubtask.class); + serviceSubtask.setSendname(patTaskRelevance.getName()); + serviceSubtask.setAge(patTaskRelevance.getAge()); + serviceSubtask.setSfzh(patTaskRelevance.getSfzh()); + serviceSubtask.setPhone(patTaskRelevance.getPhone()); + serviceSubtask.setAddr(patTaskRelevance.getAddr()); + serviceSubtask.setPatid(patTaskRelevance.getPatid()); + serviceSubtask.setType(serviceTaskVO.getHospType()); + serviceSubtask.setCreateTime(DateUtils.getNowDate()); + serviceSubtask.setHospType(patTaskRelevance.getHospType()); + serviceSubtask.setTextParam(new Gson().toJson(serviceTaskVO.getTextParam())); if (patTaskRelevance.getIsoperation() != null) { if (patTaskRelevance.getIsoperation() == 2) - ivrTaskSingleMapper.updateIvrTaskcallByCondition(ivrTaskcall); + serviceSubtaskMapper.updateServiceSubtaskByCondition(serviceSubtask); if (patTaskRelevance.getIsoperation() == 1) { - ivrTaskcall.setSendstate(1L); - ivrTaskSingleMapper.insertIvrTaskcall(ivrTaskcall); + serviceSubtask.setSendstate(1L); + serviceSubtaskMapper.insertServiceSubtask(serviceSubtask); } if (patTaskRelevance.getIsoperation() == 3) // 閫氳繃taskid鍜宲atid鍘诲垹闄よ鏉℃暟鎹� - ivrTaskSingleMapper.deleteIvrTaskcallByCondition(ivrTaskVO.getTaskid(), patTaskRelevance.getPatid()); + serviceSubtaskMapper.deleteServiceSubtaskByCondition(serviceTaskVO.getTaskid(), patTaskRelevance.getPatid()); } - integer = ivrTaskcall.getTaskid().intValue(); + integer = serviceSubtask.getTaskid().intValue(); } } } - - return integer; } @@ -303,14 +314,14 @@ } Map<String, Object> map = redisCache.getCacheObject(phoneCallBackVO.getUuid()); - IvrTaskSingle ivrTaskcall = (IvrTaskSingle) map.get("ivrTaskSingle"); - List<IvrTaskTemplateScriptVO> ivrTaskTemplateScriptVOs = (List<IvrTaskTemplateScriptVO>) map.get("ivrTaskTemplateScriptVO"); + ServiceSubtask serviceSubtask = (ServiceSubtask) map.get("ServiceSubtask"); + List<IvrTaskTemplateScriptVO> IvrTaskTemplateScriptVOs = (List<IvrTaskTemplateScriptVO>) map.get("IvrTaskTemplateScriptVO"); //灏唘uid鏇存柊鍒版暟鎹簱涓� - ivrTaskcall.setSenduuid(phoneCallBackVO.getUuid()); - ivrTaskSingleMapper.updateIvrTaskcall(ivrTaskcall); + serviceSubtask.setSenduuid(phoneCallBackVO.getUuid()); + serviceSubtaskMapper.updateServiceSubtask(serviceSubtask); //鑾峰彇妯℃澘淇℃伅 - IvrTaskTemplateVO ivrTaskTemplateVO = redisCache.getCacheObject(phoneCallBackVO.getUuid() + "ivrTaskTemplateVO"); + IvrTaskTemplateVO ivrTaskTemplateVO = redisCache.getCacheObject(phoneCallBackVO.getUuid() + "IvrTaskTemplateVO"); //璇煶璇嗗埆缁撴灉涓婃姤鎺ュ彛: 3 Integer noVoice = redisCache.getCacheObject(phoneCallBackVO.getUuid() + "noVoice"); @@ -325,7 +336,7 @@ //鍒ゆ柇noVoice鏄惁宸茬粡鍒颁簡鏈�澶у�� if (noVoice == ivrTaskTemplateVO.getNoVoiceNum().intValue()) { //宸茬粡闂簡瀵瑰簲鐨勯亶鏁帮紝灏卞垽鏂槸鍚﹁繕鏈変笅涓�棰� - if (nowQuestion.getTargetid() == ivrTaskTemplateScriptVOs.size()) { + if (nowQuestion.getTargetid() == IvrTaskTemplateScriptVOs.size()) { //娌℃湁涓嬩竴棰樹簡锛屽氨鎸傛柇鐢佃瘽锛屾挱鏀剧粨鏉熻 redisCache.setCacheObject(phoneCallBackVO.getUuid() + "hangup", 1, 120, TimeUnit.MINUTES); phoneUtils.ttsPlayback(ivrTaskTemplateVO.getRevisitAfter(), phoneCallBackVO.getUuid()); @@ -333,7 +344,7 @@ } else { //鏈変笅涓�棰� redisCache.setCacheObject(phoneCallBackVO.getUuid() + "noVoice", 0, 120, TimeUnit.MINUTES); - IvrTaskTemplateScriptVO nextQuestion = getNextQuestion(ivrTaskTemplateScriptVOs, nowQuestion); + IvrTaskTemplateScriptVO nextQuestion = getNextQuestion(IvrTaskTemplateScriptVOs, nowQuestion); // 闂锛� 鍘昏皟鐢ㄢ�渢ts鍚堟垚鍜屾挱鏀锯�濇帴鍙� String date = simpleDateFormat1.format(new Date()); log.info("鍘昏皟鐢╰ts鍚堟垚鍜屾挱鏀炬帴鍙�: {},uuid涓猴細{}", date, phoneCallBackVO.getUuid()); @@ -372,35 +383,35 @@ //璇存槑鍖归厤姝g‘浜� //杩欓噷搴旇鍏堝垽鏂被鍨嬶紝鍘诲啀淇敼锛岃缃甀sUserOperation鏄崟閫夐鐨勬敼娉� nowQuestion.getIvrTaskScriptTargetoptionList().get(j).setIsUserOperation(true); - ivrTaskScriptTargetoptionMapper.updateIvrTaskTemplateTargetoption(nowQuestion.getIvrTaskScriptTargetoptionList().get(j)); + serviceTaskScriptTargetoptionMapper.updateIvrTaskTemplateTargetoption(nowQuestion.getIvrTaskScriptTargetoptionList().get(j)); //灏嗛潤榛樼疆涓�0 redisCache.setCacheObject(phoneCallBackVO.getUuid() + "noVoice", 0, 120, TimeUnit.MINUTES); redisCache.setCacheObject(phoneCallBackVO.getUuid() + "mateNum", 0, 120, TimeUnit.MINUTES); //灏嗘偅鑰呯殑鍥炵鍐欒繘琛ㄩ噷 - IvrTaskVisitResult ivrTaskVisitResult = DtoConversionUtils.sourceToTarget(ivrTaskcall, IvrTaskVisitResult.class); - ivrTaskVisitResult.setId(null); - ivrTaskVisitResult.setQuestion(nowQuestion.getQuestionText()); - ivrTaskVisitResult.setPatientAnswer(phoneCallBackVO.getTextResult()); - ivrTaskVisitResult.setCreateTime(new Date()); - ivrTaskVisitResult.setOptionResult(nowQuestion.getIvrTaskScriptTargetoptionList().get(j).getTargetvalue()); - ivrTaskVisitResultMapper.insertIvrTaskVisitResult(ivrTaskVisitResult); + IvrTaskVisitResult serviceTaskVisitResult = DtoConversionUtils.sourceToTarget(serviceSubtask, IvrTaskVisitResult.class); + serviceTaskVisitResult.setId(null); + serviceTaskVisitResult.setQuestion(nowQuestion.getQuestionText()); + serviceTaskVisitResult.setPatientAnswer(phoneCallBackVO.getTextResult()); + serviceTaskVisitResult.setCreateTime(new Date()); + serviceTaskVisitResult.setOptionResult(nowQuestion.getIvrTaskScriptTargetoptionList().get(j).getTargetvalue()); + serviceTaskVisitResultMapper.insertIvrTaskVisitResult(serviceTaskVisitResult); //灏嗗尮閰嶅埌鐨勬爣璇嗘敼鎴恡rue isppd = true; //鑾峰彇涓嬩竴棰� Long nextQuestion = nowQuestion.getIvrTaskScriptTargetoptionList().get(j).getNextQuestion(); - for (IvrTaskTemplateScriptVO script : ivrTaskTemplateScriptVOs) { + for (IvrTaskTemplateScriptVO script : IvrTaskTemplateScriptVOs) { if (script.getTargetid() == nextQuestion) { QuestionMessage questionMessage = new QuestionMessage(); questionMessage.setNowQuestion(script); - questionMessage.setQuestionList(ivrTaskTemplateScriptVOs); + questionMessage.setQuestionList(IvrTaskTemplateScriptVOs); redisCache.setCacheObject(phoneCallBackVO.getUuid() + "returnQues", questionMessage, 120, TimeUnit.MINUTES); phoneUtils.ttsPlayback(script.getQuestionText(), phoneCallBackVO.getUuid()); return; - } else if (nextQuestion > ivrTaskTemplateScriptVOs.size()) { + } else if (nextQuestion > IvrTaskTemplateScriptVOs.size()) { //娌℃湁涓嬩竴棰樹簡锛屽氨缁撴潫浜� String date = simpleDateFormat1.format(new Date()); log.error("娌℃湁涓嬩竴棰樹簡锛屽氨缁撴潫浜�: {},uuid涓猴細{}", date, phoneCallBackVO.getUuid()); @@ -430,10 +441,10 @@ //鏃犲尮閰嶆鏁板幓鍒ゆ柇鏄惁鍒版渶澶ц闂鏁帮紝骞朵笖鎵�鏈夌殑閫夐」閮藉尮閰嶅畬浜� if (mateNum == ivrTaskTemplateVO.getMateNum().intValue()) { //濡傛灉涓嬩竴棰樹负绌�.鍒欐柊鐨勬暟鎹繑鍥�,骞跺姞涓婃劅璋㈣ - if (nowQuestion.getTargetid() < ivrTaskTemplateScriptVOs.size()) { + if (nowQuestion.getTargetid() < IvrTaskTemplateScriptVOs.size()) { QuestionMessage questionMessage = new QuestionMessage(); - IvrTaskTemplateScriptVO nextQuestion = getNextQuestion(ivrTaskTemplateScriptVOs, nowQuestion); - questionMessage.setQuestionList(ivrTaskTemplateScriptVOs); + IvrTaskTemplateScriptVO nextQuestion = getNextQuestion(IvrTaskTemplateScriptVOs, nowQuestion); + questionMessage.setQuestionList(IvrTaskTemplateScriptVOs); questionMessage.setNowQuestion(nextQuestion); redisCache.setCacheObject(phoneCallBackVO.getUuid() + "returnQues", questionMessage, 120, TimeUnit.MINUTES); redisCache.setCacheObject(phoneCallBackVO.getUuid() + "mateNum", 0, 120, TimeUnit.MINUTES); @@ -540,11 +551,11 @@ //// e.printStackTrace(); //// } // -// IvrTaskSingle ivrTaskcall = (IvrTaskSingle) map.get("ivrTaskcall"); +// ServiceSubtask ServiceSubtask = (ServiceSubtask) map.get("ServiceSubtask"); // List<IvrLibaTemplateScriptVO> ivrLibaTemplateScriptVOs = (List<IvrLibaTemplateScriptVO>) map.get("ivrLibaTemplateScriptVO"); // //灏唘uid鏇存柊鍒版暟鎹簱涓� -// ivrTaskcall.setSenduuid(phoneCallBackVO.getUuid()); -// ivrTaskSingleMapper.updateIvrTaskcall(ivrTaskcall); +// ServiceSubtask.setSenduuid(phoneCallBackVO.getUuid()); +// ServiceSubtaskMapper.updateServiceSubtask(ServiceSubtask); // // //鑾峰彇妯℃澘淇℃伅 // IvrLibaTemplateVO ivrLibaTemplateVO = redisCache.getCacheObject(phoneCallBackVO.getUuid() + "ivrLibaTemplateVO"); @@ -562,16 +573,16 @@ // redisCache.setCacheObject(phoneCallBackVO.getUuid() + "uint8", 1, 120, TimeUnit.MINUTES); // } // -// if (integer != null && integer == ivrTaskcall.getRecallcount().intValue()) { +// if (integer != null && integer == ServiceSubtask.getRecallcount().intValue()) { // log.info("鏃犱汉鎺ュ惉锛歿}, {}", phoneCallBackVO.getErrResult(), phoneCallBackVO.getUuid()); // //杩炵画鎵撹瀹氭锛屽鏋滆娌′汉鎺ワ紝閭e氨缁撴潫 -// ivrTaskcall.setResult(phoneCallBackVO.getErrResult()); -// ivrTaskSingleMapper.updateIvrTaskcall(ivrTaskcall); +// ServiceSubtask.setResult(phoneCallBackVO.getErrResult()); +// ServiceSubtaskMapper.updateServiceSubtask(ServiceSubtask); // redisCache.deleteObject(phoneCallBackVO.getUuid() + "uint8"); -// } else if (integer != null && integer < ivrTaskcall.getRecallcount().intValue()) { +// } else if (integer != null && integer < ServiceSubtask.getRecallcount().intValue()) { // //杩涜閲嶆嫧 // PhoneUtils phoneUtils = new PhoneUtils(); -// phoneUtils.ob(null, null, null, null, null, null, null, ivrTaskcall.getPhone(), phoneCallBackVO.getUuid(), true); +// phoneUtils.ob(null, null, null, null, null, null, null, ServiceSubtask.getPhone(), phoneCallBackVO.getUuid(), true); // } // } // @@ -581,20 +592,20 @@ // // 0-鎸搩 // Integer integer = redisCache.getCacheObject(phoneCallBackVO.getUuid() + "enumState"); // -// if (integer != null && integer < ivrTaskcall.getRecallcount().intValue()) { +// if (integer != null && integer < ServiceSubtask.getRecallcount().intValue()) { // redisCache.setCacheObject(phoneCallBackVO.getUuid() + "enumState", integer + 1, 120, TimeUnit.MINUTES); // } else if (integer == null) { // redisCache.setCacheObject(phoneCallBackVO.getUuid() + "enumState", 1, 120, TimeUnit.MINUTES); -// } else if (integer != null && integer == ivrTaskcall.getRecallcount().intValue()) { -// ivrTaskcall.setResult("鏃犱汉鎺ュ惉"); -// ivrTaskSingleMapper.updateIvrTaskcall(ivrTaskcall); +// } else if (integer != null && integer == ServiceSubtask.getRecallcount().intValue()) { +// ServiceSubtask.setResult("鏃犱汉鎺ュ惉"); +// ServiceSubtaskMapper.updateServiceSubtask(ServiceSubtask); // redisCache.deleteObject(phoneCallBackVO.getUuid() + "enumState"); // } // } else if (phoneCallBackVO.getEnumState() == 2) { // //鎮h�呮寕鏂數璇� // log.info("鎮h�呮寕鏂數璇濓細{}", phoneCallBackVO.getUuid()); -// ivrTaskcall.setResult(phoneCallBackVO.getHangUpResult()); -// ivrTaskSingleMapper.updateIvrTaskcall(ivrTaskcall); +// ServiceSubtask.setResult(phoneCallBackVO.getHangUpResult()); +// ServiceSubtaskMapper.updateServiceSubtask(ServiceSubtask); // redisCache.deleteObject(phoneCallBackVO.getUuid() + "enumState"); // } // @@ -749,13 +760,46 @@ // return phoneCallBackVO; // } + @Override + public Integer saveQuestionAnswer(ServiceSubTaskDetailReq serviceSubTaskDetailReq) { + RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample(); + Long tid = Long.valueOf(rsaPublicKeyExample.decryptedData(serviceSubTaskDetailReq.getParam1(), pri_key)); + Long pid = Long.valueOf(rsaPublicKeyExample.decryptedData(serviceSubTaskDetailReq.getParam2(), pri_key)); + ServiceSubtask ivrTaskSingle = new ServiceSubtask(); + ivrTaskSingle.setTaskid(tid); + ivrTaskSingle.setPatid(pid); + List<ServiceSubtask> ivrTaskSingles = serviceSubtaskMapper.selectServiceSubtaskList(ivrTaskSingle); + if (CollectionUtils.isEmpty(ivrTaskSingles) || ivrTaskSingles.size() == 0) { + log.error("鎶ラ敊浜嗭紝ivrTaskSingles鏁版嵁涓虹┖浜嗭細{}", ivrTaskSingle); + return 0; + } + int i = 0; + if (CollectionUtils.isNotEmpty(serviceSubTaskDetailReq.getIvrTaskcalldetailList())) { + //闅忚 + for (IvrTaskcalldetail ivrTaskcalldetail : serviceSubTaskDetailReq.getIvrTaskcalldetailList()) { + ivrTaskcalldetail.setCallid(ivrTaskSingles.get(0).getId().toString()); + ivrTaskcalldetail.setCalldetailid(UUID.randomUUID().toString()); + ivrTaskcalldetail.setCreateTime(new Date()); + i = ivrTaskcalldetailMapper.insertIvrTaskcalldetail(ivrTaskcalldetail); + } + } else if (CollectionUtils.isNotEmpty(serviceSubTaskDetailReq.getSvyTasksingledetailList())) { + //闂嵎 + for (SvyTasksingledetail svyTasksingledetail : serviceSubTaskDetailReq.getSvyTasksingledetailList()) { + svyTasksingledetail.setCallid(ivrTaskSingles.get(0).getId().toString()); + svyTasksingledetail.setCalldetailid(UUID.randomUUID().toString()); + svyTasksingledetail.setCreateTime(new Date()); + i = svyTasksingledetailMapper.insertSvyTasksingledetail(svyTasksingledetail); + } + } + return i; + } - private IvrTaskTemplateScriptVO getNextQuestion(List<IvrTaskTemplateScriptVO> ivrTaskTemplateScriptVOList, IvrTaskTemplateScriptVO ivrTaskTemplateScriptVO) { + private IvrTaskTemplateScriptVO getNextQuestion(List<IvrTaskTemplateScriptVO> IvrTaskTemplateScriptVOList, IvrTaskTemplateScriptVO IvrTaskTemplateScriptVO) { - for (int j = 0; j < ivrTaskTemplateScriptVOList.size(); j++) { - if (ivrTaskTemplateScriptVOList.get(j).getTargetid() == ivrTaskTemplateScriptVO.getTargetid() + 1) { + for (int j = 0; j < IvrTaskTemplateScriptVOList.size(); j++) { + if (IvrTaskTemplateScriptVOList.get(j).getTargetid() == IvrTaskTemplateScriptVO.getTargetid() + 1) { // 瀵硅鏉emplateScriptVO杩涜澶勭悊 - return ivrTaskTemplateScriptVOList.get(j); + return IvrTaskTemplateScriptVOList.get(j); } } return null; -- Gitblit v1.9.3