From 435a0f55d155c11005f7794638024b09f2f8b60d Mon Sep 17 00:00:00 2001
From: sxu <602087911@qq.com>
Date: Tue, 8 Apr 2025 16:27:22 +0800
Subject: [PATCH] =?UTF-8?q?=E5=85=85=E5=80=BC?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../canteen/core/account/domain/AccTrade.java | 8 ++++----
.../dto => account/domain/vo}/AccTradeVo.java | 10 +++++-----
.../core/account/mapper/AccTradeMapper.java | 3 ++-
.../account/service/IAccTradeService.java | 4 ++--
.../service/impl/AccTradeServiceImpl.java | 16 +++++++--------
.../core/pay/controller/NotifyCotroller.java | 20 +++++++++----------
.../core/pay/controller/PayCotroller.java | 17 ++++++++++------
.../mapper/account/AccTradeMapper.xml | 18 ++++++++++++-----
8 files changed, 54 insertions(+), 42 deletions(-)
rename bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/{pay/dto => account/domain/vo}/AccTradeVo.java (81%)
diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/AccTrade.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/AccTrade.java
index 722127b..3258736 100644
--- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/AccTrade.java
+++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/AccTrade.java
@@ -100,10 +100,10 @@ public class AccTrade extends BaseEntity {
@ApiModelProperty(value = "批量操作批次号")
private String batchNum;
- /** 关联小牛订单号 */
- @Excel(name = "关联小牛订单号")
- @ApiModelProperty(value = "关联小牛订单号")
- private Long leOrdNo;
+ /** 商户订单号 */
+ @Excel(name = "商户订单号")
+ @ApiModelProperty(value = "商户订单号")
+ private String orderNo;
/** 关联原记录交易id */
@Excel(name = "关联原记录交易id")
diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/pay/dto/AccTradeVo.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/vo/AccTradeVo.java
similarity index 81%
rename from bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/pay/dto/AccTradeVo.java
rename to bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/vo/AccTradeVo.java
index 0607598..26ca81a 100644
--- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/pay/dto/AccTradeVo.java
+++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/domain/vo/AccTradeVo.java
@@ -1,4 +1,4 @@
-package com.bonus.canteen.core.pay.dto;
+package com.bonus.canteen.core.account.domain.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
@@ -14,14 +14,14 @@ public class AccTradeVo {
private BigDecimal paymentAmount;//付款金额, 必填
private String productDesc;//商品描述
private Long amount; //金额(单位:分)
- private Integer tradeType;
+ private Long tradeType;
@JsonFormat(
pattern = "yyyy-MM-dd HH:mm:ss"
)
private Date tradeTime;
- private Integer tradeState;
- private Integer payType;
- private Integer payState; //是否付款 true - 已付 false-未付
+ private Long tradeState;
+ private Long payType;
+ private Long payState; //是否付款 true - 已付 false-未付
private String thirdTradeNo; //三方,支付宝交易号
private String failReason;
@JsonFormat(
diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/mapper/AccTradeMapper.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/mapper/AccTradeMapper.java
index d70a764..73c8670 100644
--- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/mapper/AccTradeMapper.java
+++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/mapper/AccTradeMapper.java
@@ -2,6 +2,7 @@ package com.bonus.canteen.core.account.mapper;
import java.util.List;
import com.bonus.canteen.core.account.domain.AccTrade;
+import com.bonus.canteen.core.account.domain.vo.AccTradeVo;
/**
* 账户交易记录Mapper接口
@@ -44,7 +45,7 @@ public interface AccTradeMapper {
*/
public int updateAccTrade(AccTrade accTrade);
-// public int updateAccTradeVo(AccTradeVo accTrade);
+ public int updateAccTradeVoByOrderNo(AccTradeVo accTradeVo);
/**
* 删除账户交易记录
diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/IAccTradeService.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/IAccTradeService.java
index fa2e473..b323d42 100644
--- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/IAccTradeService.java
+++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/IAccTradeService.java
@@ -2,7 +2,7 @@ package com.bonus.canteen.core.account.service;
import java.util.List;
import com.bonus.canteen.core.account.domain.AccTrade;
-import com.bonus.canteen.core.pay.dto.AccTradeVo;
+import com.bonus.canteen.core.account.domain.vo.AccTradeVo;
/**
* 账户交易记录Service接口
@@ -45,7 +45,7 @@ public interface IAccTradeService {
*/
public int updateAccTrade(AccTrade accTrade);
- public int updateAccTradeVo(AccTradeVo accTrade);
+ public int updateAccTradeVoByOrderNo(AccTradeVo accTrade);
/**
* 批量删除账户交易记录
diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/impl/AccTradeServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/impl/AccTradeServiceImpl.java
index e73b86d..f57d809 100644
--- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/impl/AccTradeServiceImpl.java
+++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/account/service/impl/AccTradeServiceImpl.java
@@ -1,7 +1,7 @@
package com.bonus.canteen.core.account.service.impl;
import java.util.List;
-import com.bonus.canteen.core.pay.dto.AccTradeVo;
+import com.bonus.canteen.core.account.domain.vo.AccTradeVo;
import com.bonus.common.core.exception.ServiceException;
import com.bonus.common.core.utils.DateUtils;
import org.springframework.beans.BeanUtils;
@@ -56,7 +56,7 @@ public class AccTradeServiceImpl implements IAccTradeService {
try {
return accTradeMapper.insertAccTrade(accTrade);
} catch (Exception e) {
- throw new ServiceException("错误信息描述");
+ throw new ServiceException("错误信息描述" + e.getMessage());
}
}
@@ -68,7 +68,7 @@ public class AccTradeServiceImpl implements IAccTradeService {
BeanUtils.copyProperties(accTradeVo, accTrade);
return accTradeMapper.insertAccTrade(accTrade);
} catch (Exception e) {
- throw new ServiceException("错误信息描述");
+ throw new ServiceException("错误信息描述" + e.getMessage());
}
}
@@ -84,19 +84,17 @@ public class AccTradeServiceImpl implements IAccTradeService {
try {
return accTradeMapper.updateAccTrade(accTrade);
} catch (Exception e) {
- throw new ServiceException("错误信息描述");
+ throw new ServiceException("错误信息描述" + e.getMessage());
}
}
@Override
- public int updateAccTradeVo(AccTradeVo accTradeVo) {
+ public int updateAccTradeVoByOrderNo(AccTradeVo accTradeVo) {
accTradeVo.setUpdateTime(DateUtils.getNowDate());
try {
- AccTrade accTrade = new AccTrade();
- BeanUtils.copyProperties(accTradeVo, accTrade);
- return accTradeMapper.updateAccTrade(accTrade);
+ return accTradeMapper.updateAccTradeVoByOrderNo(accTradeVo);
} catch (Exception e) {
- throw new ServiceException("错误信息描述");
+ throw new ServiceException("错误信息描述" + e.getMessage());
}
}
diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/pay/controller/NotifyCotroller.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/pay/controller/NotifyCotroller.java
index 1bb11c9..aa2d0dd 100644
--- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/pay/controller/NotifyCotroller.java
+++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/pay/controller/NotifyCotroller.java
@@ -5,7 +5,7 @@ import com.alipay.api.internal.util.AlipaySignature;
import com.bonus.canteen.core.account.constants.AccTradeStateEnum;
import com.bonus.canteen.core.account.service.IAccTradeService;
import com.bonus.canteen.core.pay.constants.PayStateEnum;
-import com.bonus.canteen.core.pay.dto.AccTradeVo;
+import com.bonus.canteen.core.account.domain.vo.AccTradeVo;
import com.bonus.canteen.core.pay.util.AlipayConfig;
import io.swagger.annotations.Api;
import lombok.extern.slf4j.Slf4j;
@@ -66,10 +66,10 @@ public class NotifyCotroller {
AccTradeVo updateTrade = new AccTradeVo();
updateTrade.setOrderNo(order_no);
updateTrade.setThirdTradeNo(third_trade_no);
- updateTrade.setPayState(PayStateEnum.PAY_SUCC.getKey());
- updateTrade.setTradeState(AccTradeStateEnum.TAKE_EFFECT.getKey());
+ updateTrade.setPayState(PayStateEnum.PAY_SUCC.getKey().longValue());
+ updateTrade.setTradeState(AccTradeStateEnum.TAKE_EFFECT.getKey().longValue());
updateTrade.setFailReason(trade_status);
- this.accTradeService.updateAccTradeVo(updateTrade);
+ this.accTradeService.updateAccTradeVoByOrderNo(updateTrade);
} else if ("TRADE_SUCCESS".equals(trade_status)) {
//判断该笔订单是否已经做过处理
//如果没做过处理,根据订单号(out_trade_no)在商户网站的订单系统中查到该笔订单的详情,判断金额是否等于 total_amount,并执行商户的业务程序
@@ -78,19 +78,19 @@ public class NotifyCotroller {
AccTradeVo updateTrade = new AccTradeVo();
updateTrade.setOrderNo(order_no);
updateTrade.setThirdTradeNo(third_trade_no);
- updateTrade.setPayState(PayStateEnum.PAY_SUCC.getKey());
- updateTrade.setTradeState(AccTradeStateEnum.TAKE_EFFECT.getKey());
+ updateTrade.setPayState(PayStateEnum.PAY_SUCC.getKey().longValue());
+ updateTrade.setTradeState(AccTradeStateEnum.TAKE_EFFECT.getKey().longValue());
updateTrade.setFailReason(trade_status);
- this.accTradeService.updateAccTradeVo(updateTrade);
+ this.accTradeService.updateAccTradeVoByOrderNo(updateTrade);
//TODO 增加用户的个人钱包 acc_wallet_info
} else {
AccTradeVo updateTrade = new AccTradeVo();
updateTrade.setOrderNo(order_no);
updateTrade.setThirdTradeNo(third_trade_no);
- updateTrade.setPayState(PayStateEnum.PAY_FAIL.getKey());
- updateTrade.setTradeState(AccTradeStateEnum.CLOSE.getKey());
+ updateTrade.setPayState(PayStateEnum.PAY_FAIL.getKey().longValue());
+ updateTrade.setTradeState(AccTradeStateEnum.CLOSE.getKey().longValue());
updateTrade.setFailReason(trade_status);
- this.accTradeService.updateAccTradeVo(updateTrade);
+ this.accTradeService.updateAccTradeVoByOrderNo(updateTrade);
}
out.println("success");
diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/pay/controller/PayCotroller.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/pay/controller/PayCotroller.java
index bb87eb2..e6b5371 100644
--- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/pay/controller/PayCotroller.java
+++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/pay/controller/PayCotroller.java
@@ -8,8 +8,9 @@ import com.bonus.canteen.core.account.constants.AccTradeStateEnum;
import com.bonus.canteen.core.account.constants.AccTradeTypeEnum;
import com.bonus.canteen.core.account.service.IAccTradeService;
import com.bonus.canteen.core.pay.constants.PayStateEnum;
+import com.bonus.canteen.core.pay.constants.PayTypeEnum;
import com.bonus.canteen.core.pay.util.AlipayConfig;
-import com.bonus.canteen.core.pay.dto.AccTradeVo;
+import com.bonus.canteen.core.account.domain.vo.AccTradeVo;
import com.bonus.common.houqin.constant.GlobalConstants;
import com.bonus.common.security.utils.SecurityUtils;
import io.swagger.annotations.Api;
@@ -22,6 +23,7 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.math.BigDecimal;
+import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.UUID;
@@ -42,13 +44,16 @@ public class PayCotroller {
// 预装数据,存档
accTradeVo.setUserId(SecurityUtils.getUserId());
accTradeVo.setDeptId(SecurityUtils.getLoginUser().getSysUser().getDeptId());
- accTradeVo.setTradeType(AccTradeTypeEnum.CONSUME.getKey());
- accTradeVo.setOrderNo(GlobalConstants.TENANT_ID + "_" + UUID.randomUUID().toString().replaceAll("-",""));
- accTradeVo.setOrderName(GlobalConstants.TENANT_ID + "_" + SecurityUtils.getUserId() + "_" + GlobalConstants.PERSONAL_RECHARGE);
+ accTradeVo.setTradeType(AccTradeTypeEnum.CONSUME.getKey().longValue());
+ Date date = new Date();
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
+ accTradeVo.setOrderNo(GlobalConstants.TENANT_ID + "_" + UUID.randomUUID().toString().replaceAll("-","") + "_" + sdf.format(date));
+ accTradeVo.setOrderName(GlobalConstants.TENANT_ID + "_" + SecurityUtils.getUserId() + "_" + GlobalConstants.PERSONAL_RECHARGE + "_" + sdf.format(date));
accTradeVo.setTradeTime(new Date());
accTradeVo.setAmount(accTradeVo.getPaymentAmount().multiply(new BigDecimal(100)).longValue());
- accTradeVo.setPayState(PayStateEnum.PAY_INPROCESS.getKey());
- accTradeVo.setTradeState(AccTradeStateEnum.CREATE.getKey());
+ accTradeVo.setPayType(PayTypeEnum.MEAL_CARD.getKey().longValue());
+ accTradeVo.setPayState(PayStateEnum.PAY_INPROCESS.getKey().longValue());
+ accTradeVo.setTradeState(AccTradeStateEnum.CREATE.getKey().longValue());
accTradeService.insertAccTradeVo(accTradeVo);
// 调用alipay
alipayRequest.setBizContent(
diff --git a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/account/AccTradeMapper.xml b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/account/AccTradeMapper.xml
index 8c91fa9..fc12f24 100644
--- a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/account/AccTradeMapper.xml
+++ b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/account/AccTradeMapper.xml
@@ -20,7 +20,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-
+
@@ -61,7 +61,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and third_trade_no = #{thirdTradeNo}
and machine_sn = #{machineSn}
and batch_num = #{batchNum}
- and le_ord_no = #{leOrdNo}
+ and order_no = #{orderNo}
and origin_trade_id = #{originTradeId}
and sub_time_rule_id = #{subTimeRuleId}
and manage_cost = #{manageCost}
@@ -101,7 +101,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
third_trade_no,
machine_sn,
batch_num,
- le_ord_no,
+ order_no,
origin_trade_id,
sub_time_rule_id,
manage_cost,
@@ -136,7 +136,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{thirdTradeNo},
#{machineSn},
#{batchNum},
- #{leOrdNo},
+ #{orderNo},
#{originTradeId},
#{subTimeRuleId},
#{manageCost},
@@ -174,7 +174,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
third_trade_no = #{thirdTradeNo},
machine_sn = #{machineSn},
batch_num = #{batchNum},
- le_ord_no = #{leOrdNo},
+ order_no = #{orderNo},
origin_trade_id = #{originTradeId},
sub_time_rule_id = #{subTimeRuleId},
manage_cost = #{manageCost},
@@ -195,6 +195,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where trade_id = #{tradeId}
+
+ update acc_trade
+ set
+ third_trade_no = #{thirdTradeNo},pay_state = #{payState},
+ trade_state = #{tradeState},fail_reason = #{failReason},update_time = #{updateTime}
+ where order_no = #{orderNo}
+
+
delete from acc_trade where trade_id = #{tradeId}