From 8db855719710fc5e33a51d1f30050c007b38b65d Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期一, 30 九月 2024 14:15:35 +0800
Subject: [PATCH] bug修改
---
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java | 6 +
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java | 13 +-
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderInvoice.java | 1
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderInvoiceController.java | 1
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java | 1
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TShoppingOrderController.java | 75 +++++++++++++++---
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java | 12 +++
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderInvoiceServiceImpl.java | 2
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/filter/AuthFilter.java | 15 +++
ruoyi-service/ruoyi-payment/src/main/java/com/ruoyi/payment/controller/WxPayController.java | 5 +
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TAdvertisingController.java | 12 ++
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AlipayOpenAppQrcodeCreate.java | 59 ++++++++++++++
12 files changed, 177 insertions(+), 25 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java
index 294d7b0..011684c 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java
@@ -128,6 +128,12 @@
public void chargingOrderStartupFailureWxRefund(String out_refund_no, String refund_id, String tradeState, String success_time) {
log.error("远程启动失败后退款通知失败:" + throwable.getMessage());
}
+
+ @Override
+ public void shoppingOrderWxRefund(String out_refund_no, String refund_id, String tradeState, String success_time) {
+ log.error("购物订单退款回调通知失败:" + throwable.getMessage());
+
+ }
};
}
}
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java
index c92882a..1d33c9a 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java
@@ -163,4 +163,16 @@
@RequestParam("out_trade_no") String refund_id,
@RequestParam("out_trade_no") String tradeState,
@RequestParam("out_trade_no") String success_time);
+ /**
+ * 管理后台取消购物订单后退款回调
+ * @param out_refund_no
+ * @param refund_id
+ * @param tradeState
+ * @param success_time
+ */
+ @PostMapping("/t-shopping-order/shoppingOrderWxRefund")
+ void shoppingOrderWxRefund(@RequestParam("out_trade_no") String out_refund_no,
+ @RequestParam("out_trade_no") String refund_id,
+ @RequestParam("out_trade_no") String tradeState,
+ @RequestParam("out_trade_no") String success_time);
}
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderInvoice.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderInvoice.java
index 5eef671..133959d 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderInvoice.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderInvoice.java
@@ -112,6 +112,7 @@
@ApiModelProperty(value = "添加时间")
@TableField("create_time")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private LocalDateTime createTime;
@ApiModelProperty(value = "开票时间")
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AlipayOpenAppQrcodeCreate.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AlipayOpenAppQrcodeCreate.java
new file mode 100644
index 0000000..ee97430
--- /dev/null
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AlipayOpenAppQrcodeCreate.java
@@ -0,0 +1,59 @@
+package com.ruoyi.account.controller;
+
+import com.alibaba.fastjson.JSONObject;
+import com.alipay.api.AlipayApiException;
+import com.alipay.api.AlipayClient;
+import com.alipay.api.DefaultAlipayClient;
+import com.alipay.api.AlipayConfig;
+import com.alipay.api.response.AlipayOpenAppQrcodeCreateResponse;
+import com.alipay.api.request.AlipayOpenAppQrcodeCreateRequest;
+import com.alipay.api.domain.AlipayOpenAppQrcodeCreateModel;
+
+import com.alipay.api.FileItem;
+import java.util.Base64;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 生成支付宝小程序二维码
+ */
+public class AlipayOpenAppQrcodeCreate {
+
+ public static void main(String[] args) throws AlipayApiException {
+ // 初始化SDK
+ AlipayClient alipayClient = new DefaultAlipayClient(getAlipayConfig());
+ // 构造请求参数以调用接口
+ AlipayOpenAppQrcodeCreateRequest request = new AlipayOpenAppQrcodeCreateRequest();
+ AlipayOpenAppQrcodeCreateModel model = new AlipayOpenAppQrcodeCreateModel();
+ // 设置跳转小程序的页面路径
+ model.setUrlParam("pages/index/index");
+ // 设置小程序的启动参数
+ model.setQueryParam("x=1");
+ // 设置码描述
+ model.setDescribe("二维码描述");
+ request.setBizModel(model);
+ AlipayOpenAppQrcodeCreateResponse response = alipayClient.execute(request);
+ System.out.println(response.getBody());
+ String qrCodeUrl = response.getQrCodeUrl();
+ System.err.println(qrCodeUrl);
+ if (response.isSuccess()) {
+ System.out.println("调用成功");
+ } else {
+ System.out.println("调用失败");
+ }
+ }
+
+ private static AlipayConfig getAlipayConfig() {
+ String privateKey = "MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCxWgLykkSXsj6zz5kVohKb6yAaOK8d4wnbWLrabBQSHZg+UZj9HknzQvgrSdfiMd6Dlv70OYQBRynWb2OSGaIKpWLbDKQDT+hDBcbZQ3nVTKExC7w8t/5mUc0CH4DkMsMMDcDW2synh9Lv4fmw7eNnRgd6g6csGIZyOUgt34eMcmCUBP58bEkYhuPm9rLBMw7fCRl9zZbKNAiE5j9FNL1/oAWhET6BCHRqKpiDHvKLQDZdXUwI+sA/JSolNlU+x052YBPGxjH9zqD8mpRLZRTPCb5pV5wCG+EqQkiCauyhAJSCVo2Dx3uXe4nP/6UDlQmgxyiZ+uuMtPsDFjKd7EIXAgMBAAECggEBAKXBfufAFSPCkB/2cxlo9QOM6eAYAnNocxnzABCM2uVji5sTIG3SFUOq3891oLPj8BgE1BzmdJ3NKSklymYOVwikMpSQZ+pAkM+zYnpFOmVEzZLNaQ1G2ho/cd/+GbUuTGXDpOwqawRZSaiyB3B5pgQry2mSCniII4A2UWOuez2jR7R6kXh2UL4DGDPYjDj2Gx3WfYEeuarjdbaeKU6ngdArkYqNtsbpmaR9aOUhNyo6ltOWh7pKjdjApAEtoEqqYjr1uQ4E0wfF4noiU1hR7gTG8FjvWHy1/piPWM4CihUbhJemC5xKuVKltI0zMtR+uAx609sz6gOYlZkrYAXL0uECgYEA8Gqq/Jc1w6I5FTGImnoadKr1VWXBFKdU00p6EMX6FaY9uD41+YtaOtfBeNyAUZ20UlP+t9EsUbHunaMVb64N2wYMbSwy9ibNAse/KxT3XCT659lsyFyVPtbGxALXLu6sNH7VIljJv7KRm6slBqLKSdac2qZX/LwVvjIGjNz7p8MCgYEAvNjhFEn9KE8eOCK+qGEITVoR8k26lFGG0XsjRoinkgAUeUL2R6HFscOqUT31DvvQ7lNfopM+Sksmi/c64wXjcT49iHZwqCs6FNYHvY9HS0StVckLGliUg0U7FNWX0dwZyehpYamV4Eh9O/yZN+p07zAmDohTYmdsMWyqoieJqx0CgYEA6iiKZ0CDbgrXnCvFh+e7Uryb/NQBjbM4rB6S6zlYTbO/025MNcQjWsJ/vs7M8DEwyyriIXjKuLsb1E9d9otJFXU7ry1oaVT7QmT4beaa0hV2h1C+YhvChRS9PXYizaRK90o9HpnpzhsHNN4pTuBJNEeiOFfhxNgQOVISDSrCtO8CgYBMCnRPLB/A3GLJrcvhlvi11N/HFl9bm5xSu2eP3jTDSD72OO1cGJq3IpdxESac+u69GFs45ls9pRcHYuyWP2e+0JYMXcytGoLPowMI5CmL+EJneYV7/VEHrpfEouD4As1rjKbqSVPtNKMgxWyYpFKjgVrBnUkeJZDeMehfVNZNTQKBgAfhnhQgDk61C3KmgzKJ0hCogjTUL6AdjgC5bfV1AsV9yesh0q1bgHDrlMkS2aKYSF9wNeKYCYl2/ZYhilom4Mst/uxAl/8aLwDM9Cg29KfmMakst521IXv2Jrk2MiXXJMV5wowE8kbdb4Hkzsn1km2tBnng7Jyyek2HH737Jd1R";
+ String alipayPublicKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAh+tCVKqUmlHDL8Ki1TUJtzE5IKV1irJuoHWZTvndJCKJJ8bdWxL9mu5xsy8KkfrnS6wJIKBMLTxMoYQHG7l2Gt07YyUCYHS5+yvbHtTkyFFy2KRPeUEWXz1Tm4juvInDvvr+n7v9ETepToGhC+UDlQcBvuSppw8N+463E+1GRrC4APwXYGLzaIvYvDHcQAULkWhXsjzxJSmeSi12kqWKlgnVJC1y0FT8xQtvhwShfaIqKwzErn9S2z7JjdXboJMUYQHoqF1A4SmWY8c0qawqvx2hGP36W3RDQ4cczzFwUHS1Cylhsbgh1COc4OdANCX4Np2NUzaRDCNzN0WVFKtK+QIDAQAB";
+ AlipayConfig alipayConfig = new AlipayConfig();
+ alipayConfig.setServerUrl("https://openapi.alipay.com/gateway.do");
+ alipayConfig.setAppId("2021004173610331");
+ alipayConfig.setPrivateKey(privateKey);
+ alipayConfig.setFormat("json");
+ alipayConfig.setAlipayPublicKey(alipayPublicKey);
+ alipayConfig.setCharset("UTF-8");
+ alipayConfig.setSignType("RSA2");
+ return alipayConfig;
+ }
+}
\ No newline at end of file
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java
index 4ab4162..cf76b85 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserController.java
@@ -349,7 +349,6 @@
Page<TAppUser> page = appUserService.lambdaQuery()
.like(userListQueryDto.getUserPhone() != null && !"".equals(userListQueryDto.getUserPhone()), TAppUser::getPhone, userListQueryDto.getUserPhone())
.eq(userListQueryDto.getCityCode() != null && !"".equals(userListQueryDto.getCityCode()), TAppUser::getCityCode, userListQueryDto.getCityCode())
- .eq(userListQueryDto.getProvinceCode() != null && !"".equals(userListQueryDto.getProvinceCode()), TAppUser::getProvinceCode, userListQueryDto.getProvinceCode())
.in(!userIds.isEmpty(),TAppUser::getId,userIds)
.eq(TAppUser::getStatus,1)
.page(Page.of(userListQueryDto.getPageCurr(), userListQueryDto.getPageSize()));
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java
index 52f457e..b640f7d 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java
@@ -102,11 +102,9 @@
public static MultipartFile convertInputStreamToMultipartFile(InputStream inputStream, String fileName, String contentType) throws IOException {
return new MockMultipartFile(fileName, fileName, contentType, inputStream);
}
-
- /**
- * 获取微信小程序二维码
- */
- public void getQRCode() {
+ @ApiOperation(value = "获取微信小程序二维码",tags = {"获取微信小程序二维码"})
+ @PostMapping("/getQRCode")
+ public AjaxResult getQRCode() {
InputStream inputStream = null;
OutputStream outputStream = null;
WxAppletTools appletTools = new WxAppletTools(wxRestTemplate, wxConfig);
@@ -137,8 +135,7 @@
MultipartFile multipartFile = convertInputStreamToMultipartFile(inputStream, finalFileName, "image/jpeg");
String name = FileUploadUtils.upload(localFilePath, multipartFile);
System.err.println(name);
- // 保存文件到本地
-// String s = ossService.uploadFile2OSS(inputStream, objectName);
+ return AjaxResult.success(name);
} catch (Exception e) {
System.err.println("调用小程序生成微信永久小程序码URL接口异常" + e);
} finally {
@@ -157,5 +154,7 @@
}
}
}
+ return AjaxResult.success();
}
+
}
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/filter/AuthFilter.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/filter/AuthFilter.java
index 68fa2ca..0181d72 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/filter/AuthFilter.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/filter/AuthFilter.java
@@ -44,6 +44,11 @@
@Override
+ public void init(FilterConfig filterConfig) throws ServletException {
+
+ }
+
+ @Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) servletRequest;
HttpServletResponse response = (HttpServletResponse) servletResponse;
@@ -83,9 +88,13 @@
}
filterChain.doFilter(request, response);
}
-
-
-
+
+ @Override
+ public void destroy() {
+
+ }
+
+
private void unauthorizedResponse(HttpServletResponse response, String msg) {
response.setStatus(HttpStatus.OK.value());
response.setHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_UTF8_VALUE);
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderInvoiceController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderInvoiceController.java
index e3838b3..d69169a 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderInvoiceController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderInvoiceController.java
@@ -75,6 +75,7 @@
@RequestParam("invoiceUrl") String invoiceUrl){
TOrderInvoice orderInvoice = orderInvoiceService.getById(id);
orderInvoice.setInvoiceUrl(invoiceUrl);
+ orderInvoice.setStatus(3);
orderInvoiceService.updateById(orderInvoice);
// 发送邮箱
// 收件人电子邮箱,TODO 换成自己的收件箱
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TShoppingOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TShoppingOrderController.java
index 0ab6cd7..397c94d 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TShoppingOrderController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TShoppingOrderController.java
@@ -1,6 +1,7 @@
package com.ruoyi.order.controller;
import java.math.BigDecimal;
+import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
@@ -15,10 +16,13 @@
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.common.security.service.TokenService;
+import com.ruoyi.order.api.model.TChargingOrderRefund;
import com.ruoyi.order.api.model.TExchangeOrder;
import com.ruoyi.order.api.model.TShoppingOrder;
+import com.ruoyi.order.api.model.TShoppingOrderRefund;
import com.ruoyi.order.api.query.ShoppingOrderQuery;
import com.ruoyi.order.dto.*;
+import com.ruoyi.order.service.TShoppingOrderRefundService;
import com.ruoyi.order.service.TShoppingOrderService;
import com.ruoyi.other.api.domain.TCoupon;
import com.ruoyi.other.api.domain.TGoods;
@@ -40,6 +44,7 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
+import java.time.format.DateTimeFormatter;
import java.util.*;
/**
@@ -73,7 +78,31 @@
private AppCouponClient appCouponClient;
@Resource
private SysUserClient sysUserClient;
-
+ @Resource
+ private TShoppingOrderRefundService shoppingOrderRefundService;
+ /**
+ * 远程管理后台取消订单后退款回调
+ */
+ @ResponseBody
+ @PostMapping(value = "/shoppingOrderWxRefund")
+ public void shoppingOrderWxRefund(@RequestParam("out_trade_no") String out_refund_no,
+ @RequestParam("out_trade_no") String refund_id,
+ @RequestParam("out_trade_no") String tradeState,
+ @RequestParam("out_trade_no") String success_time){
+ if("SUCCESS".equals(tradeState)){
+ TShoppingOrderRefund one = shoppingOrderRefundService.getOne(new LambdaQueryWrapper<TShoppingOrderRefund>().eq(TShoppingOrderRefund::getRefundCode, out_refund_no));
+ one.setRefundSerialNumber(refund_id);
+ one.setRefundStatus(2);
+ one.setRefundTime(LocalDateTime.parse(success_time, DateTimeFormatter.ofPattern("yyyy-MM-DDTHH:mm:ss+TIMEZONE")));
+ shoppingOrderRefundService.updateById(one);
+ TShoppingOrder byId = shoppingOrderService.getById(one.getShoppingOrderId());
+ byId.setStatus(4);
+ shoppingOrderService.updateById(byId);
+ if (byId.getAppCouponId() != null) {
+ appCouponClient.refund(byId.getAppCouponId().toString());
+ }
+ }
+ }
@PostMapping("/getShoppingOrderList")
@ApiOperation(value = "列表查询", tags = {"管理后台-购物订单"})
@@ -144,7 +173,7 @@
shoppingOrderService.removeBatchByIds(Arrays.asList(ids.split(",")));
return AjaxResult.success();
}
-
+
@GetMapping("/cancelShoppingOrder")
@ApiOperation(value = "取消订单", tags = {"管理后台-购物订单"})
public AjaxResult cancelShoppingOrder(String id) {
@@ -154,6 +183,21 @@
byId.setCancellationId(userid);
byId.setCancellationTime(LocalDateTime.now());
byId.setStatus(4);
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
+ TShoppingOrderRefund tShoppingOrderRefund = new TShoppingOrderRefund();
+ tShoppingOrderRefund.setPayTime(byId.getPayTime());
+ tShoppingOrderRefund.setPayCode(byId.getSerialNumber());
+ tShoppingOrderRefund.setPayAmount(byId.getPaymentAmount());
+ tShoppingOrderRefund.setPayType(1);
+ tShoppingOrderRefund.setShoppingOrderId(byId.getId());
+ tShoppingOrderRefund.setRefundAmount(byId.getPaymentAmount());
+ tShoppingOrderRefund.setRefundStatus(1);
+ tShoppingOrderRefund.setCode("GWF" + sdf.format(new Date()) + Double.valueOf(Math.random() * 1000).intValue());
+ tShoppingOrderRefund.setRefundTitle("后台取消订单");
+ tShoppingOrderRefund.setRefundContent("后台取消订单");
+ tShoppingOrderRefund.setRefundReason("后台取消订单");
+ tShoppingOrderRefund.setRefundRemark("全额退款");
+ tShoppingOrderRefund.setRefundTotalAmount(byId.getPaymentAmount());
switch (byId.getPaymentType()) {
case 1:
// 微信
@@ -163,8 +207,6 @@
wxPaymentRefundModel.setOut_refund_no(OrderCodeUtil.getOrderCode("GWTK"));
wxPaymentRefundModel.setReason("后台购物订单退款");
wxPaymentRefundModel.setNotify_url("/payment/wx/refund/notify");
-
- // todo 部署到线上之后写回调地址
String string = byId.getPaymentAmount().multiply(new BigDecimal("100")).toString();
if (string.contains(".")) {
string = string.substring(0, string.indexOf("."));
@@ -175,28 +217,37 @@
refundAmount.setCurrency("CNY");
refundAmount.setRefund(i);
wxPaymentRefundModel.setAmount(refundAmount);
- wxPaymentClient.refundOrderR(wxPaymentRefundModel);
+ R<String> stringR = wxPaymentClient.refundOrderR(wxPaymentRefundModel);
+ if(200 == stringR.getCode()){
+ shoppingOrderRefundService.save(tShoppingOrderRefund);
+ }
break;
case 2:
// 支付宝
RefundReq refundReq = new RefundReq();
refundReq.setOutTradeNo(byId.getSerialNumber());
- String gw = OrderCodeUtil.getOrderCode("GWTK");
+ String gw = OrderCodeUtil.getOrderCode("GWF");
refundReq.setOutRequestNo(gw);
refundReq.setRefundAmount(byId.getPaymentAmount().toString());
refundReq.setRefundReason("后台购物订单退款");
RefundResp data = aliPaymentClient.refund(refundReq).getData();
if (data != null) {
- // 退款成功 回退优惠券
byId.setStatus(4);
+ SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-DDTHH:mm:ss+TIMEZONE");
+ TShoppingOrderRefund one = shoppingOrderRefundService.getOne(new LambdaQueryWrapper<TShoppingOrderRefund>().eq(TShoppingOrderRefund::getRefundCode, data.getOutTradeNo()));
+ one.setRefundSerialNumber(data.getTradeNo());
+ one.setRefundStatus(2);
+ one.setRefundTime(LocalDateTime.parse(sdf1.format(new Date()), DateTimeFormatter.ofPattern("yyyy-MM-DDTHH:mm:ss+TIMEZONE")));
+ shoppingOrderRefundService.updateById(one);
if (byId.getAppCouponId() != null) {
+ // 退款成功 回退优惠券
appCouponClient.refund(byId.getAppCouponId().toString());
- byId.setRefundCode(gw);
- byId.setRefundAmount(byId.getPaymentAmount());
- byId.setRefundStatus(2);
- byId.setRefundSerialNumber(data.getTradeNo());
- shoppingOrderService.updateById(byId);
}
+ byId.setRefundCode(gw);
+ byId.setRefundAmount(byId.getPaymentAmount());
+ byId.setRefundStatus(2);
+ byId.setRefundSerialNumber(data.getTradeNo());
+ shoppingOrderService.updateById(byId);
}
break;
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderInvoiceServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderInvoiceServiceImpl.java
index 9e9a60e..685ecea 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderInvoiceServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderInvoiceServiceImpl.java
@@ -285,7 +285,7 @@
e.setElectrovalence(orderInvoiceDetailList.stream().filter(t->t.getElectrovalence()!=null).map(TOrderInvoiceDetail::getElectrovalence).reduce(BigDecimal::add).get());
e.setServiceCharge(orderInvoiceDetailList.stream().filter(t->t.getServiceCharge()!=null).map(TOrderInvoiceDetail::getServiceCharge).reduce(BigDecimal::add).get());
if (e.getBillingUserId()!=null){
- e.setUserPhone(finalTAppUsers.stream().filter(t->t.getId()!=null).filter(m->m.getId().equals(Long.parseLong(e.getBillingUserId().toString()))).findFirst().get().getPhone());
+ e.setUserPhone(finalTAppUsers.stream().filter(t->t.getId()!=null).filter(m->m.getId().equals(Long.parseLong(e.getAppUserId().toString()))).findFirst().get().getPhone());
}
});
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TAdvertisingController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TAdvertisingController.java
index 03a99b1..984eab7 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TAdvertisingController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TAdvertisingController.java
@@ -1,6 +1,7 @@
package com.ruoyi.other.controller;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.core.enums.status.AdvertisingStatusEnum;
import com.ruoyi.common.core.web.domain.AjaxResult;
@@ -64,7 +65,16 @@
@ApiOperation(tags = {"管理后台-广告管理"},value = "广告修改")
@Log(title = "【广告管理】修改广告", businessType = BusinessType.UPDATE,operatorType = OperatorType.MANAGE)
public AjaxResult updateVip(@RequestBody TAdvertising dto) {
- advertisingService.updateById(dto);
+ if (dto.getJumpType() == 2){
+ // 清空跳转地址
+ advertisingService.updateById(dto);
+ LambdaUpdateWrapper<TAdvertising> tAdvertisingLambdaUpdateWrapper = new LambdaUpdateWrapper<>();
+ tAdvertisingLambdaUpdateWrapper.eq(TAdvertising::getId,dto.getId())
+ .set(TAdvertising::getJumpUrl,null);
+ advertisingService.update(tAdvertisingLambdaUpdateWrapper);
+ }else{
+ advertisingService.updateById(dto);
+ }
return AjaxResult.success();
}
@GetMapping("/getInfo")
diff --git a/ruoyi-service/ruoyi-payment/src/main/java/com/ruoyi/payment/controller/WxPayController.java b/ruoyi-service/ruoyi-payment/src/main/java/com/ruoyi/payment/controller/WxPayController.java
index 370d2e7..985ca03 100644
--- a/ruoyi-service/ruoyi-payment/src/main/java/com/ruoyi/payment/controller/WxPayController.java
+++ b/ruoyi-service/ruoyi-payment/src/main/java/com/ruoyi/payment/controller/WxPayController.java
@@ -196,6 +196,11 @@
chargingOrderClient.chargingOrderStartupFailureWxRefund(out_refund_no, refund_id, tradeState, success_time);
System.err.println("----充电启动失败退款回调通知");
break;
+ //充电订单
+ case "GWF":
+ chargingOrderClient.shoppingOrderWxRefund(out_refund_no, refund_id, tradeState, success_time);
+ System.err.println("----管理后台取消购物订单退款回调通知");
+ break;
}
WxRefundNotifyResp resp = new WxRefundNotifyResp();
--
Gitblit v1.7.1