# cdwl-trans **Repository Path**: upg.project/cdwl-trans ## Basic Information - **Project Name**: cdwl-trans - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-26 - **Last Updated**: 2026-05-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README [cdwl-dao](cdwl-dao) 所有数据库访问对象 [cdwl-commons](cdwl-commons) 公共工具包 [cdwl-gateway](cdwl-gateway) 统一入口网关 所有对外api [cwdl-model](cwdl-model) 所有接口实体类 包括 对外 对渠道 [cdwl-trans-core-service](cdwl-trans-core-service) 公共service 依赖 [cdwl-trans-boc] 中国银行 [cdwl-trans-ccb] 建设银行 [cdwl-trans-cib]兴业银行 port:9062 单商户 [cdwl-trans-abc] 农业银行 [cdwl-trans-icbc] 工行 port:9063 [cdwl-trans-yeepay] 易宝支付 port: 9060 服务商 [cdwl-trans-allinpay] 通联 port: 9061 服务商 [cdwl-trans-chinaums] 银联商务 port: 9064 服务商 com.cdwl.trans.api->所有交易相关的实体类 [external](cdwl-trans-model/src/main/java/com/cdwl/trans/api/external)--->对外暴露 [inner](cdwl-trans-model/src/main/java/com/cdwl/trans/api/inner)--->微服务之间传值使用 -管理系统相关的 单独分包创建 规范: - 所有对外暴露接口类实体类按照xxxxVO 的方式进行命名 - 1个接口类对应1个DTO类, 杜绝基础参数传递 - 所有接口严格按照字段个数进行返回,不要返回多余字段 - 禁止在表对实体上增加任何字段([domain](cdwl-trans-dao/src/main/java/com/cdwl/trans/dao/domain)),必须保持实体和表字段关系为1:1对应 - 多表操作时候必须在事务中控制,禁止service之间相互依赖, 如果 A B C 3个service时 在A service中需要同时操作 B C2个service中的方式, 此时不允许直接在A中注入,需要单独写一个Service,命名规范 xxxManager在里面注入 A B C 进行操作 - 权限验证: 涉及到具体某个权限验证时候,要验证到方法级别 可以自定义 注解或者 借助已有框架 - 所有接口都需要记录操作日志 - 所有关于Manager 的业务代码均写到biz模块下 - 秘钥存放逻辑 所有业务秘钥 均 用主秘钥进行加密后,将加密结果转成base64 存储 - 流程为 key(秘钥byte)---->base64(sm4(key)) -启动执行命令 -Dspring.profiles.active=dev -Dnacos.addr=test.zebracd.com:8849 -Dnamespace=0abba1f5-3c50-48a9-9320-f5570486f2db -Dnacos.username=nacos -Dnacos.password=nacos 通知路径统一格式: /** * * @param channelCode 渠道 * @param customKey 自定义key * @param op 操作类型 pay->支付 refund->退款 divide->分账 * @param request * @param response */ @RequestMapping("notice/{channelCode}/{customKey}/{op}") 通知规范 https://domain/notice/{channelCode}/{customKey}/{op} customKey: 接口上传 动态取值时未业务商户+"_"+渠道商户号的组合 非动态时候: 根据实际情况定 各渠道参数key_data格式: 所有key 存数据库为加密形式 农行: { "key":`md5key` "tid":"终端银行分配" } 通联: -- 聚合参数统一使用 渠道参数表 trans_channel_params.key_data 存放通联的服务商参数 { "spAppId":"服务商应用号", "spAppPriKey":"应用私钥", "pubKey":"通联公钥", "rsaPubKey":"平台rsa公钥[快捷验签]", "quickPayBaseDomain":"快捷基础域名(https://vsp.allinpay.com/)" } -- 快捷单独使用 商户渠道参数表trans_channel_merchant_r.key_data 存放渠道商户独立参数 { "sybAppId":`商户应用号`, "merPriKey":`商户私钥`, "receiverSignNum":`商户会员编号-收款人`, }