From c0a4d1d3754cdd97ee94f4bd1f20ccaf7fe73e4c Mon Sep 17 00:00:00 2001 From: Carl <376654749@qq.com> Date: Fri, 21 Jan 2022 16:18:10 +0800 Subject: [PATCH] change Alipay pay bill logic and modify goods API entity --- .../system/alipay/conf/AlipayConfig.java | 4 +-- .../royalcanin/good/GoodController.java | 1 + .../royalcanin/good/OrderController.java | 36 +++++++++++++------ .../royalcanin/good/model/GoodsEntity.java | 2 ++ .../royalcanin/good/service/GoodService.java | 10 +++++- 5 files changed, 39 insertions(+), 14 deletions(-) diff --git a/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/alipay/conf/AlipayConfig.java b/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/alipay/conf/AlipayConfig.java index 46766946..4649b18f 100644 --- a/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/alipay/conf/AlipayConfig.java +++ b/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/alipay/conf/AlipayConfig.java @@ -26,8 +26,8 @@ public class AlipayConfig { public static String merchant_private_key = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCv5/CwdRHx2iy9CWtCTW4q7xvNa23gEdEgrg+xjkhU9S6T81txJcf0cL+3KP8vgvrz/2nG14bucYyKi96pIzHx3mOF//WwewELYL8GJ9+PN+Jp4qw+ohqDaMzQY1UWeu2bHXF4pjDHxPdfzsEftPiVys6qyO3skK1cOBaW20SmIglMtM86C0yUU8uTC++n8OVzR/63YGj1sdoKSs6SrcAL1MAITNcJUEog/rvQwPStMucISvcT/2grNBrNwLJ3OPnjwsCbBJDrrRaH7Dqlmsvynjc4OySLixuXm6WJ3DsySUMco51kWP+1Z/Y2oxCOYB2a2FnmgaKUmGIu8eJRHVjJAgMBAAECggEAHBor46TwVvkKCLFGh3MjVIyanni5NwDhrhzguPcIKzp4VH6ebzcf+LdCiZptGkQMn4qAdZndHp7ZWxD5Y4AR7JggwjmgIK+l/RFZszwPhSviahQifGcdYT0O64PTBiJhb1SG2kWCqYeYFaBMTip1REkAN1yeVhrO91qmkTc6gmfNkda1ExrIQtcqA4JQBO4IUsdQ0VMV41LYkymZvewULEUGfmBgckRAmHonNhoKzOYQYp6z644VRNeUDargmfIskTETfW4dd9yqM6E5oHKqq8jO7OTEb/Qa1qep7hMDy63G/NOEdKqaUcSxExlkTKyETOgAM17rDjT09/2vo2IMmQKBgQDnWox0WNAQdxsaGBP6YoLO+yX8yRdP1WmiCR4twtVBTC1rijRPusaea4mSIcMHijrj8UBRJZRxNvNAVkdaYs+v1qZeJnVUdP/pEihqGXiAdCQ4seFnYSUr+zUdBgM+OI70ZuXMFqpfLKiKOBUjEFWYX/TapEPsZVi4oIQX2ZstcwKBgQDCpTqGKY91fCdP9DyUH0kWZol+RaBPGn5nfOQiRCNcdchq8/nx5Ydmcj+fh739ZdhXYTLhiT2D0SuPLTf0vYsE0nAJ4dC+Da5yjQHXDy7iWDMFR9AY4y8llGrSgnSMJHps9xxQJlbfm7Jkto9PyHMMW/zZmG1hXJSG3KfMGnTR0wKBgQDOAP7YCs0aHDRxw8bmSRmZHGDy+kxbtfhdZCkPLlGd1ysKewGhjPqWzcKt8IotCJTvqz5OA1xugzOOskTO4vVz6Xoyk6QeFCBbdOOvtgZquwAVy66d0w66XvEoatYwbUQ9s/IjDHugS6+3g8CufDj7eVYZ6fLhaEzb+XIlmopmqQKBgHq9EhBzuKDO70M9sc19hOr5MY5MfXAkNr0vRfRNnza4lu7KdjwRDraNKI2CXU2ioS9IfXs2vXGXvq4ER5quwzEBOeEhYi3WFsDpJdXlHx1fnJyh0hk/eQVrd4jS9odAoWqA0HvCEVnjpjRX4jrfHZ0XjHPx6FdSt93q2myb6jo9AoGAEO55XOywOuPi9SjdnPq1dgFiD+KrwxaxjapB2u0wQVdmpDtQEVo4sf30afr2zHZ/zUHGaQpAJwDnvTFhsifzkG0jmErBC+Pp9Xz217/kLN1gPqB/cs24gkyOvm4i8Xc7ofjMhRv1RDg2geFBBhZjc29hhTRwrGB0ST0XRXDsK6A="; // 支付宝公钥,查看地址:https://openhome.alipay.com/platform/keyManage.htm 对应APPID下的支付宝公钥。 // public static String alipay_public_key ="MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAjBThgyJ3SJsx0IYUspiW+R/NDInruz2Tirr0vGmzfaNkBSDmyg2vNLmnkNrxbHApJkIRKWqGbC8yPybyjFz1nXP7oji0d/3sPKZZGdNEqOcZLaki8xPeXfOVu1T/uPH/9S084t94yQPNrD9BqehOlN+I4b/mXJ7tDGRnS2OVrQqDrPbg8pjH3OYa0bELkr71R92EHxCN4V2bSdCS1ag96/etgkodduOCmiBPVSmSRXas/GpRw92NVsRKvesWOatfjEjqST0Bz0nRuOuRnQIy1exxs/D2DHCVa6aO6TNogcPWe3C9dvxjxjw9IOiyhkGThWoWrdk8Ot+V8V8LeomcYwIDAQAB"; - public static String alipay_public_key ="MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr+fwsHUR8dosvQlrQk1uKu8bzWtt4BHRIK4PsY5IVPUuk/NbcSXH9HC/tyj/L4L68/9pxteG7nGMioveqSMx8d5jhf/1sHsBC2C/BiffjzfiaeKsPqIag2jM0GNVFnrtmx1xeKYwx8T3X87BH7T4lcrOqsjt7JCtXDgWlttEpiIJTLTPOgtMlFPLkwvvp/Dlc0f+t2Bo9bHaCkrOkq3AC9TACEzXCVBKIP670MD0rTLnCEr3E/9oKzQazcCydzj548LAmwSQ660Wh+w6pZrL8p43ODski4sbl5ulidw7MklDHKOdZFj/tWf2NqMQjmAdmthZ5oGilJhiLvHiUR1YyQIDAQAB"; - +// public static String alipay_public_key ="MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr+fwsHUR8dosvQlrQk1uKu8bzWtt4BHRIK4PsY5IVPUuk/NbcSXH9HC/tyj/L4L68/9pxteG7nGMioveqSMx8d5jhf/1sHsBC2C/BiffjzfiaeKsPqIag2jM0GNVFnrtmx1xeKYwx8T3X87BH7T4lcrOqsjt7JCtXDgWlttEpiIJTLTPOgtMlFPLkwvvp/Dlc0f+t2Bo9bHaCkrOkq3AC9TACEzXCVBKIP670MD0rTLnCEr3E/9oKzQazcCydzj548LAmwSQ660Wh+w6pZrL8p43ODski4sbl5ulidw7MklDHKOdZFj/tWf2NqMQjmAdmthZ5oGilJhiLvHiUR1YyQIDAQAB"; + public static String alipay_public_key = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCnxj/9qwVfgoUh/y2W89L6BkRAFljhNhgPdyPuBV64bfQNN1PjbCzkIM6qRdKBoLPXmKKMiFYnkd6rAoprih3/PrQEB/VsW8OoM8fxn67UDYuyBTqA23MML9q1+ilIZwBC2AQ2UBVOrFXfFl75p6/B5KsiNG9zpgmLCUYuLkxpLQIDAQAB"; // 服务器异步通知页面路径 需http://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问 public static String notify_url = "https://royalcanincn.escase.cn/jc/royalcanin/royalcanin/updateOrderAliPay"; // 页面跳转同步通知页面路径 需http://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问 diff --git a/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/royalcanin/good/GoodController.java b/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/royalcanin/good/GoodController.java index 2193e1ed..985db1f1 100644 --- a/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/royalcanin/good/GoodController.java +++ b/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/royalcanin/good/GoodController.java @@ -63,6 +63,7 @@ public class GoodController { return goodService.listGoodsByNameBankNameTagUsedAge(goodsName,petType); } + @ApiOperation(value = "查询标品信息", notes = "查询标品信息") @PostMapping("royalcanin/product/query") public String transferBrand(ProductQueryEntity productQueryEntity) throws Exception { diff --git a/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/royalcanin/good/OrderController.java b/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/royalcanin/good/OrderController.java index 0aec109a..066b22cc 100644 --- a/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/royalcanin/good/OrderController.java +++ b/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/royalcanin/good/OrderController.java @@ -203,6 +203,12 @@ public class OrderController { wxpayService.orderCallBack(request,response); } + @ApiOperation(value = "支付宝更新订单", notes = "支付宝更新订单") + @RequestMapping(value = "royalcanin/updateOrderAlipay") + public void updateOrderAlipay(HttpServletRequest request, HttpServletResponse response){ +// aliPayService.orderCallBackAliPay(request,response); + } + @ApiOperation(value = "取消订单", notes = "取消订单") @RequestMapping(value = "royalcanin/cancelOrder",method = RequestMethod.POST) public ResponseDTO cancelOrder(@RequestBody QueryEntity queryEntity) throws Exception { @@ -216,17 +222,25 @@ public class OrderController { public ResponseDTO generateOrderAliPay(String orderNo) throws Exception { OrderEntity ordersEntity = orderService.findByOrderId(orderNo); if(ordersEntity != null) { - AliPayEntity aliPayEntity = new AliPayEntity(); - - ordersEntity.setPayType("2"); - ordersEntity.setOrderStatus("0"); - if (orderService.updateOrder(ordersEntity) == 1) { - aliPayEntity.setProduct_code(ordersEntity.getProductCode()); - aliPayEntity.setTotal_amount(ordersEntity.getOrderAmount()); - aliPayEntity.setOut_trade_no(ordersEntity.getOrderNo()); - return ResponseDTO.succData(aliPayService.generateQRCode(aliPayEntity)); - } else { - return ResponseDTO.wrap(OrderResponseCodeConst.GENERATE_ORDER_FAIL); + QueryEntity queryEntity = new QueryEntity(); + queryEntity.setOrderNumber(ordersEntity.getOrderNo()); + String orderInfo = orderService.query(queryEntity); + com.alibaba.fastjson.JSONArray jsonArray = JSONObject.parseArray(orderInfo); + JSONObject jsonObject = (JSONObject)jsonArray.get(0); + if(jsonObject.getString("status").equals("0")) { + AliPayEntity aliPayEntity = new AliPayEntity(); + ordersEntity.setPayType("2"); + ordersEntity.setOrderStatus("0"); + if (orderService.updateOrder(ordersEntity) == 1) { + aliPayEntity.setProduct_code(ordersEntity.getProductCode()); + aliPayEntity.setTotal_amount(ordersEntity.getOrderAmount()); + aliPayEntity.setOut_trade_no(ordersEntity.getOrderNo()); + return ResponseDTO.succData(aliPayService.generateQRCode(aliPayEntity)); + } else { + return ResponseDTO.wrap(OrderResponseCodeConst.GENERATE_ORDER_FAIL); + } + }else{ + return ResponseDTO.wrap(OrderResponseCodeConst.GENERATE_ORDER_ERROR); } }else{ return ResponseDTO.wrap(OrderResponseCodeConst.WITHOUT_ORDER); diff --git a/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/royalcanin/good/model/GoodsEntity.java b/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/royalcanin/good/model/GoodsEntity.java index 5a64118c..61bf17fe 100644 --- a/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/royalcanin/good/model/GoodsEntity.java +++ b/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/royalcanin/good/model/GoodsEntity.java @@ -2,6 +2,7 @@ package net.lab1024.smartadmin.module.system.royalcanin.good.model; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; +import net.lab1024.smartadmin.util.SmartIPUtil; @Data @TableName("t_good_goods") @@ -25,6 +26,7 @@ public class GoodsEntity { private String tagUsedAge; + private String picture; private String showImgFile; diff --git a/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/royalcanin/good/service/GoodService.java b/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/royalcanin/good/service/GoodService.java index 58f940e5..d3f2925b 100644 --- a/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/royalcanin/good/service/GoodService.java +++ b/smart-admin-service/smart-admin-api/src/main/java/net/lab1024/smartadmin/module/system/royalcanin/good/service/GoodService.java @@ -10,10 +10,12 @@ import net.lab1024.smartadmin.module.system.royalcanin.good.model.ProductQueryEn import net.lab1024.smartadmin.util.AESUtil; import net.lab1024.smartadmin.util.MapRemoveNullUtil; import net.lab1024.smartadmin.util.SmartHttpUtil; +import net.lab1024.smartadmin.util.SmartIPUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -35,7 +37,13 @@ public class GoodService { } public List listGoodsByNameBankNameTagUsedAge(String title,String petType){ - return goodsDao.selectRoleIdByGoodsNameBankNameTagUsedAge(title,petType); + String ip = "https://royalcanincn.escase.cn/jc/royalcanin/"; + List goodsList = goodsDao.selectRoleIdByGoodsNameBankNameTagUsedAge(title,petType); + for (GoodsEntity goodsEntity:goodsList) { + goodsEntity.setShowImgFile(ip+goodsEntity.getPicture()); + goodsEntity.setPicture(ip+goodsEntity.getPicture()); + } + return goodsList; } public String brandQuery(ProductQueryEntity productQueryEntity) throws Exception {