This commit is contained in:
dute7liang
2024-01-27 17:09:35 +08:00
parent df689571a2
commit 63b2d1f238
5 changed files with 93 additions and 21 deletions

View File

@@ -55,20 +55,7 @@ public class ConsumeController {
@PostMapping("/order/vip/create")
@Operation(summary = "创建VIP订单")
@Log(title = "创建VIP订单", businessType = BusinessType.OTHER, isSaveDb = true)
public R<OrderCreateVo> vipOrderCreate(@RequestBody AddRechargeOrderDto dto){
RechargeOrder order = rechargeOrderService.addRechargeOrder(dto);
OrderCreateVo vo = new OrderCreateVo();
vo.setPrice(order.getPrice());
vo.setOrderNo(order.getOrderNo());
vo.setOrderName(order.getRechargeName());
return R.ok(vo);
}
@PostMapping("/order/recharge/create")
@Operation(summary = "创建充值订单")
@Log(title = "创建充值订单", businessType = BusinessType.OTHER, isSaveDb = true)
public R<OrderCreateVo> giveGift(@RequestBody AddVipOrderDto dto){
public R<OrderCreateVo> vipOrderCreate(@RequestBody AddVipOrderDto dto){
VipOrder order = vipOrderService.addVipOrder(dto);
OrderCreateVo vo = new OrderCreateVo();
vo.setPrice(order.getPrice());
@@ -76,4 +63,17 @@ public class ConsumeController {
vo.setOrderName(order.getVipName());
return R.ok(vo);
}
@PostMapping("/order/recharge/create")
@Operation(summary = "创建充值订单")
@Log(title = "创建充值订单", businessType = BusinessType.OTHER, isSaveDb = true)
public R<OrderCreateVo> rechargeOrderCreate(@RequestBody AddRechargeOrderDto dto){
RechargeOrder order = rechargeOrderService.addRechargeOrder(dto);
OrderCreateVo vo = new OrderCreateVo();
vo.setPrice(order.getPrice());
vo.setOrderNo(order.getOrderNo());
vo.setOrderName(order.getRechargeName());
return R.ok(vo);
}
}

View File

@@ -48,6 +48,10 @@ public class PayController {
@Operation(summary = "微信支付")
@Log(title = "微信支付", businessType = BusinessType.OTHER, isSaveDb = true)
public R<PayReturnResp> appPay(@RequestBody PayControllerDTO dto) {
PayOrderInfoDTO payOrderInfo = payManager.getOrderInfo(dto.getOrderNo());
if(payOrderInfo == null){
return R.fail(600,"支付失败,未找到订单");
}
PayConfig payConfig = payConfigManager.getWxConfig();
String ip = ServletUtils.getClientIP();
Map<String, String> params = UnifiedOrderModel
@@ -55,9 +59,9 @@ public class PayController {
.appid(dto.getWxAppId())
.mch_id(payConfig.getWxMcid())
.nonce_str(WxPayKit.generateStr())
.body("微信支付")
.body(payOrderInfo.getBody())
.out_trade_no(WxPayKit.generateStr())
.total_fee("1000")
.total_fee(payOrderInfo.getPriceFenStr())
.spbill_create_ip(ip)
.notify_url(payConfig.getNotifyUrl())
.trade_type(TradeType.APP.getTradeType())
@@ -92,17 +96,21 @@ public class PayController {
@Operation(summary = "支付宝支付")
@Log(title = "支付宝支付", businessType = BusinessType.OTHER, isSaveDb = true)
public R<PayReturnResp> aliPay(@RequestBody PayControllerDTO dto) {
PayOrderInfoDTO payOrderInfo = payManager.getOrderInfo(dto.getOrderNo());
if(payOrderInfo == null){
return R.fail(600,"支付失败,未找到订单");
}
try {
boolean b = payConfigManager.initAliPay();
if(!b){
return R.fail("支付宝支付失败!请联系管理员");
return R.fail(600,"支付宝支付失败!请联系管理员");
}
AlipayTradeAppPayModel model = new AlipayTradeAppPayModel();
model.setBody("我是测试数据-By Javen");
model.setSubject("App支付测试-By Javen");
model.setBody(payOrderInfo.getBody());
model.setSubject(payOrderInfo.getSubject());
model.setOutTradeNo(WxPayKit.generateStr());
model.setTimeoutExpress("30m");
model.setTotalAmount("0.01");
model.setTotalAmount(payOrderInfo.getPrice().toString());
String notifyUrl = AliPayApiConfigKit.getAliPayApiConfig().getServiceUrl();
String orderInfo = AliPayApi.appPayToResponse(model, notifyUrl).getBody();
PayReturnResp resp = new PayReturnResp();