From ee0fbee3e0688baa3e41c525dd3ec1ad1e486203 Mon Sep 17 00:00:00 2001 From: isnail Date: Thu, 9 May 2024 10:48:50 +0800 Subject: [PATCH] =?UTF-8?q?2.0=E7=89=88=E6=8E=A5=E5=8F=A3=E5=AE=8C?= =?UTF-8?q?=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/ruoyi/api/EncryptDemo.java | 19 +++---- .../ruoyi/api/controller/APIControllerV2.java | 12 +++-- .../api/controller/BaseTestController.java | 9 ++++ .../java/com/ruoyi/ct/service/CTService.java | 5 ++ .../service/impl/AgentOrderServiceImpl.java | 1 + .../ruoyi/ct/service/impl/CTServiceImpl.java | 52 +++++++++++++++++-- ruoyi-ui/src/views/ct/agentOrder/index.vue | 20 ++++++- 7 files changed, 99 insertions(+), 19 deletions(-) diff --git a/api/src/main/java/com/ruoyi/api/EncryptDemo.java b/api/src/main/java/com/ruoyi/api/EncryptDemo.java index fe64550..ac98eab 100644 --- a/api/src/main/java/com/ruoyi/api/EncryptDemo.java +++ b/api/src/main/java/com/ruoyi/api/EncryptDemo.java @@ -10,9 +10,9 @@ public class EncryptDemo { public static void main(String[] args) { // SM2的公钥 // String publicKey = "MFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAEZRdaHuSCG8U87+Cmh9LKbgC+DRBEwWpAyN31aCzoE1flWonnZezX2GqbvDdz7a0AxE6+FGEH1lxPYW39XhYupw=="; - String publicKey = "MFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAEPWIPW8Q8OvHvDfDe3cA4ipkUvR+sDLpqA5uCDqp4BQy3iYCUO62HdNsBnB8/IplMZy8LiJeiRkt0zn740FqGtw=="; + String publicKey = "MFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAEjMraf2DTr2W9DfIZDVyplPtPQw8ty1MbWnJ0emDbkXRUq/ynJSgB6NUi1D7UJnxMlo5Z+WiHSvCKBN65RN5BWQ=="; // SM2的私钥 - String privateKey = "MIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQggIODudYqK6cb2KKXtVAcoMRSoWotOAuZRKqbgixUmdmgCgYIKoEcz1UBgi2hRANCAARR6gv7bA9ZXo7nr5dnk7K2q8JrnaoyDZ3mr2GPvPVlff9BH/jc6E9j1Ua6GJLpHsjdR+DgdoHrZNF4BqgaabQL"; + String privateKey = "MIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQgenZMgK4OLvsGmSiYKQSavKg1DbsZyUSFVP4Eg1+gZo2gCgYIKoEcz1UBgi2hRANCAAQGwB5pjmjqOFpvoDoEt9OqimkptKrz92qzkd67tPAtNMb2dBgo/Yf8vnn4EaJ0SNIeK4Opv8Tdvd1uF0M4qdOz"; // String privateKey = "MIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQghUZb+m/+ficnlbtoVJhkbUsw9FKQ5yF1wYcOP+tRQK+gCgYIKoEcz1UBgi2hRANCAASsJ3XVa/Udszyl0/tudSM7tUJsK190+2UQmEEZ6qLbRguzN+vaI3dsc04KllUojTRgXvE3vfaNAHOwQ6H5cjH+"; // 初始化SM2 SM2 sm2 = SmUtil.sm2(privateKey, publicKey); @@ -21,18 +21,19 @@ public class EncryptDemo { // String encryptStr3 = sm2.encryptBase64("13371893748", KeyType.PublicKey); // System.out.println(sm2.encryptBase64("e34c1951-c492-4ed5-8e02-1e44eee3df7b", KeyType.PublicKey)); // System.out.println(encryptStr); + String a = "69bd19ff-8fff-400e-9aba-25e36f1f5438"; String b = "{\n" + - " \"saleId\": \"108103\",\n" + + " \"saleId\": \"108783\",\n" + " \"name\": \"毕彦兵\",\n" + " \"idCard\": \"230104198809293718\",\n" + " \"contactMobile\": \"18980692055\",\n" + - " \"province\": \"黑龙江省\",\n" + - " \"city\": \"哈尔滨市\",\n" + - " \"county\": \"松北区\",\n" + - " \"installedAddress\": \"世茂大道\",\n" + - " \"number\": \"17301750842\"\n" + +// " \"province\": \"黑龙江省\",\n" + +// " \"city\": \"哈尔滨市\",\n" + +// " \"county\": \"松北区\",\n" + +// " \"installedAddress\": \"世茂大道\",\n" + + " \"number\": \"15317740623\"\n" + "}"; - String c = "\"serialNumber\": \"5fc6023a2b7749a18c3663f27812c7cd\""; + String c = "{\"serialNumber\": \"437f78390b4c4a57b91cb804da0fe424\"}"; System.out.println(sm2.encryptBase64(c, KeyType.PublicKey)); // System.out.println(encryptStr3); // 使用SM2解密字符串 diff --git a/api/src/main/java/com/ruoyi/api/controller/APIControllerV2.java b/api/src/main/java/com/ruoyi/api/controller/APIControllerV2.java index 972a951..11e37e9 100644 --- a/api/src/main/java/com/ruoyi/api/controller/APIControllerV2.java +++ b/api/src/main/java/com/ruoyi/api/controller/APIControllerV2.java @@ -158,7 +158,7 @@ public class APIControllerV2 extends BaseController { agentOrderBo.setAgentId(agentAccountVo.getAgentId()); agentOrderBo.setStoreId("13"); agentOrderBo.setSerialNumber(UUID.randomUUID().toString().replace("-", "")); - agentOrderBo.setStatus("0"); + agentOrderBo.setStatus("2"); agentOrderBo.setPersonnelId(agentAccountVo.getPersonnelId()); agentOrderBo.setCreateTime(new Date()); AgentAccountGoodVo agentAccountGoodVo; @@ -301,7 +301,7 @@ public class APIControllerV2 extends BaseController { agentOrderBo.setAgentId(agentAccountVo.getAgentId()); agentOrderBo.setStoreId("13"); agentOrderBo.setSerialNumber(UUID.randomUUID().toString().replace("-", "")); - agentOrderBo.setStatus("0"); + agentOrderBo.setStatus("2"); agentOrderBo.setPersonnelId(agentAccountVo.getPersonnelId()); agentOrderBo.setCreateTime(new Date()); AgentAccountGoodVo agentAccountGoodVo; @@ -385,7 +385,7 @@ public class APIControllerV2 extends BaseController { // saveLog(request, agentAccountVo.getPersonnelId(), 0, "区为空", null); // return R.fail(ERROR_CODE_PARAMS, "参数错误"); // } - agentOrderBo.setCity("黄浦区"); + agentOrderBo.setCounty("黄浦区"); // if (ObjectUtils.isNull(agentOrderBo.getInstalledAddress())) { // log.error("地址为空"); // saveLog(request, agentAccountVo.getPersonnelId(), 0, "地址为空", null); @@ -397,6 +397,7 @@ public class APIControllerV2 extends BaseController { agentOrderBo.setInstallAddress("南京西路1号"); agentOrderBo.setInstalledAddress("南京西路1号"); agentOrderBo.setIsExpress(0); + agentOrderBo.setApiVersion("V2.0.0"); // todo 根据代理商提供的验证url验证用户 JSONObject paramMap = new JSONObject(); paramMap.set("name", agentOrderBo.getName()); @@ -455,7 +456,7 @@ public class APIControllerV2 extends BaseController { agentOrderVo.getIdCard(), requestBody.getStr("type"), agentOrderVo.getUploadMsgId(), requestBody.getStr("img")); if (response.isSuccess()) { AgentOrderBo agentOrderBo = new AgentOrderBo(); - agentOrderBo.setApiVersion("V2.0.0"); +// agentOrderBo.setApiVersion("V2.0.0"); agentOrderBo.setId(agentOrderVo.getId()); agentOrderBo.setUploadMsgId(response.getData()); if (requestBody.getStr("type").equals("idCardFront")) { @@ -520,7 +521,8 @@ public class APIControllerV2 extends BaseController { agentOrderVo.getPersonnelId(), agentOrderVo.getProvince(), agentOrderVo.getCity(), agentOrderVo.getCounty(), agentOrderVo.getSerialNumber(), agentOrderVo.getNumber(), agentOrderVo.getLogiRemark(), agentOrderVo.getPageUrl(), agentOrderVo.getRemark(), - agentOrderVo.getInstallAddress(), "", "idCardFront,idCardBack,frontFace"); + agentOrderVo.getInstallAddress(), "", "idCardFront,idCardBack,frontFace", + "2"); if (response.isSuccess()) { AgentOrderBo agentOrderBo = new AgentOrderBo(); agentOrderBo.setId(agentOrderVo.getId()); diff --git a/api/src/main/java/com/ruoyi/api/controller/BaseTestController.java b/api/src/main/java/com/ruoyi/api/controller/BaseTestController.java index 3c528ea..7c524ed 100644 --- a/api/src/main/java/com/ruoyi/api/controller/BaseTestController.java +++ b/api/src/main/java/com/ruoyi/api/controller/BaseTestController.java @@ -40,6 +40,15 @@ public class BaseTestController { * 电信网络异常 */ public final static Integer ERROR_CODE_NETWORK = 1003; + /** + * 验证错误 + */ + public final static Integer ERROR_CODE_VERIFY = 1004; + + /** + * H5验证错误 + */ + public final static Integer CODE_ERROR = 1005; public final static String APP_ID = "02a42036-fe1f-4ef1-945a-08660a946b38"; public final static String APP_SECRET = "ff2b4dd8-5843-475d-ac4e-c41bb77537fc"; diff --git a/ct/src/main/java/com/ruoyi/ct/service/CTService.java b/ct/src/main/java/com/ruoyi/ct/service/CTService.java index c17111a..6cd8482 100644 --- a/ct/src/main/java/com/ruoyi/ct/service/CTService.java +++ b/ct/src/main/java/com/ruoyi/ct/service/CTService.java @@ -19,6 +19,11 @@ public interface CTService { String county, String serialNumber, String number, String logiRemark, String pageUrl, String remark, String installAddress, String ynumber2, String images) throws Exception; + CTResponse saveOrder(String name, String idCard, String contactMobile, String installedAddress, + String saleId, String storeId, String personnelId, String province, String city, + String county, String serialNumber, String number, String logiRemark, String pageUrl, + String remark, String installAddress, String ynumber2, String images, String deliveryMethod) throws Exception; + CTResponse uploadFile(String serialNumber, String name, String idCard, String type, String msgId, String img) throws Exception; CTResponse updateOrder(String name, String orderNum) throws Exception; diff --git a/ct/src/main/java/com/ruoyi/ct/service/impl/AgentOrderServiceImpl.java b/ct/src/main/java/com/ruoyi/ct/service/impl/AgentOrderServiceImpl.java index 1b52349..eddf026 100755 --- a/ct/src/main/java/com/ruoyi/ct/service/impl/AgentOrderServiceImpl.java +++ b/ct/src/main/java/com/ruoyi/ct/service/impl/AgentOrderServiceImpl.java @@ -112,6 +112,7 @@ public class AgentOrderServiceImpl implements IAgentOrderService { lqw.eq(StringUtils.isNotBlank(bo.getStatusCd()), AgentOrder::getStatusCd, bo.getStatusCd()); lqw.eq(StringUtils.isNotBlank(bo.getRouteArr()), AgentOrder::getRouteArr, bo.getRouteArr()); lqw.eq(ObjectUtils.isNotNull(bo.getIsRecharge()), AgentOrder::getIsRecharge, bo.getIsRecharge()); + lqw.eq(ObjectUtils.isNotNull(bo.getIsExpress()), AgentOrder::getIsExpress, bo.getIsExpress()); lqw.between(params.get("beginCreateTime") != null && params.get("endCreateTime") != null, AgentOrder::getCreateTime ,params.get("beginCreateTime"), params.get("endCreateTime")); lqw.orderByDesc(AgentOrder::getCreateTime); diff --git a/ct/src/main/java/com/ruoyi/ct/service/impl/CTServiceImpl.java b/ct/src/main/java/com/ruoyi/ct/service/impl/CTServiceImpl.java index 7a3c1d6..e7cb85f 100644 --- a/ct/src/main/java/com/ruoyi/ct/service/impl/CTServiceImpl.java +++ b/ct/src/main/java/com/ruoyi/ct/service/impl/CTServiceImpl.java @@ -204,11 +204,55 @@ public class CTServiceImpl implements CTService { body.put("province", province); body.put("city", city); body.put("county", county); - if (ObjectUtil.isNull(installedAddress) || ObjectUtil.isNull(province) || ObjectUtil.isNull(city) || ObjectUtil.isNull(county)) { - body.put("deliveryMethod", "2"); - } else { - body.put("deliveryMethod", "1"); + body.put("serialNumber", serialNumber); + body.put("number", number); + body.put("logiRemark", logiRemark); + body.put("pageUrl", pageUrl); + body.put("remark", remark); + body.put("installAddress", installAddress); +// body.put("ynumber2", ynumber2); +// body.put("images", images); + log.info("body:" + body); + requestBody.setEncryption(JSONUtil.toJsonStr(body), publicKey); + HttpResponse httpResponse = HttpRequest.post(url) + .header("token", token) + .form(requestBody.toMap()) + .execute(); + log.error("body:"+httpResponse.body()); + if (httpResponse.isOk()) { + CTResponse response = JSONUtil.toBean(httpResponse.body(), CTResponse.class); + return response; } + log.error("response status:"+httpResponse.getStatus()); + log.error("request error"); + return null; + } + log.error("token error"); + return null; + } + + @Override + public CTResponse saveOrder(String name, String idCard, String contactMobile, + String installedAddress, String saleId, String storeId, + String personnelId, String province, String city, + String county, String serialNumber, String number, + String logiRemark, String pageUrl, String remark, + String installAddress, String ynumber2, String images, String deliveryMethod) throws Exception { + if (checkToken()) { + requestBody.setInterfaceName("SaveOrder"); + Map body = new HashMap<>(); + + body.put("name", name); + body.put("idCard", idCard); + body.put("contactMobile", contactMobile); + body.put("installedAddress", installedAddress); + body.put("saleId", saleId); + body.put("storeId", storeId); + body.put("personnelId", personnelId); + body.put("province", province); + body.put("city", city); + body.put("county", county); + body.put("deliveryMethod", deliveryMethod); body.put("serialNumber", serialNumber); body.put("number", number); body.put("logiRemark", logiRemark); diff --git a/ruoyi-ui/src/views/ct/agentOrder/index.vue b/ruoyi-ui/src/views/ct/agentOrder/index.vue index fdedcd0..3fb2db9 100755 --- a/ruoyi-ui/src/views/ct/agentOrder/index.vue +++ b/ruoyi-ui/src/views/ct/agentOrder/index.vue @@ -106,6 +106,16 @@ :default-time="['00:00:00', '23:59:59']" > + + + + + 搜索 重置 @@ -247,6 +257,13 @@ {{ parseTime(scope.row.updateTime, '{y}-{m}-{d}') }} --> + + + + +