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