diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 7266eac..a7091d2 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -10,6 +10,7 @@ + @@ -36,6 +37,7 @@ + diff --git a/.idea/encodings.xml b/.idea/encodings.xml index f116e8e..e410bf4 100644 --- a/.idea/encodings.xml +++ b/.idea/encodings.xml @@ -11,6 +11,7 @@ + diff --git a/spzx-service-client/pom.xml b/spzx-service-client/pom.xml index d60ad85..f450633 100644 --- a/spzx-service-client/pom.xml +++ b/spzx-service-client/pom.xml @@ -16,6 +16,7 @@ service-product-client service-user-client service-cart-client + service-order-client diff --git a/spzx-service-client/service-order-client/pom.xml b/spzx-service-client/service-order-client/pom.xml new file mode 100644 index 0000000..a782c37 --- /dev/null +++ b/spzx-service-client/service-order-client/pom.xml @@ -0,0 +1,23 @@ + + 4.0.0 + + com.atguigu + spzx-service-client + 1.0-SNAPSHOT + + + service-order-client + jar + + service-order-client + https://maven.apache.org + + + UTF-8 + + + + + + diff --git a/spzx-service-client/service-order-client/src/main/java/com/atguigu/feign/order/OrderFeignClient.java b/spzx-service-client/service-order-client/src/main/java/com/atguigu/feign/order/OrderFeignClient.java new file mode 100644 index 0000000..aaa7294 --- /dev/null +++ b/spzx-service-client/service-order-client/src/main/java/com/atguigu/feign/order/OrderFeignClient.java @@ -0,0 +1,13 @@ +package com.atguigu.feign.order; + +import com.atguigu.spzx.model.entity.order.OrderInfo; +import com.atguigu.spzx.model.vo.result.Result; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; + +@FeignClient(value = "service-order", path = "/api/order/orderInfo") +public interface OrderFeignClient { + @GetMapping("/auth/getOrderInfoByOrderNo/{orderNo}") + Result getOrderInfoByOrderNo(@PathVariable String orderNo); +} \ No newline at end of file diff --git a/spzx-service/service-order/src/main/java/com/atguigu/order/OrderApplication.java b/spzx-service/service-order/src/main/java/com/atguigu/order/OrderApplication.java index a5e4776..24d8646 100644 --- a/spzx-service/service-order/src/main/java/com/atguigu/order/OrderApplication.java +++ b/spzx-service/service-order/src/main/java/com/atguigu/order/OrderApplication.java @@ -7,7 +7,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.openfeign.EnableFeignClients; @SpringBootApplication -@EnableFeignClients(basePackages = {"com.atguigu.feign.cart", "com.atguigu.feign.user"}) +@EnableFeignClients(basePackages = {"com.atguigu.feign"}) @EnableUserTokenFeignInterceptor @Slf4j public class OrderApplication { diff --git a/spzx-service/service-order/src/main/java/com/atguigu/order/controller/OrderInfoController.java b/spzx-service/service-order/src/main/java/com/atguigu/order/controller/OrderInfoController.java index 4dc09cf..e987d7f 100644 --- a/spzx-service/service-order/src/main/java/com/atguigu/order/controller/OrderInfoController.java +++ b/spzx-service/service-order/src/main/java/com/atguigu/order/controller/OrderInfoController.java @@ -5,6 +5,7 @@ import com.atguigu.spzx.model.dto.h5.OrderInfoDto; import com.atguigu.spzx.model.entity.order.OrderInfo; import com.atguigu.spzx.model.vo.h5.TradeVo; import com.atguigu.spzx.model.vo.result.Result; +import com.atguigu.spzx.model.vo.result.ResultCodeEnum; import com.github.pagehelper.PageInfo; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; @@ -59,4 +60,11 @@ public class OrderInfoController { PageInfo pageInfo = orderInfoService.findUserPage(page, limit, orderStatus); return Result.success(pageInfo); } + + @Operation(summary = "获取订单信息") + @GetMapping("auth/getOrderInfoByOrderNo/{orderNo}") + public Result getOrderInfoByOrderNo(@Parameter(name = "orderId", description = "订单id", required = true) @PathVariable String orderNo) { + OrderInfo orderInfo = orderInfoService.getByOrderNo(orderNo); + return Result.build(orderInfo, ResultCodeEnum.SUCCESS); + } } \ No newline at end of file diff --git a/spzx-service/service-order/src/main/java/com/atguigu/order/mapper/OrderInfoMapper.java b/spzx-service/service-order/src/main/java/com/atguigu/order/mapper/OrderInfoMapper.java index ebdd1f0..368fc38 100644 --- a/spzx-service/service-order/src/main/java/com/atguigu/order/mapper/OrderInfoMapper.java +++ b/spzx-service/service-order/src/main/java/com/atguigu/order/mapper/OrderInfoMapper.java @@ -23,4 +23,12 @@ public interface OrderInfoMapper { OrderInfo getById(Long orderId); List findUserPage(Long userId, Integer orderStatus); + + /** + * 获取订单信息 + * + * @param orderNo 订单编号 + * @return 订单信息 + */ + OrderInfo getOrderInfoByOrderNo(String orderNo); } diff --git a/spzx-service/service-order/src/main/java/com/atguigu/order/service/OrderInfoService.java b/spzx-service/service-order/src/main/java/com/atguigu/order/service/OrderInfoService.java index b1bcaa8..81ec280 100644 --- a/spzx-service/service-order/src/main/java/com/atguigu/order/service/OrderInfoService.java +++ b/spzx-service/service-order/src/main/java/com/atguigu/order/service/OrderInfoService.java @@ -46,4 +46,12 @@ public interface OrderInfoService { * @return PageInfo */ PageInfo findUserPage(Integer page, Integer limit, Integer orderStatus); + + /** + * 获取订单信息 + * + * @param orderNo 订单好 + * @return OrderInfo + */ + OrderInfo getByOrderNo(String orderNo); } diff --git a/spzx-service/service-order/src/main/java/com/atguigu/order/service/impl/OrderInfoServiceImpl.java b/spzx-service/service-order/src/main/java/com/atguigu/order/service/impl/OrderInfoServiceImpl.java index 7c55136..0e85ee0 100644 --- a/spzx-service/service-order/src/main/java/com/atguigu/order/service/impl/OrderInfoServiceImpl.java +++ b/spzx-service/service-order/src/main/java/com/atguigu/order/service/impl/OrderInfoServiceImpl.java @@ -211,4 +211,18 @@ public class OrderInfoServiceImpl implements OrderInfoService { return new PageInfo<>(orderInfoList); } + + /** + * 获取订单信息 + * + * @param orderNo 订单好 + * @return OrderInfo + */ + @Override + public OrderInfo getByOrderNo(String orderNo) { + OrderInfo orderInfo = orderInfoMapper.getOrderInfoByOrderNo(orderNo); + List orderItemList = orderItemMapper.findByOrderId(orderInfo.getId()); + orderInfo.setOrderItemList(orderItemList); + return orderInfo; + } } diff --git a/spzx-service/service-order/src/main/resources/mapper/OrderInfoMapper.xml b/spzx-service/service-order/src/main/resources/mapper/OrderInfoMapper.xml index 95c8172..a63c566 100644 --- a/spzx-service/service-order/src/main/resources/mapper/OrderInfoMapper.xml +++ b/spzx-service/service-order/src/main/resources/mapper/OrderInfoMapper.xml @@ -81,4 +81,12 @@ order by id desc + + + diff --git a/spzx-service/service-pay/pom.xml b/spzx-service/service-pay/pom.xml index a5392ac..8f5f910 100644 --- a/spzx-service/service-pay/pom.xml +++ b/spzx-service/service-pay/pom.xml @@ -22,5 +22,11 @@ com.alipay.sdk alipay-sdk-java + + + com.atguigu + service-order-client + 1.0-SNAPSHOT + diff --git a/spzx-service/service-pay/src/main/java/com/atguigu/pay/PayApplication.java b/spzx-service/service-pay/src/main/java/com/atguigu/pay/PayApplication.java index 79d7b3c..f6d6659 100644 --- a/spzx-service/service-pay/src/main/java/com/atguigu/pay/PayApplication.java +++ b/spzx-service/service-pay/src/main/java/com/atguigu/pay/PayApplication.java @@ -5,9 +5,11 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.cloud.openfeign.EnableFeignClients; @SpringBootApplication @EnableConfigurationProperties(value = {AlipayProperties.class}) +@EnableFeignClients(basePackages = {"com.atguigu.feign"}) @Slf4j public class PayApplication { public static void main(String[] args) { diff --git a/spzx-service/service-pay/src/main/java/com/atguigu/pay/mapper/PaymentInfoMapper.java b/spzx-service/service-pay/src/main/java/com/atguigu/pay/mapper/PaymentInfoMapper.java index cb0e807..b263e6f 100644 --- a/spzx-service/service-pay/src/main/java/com/atguigu/pay/mapper/PaymentInfoMapper.java +++ b/spzx-service/service-pay/src/main/java/com/atguigu/pay/mapper/PaymentInfoMapper.java @@ -1,7 +1,22 @@ package com.atguigu.pay.mapper; +import com.atguigu.spzx.model.entity.pay.PaymentInfo; import org.apache.ibatis.annotations.Mapper; @Mapper public interface PaymentInfoMapper { + /** + * 根据订单编号查询支付记录 + * + * @param orderNo orderNo + * @return PaymentInfo + */ + PaymentInfo getByOrderNo(String orderNo); + + /** + * 提阿加 + * + * @param paymentInfo paymentInfo + */ + void save(PaymentInfo paymentInfo); } diff --git a/spzx-service/service-pay/src/main/java/com/atguigu/pay/service/AlipayService.java b/spzx-service/service-pay/src/main/java/com/atguigu/pay/service/AlipayService.java index e0029fa..59931ef 100644 --- a/spzx-service/service-pay/src/main/java/com/atguigu/pay/service/AlipayService.java +++ b/spzx-service/service-pay/src/main/java/com/atguigu/pay/service/AlipayService.java @@ -1,5 +1,7 @@ package com.atguigu.pay.service; +import com.alipay.api.AlipayApiException; + public interface AlipayService { /** * 提交支付 @@ -7,5 +9,5 @@ public interface AlipayService { * @param orderNo 订单提交 * @return 支付表单 */ - String submitAlipay(String orderNo); + String submitAlipay(String orderNo) throws AlipayApiException; } \ No newline at end of file diff --git a/spzx-service/service-pay/src/main/java/com/atguigu/pay/service/PaymentInfoService.java b/spzx-service/service-pay/src/main/java/com/atguigu/pay/service/PaymentInfoService.java index 40a8ad7..d56d5cf 100644 --- a/spzx-service/service-pay/src/main/java/com/atguigu/pay/service/PaymentInfoService.java +++ b/spzx-service/service-pay/src/main/java/com/atguigu/pay/service/PaymentInfoService.java @@ -1,4 +1,13 @@ package com.atguigu.pay.service; +import com.atguigu.spzx.model.entity.pay.PaymentInfo; + public interface PaymentInfoService { + /** + * 保存支付记录 + * + * @param orderNo 提交订单 + * @return 支付信息 + */ + PaymentInfo savePaymentInfo(String orderNo); } diff --git a/spzx-service/service-pay/src/main/java/com/atguigu/pay/service/impl/AlipayServiceImpl.java b/spzx-service/service-pay/src/main/java/com/atguigu/pay/service/impl/AlipayServiceImpl.java index 67cc7c6..236dd4e 100644 --- a/spzx-service/service-pay/src/main/java/com/atguigu/pay/service/impl/AlipayServiceImpl.java +++ b/spzx-service/service-pay/src/main/java/com/atguigu/pay/service/impl/AlipayServiceImpl.java @@ -1,13 +1,23 @@ package com.atguigu.pay.service.impl; +import com.alibaba.fastjson.JSON; +import com.alipay.api.AlipayApiException; import com.alipay.api.AlipayClient; +import com.alipay.api.request.AlipayTradeWapPayRequest; +import com.alipay.api.response.AlipayTradeWapPayResponse; +import com.atguigu.exception.BunnyException; import com.atguigu.pay.properties.AlipayProperties; import com.atguigu.pay.service.AlipayService; import com.atguigu.pay.service.PaymentInfoService; +import com.atguigu.spzx.model.entity.pay.PaymentInfo; +import com.atguigu.spzx.model.vo.result.ResultCodeEnum; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.math.BigDecimal; +import java.util.HashMap; + @Service @Slf4j public class AlipayServiceImpl implements AlipayService { @@ -27,7 +37,35 @@ public class AlipayServiceImpl implements AlipayService { * @return 支付表单 */ @Override - public String submitAlipay(String orderNo) { - return null; + public String submitAlipay(String orderNo) throws AlipayApiException { + // 保存支付记录 + PaymentInfo paymentInfo = paymentInfoService.savePaymentInfo(orderNo); + + // 创建API对应的request + AlipayTradeWapPayRequest alipayRequest = new AlipayTradeWapPayRequest(); + + // 同步回调 + alipayRequest.setReturnUrl(alipayProperties.getReturnPaymentUrl()); + + // 异步回调 + alipayRequest.setNotifyUrl(alipayProperties.getNotifyPaymentUrl()); + // 准备请求参数 ,声明一个map 集合 + HashMap map = new HashMap<>(); + map.put("out_trade_no", paymentInfo.getOrderNo()); + map.put("product_code", "QUICK_WAP_WAY"); + // map.put("total_amount",paymentInfo.getAmount()); + map.put("total_amount", new BigDecimal("0.01")); + map.put("subject", paymentInfo.getContent()); + alipayRequest.setBizContent(JSON.toJSONString(map)); + + // 发送请求 + AlipayTradeWapPayResponse response = alipayClient.pageExecute(alipayRequest); + if (response.isSuccess()) { + log.info("调用成功"); + return response.getBody(); + } else { + log.info("调用失败"); + throw new BunnyException(ResultCodeEnum.DATA_ERROR); + } } } \ No newline at end of file diff --git a/spzx-service/service-pay/src/main/java/com/atguigu/pay/service/impl/PaymentInfoServiceImpl.java b/spzx-service/service-pay/src/main/java/com/atguigu/pay/service/impl/PaymentInfoServiceImpl.java index 355d4bd..7d7e0cd 100644 --- a/spzx-service/service-pay/src/main/java/com/atguigu/pay/service/impl/PaymentInfoServiceImpl.java +++ b/spzx-service/service-pay/src/main/java/com/atguigu/pay/service/impl/PaymentInfoServiceImpl.java @@ -1,8 +1,49 @@ package com.atguigu.pay.service.impl; +import com.atguigu.feign.order.OrderFeignClient; +import com.atguigu.pay.mapper.PaymentInfoMapper; import com.atguigu.pay.service.PaymentInfoService; +import com.atguigu.spzx.model.entity.order.OrderInfo; +import com.atguigu.spzx.model.entity.order.OrderItem; +import com.atguigu.spzx.model.entity.pay.PaymentInfo; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @Service public class PaymentInfoServiceImpl implements PaymentInfoService { + @Autowired + private PaymentInfoMapper paymentInfoMapper; + @Autowired + private OrderFeignClient orderFeignClient; + + /** + * 保存支付记录 + * + * @param orderNo 提交订单 + * @return 支付信息 + */ + @Override + public PaymentInfo savePaymentInfo(String orderNo) { + // 根据订单编号查询支付记录 + PaymentInfo paymentInfo = paymentInfoMapper.getByOrderNo(orderNo); + // 判断支付记录是否存在 + if (paymentInfo == null) { + // 远程调用获取订单信息 + OrderInfo orderInfo = orderFeignClient.getOrderInfoByOrderNo(orderNo).getData(); + paymentInfo = new PaymentInfo(); + paymentInfo.setUserId(orderInfo.getUserId()); + paymentInfo.setPayType(orderInfo.getPayType()); + StringBuilder content = new StringBuilder(); + for (OrderItem item : orderInfo.getOrderItemList()) { + content.append(item.getSkuName()).append(" "); + } + paymentInfo.setContent(content.toString()); + paymentInfo.setAmount(orderInfo.getTotalAmount()); + paymentInfo.setOrderNo(orderNo); + paymentInfo.setPaymentStatus(0); + // 添加 + paymentInfoMapper.save(paymentInfo); + } + return paymentInfo; + } } diff --git a/spzx-service/service-pay/src/main/resources/application-alipay.yml b/spzx-service/service-pay/src/main/resources/application-alipay.yml new file mode 100644 index 0000000..0d06b27 --- /dev/null +++ b/spzx-service/service-pay/src/main/resources/application-alipay.yml @@ -0,0 +1,7 @@ +alipay: + alipay_url: https://openapi.alipaydev.com/gateway.do + app_id: 2021000122609658 + app_private_key: MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCXHXwKl51d5htttzJDQg1Oq+w/RAdjdGlTgGlodWxM5Vszd9IgnEffB2HlsGcpgHDteppONr8rWsEy/LmwaMR9C83YfgFPRbSIYATrQw1VynuwEFwvlW5FBT00QUqmL1AXaFGWLAao8xjRjQiArhnQA+o88DXEVnUwHTWFd8aOymesOUjJGWOId6x1MnK8om66Zxc/QFR/vZoQaE8YrATNGMMd1O1CGsnwgJ1bBOcG1Cv1dF903gllGwkLhSE3LK1/SbUg0fUi8mHU0EUyasbknlFqBdvFvJZZJ0NC+Z2sZqXV57DLa8M7bp6+YsDuc0o0EAVnLx7beYlDjwGDMgqxAgMBAAECggEAJo9UfpNviW1VJGrxvW3WXXPLRd2DESK8WZ1TyF7mMrz3x6tUiBO41zVYCrc3q8RljIOTak/X+iUfVXZdn6EsOkhPz2Vfyi2cQoxV1P54IaMYarXSACZeS+hpVLMwbDV4d3CcGPjE/kmB1L7rI4LJfWXyWHhnD+GL56ocZSFKHlcsY2bx99T+HHKTretBRnLQ8q8/iZLkTbxReaMd3o9dGTqS75d3O1nT4u0A8Pupo2dPrlE7NvtOLJMEKixToJPAfJ0b2/H1nxV19/ZW3xvRPJjSIdx32ULuUIyzkAMlH5jwO3D9NMR8fbLcsewgDAif0sPB3USpUT/4AfmJAdcVrQKBgQDf1DnUXQ/JPH/SS78W1EdUzvhGjead1NCG70gZH9YKWS3+l4wkl7l1bqrXGe17jVnPD0vHQZT7V9MjQpa0n9mGU6jKt7ym27BQwF6CLqLE82ITKKqRhUAY7D/TpXPD+DI4STmRqEWDzCgAeX2B9Y7MtOndlExPh8ZxPKtPxDPsNwKBgQCs1cH8h/nGXMv2I0hLPdIKVAQRPDCVBpzuycxn2ezHDcz5rBrYsjOpdNr3SWzcavduGI4A673uWa5znO2KE4e8Y8Uoi75wI7nx4/VapsnS8IuqpIOpkLR2ovEjxGz1BI6QyIg1Xl3QFF65BBVEucgYeLXvt/dMdUA7Z7id/h9cVwKBgDZkZmE69Dkc4JsEGT28/FCZsy/CEAbOzpXb1BN27xa4sTqrLT0/OaxV5mI7RMC/itGMkAet4jxqDT8GUYU3Sy8faWdJ2yhZPrGA7faIyrk9w9mQClMupHLqBmCyVj2LNPkEol7JG4t5s0baPyuztq38UNCt1xWEky61ZZQOw+dlAoGAQdEhD0bEwlpCPZhQBn8jRlWaOun94jJjfreQRJgDiAXkYcu9aXnrHIPogrUOZJ3DXcSyBv2/FU5HlbVT6/nl/cLMqNUWj2O7grb5jyzmvJJnzXLaxK7bWjZQt/ssNt4mYFJNNG2cMgofzDsW0lYhMdh+CCy5Wv9nl3e3IUtNq/8CgYASPcPdaCBLzCSGlTV9HMhQwRhOpWLOzQNKprebQf0fubNFGd6+yfM6DdejHXf6KH4IgV9l8OPe5ro85tmrBkvMlbh7KHbpYJ/V9cdMKd+kbxoJTkRKCnoZhY5QSuEMoC8OB1qhzJeuoqUvmpi0q569IBXrxZguD29ZqwGxoa1KNg== + alipay_public_key: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAk41ooyX7utKM9B7jNcc4EzmyVU0Qfs18KFVFwyhl7YQMw/PB2YVQreVSvvb1rS/2YVxcjLK/9ehD//79b8aoxhFlEGqA7fGu0C2UR6pl+PhmRLcHeyN+DOG87Fhqb1t4JXmXQc1LXUfelJoh+r5XnMPWDAlY5JJtH3GZIU+AoBt9PuEtfhh03LL6WtnJMwOnqH94T8qHymLDftEGOWme1iAlenB692cUId20BmLJal621EAN+xpmkeJZEpx1wQ2fGhyTo7pm4v8LVLuqzOXkraffITvfbPl5IU0kjjs/QECwItAI0IBbNsDutezw/a0JobijjoF28uo4gtwmncBoQwIDAQAB + return_payment_url: http://192.168.136.142/#/pages/money/paySuccess + notify_payment_url: http://127.0.0.1:8500/api/order/alipay/callback/notify \ No newline at end of file diff --git a/spzx-service/service-pay/src/main/resources/application-dev.yml b/spzx-service/service-pay/src/main/resources/application-dev.yml index dced695..f9ca76f 100644 --- a/spzx-service/service-pay/src/main/resources/application-dev.yml +++ b/spzx-service/service-pay/src/main/resources/application-dev.yml @@ -17,10 +17,10 @@ bunny: database: 2 password: "02120212" - alipay: - alipay_url: https://openapi.alipaydev.com/gateway.do - app_id: 2021000122609658 - app_private_key: MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCXHXwKl51d5htttzJDQg1Oq+w/RAdjdGlTgGlodWxM5Vszd9IgnEffB2HlsGcpgHDteppONr8rWsEy/LmwaMR9C83YfgFPRbSIYATrQw1VynuwEFwvlW5FBT00QUqmL1AXaFGWLAao8xjRjQiArhnQA+o88DXEVnUwHTWFd8aOymesOUjJGWOId6x1MnK8om66Zxc/QFR/vZoQaE8YrATNGMMd1O1CGsnwgJ1bBOcG1Cv1dF903gllGwkLhSE3LK1/SbUg0fUi8mHU0EUyasbknlFqBdvFvJZZJ0NC+Z2sZqXV57DLa8M7bp6+YsDuc0o0EAVnLx7beYlDjwGDMgqxAgMBAAECggEAJo9UfpNviW1VJGrxvW3WXXPLRd2DESK8WZ1TyF7mMrz3x6tUiBO41zVYCrc3q8RljIOTak/X+iUfVXZdn6EsOkhPz2Vfyi2cQoxV1P54IaMYarXSACZeS+hpVLMwbDV4d3CcGPjE/kmB1L7rI4LJfWXyWHhnD+GL56ocZSFKHlcsY2bx99T+HHKTretBRnLQ8q8/iZLkTbxReaMd3o9dGTqS75d3O1nT4u0A8Pupo2dPrlE7NvtOLJMEKixToJPAfJ0b2/H1nxV19/ZW3xvRPJjSIdx32ULuUIyzkAMlH5jwO3D9NMR8fbLcsewgDAif0sPB3USpUT/4AfmJAdcVrQKBgQDf1DnUXQ/JPH/SS78W1EdUzvhGjead1NCG70gZH9YKWS3+l4wkl7l1bqrXGe17jVnPD0vHQZT7V9MjQpa0n9mGU6jKt7ym27BQwF6CLqLE82ITKKqRhUAY7D/TpXPD+DI4STmRqEWDzCgAeX2B9Y7MtOndlExPh8ZxPKtPxDPsNwKBgQCs1cH8h/nGXMv2I0hLPdIKVAQRPDCVBpzuycxn2ezHDcz5rBrYsjOpdNr3SWzcavduGI4A673uWa5znO2KE4e8Y8Uoi75wI7nx4/VapsnS8IuqpIOpkLR2ovEjxGz1BI6QyIg1Xl3QFF65BBVEucgYeLXvt/dMdUA7Z7id/h9cVwKBgDZkZmE69Dkc4JsEGT28/FCZsy/CEAbOzpXb1BN27xa4sTqrLT0/OaxV5mI7RMC/itGMkAet4jxqDT8GUYU3Sy8faWdJ2yhZPrGA7faIyrk9w9mQClMupHLqBmCyVj2LNPkEol7JG4t5s0baPyuztq38UNCt1xWEky61ZZQOw+dlAoGAQdEhD0bEwlpCPZhQBn8jRlWaOun94jJjfreQRJgDiAXkYcu9aXnrHIPogrUOZJ3DXcSyBv2/FU5HlbVT6/nl/cLMqNUWj2O7grb5jyzmvJJnzXLaxK7bWjZQt/ssNt4mYFJNNG2cMgofzDsW0lYhMdh+CCy5Wv9nl3e3IUtNq/8CgYASPcPdaCBLzCSGlTV9HMhQwRhOpWLOzQNKprebQf0fubNFGd6+yfM6DdejHXf6KH4IgV9l8OPe5ro85tmrBkvMlbh7KHbpYJ/V9cdMKd+kbxoJTkRKCnoZhY5QSuEMoC8OB1qhzJeuoqUvmpi0q569IBXrxZguD29ZqwGxoa1KNg== - alipay_public_key: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAk41ooyX7utKM9B7jNcc4EzmyVU0Qfs18KFVFwyhl7YQMw/PB2YVQreVSvvb1rS/2YVxcjLK/9ehD//79b8aoxhFlEGqA7fGu0C2UR6pl+PhmRLcHeyN+DOG87Fhqb1t4JXmXQc1LXUfelJoh+r5XnMPWDAlY5JJtH3GZIU+AoBt9PuEtfhh03LL6WtnJMwOnqH94T8qHymLDftEGOWme1iAlenB692cUId20BmLJal621EAN+xpmkeJZEpx1wQ2fGhyTo7pm4v8LVLuqzOXkraffITvfbPl5IU0kjjs/QECwItAI0IBbNsDutezw/a0JobijjoF28uo4gtwmncBoQwIDAQAB - return_payment_url: http://192.168.136.142/#/pages/money/paySuccess - notify_payment_url: http://127.0.0.1:8500/api/order/alipay/callback/notify \ No newline at end of file +# alipay: +# alipay_url: https://openapi.alipaydev.com/gateway.do +# app_id: 2021000122609658 +# app_private_key: MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCXHXwKl51d5htttzJDQg1Oq+w/RAdjdGlTgGlodWxM5Vszd9IgnEffB2HlsGcpgHDteppONr8rWsEy/LmwaMR9C83YfgFPRbSIYATrQw1VynuwEFwvlW5FBT00QUqmL1AXaFGWLAao8xjRjQiArhnQA+o88DXEVnUwHTWFd8aOymesOUjJGWOId6x1MnK8om66Zxc/QFR/vZoQaE8YrATNGMMd1O1CGsnwgJ1bBOcG1Cv1dF903gllGwkLhSE3LK1/SbUg0fUi8mHU0EUyasbknlFqBdvFvJZZJ0NC+Z2sZqXV57DLa8M7bp6+YsDuc0o0EAVnLx7beYlDjwGDMgqxAgMBAAECggEAJo9UfpNviW1VJGrxvW3WXXPLRd2DESK8WZ1TyF7mMrz3x6tUiBO41zVYCrc3q8RljIOTak/X+iUfVXZdn6EsOkhPz2Vfyi2cQoxV1P54IaMYarXSACZeS+hpVLMwbDV4d3CcGPjE/kmB1L7rI4LJfWXyWHhnD+GL56ocZSFKHlcsY2bx99T+HHKTretBRnLQ8q8/iZLkTbxReaMd3o9dGTqS75d3O1nT4u0A8Pupo2dPrlE7NvtOLJMEKixToJPAfJ0b2/H1nxV19/ZW3xvRPJjSIdx32ULuUIyzkAMlH5jwO3D9NMR8fbLcsewgDAif0sPB3USpUT/4AfmJAdcVrQKBgQDf1DnUXQ/JPH/SS78W1EdUzvhGjead1NCG70gZH9YKWS3+l4wkl7l1bqrXGe17jVnPD0vHQZT7V9MjQpa0n9mGU6jKt7ym27BQwF6CLqLE82ITKKqRhUAY7D/TpXPD+DI4STmRqEWDzCgAeX2B9Y7MtOndlExPh8ZxPKtPxDPsNwKBgQCs1cH8h/nGXMv2I0hLPdIKVAQRPDCVBpzuycxn2ezHDcz5rBrYsjOpdNr3SWzcavduGI4A673uWa5znO2KE4e8Y8Uoi75wI7nx4/VapsnS8IuqpIOpkLR2ovEjxGz1BI6QyIg1Xl3QFF65BBVEucgYeLXvt/dMdUA7Z7id/h9cVwKBgDZkZmE69Dkc4JsEGT28/FCZsy/CEAbOzpXb1BN27xa4sTqrLT0/OaxV5mI7RMC/itGMkAet4jxqDT8GUYU3Sy8faWdJ2yhZPrGA7faIyrk9w9mQClMupHLqBmCyVj2LNPkEol7JG4t5s0baPyuztq38UNCt1xWEky61ZZQOw+dlAoGAQdEhD0bEwlpCPZhQBn8jRlWaOun94jJjfreQRJgDiAXkYcu9aXnrHIPogrUOZJ3DXcSyBv2/FU5HlbVT6/nl/cLMqNUWj2O7grb5jyzmvJJnzXLaxK7bWjZQt/ssNt4mYFJNNG2cMgofzDsW0lYhMdh+CCy5Wv9nl3e3IUtNq/8CgYASPcPdaCBLzCSGlTV9HMhQwRhOpWLOzQNKprebQf0fubNFGd6+yfM6DdejHXf6KH4IgV9l8OPe5ro85tmrBkvMlbh7KHbpYJ/V9cdMKd+kbxoJTkRKCnoZhY5QSuEMoC8OB1qhzJeuoqUvmpi0q569IBXrxZguD29ZqwGxoa1KNg== +# alipay_public_key: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAk41ooyX7utKM9B7jNcc4EzmyVU0Qfs18KFVFwyhl7YQMw/PB2YVQreVSvvb1rS/2YVxcjLK/9ehD//79b8aoxhFlEGqA7fGu0C2UR6pl+PhmRLcHeyN+DOG87Fhqb1t4JXmXQc1LXUfelJoh+r5XnMPWDAlY5JJtH3GZIU+AoBt9PuEtfhh03LL6WtnJMwOnqH94T8qHymLDftEGOWme1iAlenB692cUId20BmLJal621EAN+xpmkeJZEpx1wQ2fGhyTo7pm4v8LVLuqzOXkraffITvfbPl5IU0kjjs/QECwItAI0IBbNsDutezw/a0JobijjoF28uo4gtwmncBoQwIDAQAB +# return_payment_url: http://192.168.136.142/#/pages/money/paySuccess +# notify_payment_url: http://127.0.0.1:8500/api/order/alipay/callback/notify \ No newline at end of file diff --git a/spzx-service/service-pay/src/main/resources/application.yml b/spzx-service/service-pay/src/main/resources/application.yml index 17ae90c..db59e6e 100644 --- a/spzx-service/service-pay/src/main/resources/application.yml +++ b/spzx-service/service-pay/src/main/resources/application.yml @@ -5,6 +5,8 @@ spring: active: dev application: name: service-pay + config: + import: application-alipay.yml cloud: sentinel: @@ -48,10 +50,10 @@ logging: file: path: "logs/${spring.application.name}" -alipay: - alipay_url: ${bunny.alipay.alipay_url} - app_id: ${bunny.alipay.app_id} - app_private_key: ${bunny.alipay.app_private_key} - alipay_public_key: ${bunny.alipay.alipay_public_key} - return_payment_url: ${bunny.alipay.return_payment_url} - notify_payment_url: ${bunny.alipay.notify_payment_url} \ No newline at end of file +#alipay: +# alipay_url: ${bunny.alipay.alipay_url} +# app_id: ${bunny.alipay.app_id} +# app_private_key: ${bunny.alipay.app_private_key} +# alipay_public_key: ${bunny.alipay.alipay_public_key} +# return_payment_url: ${bunny.alipay.return_payment_url} +# notify_payment_url: ${bunny.alipay.notify_payment_url} \ No newline at end of file diff --git a/spzx-service/service-pay/src/main/resources/mapper/PaymentInfoMapper.xml b/spzx-service/service-pay/src/main/resources/mapper/PaymentInfoMapper.xml new file mode 100644 index 0000000..4f7f4f0 --- /dev/null +++ b/spzx-service/service-pay/src/main/resources/mapper/PaymentInfoMapper.xml @@ -0,0 +1,41 @@ + + + + + + id,user_id,order_no,pay_type,out_trade_no,amount,content,payment_status,callback_time,callback_content,create_time,update_time,is_deleted + + + + + insert into payment_info (id, + user_id, + order_no, + pay_type, + out_trade_no, + amount, + content, + payment_status, + callback_time, + callback_content) + values (#{id}, + #{userId}, + #{orderNo}, + #{payType}, + #{outTradeNo}, + #{amount}, + #{content}, + #{paymentStatus}, + #{callbackTime}, + #{callbackContent}) + + + + +