Commit 9e84834620b32343a169da1a454d7380ede38886

Authored by YunaiV
1 parent e052ddab

【代码代码】PAY:移除对 member 的依赖

yudao-module-pay/yudao-module-pay-biz/src/test-integration/java/cn/iocoder/yudao/module/pay/dal/dataobject/merchant/PayChannelDOTest.java deleted
1   -package cn.iocoder.yudao.module.pay.dal.dataobject.merchant;
2   -
3   -import cn.iocoder.yudao.framework.common.util.json.JsonUtils;
4   -import cn.iocoder.yudao.framework.pay.core.client.impl.weixin.WXPayClientConfig;
5   -import org.junit.jupiter.api.Test;
6   -
7   -public class PayChannelDOTest {
8   -
9   - @Test
10   - public void testSerialization() {
11   - PayChannelDO payChannelDO = new PayChannelDO();
12   - // 创建配置
13   - WXPayClientConfig config = new WXPayClientConfig();
14   - config.setAppId("wx041349c6f39b268b");
15   - config.setMchId("1545083881");
16   - config.setApiVersion(WXPayClientConfig.API_VERSION_V2);
17   - config.setMchKey("0alL64UDQdlCwiKZ73ib7ypaIjMns06p");
18   - payChannelDO.setConfig(config);
19   -
20   - // 序列化
21   - String text = JsonUtils.toJsonString(payChannelDO);
22   - System.out.println(text);
23   -
24   - // 反序列化
25   - payChannelDO = JsonUtils.parseObject(text, PayChannelDO.class);
26   - System.out.println(payChannelDO.getConfig().getClass());
27   - }
28   -
29   -}
yudao-module-pay/yudao-module-pay-biz/src/test-integration/java/cn/iocoder/yudao/module/pay/dal/mysql/merchant/PayChannelMapperIntegrationTest.java deleted
1   -package cn.iocoder.yudao.module.pay.dal.mysql.merchant;
2   -
3   -import cn.hutool.core.io.IoUtil;
4   -import cn.iocoder.yudao.module.pay.dal.dataobject.merchant.PayChannelDO;
5   -import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
6   -import cn.iocoder.yudao.framework.pay.core.client.impl.alipay.AlipayPayClientConfig;
7   -import cn.iocoder.yudao.framework.pay.core.client.impl.weixin.WXPayClientConfig;
8   -import cn.iocoder.yudao.framework.pay.core.enums.PayChannelEnum;
9   -import cn.iocoder.yudao.module.pay.test.BaseDbIntegrationTest;
10   -import org.junit.jupiter.api.Test;
11   -
12   -import jakarta.annotation.Resource;
13   -import java.io.FileInputStream;
14   -import java.io.FileNotFoundException;
15   -import java.util.List;
16   -
17   -@Resource
18   -public class PayChannelMapperIntegrationTest extends BaseDbIntegrationTest {
19   -
20   - @Resource
21   - private PayChannelMapper payChannelMapper;
22   -
23   - /**
24   - * 插入 {@link PayChannelEnum#WX_PUB} 初始配置
25   - */
26   - @Test
27   - public void testInsertWxPub() throws FileNotFoundException {
28   - PayChannelDO payChannelDO = new PayChannelDO();
29   - payChannelDO.setCode(PayChannelEnum.WX_PUB.getCode());
30   - payChannelDO.setStatus(CommonStatusEnum.ENABLE.getStatus());
31   - payChannelDO.setFeeRate(1D);
32   - payChannelDO.setAppId(6L);
33   - // 配置
34   - WXPayClientConfig config = new WXPayClientConfig();
35   - config.setAppId("wx041349c6f39b268b");
36   - config.setMchId("1545083881");
37   - config.setApiVersion(WXPayClientConfig.API_VERSION_V2);
38   - config.setMchKey("0alL64UDQdlCwiKZ73ib7ypaIjMns06p");
39   - config.setPrivateKeyContent(IoUtil.readUtf8(new FileInputStream("/Users/yunai/Downloads/wx_pay/apiclient_key.pem")));
40   - config.setPrivateCertContent(IoUtil.readUtf8(new FileInputStream("/Users/yunai/Downloads/wx_pay/apiclient_cert.pem")));
41   - config.setApiV3Key("joerVi8y5DJ3o4ttA0o1uH47Xz1u2Ase");
42   - payChannelDO.setConfig(config);
43   - // 执行插入
44   - payChannelMapper.insert(payChannelDO);
45   - }
46   -
47   - // TODO @ouyang:Zfb 改成 AlipayQr
48   - /**
49   - * 插入 {@link PayChannelEnum#ALIPAY_QR} 初始配置
50   - */
51   - @Test
52   - public void testInsertZfb() {
53   - PayChannelDO payChannelDO = new PayChannelDO();
54   - payChannelDO.setCode(PayChannelEnum.ALIPAY_QR.getCode());
55   - payChannelDO.setStatus(CommonStatusEnum.ENABLE.getStatus());
56   - payChannelDO.setFeeRate(1D);
57   - payChannelDO.setAppId(6L);
58   - // 配置
59   - AlipayPayClientConfig config = new AlipayPayClientConfig();
60   - config.setAppId("2021000118634035");
61   - config.setServerUrl(AlipayPayClientConfig.SERVER_URL_SANDBOX);
62   - config.setSignType(AlipayPayClientConfig.SIGN_TYPE_DEFAULT);
63   - config.setPrivateKey("MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCHsEV1cDupwJv890x84qbppUtRIfhaKSwSVN0thCcsDCaAsGR5MZslDkO8NCT9V4r2SVXjyY7eJUZlZd1M0C8T01Tg4UOx5LUbic0O3A1uJMy6V1n9IyYwbAW3AEZhBd5bSbPgrqvmv3NeWSTQT6Anxnllf+2iDH6zyA2fPl7cYyQtbZoDJQFGqr4F+cGh2R6akzRKNoBkAeMYwoY6es2lX8sJxCVPWUmxNUoL3tScwlSpd7Bxw0q9c/X01jMwuQ0+Va358zgFiGERTE6yD01eu40OBDXOYO3z++y+TAYHlQQ2toMO63trepo88X3xV3R44/1DH+k2pAm2IF5ixiLrAgMBAAECggEAPx3SoXcseaD7rmcGcE0p4SMfbsUDdkUSmBBbtfF0GzwnqNLkWa+mgE0rWt9SmXngTQH97vByAYmLPl1s3G82ht1V7Sk7yQMe74lhFllr8eEyTjeVx3dTK1EEM4TwN+936DTXdFsr4TELJEcJJdD0KaxcCcfBLRDs2wnitEFZ9N+GoZybVmY8w0e0MI7PLObUZ2l0X4RurQnfG9ZxjXjC7PkeMVv7cGGylpNFi3BbvkRhdhLPDC2E6wqnr9e7zk+hiENivAezXrtxtwKovzCtnWJ1r0IO14Rh47H509Ic0wFnj+o5YyUL4LdmpL7yaaH6fM7zcSLFjNZPHvZCKPwYcQKBgQDQFho98QvnL8ex4v6cry4VitGpjSXm1qP3vmMQk4rTsn8iPWtcxPjqGEqOQJjdi4Mi0VZKQOLFwlH0kl95wNrD/isJ4O1yeYfX7YAXApzHqYNINzM79HemO3Yx1qLMW3okRFJ9pPRzbQ9qkTpsaegsmyX316zOBhzGRYjKbutTYwKBgQCm7phr9XdFW5Vh+XR90mVs483nrLmMiDKg7YKxSLJ8amiDjzPejCn7i95Hah08P+2MIZLIPbh2VLacczR6ltRRzN5bg5etFuqSgfkuHyxpoDmpjbe08+Q2h8JBYqcC5Nhv1AKU4iOUhVLHo/FBAQliMcGc/J3eiYTFC7EsNx382QKBgClb20doe7cttgFTXswBvaUmfFm45kmla924B7SpvrQpDD/f+VDtDZRp05fGmxuduSjYdtA3aVtpLiTwWu22OUUvZZqHDGruYOO4Hvdz23mL5b4ayqImCwoNU4bAZIc9v18p/UNf3/55NNE3oGcf/bev9rH2OjCQ4nM+Ktwhg8CFAoGACSgvbkShzUkv0ZcIf9ppu+ZnJh1AdGgINvGwaJ8vQ0nm/8h8NOoFZ4oNoGc+wU5Ubops7dUM6FjPR5e+OjdJ4E7Xp7d5O4J1TaIZlCEbo5OpdhaTDDcQvrkFu+Z4eN0qzj+YAKjDAOOrXc4tbr5q0FsgXscwtcNfaBuzFVTUrUkCgYEAwzPnMNhWG3zOWLUs2QFA2GP4Y+J8cpUYfj6pbKKzeLwyG9qBwF1NJpN8m+q9q7V9P2LY+9Lp9e1mGsGeqt5HMEA3P6vIpcqLJLqE/4PBLLRzfccTcmqb1m71+erxTRhHBRkGS+I7dZEb3olQfnS1Y1tpMBxiwYwR3LW4oXuJwj8=");
64   - config.setAlipayPublicKey("MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnq90KnF4dTnlzzmxpujbI05OYqi5WxAS6cL0gnZFv2gK51HExF8v/BaP7P979PhFMgWTqmOOI+Dtno5s+yD09XTY1WkshbLk6i4g2Xlr8fyW9ODnkU88RI2w9UdPhQU4cPPwBNlrsYhKkVK2OxwM3kFqjoBBY0CZoZCsSQ3LDH5WeZqPArlsS6xa2zqJBuuoKjMrdpELl3eXSjP8K54eDJCbeetCZNKWLL3DPahTPB7LZikfYmslb0QUvCgGapD0xkS7eVq70NaL1G57MWABs4tbfWgxike4Daj3EfUrzIVspQxj7w8HEj9WozJPgL88kSJSits0pqD3n5r8HSuseQIDAQAB");
65   - // 创建客户端
66   - payChannelDO.setConfig(config);
67   - // 执行插入
68   - payChannelMapper.insert(payChannelDO);
69   - }
70   -
71   - /**
72   - * 查询所有支付配置,看看是否都是 ok 的
73   - */
74   - @Test
75   - public void testSelectList() {
76   - List<PayChannelDO> payChannels = payChannelMapper.selectList();
77   - System.out.println(payChannels.size());
78   - }
79   -
80   -}
yudao-module-pay/yudao-module-pay-biz/src/test-integration/java/cn/iocoder/yudao/module/pay/service/order/PayOrderServiceIntegrationTest.java deleted
1   -package cn.iocoder.yudao.module.pay.service.order;
2   -
3   -import cn.iocoder.yudao.module.pay.service.channel.PayAppServiceImpl;
4   -import cn.iocoder.yudao.module.pay.service.channel.PayChannelServiceImpl;
5   -import cn.iocoder.yudao.module.pay.service.order.dto.PayOrderCreateReqDTO;
6   -import cn.iocoder.yudao.module.pay.service.order.dto.PayOrderSubmitReqDTO;
7   -import cn.iocoder.yudao.module.pay.test.BaseDbIntegrationTest;
8   -import cn.iocoder.yudao.framework.common.util.date.DateUtils;
9   -import cn.iocoder.yudao.framework.pay.config.YudaoPayAutoConfiguration;
10   -import cn.iocoder.yudao.framework.pay.core.enums.PayChannelEnum;
11   -import org.junit.jupiter.api.Test;
12   -import org.springframework.context.annotation.Import;
13   -
14   -import jakarta.annotation.Resource;
15   -import java.time.Duration;
16   -
17   -@Import({PayOrderServiceImpl.class, PayAppServiceImpl.class,
18   - PayChannelServiceImpl.class, YudaoPayAutoConfiguration.class})
19   -public class PayOrderServiceIntegrationTest extends BaseDbIntegrationTest {
20   -
21   - @Resource
22   - private PayOrderService payOrderService;
23   -
24   - @Test
25   - public void testCreatePayOrder() {
26   - // 构造请求
27   - PayOrderCreateReqDTO reqDTO = new PayOrderCreateReqDTO();
28   - reqDTO.setAppId(6L);
29   - reqDTO.setUserIp("127.0.0.1");
30   - reqDTO.setMerchantOrderId(String.valueOf(System.currentTimeMillis()));
31   - reqDTO.setSubject("标题");
32   - reqDTO.setBody("内容");
33   - reqDTO.setPrice(100);
34   - reqDTO.setExpireTime(DateUtils.addTime(Duration.ofDays(1)));
35   - // 发起请求
36   - payOrderService.createPayOrder(reqDTO);
37   - }
38   -
39   - @Test
40   - public void testSubmitPayOrder() {
41   - // 构造请求
42   - PayOrderSubmitReqDTO reqDTO = new PayOrderSubmitReqDTO();
43   - reqDTO.setId(10L);
44   - reqDTO.setAppId(6L);
45   - reqDTO.setChannelCode(PayChannelEnum.WX_PUB.getCode());
46   - reqDTO.setUserIp("127.0.0.1");
47   - // 发起请求
48   - payOrderService.submitPayOrder(reqDTO);
49   - }
50   -
51   -}
yudao-module-pay/yudao-module-pay-biz/src/test-integration/java/cn/iocoder/yudao/module/pay/service/package-info.java deleted
1   -package cn.iocoder.yudao.module.pay.service;
yudao-module-pay/yudao-module-pay-biz/src/test-integration/java/cn/iocoder/yudao/module/pay/test/BaseDbAndRedisIntegrationTest.java deleted
1   -package cn.iocoder.yudao.module.pay.test;
2   -
3   -import cn.iocoder.yudao.framework.datasource.config.YudaoDataSourceAutoConfiguration;
4   -import cn.iocoder.yudao.framework.mybatis.config.YudaoMybatisAutoConfiguration;
5   -import cn.iocoder.yudao.framework.redis.config.YudaoRedisAutoConfiguration;
6   -import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration;
7   -import com.baomidou.mybatisplus.autoconfigure.MybatisPlusAutoConfiguration;
8   -import org.redisson.spring.starter.RedissonAutoConfiguration;
9   -import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration;
10   -import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
11   -import org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration;
12   -import org.springframework.boot.test.context.SpringBootTest;
13   -import org.springframework.context.annotation.Import;
14   -import org.springframework.test.context.ActiveProfiles;
15   -
16   -@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.NONE, classes = BaseDbAndRedisIntegrationTest.Application.class)
17   -@ActiveProfiles("integration-test") // 设置使用 application-integration-test 配置文件
18   -public class BaseDbAndRedisIntegrationTest {
19   -
20   - @Import({
21   - // DB 配置类
22   - DynamicDataSourceAutoConfiguration.class, // Dynamic Datasource 配置类
23   - YudaoDataSourceAutoConfiguration.class, // 自己的 DB 配置类
24   - DataSourceAutoConfiguration.class, // Spring DB 自动配置类
25   - DataSourceTransactionManagerAutoConfiguration.class, // Spring 事务自动配置类
26   - // MyBatis 配置类
27   - YudaoMybatisAutoConfiguration.class, // 自己的 MyBatis 配置类
28   - MybatisPlusAutoConfiguration.class, // MyBatis 的自动配置类
29   -
30   - // Redis 配置类
31   - RedisAutoConfiguration.class, // Spring Redis 自动配置类
32   - YudaoRedisAutoConfiguration.class, // 自己的 Redis 配置类
33   - RedissonAutoConfiguration.class, // Redisson 自动配置类
34   - })
35   - public static class Application {
36   - }
37   -
38   -}
yudao-module-pay/yudao-module-pay-biz/src/test-integration/java/cn/iocoder/yudao/module/pay/test/BaseDbIntegrationTest.java deleted
1   -package cn.iocoder.yudao.module.pay.test;
2   -
3   -import cn.iocoder.yudao.framework.datasource.config.YudaoDataSourceAutoConfiguration;
4   -import cn.iocoder.yudao.framework.mybatis.config.YudaoMybatisAutoConfiguration;
5   -import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration;
6   -import com.baomidou.mybatisplus.autoconfigure.MybatisPlusAutoConfiguration;
7   -import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
8   -import org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration;
9   -import org.springframework.boot.test.context.SpringBootTest;
10   -import org.springframework.context.annotation.Import;
11   -import org.springframework.test.context.ActiveProfiles;
12   -
13   -@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.NONE, classes = BaseDbIntegrationTest.Application.class)
14   -@ActiveProfiles("integration-test") // 设置使用 application-integration-test 配置文件
15   -public class BaseDbIntegrationTest {
16   -
17   - @Import({
18   - // DB 配置类
19   - DynamicDataSourceAutoConfiguration.class, // Dynamic Datasource 配置类
20   - YudaoDataSourceAutoConfiguration.class, // 自己的 DB 配置类
21   - DataSourceAutoConfiguration.class, // Spring DB 自动配置类
22   - DataSourceTransactionManagerAutoConfiguration.class, // Spring 事务自动配置类
23   - // MyBatis 配置类
24   - YudaoMybatisAutoConfiguration.class, // 自己的 MyBatis 配置类
25   - MybatisPlusAutoConfiguration.class, // MyBatis 的自动配置类
26   - })
27   - public static class Application {
28   - }
29   -
30   -}
yudao-module-pay/yudao-module-pay-biz/src/test-integration/java/cn/iocoder/yudao/module/pay/test/BaseRedisIntegrationTest.java deleted
1   -package cn.iocoder.yudao.module.pay.test;
2   -
3   -import cn.iocoder.yudao.framework.redis.config.YudaoRedisAutoConfiguration;
4   -import org.redisson.spring.starter.RedissonAutoConfiguration;
5   -import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration;
6   -import org.springframework.boot.test.context.SpringBootTest;
7   -import org.springframework.context.annotation.Import;
8   -import org.springframework.test.context.ActiveProfiles;
9   -
10   -@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.NONE, classes = BaseRedisIntegrationTest.Application.class)
11   -@ActiveProfiles("integration-test") // 设置使用 application-integration-test 配置文件
12   -public class BaseRedisIntegrationTest {
13   -
14   - @Import({
15   - // Redis 配置类
16   - RedisAutoConfiguration.class, // Spring Redis 自动配置类
17   - YudaoRedisAutoConfiguration.class, // 自己的 Redis 配置类
18   - RedissonAutoConfiguration.class, // Redisson 自动配置类
19   - })
20   - public static class Application {
21   - }
22   -
23   -}
yudao-module-pay/yudao-module-pay-biz/src/test-integration/resources/application-integration-test.yaml deleted
1   -spring:
2   - main:
3   - lazy-initialization: true # 开启懒加载,加快速度
4   - banner-mode: off # 单元测试,禁用 Banner
5   -
6   ---- #################### 数据库相关配置 ####################
7   -
8   -spring:
9   - # 数据源配置项
10   - autoconfigure:
11   - exclude:
12   - - com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure # 排除 Druid 的自动配置,使用 dynamic-datasource-spring-boot-starter 配置多数据源
13   - datasource:
14   - druid: # Druid 【监控】相关的全局配置
15   - web-stat-filter:
16   - enabled: true
17   - dynamic: # 多数据源配置
18   - druid: # Druid 【连接池】相关的全局配置
19   - initial-size: 5 # 初始连接数
20   - min-idle: 10 # 最小连接池数量
21   - max-active: 20 # 最大连接池数量
22   - max-wait: 600000 # 配置获取连接等待超时的时间,单位:毫秒
23   - time-between-eviction-runs-millis: 60000 # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位:毫秒
24   - min-evictable-idle-time-millis: 300000 # 配置一个连接在池中最小生存的时间,单位:毫秒
25   - max-evictable-idle-time-millis: 900000 # 配置一个连接在池中最大生存的时间,单位:毫秒
26   - validation-query: SELECT 1 FROM DUAL # 配置检测连接是否有效
27   - test-while-idle: true
28   - test-on-borrow: false
29   - test-on-return: false
30   - primary: master
31   - datasource:
32   - master:
33   - name: ruoyi-vue-pro
34   - url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT
35   - driver-class-name: com.mysql.jdbc.Driver
36   - username: root
37   - password: 123456
38   - slave: # 模拟从库,可根据自己需要修改
39   - name: ruoyi-vue-pro
40   - url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT
41   - driver-class-name: com.mysql.jdbc.Driver
42   - username: root
43   - password: 123456
44   -
45   - # Redis 配置。Redisson 默认的配置足够使用,一般不需要进行调优
46   - data:
47   - redis:
48   - host: 127.0.0.1 # 地址
49   - port: 16379 # 端口(单元测试,使用 16379 端口)
50   - database: 0 # 数据库索引
51   -
52   -mybatis:
53   - lazy-initialization: true # 单元测试,设置 MyBatis Mapper 延迟加载,加速每个单元测试
54   -mybatis-plus:
55   - configuration:
56   - map-underscore-to-camel-case: true # 虽然默认为 true ,但是还是显示去指定下。
57   - log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 打印日志
58   - global-config:
59   - db-config:
60   - id-type: AUTO # 自增 ID
61   - logic-delete-value: 1 # 逻辑已删除值(默认为 1)
62   - logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
63   - mapper-locations: classpath*:mapper/*.xml
64   - type-aliases-package: ${yudao.info.base-package}.module.*.dal.dataobject
65   -
66   ---- #################### 定时任务相关配置 ####################
67   -
68   ---- #################### 配置中心相关配置 ####################
69   -
70   ---- #################### 服务保障相关配置 ####################
71   -
72   -# Lock4j 配置项(单元测试,禁用 Lock4j)
73   -
74   ---- #################### 监控相关配置 ####################
75   -
76   ---- #################### 芋道相关配置 ####################
77   -
78   -yudao:
79   - info:
80   - version: 1.0.0
81   - base-package: cn.iocoder.yudao.module
82   - pay:
83   - pay-notify-url: http://niubi.natapp1.cc/api/pay/order/notify
84   - refund-notify-url: http://niubi.natapp1.cc/api/pay/refund/notify