2
0

5 Commits 7dcdd9ada6 ... c0b9fb992a

Autor SHA1 Nachricht Datum
  xucaiqin c0b9fb992a Merge remote-tracking branch 'origin/dev_20260630' into dev_20260630 vor 1 Woche
  xucaiqin d343a6a25d 支付 vor 1 Woche
  xucaiqin 3df71bdb72 Merge remote-tracking branch 'origin/dev_20260630' into dev_20260630 vor 1 Woche
  xucaiqin c913ccf32a other vor 1 Woche
  xucaiqin b0fce1ffd1 unuse vor 1 Woche
100 geänderte Dateien mit 5231 neuen und 189 gelöschten Zeilen
  1. 22 10
      sckw-common/sckw-common-core/src/main/java/com/sckw/core/model/enums/EntTypeEnum.java
  2. 16 0
      sckw-common/sckw-common-core/src/main/java/com/sckw/core/web/response/result/PageDataResult.java
  3. 3 0
      sckw-modules-api/sckw-contract-api/src/main/java/com/sckw/contract/api/RemoteContractService.java
  4. 0 56
      sckw-modules-api/sckw-file-api/src/main/java/com/sckw/file/api/dubbo/FileApiDubboService.java
  5. 27 0
      sckw-modules-api/sckw-file-api/src/main/java/com/sckw/file/api/dubbo/RemoteFileService.java
  6. 20 0
      sckw-modules-api/sckw-payment-api/src/main/java/com/sckw/payment/api/model/TradeEntInfoResVo.java
  7. 6 5
      sckw-modules/sckw-contract/src/main/java/com/sckw/contract/controller/KwcContractLogisticsScoreController.java
  8. 21 1
      sckw-modules/sckw-contract/src/main/java/com/sckw/contract/dubbo/RemoteContractServiceImpl.java
  9. 6 22
      sckw-modules/sckw-file/src/main/java/com/sckw/file/controller/KwfFileController.java
  10. 0 83
      sckw-modules/sckw-file/src/main/java/com/sckw/file/dubbo/FileDubboApiServiceImpl.java
  11. 34 0
      sckw-modules/sckw-file/src/main/java/com/sckw/file/dubbo/RemoteFileServiceImpl.java
  12. 4 3
      sckw-modules/sckw-file/src/main/java/com/sckw/file/service/FileService.java
  13. 6 9
      sckw-modules/sckw-fleet/src/main/java/com/sckw/fleet/service/KwfDriverService.java
  14. 10 0
      sckw-modules/sckw-payment/pom.xml
  15. 22 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/config/ApplicationProperties.java
  16. 60 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/NoticeController.java
  17. 47 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/WalletBusinessFileController.java
  18. 187 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/WalletController.java
  19. 61 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/WalletPayableBalanceController.java
  20. 199 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/WalletPayableController.java
  21. 58 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/WalletPrepaidBalanceController.java
  22. 206 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/WalletPrepaidController.java
  23. 152 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/KwpWallet.java
  24. 127 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/KwpWalletCash.java
  25. 124 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/KwpWalletSplit.java
  26. 80 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/Wallet.java
  27. 63 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletAccount.java
  28. 87 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletBalance.java
  29. 40 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletBankCallback.java
  30. 43 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletBankRequest.java
  31. 50 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletBusinessFile.java
  32. 92 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletEntInfo.java
  33. 56 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletEntUser.java
  34. 63 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletPayable.java
  35. 60 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletPayableApply.java
  36. 75 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletPayableBalance.java
  37. 62 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletPayablePay.java
  38. 57 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletPrepaid.java
  39. 72 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletPrepaidBalance.java
  40. 58 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletPrepaidRecord.java
  41. 40 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletRequestLog.java
  42. 35 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/CashActionEnum.java
  43. 32 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/CashStatusEnum.java
  44. 41 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/ExecutionStatusEnum.java
  45. 31 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/FreightActionEnum.java
  46. 31 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/FreightStatusEnum.java
  47. 44 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/OrderTypeEnum.java
  48. 42 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/PayStatusEnum.java
  49. 22 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/PayXwEnum.java
  50. 49 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/TransactionTypeEnum.java
  51. 32 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/WalletStatusEnum.java
  52. 13 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/KwpWalletCashMapper.java
  53. 13 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/KwpWalletMapper.java
  54. 13 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/KwpWalletSplitMapper.java
  55. 81 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletAccountMapper.java
  56. 81 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletBalanceMapper.java
  57. 81 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletBankCallbackMapper.java
  58. 72 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletBankRequestMapper.java
  59. 88 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletBusinessFileMapper.java
  60. 81 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletEntInfoMapper.java
  61. 85 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletEntUserMapper.java
  62. 89 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletMapper.java
  63. 91 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletPayableApplyMapper.java
  64. 84 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletPayableBalanceMapper.java
  65. 87 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletPayableMapper.java
  66. 87 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletPayablePayMapper.java
  67. 86 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletPrepaidBalanceMapper.java
  68. 95 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletPrepaidMapper.java
  69. 84 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletPrepaidRecordMapper.java
  70. 72 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletRequestLogMapper.java
  71. 36 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/CashParaPage.java
  72. 86 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/CashVo.java
  73. 24 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/UpdateCash.java
  74. 21 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/CashDto.java
  75. 30 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/CashWalletReq.java
  76. 27 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/CreateUser.java
  77. 32 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/CustomSettleDto.java
  78. 22 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/CustomSettleRes.java
  79. 18 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/DivideDto.java
  80. 14 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/DivideInfoDto.java
  81. 41 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/PayDto.java
  82. 16 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/Res.java
  83. 21 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/SplitDto.java
  84. 15 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/UserDataDto.java
  85. 100 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/UserDetailDto.java
  86. 16 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/UserDto.java
  87. 27 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/UserInfo.java
  88. 47 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/UserPara.java
  89. 39 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/WithdrawDto.java
  90. 15 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/WithdrawRes.java
  91. 20 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/PayRes.java
  92. 71 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/WalletCashVo.java
  93. 142 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/WalletVo.java
  94. 19 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/req/CreateUserReq.java
  95. 30 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/req/ReceivedCallbackDto.java
  96. 26 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/req/WalletAccountInfoQuery.java
  97. 26 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/req/WalletPayableApplyPayDto.java
  98. 19 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/req/WalletPayableApplyQuery.java
  99. 49 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/req/WalletPayableBalanceQuery.java
  100. 24 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/req/WalletPayableConfirmPayDto.java

+ 22 - 10
sckw-common/sckw-common-core/src/main/java/com/sckw/core/model/enums/EntTypeEnum.java

@@ -71,27 +71,39 @@ public enum EntTypeEnum {
                 || entTypes.contains(String.valueOf(EntTypeEnum.LOGISTICS3.getCode()));
     }
 
+
+    /**
+     * @desc 获取企业是承运单位类型值(4P物流、3P物流)
+     * @author zk
+     * @date 2023/10/7
+     **/
+    public static String carrier() {
+        return EntTypeEnum.LOGISTICS3.getCode() + Global.COMMA + EntTypeEnum.LOGISTICS4.getCode();
+    }
     /**
      * @param entTypes 企业属性
-     * @desc 校验企业是否为承运单位(4P物流、3P物流)
+     * @desc 校验企业是否为托运单位(供应商、采购商、4P物流)
      * @author zk
      * @date 2023/10/7
      **/
