From 907641e56c2085aaa81f267946dc3e3e9fca73e7 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期三, 18 九月 2024 09:39:02 +0800 Subject: [PATCH] 代码提交 --- ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java | 384 +++++++++++++++--------------------------------------- 1 files changed, 105 insertions(+), 279 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java b/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java index 089b629..e1aebbd 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java @@ -26,6 +26,11 @@ import org.springframework.data.redis.listener.RedisMessageListenerContainer; import org.springframework.stereotype.Component; +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.*; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; @@ -52,6 +57,8 @@ @Autowired private IIvrTaskTemplateService ivrTaskTemplateService; + @Autowired + private ISvyTaskTemplateService svyTaskTemplateService; @Autowired private ServiceSubtaskMapper ivrTaskcallMapper; @@ -109,46 +116,42 @@ } else { commonTaskcallMQ = mapper.readValue(content, CommonTaskcallMQ.class); } - if (commonTaskcallMQ.getTaskType() == 1) { - //闅忚 - sfHandle(commonTaskcallMQ, ip); - } else if (commonTaskcallMQ.getTaskType() == 2) { - //闂嵎 - wjHandle(commonTaskcallMQ, ip); - } else if (commonTaskcallMQ.getTaskType() == 3) { - //瀹f暀 - xjHandle(commonTaskcallMQ, ip); - } + if (commonTaskcallMQ != null) tsakHandle(commonTaskcallMQ, ip, commonTaskcallMQ.getTaskType()); + //澶勭悊瀹屾垚锛岀Щ闄edis redisCache.deleteObject(message.toString()); //灏嗙姸鎬佹敼鎴愬畬鎴� ServiceTask serviceTask = new ServiceTask(); serviceTask.setTaskid(Long.valueOf(commonTaskcallMQ.getTaskid())); - serviceTask.setSendState(5); + serviceTask.setSendState(5L); + serviceTask.setFail(1L); svyTaskMapper.updateServiceTask(serviceTask); - } catch (Exception e) { Integer integer = redisCache.getCacheObject(commonTaskcallMQ.getTaskid().toString()); - if (integer != null && integer == 2) { + if (integer != null && integer == 3) { + redisCache.deleteObject(message.toString()); + ServiceTask serviceTask = new ServiceTask(); + serviceTask.setTaskid(Long.valueOf(commonTaskcallMQ.getTaskid().toString())); + serviceTask.setFail(0L); + svyTaskMapper.updateServiceTask(serviceTask); //灏嗘秷鎭粠闃熷垪涓垹闄� } else if (integer == null) { redisCache.setCacheObject(commonTaskcallMQ.getTaskid().toString(), 1, 120, TimeUnit.MINUTES); } else { redisCache.setCacheObject(commonTaskcallMQ.getTaskid().toString(), integer + 1, 120, TimeUnit.MINUTES); } - log.error("============娑堣垂澶辫触,灏濊瘯娑堟伅琛ュ彂鍐嶆娑堣垂!============== {}", e.getMessage()); redisCache.setCacheObject(message.toString(), message.toString(), 60, TimeUnit.SECONDS); } } /** - * 闅忚浠诲姟澶勭悊 + * 浠诲姟澶勭悊 * * @param commonTaskcallMQ */ - public void sfHandle(CommonTaskcallMQ commonTaskcallMQ, String ip) { - log.error("杩涢殢璁夸簡鍚楋紵{}", commonTaskcallMQ); + public void tsakHandle(CommonTaskcallMQ commonTaskcallMQ, String ip, Integer type) { + log.error("杩涗换鍔′簡鍚楋紵{}", commonTaskcallMQ); //鍒ゆ柇涓�涓媍ommonTaskcallMQ涓殑stopstate鏄惁涓巌vr_task涓殑涓�鑷达紝涓嶄竴鑷达紝鍒欒鏄庢槸鏆傚仠浜� ServiceTask ivrTask1 = ivrTaskMapper.selectServiceTaskByTaskid(commonTaskcallMQ.getTaskid()); if (ivrTask1.getStopState() != commonTaskcallMQ.getStopState()) { @@ -226,10 +229,10 @@ } } else if (descByCode.equals("澶氬獟浣�")) { //澶氬獟浣� - return; + continue; } else if (descByCode.equals("绾歌川")) { //绾歌川 - return; + continue; } else if (descByCode.equals("鐭俊")) { //鐭俊 // http://localhost:8099/followvisit/particty?param1=3¶m2=348 @@ -238,22 +241,39 @@ String taskId = rsaPublicKeyExample.encryptedData(ivrTask1.getTaskid().toString(), pub_key); for (ServiceSubtask serviceSubtask : selectServiceSubtaskList) { - String patid = rsaPublicKeyExample.encryptedData(serviceSubtask.getPatid().toString(), pub_key); - SendMagParam sendMagParam = new SendMagParam(); - sendMagParam.setType("4"); - sendMagParam.setUrl(ip + ":" + req_path + "/followvisit/particty?param1=" + taskId + "¶m2=" + patid + "¶m5=false"); - Boolean aBoolean = sendService.sendMsg(sendMagParam); + try { + String patid = rsaPublicKeyExample.encryptedData(serviceSubtask.getPatid().toString(), pub_key); + SendMagParam sendMagParam = new SendMagParam(); + sendMagParam.setType("4"); + if (type == 1) { + sendMagParam.setUrl(ip + ":" + req_path + "/followvisit/particty?param1=" + taskId + "¶m2=" + patid + "¶m5=false"); + } else if (type == 1) { + sendMagParam.setUrl(ip + ":" + req_path + "/outsideChainwt?param1=" + taskId + "¶m2=" + patid + "¶m3=" + URLEncoder.encode(ivrTask1.getTaskName(), StandardCharsets.UTF_8.toString()) + "¶m5=false"); + } else if (type == 3) { + sendMagParam.setUrl(ip + ":" + req_path + "/outsideChainxj?param1=" + taskId + "¶m2=" + patid + "¶m3=" + URLEncoder.encode(ivrTask1.getTaskName(), StandardCharsets.UTF_8.toString()) + "¶m5=false"); + } + Boolean aBoolean = sendService.sendMsg(sendMagParam); - - //浠诲姟鍙戦�佽褰� - ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord(); - serviceSubtaskRecord.setTaskid(serviceSubtask.getTaskid().toString()); - serviceSubtaskRecord.setUuid(UUID.randomUUID().toString()); - serviceSubtaskRecord.setTasktype(serviceSubtask.getType()); - serviceSubtaskRecord.setPreachform("4"); - serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); - serviceSubtaskRecord.setResult(aBoolean == true ? "鎴愬姛" : "澶辫触"); - serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); + //浠诲姟鍙戦�佽褰� + ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord(); + serviceSubtaskRecord.setTaskid(serviceSubtask.getTaskid().toString()); + serviceSubtaskRecord.setUuid(UUID.randomUUID().toString()); + serviceSubtaskRecord.setTasktype(serviceSubtask.getType()); + serviceSubtaskRecord.setPreachform("4"); + serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); + serviceSubtaskRecord.setResult(aBoolean == true ? "success" : "error"); + serviceSubtaskMapper.updateServiceSubtask(serviceSubtask); + serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); + } catch (UnsupportedEncodingException e) { + String guid = UUID.randomUUID().toString(); + log.error("鐭俊浠诲姟锛屽彂閫佸け璐ュ師鍥狅細{},{}", e.getMessage(), guid); + serviceSubtask.setResult("error"); + serviceSubtask.setRemark("绯荤粺閿欒锛堜换鍔★級"); + serviceSubtask.setGuid(guid); + serviceSubtask.setSendstate(4L); + serviceSubtask.setFinishtime(new Date()); + serviceSubtaskMapper.insertServiceSubtask(serviceSubtask); + } } } else if (descByCode.equals("鍏紬鍙�")) { //鍏紬鍙� @@ -261,6 +281,7 @@ String taskId = rsaPublicKeyExample.encryptedData(ivrTask1.getTaskid().toString(), pub_key); for (ServiceSubtask serviceSubtask : selectServiceSubtaskList) { String patid = rsaPublicKeyExample.encryptedData(serviceSubtask.getPatid().toString(), pub_key); + // SendMagParam sendMagParam = new SendMagParam(); // sendMagParam.setType("5"); // sendMagParam.setUrl(ip + ":" + req_path + "/outsideChain?param1=" + taskId + "¶m2=" + patid + "¶m3=" + ivrTask1.getTaskName() + "¶m5=false"); @@ -272,252 +293,56 @@ // sendMagParam.setContent(JSON.toJSONString(map)); // sendMagParam.setOpenid(serviceSubtask.getOpenid()); // Boolean aBoolean = sendService.sendMsg(sendMagParam); + String url = null; + try { + if (type == 1) { + url = ip + ":" + req_path + "/outsideChain?param1=" + taskId + "¶m2=" + patid + "¶m3=" + URLEncoder.encode(ivrTask1.getTaskName(), StandardCharsets.UTF_8.toString()) + "¶m5=false"; + } else if (type == 2) { + url = ip + ":" + req_path + "/outsideChainwt?param1=" + taskId + "¶m2=" + patid + "¶m3=" + URLEncoder.encode(ivrTask1.getTaskName(), StandardCharsets.UTF_8.toString()) + "¶m5=false"; + } else if (type == 3) { + url = ip + ":" + req_path + "/outsideChainxj?param1=" + taskId + "¶m2=" + patid + "¶m3=" + URLEncoder.encode(ivrTask1.getTaskName(), StandardCharsets.UTF_8.toString()) + "¶m5=false"; + } - String url = ip + ":" + req_path + "/outsideChain?param1=" + taskId + "¶m2=" + patid + "¶m3=" + ivrTask1.getTaskName() + "¶m5=false"; - String wxCode = getWXCode(serviceSubtask.getIdcardno(), url); - - //浠诲姟鍙戦�佽褰� - ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord(); - serviceSubtaskRecord.setTaskid(serviceSubtask.getTaskid().toString()); - serviceSubtaskRecord.setUuid(UUID.randomUUID().toString()); - serviceSubtaskRecord.setTasktype(serviceSubtask.getType()); - serviceSubtaskRecord.setPreachform("4"); - serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); - serviceSubtaskRecord.setResult("鎴愬姛"); - if (wxCode.equals("0")) serviceSubtaskRecord.setResult("澶辫触"); - serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); + String wxCode = getWXCode(serviceSubtask.getSfzh(), url, serviceSubtask.getTaskName(), serviceSubtask.getTaskDesc(), "鏃�"); + Map<String, Object> map = JSONObject.parseObject(wxCode, Map.class); + if (!map.isEmpty()) { + serviceSubtask.setResult("success"); + serviceSubtask.setSendstate(3L); + if ((Boolean) map.get("succ") == false) { + serviceSubtask.setResult("error"); + serviceSubtask.setRemark(map.get("msg").toString()); + serviceSubtask.setSendstate(5L); + } + } + //浠诲姟鍙戦�佽褰� + ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord(); + serviceSubtaskRecord.setTaskid(serviceSubtask.getTaskid().toString()); + serviceSubtaskRecord.setUuid(UUID.randomUUID().toString()); + serviceSubtaskRecord.setTasktype(serviceSubtask.getType()); + serviceSubtaskRecord.setPreachform("5"); + serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); + serviceSubtaskRecord.setResult("success"); + if ((Boolean) map.get("succ") == false) { + serviceSubtaskRecord.setResult("error"); + } + serviceSubtaskMapper.insertServiceSubtask(serviceSubtask); + serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); + } catch (Exception e) { + String guid = UUID.randomUUID().toString(); + log.error("鍏紬鍙蜂换鍔★紝鍙戦�佸け璐ュ師鍥狅細{},{}", e.getMessage(), guid); + serviceSubtask.setResult("error"); + serviceSubtask.setRemark("绯荤粺閿欒锛堜换鍔★級"); + serviceSubtask.setGuid(guid); + serviceSubtask.setSendstate(5L); + serviceSubtask.setFinishtime(new Date()); + serviceSubtaskMapper.insertServiceSubtask(serviceSubtask); + } } } //閫氱煡 MQ 娑堟伅宸茶鎺ユ敹,鍙互ACK(浠庨槦鍒椾腑鍒犻櫎)浜� 锛堣繖涓渶瑕佹牴鎹笟鍔″啀鍘诲鐞咥CK锛� } } } - - /** - * 瀹f暀浠诲姟澶勭悊 - * - * @param commonTaskcallMQ - */ - private void xjHandle(CommonTaskcallMQ commonTaskcallMQ, String ip) { - log.error("杩涘鏁欎簡鍚楋紵{}", commonTaskcallMQ); - //鍒ゆ柇涓�涓媍ommonTaskcallMQ涓殑stopstate鏄惁涓巌vr_task涓殑涓�鑷达紝涓嶄竴鑷达紝鍒欒鏄庢槸鏆傚仠浜� - ServiceTask ivrTask1 = ivrTaskMapper.selectServiceTaskByTaskid(commonTaskcallMQ.getTaskid()); - if (ivrTask1.getStopState() != commonTaskcallMQ.getStopState()) { - //灏嗘秷鎭粠闃熷垪涓墧闄� - return; - } - - if (StringUtils.isNotEmpty(commonTaskcallMQ.getPreachform())) { - //濡備綍浠诲姟鍙戦�佹柟寮忎笉涓虹┖ - String[] split = commonTaskcallMQ.getPreachform().split(","); - System.out.println("split鐨勫�间负锛�" + split); - for (String serviceFrom : split) { - String descByCode = ServiceFromEnum.getDescByCode(Integer.valueOf(serviceFrom)); - //杩欓噷鍙互鑰冭檻鐢ㄧ瓥鐣ユā寮忎紭鍖栦竴涓嬶紝涓嶇劧澶毦鐪嬩簡 - - //閫氳繃妯℃澘ID鑾峰彇妯℃澘闂 - IvrTaskTemplateVO ivrTaskTemplateVO1 = null; - if (commonTaskcallMQ.getTaskType().equals("1")) { - IvrTaskTemplateVO ivrTaskTemplateVO = new IvrTaskTemplateVO(); - ivrTaskTemplateVO.setId(Long.valueOf(commonTaskcallMQ.getTemplateid())); - ivrTaskTemplateVO1 = ivrTaskTemplateService.selectInfoByCondition(ivrTaskTemplateVO); - } - //閫氳繃浠诲姟ID鎷垮埌鎮h�呬俊鎭� - ServiceSubtaskVO ivrTaskcall = new ServiceSubtaskVO(); - ivrTaskcall.setTaskid(commonTaskcallMQ.getTaskid()); - List<ServiceSubtask> ivrTaskcalls = ivrTaskcallMapper.selectServiceSubtaskList(ivrTaskcall); - if (descByCode.equals("鐢佃瘽")) { - for (ServiceSubtask ivrTaskcall1 : ivrTaskcalls) { - ServiceTask ivrTask = ivrTaskMapper.selectServiceTaskByTaskid(ivrTaskcall1.getTaskid()); - if (ivrTask.getSendState() != null && ivrTask.getSendState() == 3 || ivrTask.getSendState() != null && ivrTask.getSendState() == 4) { - //濡備綍浠诲姟琚�滄殏鍋溾�濇垨鈥滅粓姝⑩�� - break; - } - - //浠诲姟鍙戦�佽褰曪紙杩欎釜浠g爜搴旇鍐欏湪phoneTask涓紝鍏堝啓鍦ㄨ繖锛屽悗闈㈠啀鏀癸級 - ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord(); - serviceSubtaskRecord.setTaskid(ivrTaskcall1.getTaskid().toString()); - serviceSubtaskRecord.setUuid(UUID.randomUUID().toString()); - serviceSubtaskRecord.setTasktype(ivrTaskcall1.getType()); - serviceSubtaskRecord.setPreachform("3"); - serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); - serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); - - //閫氳繃澶氱嚎绋嬬殑鏂瑰紡鍘绘墦鐢佃瘽 - executorService.submit(new PhoneTask(ivrTaskcall1, ivrTaskTemplateVO1, redisCache, sendService, phonePath, robotPhoneUtils)); - } - } else if (descByCode.equals("澶氬獟浣�")) { - //澶氬獟浣� - } else if (descByCode.equals("绾歌川")) { - //绾歌川 - } else if (descByCode.equals("鐭俊")) { - //鐭俊 -// http://localhost:8099/followvisit/particty?param1=3¶m2=348 - //瀵箄rl涓袱涓弬鏁板姞瀵� - RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample(); - String taskId = rsaPublicKeyExample.encryptedData(ivrTask1.getTaskid().toString(), pub_key); - - - for (ServiceSubtask ivrTaskSingle : ivrTaskcalls) { - String patid = rsaPublicKeyExample.encryptedData(ivrTaskSingle.getPatid().toString(), pub_key); - SendMagParam sendMagParam = new SendMagParam(); - sendMagParam.setType("4"); - sendMagParam.setUrl(ip + ":" + req_path + "/followvisit/particty?param1=" + taskId + "¶m2=" + patid + "¶m5=false"); - Boolean aBoolean = sendService.sendMsg(sendMagParam); - - //浠诲姟鍙戦�佽褰� - ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord(); - serviceSubtaskRecord.setTaskid(ivrTaskSingle.getTaskid().toString()); - serviceSubtaskRecord.setUuid(UUID.randomUUID().toString()); - serviceSubtaskRecord.setTasktype(ivrTaskSingle.getType()); - serviceSubtaskRecord.setPreachform("4"); - serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); - serviceSubtaskRecord.setResult(aBoolean == true ? "鎴愬姛" : "澶辫触"); - serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); - } - } else if (descByCode.equals("鍏紬鍙�")) { - //鍏紬鍙� - RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample(); - String taskId = rsaPublicKeyExample.encryptedData(ivrTask1.getTaskid().toString(), pub_key); - for (ServiceSubtask ivrTaskSingle : ivrTaskcalls) { - String patid = rsaPublicKeyExample.encryptedData(ivrTaskSingle.getPatid().toString(), pub_key); -// SendMagParam sendMagParam = new SendMagParam(); -// sendMagParam.setType("5"); -// sendMagParam.setUrl(ip + ":" + req_path + "/outsideChainxj?param1=" + taskId + "¶m2=" + patid + "¶m3=" + ivrTask1.getTaskName() + "¶m5=false"); -// log.info("閾炬帴瀹屾暣璺緞锛歿}", req_path + "/outsideChainxj?param1=" + taskId + "¶m2=" + patid + "¶m3=" + ivrTask1.getTaskName() + "¶m5=false"); -// //杩欎釜妯℃澘ID鍏堝啓姝伙紝鍚庨潰鍋氭垚鍙�� -// sendMagParam.setTmpCode("oG3pJHPVWpE81DmZsua_2tKwgJ97r0qz37z56ns7NB4"); -// Map map = new HashMap(); -// map.put("first", ivrTask1.getTaskName()); -// sendMagParam.setContent(JSON.toJSONString(map)); -// sendMagParam.setOpenid(ivrTaskSingle.getOpenid()); - //鏂板崕鍖婚櫌鏈夎嚜宸辩殑鍏紬鍙峰彂閫佹帴鍙o紝鎴戜滑鐨勫厛涓嶇敤锛堝厛淇濈暀锛屽叾瀹冮」鐩彲浠ョ敤锛� -// Boolean aBoolean = sendService.sendMsg(sendMagParam); -// log.error("鏄惁鍙戦�佹垚鍔燂細{}", aBoolean); - - String url = ip + ":" + req_path + "/outsideChainxj?param1=" + taskId + "¶m2=" + patid + "¶m3=" + ivrTask1.getTaskName() + "¶m5=false"; - String wxCode = getWXCode(ivrTaskSingle.getIdcardno(), url); - //浠诲姟鍙戦�佽褰� - ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord(); - serviceSubtaskRecord.setTaskid(ivrTaskSingle.getTaskid().toString()); - serviceSubtaskRecord.setUuid(UUID.randomUUID().toString()); - serviceSubtaskRecord.setTasktype(ivrTaskSingle.getType()); - serviceSubtaskRecord.setPreachform("4"); - serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); - serviceSubtaskRecord.setResult("鎴愬姛"); - if (!wxCode.equals("0")) { - serviceSubtaskRecord.setResult("澶辫触"); - } - - serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); - } - } - //閫氱煡 MQ 娑堟伅宸茶鎺ユ敹,鍙互ACK(浠庨槦鍒椾腑鍒犻櫎)浜� 锛堣繖涓渶瑕佹牴鎹笟鍔″啀鍘诲鐞咥CK锛� - } - } - } - - /** - * 闂嵎浠诲姟澶勭悊 - * - * @param commonTaskcallMQ - */ - private void wjHandle(CommonTaskcallMQ commonTaskcallMQ, String ip) { - log.error("杩涢棶鍗蜂簡鍚楋紵{}", commonTaskcallMQ); - //鍒ゆ柇涓�涓媍ommonTaskcallMQ涓殑stopstate鏄惁涓巌vr_task涓殑涓�鑷达紝涓嶄竴鑷达紝鍒欒鏄庢槸鏆傚仠浜� - ServiceTask svyTask = svyTaskMapper.selectServiceTaskByTaskid(commonTaskcallMQ.getTaskid()); - log.error("svyTask.getStopState()鐨勫�间负锛歿} 锛� commonTaskcallMQ.getStopState()鐨勫�间负锛歿}", svyTask.getStopState(), commonTaskcallMQ.getStopState()); - - if (svyTask.getStopState() != commonTaskcallMQ.getStopState()) { - //灏嗘秷鎭粠闃熷垪涓墧闄� - return; - } - - if (StringUtils.isNotEmpty(commonTaskcallMQ.getPreachform())) { - //濡備綍浠诲姟鍙戦�佹柟寮忎笉涓虹┖ - String[] split = commonTaskcallMQ.getPreachform().split(","); - System.out.println("split鐨勫�间负锛�" + split); - for (String serviceFrom : split) { - String descByCode = ServiceFromEnum.getDescByCode(Integer.valueOf(serviceFrom)); - //杩欓噷鍙互鑰冭檻鐢ㄧ瓥鐣ユā寮忎紭鍖栦竴涓嬶紝涓嶇劧澶毦鐪嬩簡 - - //閫氳繃妯℃澘ID鑾峰彇妯℃澘闂 - SvyTaskTemplateVO svyTaskTemplateVO = new SvyTaskTemplateVO(); - svyTaskTemplateVO.setId(Long.valueOf(commonTaskcallMQ.getTemplateid())); - SvyTaskTemplateVO svyTaskTemplateVO1 = iSvyTaskTemplateService.selectInfoByCondition(svyTaskTemplateVO); - - //閫氳繃浠诲姟ID鎷垮埌鎮h�呬俊鎭� - ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO(); - serviceSubtaskVO.setTaskid(commonTaskcallMQ.getTaskid()); - List<ServiceSubtask> selectServiceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO); - log.error("selectServiceSubtaskList鏁版嵁鏄灏戯紵{}", selectServiceSubtaskList.size()); - if (descByCode.equals("鐢佃瘽")) { - for (ServiceSubtask svyTaskSingle1 : selectServiceSubtaskList) { - ServiceTask svyTask1 = svyTaskMapper.selectServiceTaskByTaskid(svyTaskSingle1.getTaskid()); - if (svyTask1.getSendState() != null && svyTask1.getSendState().equals("3") || svyTask1.getSendState() != null && svyTask1.getSendState().equals("4")) { - //濡備綍浠诲姟琚�滄殏鍋溾�濇垨鈥滅粓姝⑩�� - break; - } - - //浠诲姟鍙戦�佽褰曪紙杩欎釜浠g爜搴旇鍐欏湪phoneTask涓紝鍏堝啓鍦ㄨ繖锛屽悗闈㈠啀鏀癸級 - ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord(); - serviceSubtaskRecord.setTaskid(svyTaskSingle1.getTaskid().toString()); - serviceSubtaskRecord.setUuid(UUID.randomUUID().toString()); - serviceSubtaskRecord.setTasktype(svyTaskSingle1.getType()); - serviceSubtaskRecord.setPreachform("3"); - serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); - serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); - //閫氳繃澶氱嚎绋嬬殑鏂瑰紡鍘绘墦鐢佃瘽 -// executorService.submit(new PhoneTask(ivrTaskcall1, ivrTaskTemplateVO1, redisCache, sendService, phonePath, robotPhoneUtils)); - } - } else if (descByCode.equals("澶氬獟浣�")) { - //澶氬獟浣� - } else if (descByCode.equals("绾歌川")) { - //绾歌川 - } else if (descByCode.equals("鐭俊")) { - //鐭俊 - } else if (descByCode.equals("鍏紬鍙�")) { - log.error("杩涢棶鍗峰叕浼楀彿浜嗗悧锛焮}", descByCode); - //鍏紬鍙� - RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample(); - String taskId = rsaPublicKeyExample.encryptedData(svyTask.getTaskid().toString(), pub_key); - for (ServiceSubtask svyTaskSingle1 : selectServiceSubtaskList) { - String patid = rsaPublicKeyExample.encryptedData(svyTaskSingle1.getPatid().toString(), pub_key); - String url = ip + ":" + req_path + "/outsideChainwt?param1=" + taskId + "¶m2=" + patid + "¶m3=" + svyTask.getTaskName() + "¶m5=false"; - //杩欎釜鏄垜浠嚜宸辩殑寰俊鍏紬鍙峰彂閫佹柟寮忥紝 - SendMagParam sendMagParam = new SendMagParam(); - sendMagParam.setType("5"); - sendMagParam.setUrl(url); - log.info("閾炬帴瀹屾暣璺緞锛歿}", req_path + "/outsideChainwt?param1=" + taskId + "¶m2=" + patid + "¶m3=" + svyTask.getTaskName() + "¶m5=false"); - //杩欎釜妯℃澘ID鍏堝啓姝伙紝鍚庨潰鍋氭垚鍙�� - sendMagParam.setTmpCode("oG3pJHPVWpE81DmZsua_2tKwgJ97r0qz37z56ns7NB4"); - Map map = new HashMap(); - map.put("first", svyTask.getTaskName()); - sendMagParam.setContent(JSON.toJSONString(map)); - sendMagParam.setOpenid(svyTaskSingle1.getOpenid()); - Boolean aBoolean = sendService.sendMsg(sendMagParam); - log.error("鍙戦�佹垚鍔熶簡鍚楋紵{}", aBoolean); -// String wxCode = getWXCode(svyTaskSingle1.getIdcardno(), url); - - //浠诲姟鍙戦�佽褰� - ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord(); - serviceSubtaskRecord.setTaskid(svyTaskSingle1.getTaskid().toString()); - serviceSubtaskRecord.setUuid(UUID.randomUUID().toString()); - serviceSubtaskRecord.setTasktype(svyTaskSingle1.getType()); - serviceSubtaskRecord.setPreachform("4"); - serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); - serviceSubtaskRecord.setResult("鎴愬姛"); -// if (!wxCode.equals("0")) { -// serviceSubtaskRecord.setResult("澶辫触"); -// } - serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); - } - } - //閫氱煡 MQ 娑堟伅宸茶鎺ユ敹,鍙互ACK(浠庨槦鍒椾腑鍒犻櫎)浜� 锛堣繖涓渶瑕佹牴鎹笟鍔″啀鍘诲鐞咥CK锛� - } - } - } - // /** // * 鏈哄櫒浜虹涓�鍙ヨ瘽璇煶 @@ -582,17 +407,18 @@ return key; } - private String getWXCode(String idcard, String url) { + private String getWXCode(String idcard, String url, String taskName, String taskDesc, String submitprompt) { XinHuaWXReq xinHuaWXReq = new XinHuaWXReq(); xinHuaWXReq.setIdcard(idcard); xinHuaWXReq.setUrl(url); - xinHuaWXReq.setKeyword1(null); - xinHuaWXReq.setKeyword2(null); - xinHuaWXReq.setKeyword3(null); - xinHuaWXReq.setKeyword4(null); + xinHuaWXReq.setKeyword1("娴欎腑鍖诲ぇ浜岄櫌鍑洪櫌闅忚"); + xinHuaWXReq.setKeyword2(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + xinHuaWXReq.setKeyword3(taskName); + xinHuaWXReq.setKeyword4("鐤剧梾搴峰娉ㄦ剰浜嬮」"); + String result = HttpUtils.sendPost(thirdWXUrl, new Gson().toJson(xinHuaWXReq)); JSONObject jsonObject = JSONObject.parseObject(result); - String code = (String) jsonObject.get("code"); + String code = (String) jsonObject.toString(); return code; } -- Gitblit v1.9.3