!1041 支付应用,增加 appKey 标识,用于不同接入方的标识

* feat[yudao-module-pay]: 更新新增和更新支付应用时校验逻辑
* fix[yudao-module-trade]: 为支付应用标识提供缺省值
* fix[yudao-module-pay]: appKey注释应用编码更新为应用标识
* feat[yudao-module-pay]: 为支付应用新增支付编码属性
This commit is contained in:
陈玄礼
2024-08-18 07:02:09 +00:00
committed by 芋道源码
parent 6a80d7c75f
commit 6eb40aa544
27 changed files with 259 additions and 156 deletions

View File

@ -101,7 +101,7 @@ public interface TradeOrderConvert {
default PayOrderCreateReqDTO convert(TradeOrderDO order, List<TradeOrderItemDO> orderItems,
TradeOrderProperties orderProperties) {
PayOrderCreateReqDTO createReqDTO = new PayOrderCreateReqDTO()
.setAppId(orderProperties.getAppId()).setUserIp(order.getUserIp());
.setAppKey(orderProperties.getAppKey()).setUserIp(order.getUserIp());
// 商户相关字段
createReqDTO.setMerchantOrderId(String.valueOf(order.getId()));
String subject = orderItems.get(0).getSpuName();

View File

@ -5,6 +5,7 @@ import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.validation.annotation.Validated;
import jakarta.validation.constraints.NotNull;
import java.time.Duration;
/**
@ -19,10 +20,16 @@ import java.time.Duration;
public class TradeOrderProperties {
/**
* 应用编号
* 默认应用标识
*/
@NotNull(message = "应用编号不能为空")
private Long appId;
private static final String APP_KEY_DEFAULT = "mall";
/**
* 应用标识,用于区分不同的应用程序
* 通过注解@NotNull确保应用标识不能为空
*/
@NotNull(message = "应用标识不能为空")
private String appKey = APP_KEY_DEFAULT;
/**
* 支付超时时间

View File

@ -99,7 +99,7 @@ public class TradeOrderUpdateServiceTest extends BaseDbUnitTest {
@BeforeEach
public void setUp() {
when(tradeOrderProperties.getAppId()).thenReturn(888L);
when(tradeOrderProperties.getAppKey()).thenReturn("demo");
when(tradeOrderProperties.getPayExpireTime()).thenReturn(Duration.ofDays(1));
when(tradeNoRedisDAO.generate(anyString())).thenReturn(IdUtil.randomUUID());
}