-    public static Boolean carrier(String entTypes) {
-        if (StringUtils.isBlank(entTypes)) {
-            return null;
+    public static boolean consign(String entTypes) {
+        if(StringUtils.isBlank(entTypes)){
+            return false;
         }
-        return entTypes.contains(String.valueOf(EntTypeEnum.LOGISTICS3.getCode()))
-                || entTypes.contains(String.valueOf(EntTypeEnum.LOGISTICS4.getCode()));
+        return entTypes.contains(String.valueOf(EntTypeEnum.SUPPLIER.getCode()))
+                || entTypes.contains(String.valueOf(EntTypeEnum.PURCHASER.getCode()));
     }
-
     /**
-     * @desc 获取企业是承运单位类型值(4P物流、3P物流)
+     * @param entTypes 企业属性
+     * @desc 校验企业是否为承运单位(物流企业)
      * @author zk
      * @date 2023/10/7
      **/
-    public static String carrier() {
-        return EntTypeEnum.LOGISTICS3.getCode() + Global.COMMA + EntTypeEnum.LOGISTICS4.getCode();
+    public static boolean carrier(String entTypes) {
+        if(StringUtils.isBlank(entTypes)){
+            return false;
+        }
+        return entTypes.contains(String.valueOf(EntTypeEnum.LOGISTIC.getCode()));
     }
 
 

+ 16 - 0
sckw-common/sckw-common-core/src/main/java/com/sckw/core/web/response/result/PageDataResult.java

@@ -1,6 +1,7 @@
 package com.sckw.core.web.response.result;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.github.pagehelper.PageInfo;
 import lombok.Data;
 
 import java.io.Serial;
@@ -77,5 +78,20 @@ public class PageDataResult<T> implements Serializable {
         return pageResult;
     }
 
+    public static <T> PageDataResult<T> of(PageInfo<T> page) {
+        PageDataResult<T> pageResult = new PageDataResult<>();
+        pageResult.setPageNum(page.getPageNum());
+        pageResult.setPageSize(page.getSize());
+        pageResult.setTotal(page.getTotal());
+        // 修正总页数计算
+        if(page.getSize()==0){
+            pageResult.setPages(0);
+        }else {
+            pageResult.setPages((int) ((page.getTotal() + page.getSize() - 1) / page.getSize()));
+        }
+        pageResult.setList(page.getList());
+        return pageResult;
+    }
+
 
 }

+ 3 - 0
sckw-modules-api/sckw-contract-api/src/main/java/com/sckw/contract/api/RemoteContractService.java

@@ -1,8 +1,10 @@
 package com.sckw.contract.api;
 
 import com.sckw.contract.api.model.dto.req.ContractAuditPara;
+import com.sckw.contract.api.model.dto.req.TradeEntListQueryFeignDto;
 import com.sckw.contract.api.model.dto.res.*;
 import com.sckw.contract.api.model.vo.*;
+import com.sckw.core.web.response.BaseResult;
 
 import java.math.BigDecimal;
 import java.time.LocalDateTime;
@@ -197,4 +199,5 @@ public interface RemoteContractService {
 
     ProxyContractVo queryProxyContract(Long goodsId);
 
+    BaseResult<List<TradeEntInfoResVo>> queryPrepaidTradeEntIds(TradeEntListQueryFeignDto queryFeignDto);
 }

+ 0 - 56
sckw-modules-api/sckw-file-api/src/main/java/com/sckw/file/api/dubbo/FileApiDubboService.java

@@ -1,56 +0,0 @@
-package com.sckw.file.api.dubbo;
-
-import com.sckw.core.model.file.FileInfo;
-import com.sckw.core.web.response.HttpResult;
-import com.sckw.file.api.dto.FileInfoDTO;
-import org.springframework.web.multipart.MultipartFile;
-
-import java.io.InputStream;
-import java.text.ParseException;
-
-/**
- * @author lfdc
- * @version 1.0
- * @className FileApiDubboService
- * @description fileDubbo服务
- * @company sckw
- * @date 2023-06-06 10:06:27
- */
-public interface FileApiDubboService {
-
-    /**
-     * 文件上传
-     * @param str
-     * @param fileByte
-     * @return
-     */
-    HttpResult fileUpload(String str, byte[] fileByte);
-
-    /**
-     * dubbo方式上传
-     * @param file
-     * @return
-     */
-    HttpResult fileUploadTodubbo(MultipartFile file);
-
-    /**
-     * 查询数据
-     * @return
-     */
-    HttpResult selectAll();
-
-    /**
-     * dubbo 文件调用
-     * @param inputStream
-     * @param fileInfo
-     * @return
-     */
-    HttpResult fileDubboUpload(InputStream inputStream, FileInfoDTO fileInfo);
-
-    /**
-     * dubbo保存信息
-     * @param fileInfo
-     * @return
-     */
-    HttpResult fileInfoInsert(FileInfo fileInfo) throws ParseException;
-}

+ 27 - 0
sckw-modules-api/sckw-file-api/src/main/java/com/sckw/file/api/dubbo/RemoteFileService.java

@@ -0,0 +1,27 @@
+package com.sckw.file.api.dubbo;
+
+import com.sckw.core.model.vo.FileInfoVO;
+import com.sckw.core.web.response.BaseResult;
+import com.sckw.core.web.response.HttpResult;
+import org.springframework.web.multipart.MultipartFile;
+
+/**
+ * @author lfdc
+ * @version 1.0
+ * @className FileApiDubboService
+ * @description fileDubbo服务
+ * @company sckw
+ * @date 2023-06-06 10:06:27
+ */
+public interface RemoteFileService {
+
+
+    /**
+     * dubbo方式上传
+     * @param file
+     * @return
+     */
+    BaseResult<FileInfoVO> fileUpload(MultipartFile file);
+
+
+}

+ 20 - 0
sckw-modules-api/sckw-payment-api/src/main/java/com/sckw/payment/api/model/TradeEntInfoResVo.java

@@ -0,0 +1,20 @@
+package com.sckw.payment.api.model;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * 交易对方企业信息
+ *
+ * @author tangyishan
+ * @since 2026-02-03  10:39
+ */
+@Data
+public class TradeEntInfoResVo implements Serializable {
+    private static final long serialVersionUID = 1L;
+    @JsonFormat(shape = JsonFormat.Shape.STRING)
+    private Long entId;
+    private String entName;
+}

+ 6 - 5
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/controller/KwcContractLogisticsScoreController.java

@@ -2,13 +2,15 @@ package com.sckw.contract.controller;
 
 
 import com.github.pagehelper.PageInfo;
-import com.sckw.contract.model.dto.req.*;
+import com.sckw.contract.model.dto.req.LogisticsScoreApprovalDto;
+import com.sckw.contract.model.dto.req.LogisticsScoreDetailAddDto;
+import com.sckw.contract.model.dto.req.LogisticsScoreDetailQueryDto;
+import com.sckw.contract.model.dto.req.LogisticsScoreQueryDto;
 import com.sckw.contract.model.vo.res.LogisticsScoreDetailResVo;
 import com.sckw.contract.model.vo.res.LogisticsScoreResVo;
+import com.sckw.contract.service.IKwcContractLogisticsScoreService;
 import com.sckw.core.web.context.LoginUserHolder;
 import com.sckw.core.web.controller.BaseController;
-import com.sckw.core.web.page.PageDomain;
-import com.sckw.core.web.page.TableSupport;
 import com.sckw.core.web.response.BaseResult;
 import com.sckw.core.web.response.result.PageDataResult;
 import io.swagger.v3.oas.annotations.Operation;
@@ -17,11 +19,10 @@ import io.swagger.v3.oas.annotations.tags.Tag;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
-import com.sckw.contract.service.IKwcContractLogisticsScoreService;
 
 /**
  * 物流企业评分Controller
- * 
+ *
  * @author tangyishan
  * @date 2025-12-05
  */

+ 21 - 1
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/dubbo/RemoteContractServiceImpl.java

@@ -8,12 +8,12 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.google.common.collect.Sets;
 import com.sckw.contract.api.RemoteContractService;
 import com.sckw.contract.api.model.dto.req.ContractAuditPara;
+import com.sckw.contract.api.model.dto.req.TradeEntListQueryFeignDto;
 import com.sckw.contract.api.model.dto.res.*;
 import com.sckw.contract.api.model.vo.*;
 import com.sckw.contract.dao.*;
 import com.sckw.contract.model.KwcContractProxy;
 import com.sckw.contract.model.KwcContractProxyGoods;
-import com.sckw.contract.model.KwcContractProxy;
 import com.sckw.contract.model.KwcContractProxyUnit;
 import com.sckw.contract.model.dto.res.QueryContractValidCountResDto;
 import com.sckw.contract.model.entity.*;
@@ -34,7 +34,9 @@ import com.sckw.core.model.enums.EntTypeEnum;
 import com.sckw.core.model.enums.SigningWayEnum;
 import com.sckw.core.utils.BeanUtils;
 import com.sckw.core.utils.CollectionUtils;
+import com.sckw.core.web.context.LoginEntHolder;
 import com.sckw.core.web.context.LoginUserHolder;
+import com.sckw.core.web.response.BaseResult;
 import com.sckw.redis.constant.RedisConstant;
 import com.sckw.system.api.RemoteSystemService;
 import com.sckw.transport.api.dubbo.TransportRemoteService;
@@ -1006,4 +1008,22 @@ public class RemoteContractServiceImpl implements RemoteContractService {
         return null;
     }
 
+    @Override
+    public BaseResult<List<TradeEntInfoResVo>> queryPrepaidTradeEntIds(TradeEntListQueryFeignDto queryFeignDto) {
+        if(queryFeignDto.getCurEntId() == null){
+            queryFeignDto.setCurEntId(LoginUserHolder.getEntId());
+        }
+        if(queryFeignDto.getTradeEntType() == null){
+            String entTypes = LoginEntHolder.get().getEntTypes();
+            if (entTypes.contains(String.valueOf(EntTypeEnum.SUPPLIER.getCode()))) {
+                queryFeignDto.setTradeEntType(EntTypeEnum.PURCHASER.getCode());
+            } else if (entTypes.contains(String.valueOf(EntTypeEnum.PURCHASER.getCode()))) {
+                queryFeignDto.setTradeEntType(EntTypeEnum.SUPPLIER.getCode());
+            } else {
+                return BaseResult.success(Collections.emptyList());
+            }
+        }
+        return BaseResult.success(kwcContractTradeService.queryTradeEntList(queryFeignDto));
+    }
+
 }

+ 6 - 22
sckw-modules/sckw-file/src/main/java/com/sckw/file/controller/KwfFileController.java

@@ -1,15 +1,15 @@
 package com.sckw.file.controller;
 
 import com.sckw.core.annotation.RepeatSubmit;
-import com.sckw.core.model.file.FileInfo;
+import com.sckw.core.model.vo.FileInfoVO;
 import com.sckw.core.web.constant.HttpStatus;
+import com.sckw.core.web.response.BaseResult;
 import com.sckw.core.web.response.HttpResult;
 import com.sckw.core.web.response.result.Status;
 import com.sckw.file.api.dto.FileInfoDTO;
-import com.sckw.file.dubbo.FileDubboApiServiceImpl;
+import com.sckw.file.dubbo.RemoteFileServiceImpl;
 import com.sckw.file.model.param.FileImageParam;
 import com.sckw.file.service.FileService;
-import io.seata.spring.annotation.GlobalTransactional;
 import jakarta.servlet.http.HttpServletRequest;
 import jakarta.servlet.http.HttpServletResponse;
 import jakarta.validation.Valid;
@@ -23,7 +23,6 @@ import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
 import java.io.InputStream;
-import java.text.ParseException;
 import java.util.Map;
 
 /**
@@ -44,7 +43,7 @@ public class KwfFileController {
     private FileService fileService;
 
     @Autowired
-    private FileDubboApiServiceImpl fileApiService;
+    private RemoteFileServiceImpl fileApiService;
 
     /**
      * 上传文件至OSS
@@ -126,12 +125,12 @@ public class KwfFileController {
      * @return
      */
     @RequestMapping(value = "/uploadFileInfo", method = RequestMethod.POST)
-    public HttpResult uploadFileInfo(@RequestParam("file") MultipartFile file) {
+    public BaseResult<FileInfoVO> uploadFileInfo(@RequestParam("file") MultipartFile file) {
         try {
             return fileService.uploadFileInfo(file);
         } catch (Exception e) {
             log.info("上传文件失败:{}",e.getMessage(),e);
-            return HttpResult.error("上传文件失败:" + e.getMessage());
+            return BaseResult.failed("上传文件失败:" + e.getMessage());
         }
     }
 
@@ -194,21 +193,6 @@ public class KwfFileController {
         }
     }
 
-    /**
-     * dubbo接收文件信息保存至数据库
-     *
-     * @param fileInfo
-     * @return
-     */
-    @RequestMapping(value = "/fileInfoInsertByOSS", method = RequestMethod.POST)
-    @GlobalTransactional(rollbackFor = Exception.class)
-    public HttpResult fileInfoInsertByOSS(@RequestBody FileInfo fileInfo) {
-        try {
-            return fileApiService.fileInfoInsert(fileInfo);
-        } catch (ParseException e) {
-            throw new RuntimeException(e);
-        }
-    }
 
     /**
      * dubbo接收上传文件至OSS

+ 0 - 83
sckw-modules/sckw-file/src/main/java/com/sckw/file/dubbo/FileDubboApiServiceImpl.java

@@ -1,83 +0,0 @@
-package com.sckw.file.dubbo;
-
-import com.sckw.core.model.constant.NumberConstant;
-import com.sckw.core.common.enums.enums.FileEnum;
-import com.sckw.core.model.file.FileInfo;
-import com.sckw.core.utils.FileUtils;
-import com.sckw.core.utils.IdWorker;
-import com.sckw.core.utils.StringUtils;
-import com.sckw.core.web.response.HttpResult;
-import com.sckw.excel.utils.DateUtil;
-import com.sckw.file.api.dto.FileInfoDTO;
-import com.sckw.file.api.dubbo.FileApiDubboService;
-import com.sckw.file.dao.KwsFileInfoDao;
-import com.sckw.file.model.kwfFileInfo;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.io.FilenameUtils;
-import org.apache.dubbo.config.annotation.DubboService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.multipart.MultipartFile;
-
-import java.io.InputStream;
-import java.math.BigDecimal;
-import java.text.ParseException;
-import java.util.Map;
-
-/**
- * @author lfdc
- * @description fileDubbo调用
- * @date 2023/6/20 0020
- */
-
-@Slf4j
-@DubboService(group = "design", version = "1.0.0",timeout = 50000)
-public class FileDubboApiServiceImpl implements FileApiDubboService {
-
-    @Autowired
-    KwsFileInfoDao fileInfoDao;
-
-    @Override
-    public HttpResult fileUpload(String str, byte[] fileByte) {
-        return null;
-    }
-
-    @Override
-    public HttpResult fileUploadTodubbo(MultipartFile file) {
-        return null;
-    }
-
-    @Override
-    public HttpResult selectAll() {
-        BigDecimal bigDecimal = new BigDecimal(NumberConstant.ZERO);
-        BigDecimal bigDecimal1 = new BigDecimal(NumberConstant.SIX);
-        BigDecimal divide = bigDecimal1.divide(bigDecimal);
-        return null;
-    }
-
-    @Override
-    public HttpResult fileDubboUpload(InputStream inputStream, FileInfoDTO fileInfo) {
-        Map<String, String> map = FileUtils.uploadFileByInfo(inputStream, fileInfo.getOriginalName(), FileEnum.Local_Address);
-        return HttpResult.ok(map);
-    }
-
-    @Override
-    public HttpResult fileInfoInsert(FileInfo fileInfo) throws ParseException {
-        kwfFileInfo kwfFileInfo = new kwfFileInfo();
-        kwfFileInfo.setOriginalName(fileInfo.getFileOriginalName());
-        kwfFileInfo.setFileSuffix(FilenameUtils.getExtension(fileInfo.getFileOriginalName()));
-        kwfFileInfo.setFileSize(StringUtils.isBlank(fileInfo.getFileSize()) ? new BigDecimal(NumberConstant.ZERO) : fileInfo.getFileSize());
-        kwfFileInfo.setId(new IdWorker(1).nextId());
-        kwfFileInfo.setType(fileInfo.getType());
-        kwfFileInfo.setFileName(fileInfo.getFileName());
-        kwfFileInfo.setMd5(fileInfo.getFileMd5());
-        kwfFileInfo.setFilePath(fileInfo.getFilePath());
-        kwfFileInfo.setCreateTime(DateUtil.strToDate(fileInfo.getCreateTime(),"yyyy-MM-dd HH:mm:ss"));
-        kwfFileInfo.setUpdateTime(DateUtil.strToDate(fileInfo.getUpdateTime(),"yyyy-MM-dd HH:mm:ss"));
-        kwfFileInfo.setStatus(fileInfo.getStatus());
-        kwfFileInfo.setDelFlag(fileInfo.getDelFlag());
-        kwfFileInfo.setCreateBy(fileInfo.getCreateBy());
-        kwfFileInfo.setUpdateBy(fileInfo.getUpdateBy());
-        fileInfoDao.insert(kwfFileInfo);
-        return HttpResult.ok();
-    }
-}

+ 34 - 0
sckw-modules/sckw-file/src/main/java/com/sckw/file/dubbo/RemoteFileServiceImpl.java

@@ -0,0 +1,34 @@
+package com.sckw.file.dubbo;
+
+import com.sckw.core.model.vo.FileInfoVO;
+import com.sckw.core.web.response.BaseResult;
+import com.sckw.core.web.response.HttpResult;
+import com.sckw.file.api.dubbo.RemoteFileService;
+import com.sckw.file.service.FileService;
+import jakarta.annotation.Resource;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.dubbo.config.annotation.DubboService;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.multipart.MultipartFile;
+
+/**
+ * @author lfdc
+ * @description fileDubbo调用
+ * @date 2023/6/20 0020
+ */
+
+@Slf4j
+@DubboService(group = "design", version = "1.0.0",timeout = 50000)
+public class RemoteFileServiceImpl implements RemoteFileService {
+
+    @Resource
+    private FileService fileService;
+
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public BaseResult<FileInfoVO> fileUpload(MultipartFile file) {
+        return fileService.uploadFileInfo(file);
+    }
+
+}

+ 4 - 3
sckw-modules/sckw-file/src/main/java/com/sckw/file/service/FileService.java

@@ -3,10 +3,10 @@ package com.sckw.file.service;
 
 import com.aliyun.oss.model.OSSObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.sckw.core.model.constant.NumberConstant;
 import com.sckw.core.common.enums.StringConstant;
 import com.sckw.core.common.enums.enums.FileDisposeLayoutEnum;
 import com.sckw.core.common.enums.enums.FileEnum;
+import com.sckw.core.model.constant.NumberConstant;
 import com.sckw.core.model.file.FileInfo;
 import com.sckw.core.model.vo.FileInfoEncryptVO;
 import com.sckw.core.model.vo.FileInfoVO;
@@ -15,6 +15,7 @@ import com.sckw.core.utils.IdWorker;
 import com.sckw.core.utils.StringUtils;
 import com.sckw.core.web.constant.HttpStatus;
 import com.sckw.core.web.context.LoginUserHolder;
+import com.sckw.core.web.response.BaseResult;
 import com.sckw.core.web.response.HttpResult;
 import com.sckw.core.web.response.result.Status;
 import com.sckw.file.api.dto.FileInfoDTO;
@@ -259,7 +260,7 @@ public class FileService {
         return null;
     }
 
-    public HttpResult uploadFileInfo(MultipartFile file) {
+    public BaseResult<FileInfoVO> uploadFileInfo(MultipartFile file) {
         boolean flag = checkFileFormat(file);
         if (!flag) {
             throw new RuntimeException("上传文件格式错误!");
@@ -271,7 +272,7 @@ public class FileService {
         BeanUtils.copyProperties(returnFileInfo, fileInfoVO);
         boolean isImage = FileUtils.isImage(file);
         insertFile(returnFileInfo, isImage);
-        return HttpResult.ok(fileInfoVO);
+        return BaseResult.success(fileInfoVO);
     }
 
     private void insertFile(FileInfo fileInfo, boolean isImage) {

+ 6 - 9
sckw-modules/sckw-fleet/src/main/java/com/sckw/fleet/service/KwfDriverService.java

@@ -25,7 +25,6 @@ import com.sckw.core.web.context.LoginUserHolder;
 import com.sckw.core.web.response.HttpResult;
 import com.sckw.excel.easyexcel.ExcelImportListener;
 import com.sckw.excel.utils.ExcelUtil;
-import com.sckw.file.api.dubbo.FileApiDubboService;
 import com.sckw.fleet.dao.*;
 import com.sckw.fleet.model.*;
 import com.sckw.fleet.model.dto.*;
@@ -47,12 +46,10 @@ import com.sckw.transport.api.dubbo.TransportRemoteService;
 import com.sckw.transport.api.model.param.CapacityTruckParam;
 import com.sckw.transport.api.model.vo.RWaybillOrderVo;
 import com.sckw.transport.api.model.vo.WaybillOrderTaskVO;
-import io.seata.spring.annotation.GlobalTransactional;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.dubbo.config.annotation.DubboReference;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Propagation;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.multipart.MultipartFile;
 
@@ -89,8 +86,7 @@ public class KwfDriverService {
     KwfFleetDriverMapper fleetDriverDao;
     @DubboReference(version = "1.0.0", group = "design", check = false)
     private RemoteSystemService remoteSystemService;
-    @DubboReference(version = "1.0.0", group = "design", check = false)
-    private FileApiDubboService remoteFileService;
+
     @DubboReference(version = "1.0.0", group = "design", check = false, timeout = 8000)
     private RemoteUserService remoteUserService;
     @Autowired
@@ -374,7 +370,7 @@ public class KwfDriverService {
     @Transactional(rollbackFor = Exception.class)
     public void saveTruckAndAssociate(DriverAssociatedTruckSaveRequest request) {
         log.info("开始新增车辆档案并关联司机,request={}", JSON.toJSONString(request));
-        
+
         String entId = request.getEntId();
         if (org.apache.commons.lang3.StringUtils.isBlank(entId)) {
             log.error("新增车辆档案失败:企业id不能为空");
@@ -396,6 +392,7 @@ public class KwfDriverService {
         truckSaveParam.setVin(request.getVin());
         truckSaveParam.setBrand(request.getBrand());
         truckSaveParam.setPositionDevice(request.getPositionDevice());
+
         truckSaveParam.setEntId(StringUtils.isNotBlank(entId) ? Long.valueOf(entId) : LoginUserHolder.getEntId());
         log.info("调用truckService.saveTruck保存车辆档案,truckNo={}", request.getTruckNo());
         try {
@@ -411,7 +408,7 @@ public class KwfDriverService {
         KwfTruck truck = truckRepository.getOne(Wrappers.<KwfTruck>lambdaQuery()
                 .eq(KwfTruck::getTruckNo, request.getTruckNo())
                 .last("limit 1"));
-        
+
         if (truck == null) {
             log.error("车辆档案保存后查询失败,truckNo={}", request.getTruckNo());
             throw new BusinessPlatfromException(ErrorCodeEnum.TRUCK_NOT_FOUND, "车辆档案保存失败");
@@ -424,7 +421,7 @@ public class KwfDriverService {
         associatedTrackAddRequest.setDriverId(request.getDriverId());
         associatedTrackAddRequest.setTruckNo(truck.getTruckNo());
         associatedTrackAddRequest.setTruckAxleId(request.getTruckAxleId());
-        
+
         log.info("开始关联司机与车辆,driverId={}, truckNo={}", request.getDriverId(), truck.getTruckNo());
         try {
             addAssociatedTrack(associatedTrackAddRequest);
@@ -433,7 +430,7 @@ public class KwfDriverService {
             log.error("司机与车辆关联异常,driverId={}, truckNo={}", request.getDriverId(), truck.getTruckNo(), e);
             throw new BusinessException( "司机与车辆关联异常");
         }
-        
+
         log.info("新增车辆档案并关联司机流程结束");
     }
 

+ 10 - 0
sckw-modules/sckw-payment/pom.xml

@@ -119,6 +119,16 @@
             <groupId>com.github.xiaoymin</groupId>
             <artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId>
         </dependency>
+        <dependency>
+            <groupId>com.sckw</groupId>
+            <artifactId>sckw-contract-api</artifactId>
+            <version>1.0.0</version>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>com.sckw</groupId>
+            <artifactId>sckw-file-api</artifactId>
+        </dependency>
 
 
     </dependencies>

+ 22 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/config/ApplicationProperties.java

@@ -0,0 +1,22 @@
+package com.sckw.payment.config;
+
+import lombok.Data;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.context.annotation.Configuration;
+
+@Data
+@Configuration
+@ConfigurationProperties(prefix = "payment.xw")
+public class ApplicationProperties {
+    private String url;
+    private String charge;
+    private String prefix;
+    private String appId;
+    private Integer platNo;
+    private String amtMaxOrder;
+    private String amtMaxDay;
+    private String account;
+    private String split;
+    private String cash;
+    private String refund;
+}

+ 60 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/NoticeController.java

@@ -0,0 +1,60 @@
+package com.sckw.payment.controller;
+
+import com.sckw.payment.api.model.dto.common.R;
+import com.sckw.payment.pojo.dto.CashDto;
+import com.sckw.payment.pojo.dto.SplitDto;
+import com.sckw.payment.pojo.dto.UserDto;
+import com.sckw.payment.service.WalletService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.annotation.Resource;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 通知
+ *
+ * @author xucaiqin
+ * @date 2023-08-28 15:36:48
+ */
+@Tag(name = "通知", description = "通知")
+@Validated
+@RestController
+@RequestMapping("/notice")
+@Slf4j
+public class NoticeController {
+    @Resource
+    private WalletService walletService;
+
+    /**
+     * 【接口】用户开户回调
+     */
+    @Operation(summary = "用户开户回调", description = "用户开户回调")
+    @PostMapping("/user")
+    public R<Object> createUser(@RequestBody UserDto userDto) {
+        return R.ok(walletService.userNotice(userDto));
+    }
+
+    /**
+     * 【接口】提现回调通知
+     */
+    @Operation(summary = "提现回调通知", description = "提现回调通知")
+    @PostMapping("/cash")
+    public R<Object> cash(CashDto cashDto) {
+        return R.ok(walletService.cashNotice(cashDto));
+    }
+
+    /**
+     * 【接口】清分回调通知
+     */
+    @Operation(summary = "清分回调通知", description = "清分回调通知")
+    @PostMapping("/split")
+    public R<Object> split(SplitDto splitDto) {
+        return R.ok(walletService.splitNotice(splitDto));
+    }
+
+}

+ 47 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/WalletBusinessFileController.java

@@ -0,0 +1,47 @@
+package com.sckw.payment.controller;
+
+import com.sckw.core.web.response.BaseResult;
+import com.sckw.payment.service.IWalletBusinessFileService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.Parameters;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ * 钱包_业务文件Controller
+ *
+ * @author tangys
+ * @since  2026-01-12 14:11:22
+ */
+@Tag(name = "业务文件")
+@RestController
+@RequestMapping("/walletBusinessFile")
+public class WalletBusinessFileController  {
+
+    @Autowired
+    private IWalletBusinessFileService walletBusinessFileService;
+
+
+    /**
+     * 查询凭证图片地址接口
+     *
+     */
+    @Operation(summary =  "查询凭证图片地址接口")
+    @Parameters(value = {
+            @Parameter(name = "businessId", description = "业务主键id,如预付明细主键id、待付运费明细主键id",required = true)
+    })
+    @GetMapping("/queryVouchers")
+    public BaseResult<List<String>> queryVouchers(@RequestParam String businessId) {
+        List<String> list =walletBusinessFileService.selectFileByBusinessId(businessId);
+        return BaseResult.success(list);
+    }
+
+
+}

+ 187 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/WalletController.java

@@ -0,0 +1,187 @@
+package com.sckw.payment.controller;
+
+import com.sckw.core.model.enums.EntTypeEnum;
+import com.sckw.core.model.page.PageRes;
+import com.sckw.core.web.constant.HttpStatus;
+import com.sckw.core.web.context.LoginEntHolder;
+import com.sckw.core.web.response.BaseResult;
+import com.sckw.payment.api.model.TradeEntInfoResVo;
+import com.sckw.payment.api.model.dto.common.R;
+import com.sckw.payment.pojo.CashParaPage;
+import com.sckw.payment.pojo.CashVo;
+import com.sckw.payment.pojo.UpdateCash;
+import com.sckw.payment.pojo.dto.CashWalletReq;
+import com.sckw.payment.pojo.vo.WalletCashVo;
+import com.sckw.payment.pojo.vo.WalletVo;
+import com.sckw.payment.pojo.vo.req.CreateUserReq;
+import com.sckw.payment.pojo.vo.req.WalletPayableQuery;
+import com.sckw.payment.pojo.vo.req.WalletPrepaidQuery;
+import com.sckw.payment.pojo.vo.res.WalletPayableSummary;
+import com.sckw.payment.pojo.vo.res.WalletPrepaidSummary;
+import com.sckw.payment.pojo.vo.res.WalletSummary;
+import com.sckw.payment.service.IWalletPayableService;
+import com.sckw.payment.service.IWalletPrepaidService;
+import com.sckw.payment.service.WalletService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.annotation.Resource;
+import jakarta.validation.Valid;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+
+/**
+ * 钱包表Controller
+ *
+ * @author tangys
+ * @since 2026-01-06 11:03:35
+ */
+
+@Tag(name = "钱包管理")
+@RestController
+@RequestMapping("/wallet")
+public class WalletController {
+    @Resource
+    private WalletService walletService;
+
+    @Autowired
+    private IWalletPrepaidService walletPrepaidService;
+
+    @Autowired
+    private IWalletPayableService walletPayableService;
+
+    /**
+     * 【接口】开户
+     *
+     * @param createUserReq 开户请求参数
+     */
+    @Operation(summary = "开户", description = "为用户开通钱包账户")
+    @PostMapping("createUser")
+    public BaseResult<Object> createUser(@RequestBody @Valid CreateUserReq createUserReq) {
+        return BaseResult.success(walletService.createUser(createUserReq));
+    }
+
+    /**
+     * 【接口】钱包信息
+     */
+    @Operation(summary = "查询用户钱包信息", description = "查询用户钱包信息")
+    @GetMapping("/info")
+    public R<WalletVo> userInfo() {
+        return walletService.userInfo();
+    }
+
+    /**
+     * 【接口】可提现余额
+     */
+    @Operation(summary = "可提现余额", description = "可提现余额")
+    @GetMapping("/cashInfo")
+    public R<WalletCashVo> cashInfo() {
+        return walletService.cashInfo();
+    }
+
+    /**
+     * 【接口】更新预付直提开关
+     */
+    @Operation(summary = "更新预付直提开关", description = "更新预付直提开关")
+    @PostMapping("/updateCash")
+    public R<Integer> updateCash(@RequestBody @Valid UpdateCash updateCash) {
+        return R.ok(walletService.updateCash(updateCash));
+    }
+
+    @Operation(summary = "查询交易对方企业列表")
+    @GetMapping("/queryEntList")
+    public BaseResult<List<TradeEntInfoResVo>> queryEntList() {
+        return BaseResult.success(walletService.queryEntList());
+    }
+
+    /**
+     * 【接口】可提现余额分页查询
+     */
+    @Operation(summary = "可提现余额分页查询", description = "可提现余额分页查询")
+    @Parameter(name = "entId", description = "企业id", required = true)
+    @PostMapping("/cashPage")
+    public R<PageRes<CashVo>> cashPage(@RequestBody @Valid CashParaPage cashParaPage) {
+        return R.ok(walletService.cashPage(cashParaPage));
+    }
+
+    /**
+     * 【接口】提现
+     *
+     * @param cashWalletReq 提现参数
+     * @return 操作结果
+     */
+    @Operation(summary = "提现", description = "发起提现操作")
+    @PostMapping("cashOUt")
+    public R<Object> cashOUt(@RequestBody @Valid CashWalletReq cashWalletReq) {
+        return R.ok(walletService.cashOUt(cashWalletReq));
+    }
+    //1、查询钱包信息
+
+    /**
+     * 企业用户钱包查询
+     *
+     * @return
+     */
+//    @GetMapping("/queryWalletInfo")
+//    public BaseResult queryWalletInfo() {
+//        Wallet wallet = walletService.selectWalletByEntId(LoginUserHolder.getEntId());
+//        if (Objects.isNull(wallet)) {
+//            return BaseResult.success("钱包账号不存在");
+//        }
+//        return BaseResult.success(wallet);
+////        BankService bankService = BankServiceUtil.getBankService(properties.getBankCode());
+////        bankService.queryWalletInfo(wallet);
+//    }
+
+
+    //查询钱包可提现、预付余额及运费的汇总接口
+    @Operation(summary = "查询钱包可提现、预付余额及运费的汇总接口")
+    @GetMapping("/querySummary")
+    public BaseResult<WalletSummary> querySummary() {
+        WalletSummary summary = new WalletSummary();
+        String entTypes = LoginEntHolder.get().getEntTypes();
+        WalletPrepaidQuery prepaidQuery = new WalletPrepaidQuery();
+        prepaidQuery.setCurEntId(LoginEntHolder.getEntId());
+        if (entTypes.contains(String.valueOf(EntTypeEnum.SUPPLIER.getCode()))) {
+            prepaidQuery.setEntType(EntTypeEnum.SUPPLIER.getCode());
+        } else if (entTypes.contains(String.valueOf(EntTypeEnum.PURCHASER.getCode()))) {
+            prepaidQuery.setEntType(EntTypeEnum.PURCHASER.getCode());
+        }
+        R<WalletCashVo> walletCashVoR = walletService.cashInfo();
+
+        if (HttpStatus.SUCCESS_CODE == walletCashVoR.getCode()) {
+            WalletCashVo data = walletCashVoR.getData();
+            summary.setAvailableBalance(data.getCashAmount());
+            summary.setId(data.getId());
+            summary.setCashFlag(data.getCashFlag());
+        }
+        WalletPrepaidSummary prepaidSummary = walletPrepaidService.selectWalletPrepaidSummary(prepaidQuery);
+        if (prepaidSummary != null) {
+            summary.setPreBalanceTotal(prepaidSummary.getBalanceTotal());
+            summary.setPreTradingAmountTotal(prepaidSummary.getTradingAmountTotal());
+        }
+
+
+        WalletPayableQuery payableQuery = new WalletPayableQuery();
+        payableQuery.setCurEntId(LoginEntHolder.getEntId());
+        if (EntTypeEnum.consign(entTypes)) {
+            payableQuery.setFreightType(1);
+        } else if (EntTypeEnum.carrier(entTypes)) {
+            payableQuery.setFreightType(2);
+        }
+
+        WalletPayableSummary walletPayableSummary = walletPayableService.selectPayableSummary(payableQuery);
+        if (walletPayableSummary != null) {
+            summary.setFreightTotal(walletPayableSummary.getFreightTotal());
+            summary.setTradingFreightTotal(walletPayableSummary.getTradingFreightTotal());
+            summary.setPayingFreightTotal(walletPayableSummary.getPayingFreightTotal());
+        }
+
+        return BaseResult.success(summary);
+    }
+
+
+}

+ 61 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/WalletPayableBalanceController.java

@@ -0,0 +1,61 @@
+package com.sckw.payment.controller;
+
+import com.github.pagehelper.PageInfo;
+import com.sckw.core.model.enums.EntTypeEnum;
+import com.sckw.core.web.context.LoginEntHolder;
+import com.sckw.core.web.response.BaseResult;
+import com.sckw.core.web.response.result.PageDataResult;
+import com.sckw.payment.pojo.vo.req.WalletPayableBalanceQuery;
+import com.sckw.payment.pojo.vo.res.WalletPayableBalanceRes;
+import com.sckw.payment.service.IWalletPayableBalanceService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Collections;
+
+
+/**
+ * 待付/代收运费余额明细Controller
+ *
+ * @author tangys
+ * @since  2026-01-06 11:03:35
+ */
+@Tag(name  = "待付/代收运费余额明细")
+@RestController
+@RequestMapping("/walletPayableBalance")
+public class WalletPayableBalanceController  {
+
+
+    @Autowired
+    private IWalletPayableBalanceService walletPayableBalanceService;
+
+    /**
+     * 托运企业待付运费余额明细主页面
+     *
+     * @return ModelAndView
+     */
+
+    @Operation(summary =  "分页查询待付/代收运费余额明细列表")
+    @PostMapping("/list")
+    public BaseResult<PageDataResult<WalletPayableBalanceRes>> list(@RequestBody @Validated WalletPayableBalanceQuery query) {
+        PageInfo<WalletPayableBalanceRes> list = new PageInfo<>(Collections.emptyList());
+        String entTypes = LoginEntHolder.get().getEntTypes();
+        if(EntTypeEnum.consign(entTypes)){
+            query.setFreightType(1);
+        } else if (EntTypeEnum.carrier(entTypes)) {
+            query.setFreightType(2);
+        }else {
+            return BaseResult.success(PageDataResult.of(list));
+        }
+        list = walletPayableBalanceService.selectWalletPayableBalanceList(query);
+        return BaseResult.success(PageDataResult.of(list));
+    }
+
+
+}

+ 199 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/WalletPayableController.java

@@ -0,0 +1,199 @@
+package com.sckw.payment.controller;
+
+import com.github.pagehelper.PageInfo;
+import com.sckw.contract.api.RemoteContractService;
+import com.sckw.contract.api.model.dto.req.TradeEntListQueryFeignDto;
+import com.sckw.contract.api.model.dto.res.TradeEntInfoResVo;
+import com.sckw.core.model.enums.EntTypeEnum;
+import com.sckw.core.web.context.LoginEntHolder;
+import com.sckw.core.web.response.BaseResult;
+import com.sckw.core.web.response.result.PageDataResult;
+import com.sckw.payment.pojo.vo.req.*;
+import com.sckw.payment.pojo.vo.res.*;
+import com.sckw.payment.service.IWalletPayableService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.apache.dubbo.config.annotation.DubboReference;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Collections;
+import java.util.List;
+
+
+/**
+ * 待付/代收运费清单Controller
+ *
+ * @author tangys
+ * @since  2026-01-06 11:03:35
+ */
+@Tag(name  = "待付/代收运费清单")
+@RestController
+@RequestMapping("/walletPayable")
+public class WalletPayableController  {
+
+
+    @Autowired
+    private IWalletPayableService walletPayableService;
+    @DubboReference(version = "1.0.0", group = "design", check = false, timeout = 8000)
+    private RemoteContractService remoteContractService;
+
+
+
+    //查询待付或代收运费的汇总接口
+    @Operation(summary =  "查询待付或代收运费的汇总接口")
+    @GetMapping("/queryPayableSummary")
+    public BaseResult<WalletPayableSummary> queryPayableSummary() {
+        WalletPayableSummary summary = new WalletPayableSummary();
+        WalletPayableQuery query = new WalletPayableQuery();
+        query.setCurEntId(LoginEntHolder.getEntId());
+        String entTypes = LoginEntHolder.get().getEntTypes();
+        if(EntTypeEnum.consign(entTypes)){
+            query.setFreightType(1);
+        } else if (EntTypeEnum.carrier(entTypes)) {
+            query.setFreightType(2);
+        }else{
+            return BaseResult.success(summary);
+        }
+        summary = walletPayableService.selectPayableSummary(query);
+        return BaseResult.success(summary);
+    }
+
+    /**
+     * 待付运费清单主页面
+     *
+     * @return ModelAndView
+     */
+
+    @Operation(summary =  "分页查询待付运/代收费清单列表")
+    @PostMapping("/payableList")
+    public BaseResult<PageDataResult<WalletPayableRes>> payableList(@RequestBody @Validated WalletPayableQuery query) {
+        PageInfo<WalletPayableRes> list = new PageInfo<>(Collections.emptyList());
+        String entTypes = LoginEntHolder.get().getEntTypes();
+        if(EntTypeEnum.consign(entTypes)){
+            query.setFreightType(1);
+        } else if (EntTypeEnum.carrier(entTypes)) {
+            query.setFreightType(2);
+        }else {
+            return BaseResult.success(PageDataResult.of(list));
+        }
+        list = walletPayableService.selectWalletPayableList(query);
+        return BaseResult.success(PageDataResult.of(list));
+    }
+
+    /**
+     * 根据当前企业id查询采购合同对方企业id列表
+     */
+    @Operation(summary =  "查询交易对方企业列表")
+    @GetMapping("/queryTradeEntList")
+    public BaseResult<List<TradeEntInfoResVo>> queryTradeEntIds(){
+        TradeEntListQueryFeignDto queryFeignDto = new TradeEntListQueryFeignDto();
+        queryFeignDto.setCurEntId(LoginEntHolder.getEntId());
+        String entTypes = LoginEntHolder.get().getEntTypes();
+        if (entTypes.contains(String.valueOf(EntTypeEnum.SUPPLIER.getCode()))) {
+            queryFeignDto.setTradeEntType(EntTypeEnum.PURCHASER.getCode());
+        } else if (entTypes.contains(String.valueOf(EntTypeEnum.PURCHASER.getCode()))) {
+            queryFeignDto.setTradeEntType(EntTypeEnum.SUPPLIER.getCode());
+        } else {
+            return BaseResult.success(Collections.emptyList());
+        }
+        return remoteContractService.queryPrepaidTradeEntIds(queryFeignDto);
+    }
+
+
+    /**
+     * 人工录入
+     *
+     * @return ModelAndView
+     */
+
+    @Operation(summary =  "人工录入")
+    @PostMapping("/manualEntry")
+    public BaseResult<Object> manualEntry(@RequestBody @Validated WalletPayableManualDto payableManualDto) {
+        String entTypes = LoginEntHolder.get().getEntTypes();
+        if(!entTypes.contains(String.valueOf(EntTypeEnum.LOGISTIC.getCode()))) {
+            return BaseResult.failed("当前用户非物流商,无法进行此操作");
+        }
+        return BaseResult.success(walletPayableService.manualEntry(payableManualDto));
+    }
+
+
+
+    @Operation(summary =  "物流合同创建成功,初始化运费清单")
+    @PostMapping("/initPayable")
+    public BaseResult<Object> initPayable(@RequestBody @Validated WalletPayableDto payableAddDto) {
+        walletPayableService.initPayable(payableAddDto);
+        return BaseResult.success();
+    }
+
+    /**
+     * 运费冻结、解冻、消费类接口
+     * @param payableUpdateDto
+     * @return
+     */
+    @Operation(summary =  "运费冻结、解冻、消费")
+    @PostMapping("/updatePayable")
+    public BaseResult<Object> updatePayable(@RequestBody @Validated WalletPayableDto payableUpdateDto) {
+        walletPayableService.updatePayable(payableUpdateDto);
+        return BaseResult.success();
+    }
+
+    /**
+     * 申请付款
+     *
+     * @return ModelAndView
+     */
+
+
+    @Operation(summary = "申请付款")
+    @PostMapping("/applyPay")
+    public BaseResult<Object> applyPay(@RequestBody @Validated WalletPayableApplyPayDto applyPayDto) {
+        return BaseResult.success(walletPayableService.applyPay(applyPayDto));
+    }
+
+    /**
+     * 查询申请付款记录列表
+     */
+    @Operation(summary = "查询申请付款记录列表")
+    @PostMapping("/applyPayList")
+    public BaseResult<List<WalletPayableApplyRes>> applyPayList(@RequestBody @Validated WalletPayableApplyQuery query) {
+        List<WalletPayableApplyRes> payableApplyRes = walletPayableService.applyPayList(query);
+        return BaseResult.success(payableApplyRes);
+    }
+
+    /**
+     * 运费确认付款
+     *
+     */
+    @Operation(summary = "运费确认付款")
+    @PostMapping("/confirmPay")
+    public BaseResult<WalletPayAddRes> confirmPay(@RequestBody @Validated WalletPayableConfirmPayDto confirmPayDto) {
+        return  walletPayableService.confirmPay(confirmPayDto);
+    }
+
+    @Operation(description = "分页查询运费支付记录列表")
+    @PostMapping("/payList")
+    public BaseResult<PageDataResult<WalletPayablePayRes>> list(@RequestBody @Validated WalletPayablePayQuery query) {
+        PageInfo<WalletPayablePayRes> list = walletPayableService.selectWalletPayablePayList(query);
+        return BaseResult.success(PageDataResult.of(list));
+    }
+
+    @Operation(summary = "付款")
+    @GetMapping("/getPayInfo")
+    public BaseResult<WalletPayAddRes> getPayInfo(@RequestParam("id") Long id) {
+        return walletPayableService.getPayInfo(id);
+    }
+
+    /**
+     * 运费到账回调接口
+     */
+    @Operation(summary = "运费到账回调接口")
+    @PostMapping("/receivedCallback")
+    public BaseResult<Object> receivedCallback(@RequestBody @Validated ReceivedCallbackDto receivedCallbackDto) {
+        walletPayableService.receivedCallback(receivedCallbackDto);
+        return BaseResult.success();
+    }
+
+
+}

+ 58 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/WalletPrepaidBalanceController.java

@@ -0,0 +1,58 @@
+package com.sckw.payment.controller;
+
+import com.github.pagehelper.PageInfo;
+import com.sckw.core.model.enums.EntTypeEnum;
+import com.sckw.core.web.context.LoginEntHolder;
+import com.sckw.core.web.response.BaseResult;
+import com.sckw.core.web.response.result.PageDataResult;
+import com.sckw.payment.pojo.vo.req.WalletPrepaidBalanceQuery;
+import com.sckw.payment.pojo.vo.res.WalletPrepaidBalanceRes;
+import com.sckw.payment.service.IWalletPrepaidBalanceService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Collections;
+
+
+/**
+ * 待履约/预付余额明细Controller
+ *
+ * @author tangys
+ * @since  2026-01-06 11:03:35
+ */
+@Tag(name  = "待履约/预付余额明细")
+@RestController
+@RequestMapping("/walletPrepaidBalance")
+public class WalletPrepaidBalanceController  {
+
+
+    @Autowired
+    private IWalletPrepaidBalanceService walletPrepaidBalanceService;
+
+    /**
+     * 分页查询企业待履约/预付余额明细列表
+     *
+     */
+
+    @Operation(summary =  "分页查询企业待履约/预付余额明细列表")
+    @PostMapping("/prepaidBalanceList")
+    public BaseResult<PageDataResult<WalletPrepaidBalanceRes>> prepaidBalanceList(@RequestBody @Validated WalletPrepaidBalanceQuery query) {
+        PageInfo<WalletPrepaidBalanceRes> list = new PageInfo<>(Collections.emptyList());
+        String entTypes = LoginEntHolder.get().getEntTypes();
+        if(entTypes.contains(String.valueOf(EntTypeEnum.SUPPLIER.getCode()))){
+            query.setEntType(EntTypeEnum.SUPPLIER.getCode());
+        }else if(entTypes.contains(String.valueOf(EntTypeEnum.PURCHASER.getCode()))){
+            query.setEntType(EntTypeEnum.PURCHASER.getCode());
+        }else{
+            return BaseResult.success(PageDataResult.of(list));
+        }
+        list = walletPrepaidBalanceService.selectWalletPrepaidBalanceList(query);
+        return BaseResult.success(PageDataResult.of(list));
+    }
+}

+ 206 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/WalletPrepaidController.java

@@ -0,0 +1,206 @@
+package com.sckw.payment.controller;
+
+import com.github.pagehelper.PageInfo;
+import com.sckw.contract.api.model.dto.res.TradeEntInfoResVo;
+import com.sckw.core.model.enums.EntTypeEnum;
+import com.sckw.core.web.context.LoginEntHolder;
+import com.sckw.core.web.response.BaseResult;
+import com.sckw.core.web.response.result.PageDataResult;
+import com.sckw.payment.entity.WalletPrepaid;
+import com.sckw.payment.pojo.vo.req.*;
+import com.sckw.payment.pojo.vo.res.*;
+import com.sckw.payment.service.IWalletPrepaidService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import java.math.BigDecimal;
+import java.util.Collections;
+import java.util.List;
+
+
+/**
+ * 待履约/预付清单Controller
+ *
+ * @author tangys
+ * @since 2026-01-06 11:03:35
+ */
+@Tag(name = "待履约/预付清单")
+@RestController
+@RequestMapping("/walletPrepaid")
+public class WalletPrepaidController  {
+
+
+    @Autowired
+    private IWalletPrepaidService walletPrepaidService;
+
+    /**
+     * 查询财务报表数据
+     */
+    @Operation(summary = "查询财务报表数据")
+    @PostMapping("/queryFinancialReport")
+    public BaseResult<List<FinancialReportRes>> queryFinancialReport(@RequestBody @Validated WalletPrepaidBalanceQuery query) {
+        List<FinancialReportRes> reportList = walletPrepaidService.queryFinancialReport(query);
+        return BaseResult.success(reportList);
+    }
+
+    /**
+     * 导出财务报表
+     */
+    @Operation(summary = "导出财务报表")
+    @PostMapping("/exportFinancialReport")
+    public void exportFinancialReport(@RequestBody @Validated WalletPrepaidBalanceQuery query, HttpServletResponse response) {
+        walletPrepaidService.exportFinancialReport(query, response);
+    }
+
+    //查询待履约或预付的汇总接口
+    @Operation(summary = "查询待履约或预付的汇总接口")
+    @GetMapping("/queryPrepaidSummary")
+    public BaseResult<WalletPrepaidSummary> queryPrepaidSummary() {
+        WalletPrepaidSummary summary = new WalletPrepaidSummary();
+        String entTypes = LoginEntHolder.get().getEntTypes();
+        WalletPrepaidQuery query = new WalletPrepaidQuery();
+        query.setCurEntId(LoginEntHolder.getEntId());
+        if (entTypes.contains(String.valueOf(EntTypeEnum.SUPPLIER.getCode()))) {
+            query.setEntType(EntTypeEnum.SUPPLIER.getCode());
+        } else if (entTypes.contains(String.valueOf(EntTypeEnum.PURCHASER.getCode()))) {
+            query.setEntType(EntTypeEnum.PURCHASER.getCode());
+        } else {
+            return BaseResult.success(summary);
+        }
+        summary = walletPrepaidService.selectWalletPrepaidSummary(query);
+        return BaseResult.success(summary);
+    }
+
+    /**
+     * 分页查询待履约/预付清单列表
+     */
+
+    @Operation(summary = "分页查询待履约/预付清单列表")
+    @PostMapping("/prepaidList")
+    public BaseResult<PageDataResult<WalletPrepaidRes>> prepaidList(@RequestBody @Validated WalletPrepaidQuery query) {
+        PageInfo<WalletPrepaidRes> list = new PageInfo<>(Collections.emptyList());
+        String entTypes = LoginEntHolder.get().getEntTypes();
+        if (entTypes.contains(String.valueOf(EntTypeEnum.SUPPLIER.getCode()))) {
+            query.setEntType(EntTypeEnum.SUPPLIER.getCode());
+        } else if (entTypes.contains(String.valueOf(EntTypeEnum.PURCHASER.getCode()))) {
+            query.setEntType(EntTypeEnum.PURCHASER.getCode());
+        } else {
+            return BaseResult.success(PageDataResult.of(list));
+        }
+
+        list = walletPrepaidService.selectWalletPrepaidList(query);
+        return BaseResult.success(PageDataResult.of(list));
+    }
+
+    /**
+     * 查询采购企业在对应供应企业的预付余额
+     */
+
+    @Operation(summary = "查询采购企业在对应供应企业的预付余额")
+    @GetMapping("/queryPrepaidBalance")
+    public BaseResult<BigDecimal> queryPrepaidBalance(@RequestParam("supEntId") Long supEntId) {
+        WalletPrepaid prepaid = walletPrepaidService.queryPrepaidBalance(supEntId);
+        BigDecimal preBalance = BigDecimal.ZERO;
+        if (prepaid != null) {
+            preBalance = prepaid.getPreBalance();
+        }
+        return BaseResult.success(preBalance);
+    }
+
+
+    @Operation(summary = "贸易合同创建成功,初始化预付清单")
+    @PostMapping("/initPrepaidBalance")
+    public BaseResult<Object> initPrepaidBalance(@RequestBody @Validated WalletPrepaidDto prepaidDto) {
+        walletPrepaidService.initPrepaidBalance(prepaidDto);
+        return BaseResult.success();
+    }
+
+    /**
+     * 预付清单冻结、解冻、消费接口
+     *
+     * @param prepaidDto
+     * @return
+     */
+    @Operation(summary = "预付清单冻结、解冻、消费接口")
+    @PostMapping("/updatePrepaidBalance")
+    BaseResult<Boolean> updatePrepaidBalance(@RequestBody WalletPrepaidDto prepaidDto) {
+        walletPrepaidService.updatePrepaidBalance(prepaidDto);
+        return BaseResult.success();
+    }
+
+    /**
+     * 根据当前企业id查询采购合同对方企业id列表
+     */
+    @Operation(summary = "查询交易对方企业列表")
+    @GetMapping("/queryTradeEntList")
+    public BaseResult<List<TradeEntInfoResVo>> queryTradeEntIds() {
+        return BaseResult.success(walletPrepaidService.queryPrepaidTradeEntIds());
+    }
+
+    /**
+     * 人工录入
+     *
+     * @return ModelAndView
+     */
+
+    @Operation(summary = "人工录入")
+    @PostMapping("/manualEntry")
+    public BaseResult<Object> manualEntry(@RequestBody @Validated WalletPrepaidManualDto performanceAddDto) {
+        String entTypes = LoginEntHolder.get().getEntTypes();
+        if (!entTypes.contains(String.valueOf(EntTypeEnum.SUPPLIER.getCode()))) {
+            return BaseResult.failed("当前用户非供应商,无法进行此操作");
+        }
+        return BaseResult.success(walletPrepaidService.manualEntry(performanceAddDto));
+    }
+
+    /**
+     * 预付
+     *
+     * @return ModelAndView
+     */
+
+
+    @Operation(summary = "预付")
+    @PostMapping("/prepay")
+    public BaseResult<WalletPayAddRes> prepay(@RequestBody @Validated WalletPrepaidAddDto prepaidAddDto) {
+        return walletPrepaidService.insertWalletPrepaidRecord(prepaidAddDto);
+    }
+
+
+    @Operation(summary = "分页查询预付支付记录列表")
+    @PostMapping("/prepayList")
+    public BaseResult<PageDataResult<WalletPrepaidRecordRes>> list(@RequestBody @Validated WalletPrepaidRecordQuery query) {
+        PageInfo<WalletPrepaidRecordRes> list = walletPrepaidService.selectWalletPrepaidRecordList(query);
+        return BaseResult.success(PageDataResult.of(list));
+    }
+
+    @Operation(summary = "付款")
+    @GetMapping("/getPayInfo")
+    public BaseResult<WalletPayAddRes> getPayInfo(@RequestParam("id") Long id) {
+        return walletPrepaidService.getPayInfo(id);
+    }
+
+    /**
+     * 预付到账回调接口
+     */
+    @Operation(summary = "预付到账回调接口")
+    @PostMapping("/receivedCallback")
+    public BaseResult<Object> receivedCallback(@RequestBody @Validated ReceivedCallbackDto receivedCallbackDto) {
+        walletPrepaidService.receivedCallback(receivedCallbackDto);
+        return BaseResult.success();
+    }
+
+    /**
+     * BI大屏预付余额:系统内所有供应商的待履约金额汇总
+     */
+    @Operation(summary = "BI大屏预付余额")
+    @GetMapping("/queryAllSupplierPrepaidSummary")
+    public BaseResult<BigDecimal> queryAllSupplierPrepaidSummary() {
+        BigDecimal summary = walletPrepaidService.selectAllSupplierPrepaidSummary();
+        return BaseResult.success(summary);
+    }
+}

+ 152 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/KwpWallet.java

@@ -0,0 +1,152 @@
+package com.sckw.payment.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * 钱包表
+ *
+ * @author xucaiqin
+ * @date 2026-03-26 14:33:23
+ */
+@Schema(description = "钱包表")
+@Data
+@TableName(value = "kwp_wallet")
+public class KwpWallet {
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    @Schema(description = "主键")
+    private Long id;
+
+    /**
+     * 企业id
+     */
+    @TableField(value = "ent_id")
+    @Schema(description = "企业id")
+    private Long entId;
+
+    /**
+     * uid
+     */
+    @TableField(value = "`uid`")
+    @Schema(description = "uid")
+    private String uid;
+
+    /**
+     * 企业类型 1供应商,2采购商 3物流
+     */
+    @TableField(value = "ent_type")
+    @Schema(description = "企业类型")
+    private Integer entType;
+
+    /**
+     * 提现金额
+     */
+    @TableField(value = "cash_amount")
+    @Schema(description = "提现金额")
+    private BigDecimal cashAmount;
+
+    /**
+     * 预付余额
+     */
+    @TableField(value = "prepay_amount")
+    @Schema(description = "预付余额")
+    private BigDecimal prepayAmount;
+
+    /**
+     * 交易中金额
+     */
+    @TableField(value = "dealing_amount")
+    @Schema(description = "交易中金额")
+    private BigDecimal dealingAmount;
+
+    /**
+     * 运费金额
+     */
+    @TableField(value = "freight_amount")
+    @Schema(description = "运费金额")
+    private BigDecimal freightAmount;
+
+    /**
+     * 进行中金额
+     */
+    @TableField(value = "processing_amount")
+    @Schema(description = "进行中金额")
+    private BigDecimal processingAmount;
+
+    /**
+     * 付款中金额
+     */
+    @TableField(value = "paying_amount")
+    @Schema(description = "付款中金额")
+    private BigDecimal payingAmount;
+
+    /**
+     * 渠道
+     */
+    @TableField(value = "channel")
+    @Schema(description = "渠道")
+    private String channel;
+
+    /**
+     * 状态 1-开户中 2-开户成功
+     */
+    @TableField(value = "`status`")
+    @Schema(description = "状态 1-开户中 2-开户成功")
+    private Integer status;
+
+    @Schema(description = "预付直提 1-否 2-是")
+    @TableField(value = "cash_flag")
+    private Integer cashFlag;
+
+    /**
+     * 备注
+     */
+    @TableField(value = "remark")
+    @Schema(description = "备注")
+    private String remark;
+
+    /**
+     * 创建人
+     */
+    @TableField(value = "create_by")
+    @Schema(description = "创建人")
+    private Long createBy;
+
+    /**
+     * 创建时间
+     */
+    @TableField(value = "create_time")
+    @Schema(description = "创建时间")
+    private LocalDateTime createTime;
+
+    /**
+     * 更新人
+     */
+    @TableField(value = "update_by")
+    @Schema(description = "更新人")
+    private Long updateBy;
+
+    /**
+     * 更新时间
+     */
+    @TableField(value = "update_time")
+    @Schema(description = "更新时间")
+    private LocalDateTime updateTime;
+
+    /**
+     * 0-正常 1-删除
+     */
+    @TableField(value = "del_flag")
+    @Schema(description = "0-正常 1-删除")
+    private Integer delFlag;
+}

+ 127 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/KwpWalletCash.java

@@ -0,0 +1,127 @@
+package com.sckw.payment.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * 提现记录表
+ *
+ * @author xucaiqin
+ * @date 2026-03-26 14:32:05
+ */
+@Schema(description = "提现记录表")
+@Data
+@TableName(value = "kwp_wallet_cash")
+public class KwpWalletCash {
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    @Schema(description = "主键")
+    private Long id;
+
+    /**
+     * 付款方 对方企业,可空
+     */
+    @TableField(value = "from_ent")
+    @Schema(description = "付款方")
+    private Long fromEnt;
+
+    /**
+     * 收款方 (必填)
+     */
+    @TableField(value = "to_ent")
+    @Schema(description = "收款方")
+    private Long toEnt;
+
+    /**
+     * 订单号
+     */
+    @TableField(value = "order_no")
+    @Schema(description = "订单号")
+    private String orderNo;
+
+    /**
+     * 操作 1-提现 2-预付 3-支付 3-收益
+     */
+    @TableField(value = "`action`")
+    @Schema(description = "操作 1-提现 2-预付 3-支付 3-收益")
+    private Integer action;
+
+    /**
+     * 交易金额
+     */
+    @TableField(value = "amount")
+    @Schema(description = "交易金额")
+    private BigDecimal amount;
+
+    /**
+     * 可提现金额
+     */
+    @TableField(value = "cash_amount")
+    @Schema(description = "可提现金额")
+    private BigDecimal cashAmount;
+
+    /**
+     * 凭证
+     */
+    @TableField(value = "img")
+    @Schema(description = "凭证")
+    private String img;
+
+    /**
+     * 备注
+     */
+    @TableField(value = "remark")
+    @Schema(description = "备注")
+    private String remark;
+
+    /**
+     * 状态 1-成功 2-失败 3-提现中
+     */
+    @TableField(value = "`status`")
+    @Schema(description = "状态")
+    private Integer status;
+
+    /**
+     * 创建人
+     */
+    @TableField(value = "create_by")
+    @Schema(description = "创建人")
+    private Long createBy;
+
+    /**
+     * 创建时间
+     */
+    @TableField(value = "create_time")
+    @Schema(description = "创建时间")
+    private LocalDateTime createTime;
+
+    /**
+     * 更新人
+     */
+    @TableField(value = "update_by")
+    @Schema(description = "更新人")
+    private Long updateBy;
+
+    /**
+     * 更新时间
+     */
+    @TableField(value = "update_time")
+    @Schema(description = "更新时间")
+    private LocalDateTime updateTime;
+
+    /**
+     * 0-正常 1-删除
+     */
+    @TableField(value = "del_flag")
+    @Schema(description = "0-正常 1-删除")
+    private Integer delFlag;
+}

+ 124 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/KwpWalletSplit.java

@@ -0,0 +1,124 @@
+package com.sckw.payment.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * 清分表
+ *
+ * @author xucaiqin
+ * @date 2026-04-08 11:25:38
+ */
+@Data
+@Schema(description = "清分表")
+@TableName(value = "kwp_wallet_split")
+public class KwpWalletSplit {
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    @Schema(description = "主键")
+    private Long id;
+
+    /**
+     * 付款方
+     */
+    @TableField(value = "from_ent")
+    @Schema(description = "付款方")
+    private Long fromEnt;
+
+    /**
+     * 收款方
+     */
+    @TableField(value = "to_ent")
+    @Schema(description = "收款方")
+    private Long toEnt;
+
+    /**
+     * 支付订单号
+     */
+    @TableField(value = "pay_order_no")
+    @Schema(description = "支付订单号")
+    private String payOrderNo;
+
+    /**
+     * 订单号
+     */
+    @TableField(value = "order_no")
+    @Schema(description = "订单号")
+    private String orderNo;
+
+    /**
+     * 操作 1-预付 2-支付
+     */
+    @TableField(value = "`action`")
+    @Schema(description = "操作 1-预付 2-支付")
+    private Integer action;
+
+    /**
+     * 交易金额
+     */
+    @TableField(value = "money")
+    @Schema(description = "交易金额")
+    private BigDecimal money;
+
+    @TableField(value = "img")
+    @Schema(description = "图片")
+    private String img;
+    /**
+     * 备注
+     */
+    @TableField(value = "remark")
+    @Schema(description = "备注")
+    private String remark;
+
+    /**
+     * 状态 1-已提交 2-清分成功 3-清分失败
+     */
+    @TableField(value = "`status`")
+    @Schema(description = "状态 1-已提交 2-清分成功 3-清分失败")
+    private Integer status;
+
+    /**
+     * 创建人
+     */
+    @TableField(value = "create_by")
+    @Schema(description = "创建人")
+    private Long createBy;
+
+    /**
+     * 创建时间
+     */
+    @TableField(value = "create_time")
+    @Schema(description = "创建时间")
+    private LocalDateTime createTime;
+
+    /**
+     * 更新人
+     */
+    @TableField(value = "update_by")
+    @Schema(description = "更新人")
+    private Long updateBy;
+
+    /**
+     * 更新时间
+     */
+    @TableField(value = "update_time")
+    @Schema(description = "更新时间")
+    private LocalDateTime updateTime;
+
+    /**
+     * 0-正常 1-删除
+     */
+    @TableField(value = "del_flag")
+    @Schema(description = "0-正常 1-删除")
+    private Integer delFlag;
+
+}

+ 80 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/Wallet.java

@@ -0,0 +1,80 @@
+package com.sckw.payment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 钱包表(wallet)
+ *
+ * @author tangys
+ * @since  2026-01-06 10:28:02
+ */
+@Data
+public class Wallet {
+
+	/** id */
+    @Schema(description = "id")
+    private Long id;
+	/** 企业用户id */
+    @Schema(description = "企业用户id")
+    private Long entId;
+	/** 流水号 */
+    @Schema(description = "流水号")
+    private String tranNo;
+	/** 开户响应流水号 */
+    @Schema(description = "开户响应流水号")
+    private String openacctNo;
+	/** 新网用户id */
+    @Schema(description = "新网用户id")
+    private String customerNo;
+	/** 认证id */
+    @Schema(description = "认证id")
+    private String authId;
+	/** 结算账户 */
+    @Schema(description = "结算账户")
+    private String settleAcct;
+	/** 余额账户 */
+    @Schema(description = "余额账户")
+    private String balanceAcct;
+	/** 免密账户 */
+    @Schema(description = "免密账户")
+    private String unPwdAcct;
+	/** 企业对公户开户行名 */
+    @Schema(description = "企业对公户开户行名")
+    private String bankName;
+	/** 企业对公户开户行号 */
+    @Schema(description = "企业对公户开户行号")
+    private String bankCode;
+	/** 企业对公账户号 */
+    @Schema(description = "企业对公账户号")
+    private String bankCardNo;
+	/** 中台通知地址 */
+    @Schema(description = "中台通知地址")
+    private String noticeUrl;
+	/** 中台通知状态 1-未通知 2-通知成功 3-通知失败 */
+    @Schema(description = "中台通知状态 1-未通知 2-通知成功 3-通知失败")
+    private Integer noticeFlag;
+	/** 审核状态 1-提交信息 2-小额验证 3-人工审核 4-联系人认证 5-法人认证 6-开户成功 7-开户失败 */
+    @Schema(description = "审核状态 1-提交信息 2-小额验证 3-人工审核 4-联系人认证 5-法人认证 6-开户成功 7-开户失败")
+    private Integer auditFlag;
+	/** 备注 */
+    @Schema(description = "备注")
+    private String remark;
+	/** 结算授权状态 0-待提交 1-提交申请 2-审核通过 3-审核失败 */
+    @Schema(description = "结算授权状态 0-待提交 1-提交申请 2-审核通过 3-审核失败")
+    private Integer settleFlag;
+	/** 创建时间 */
+    @Schema(description = "创建时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+	/** 更新时间 */
+    @Schema(description = "更新时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+	/** 删除标识 0-正常 1-删除 */
+    @Schema(description = "删除标识 0-正常 1-删除")
+    private Integer delFlag;
+}

+ 63 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletAccount.java

@@ -0,0 +1,63 @@
+package com.sckw.payment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 钱包账户表(wallet_account)
+ *
+ * @author tangys
+ * @since  2026-01-06 10:28:02
+ */
+@Data
+public class WalletAccount {
+
+	/** 主键id */
+    @Schema(description = "主键id")
+    private Long id;
+	/** 企业ID,一个企业一个钱包 */
+    @Schema(description = "企业ID,一个企业一个钱包")
+    private Long entId;
+	/** 银行侧提现钱包编号 */
+    @Schema(description = "银行侧提现钱包编号")
+    private String bWithdrawWalletNo;
+	/** 银行侧冻结钱包编号 */
+    @Schema(description = "银行侧冻结钱包编号")
+    private String bFreezeWalletNo;
+	/** 可用余额 */
+    @Schema(description = "可用余额")
+    private BigDecimal availableBalance;
+	/** 冻结余额 */
+    @Schema(description = "冻结余额")
+    private BigDecimal frozenBalance;
+	/** 版本号(用于乐观锁) */
+    @Schema(description = "版本号(用于乐观锁)")
+    private Integer version;
+	/** 钱包状态0-初始化 1-正常 2-冻结 3-注销 */
+    @Schema(description = "钱包状态0-初始化 1-正常 2-冻结 3-注销")
+    private Integer status;
+	/** 备注 */
+    @Schema(description = "备注")
+    private String remark;
+	/** 删除标记(0-未删除,1-已删除) */
+    @Schema(description = "删除标记(0-未删除,1-已删除)")
+    private Integer delFlag;
+	/** 创建人id */
+    @Schema(description = "创建人id")
+    private Long createBy;
+	/** 创建时间 */
+    @Schema(description = "创建时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+	/** 更新人id */
+    @Schema(description = "更新人id")
+    private Long updateBy;
+	/** 更新时间 */
+    @Schema(description = "更新时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+}

+ 87 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletBalance.java

@@ -0,0 +1,87 @@
+package com.sckw.payment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 钱包余额明细表(wallet_balance)
+ *
+ * @author tangys
+ * @since  2026-01-12 16:24:22
+ */
+@Data
+public class WalletBalance {
+
+	/** 明细主键 */
+    @Schema(description = "明细主键")
+    private Long id;
+	/** 关联订单编号 */
+    @Schema(description = "关联订单编号")
+    private String orderNo;
+	/** 关联订单类型 1-充值订单 2-预付订单 3-提现订单 4-贸易订单 5-物流订单 */
+    @Schema(description = "关联订单类型 1-充值订单 2-预付订单 3-提现订单 4-贸易订单 5-物流订单")
+    private Integer orderType;
+	/** 企业id */
+    @Schema(description = "企业id")
+    private Long entId;
+	/** 对方企业id */
+    @Schema(description = "对方企业id")
+    private Long tradeEntId;
+	/** 交易类型 1-充值 2-预付 3-收益 4-冻结 5-解冻 6-消费 7-提现 8-支付 */
+    @Schema(description = "交易类型 1-充值 2-预付 3-收益 4-冻结 5-解冻 6-消费 7-提现 8-支付")
+    private Integer tradeType;
+	/** 交易金额 */
+    @Schema(description = "交易金额")
+    private BigDecimal tradeAmount;
+	/** 银行交易流水号 */
+    @Schema(description = "银行交易流水号")
+    private String bankSerialNo;
+	/** 变动前可用余额 */
+    @Schema(description = "变动前可用余额")
+    private BigDecimal availableBefore;
+	/** 变动后可用余额 */
+    @Schema(description = "变动后可用余额")
+    private BigDecimal availableAfter;
+	/** 变动前冻结余额 */
+    @Schema(description = "变动前冻结余额")
+    private BigDecimal frozenBefore;
+	/** 变动后冻结余额 */
+    @Schema(description = "变动后冻结余额")
+    private BigDecimal frozenAfter;
+	/** 可用预付余额 */
+    @Schema(description = "可用预付余额")
+    private BigDecimal availablePrepaid;
+	/** 对方预付余额 */
+    @Schema(description = "对方预付余额")
+    private BigDecimal counterpartyPrepaid;
+	/** 执行状态 1-进行中 2-成功 3-失败 */
+    @Schema(description = "执行状态 1-进行中 2-成功 3-失败")
+    private Integer status;
+	/** 备注 */
+    @Schema(description = "备注")
+    private String remark;
+	/** 凭证标识 0-无凭证 1-有凭证 */
+    @Schema(description = "凭证标识 0-无凭证 1-有凭证")
+    private Integer voucherFlag;
+	/** 删除标识 0-未删除 1-已删除 */
+    @Schema(description = "删除标识 0-未删除 1-已删除")
+    private Integer delFlag;
+	/** 创建人id */
+    @Schema(description = "创建人id")
+    private Long createBy;
+	/** 创建时间 */
+    @Schema(description = "创建时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+	/** 更新人id */
+    @Schema(description = "更新人id")
+    private Long updateBy;
+	/** 更新时间 */
+    @Schema(description = "更新时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+}

+ 40 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletBankCallback.java

@@ -0,0 +1,40 @@
+package com.sckw.payment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 银行回调日志表(wallet_bank_callback)
+ *
+ * @author tangys
+ * @since  2026-01-06 10:28:02
+ */
+@Data
+public class WalletBankCallback {
+
+	/** 主键ID */
+    @Schema(description = "主键ID")
+    private Long id;
+	/** 关联业务单号 */
+    @Schema(description = "关联业务单号")
+    private String bizNo;
+	/** 回调类型,1-充值 2-提现 */
+    @Schema(description = "回调类型,1-充值 2-提现")
+    private Integer callbackType;
+	/** 银行原始回调内容 */
+    @Schema(description = "银行原始回调内容")
+    private String rawContent;
+	/** 备注 */
+    @Schema(description = "备注")
+    private String remark;
+	/** 处理状态:0-待处理 1-已处理 */
+    @Schema(description = "处理状态:0-待处理 1-已处理")
+    private Integer status;
+	/** 创建时间 */
+    @Schema(description = "创建时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createdAt;
+}

+ 43 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletBankRequest.java

@@ -0,0 +1,43 @@
+package com.sckw.payment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 银行请求响应表(wallet_bank_request)
+ *
+ * @author tangys
+ * @since  2026-01-06 10:28:02
+ */
+@Data
+public class WalletBankRequest {
+
+	/** 主键ID */
+    @Schema(description = "主键ID")
+    private Long id;
+	/** 业务类型 */
+    @Schema(description = "业务类型")
+    private String bizType;
+	/** 关联业务单号 */
+    @Schema(description = "关联业务单号")
+    private String bizNo;
+	/** 银行请求内容 */
+    @Schema(description = "银行请求内容")
+    private String resquestContent;
+	/** 银行响应内容 */
+    @Schema(description = "银行响应内容")
+    private String responseContent;
+	/** 备注 */
+    @Schema(description = "备注")
+    private String remark;
+	/** 处理状态:0-成功 1-失败 */
+    @Schema(description = "处理状态:0-成功 1-失败")
+    private Integer status;
+	/** 创建时间 */
+    @Schema(description = "创建时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createdAt;
+}

+ 50 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletBusinessFile.java

@@ -0,0 +1,50 @@
+package com.sckw.payment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 钱包_业务文件(wallet_business_file)
+ *
+ * @author tangys
+ * @since  2026-01-12 14:11:22
+ */
+@Data
+public class WalletBusinessFile {
+
+	/** 主键 */
+    @Schema(description = "主键")
+    private Long id;
+	/** 业务id */
+    @Schema(description = "业务id")
+    private Long businessId;
+	/** 文件地址 */
+    @Schema(description = "文件地址")
+    private String filePath;
+	/** 备注 */
+    @Schema(description = "备注")
+    private String remark;
+	/** 状态:0正常/1锁定 */
+    @Schema(description = "状态:0正常/1锁定")
+    private Integer status;
+	/** 删除标识(0正常/1删除) */
+    @Schema(description = "删除标识(0正常/1删除)")
+    private Integer delFlag;
+	/** 创建人 */
+    @Schema(description = "创建人")
+    private Long createBy;
+	/** 创建时间 */
+    @Schema(description = "创建时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+	/** 更新人 */
+    @Schema(description = "更新人")
+    private Long updateBy;
+	/** 更新时间 */
+    @Schema(description = "更新时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+}

+ 92 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletEntInfo.java

@@ -0,0 +1,92 @@
+package com.sckw.payment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 开户企业信息表(wallet_ent_info)
+ *
+ * @author tangys
+ * @since  2026-01-07 16:59:01
+ */
+@Data
+public class WalletEntInfo {
+
+	/** id */
+    @Schema(description = "id")
+    private Long id;
+	/** 企业用户id(外键) */
+    @Schema(description = "企业用户id(外键)")
+    private Long entId;
+	/** 企业全称 */
+    @Schema(description = "企业全称")
+    private String fullName;
+	/** 企业注册地址 */
+    @Schema(description = "企业注册地址")
+    private String address;
+	/** 营业执照号 */
+    @Schema(description = "营业执照号")
+    private String licenseCode;
+	/** 依法经营证件起始日期 */
+    @Schema(description = "依法经营证件起始日期")
+    private String licenseStartDate;
+	/** 依法经营证件截止日期 */
+    @Schema(description = "依法经营证件截止日期")
+    private String licenseEndDate;
+	/** 企业实际经营地址 */
+    @Schema(description = "企业实际经营地址")
+    private String realAddress;
+	/** 依法经营证件正本开放平台文件id */
+    @Schema(description = "依法经营证件正本开放平台文件id")
+    private String licenseFileId;
+	/** 依法经营证件副本开放平台文件id */
+    @Schema(description = "依法经营证件副本开放平台文件id")
+    private String licenseFileDuplicateId;
+	/** 企业法人姓名 */
+    @Schema(description = "企业法人姓名")
+    private String legalName;
+	/** 企业法人证件号码 */
+    @Schema(description = "企业法人证件号码")
+    private String legalIdCardNo;
+	/** 企业法人手机号码 */
+    @Schema(description = "企业法人手机号码")
+    private String legalPhone;
+	/** 企业法人证件起始日期 */
+    @Schema(description = "企业法人证件起始日期")
+    private String legalStartDate;
+	/** 企业法人证件结束日期 */
+    @Schema(description = "企业法人证件结束日期")
+    private String legalEndDate;
+	/** 法人证件正面(人像面)开放平台文件id */
+    @Schema(description = "法人证件正面(人像面)开放平台文件id")
+    private String idCardFrontId;
+	/** 法人证件反面(国徽面)开放平台文件id */
+    @Schema(description = "法人证件反面(国徽面)开放平台文件id")
+    private String idCardBackId;
+	/** 联系人姓名 */
+    @Schema(description = "联系人姓名")
+    private String contactName;
+	/** 联系人手机号 */
+    @Schema(description = "联系人手机号")
+    private String contactPhone;
+	/** 联系人证件号码 */
+    @Schema(description = "联系人证件号码")
+    private String contactIdCardNo;
+	/** 联系人证件正面(人像面)开放平台文件id */
+    @Schema(description = "联系人证件正面(人像面)开放平台文件id")
+    private String contactIdCardFrontId;
+	/** 联系人证件反面(国徽面)开放平台文件id */
+    @Schema(description = "联系人证件反面(国徽面)开放平台文件id")
+    private String contactIdCardBackId;
+	/** 创建时间 */
+    @Schema(description = "创建时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+	/** 更新时间 */
+    @Schema(description = "更新时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+}

+ 56 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletEntUser.java

@@ -0,0 +1,56 @@
+package com.sckw.payment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 企业股东或最终收益人(wallet_ent_user)
+ *
+ * @author tangys
+ * @since  2026-01-07 16:59:01
+ */
+@Data
+public class WalletEntUser {
+
+	/** id */
+    @Schema(description = "id")
+    private Long id;
+	/** 企业id */
+    @Schema(description = "企业id")
+    private Long entId;
+	/** 用户类型 1-股东 2-最终受益人 */
+    @Schema(description = "用户类型 1-股东 2-最终受益人")
+    private Integer type;
+	/** 姓名 */
+    @Schema(description = "姓名")
+    private String name;
+	/** 身份证号 */
+    @Schema(description = "身份证号")
+    private String idCardNo;
+	/** 身份证有效期起始日期 */
+    @Schema(description = "身份证有效期起始日期")
+    private String idCardStartDate;
+	/** 身份证有效期截止日期 */
+    @Schema(description = "身份证有效期截止日期")
+    private String idCardEndDate;
+	/** 电话 */
+    @Schema(description = "电话")
+    private String phone;
+	/** 地址 */
+    @Schema(description = "地址")
+    private String address;
+	/** 受益方式 */
+    @Schema(description = "受益方式")
+    private String incomeType;
+	/** 创建时间 */
+    @Schema(description = "创建时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+	/** 更新时间 */
+    @Schema(description = "更新时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+}

+ 63 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletPayable.java

@@ -0,0 +1,63 @@
+package com.sckw.payment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 待付/代收运费清单(wallet_payable)
+ *
+ * @author tangys
+ * @since  2026-01-06 10:28:02
+ */
+@Data
+public class WalletPayable {
+
+	/** 待付/代收运费清单主键id */
+    @Schema(description = "待付/代收运费清单主键id")
+    private Long id;
+	/** 托运企业id */
+    @Schema(description = "托运企业id")
+    private Long consignEntId;
+	/** 承运企业id */
+    @Schema(description = "承运企业id")
+    private Long carrierEntId;
+	/** 待付/代收运费 */
+    @Schema(description = "待付运费")
+    private BigDecimal freight;
+	/** 进行中运费 */
+    @Schema(description = "进行中运费")
+    private BigDecimal tradingFreight;
+	/** 付款中运费 */
+    @Schema(description = "付款中运费")
+    private BigDecimal payingFreight;
+	/** 状态,待定 */
+    @Schema(description = "状态,待定")
+    private Integer status;
+	/** 备注 */
+    @Schema(description = "备注")
+    private String remark;
+	/** 删除标记 0-未删除 1-已删除 */
+    @Schema(description = "删除标记 0-未删除 1-已删除")
+    private Integer delFlag;
+	/** 创建人id */
+    @Schema(description = "创建人id")
+    private Long createBy;
+	/** 创建时间 */
+    @Schema(description = "创建时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+	/** 更新人id */
+    @Schema(description = "更新人id")
+    private Long updateBy;
+	/** 更新时间 */
+    @Schema(description = "更新时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+
+    @Schema(description = "是否存在未完成申请付款记录,1-存在,0-不存在")
+    private Integer existsApply;
+}

+ 60 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletPayableApply.java

@@ -0,0 +1,60 @@
+package com.sckw.payment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 运费付款申请记录(wallet_freight_apply)
+ *
+ * @author tangys
+ * @since  2026-01-19 16:13:22
+ */
+@Data
+public class WalletPayableApply {
+
+	/** 运费付款申请记录主键id */
+    @Schema(description = "运费付款申请记录主键id")
+    private Long id;
+	/** 待付/代收运费清单id */
+    @Schema(description = "待付/代收运费清单id")
+    private Long payableId;
+	/** 申请订单号 */
+    @Schema(description = "申请订单号")
+    private String orderNo;
+	/** 申请金额 */
+    @Schema(description = "申请金额")
+    private BigDecimal applyAmount;
+	/** 支付中金额 */
+    @Schema(description = "支付中金额")
+    private BigDecimal payingAmount;
+    /** 到账金额 */
+    @Schema(description = "到账金额")
+    private BigDecimal receivedAmount;
+	/** 状态,0-未完成,1-已完成 */
+    @Schema(description = "状态,0-未完成,1-已完成")
+    private Integer status;
+	/** 备注 */
+    @Schema(description = "备注")
+    private String remark;
+	/** 删除标记 0-未删除 1-已删除 */
+    @Schema(description = "删除标记 0-未删除 1-已删除")
+    private Integer delFlag;
+	/** 创建人id */
+    @Schema(description = "创建人id")
+    private Long createBy;
+	/** 创建时间 */
+    @Schema(description = "创建时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+	/** 更新人id */
+    @Schema(description = "更新人id")
+    private Long updateBy;
+	/** 更新时间 */
+    @Schema(description = "更新时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+}

+ 75 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletPayableBalance.java

@@ -0,0 +1,75 @@
+package com.sckw.payment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 待付/代收运费余额明细(wallet_payable_balance)
+ *
+ * @author tangys
+ * @since  2026-01-12 16:24:22
+ */
+@Data
+public class WalletPayableBalance {
+
+	/** 待付/代收运费余额明细主键id */
+    @Schema(description = "待付/代收运费余额明细主键id")
+    private Long id;
+	/** 关联订单编号 */
+    @Schema(description = "关联订单编号")
+    private String orderNo;
+	/** 订单类型 5-物流订单号 6-支付订单号 */
+    @Schema(description = "订单类型 5-物流订单号 6-支付订单号")
+    private Integer orderType;
+	/** 托运企业id */
+    @Schema(description = "托运企业id")
+    private Long consignEntId;
+	/** 承运企业id */
+    @Schema(description = "承运企业id")
+    private Long carrierEntId;
+	/** 交易类型 3-收益 4-冻结 5-解冻 6-消费 9-人工录入 10-申请付款 11-付款成功 */
+    @Schema(description = "交易类型 3-收益 4-冻结 5-解冻 6-消费 9-人工录入 10-申请付款 11-付款成功")
+    private Integer tradeType;
+	/** 交易金额 */
+    @Schema(description = "交易金额")
+    private BigDecimal tradeAmount;
+	/** 待付运费 */
+    @Schema(description = "待付/代收运费")
+    private BigDecimal freight;
+	/** 进行中运费 */
+    @Schema(description = "进行中运费")
+    private BigDecimal tradingFreight;
+	/** 付款中运费 */
+    @Schema(description = "付款中运费")
+    private BigDecimal payingFreight;
+	/** 执行状态,1-进行中 2-成功 3-失败 */
+    @Schema(description = "执行状态,1-进行中 2-成功 3-失败")
+    private Integer status;
+	/** 备注 */
+    @Schema(description = "备注")
+    private String remark;
+	/** 凭证标识 0-无凭证 1-有凭证 */
+    @Schema(description = "凭证标识 0-无凭证 1-有凭证")
+    private Integer voucherFlag;
+	/** 删除标记 0-未删除 1-已删除 */
+    @Schema(description = "删除标记 0-未删除 1-已删除")
+    private Integer delFlag;
+	/** 创建人id */
+    @Schema(description = "创建人id")
+    private Long createBy;
+	/** 创建时间 */
+    @Schema(description = "创建时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+	/** 更新人id */
+    @Schema(description = "更新人id")
+    private Long updateBy;
+	/** 更新时间 */
+    @Schema(description = "更新时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+}

+ 62 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletPayablePay.java

@@ -0,0 +1,62 @@
+package com.sckw.payment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 运费支付记录(wallet_freight_record)
+ *
+ * @author tangys
+ * @since  2026-01-15 09:32:47
+ */
+@Data
+public class WalletPayablePay {
+
+	/** 运费支付记录主键id */
+    @Schema(description = "运费支付记录主键id")
+    private Long id;
+	/** 待付运费清单id */
+    @Schema(description = "待付运费清单id")
+    private Long payableId;
+    /** 申请订单号 */
+    @Schema(description = "申请订单号")
+    private String applyOrderNo;
+	/** 支付订单号 */
+    @Schema(description = "支付订单号")
+    private String orderNo;
+	/** 申请金额 */
+    @Schema(description = "申请金额")
+    private BigDecimal applyAmount;
+	/** 到账金额 */
+    @Schema(description = "到账金额")
+    private BigDecimal receivedAmount;
+    private String data;
+
+	/** 支付状态,0-等待支付,1-支付成功 */
+    @Schema(description = "支付状态,0-等待支付,1-支付成功")
+    private Integer status;
+	/** 备注 */
+    @Schema(description = "备注")
+    private String remark;
+	/** 删除标记 0-未删除 1-已删除 */
+    @Schema(description = "删除标记 0-未删除 1-已删除")
+    private Integer delFlag;
+	/** 创建人id */
+    @Schema(description = "创建人id")
+    private Long createBy;
+	/** 创建时间 */
+    @Schema(description = "创建时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+	/** 更新人id */
+    @Schema(description = "更新人id")
+    private Long updateBy;
+	/** 更新时间 */
+    @Schema(description = "更新时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+}

+ 57 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletPrepaid.java

@@ -0,0 +1,57 @@
+package com.sckw.payment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 预付清单(wallet_prepaid)
+ *
+ * @author tangys
+ * @since  2026-01-06 10:28:02
+ */
+@Data
+public class WalletPrepaid {
+
+	/** 预付清单主键id */
+    @Schema(description = "预付清单主键id")
+    private Long id;
+	/** 采购商企业id */
+    @Schema(description = "采购商企业id")
+    private Long proEntId;
+	/** 供应商企业id */
+    @Schema(description = "供应商企业id")
+    private Long supEntId;
+	/** 预付余额 */
+    @Schema(description = "预付余额")
+    private BigDecimal preBalance;
+	/** 交易中金额 */
+    @Schema(description = "交易中金额")
+    private BigDecimal tradingAmount;
+	/** 状态,待定 */
+    @Schema(description = "状态,待定")
+    private Integer status;
+	/** 备注 */
+    @Schema(description = "备注")
+    private String remark;
+	/** 删除标记 0-未删除 1-已删除 */
+    @Schema(description = "删除标记 0-未删除 1-已删除")
+    private Integer delFlag;
+	/** 创建人id */
+    @Schema(description = "创建人id")
+    private Long createBy;
+	/** 创建时间 */
+    @Schema(description = "创建时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+	/** 更新人id */
+    @Schema(description = "更新人id")
+    private Long updateBy;
+	/** 更新时间 */
+    @Schema(description = "更新时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+}

+ 72 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletPrepaidBalance.java

@@ -0,0 +1,72 @@
+package com.sckw.payment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 采购企业预付余额明细(wallet_prepaid_balance)
+ *
+ * @author tangys
+ * @since  2026-01-12 16:24:22
+ */
+@Data
+public class WalletPrepaidBalance {
+
+	/** 预付余额明细主键id */
+    @Schema(description = "预付余额明细主键id")
+    private Long id;
+	/** 关联订单编号 */
+    @Schema(description = "关联订单编号")
+    private String orderNo;
+	/** 订单类型 2-预付订单  4-贸易订单 */
+    @Schema(description = "订单类型 2-预付订单  4-贸易订单")
+    private Integer orderType;
+	/** 采购商企业id */
+    @Schema(description = "采购商企业id")
+    private Long proEntId;
+	/** 供应商企业id */
+    @Schema(description = "供应商企业id")
+    private Long supEntId;
+	/** 交易类型 2-预付 3-收益 4-冻结 5-解冻 6-消费 9-人工录入 */
+    @Schema(description = "交易类型 2-预付 3-收益 4-冻结 5-解冻 6-消费 9-人工录入")
+    private Integer tradeType;
+	/** 交易金额 */
+    @Schema(description = "交易金额")
+    private BigDecimal tradeAmount;
+	/** 预付余额 */
+    @Schema(description = "预付余额")
+    private BigDecimal preBalance;
+	/** 交易中金额 */
+    @Schema(description = "交易中金额")
+    private BigDecimal tradingAmount;
+	/** 执行状态,1-进行中 2-成功 3-失败 */
+    @Schema(description = "执行状态,1-进行中 2-成功 3-失败")
+    private Integer status;
+	/** 备注 */
+    @Schema(description = "备注")
+    private String remark;
+	/** 凭证标识 0-无凭证 1-有凭证 */
+    @Schema(description = "凭证标识 0-无凭证 1-有凭证")
+    private Integer voucherFlag;
+	/** 删除标记 0-未删除 1-已删除 */
+    @Schema(description = "删除标记 0-未删除 1-已删除")
+    private Integer delFlag;
+	/** 创建人id */
+    @Schema(description = "创建人id")
+    private Long createBy;
+	/** 创建时间 */
+    @Schema(description = "创建时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+	/** 更新人id */
+    @Schema(description = "更新人id")
+    private Long updateBy;
+	/** 更新时间 */
+    @Schema(description = "更新时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+}

+ 58 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletPrepaidRecord.java

@@ -0,0 +1,58 @@
+package com.sckw.payment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 预付支付记录(wallet_prepaid_record)
+ *
+ * @author tangys
+ * @since  2026-01-15 09:32:47
+ */
+@Data
+public class WalletPrepaidRecord {
+
+	/** 预付支付记录主键id */
+    @Schema(description = "预付支付记录主键id")
+    private Long id;
+	/** 预付清单id */
+    @Schema(description = "预付清单id")
+    private Long prepaidId;
+	/** 支付订单号 */
+    @Schema(description = "支付订单号")
+    private String orderNo;
+	/** 预付金额 */
+    @Schema(description = "预付金额")
+    private BigDecimal prepaidAmount;
+	/** 到账金额 */
+    @Schema(description = "到账金额")
+    private BigDecimal receivedAmount;
+	/** 支付状态,0-等待支付,1-支付成功 */
+    @Schema(description = "支付状态,0-等待支付,1-支付成功")
+    private Integer status;
+    private String data;
+	/** 备注 */
+    @Schema(description = "备注")
+    private String remark;
+	/** 删除标记 0-未删除 1-已删除 */
+    @Schema(description = "删除标记 0-未删除 1-已删除")
+    private Integer delFlag;
+	/** 创建人id */
+    @Schema(description = "创建人id")
+    private Long createBy;
+	/** 创建时间 */
+    @Schema(description = "创建时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+	/** 更新人id */
+    @Schema(description = "更新人id")
+    private Long updateBy;
+	/** 更新时间 */
+    @Schema(description = "更新时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+}

+ 40 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/entity/WalletRequestLog.java

@@ -0,0 +1,40 @@
+package com.sckw.payment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 钱包接口幂等控制表(wallet_request_log)
+ *
+ * @author tangys
+ * @since  2026-01-06 10:28:02
+ */
+@Data
+public class WalletRequestLog {
+
+	/** 主键ID */
+    @Schema(description = "主键ID")
+    private Long id;
+	/** 幂等请求号 */
+    @Schema(description = "幂等请求号")
+    private String requestId;
+	/** 业务类型 */
+    @Schema(description = "业务类型")
+    private String bizType;
+	/** 业务单号 */
+    @Schema(description = "业务单号")
+    private String bizNo;
+	/** 状态:0-INIT 1-SUCCESS 2-FAIL 3-RETRY */
+    @Schema(description = "状态:0-INIT 1-SUCCESS 2-FAIL 3-RETRY")
+    private Integer status;
+	/** 失败原因 */
+    @Schema(description = "失败原因")
+    private String lastError;
+	/** 创建时间 */
+    @Schema(description = "创建时间")
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date createdAt;
+}

+ 35 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/CashActionEnum.java

@@ -0,0 +1,35 @@
+package com.sckw.payment.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.Objects;
+
+/**
+ *
+ */
+@Getter
+@AllArgsConstructor
+public enum CashActionEnum {
+
+    CASH(1, "提现"),
+    PRE(2, "预付"),
+    PAY(3, "支付"),
+    Profit(4, "收益"),
+    consume(5, "消费"),
+    ;
+
+    private final Integer code;
+    private final String label;
+
+
+    public static String getByCode(Integer code) {
+        for (CashActionEnum value : CashActionEnum.values()) {
+            if (Objects.equals(value.getCode(), code)) {
+                return value.getLabel();
+            }
+        }
+        return "";
+    }
+
+}

+ 32 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/CashStatusEnum.java

@@ -0,0 +1,32 @@
+package com.sckw.payment.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.Objects;
+
+/**
+ *
+ */
+@Getter
+@AllArgsConstructor
+public enum CashStatusEnum {
+
+    SUCCESS(1, "成功"),
+    FAIL(2, "失败"),
+    ;
+
+    private final Integer code;
+    private final String label;
+
+
+    public static String getByCode(Integer code) {
+        for (CashStatusEnum value : CashStatusEnum.values()) {
+            if (Objects.equals(value.getCode(), code)) {
+                return value.getLabel();
+            }
+        }
+        return "";
+    }
+
+}

+ 41 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/ExecutionStatusEnum.java

@@ -0,0 +1,41 @@
+package com.sckw.payment.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * 执行状态枚举
+ */
+@Getter
+@AllArgsConstructor
+public enum ExecutionStatusEnum {
+
+    IN_PROGRESS(1, "进行中"),
+    SUCCESS(2, "成功"),
+    FAILED(3, "失败");
+
+    /**
+     * 状态编码
+     */
+    private final Integer code;
+
+    /**
+     * 状态名称
+     */
+    private final String name;
+
+    /**
+     * 根据编码获取枚举值
+     *
+     * @param code 编码
+     * @return 枚举值
+     */
+    public static String getByCode(Integer code) {
+        for (ExecutionStatusEnum status : values()) {
+            if (status.getCode().equals(code)) {
+                return status.getName();
+            }
+        }
+        return null;
+    }
+}

+ 31 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/FreightActionEnum.java

@@ -0,0 +1,31 @@
+package com.sckw.payment.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.Objects;
+
+/**
+ *
+ */
+@Getter
+@AllArgsConstructor
+public enum FreightActionEnum {
+
+    CASH(1, "提现"),
+    ;
+
+    private final Integer code;
+    private final String label;
+
+
+    public static String getByCode(Integer code) {
+        for (FreightActionEnum value : FreightActionEnum.values()) {
+            if (Objects.equals(value.getCode(), code)) {
+                return value.getLabel();
+            }
+        }
+        return "";
+    }
+
+}

+ 31 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/FreightStatusEnum.java

@@ -0,0 +1,31 @@
+package com.sckw.payment.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.Objects;
+
+/**
+ *
+ */
+@Getter
+@AllArgsConstructor
+public enum FreightStatusEnum {
+
+    CASH(1, "提现"),
+    ;
+
+    private final Integer code;
+    private final String label;
+
+
+    public static String getByCode(Integer code) {
+        for (FreightStatusEnum value : FreightStatusEnum.values()) {
+            if (Objects.equals(value.getCode(), code)) {
+                return value.getLabel();
+            }
+        }
+        return "";
+    }
+
+}

+ 44 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/OrderTypeEnum.java

@@ -0,0 +1,44 @@
+package com.sckw.payment.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * 订单类型枚举
+ */
+@Getter
+@AllArgsConstructor
+public enum OrderTypeEnum {
+
+    RECHARGE_ORDER(1, "充值订单"),
+    PREPAYMENT_ORDER(2, "预付订单"),
+    WITHDRAWAL_ORDER(3, "提现订单"),
+    TRADE_ORDER(4, "贸易订单"),
+    LOGISTICS_ORDER(5, "物流订单"),
+    PAYMENT_ORDER(6, "支付订单");
+
+    /**
+     * 订单类型编码
+     */
+    private final Integer code;
+
+    /**
+     * 订单类型名称
+     */
+    private final String name;
+
+    /**
+     * 根据编码获取枚举值
+     *
+     * @param code 编码
+     * @return 枚举值
+     */
+    public static OrderTypeEnum getByCode(Integer code) {
+        for (OrderTypeEnum orderType : values()) {
+            if (orderType.getCode().equals(code)) {
+                return orderType;
+            }
+        }
+        return null;
+    }
+}

+ 42 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/PayStatusEnum.java

@@ -0,0 +1,42 @@
+package com.sckw.payment.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * 支付状态枚举
+ *
+ * @author tangyishan
+ * @since 2026-01-15  15:19
+ */
+@Getter
+@AllArgsConstructor
+public enum PayStatusEnum {
+    PAYABLE(0, "等待支付"),
+    PAID(1, "支付成功");
+
+    /**
+     * 状态编码
+     */
+    private final Integer code;
+
+    /**
+     * 状态名称
+     */
+    private final String name;
+
+    /**
+     * 根据编码获取枚举值
+     *
+     * @param code 编码
+     * @return 枚举值
+     */
+    public static PayStatusEnum getByCode(Integer code) {
+        for (PayStatusEnum status : values()) {
+            if (status.getCode().equals(code)) {
+                return status;
+            }
+        }
+        return null;
+    }
+}

+ 22 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/PayXwEnum.java

@@ -0,0 +1,22 @@
+package com.sckw.payment.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * @author xucaiqin
+ * @date 2023-07-21 17:53:28
+ */
+@Getter
+@AllArgsConstructor
+public enum PayXwEnum {
+    BEFORE_CREATE("/user/beforeCreate", "获取开户地址"),
+    ACCOUNT("/user/account", "账户信息"),
+    PAY("/prePay/pay", "钱包清单"),
+    SPLIT("/pay/settle", "清分"),
+    WITHDRAW_TAKE("/pay/withdraw", "申请提现"),
+    ;
+    private final String addr;
+    private final String desc;
+
+}

+ 49 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/TransactionTypeEnum.java

@@ -0,0 +1,49 @@
+package com.sckw.payment.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * 交易类型枚举
+ */
+@Getter
+@AllArgsConstructor
+public enum TransactionTypeEnum {
+
+    RECHARGE(1, "充值"),
+    PREPAYMENT(2, "预付"),
+    INCOME(3, "收益"),
+    FREEZE(4, "冻结"),
+    UNFREEZE(5, "解冻"),
+    CONSUME(6, "消费"),
+    WITHDRAWAL(7, "提现"),
+    PAYMENT(8, "支付"),
+    MANUAL_ENTRY(9, "人工录入"),
+    APPLY_FOR_PAYMENT(10, "申请付款"),
+    PAYMENT_SUCCESS(11, "付款成功");
+
+    /**
+     * 交易类型编码
+     */
+    private final Integer code;
+
+    /**
+     * 交易类型名称
+     */
+    private final String name;
+
+    /**
+     * 根据编码获取枚举值
+     *
+     * @param code 编码
+     * @return 枚举值
+     */
+    public static String getByCode(Integer code) {
+        for (TransactionTypeEnum transactionType : values()) {
+            if (transactionType.getCode().equals(code)) {
+                return transactionType.getName();
+            }
+        }
+        return "";
+    }
+}

+ 32 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/enums/WalletStatusEnum.java

@@ -0,0 +1,32 @@
+package com.sckw.payment.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.Objects;
+
+/**
+ *
+ */
+@Getter
+@AllArgsConstructor
+public enum WalletStatusEnum {
+
+    LOAD(1, "开户中"),
+    SUCCESS(2, "开户成功"),
+    ;
+
+    private final Integer code;
+    private final String label;
+
+
+    public static String getByCode(Integer code) {
+        for (WalletStatusEnum value : WalletStatusEnum.values()) {
+            if (Objects.equals(value.getCode(), code)) {
+                return value.getLabel();
+            }
+        }
+        return "";
+    }
+
+}

+ 13 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/KwpWalletCashMapper.java

@@ -0,0 +1,13 @@
+package com.sckw.payment.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.sckw.payment.entity.KwpWalletCash;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @author xucaiqin
+ * @date 2026-03-26 14:32:05
+ */
+@Mapper
+public interface KwpWalletCashMapper extends BaseMapper<KwpWalletCash> {
+}

+ 13 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/KwpWalletMapper.java

@@ -0,0 +1,13 @@
+package com.sckw.payment.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.sckw.payment.entity.KwpWallet;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @author xucaiqin
+ * @date 2026-03-26 14:33:23
+ */
+@Mapper
+public interface KwpWalletMapper extends BaseMapper<KwpWallet> {
+}

+ 13 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/KwpWalletSplitMapper.java

@@ -0,0 +1,13 @@
+package com.sckw.payment.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.sckw.payment.entity.KwpWalletSplit;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+* @date 2026-04-08 11:25:38
+* @author xucaiqin
+*/
+@Mapper
+public interface KwpWalletSplitMapper extends BaseMapper<KwpWalletSplit> {
+}

+ 81 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletAccountMapper.java

@@ -0,0 +1,81 @@
+package com.sckw.payment.mapper;
+
+import com.sckw.payment.entity.WalletAccount;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 钱包账户表Mapper接口
+ *
+ * @author tangys
+ * @since  2026-01-06 10:30:54
+ */
+@Mapper
+public interface WalletAccountMapper {
+    /**
+     * 分页查询钱包账户表列表
+     *
+     * @param walletAccount 钱包账户表
+     * @return 钱包账户表列表
+     */
+    List<WalletAccount> selectWalletAccountList(WalletAccount walletAccount);
+
+    /**
+     * 根据主键ID查询钱包账户表
+     *
+     * @param id 主键id
+     * @return 钱包账户表
+     */
+    WalletAccount selectWalletAccountById(@Param("id") Long id);
+
+    /**
+     * 根据主键ID列表查询钱包账户表列表
+     *
+     * @param idList 主键id列表
+     * @return 列表数据
+     */
+    List<WalletAccount> selectWalletAccountByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 新增钱包账户表
+     *
+     * @param walletAccount 钱包账户表
+     * @return 结果数据
+     */
+    int insertWalletAccount(WalletAccount walletAccount);
+
+    /**
+     * 修改钱包账户表
+     *
+     * @param walletAccount 钱包账户表
+     * @return 结果数据
+     */
+    int updateWalletAccount(WalletAccount walletAccount);
+
+    /**
+     * 删除钱包账户表
+     *
+     * @param id 主键id
+     * @return 结果数据
+     */
+    int deleteWalletAccountById(@Param("id") Long id);
+
+    /**
+     * 批量删除钱包账户表
+     *
+     * @param idList 主键id列表
+     * @return 结果数据
+     */
+    int deleteWalletAccountByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 批量逻辑删除钱包账户表
+     *
+     * @param idList 主键id列表
+     * @param updateBy 登录用户名
+     * @return 结果数据
+     */
+    int deleteWalletAccountLogicByIds(@Param("idList") List<Long> idList, @Param("updateBy") Long updateBy);
+}

+ 81 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletBalanceMapper.java

@@ -0,0 +1,81 @@
+package com.sckw.payment.mapper;
+
+import com.sckw.payment.entity.WalletBalance;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 钱包余额明细表Mapper接口
+ *
+ * @author tangys
+ * @since  2026-01-12 16:24:22
+ */
+@Mapper
+public interface WalletBalanceMapper {
+    /**
+     * 分页查询钱包余额明细表列表
+     *
+     * @param walletBalance 钱包余额明细表
+     * @return 钱包余额明细表列表
+     */
+    List<WalletBalance> selectWalletBalanceList(WalletBalance walletBalance);
+
+    /**
+     * 根据主键ID查询钱包余额明细表
+     *
+     * @param id 明细主键
+     * @return 钱包余额明细表
+     */
+    WalletBalance selectWalletBalanceById(@Param("id") Long id);
+
+    /**
+     * 根据主键ID列表查询钱包余额明细表列表
+     *
+     * @param idList 明细主键列表
+     * @return 列表数据
+     */
+    List<WalletBalance> selectWalletBalanceByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 新增钱包余额明细表
+     *
+     * @param walletBalance 钱包余额明细表
+     * @return 结果数据
+     */
+    int insertWalletBalance(WalletBalance walletBalance);
+
+    /**
+     * 修改钱包余额明细表
+     *
+     * @param walletBalance 钱包余额明细表
+     * @return 结果数据
+     */
+    int updateWalletBalance(WalletBalance walletBalance);
+
+    /**
+     * 删除钱包余额明细表
+     *
+     * @param id 明细主键
+     * @return 结果数据
+     */
+    int deleteWalletBalanceById(@Param("id") Long id);
+
+    /**
+     * 批量删除钱包余额明细表
+     *
+     * @param idList 明细主键列表
+     * @return 结果数据
+     */
+    int deleteWalletBalanceByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 批量逻辑删除钱包余额明细表
+     *
+     * @param idList 明细主键列表
+     * @param loginName 登录用户名
+     * @return 结果数据
+     */
+    int deleteWalletBalanceLogicByIds(@Param("idList") List<Long> idList, @Param("loginName") String loginName);
+}

+ 81 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletBankCallbackMapper.java

@@ -0,0 +1,81 @@
+package com.sckw.payment.mapper;
+
+import com.sckw.payment.entity.WalletBankCallback;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 银行回调日志表Mapper接口
+ *
+ * @author tangys
+ * @since  2026-01-06 10:30:54
+ */
+@Mapper
+public interface WalletBankCallbackMapper {
+    /**
+     * 分页查询银行回调日志表列表
+     *
+     * @param walletBankCallback 银行回调日志表
+     * @return 银行回调日志表列表
+     */
+    List<WalletBankCallback> selectWalletBankCallbackList(WalletBankCallback walletBankCallback);
+
+    /**
+     * 根据主键ID查询银行回调日志表
+     *
+     * @param id 主键ID
+     * @return 银行回调日志表
+     */
+    WalletBankCallback selectWalletBankCallbackById(@Param("id") Long id);
+
+    /**
+     * 根据主键ID列表查询银行回调日志表列表
+     *
+     * @param idList 主键ID列表
+     * @return 列表数据
+     */
+    List<WalletBankCallback> selectWalletBankCallbackByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 新增银行回调日志表
+     *
+     * @param walletBankCallback 银行回调日志表
+     * @return 结果数据
+     */
+    int insertWalletBankCallback(WalletBankCallback walletBankCallback);
+
+    /**
+     * 修改银行回调日志表
+     *
+     * @param walletBankCallback 银行回调日志表
+     * @return 结果数据
+     */
+    int updateWalletBankCallback(WalletBankCallback walletBankCallback);
+
+    /**
+     * 删除银行回调日志表
+     *
+     * @param id 主键ID
+     * @return 结果数据
+     */
+    int deleteWalletBankCallbackById(@Param("id") Long id);
+
+    /**
+     * 批量删除银行回调日志表
+     *
+     * @param idList 主键ID列表
+     * @return 结果数据
+     */
+    int deleteWalletBankCallbackByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 批量逻辑删除银行回调日志表
+     *
+     * @param idList 主键ID列表
+     * @param updateBy 登录用户名
+     * @return 结果数据
+     */
+    int deleteWalletBankCallbackLogicByIds(@Param("idList") List<Long> idList, @Param("updateBy") Long updateBy);
+}

+ 72 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletBankRequestMapper.java

@@ -0,0 +1,72 @@
+package com.sckw.payment.mapper;
+
+import com.sckw.payment.entity.WalletBankRequest;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 银行请求响应表Mapper接口
+ *
+ * @author tangys
+ * @since  2026-01-06 10:30:54
+ */
+@Mapper
+public interface WalletBankRequestMapper {
+    /**
+     * 分页查询银行请求响应表列表
+     *
+     * @param walletBankRequest 银行请求响应表
+     * @return 银行请求响应表列表
+     */
+    List<WalletBankRequest> selectWalletBankRequestList(WalletBankRequest walletBankRequest);
+
+    /**
+     * 根据主键ID查询银行请求响应表
+     *
+     * @param id 主键ID
+     * @return 银行请求响应表
+     */
+    WalletBankRequest selectWalletBankRequestById(@Param("id") Long id);
+
+    /**
+     * 根据主键ID列表查询银行请求响应表列表
+     *
+     * @param idList 主键ID列表
+     * @return 列表数据
+     */
+    List<WalletBankRequest> selectWalletBankRequestByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 新增银行请求响应表
+     *
+     * @param walletBankRequest 银行请求响应表
+     * @return 结果数据
+     */
+    int insertWalletBankRequest(WalletBankRequest walletBankRequest);
+
+    /**
+     * 修改银行请求响应表
+     *
+     * @param walletBankRequest 银行请求响应表
+     * @return 结果数据
+     */
+    int updateWalletBankRequest(WalletBankRequest walletBankRequest);
+
+    /**
+     * 删除银行请求响应表
+     *
+     * @param id 主键ID
+     * @return 结果数据
+     */
+    int deleteWalletBankRequestById(@Param("id") Long id);
+
+    /**
+     * 批量删除银行请求响应表
+     *
+     * @param idList 主键ID列表
+     * @return 结果数据
+     */
+    int deleteWalletBankRequestByIds(@Param("idList") List<Long> idList);
+}

+ 88 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletBusinessFileMapper.java

@@ -0,0 +1,88 @@
+package com.sckw.payment.mapper;
+
+import com.sckw.payment.entity.WalletBusinessFile;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 钱包_业务文件Mapper接口
+ *
+ * @author tangys
+ * @since  2026-01-12 14:11:22
+ */
+@Mapper
+public interface WalletBusinessFileMapper {
+    /**
+     * 分页查询钱包_业务文件列表
+     *
+     * @param walletBusinessFile 钱包_业务文件
+     * @return 钱包_业务文件列表
+     */
+    List<WalletBusinessFile> selectWalletBusinessFileList(WalletBusinessFile walletBusinessFile);
+
+    /**
+     * 根据主键ID查询钱包_业务文件
+     *
+     * @param id 主键
+     * @return 钱包_业务文件
+     */
+    WalletBusinessFile selectWalletBusinessFileById(@Param("id") Long id);
+
+    /**
+     * 根据主键ID列表查询钱包_业务文件列表
+     *
+     * @param idList 主键列表
+     * @return 列表数据
+     */
+    List<WalletBusinessFile> selectWalletBusinessFileByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 新增钱包_业务文件
+     *
+     * @param walletBusinessFile 钱包_业务文件
+     * @return 结果数据
+     */
+    int insertWalletBusinessFile(WalletBusinessFile walletBusinessFile);
+
+    /**
+     * @desc: 批量插入
+     */
+    void insertBatch(@Param(value = "list") List<WalletBusinessFile> list);
+
+    /**
+     * 修改钱包_业务文件
+     *
+     * @param walletBusinessFile 钱包_业务文件
+     * @return 结果数据
+     */
+    int updateWalletBusinessFile(WalletBusinessFile walletBusinessFile);
+
+    /**
+     * 删除钱包_业务文件
+     *
+     * @param id 主键
+     * @return 结果数据
+     */
+    int deleteWalletBusinessFileById(@Param("id") Long id);
+
+    /**
+     * 批量删除钱包_业务文件
+     *
+     * @param idList 主键列表
+     * @return 结果数据
+     */
+    int deleteWalletBusinessFileByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 批量逻辑删除钱包_业务文件
+     *
+     * @param idList 主键列表
+     * @param loginName 登录用户名
+     * @return 结果数据
+     */
+    int deleteWalletBusinessFileLogicByIds(@Param("idList") List<Long> idList, @Param("loginName") String loginName);
+
+    List<String> selectFileByBusinessId(@Param("businessId") String businessId);
+}

+ 81 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletEntInfoMapper.java

@@ -0,0 +1,81 @@
+package com.sckw.payment.mapper;
+
+import com.sckw.payment.entity.WalletEntInfo;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 开户企业信息表Mapper接口
+ *
+ * @author tangys
+ * @since  2026-01-07 16:59:01
+ */
+@Mapper
+public interface WalletEntInfoMapper {
+    /**
+     * 分页查询开户企业信息表列表
+     *
+     * @param walletEntInfo 开户企业信息表
+     * @return 开户企业信息表列表
+     */
+    List<WalletEntInfo> selectWalletEntInfoList(WalletEntInfo walletEntInfo);
+
+    /**
+     * 根据主键ID查询开户企业信息表
+     *
+     * @param id id
+     * @return 开户企业信息表
+     */
+    WalletEntInfo selectWalletEntInfoById(@Param("id") Long id);
+
+    /**
+     * 根据主键ID列表查询开户企业信息表列表
+     *
+     * @param idList id列表
+     * @return 列表数据
+     */
+    List<WalletEntInfo> selectWalletEntInfoByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 新增开户企业信息表
+     *
+     * @param walletEntInfo 开户企业信息表
+     * @return 结果数据
+     */
+    int insertWalletEntInfo(WalletEntInfo walletEntInfo);
+
+    /**
+     * 修改开户企业信息表
+     *
+     * @param walletEntInfo 开户企业信息表
+     * @return 结果数据
+     */
+    int updateWalletEntInfo(WalletEntInfo walletEntInfo);
+
+    /**
+     * 删除开户企业信息表
+     *
+     * @param id id
+     * @return 结果数据
+     */
+    int deleteWalletEntInfoById(@Param("id") Long id);
+
+    /**
+     * 批量删除开户企业信息表
+     *
+     * @param idList id列表
+     * @return 结果数据
+     */
+    int deleteWalletEntInfoByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 批量逻辑删除开户企业信息表
+     *
+     * @param idList id列表
+     * @param loginName 登录用户名
+     * @return 结果数据
+     */
+    int deleteWalletEntInfoLogicByIds(@Param("idList") List<Long> idList, @Param("loginName") String loginName);
+}

+ 85 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletEntUserMapper.java

@@ -0,0 +1,85 @@
+package com.sckw.payment.mapper;
+
+import com.sckw.payment.entity.WalletEntUser;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 企业股东或最终收益人Mapper接口
+ *
+ * @author tangys
+ * @since  2026-01-07 16:59:01
+ */
+@Mapper
+public interface WalletEntUserMapper {
+    /**
+     * 分页查询企业股东或最终收益人列表
+     *
+     * @param walletEntUser 企业股东或最终收益人
+     * @return 企业股东或最终收益人列表
+     */
+    List<WalletEntUser> selectWalletEntUserList(WalletEntUser walletEntUser);
+
+    /**
+     * 根据主键ID查询企业股东或最终收益人
+     *
+     * @param id id
+     * @return 企业股东或最终收益人
+     */
+    WalletEntUser selectWalletEntUserById(@Param("id") Long id);
+
+    /**
+     * 根据主键ID列表查询企业股东或最终收益人列表
+     *
+     * @param idList id列表
+     * @return 列表数据
+     */
+    List<WalletEntUser> selectWalletEntUserByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 新增企业股东或最终收益人
+     *
+     * @param walletEntUser 企业股东或最终收益人
+     * @return 结果数据
+     */
+    int insertWalletEntUser(WalletEntUser walletEntUser);
+
+    int insertBatch(@Param("walletEntUsers") List<WalletEntUser> walletEntUsers);
+
+
+
+    /**
+     * 修改企业股东或最终收益人
+     *
+     * @param walletEntUser 企业股东或最终收益人
+     * @return 结果数据
+     */
+    int updateWalletEntUser(WalletEntUser walletEntUser);
+
+    /**
+     * 删除企业股东或最终收益人
+     *
+     * @param id id
+     * @return 结果数据
+     */
+    int deleteWalletEntUserById(@Param("id") Long id);
+
+    /**
+     * 批量删除企业股东或最终收益人
+     *
+     * @param idList id列表
+     * @return 结果数据
+     */
+    int deleteWalletEntUserByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 批量逻辑删除企业股东或最终收益人
+     *
+     * @param idList id列表
+     * @param loginName 登录用户名
+     * @return 结果数据
+     */
+    int deleteWalletEntUserLogicByIds(@Param("idList") List<Long> idList, @Param("loginName") String loginName);
+}

+ 89 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletMapper.java

@@ -0,0 +1,89 @@
+package com.sckw.payment.mapper;
+
+import com.sckw.payment.entity.Wallet;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 钱包表Mapper接口
+ *
+ * @author tangys
+ * @since  2026-01-06 10:30:54
+ */
+@Mapper
+public interface WalletMapper {
+    /**
+     * 分页查询钱包表列表
+     *
+     * @param wallet 钱包表
+     * @return 钱包表列表
+     */
+    List<Wallet> selectWalletList(Wallet wallet);
+
+    /**
+     * 根据主键ID查询钱包表
+     *
+     * @param id id
+     * @return 钱包表
+     */
+    Wallet selectWalletById(@Param("id") Long id);
+
+    /**
+     * 根据企业ID查询钱包表
+     *
+     * @param entId 企业ID
+     * @return 钱包表
+     */
+    Wallet selectWalletByEntId(@Param("entId") Long entId);
+
+    /**
+     * 根据主键ID列表查询钱包表列表
+     *
+     * @param idList id列表
+     * @return 列表数据
+     */
+    List<Wallet> selectWalletByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 新增钱包表
+     *
+     * @param wallet 钱包表
+     * @return 结果数据
+     */
+    int insertWallet(Wallet wallet);
+
+    /**
+     * 修改钱包表
+     *
+     * @param wallet 钱包表
+     * @return 结果数据
+     */
+    int updateWallet(Wallet wallet);
+
+    /**
+     * 删除钱包表
+     *
+     * @param id id
+     * @return 结果数据
+     */
+    int deleteWalletById(@Param("id") Long id);
+
+    /**
+     * 批量删除钱包表
+     *
+     * @param idList id列表
+     * @return 结果数据
+     */
+    int deleteWalletByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 批量逻辑删除钱包表
+     *
+     * @param idList id列表
+     * @param updateBy 登录用户名
+     * @return 结果数据
+     */
+    int deleteWalletLogicByIds(@Param("idList") List<Long> idList, @Param("updateBy") Long updateBy);
+}

+ 91 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletPayableApplyMapper.java

@@ -0,0 +1,91 @@
+package com.sckw.payment.mapper;
+
+import com.sckw.payment.entity.WalletPayableApply;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 运费申请付款记录Mapper接口
+ *
+ * @author tangys
+ * @since  2026-01-19 16:13:22
+ */
+@Mapper
+public interface WalletPayableApplyMapper {
+    /**
+     * 分页查询运费申请付款记录列表
+     *
+     * @param walletPayableApply 运费申请记录
+     * @return 运费申请记录列表
+     */
+    List<WalletPayableApply> selectWalletPayableApplyList(WalletPayableApply walletPayableApply);
+
+    /**
+     * 根据主键ID查询运费申请记录
+     *
+     * @param id 运费申请记录主键id
+     * @return 运费申请记录
+     */
+    WalletPayableApply selectWalletPayableApplyById(@Param("id") Long id);
+
+    WalletPayableApply selectWalletPayableApplyByOrderNo(@Param("orderNo") String orderNo);
+
+    /**
+     * 根据主键ID列表查询运费申请记录列表
+     *
+     * @param idList 运费申请记录主键id列表
+     * @return 列表数据
+     */
+    List<WalletPayableApply> selectWalletPayableApplyByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 根据运费清单id查询运费申请记录列表
+     *
+     * @param payableId 运费清单id
+     * @return 列表数据
+     */
+    List<WalletPayableApply> selectPayableApplyByPayableId(@Param("payableId") Long payableId);
+
+    /**
+     * 新增运费申请记录
+     *
+     * @param walletPayableApply 运费申请记录
+     * @return 结果数据
+     */
+    int insertWalletPayableApply(WalletPayableApply walletPayableApply);
+
+    /**
+     * 修改运费申请记录
+     *
+     * @param walletPayableApply 运费申请记录
+     * @return 结果数据
+     */
+    int updateWalletPayableApply(WalletPayableApply walletPayableApply);
+
+    /**
+     * 删除运费申请记录
+     *
+     * @param id 运费申请记录主键id
+     * @return 结果数据
+     */
+    int deleteWalletPayableApplyById(@Param("id") Long id);
+
+    /**
+     * 批量删除运费申请记录
+     *
+     * @param idList 运费申请记录主键id列表
+     * @return 结果数据
+     */
+    int deleteWalletPayableApplyByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 批量逻辑删除运费申请记录
+     *
+     * @param idList 运费申请记录主键id列表
+     * @param loginName 登录用户名
+     * @return 结果数据
+     */
+    int deleteWalletPayableApplyLogicByIds(@Param("idList") List<Long> idList, @Param("loginName") String loginName);
+}

+ 84 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletPayableBalanceMapper.java

@@ -0,0 +1,84 @@
+package com.sckw.payment.mapper;
+
+import com.sckw.payment.entity.WalletPayableBalance;
+import com.sckw.payment.pojo.vo.req.WalletPayableBalanceQuery;
+import com.sckw.payment.pojo.vo.req.WalletPayableDto;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 托运企业待付运费余额明细Mapper接口
+ *
+ * @author tangys
+ * @since  2026-01-12 16:24:22
+ */
+@Mapper
+public interface WalletPayableBalanceMapper {
+    /**
+     * 分页查询托运企业待付运费余额明细列表
+     *
+     * @param query 托运企业待付运费余额明细
+     * @return 托运企业待付运费余额明细列表
+     */
+    List<WalletPayableBalance> selectWalletPayableBalanceList(WalletPayableBalanceQuery query);
+
+    WalletPayableBalance selectFreezePayableBalance(WalletPayableDto walletPayableDto);
+    /**
+     * 根据主键ID查询托运企业待付运费余额明细
+     *
+     * @param id 待付运费余额明细主键id
+     * @return 托运企业待付运费余额明细
+     */
+    WalletPayableBalance selectWalletPayableBalanceById(@Param("id") Long id);
+
+    /**
+     * 根据主键ID列表查询托运企业待付运费余额明细列表
+     *
+     * @param idList 待付运费余额明细主键id列表
+     * @return 列表数据
+     */
+    List<WalletPayableBalance> selectWalletPayableBalanceByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 新增托运企业待付运费余额明细
+     *
+     * @param walletPayableBalance 托运企业待付运费余额明细
+     * @return 结果数据
+     */
+    int insertWalletPayableBalance(WalletPayableBalance walletPayableBalance);
+
+    /**
+     * 修改托运企业待付运费余额明细
+     *
+     * @param walletPayableBalance 托运企业待付运费余额明细
+     * @return 结果数据
+     */
+    int updateWalletPayableBalance(WalletPayableBalance walletPayableBalance);
+
+    /**
+     * 删除托运企业待付运费余额明细
+     *
+     * @param id 待付运费余额明细主键id
+     * @return 结果数据
+     */
+    int deleteWalletPayableBalanceById(@Param("id") Long id);
+
+    /**
+     * 批量删除托运企业待付运费余额明细
+     *
+     * @param idList 待付运费余额明细主键id列表
+     * @return 结果数据
+     */
+    int deleteWalletPayableBalanceByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 批量逻辑删除托运企业待付运费余额明细
+     *
+     * @param idList 待付运费余额明细主键id列表
+     * @param loginName 登录用户名
+     * @return 结果数据
+     */
+    int deleteWalletPayableBalanceLogicByIds(@Param("idList") List<Long> idList, @Param("loginName") String loginName);
+}

+ 87 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletPayableMapper.java

@@ -0,0 +1,87 @@
+package com.sckw.payment.mapper;
+
+import com.sckw.payment.entity.WalletPayable;
+import com.sckw.payment.pojo.vo.req.WalletPayableQuery;
+import com.sckw.payment.pojo.vo.res.WalletPayableSummary;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 待付运费清单Mapper接口
+ *
+ * @author tangys
+ * @since  2026-01-06 10:30:54
+ */
+@Mapper
+public interface WalletPayableMapper {
+    /**
+     * 分页查询待付运费清单列表
+     *
+     * @param query 待付运费清单
+     * @return 待付运费清单列表
+     */
+    List<WalletPayable> selectWalletPayableList(WalletPayableQuery query);
+
+    /**
+     * 根据主键ID查询待付运费清单
+     *
+     * @param id 待付运费清单主键id
+     * @return 待付运费清单
+     */
+    WalletPayable selectWalletPayableById(@Param("id") Long id);
+
+    /**
+     * 根据主键ID列表查询待付运费清单列表
+     *
+     * @param idList 待付运费清单主键id列表
+     * @return 列表数据
+     */
+    List<WalletPayable> selectWalletPayableByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 新增待付运费清单
+     *
+     * @param walletPayable 待付运费清单
+     * @return 结果数据
+     */
+    int insertWalletPayable(WalletPayable walletPayable);
+
+    /**
+     * 修改待付运费清单
+     *
+     * @param walletPayable 待付运费清单
+     * @return 结果数据
+     */
+    int updateWalletPayable(WalletPayable walletPayable);
+
+    /**
+     * 删除待付运费清单
+     *
+     * @param id 待付运费清单主键id
+     * @return 结果数据
+     */
+    int deleteWalletPayableById(@Param("id") Long id);
+
+    /**
+     * 批量删除待付运费清单
+     *
+     * @param idList 待付运费清单主键id列表
+     * @return 结果数据
+     */
+    int deleteWalletPayableByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 批量逻辑删除待付运费清单
+     *
+     * @param idList 待付运费清单主键id列表
+     * @param updateBy 登录用户名
+     * @return 结果数据
+     */
+    int deleteWalletPayableLogicByIds(@Param("idList") List<Long> idList, @Param("updateBy") Long updateBy);
+
+    WalletPayable selectByConsignAndCarrier(@Param("consignEntId") Long consignEntId,@Param("carrierEntId") Long carrierEntId);
+
+    WalletPayableSummary selectPayableSummary(WalletPayableQuery query);
+}

+ 87 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletPayablePayMapper.java

@@ -0,0 +1,87 @@
+package com.sckw.payment.mapper;
+
+import com.sckw.payment.entity.WalletPayablePay;
+import com.sckw.payment.pojo.vo.req.WalletPayablePayQuery;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 运费支付记录Mapper接口
+ *
+ * @author tangys
+ * @since  2026-01-15 09:32:47
+ */
+@Mapper
+public interface WalletPayablePayMapper {
+    /**
+     * 分页查询运费支付记录列表
+     *
+     * @param query 运费支付记录
+     * @return 运费支付记录列表
+     */
+    List<WalletPayablePay> selectWalletPayablePayList(WalletPayablePayQuery query);
+
+    /**
+     * 根据主键ID查询运费支付记录
+     *
+     * @param id 运费支付记录主键id
+     * @return 运费支付记录
+     */
+    WalletPayablePay selectWalletPayablePayById(@Param("id") Long id);
+
+    WalletPayablePay selectPayableUnPayById(@Param("id") Long id);
+
+
+    WalletPayablePay selectWalletPayablePayByOrderNo(@Param("orderNo") String orderNo);
+
+    /**
+     * 根据主键ID列表查询运费支付记录列表
+     *
+     * @param idList 运费支付记录主键id列表
+     * @return 列表数据
+     */
+    List<WalletPayablePay> selectWalletPayablePayByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 新增运费支付记录
+     *
+     * @param WalletPayablePay 运费支付记录
+     * @return 结果数据
+     */
+    int insertWalletPayablePay(WalletPayablePay WalletPayablePay);
+
+    /**
+     * 修改运费支付记录
+     *
+     * @param WalletPayablePay 运费支付记录
+     * @return 结果数据
+     */
+    int updateWalletPayablePay(WalletPayablePay WalletPayablePay);
+
+    /**
+     * 删除运费支付记录
+     *
+     * @param id 运费支付记录主键id
+     * @return 结果数据
+     */
+    int deleteWalletPayablePayById(@Param("id") Long id);
+
+    /**
+     * 批量删除运费支付记录
+     *
+     * @param idList 运费支付记录主键id列表
+     * @return 结果数据
+     */
+    int deleteWalletPayablePayByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 批量逻辑删除运费支付记录
+     *
+     * @param idList 运费支付记录主键id列表
+     * @param loginName 登录用户名
+     * @return 结果数据
+     */
+    int deleteWalletPayablePayLogicByIds(@Param("idList") List<Long> idList, @Param("loginName") String loginName);
+}

+ 86 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletPrepaidBalanceMapper.java

@@ -0,0 +1,86 @@
+package com.sckw.payment.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.sckw.payment.entity.WalletPrepaidBalance;
+import com.sckw.payment.pojo.vo.req.WalletPrepaidBalanceQuery;
+import com.sckw.payment.pojo.vo.req.WalletPrepaidDto;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 采购企业预付余额明细Mapper接口
+ *
+ * @author tangys
+ * @since  2026-01-12 16:24:22
+ */
+@Mapper
+public interface WalletPrepaidBalanceMapper extends BaseMapper<WalletPrepaidBalance> {
+    /**
+     * 分页查询采购企业预付余额明细列表
+     *
+     * @param query 采购企业预付余额明细
+     * @return 采购企业预付余额明细列表
+     */
+    List<WalletPrepaidBalance> selectWalletPrepaidBalanceList(WalletPrepaidBalanceQuery query);
+
+    WalletPrepaidBalance selectFreezePrepaidBalance(WalletPrepaidDto prepaidDto);
+
+    /**
+     * 根据主键ID查询采购企业预付余额明细
+     *
+     * @param id 预付余额明细主键id
+     * @return 采购企业预付余额明细
+     */
+    WalletPrepaidBalance selectWalletPrepaidBalanceById(@Param("id") Long id);
+
+    /**
+     * 根据主键ID列表查询采购企业预付余额明细列表
+     *
+     * @param idList 预付余额明细主键id列表
+     * @return 列表数据
+     */
+    List<WalletPrepaidBalance> selectWalletPrepaidBalanceByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 新增采购企业预付余额明细
+     *
+     * @param walletPrepaidBalance 采购企业预付余额明细
+     * @return 结果数据
+     */
+    int insertWalletPrepaidBalance(WalletPrepaidBalance walletPrepaidBalance);
+
+    /**
+     * 修改采购企业预付余额明细
+     *
+     * @param walletPrepaidBalance 采购企业预付余额明细
+     * @return 结果数据
+     */
+    int updateWalletPrepaidBalance(WalletPrepaidBalance walletPrepaidBalance);
+
+    /**
+     * 删除采购企业预付余额明细
+     *
+     * @param id 预付余额明细主键id
+     * @return 结果数据
+     */
+    int deleteWalletPrepaidBalanceById(@Param("id") Long id);
+
+    /**
+     * 批量删除采购企业预付余额明细
+     *
+     * @param idList 预付余额明细主键id列表
+     * @return 结果数据
+     */
+    int deleteWalletPrepaidBalanceByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 批量逻辑删除采购企业预付余额明细
+     *
+     * @param idList 预付余额明细主键id列表
+     * @param updateBy 登录用户名
+     * @return 结果数据
+     */
+    int deleteWalletPrepaidBalanceLogicByIds(@Param("idList") List<Long> idList, @Param("updateBy") Long updateBy);
+}

+ 95 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletPrepaidMapper.java

@@ -0,0 +1,95 @@
+package com.sckw.payment.mapper;
+
+import com.sckw.payment.entity.WalletPrepaid;
+import com.sckw.payment.pojo.vo.req.WalletPrepaidQuery;
+import com.sckw.payment.pojo.vo.res.WalletPrepaidSummary;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * 预付清单Mapper接口
+ *
+ * @author tangys
+ * @since  2026-01-06 10:30:54
+ */
+@Mapper
+public interface WalletPrepaidMapper {
+    /**
+     * 分页查询预付清单列表
+     *
+     * @param query 预付清单
+     * @return 预付清单列表
+     */
+    List<WalletPrepaid> selectWalletPrepaidList(WalletPrepaidQuery query);
+
+    WalletPrepaidSummary selectWalletPrepaidSummary(WalletPrepaidQuery query);
+
+    /**
+     * BI大屏查询所有供应商待履约金额汇总
+     *
+     * @return 待履约金额汇总
+     */
+    BigDecimal selectAllSupplierPrepaidSummary();
+
+    /**
+     * 根据主键ID查询预付清单
+     *
+     * @param id 预付清单主键id
+     * @return 预付清单
+     */
+    WalletPrepaid selectWalletPrepaidById(@Param("id") Long id);
+
+    WalletPrepaid selectByProEntIdAndSupEntId(@Param("proEntId") Long proEntId, @Param("supEntId") Long supEntId);
+
+    /**
+     * 根据主键ID列表查询预付清单列表
+     *
+     * @param idList 预付清单主键id列表
+     * @return 列表数据
+     */
+    List<WalletPrepaid> selectWalletPrepaidByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 新增预付清单
+     *
+     * @param walletPrepaid 预付清单
+     * @return 结果数据
+     */
+    int insertWalletPrepaid(WalletPrepaid walletPrepaid);
+
+    /**
+     * 修改预付清单
+     *
+     * @param walletPrepaid 预付清单
+     * @return 结果数据
+     */
+    int updateWalletPrepaid(WalletPrepaid walletPrepaid);
+
+    /**
+     * 删除预付清单
+     *
+     * @param id 预付清单主键id
+     * @return 结果数据
+     */
+    int deleteWalletPrepaidById(@Param("id") Long id);
+
+    /**
+     * 批量删除预付清单
+     *
+     * @param idList 预付清单主键id列表
+     * @return 结果数据
+     */
+    int deleteWalletPrepaidByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 批量逻辑删除预付清单
+     *
+     * @param idList 预付清单主键id列表
+     * @param updateBy 登录用户名
+     * @return 结果数据
+     */
+    int deleteWalletPrepaidLogicByIds(@Param("idList") List<Long> idList, @Param("updateBy") Long updateBy);
+}

+ 84 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletPrepaidRecordMapper.java

@@ -0,0 +1,84 @@
+package com.sckw.payment.mapper;
+
+import com.sckw.payment.entity.WalletPrepaidRecord;
+import com.sckw.payment.pojo.vo.req.WalletPrepaidRecordQuery;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 预付支付记录Mapper接口
+ *
+ * @author tangys
+ * @since  2026-01-15 09:32:47
+ */
+@Mapper
+public interface WalletPrepaidRecordMapper {
+    /**
+     * 分页查询预付支付记录列表
+     *
+     * @param query 预付支付记录
+     * @return 预付支付记录列表
+     */
+    List<WalletPrepaidRecord> selectWalletPrepaidRecordList(WalletPrepaidRecordQuery query);
+
+    /**
+     * 根据主键ID查询预付支付记录
+     *
+     * @param id 预付支付记录主键id
+     * @return 预付支付记录
+     */
+    WalletPrepaidRecord selectWalletPrepaidRecordById(@Param("id") Long id);
+
+    WalletPrepaidRecord selectWalletPrepaidRecordByOrderNo(@Param("orderNo") String orderNo);
+
+    /**
+     * 根据主键ID列表查询预付支付记录列表
+     *
+     * @param idList 预付支付记录主键id列表
+     * @return 列表数据
+     */
+    List<WalletPrepaidRecord> selectWalletPrepaidRecordByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 新增预付支付记录
+     *
+     * @param walletPrepaidRecord 预付支付记录
+     * @return 结果数据
+     */
+    int insertWalletPrepaidRecord(WalletPrepaidRecord walletPrepaidRecord);
+
+    /**
+     * 修改预付支付记录
+     *
+     * @param walletPrepaidRecord 预付支付记录
+     * @return 结果数据
+     */
+    int updateWalletPrepaidRecord(WalletPrepaidRecord walletPrepaidRecord);
+
+    /**
+     * 删除预付支付记录
+     *
+     * @param id 预付支付记录主键id
+     * @return 结果数据
+     */
+    int deleteWalletPrepaidRecordById(@Param("id") Long id);
+
+    /**
+     * 批量删除预付支付记录
+     *
+     * @param idList 预付支付记录主键id列表
+     * @return 结果数据
+     */
+    int deleteWalletPrepaidRecordByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 批量逻辑删除预付支付记录
+     *
+     * @param idList 预付支付记录主键id列表
+     * @param loginName 登录用户名
+     * @return 结果数据
+     */
+    int deleteWalletPrepaidRecordLogicByIds(@Param("idList") List<Long> idList, @Param("loginName") String loginName);
+}

+ 72 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/mapper/WalletRequestLogMapper.java

@@ -0,0 +1,72 @@
+package com.sckw.payment.mapper;
+
+import com.sckw.payment.entity.WalletRequestLog;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 钱包接口幂等控制表Mapper接口
+ *
+ * @author tangys
+ * @since  2026-01-06 10:30:54
+ */
+@Mapper
+public interface WalletRequestLogMapper {
+    /**
+     * 分页查询钱包接口幂等控制表列表
+     *
+     * @param walletRequestLog 钱包接口幂等控制表
+     * @return 钱包接口幂等控制表列表
+     */
+    List<WalletRequestLog> selectWalletRequestLogList(WalletRequestLog walletRequestLog);
+
+    /**
+     * 根据主键ID查询钱包接口幂等控制表
+     *
+     * @param id 主键ID
+     * @return 钱包接口幂等控制表
+     */
+    WalletRequestLog selectWalletRequestLogById(@Param("id") Long id);
+
+    /**
+     * 根据主键ID列表查询钱包接口幂等控制表列表
+     *
+     * @param idList 主键ID列表
+     * @return 列表数据
+     */
+    List<WalletRequestLog> selectWalletRequestLogByIds(@Param("idList") List<Long> idList);
+
+    /**
+     * 新增钱包接口幂等控制表
+     *
+     * @param walletRequestLog 钱包接口幂等控制表
+     * @return 结果数据
+     */
+    int insertWalletRequestLog(WalletRequestLog walletRequestLog);
+
+    /**
+     * 修改钱包接口幂等控制表
+     *
+     * @param walletRequestLog 钱包接口幂等控制表
+     * @return 结果数据
+     */
+    int updateWalletRequestLog(WalletRequestLog walletRequestLog);
+
+    /**
+     * 删除钱包接口幂等控制表
+     *
+     * @param id 主键ID
+     * @return 结果数据
+     */
+    int deleteWalletRequestLogById(@Param("id") Long id);
+
+    /**
+     * 批量删除钱包接口幂等控制表
+     *
+     * @param idList 主键ID列表
+     * @return 结果数据
+     */
+    int deleteWalletRequestLogByIds(@Param("idList") List<Long> idList);
+}

+ 36 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/CashParaPage.java

@@ -0,0 +1,36 @@
+package com.sckw.payment.pojo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.sckw.core.model.vo.BasePara;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+
+/**
+ * 提现
+ *
+ * @author xucaiqin
+ * @date 2023-08-29 09:14:04
+ */
+@Getter
+@Setter
+public class CashParaPage extends BasePara  {
+    private Long entId;
+
+    private Integer action;
+
+    private String orderNo;
+    private Integer status;
+
+    private BigDecimal startAmount;
+    private BigDecimal endAmount;
+
+
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private String startCreateTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private String endCreateTime;
+
+}

+ 86 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/CashVo.java

@@ -0,0 +1,86 @@
+package com.sckw.payment.pojo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * 提现
+ *
+ * @author xucaiqin
+ * @date 2023-08-29 09:14:04
+ */
+@Getter
+@Setter
+public class CashVo {
+    @JsonFormat(shape = JsonFormat.Shape.STRING)
+    private Long id;
+    /**
+     * 付款方
+     */
+    @Schema(description = "付款方")
+    @JsonFormat(shape = JsonFormat.Shape.STRING)
+    private Long fromEnt;
+    private String fromEntName;
+
+    /**
+     * 收款方
+     */
+    @Schema(description = "收款方")
+    private Long toEnt;
+    private String toEntName;
+
+    /**
+     * 订单号
+     */
+    @Schema(description = "订单号")
+    private String orderNo;
+
+    /**
+     * 操作 1-提现 2-预付 3-支付 4-收益 5-消费
+     */
+    @Schema(description = "操作 1-提现 2-预付 3-支付 4-收益 5-消费")
+    private Integer action;
+    private String actionLabel;
+
+    /**
+     * 交易金额
+     */
+    @Schema(description = "交易金额")
+    private BigDecimal amount;
+
+    /**
+     * 可提现金额
+     */
+    @Schema(description = "可提现金额")
+    private BigDecimal cashAmount;
+
+    /**
+     * 凭证
+     */
+    @Schema(description = "凭证")
+    private String img;
+
+    /**
+     * 备注
+     */
+    @Schema(description = "备注")
+    private String remark;
+
+    /**
+     * 状态 1-成功 2-失败 3-提现中
+     */
+    @Schema(description = "状态 1-成功 2-失败")
+    private Integer status;
+    private String statusLabel;
+    /**
+     * 创建时间
+     */
+    @Schema(description = "创建时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private LocalDateTime createTime;
+}

+ 24 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/UpdateCash.java

@@ -0,0 +1,24 @@
+package com.sckw.payment.pojo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import jakarta.validation.constraints.NotNull;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 提现
+ *
+ * @author xucaiqin
+ * @date 2023-08-29 09:14:04
+ */
+@Getter
+@Setter
+public class UpdateCash {
+    @NotNull(message = "id不能为空")
+    @Schema(description = "id")
+    private Long id;
+
+    @Schema(description = "预付直提 1-否 2-是")
+    @NotNull(message = "预付直提状态不能为空")
+    private Integer cashFlag;
+}

+ 21 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/CashDto.java

@@ -0,0 +1,21 @@
+package com.sckw.payment.pojo.dto;
+
+import com.alibaba.fastjson2.annotation.JSONField;
+import lombok.Getter;
+import lombok.Setter;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.Serializable;
+
+
+@Getter
+@Setter
+public class CashDto implements Serializable {
+
+    private String status;
+    private String remark;
+    private String orderNo;
+    private String amt;
+    @JSONField(serialize = false)
+    private MultipartFile file;
+}

+ 30 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/CashWalletReq.java

@@ -0,0 +1,30 @@
+package com.sckw.payment.pojo.dto;
+
+import jakarta.validation.constraints.Digits;
+import jakarta.validation.constraints.Positive;
+import jakarta.validation.constraints.Size;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+
+/**
+ * 提现
+ *
+ * @author xucaiqin
+ * @date 2023-08-29 09:14:04
+ */
+@Getter
+@Setter
+public class CashWalletReq  {
+
+    @Positive(message = "提现金额必须大于0")
+    @Digits(message = "小数位数过长或金额过大", integer = 10, fraction = 2)
+    private BigDecimal money;
+
+    @Size(message = "备注不能超过200字")
+    private String remark;
+//    @NotBlank(message = "验证码不能为空")
+    private String sms;
+
+}

+ 27 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/CreateUser.java

@@ -0,0 +1,27 @@
+package com.sckw.payment.pojo.dto;
+
+import com.alibaba.fastjson2.annotation.JSONField;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+/**
+ * @author xucaiqin
+ * @date 2023-07-25 15:30:59
+ */
+@Getter
+@Setter
+public class CreateUser implements Serializable {
+    @Serial
+    private static final long serialVersionUID = -3148504181066374194L;
+    @JSONField(name = "user_id")
+    private String user_id;
+
+    @JSONField(name = "end_time")
+    private String end_time;
+
+    @JSONField(name = "url")
+    private String url;
+}

+ 32 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/CustomSettleDto.java

@@ -0,0 +1,32 @@
+package com.sckw.payment.pojo.dto;
+
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotEmpty;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+
+/**
+ * @author xucaiqin
+ * @date 2024-01-11 11:35:33
+ */
+@Getter
+@Setter
+public class CustomSettleDto {
+    @NotBlank(message = "uid不能为空")
+    private String uid;
+    //总金额,单位元;包含:商户结算资金和商户手续费DECIMAL{17,2}
+    @NotBlank(message = "总金额不能为空")
+    private String amt;
+    private String mchtFee;
+    @NotBlank(message = "中台回调通知地址不能为空")
+    private String noticeUrl;
+    private String summery;
+    private String remark;
+    @NotEmpty(message = "清分数组不能为空")
+    @Valid
+    private List<DivideDto> divide;
+}

+ 22 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/CustomSettleRes.java

@@ -0,0 +1,22 @@
+package com.sckw.payment.pojo.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @author xucaiqin
+ * @date 2024-01-11 10:45:17
+ */
+@Getter
+@Setter
+public class CustomSettleRes implements Serializable {
+    private String returnCode;
+    private String returnMessage;
+    private String dealResult;
+    private String tranNo;
+    private String txnNo;
+    private List<DivideInfoDto> divideInfo;
+}

+ 18 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/DivideDto.java

@@ -0,0 +1,18 @@
+package com.sckw.payment.pojo.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author xucaiqin
+ * @date 2024-01-15 17:19:12
+ */
+@Getter
+@Setter
+public class DivideDto {
+    //分账金额
+    //交易金额 必须满足:分账金额总和 = 总金额 - 商户结算手续费;币种保持一致
+    private String amt;
+    //收款方
+    private String filter;
+}

+ 14 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/DivideInfoDto.java

@@ -0,0 +1,14 @@
+package com.sckw.payment.pojo.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author xucaiqin
+ * @date 2024-01-15 17:19:12
+ */
+@Getter
+@Setter
+public class DivideInfoDto extends DivideDto {
+    private String txnNo;
+}

+ 41 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/PayDto.java

@@ -0,0 +1,41 @@
+package com.sckw.payment.pojo.dto;
+
+import jakarta.validation.constraints.NotBlank;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+
+@Getter
+@Setter
+public class PayDto implements Serializable {
+    /**
+     * 付款方uid
+     */
+    @NotBlank(message = "付款方uid不能为空")
+    private String uid;
+
+    @NotBlank(message = "收款方filter不能为空")
+    private String filter;
+    /**
+     * 中台订单号
+     */
+    @NotBlank(message = "订单号不能为空")
+    private String orderNo;
+    /**
+     * 订单金额
+     */
+    @NotBlank(message = "订单金额不能为空")
+    private String amt;
+
+    /**
+     * 中台回调通知地址
+     */
+    private String noticeUrl;
+
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 16 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/Res.java

@@ -0,0 +1,16 @@
+package com.sckw.payment.pojo.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author xucaiqin
+ * @date 2024-01-11 10:45:17
+ */
+@Getter
+@Setter
+public class Res {
+    private String returnCode;
+    private String returnMessage;
+    private String dealResult;
+}

+ 21 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/SplitDto.java

@@ -0,0 +1,21 @@
+package com.sckw.payment.pojo.dto;
+
+import com.alibaba.fastjson2.annotation.JSONField;
+import lombok.Getter;
+import lombok.Setter;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.Serializable;
+
+
+@Getter
+@Setter
+public class SplitDto implements Serializable {
+    private String status;
+    private String msg;
+    private String tranNo;
+    private String txnNo;
+    private String amt;
+    @JSONField(serialize = false)
+    private MultipartFile file;
+}

+ 15 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/UserDataDto.java

@@ -0,0 +1,15 @@
+package com.sckw.payment.pojo.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+
+@Getter
+@Setter
+public class UserDataDto implements Serializable {
+
+    private String uid;
+    private String xwId;
+}

+ 100 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/UserDetailDto.java

@@ -0,0 +1,100 @@
+package com.sckw.payment.pojo.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author xucaiqin
+ * @date 2023-12-29 17:18:42
+ */
+@Getter
+@Setter
+public class UserDetailDto {
+    /**
+     * id
+     */
+    private Long id;
+
+    /**
+     * 中台用户id
+     */
+    private String uid;
+
+    /**
+     * 流水号
+     */
+    private String tranNo;
+
+    /**
+     * 开户响应流水号
+     */
+    private String openacctNo;
+
+    /**
+     * 新网用户id
+     */
+    private String customerNo;
+
+    /**
+     * 认证id
+     */
+    private String authId;
+
+    /**
+     * 结算账户
+     */
+    private String settleAcct;
+
+    /**
+     * 余额账户
+     */
+    private String balanceAcct;
+
+    /**
+     * 免密账户
+     */
+    private String unPwdAcct;
+
+    /**
+     * 企业对公户开户行名
+     */
+    private String bankName;
+
+    /**
+     * 企业对公户开户行号
+     */
+    private String bankCode;
+
+    /**
+     * 企业对公账户号
+     */
+    private String bankCardNo;
+
+    /**
+     * 中台通知地址
+     */
+    private String noticeUrl;
+
+    /**
+     * 中台通知状态 1-未通知 2-通知成功 3-通知失败
+     */
+    private Integer noticeFlag;
+
+    /**
+     * 审核状态 1-提交信息 2-小额验证 3-人工审核 4-联系人认证 5-法人认证 6-开户成功 7-开户失败
+     */
+    private Integer auditFlag;
+
+    /**
+     * 结算授权状态 0-待提交 1-提交申请 2-审核通过 3-审核失败
+     */
+    private Integer settleFlag;
+
+
+    //userinfo表字段
+    private String contactPhone;
+    private String legalPhone;
+    private String fullName;
+
+
+}

+ 16 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/UserDto.java

@@ -0,0 +1,16 @@
+package com.sckw.payment.pojo.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+
+@Getter
+@Setter
+public class UserDto implements Serializable {
+
+    private String status;
+    private String msg;
+    private UserDataDto data;
+}

+ 27 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/UserInfo.java

@@ -0,0 +1,27 @@
+package com.sckw.payment.pojo.dto;
+
+
+import jakarta.validation.constraints.NotBlank;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+/**
+ * @Author xucaiqin
+ * @date 2023-03-30 19:19:43
+ */
+@Getter
+@Setter
+@AllArgsConstructor
+@NoArgsConstructor
+public class UserInfo implements Serializable {
+    @Serial
+    private static final long serialVersionUID = 3652670959771172362L;
+    @NotBlank(message = "uid不能为空")
+    private String uid;
+
+}

+ 47 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/UserPara.java

@@ -0,0 +1,47 @@
+package com.sckw.payment.pojo.dto;
+
+
+import jakarta.validation.constraints.NotBlank;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+/**
+ * @Author xucaiqin
+ * @date 2023-03-30 19:19:43
+ */
+@Getter
+@Setter
+public class UserPara implements Serializable {
+    @Serial
+    private static final long serialVersionUID = 3652670959771172362L;
+    @NotBlank(message = "uid不能为空")
+    private String uid;
+    //公司名称
+    private String companyName;
+    //法人
+    private String legalName;
+    //法人手机号
+    private String legalPhone;
+    //联系人手机号
+    private String contactPhone;
+    //法人身份证
+    private String legalIds;
+    //营业执照
+    private String license;
+
+    private String noticeUrl;
+    //客户号,仅做展示使用,无其它用途
+    private String customerNo;
+
+    /**
+     * 审核状态 0-待提交 1-提交信息 2-小额验证 3-人工审核 4-联系人认证 5-法人认证 6-开户成功 7-开户失败
+     */
+    private Integer auditFlag = 0;
+    /**
+     * 结算授权状态 0-待提交 1-提交申请 2-审核通过 3-审核失败
+     */
+    private Integer settleFlag = 0;
+}

+ 39 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/WithdrawDto.java

@@ -0,0 +1,39 @@
+package com.sckw.payment.pojo.dto;
+
+import jakarta.validation.constraints.NotBlank;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ * @author lfdc
+ * @description 提现dto
+ * @date 2024-01-22 15:01:03
+ */
+@Getter
+@Setter
+public class WithdrawDto implements Serializable {
+    @NotBlank(message = "uid不能为空")
+    private String uid;
+
+    @NotBlank(message = "订单号不能为空")
+    private String orderNo;
+
+    @NotBlank(message = "提现金额不能为空")
+    private String amt;
+    /**
+     * 异步通知地址
+     */
+    @NotBlank(message = "异步通知地址不能为空")
+    private String noticeUrl;
+    /**
+     * 摘要
+     */
+    private String summary;
+    private String remark;
+    /**
+     * 平台收取佣金费用 非必填
+     */
+    private String commission;
+}

+ 15 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/dto/WithdrawRes.java

@@ -0,0 +1,15 @@
+package com.sckw.payment.pojo.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author xucaiqin
+ * @date 2024-01-11 10:45:17
+ */
+@Getter
+@Setter
+public class WithdrawRes extends Res {
+    private String tranNo;
+    private String txnNo;
+}

+ 20 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/PayRes.java

@@ -0,0 +1,20 @@
+package com.sckw.payment.pojo.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ * @Author xucaiqin
+ * @date 2023-03-28 10:26:17
+ */
+@Getter
+@Setter
+public class PayRes implements Serializable {
+    private String orderNo;
+    private String amt;
+    private String remark;
+    private String fullName;
+    private String settleAcct;
+}

+ 71 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/WalletCashVo.java

@@ -0,0 +1,71 @@
+package com.sckw.payment.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * 钱包信息
+ *
+ * @author xucaiqin
+ * @date 2023-08-28 15:43:49
+ */
+@Data
+@Schema(description = "可提现余额")
+public class WalletCashVo {
+    /**
+     * 主键
+     */
+    @Schema(description = "主键")
+    @JsonFormat(shape = JsonFormat.Shape.STRING)
+    private Long id;
+
+    /**
+     * 企业id
+     */
+    @TableField(value = "ent_id")
+    @Schema(description = "企业id")
+    private Long entId;
+
+    /**
+     * uid
+     */
+    @TableField(value = "`uid`")
+    @Schema(description = "uid")
+    private String uid;
+
+    /**
+     * 企业类型
+     */
+    @TableField(value = "ent_type")
+    @Schema(description = "企业类型")
+    private Integer entType;
+
+    @Schema(description = "预付直提 1-否 2-是")
+    private Integer cashFlag;
+    /**
+     * 提现金额
+     */
+    @TableField(value = "cash_amount")
+    @Schema(description = "提现金额")
+    private BigDecimal cashAmount;
+
+    /**
+     * 预付余额
+     */
+    @TableField(value = "prepay_amount")
+    @Schema(description = "预付余额")
+    private BigDecimal prepayAmount;
+
+    /**
+     * 状态 1-开户中 2-开户成功
+     */
+    @Schema(description = "状态")
+    private Integer status;
+    @Schema(description = "状态 1-开户中 2-开户成功")
+    private String statusLabel;
+
+}

+ 142 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/WalletVo.java

@@ -0,0 +1,142 @@
+package com.sckw.payment.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * 钱包信息
+ *
+ * @author xucaiqin
+ * @date 2023-08-28 15:43:49
+ */
+@Data
+@Schema(description = "钱包")
+public class WalletVo {
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    @Schema(description = "主键")
+    @JsonFormat(shape = JsonFormat.Shape.STRING)
+    private Long id;
+
+    /**
+     * 企业id
+     */
+    @TableField(value = "ent_id")
+    @Schema(description = "企业id")
+    @JsonFormat(shape = JsonFormat.Shape.STRING)
+    private Long entId;
+
+    /**
+     * uid
+     */
+    @TableField(value = "`uid`")
+    @Schema(description = "uid")
+    private String uid;
+
+    /**
+     * 企业类型
+     */
+    @TableField(value = "ent_type")
+    @Schema(description = "企业类型")
+    private Integer entType;
+
+    /**
+     * 提现金额
+     */
+    @TableField(value = "cash_amount")
+    @Schema(description = "提现金额")
+    private BigDecimal cashAmount;
+
+    /**
+     * 预付余额
+     */
+    @TableField(value = "prepay_amount")
+    @Schema(description = "预付余额")
+    private BigDecimal prepayAmount;
+
+    /**
+     * 交易中金额
+     */
+    @TableField(value = "dealing_amount")
+    @Schema(description = "交易中金额")
+    private BigDecimal dealingAmount;
+
+    /**
+     * 运费金额
+     */
+    @TableField(value = "freight_amount")
+    @Schema(description = "运费金额")
+    private BigDecimal freightAmount;
+
+    /**
+     * 进行中金额
+     */
+    @Schema(description = "进行中金额")
+    private BigDecimal processingAmount;
+
+    /**
+     * 付款中金额
+     */
+    @Schema(description = "付款中金额")
+    private BigDecimal payingAmount;
+
+    /**
+     * 渠道
+     */
+    @Schema(description = "渠道")
+    private String channel;
+
+    @Schema(description = "预付直提 1-否 2-是")
+    private Integer cashFlag;
+
+    /**
+     * 状态 1-开户中 2-开户成功
+     */
+    @Schema(description = "状态")
+    private Integer status;
+    @Schema(description = "状态 1-开户中 2-开户成功")
+    private String statusLabel;
+
+    /**
+     * 备注
+     */
+    @TableField(value = "remark")
+    @Schema(description = "备注")
+    private String remark;
+
+    /**
+     * 创建人
+     */
+    @TableField(value = "create_by")
+    @Schema(description = "创建人")
+    private Long createBy;
+
+    /**
+     * 创建时间
+     */
+    @TableField(value = "create_time")
+    @Schema(description = "创建时间")
+    private LocalDateTime createTime;
+
+    /**
+     * 更新人
+     */
+    @Schema(description = "更新人")
+    private Long updateBy;
+
+    /**
+     * 更新时间
+     */
+    @Schema(description = "更新时间")
+    private LocalDateTime updateTime;
+
+}

+ 19 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/req/CreateUserReq.java

@@ -0,0 +1,19 @@
+package com.sckw.payment.pojo.vo.req;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import jakarta.validation.constraints.NotNull;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author xucaiqin
+ * @date 2023-09-18 16:19:31
+ */
+@Getter
+@Setter
+@Schema(description = "开户参数")
+public class CreateUserReq {
+    @NotNull(message = "企业id不能为空")
+    @Schema(description = "企业id")
+    private Long entId;
+}

+ 30 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/req/ReceivedCallbackDto.java

@@ -0,0 +1,30 @@
+package com.sckw.payment.pojo.vo.req;
+
+import com.alibaba.fastjson2.annotation.JSONField;
+import lombok.Data;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.math.BigDecimal;
+
+/**
+ * 网银支付回调参数
+ *
+ * @author tangyishan
+ * @since 2026-01-28  15:18
+ */
+@Data
+public class ReceivedCallbackDto {
+    private String status;
+    private String msg;
+    private String customerNo;
+
+
+    private String tranNo;
+    private String uid;
+    private String filter;
+    private String orderNo;
+    private String payOrderNo;
+    private BigDecimal tranAmt;
+    @JSONField(serialize = false)
+    private MultipartFile file;
+}

+ 26 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/req/WalletAccountInfoQuery.java

@@ -0,0 +1,26 @@
+package com.sckw.payment.pojo.vo.req;
+
+import jakarta.validation.constraints.NotBlank;
+import lombok.Data;
+
+/**
+ * @author tangyishan
+ * @since 2026-01-05  16:05
+ *  TODO
+ */
+@Data
+public class WalletAccountInfoQuery {
+    /**
+     * 企业开户接口返回的编号 优先级高于origTranNo
+     */
+    private String openacctNo;
+    /**
+     * 企业开户接口入参中的流水号 tran_no字段,目前对应为企业开户接口入参的orderNo字段
+     */
+    private String origTranNo;
+    /**
+     * 中信企业用户唯一id
+     */
+    @NotBlank(message = "客户编号不能为空")
+    private String customerNo;
+}

+ 26 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/req/WalletPayableApplyPayDto.java

@@ -0,0 +1,26 @@
+package com.sckw.payment.pojo.vo.req;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import jakarta.validation.constraints.NotNull;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * 运费申请付款参数
+ *
+ * @author tangyishan
+ * @since 2026-01-20  11:12
+ */
+@Data
+public class WalletPayableApplyPayDto {
+    /** 待付代收运费清单id */
+    @NotNull(message = "待付代收运费清单id不能为空")
+    private Long payableId;
+    /** 申请金额 */
+    @NotNull(message = "申请金额不能为空")
+    private BigDecimal applyAmount;
+    /** 备注 */
+    @Schema(description = "备注")
+    private String remark;
+}

+ 19 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/req/WalletPayableApplyQuery.java

@@ -0,0 +1,19 @@
+package com.sckw.payment.pojo.vo.req;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import jakarta.validation.constraints.NotNull;
+import lombok.Data;
+
+/**
+ * 运费申请付款记录查询参数
+ *
+ * @author tangyishan
+ * @since 2026-01-22  10:14
+ */
+@Data
+public class WalletPayableApplyQuery {
+    /** 待付/代收清单id */
+    @NotNull(message = "待付/代收清单id不能为空")
+    @Schema(description = "待付/代收清单id")
+    private Long payableId;
+}

+ 49 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/req/WalletPayableBalanceQuery.java

@@ -0,0 +1,49 @@
+package com.sckw.payment.pojo.vo.req;
+
+import com.sckw.core.web.page.BaseQuery;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+
+/**
+ *
+ * 待付/代收运费余额明细查询参数
+ *
+ * @author tangyishan
+ * @since 2026-01-16  14:12
+ */
+@Data
+public class WalletPayableBalanceQuery extends BaseQuery {
+    /** 关联订单编号 */
+    @Schema(description = "关联订单编号")
+    private String orderNo;
+    /** 对方企业id */
+    @Schema(description = "对方企业id")
+    private Long tradeEntId;
+    /** 交易类型 3-收益 4-冻结 5-解冻 6-消费 9-人工录入 10-申请付款 11-付款成功 */
+    @Schema(description = "交易类型 3-收益 4-冻结 5-解冻 6-消费 9-人工录入 10-申请付款 11-付款成功")
+    private Integer tradeType;
+    /** 交易金额最小值 */
+    @Schema(description = "交易金额最小值")
+    private BigDecimal tradeAmountMin;
+    /** 交易金额最大值 */
+    @Schema(description = "交易金额最大值")
+    private BigDecimal tradeAmountMax;
+    /** 执行状态,1-进行中 2-成功 3-失败 */
+    @Schema(description = "执行状态,1-进行中 2-成功 3-失败")
+    private Integer status;
+    /** 开始时间 */
+    @Schema(description = "查询开始时间,yyyy-MM-dd HH:mm:ss")
+    private String startTime; // 开始时间
+    /** 结束时间 */
+    @Schema(description = "查询结束时间,yyyy-MM-dd HH:mm:ss")
+    private String endTime; // 结束时间
+    /** 当前企业id */
+    @Schema(hidden = true)
+    private Long curEntId;
+    /** 运费类型 1待付运费 2代收运费 */
+    @Schema(hidden = true)
+    private Integer freightType;
+}

+ 24 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/pojo/vo/req/WalletPayableConfirmPayDto.java

@@ -0,0 +1,24 @@
+package com.sckw.payment.pojo.vo.req;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotNull;
+import lombok.Data;
+
+/**
+ * 运费付款确认
+ *
+ * @author tangyishan
+ * @since 2026-01-23  11:35
+ */
+@Data
+public class WalletPayableConfirmPayDto {
+    /** 待付/代收运费清单id */
+    @NotNull(message = "待付/代收运费清单id不能为空")
+    @Schema(description = "待付/代收运费清单id")
+    private Long payableId;
+    /** 申请付款记录订单号 */
+    @NotBlank(message = "申请付款记录订单号不能为空")
+    @Schema(description = "申请付款记录订单号")
+    private String orderNo;
+}

Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden.