From 9526971c403417c1c007804f24884c443b9e6cd7 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期三, 04 九月 2024 00:34:40 +0800 Subject: [PATCH] 代码提交 --- ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java | 133 ++++++++++++++++++++++++++++++------------- 1 files changed, 92 insertions(+), 41 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 f2fedf4..089b629 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 @@ -1,11 +1,14 @@ package com.ruoyi.web.component; import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.JSONObject; import com.fasterxml.jackson.databind.ObjectMapper; +import com.google.gson.Gson; import com.ruoyi.common.core.redis.RedisCache; import com.ruoyi.common.enums.ServiceFromEnum; import com.ruoyi.common.utils.RSAPublicKeyExample; import com.ruoyi.common.utils.StringUtils; +import com.ruoyi.common.utils.http.HttpUtils; import com.ruoyi.web.task.PhoneTask; import com.smartor.common.SendService; import com.smartor.config.RobotPhoneUtils; @@ -44,6 +47,9 @@ @Value("${req_path}") private String req_path; + @Value("${thirdWXUrl}") + private String thirdWXUrl; + @Autowired private IIvrTaskTemplateService ivrTaskTemplateService; @@ -63,10 +69,10 @@ private RobotPhoneUtils robotPhoneUtils; @Autowired - private SvyTaskMapper svyTaskMapper; + private ServiceTaskMapper svyTaskMapper; @Autowired - private SvyTaskSingleMapper svyTaskSingleMapper; + private ServiceSubtaskMapper serviceSubtaskMapper; @Autowired private ISvyTaskTemplateService iSvyTaskTemplateService; @@ -103,7 +109,6 @@ } else { commonTaskcallMQ = mapper.readValue(content, CommonTaskcallMQ.class); } - if (commonTaskcallMQ.getTaskType() == 1) { //闅忚 sfHandle(commonTaskcallMQ, ip); @@ -116,6 +121,11 @@ } //澶勭悊瀹屾垚锛岀Щ闄edis redisCache.deleteObject(message.toString()); + //灏嗙姸鎬佹敼鎴愬畬鎴� + ServiceTask serviceTask = new ServiceTask(); + serviceTask.setTaskid(Long.valueOf(commonTaskcallMQ.getTaskid())); + serviceTask.setSendState(5); + svyTaskMapper.updateServiceTask(serviceTask); } catch (Exception e) { Integer integer = redisCache.getCacheObject(commonTaskcallMQ.getTaskid().toString()); @@ -138,6 +148,7 @@ * @param commonTaskcallMQ */ public void sfHandle(CommonTaskcallMQ commonTaskcallMQ, String ip) { + log.error("杩涢殢璁夸簡鍚楋紵{}", commonTaskcallMQ); //鍒ゆ柇涓�涓媍ommonTaskcallMQ涓殑stopstate鏄惁涓巌vr_task涓殑涓�鑷达紝涓嶄竴鑷达紝鍒欒鏄庢槸鏆傚仠浜� ServiceTask ivrTask1 = ivrTaskMapper.selectServiceTaskByTaskid(commonTaskcallMQ.getTaskid()); if (ivrTask1.getStopState() != commonTaskcallMQ.getStopState()) { @@ -159,7 +170,7 @@ // IvrTaskTemplateVO ivrTaskTemplateVO1 = ivrTaskTemplateService.selectInfoByCondition(ivrTaskTemplateVO); //閫氳繃浠诲姟ID鎷垮埌鎮h�呬俊鎭� - ServiceSubtask ivrTaskcall = new ServiceSubtask(); + ServiceSubtaskVO ivrTaskcall = new ServiceSubtaskVO(); ivrTaskcall.setTaskid(commonTaskcallMQ.getTaskid()); List<ServiceSubtask> selectServiceSubtaskList = ivrTaskcallMapper.selectServiceSubtaskList(ivrTaskcall); if (descByCode.equals("鐢佃瘽")) { @@ -174,7 +185,7 @@ if (commonTaskcallMQ.getSendType().equals("2")) { //璇存槑鏄珛鍗冲彂閫� String value = redisCache.getCacheObject("cache-0"); - ServiceSubtask serviceSubtask1 = new ServiceSubtask(); + ServiceSubtaskVO serviceSubtask1 = new ServiceSubtaskVO(); serviceSubtask1.setTaskid(commonTaskcallMQ.getTaskid()); List<ServiceSubtask> selectServiceSubtaskList1 = ivrTaskcallMapper.selectServiceSubtaskList(serviceSubtask1); for (ServiceSubtask serviceSubtask2 : selectServiceSubtaskList1) { @@ -188,7 +199,7 @@ } else { //闈炵珛鍗冲彂閫� String value = redisCache.getCacheObject(key); - ServiceSubtask serviceSubtask1 = new ServiceSubtask(); + ServiceSubtaskVO serviceSubtask1 = new ServiceSubtaskVO(); serviceSubtask1.setTaskid(commonTaskcallMQ.getTaskid()); List<ServiceSubtask> selectServiceSubtaskList1 = ivrTaskcallMapper.selectServiceSubtaskList(serviceSubtask1); for (ServiceSubtask serviceSubtask2 : selectServiceSubtaskList1) { @@ -250,17 +261,20 @@ 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"); - log.info("閾炬帴瀹屾暣璺緞锛歿}", ip + ":" + req_path + "/outsideChain?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(serviceSubtask.getOpenid()); - Boolean aBoolean = sendService.sendMsg(sendMagParam); +// SendMagParam sendMagParam = new SendMagParam(); +// sendMagParam.setType("5"); +// sendMagParam.setUrl(ip + ":" + req_path + "/outsideChain?param1=" + taskId + "¶m2=" + patid + "¶m3=" + ivrTask1.getTaskName() + "¶m5=false"); +// log.info("閾炬帴瀹屾暣璺緞锛歿}", ip + ":" + req_path + "/outsideChain?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(serviceSubtask.getOpenid()); +// Boolean aBoolean = sendService.sendMsg(sendMagParam); + + 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(); @@ -269,7 +283,8 @@ serviceSubtaskRecord.setTasktype(serviceSubtask.getType()); serviceSubtaskRecord.setPreachform("4"); serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); - serviceSubtaskRecord.setResult(aBoolean == true ? "鎴愬姛" : "澶辫触"); + serviceSubtaskRecord.setResult("鎴愬姛"); + if (wxCode.equals("0")) serviceSubtaskRecord.setResult("澶辫触"); serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); } } @@ -284,6 +299,7 @@ * @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()) { @@ -307,7 +323,7 @@ ivrTaskTemplateVO1 = ivrTaskTemplateService.selectInfoByCondition(ivrTaskTemplateVO); } //閫氳繃浠诲姟ID鎷垮埌鎮h�呬俊鎭� - ServiceSubtask ivrTaskcall = new ServiceSubtask(); + ServiceSubtaskVO ivrTaskcall = new ServiceSubtaskVO(); ivrTaskcall.setTaskid(commonTaskcallMQ.getTaskid()); List<ServiceSubtask> ivrTaskcalls = ivrTaskcallMapper.selectServiceSubtaskList(ivrTaskcall); if (descByCode.equals("鐢佃瘽")) { @@ -365,18 +381,22 @@ 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()); - Boolean aBoolean = sendService.sendMsg(sendMagParam); +// 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()); @@ -384,7 +404,11 @@ serviceSubtaskRecord.setTasktype(ivrTaskSingle.getType()); serviceSubtaskRecord.setPreachform("4"); serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); - serviceSubtaskRecord.setResult(aBoolean == true ? "鎴愬姛" : "澶辫触"); + serviceSubtaskRecord.setResult("鎴愬姛"); + if (!wxCode.equals("0")) { + serviceSubtaskRecord.setResult("澶辫触"); + } + serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); } } @@ -399,8 +423,11 @@ * @param commonTaskcallMQ */ private void wjHandle(CommonTaskcallMQ commonTaskcallMQ, String ip) { + log.error("杩涢棶鍗蜂簡鍚楋紵{}", commonTaskcallMQ); //鍒ゆ柇涓�涓媍ommonTaskcallMQ涓殑stopstate鏄惁涓巌vr_task涓殑涓�鑷达紝涓嶄竴鑷达紝鍒欒鏄庢槸鏆傚仠浜� - SvyTask svyTask = svyTaskMapper.selectSvyTaskByTaskid(commonTaskcallMQ.getTaskid()); + ServiceTask svyTask = svyTaskMapper.selectServiceTaskByTaskid(commonTaskcallMQ.getTaskid()); + log.error("svyTask.getStopState()鐨勫�间负锛歿} 锛� commonTaskcallMQ.getStopState()鐨勫�间负锛歿}", svyTask.getStopState(), commonTaskcallMQ.getStopState()); + if (svyTask.getStopState() != commonTaskcallMQ.getStopState()) { //灏嗘秷鎭粠闃熷垪涓墧闄� return; @@ -420,12 +447,13 @@ SvyTaskTemplateVO svyTaskTemplateVO1 = iSvyTaskTemplateService.selectInfoByCondition(svyTaskTemplateVO); //閫氳繃浠诲姟ID鎷垮埌鎮h�呬俊鎭� - SvyTaskSingle svyTaskSingle = new SvyTaskSingle(); - svyTaskSingle.setTaskid(commonTaskcallMQ.getTaskid()); - List<SvyTaskSingle> svyTaskSingles = svyTaskSingleMapper.selectSvyTaskSingleList(svyTaskSingle); + ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO(); + serviceSubtaskVO.setTaskid(commonTaskcallMQ.getTaskid()); + List<ServiceSubtask> selectServiceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO); + log.error("selectServiceSubtaskList鏁版嵁鏄灏戯紵{}", selectServiceSubtaskList.size()); if (descByCode.equals("鐢佃瘽")) { - for (SvyTaskSingle svyTaskSingle1 : svyTaskSingles) { - SvyTask svyTask1 = svyTaskMapper.selectSvyTaskByTaskid(svyTaskSingle1.getTaskid()); + 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; @@ -449,21 +477,27 @@ } 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 (SvyTaskSingle svyTaskSingle1 : svyTaskSingles) { + 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(ip + ":" + req_path + "//outsideChainwt?param1=" + taskId + "¶m2=" + patid + "¶m3=" + svyTask.getTaskName() + "¶m5=false"); - log.info("閾炬帴瀹屾暣璺緞锛歿}", req_path + "//outsideChainwt?param1=" + taskId + "¶m2=" + patid + "¶m3=" + svyTask.getTaskName() + "¶m5=false"); + 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(); @@ -472,7 +506,10 @@ serviceSubtaskRecord.setTasktype(svyTaskSingle1.getType()); serviceSubtaskRecord.setPreachform("4"); serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); - serviceSubtaskRecord.setResult(aBoolean == true ? "鎴愬姛" : "澶辫触"); + serviceSubtaskRecord.setResult("鎴愬姛"); +// if (!wxCode.equals("0")) { +// serviceSubtaskRecord.setResult("澶辫触"); +// } serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); } } @@ -545,4 +582,18 @@ return key; } + private String getWXCode(String idcard, String url) { + XinHuaWXReq xinHuaWXReq = new XinHuaWXReq(); + xinHuaWXReq.setIdcard(idcard); + xinHuaWXReq.setUrl(url); + xinHuaWXReq.setKeyword1(null); + xinHuaWXReq.setKeyword2(null); + xinHuaWXReq.setKeyword3(null); + xinHuaWXReq.setKeyword4(null); + String result = HttpUtils.sendPost(thirdWXUrl, new Gson().toJson(xinHuaWXReq)); + JSONObject jsonObject = JSONObject.parseObject(result); + String code = (String) jsonObject.get("code"); + return code; + } + } -- Gitblit v1.9.3