Pārlūkot izejas kodu

feat: 钱包相关接口

xucaiqin 2 mēneši atpakaļ
vecāks
revīzija
eaf2643ae4
55 mainītis faili ar 2150 papildinājumiem un 2333 dzēšanām
  1. 3 0
      sckw-common/sckw-common-redis/src/main/java/com/sckw/redis/constant/RedisConstant.java
  2. 62 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/NoticeController.java
  3. 51 444
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/WalletController.java
  4. 1 56
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/operate/OperateWalletController.java
  5. 13 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/dao/KwpWalletCashMapper.java
  6. 13 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/dao/KwpWalletFreightMapper.java
  7. 3 3
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/dao/KwpWalletMapper.java
  8. 13 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/dao/KwpWalletPayMapper.java
  9. 3 3
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/dao/KwpWalletPrepayMapper.java
  10. 13 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/dao/KwpWalletSubMapper.java
  11. 70 25
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/KwpWallet.java
  12. 126 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/KwpWalletCash.java
  13. 133 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/KwpWalletFreight.java
  14. 123 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/KwpWalletPay.java
  15. 54 7
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/KwpWalletPrepay.java
  16. 133 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/KwpWalletSub.java
  17. 60 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/constant/PayXwEnum.java
  18. 16 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/dto/wallet/Res.java
  19. 15 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/dto/wallet/WithdrawRes.java
  20. 39 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/dto/xw/WithdrawDto.java
  21. 31 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/CashActionEnum.java
  22. 31 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/CashStatusEnum.java
  23. 31 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/PrepayActionEnum.java
  24. 31 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/PrepayStatusEnum.java
  25. 47 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/UserPara.java
  26. 83 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/req/CashVo.java
  27. 0 12
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/req/CashWalletReq.java
  28. 37 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/req/page/CashPage.java
  29. 23 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/req/page/ListPage.java
  30. 27 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/req/page/PayPage.java
  31. 5 4
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/req/page/PrePayPage.java
  32. 122 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/res/ListVo.java
  33. 108 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/res/PayVo.java
  34. 117 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/res/PrepayVo.java
  35. 13 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/KwpWalletCashService.java
  36. 12 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/KwpWalletFreightService.java
  37. 12 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/KwpWalletPayService.java
  38. 6 51
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/KwpWalletPrepayService.java
  39. 5 93
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/KwpWalletService.java
  40. 12 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/KwpWalletSubService.java
  41. 66 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/PayXwService.java
  42. 117 1626
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/WalletService.java
  43. 15 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/impl/KwpWalletCashServiceImpl.java
  44. 17 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/impl/KwpWalletFreightServiceImpl.java
  45. 17 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/impl/KwpWalletPayServiceImpl.java
  46. 16 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/impl/KwpWalletPrepayServiceImpl.java
  47. 15 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/impl/KwpWalletServiceImpl.java
  48. 15 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/impl/KwpWalletSubServiceImpl.java
  49. 40 0
      sckw-modules/sckw-payment/src/main/java/com/sckw/payment/utils/MoneyUtil.java
  50. 28 0
      sckw-modules/sckw-payment/src/main/resources/mapper/KwpWalletCashMapper.xml
  51. 30 0
      sckw-modules/sckw-payment/src/main/resources/mapper/KwpWalletFreightMapper.xml
  52. 12 7
      sckw-modules/sckw-payment/src/main/resources/mapper/KwpWalletMapper.xml
  53. 28 0
      sckw-modules/sckw-payment/src/main/resources/mapper/KwpWalletPayMapper.xml
  54. 7 2
      sckw-modules/sckw-payment/src/main/resources/mapper/KwpWalletPrepayMapper.xml
  55. 30 0
      sckw-modules/sckw-payment/src/main/resources/mapper/KwpWalletSubMapper.xml

+ 3 - 0
sckw-common/sckw-common-redis/src/main/java/com/sckw/redis/constant/RedisConstant.java

@@ -150,4 +150,7 @@ public class RedisConstant {
     public static final String SIGN_TRADE_CONTRACT = "sign:trade:contract:%s";
     public static final String SIGN_LOGISTICS_CONTRACT = "sign:trade:contract:%s";
 
+    public static final String CASH_LOCK = "sckw:cash:%s";
+
+
 }

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

@@ -0,0 +1,62 @@
+package com.sckw.payment.controller;
+
+import com.alibaba.fastjson2.JSONObject;
+import com.sckw.core.web.response.HttpResult;
+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 jakarta.validation.Valid;
+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 HttpResult createUser(@RequestBody @Valid JSONObject jsonObject) {
+        return HttpResult.ok(walletService.userNotice(jsonObject));
+    }
+
+    /**
+     * 【接口】提现回调通知
+     *
+     */
+    @Operation(summary = "提现回调通知", description = "提现回调通知")
+    @PostMapping("/cash")
+    public Object cash(@RequestBody @Valid JSONObject jsonObject) {
+        return HttpResult.ok(walletService.cashNotice(jsonObject));
+    }
+
+    /**
+     * 【接口】清分回调通知
+     *
+     */
+    @Operation(summary = "清分回调通知", description = "清分回调通知")
+    @PostMapping("/split")
+    public Object split(@RequestBody @Valid JSONObject jsonObject) {
+        return HttpResult.ok(walletService.splitNotice(jsonObject));
+    }
+
+}

+ 51 - 444
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/WalletController.java

@@ -1,18 +1,23 @@
 package com.sckw.payment.controller;
 
+import com.sckw.core.model.page.PageRes;
 import com.sckw.core.web.response.HttpResult;
-import com.sckw.payment.model.dto.Id;
-import com.sckw.payment.model.vo.req.*;
-import com.sckw.payment.model.vo.req.page.MoneyPage;
+import com.sckw.payment.api.model.dto.common.R;
+import com.sckw.payment.model.vo.req.CashVo;
+import com.sckw.payment.model.vo.req.CashWalletReq;
+import com.sckw.payment.model.vo.req.CreateUserReq;
+import com.sckw.payment.model.vo.req.page.CashPage;
+import com.sckw.payment.model.vo.req.page.ListPage;
+import com.sckw.payment.model.vo.req.page.PayPage;
 import com.sckw.payment.model.vo.req.page.PrePayPage;
-import com.sckw.payment.model.vo.req.page.RefundPage;
+import com.sckw.payment.model.vo.res.PrepayVo;
 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 jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotNull;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
@@ -33,10 +38,9 @@ public class WalletController {
     private WalletService walletService;
 
     /**
-     * 开户
+     * 【接口】开户
      *
      * @param createUserReq 开户请求参数
-     * @return 操作结果
      */
     @Operation(summary = "开户", description = "为用户开通钱包账户")
     @PostMapping("createUser")
@@ -45,478 +49,81 @@ public class WalletController {
     }
 
     /**
-     * 渠道用户开通信息
-     *
-     * @param uid     用户ID
-     * @param channel 渠道
-     * @return 用户开通信息
-     */
-    @Operation(summary = "查询渠道用户开通信息", description = "查询指定用户在指定渠道的开通信息")
-    @Parameter(name = "uid", description = "用户ID", required = true)
-    @Parameter(name = "channel", description = "渠道", required = true)
-    @GetMapping("userInfo")
-    public HttpResult userInfo(@NotBlank(message = "uid不能为空") @RequestParam("uid") String uid,
-                               @NotBlank(message = "channel不能为空") @RequestParam("channel") String channel) {
-        return HttpResult.ok(walletService.userInfo(uid, channel));
-    }
-
-    /**
-     * 钱包总览信息
-     *
-     * @param queryChannel 是否查询渠道信息
-     * @return 钱包总览信息
-     */
-    @Operation(summary = "钱包总览信息", description = "获取当前用户的钱包总览信息")
-    @Parameter(name = "queryChannel", description = "是否查询渠道信息")
-    @GetMapping("overview")
-    public HttpResult overview(boolean queryChannel) {
-        return HttpResult.ok(walletService.walletOverview(queryChannel));
-    }
-
-    /**
-     * 渠道开通情况
-     *
-     * @return 渠道开通情况列表
-     */
-    @Operation(summary = "渠道开通情况", description = "查询所有渠道的开通情况")
-    @GetMapping("channel")
-    public HttpResult channel() {
-        return HttpResult.ok(walletService.channel());
-    }
-
-    /**
-     * 查询资金明细
-     *
-     * @param walletDetailReq 查询参数
-     * @return 资金明细列表
-     */
-    @Operation(summary = "查询资金明细", description = "根据条件查询资金明细")
-    @GetMapping("detail")
-    public HttpResult detail(WalletDetailReq walletDetailReq) {
-        return HttpResult.ok(walletService.walletDetail(walletDetailReq));
-    }
-
-    /**
-     * 查询资金明细-按渠道统计数量
-     *
-     * @param entName 企业名称
-     * @return 统计结果
-     */
-    @Operation(summary = "资金明细按渠道统计", description = "按渠道统计资金明细数量")
-    @Parameter(name = "entName", description = "企业名称")
-    @GetMapping("detailCount")
-    public HttpResult count(String entName) {
-        return HttpResult.ok(walletService.walletCount(entName));
-    }
-
-    /**
-     * 新增账目
-     *
-     * @param addWalletReq 新增账目参数
-     * @return 操作结果
+     * 【接口】钱包信息
      */
-    @Operation(summary = "新增账目", description = "新增一笔账目")
-    @PostMapping("add")
-    public HttpResult add(@RequestBody @Valid AddWalletReq addWalletReq) {
-        return HttpResult.ok(walletService.addWallet(addWalletReq));
+    @Operation(summary = "查询用户钱包信息", description = "查询用户钱包信息")
+    @Parameter(name = "entId", description = "企业id", required = true)
+    @GetMapping("/info")
+    public R<Object> userInfo(@NotNull(message = "entId不能为空") @RequestParam("entId") Long entId) {
+        return walletService.userInfo(entId);
     }
 
     /**
-     * 账目充值
-     *
-     * @param addWalletReq 充值参数
-     * @return 操作结果
+     * 【接口】可提现余额分页查询
      */
-    @Operation(summary = "账目充值", description = "为账户充值")
-    @PostMapping("recharge")
-    public HttpResult recharge(@RequestBody @Valid WalletAppendReq addWalletReq) {
-        return HttpResult.ok(walletService.addWalletMoney(addWalletReq));
+    @Operation(summary = "可提现余额分页查询", description = "可提现余额分页查询")
+    @Parameter(name = "entId", description = "企业id", required = true)
+    @PostMapping("/cashPage")
+    public R<PageRes<CashVo>> cashPage(@RequestBody @Valid CashPage cashPage) {
+        return R.ok(walletService.cashPage(cashPage));
     }
 
     /**
-     * 提现
+     * 【接口】提现
      *
      * @param cashWalletReq 提现参数
      * @return 操作结果
      */
     @Operation(summary = "提现", description = "发起提现操作")
     @PostMapping("cashOUt")
-    public HttpResult cashOUt(@RequestBody @Valid CashWalletReq cashWalletReq) {
-        return HttpResult.ok(walletService.cashOUt(cashWalletReq));
-    }
-
-    /**
-     * 重新提现
-     *
-     * @param cashWalletReq 提现参数
-     * @return 操作结果
-     */
-    @Operation(summary = "重新提现", description = "重新发起提现操作")
-    @PostMapping("reCashOUt")
-    public HttpResult reCashOUt(@RequestBody @Valid CashWalletReq cashWalletReq) {
-        return HttpResult.ok(walletService.reCashOUt(cashWalletReq));
-    }
-
-    /**
-     * 转账
-     *
-     * @param transferReq 转账参数
-     * @return 操作结果
-     */
-    @Operation(summary = "转账", description = "发起转账操作")
-    @PostMapping("transfer")
-    public HttpResult transfer(@RequestBody @Valid TransferReq transferReq) {
-        return HttpResult.ok(walletService.transfer(transferReq));
-    }
-
-    /**
-     * 提现记录
-     *
-     * @param cashPageReq 查询参数
-     * @return 提现记录列表
-     */
-    @Operation(summary = "提现记录", description = "查询提现记录")
-    @GetMapping("cashList")
-    public HttpResult cashList(CashPageReq cashPageReq) {
-        return HttpResult.ok(walletService.cashList(cashPageReq));
-    }
-
-    /**
-     * 提现记录 分类统计
-     *
-     * @param cashPageReq 查询参数
-     * @return 统计结果
-     */
-    @Operation(summary = "提现记录分类统计", description = "对提现记录进行分类统计")
-    @GetMapping("cashCount")
-    public HttpResult cashCount(CashPageReq cashPageReq) {
-        return HttpResult.ok(walletService.cashCount(cashPageReq));
-    }
-
-    /**
-     * 预付列表
-     *
-     * @param prePayPage 查询参数
-     * @return 预付列表
-     */
-    @Operation(summary = "预付列表", description = "查询预付列表")
-    @GetMapping("prePayList")
-    public HttpResult prePayList(PrePayPage prePayPage) {
-        return HttpResult.ok(walletService.prePayList(prePayPage));
-    }
-
-
-    /**
-     * 预付列表-按渠道统计数量
-     *
-     * @param entName 企业名称
-     * @return 统计结果
-     */
-    @Operation(summary = "预付列表按渠道统计", description = "预付列表-按渠道统计数量")
-    @Parameter(name = "entName", description = "企业名称")
-    @GetMapping("prePayCount")
-    public HttpResult prePayCount(String entName) {
-        return HttpResult.ok(walletService.prePayCount(entName));
-    }
-
-    /**
-     * 预收列表
-     *
-     * @param prePayPage 查询参数
-     * @return 预收列表
-     */
-    @Operation(summary = "预收列表", description = "查询预收列表")
-    @GetMapping("preReceiveList")
-    public HttpResult preReceiveList(PrePayPage prePayPage) {
-        return HttpResult.ok(walletService.preReceiveList(prePayPage));
-    }
-
-    /**
-     * 预收列表-按渠道统计数量
-     *
-     * @param entName 企业名称
-     * @return 统计结果
-     */
-    @Operation(summary = "预收列表按渠道统计", description = "预收列表-按渠道统计数量")
-    @Parameter(name = "entName", description = "企业名称")
-    @GetMapping("preReceiveCount")
-    public HttpResult preReceiveCount(String entName) {
-        return HttpResult.ok(walletService.preReceiveCount(entName));
-    }
-
-    /**
-     * 预付校验
-     *
-     * @param prePayCheck 校验参数
-     * @return 校验结果
-     */
-    @Operation(summary = "预付校验", description = "预付操作前的校验")
-    @PostMapping("prePayCheck")
-    public HttpResult prePayCheck(@RequestBody @Valid PrePayCheck prePayCheck) {
-        return HttpResult.ok(walletService.prePayCheck(prePayCheck));
-    }
-
-    /**
-     * 新增预付
-     *
-     * @param prePay 预付参数
-     * @return 操作结果
-     */
-    @Operation(summary = "新增预付", description = "新增一笔预付")
-    @PostMapping("addPrePay")
-    public HttpResult addPrePay(@RequestBody @Valid PrePay prePay) {
-        return HttpResult.ok(walletService.addPrePay(prePay));
-    }
-
-    /**
-     * 处理查询
-     *
-     * @param operateReq 查询参数
-     * @return 查询结果
-     */
-    @Operation(summary = "处理查询", description = "查询处理信息")
-    @PostMapping("dealQuery")
-    public HttpResult dealQuery(@RequestBody @Valid OperateReq operateReq) {
-        return HttpResult.ok(walletService.dealQuery(operateReq));
-    }
-
-    /**
-     * 提现确认
-     * @param cashCheck 提现确认参数
-     * @return 操作结果
-     */
-    @Operation(summary = "提现确认", description = "确认提现操作")
-    @PostMapping("cashCheck")
-    public HttpResult cashCheck(@RequestBody @Valid CashCheck cashCheck) {
-        return HttpResult.ok(walletService.cashCheck(cashCheck));
-    }
-
-    /**
-     * 预付追加校验
-     *
-     * @param appendPayCheck 校验参数
-     * @return 校验结果
-     */
-    @Operation(summary = "预付追加校验", description = "预付追加操作前的校验")
-    @PostMapping("appendCheck")
-    public HttpResult prePayAppendCheck(@RequestBody @Valid AppendPayCheck appendPayCheck) {
-        return HttpResult.ok(walletService.appendCheck(appendPayCheck));
-    }
-
-    /**
-     * 预付追加
-     *
-     * @param prePay 追加参数
-     * @return 操作结果
-     */
-    @Operation(summary = "预付追加", description = "追加预付金额")
-    @PostMapping("prePayAppend")
-    public HttpResult prePayAppend(@RequestBody @Valid PrePayAppend prePay) {
-        return HttpResult.ok(walletService.prePayAppend(prePay));
-    }
-
-
-    /*退款*/
-
-    /**
-     * 申请退款(预付方)
-     *
-     * @param refundReq 退款参数
-     * @return 操作结果
-     */
-    @Operation(summary = "申请退款", description = "申请退款(预付方)")
-    @PostMapping("applyRefund")
-    public HttpResult applyRefund(@RequestBody @Valid ApplyRefundReq refundReq) {
-        return HttpResult.ok(walletService.applyRefund(refundReq));
-    }
-
-
-    /**
-     * 查询退款列表(预收方)
-     *
-     * @param refundPage 查询参数
-     * @return 退款列表
-     */
-    @Operation(summary = "查询退款列表", description = "查询退款列表(预收方)")
-    @PostMapping("refundList")
-    public HttpResult refundList(@RequestBody @Valid RefundPage refundPage) {
-        return HttpResult.ok(walletService.refundList(refundPage));
+    public R<Object> cashOUt(@RequestBody @Valid CashWalletReq cashWalletReq) {
+        return R.ok(walletService.cashOUt(cashWalletReq));
     }
 
+    /*预付*/
 
     /**
-     * 发起退款(预收方)余额查询及校验
+     * 【接口】预付(待履约)清单分页查询
      *
-     * @param id 退款单id
-     * @return 校验结果
+     * @param listPage
      */
-    @Operation(summary = "发起退款校验", description = "发起退款(预收方)余额查询及校验")
-    @PostMapping("refundCheck")
-    public HttpResult refundCheck(@RequestBody @Valid Id id) {
-        return HttpResult.ok(walletService.refundCheck(id.getIdLong()));
+    @Operation(summary = "预付(待履约)清单分页查询", description = "预付(待履约)清单分页查询")
+    @PostMapping("/prepayList")
+    public R<Object> prepayList(@RequestBody @Valid ListPage listPage) {
+        return R.ok(walletService.prepayList(listPage));
     }
 
     /**
-     * 确认退款
-     *
-     * @param refundReq 退款参数
-     * @return 操作结果
+     * 【接口】支付记录/预付记录
      */
-    @Operation(summary = "确认退款", description = "确认退款操作")
-    @PostMapping("refund")
-    public HttpResult refund(@RequestBody @Valid RefundReq refundReq) {
-        return HttpResult.ok(walletService.launchRefund(refundReq));
+    @Operation(summary = "支付记录/预付记录", description = "支付记录/预付记录")
+    @PostMapping("/payList")
+    public R<Object> prepayRecord(@RequestBody @Valid PayPage payPage) {
+        return R.ok(walletService.prepayRecord(payPage));
     }
 
     /**
-     * 驳回退款
+     * 【接口】预付(待履约)明细分页查询
      *
-     * @param refundReq 驳回参数
-     * @return 操作结果
+     * @param prePayPage 预付
      */
-    @Operation(summary = "驳回退款", description = "驳回退款申请")
-    @PostMapping("backRefund")
-    public HttpResult back(@RequestBody @Valid RefundBackReq refundReq) {
-        return HttpResult.ok(walletService.backRefund(refundReq));
+    @Operation(summary = "预付(待履约)明细分页查询", description = "预付(待履约)明细分页查询")
+    @PostMapping("/prepayPage")
+    public R<PageRes<PrepayVo>> prepayPage(@RequestBody @Valid PrePayPage prePayPage) {
+        return R.ok(walletService.prepayPage(prePayPage));
     }
 
 
-
-    /*资金明细-详细记录*/
-
     /**
-     * 充值订单
+     * 【接口】预付(待收)运费清单分页查询
      *
-     * @param moneyPage 查询参数
-     * @return 充值订单列表
+     * @param listPage
      */
-    @Operation(summary = "充值订单", description = "查询充值订单列表")
-    @PostMapping("rechargeOrder")
-    public HttpResult rechargeList(@RequestBody @Valid MoneyPage moneyPage) {
-        return HttpResult.ok(walletService.rechargeList(moneyPage));
+    @Operation(summary = "预付(待收)运费清单分页查询", description = "预付(待收)运费清单分页查询")
+    @PostMapping("/duePay")
+    public R<Object> duePay(@RequestBody @Valid ListPage listPage) {
+        return R.ok(walletService.duePayList(listPage));
     }
 
-    /**
-     * 转账订单
-     *
-     * @param moneyPage 查询参数
-     * @return 转账订单列表
-     */
-    @Operation(summary = "转账订单", description = "查询转账订单列表")
-    @PostMapping("transferOrder")
-    public HttpResult transferList(@RequestBody @Valid MoneyPage moneyPage) {
-        return HttpResult.ok(walletService.transferOrder(moneyPage));
-    }
 
-    /**
-     * 货到付款订单
-     *
-     * @param moneyPage 查询参数
-     * @return 货到付款订单列表
-     */
-    @Operation(summary = "货到付款订单", description = "查询货到付款订单列表")
-    @PostMapping("receiveOrder")
-    public HttpResult receiveOrder(@RequestBody @Valid MoneyPage moneyPage) {
-        return HttpResult.ok(walletService.transferReceiveOrder(moneyPage));
-    }
-
-    /**
-     * 退款订单
-     *
-     * @param moneyPage 查询参数
-     * @return 退款订单列表
-     */
-    @Operation(summary = "退款订单", description = "查询退款订单列表")
-    @PostMapping("refundOrder")
-    public HttpResult refundOrder(@RequestBody @Valid MoneyPage moneyPage) {
-        return HttpResult.ok(walletService.refundOrder(moneyPage));
-    }
-
-    /**
-     * 提现订单
-     *
-     * @param moneyPage 查询参数
-     * @return 提现订单列表
-     */
-    @Operation(summary = "提现订单", description = "查询提现订单列表")
-    @PostMapping("cashOrder")
-    public HttpResult cashOrder(@RequestBody @Valid MoneyPage moneyPage) {
-        return HttpResult.ok(walletService.cashOrder(moneyPage));
-    }
-
-    /*提现-详细记录*/
-
-    /**
-     * 提现详情
-     *
-     * @param cashDetailReq 查询参数
-     * @return 提现详情
-     */
-    @Operation(summary = "提现详情", description = "查询提现详情")
-    @PostMapping("cashDetail")
-    public HttpResult cashDetail(@RequestBody @Valid CashDetailReq cashDetailReq) {
-        return HttpResult.ok(walletService.cashDetail(cashDetailReq));
-    }
-    /*预付-详细记录*/
-
-    /**
-     * 预付订单
-     *
-     * @param moneyPage 查询参数
-     * @return 预付订单列表
-     */
-    @Operation(summary = "预付订单", description = "查询预付订单列表")
-    @PostMapping("prePayOrder")
-    public HttpResult prePayOrder(@RequestBody @Valid MoneyPage moneyPage) {
-        return HttpResult.ok(walletService.prePayOrder(moneyPage));
-    }
-
-    /**
-     * 退款记录
-     *
-     * @param moneyPage 查询参数
-     * @return 退款记录列表
-     */
-    @Operation(summary = "预付退款记录", description = "查询预付退款记录")
-    @PostMapping("prePayRefund")
-    public HttpResult prePayRefund(@RequestBody @Valid MoneyPage moneyPage) {
-        return HttpResult.ok(walletService.prePayRefund(moneyPage));
-    }
-
-    /**
-     * 预付消费日志
-     *
-     * @param moneyPage 查询参数
-     * @return 消费日志列表
-     */
-    @Operation(summary = "预付消费日志", description = "查询预付消费日志")
-    @GetMapping("prePayLogs")
-    public HttpResult prePayLogs(@RequestBody @Valid MoneyPage moneyPage) {
-        return HttpResult.ok(walletService.prePayLogs(moneyPage));
-    }
-    /*预收-详细记录*/
-
-    /**
-     * 预收订单
-     *
-     * @param moneyPage 查询参数
-     * @return 预收订单列表
-     */
-    @Operation(summary = "预收订单", description = "查询预收订单列表")
-    @PostMapping("preReceiveOrder")
-    public HttpResult preReceiveOrder(@RequestBody @Valid MoneyPage moneyPage) {
-        return HttpResult.ok(walletService.preReceiveOrder(moneyPage));
-    }
-
-    /**
-     * 退款订单
-     *
-     * @param moneyPage 查询参数
-     * @return 退款订单列表
-     */
-    @Operation(summary = "预收退款订单", description = "查询预收退款订单")
-    @PostMapping("preReceiveRefund")
-    public HttpResult preReceiveRefund(@RequestBody @Valid MoneyPage moneyPage) {
-        return HttpResult.ok(walletService.preReceiveRefund(moneyPage));
-    }
-}
+}

+ 1 - 56
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/controller/operate/OperateWalletController.java

@@ -1,16 +1,10 @@
 package com.sckw.payment.controller.operate;
 
-import com.sckw.core.web.response.HttpResult;
-import com.sckw.payment.model.vo.req.CashPageReq;
-import com.sckw.payment.model.vo.req.WalletDetailReq;
-import com.sckw.payment.model.vo.req.page.PrePayPage;
 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.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
@@ -30,54 +24,5 @@ public class OperateWalletController {
     private WalletService walletService;
 
 
-    /**
-     * 查询资金明细
-     *
-     * @param walletDetailReq 查询参数
-     * @return 资金明细列表
-     */
-    @Operation(summary = "资金明细", description = "查询钱包资金明细")
-    @GetMapping("detail")
-    public HttpResult detail(WalletDetailReq walletDetailReq) {
-        return HttpResult.ok(walletService.walletDetail2(walletDetailReq));
-    }
 
-
-    /**
-     * 提现记录
-     *
-     * @param cashPageReq 查询参数
-     * @return 提现记录列表
-     */
-    @Operation(summary = "提现记录", description = "查询提现记录列表")
-    @GetMapping("cashList")
-    public HttpResult cashList(CashPageReq cashPageReq) {
-        return HttpResult.ok(walletService.cashList2(cashPageReq));
-    }
-
-
-    /**
-     * 提现记录 分类统计
-     *
-     * @param cashPageReq 查询参数
-     * @return 统计结果
-     */
-    @Operation(summary = "提现记录统计", description = "提现记录分类统计")
-    @GetMapping("cashCount")
-    public HttpResult cashCount(CashPageReq cashPageReq) {
-        return HttpResult.ok(walletService.cashCount2(cashPageReq));
-    }
-
-    /**
-     * 预付列表
-     *
-     * @param prePayPage 查询参数
-     * @return 预付列表
-     */
-    @Operation(summary = "预付列表", description = "查询预付列表")
-    @GetMapping("prePayList")
-    public HttpResult prePayList(PrePayPage prePayPage) {
-        return HttpResult.ok(walletService.prePayList2(prePayPage));
-    }
-
-}
+}

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

@@ -0,0 +1,13 @@
+package com.sckw.payment.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.sckw.payment.model.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/dao/KwpWalletFreightMapper.java

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

+ 3 - 3
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/dao/KwpWalletMapper.java

@@ -5,9 +5,9 @@ import com.sckw.payment.model.KwpWallet;
 import org.apache.ibatis.annotations.Mapper;
 
 /**
-* @date 2023-10-07 08:49:45
-* @author xucaiqin
-*/
+ * @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/dao/KwpWalletPayMapper.java

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

+ 3 - 3
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/dao/KwpWalletPrepayMapper.java

@@ -5,9 +5,9 @@ import com.sckw.payment.model.KwpWalletPrepay;
 import org.apache.ibatis.annotations.Mapper;
 
 /**
-* @date 2023-09-22 15:49:51
-* @author xucaiqin
-*/
+ * @author xucaiqin
+ * @date 2026-03-26 14:45:11
+ */
 @Mapper
 public interface KwpWalletPrepayMapper extends BaseMapper<KwpWalletPrepay> {
 }

+ 13 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/dao/KwpWalletSubMapper.java

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

+ 70 - 25
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/KwpWallet.java

@@ -4,99 +4,144 @@ 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.time.LocalDateTime;
 
 /**
- * 钱包相关操作表
-* @date 2023-10-07 08:49:45
-* @author xucaiqin
-*/
+ * 钱包表
+ *
+ * @author xucaiqin
+ * @date 2026-03-26 14:33:23
+ */
+@Schema(description = "钱包表")
 @Data
 @TableName(value = "kwp_wallet")
 public class KwpWallet {
     /**
      * 主键
      */
-    @TableId(value = "id", type = IdType.INPUT)
+    @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;
 
     /**
-     * filter
+     * 企业类型
      */
-    @TableField(value = "`filter`")
-    private String filter;
+    @TableField(value = "ent_type")
+    @Schema(description = "企业类型")
+    private Integer entType;
 
     /**
-     * 渠道
+     * 提现金额
      */
-    @TableField(value = "channel")
-    private String channel;
+    @TableField(value = "cash_amount")
+    @Schema(description = "提现金额")
+    private Long cashAmount;
 
     /**
-     * 相关操作
+     * 预付余额
      */
-    @TableField(value = "`action`")
-    private String action;
+    @TableField(value = "prepay_amount")
+    @Schema(description = "预付余额")
+    private Long prepayAmount;
 
     /**
-     * 关联的操作时间
+     * 交易中金额
      */
-    @TableField(value = "action_time")
-    private LocalDateTime actionTime;
+    @TableField(value = "dealing_amount")
+    @Schema(description = "交易中金额")
+    private Long dealingAmount;
 
     /**
-     * 备注
+     * 运费金额
      */
-    @TableField(value = "remark")
-    private String remark;
+    @TableField(value = "freight_amount")
+    @Schema(description = "运费金额")
+    private Long freightAmount;
+
+    /**
+     * 进行中金额
+     */
+    @TableField(value = "processing_amount")
+    @Schema(description = "进行中金额")
+    private Long processingAmount;
 
     /**
-     * 关联操作对应的订单
+     * 付款中金额
      */
-    @TableField(value = "order_no")
-    private String orderNo;
+    @TableField(value = "paying_amount")
+    @Schema(description = "付款中金额")
+    private Long payingAmount;
 
     /**
-     * 关联操作对应的状态
+     * 渠道
+     */
+    @TableField(value = "channel")
+    @Schema(description = "渠道")
+    private String channel;
+
+    /**
+     * 状态 1-开户中 2-开户成功
      */
     @TableField(value = "`status`")
+    @Schema(description = "状态 1-开户中 2-开户成功")
     private Integer status;
 
+    /**
+     * 备注
+     */
+    @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;
-}
+}

+ 126 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/KwpWalletCash.java

@@ -0,0 +1,126 @@
+package com.sckw.payment.model;
+
+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.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 Long amount;
+
+    /**
+     * 可提现金额
+     */
+    @TableField(value = "cash_amount")
+    @Schema(description = "可提现金额")
+    private Long 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 = "状态 1-成功 2-失败")
+    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;
+}

+ 133 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/KwpWalletFreight.java

@@ -0,0 +1,133 @@
+package com.sckw.payment.model;
+
+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.time.LocalDateTime;
+
+/**
+ * 运费表
+ *
+ * @author xucaiqin
+ * @date 2026-03-26 14:32:05
+ */
+@Schema(description = "运费表")
+@Data
+@TableName(value = "kwp_wallet_freight")
+public class KwpWalletFreight {
+    /**
+     * 主键
+     */
+    @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-解冻
+     */
+    @TableField(value = "`action`")
+    @Schema(description = "操作 1-冻结 2-解冻")
+    private Boolean action;
+
+    /**
+     * 交易金额
+     */
+    @TableField(value = "money")
+    @Schema(description = "交易金额")
+    private Integer money;
+
+    /**
+     * 运费金额
+     */
+    @TableField(value = "freight_amount")
+    @Schema(description = "运费金额")
+    private Integer freightAmount;
+
+    /**
+     * 进行中金额
+     */
+    @TableField(value = "processing_amount")
+    @Schema(description = "进行中金额")
+    private Integer processingAmount;
+
+    /**
+     * 付款中金额
+     */
+    @TableField(value = "paying_amount")
+    @Schema(description = "付款中金额")
+    private Integer payingAmount;
+
+    /**
+     * 备注
+     */
+    @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;
+}

+ 123 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/KwpWalletPay.java

@@ -0,0 +1,123 @@
+package com.sckw.payment.model;
+
+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.time.LocalDateTime;
+
+/**
+ * 支付记录表
+ *
+ * @author xucaiqin
+ * @date 2026-03-26 14:32:05
+ */
+@Schema(description = "支付记录表")
+@Data
+@TableName(value = "kwp_wallet_pay")
+public class KwpWalletPay {
+    /**
+     * 主键
+     */
+    @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-支付
+     */
+    @TableField(value = "`action`")
+    @Schema(description = "操作 1-预付 2-支付")
+    private Integer action;
+
+    /**
+     * 申请金额
+     */
+    @TableField(value = "apply_amount")
+    @Schema(description = "申请金额")
+    private Long applyAmount;
+
+    /**
+     * 支付金额
+     */
+    @TableField(value = "pay_amount")
+    @Schema(description = "支付金额")
+    private Long payAmount;
+
+    @TableField(value = "img")
+    @Schema(description = "")
+    private String img;
+
+    /**
+     * 备注
+     */
+    @TableField(value = "remark")
+    @Schema(description = "备注")
+    private String remark;
+
+    /**
+     * 状态 1-成功 2-失败
+     */
+    @TableField(value = "`status`")
+    @Schema(description = "状态 1-成功 2-失败")
+    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;
+}

+ 54 - 7
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/KwpWalletPrepay.java

@@ -4,75 +4,122 @@ 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.time.LocalDateTime;
 
 /**
- * 预付操作
- * @date 2023-09-22 15:49:51
+ * 预付
+ *
  * @author xucaiqin
+ * @date 2026-03-26 14:45:11
  */
+@Schema(description = "预付表")
 @Data
 @TableName(value = "kwp_wallet_prepay")
 public class KwpWalletPrepay {
     /**
      * 主键
      */
-    @TableId(value = "id", type = IdType.INPUT)
+    @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-预付追加
+     * 操作 1-提现 2-预付 3-支付 3-收益
      */
     @TableField(value = "`action`")
+    @Schema(description = "操作 1-提现 2-预付 3-支付 3-收益")
     private Integer action;
+    private String actionLabel;
+    /**
+     * 交易金额
+     */
+    @TableField(value = "money")
+    @Schema(description = "交易金额")
+    private Integer money;
+
+    /**
+     * 预付金额
+     */
+    @TableField(value = "prepay_amount")
+    @Schema(description = "预付金额")
+    private Integer prepayAmount;
+
+    /**
+     * 交易中金额
+     */
+    @TableField(value = "deal_amount")
+    @Schema(description = "交易中金额")
+    private Integer dealAmount;
 
     /**
      * 备注
      */
     @TableField(value = "remark")
+    @Schema(description = "备注")
     private String remark;
 
     /**
-     * 1-已提交 2-预付成功 3-预付失败
+     * 状态 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;
 }

+ 133 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/KwpWalletSub.java

@@ -0,0 +1,133 @@
+package com.sckw.payment.model;
+
+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.time.LocalDateTime;
+
+/**
+ * 钱包关系表
+ *
+ * @author xucaiqin
+ * @date 2026-03-26 14:32:05
+ */
+@Schema(description = "钱包关系表")
+@Data
+@TableName(value = "kwp_wallet_sub")
+public class KwpWalletSub {
+    /**
+     * 主键
+     */
+    @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 = "cash_amount")
+    @Schema(description = "提现金额")
+    private Long cashAmount;
+
+    /**
+     * 预付余额
+     */
+    @TableField(value = "prepay_amount")
+    @Schema(description = "预付余额")
+    private Long prepayAmount;
+
+    /**
+     * 交易中金额
+     */
+    @TableField(value = "dealing_amount")
+    @Schema(description = "交易中金额")
+    private Long dealingAmount;
+
+    /**
+     * 运费金额
+     */
+    @TableField(value = "freight_amount")
+    @Schema(description = "运费金额")
+    private Long freightAmount;
+
+    /**
+     * 进行中金额
+     */
+    @TableField(value = "processing_amount")
+    @Schema(description = "进行中金额")
+    private Long processingAmount;
+
+    /**
+     * 付款中金额
+     */
+    @TableField(value = "paying_amount")
+    @Schema(description = "付款中金额")
+    private Long payingAmount;
+
+    /**
+     * 渠道
+     */
+    @TableField(value = "channel")
+    @Schema(description = "渠道")
+    private String channel;
+
+    /**
+     * 备注
+     */
+    @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;
+}

+ 60 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/constant/PayXwEnum.java

@@ -0,0 +1,60 @@
+package com.sckw.payment.model.constant;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * @author xucaiqin
+ * @date 2023-07-21 17:53:28
+ */
+@Getter
+@AllArgsConstructor
+public enum PayXwEnum {
+    BEFORE_CREATE("/user/beforeCreate", "获取开户地址"),
+    MEMBER_WALLET("/v1/member/wallet", "钱包清单"),
+    MEMBER_WALLET_V2("/v2/member/wallet", "钱包清单v2"),
+    MEMBER_GENERAL("/v2/wallet/general", "总览信息"),
+    USER("/v2/member/user", "会员注册信息"),
+    WITHDRAW_DETAIL("/v2/wallet/withdraw/detail", "提现详情"),
+    //    WITHDRAW_DETAIL("/v1/wallet/withdraw/detail", "提现详情"), 原接口
+    //    WITHDRAW_INDEX("/v1/wallet/withdraw/index", "提现清单"), 原接口
+    WITHDRAW_INDEX("/v2/wallet/withdraw/index", "提现清单"),
+    WITHDRAW_CATEGORY("/v2/wallet/withdraw/categories", "提现清单分类"),
+    WITHDRAW_STATUS("/v1/wallet/withdraw/status", "订单状态"),
+    WITHDRAW_CANCEL("/v1/wallet/withdraw/cancel", "取消提现"),
+    WITHDRAW_TAKE("/v1/wallet/withdraw/take", "申请提现"),
+    TOTAL_INFO("/v1/wallet/totalInfo", "统计信息"),
+    OPERATE_DOWNLOAD("/v1/wallet/operate/download", "操作记录-下载"),
+    OPERATE_CATEGORY("/v1/wallet/operate/category", "操作记录-分类"),
+    OPERATE_INDEX("/v1/wallet/operate/index", "操作记录"),
+    LOG_CATEGORY("/v1/wallet/log/category", "钱包日志类型"),
+    RECORD("/v1/wallet/record", "获取钱包使用明细"),
+    TRANSFER("/v1/wallet/transfer", "余额转出"),
+    ADVANCE_PAY_DETAIL("/v1/wallet/advancepay/detail", "预付订单详情"),
+    ADVANCE_PAY_APPLY("/v1/wallet/advancepay/apply", "发起预付"),
+    ADVANCE_PAY_INDEX("/v1/wallet/advancepay/index", "预付订单清单"),
+    ADVANCE_PAY_INDEX2("/v2/wallet/advancepay/index", "预付订单清单"),
+    ADVANCE_PAY_WALLETS("/v2/advancepay/wallets", "钱包预付列表"),
+    ADVANCE_PAY_PAY_CHANNELS("/v2/advancepay/pay/channels", "钱包预付通道统计"),
+    ADVANCE_PAY_RECEIVE("/v2/advancepay/receives", "钱包预收列表"),
+    ADVANCE_PAY_LOGS("/v2/advancepay/operate/logs", "预付支出记录"),
+    ADVANCE_PAY_RECEIVE_CHANNELS("/v2/advancepay/receive/channels", "钱包预收通道统计"),
+    ADVANCE_PAY_STATUS("/v1/wallet/advancepay/statusCategory", "预付订单状态"),
+    INDEX("/v1/index/index", "获取通道清单"),
+    MEMBER_PAY_INDEX("/v1/member/pay/index", "订单记录"),
+    MEMBER_INDEX("/v1/member/index", "创建/更新账户"),
+    PAY_INDEX("/v1/pay/index", "在线充值"),
+    RECHARGE_ORDER("/v2/wallet/recharge/orders", "充值记录清单"),
+    WALLET_FREEZE("/v1/wallet/freeze", "冻结资金"),
+    WALLET_UNFREEZE("/v1/wallet/unfreeze", "解冻金额"),
+    PAY_AGENT_PAY("/v1/pay/agent_pay", "清分"),
+    PAY_AGENT_PAY_V2("/v2/pay/agent_pay", "清分"),
+    AGENT_PAY_QUERY("/v2/pay/status/query", "清分结果查询"),
+    WITHDRAW_TRANSFER("/v2/wallet/withdraw/transfer", "转出加提现"),
+    WALLET_INDEX("/v1/wallet/index", "创建钱包"),
+    REFUND_APPLY("/v1/pay/refund_apply", "充值订单退款"),
+    ;
+    private final String addr;
+    private final String desc;
+
+}

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

@@ -0,0 +1,16 @@
+package com.sckw.payment.model.dto.wallet;
+
+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;
+}

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

@@ -0,0 +1,15 @@
+package com.sckw.payment.model.dto.wallet;
+
+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;
+}

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

@@ -0,0 +1,39 @@
+package com.sckw.payment.model.dto.xw;
+
+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;
+}

+ 31 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/CashActionEnum.java

@@ -0,0 +1,31 @@
+package com.sckw.payment.model.vo;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.Objects;
+
+/**
+ *
+ */
+@Getter
+@AllArgsConstructor
+public enum CashActionEnum {
+
+    CASH(1, "提现"),
+    ;
+
+    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 "";
+    }
+
+}

+ 31 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/CashStatusEnum.java

@@ -0,0 +1,31 @@
+package com.sckw.payment.model.vo;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.Objects;
+
+/**
+ *
+ */
+@Getter
+@AllArgsConstructor
+public enum CashStatusEnum {
+
+    CASH(1, "成功"),
+    ;
+
+    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 "";
+    }
+
+}

+ 31 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/PrepayActionEnum.java

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

+ 31 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/PrepayStatusEnum.java

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

+ 47 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/UserPara.java

@@ -0,0 +1,47 @@
+package com.sckw.payment.model.vo;
+
+
+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;
+}

+ 83 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/req/CashVo.java

@@ -0,0 +1,83 @@
+package com.sckw.payment.model.vo.req;
+
+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 {
+    /**
+     * 付款方
+     */
+    @Schema(description = "付款方")
+    private Long fromEnt;
+    private String fromEntName;
+
+    /**
+     * 收款方
+     */
+    @Schema(description = "收款方")
+    private Long toEnt;
+    private String toEntName;
+
+    /**
+     * 订单号
+     */
+    @Schema(description = "订单号")
+    private String orderNo;
+
+    /**
+     * 操作 1-提现 2-预付 3-支付 3-收益
+     */
+    @Schema(description = "操作 1-提现 2-预付 3-支付 3-收益")
+    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;
+}

+ 0 - 12
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/req/CashWalletReq.java

@@ -2,7 +2,6 @@ package com.sckw.payment.model.vo.req;
 
 import com.sckw.payment.model.vo.res.MoneyChange;
 import jakarta.validation.constraints.Digits;
-import jakarta.validation.constraints.NotBlank;
 import jakarta.validation.constraints.Positive;
 import jakarta.validation.constraints.Size;
 import lombok.Getter;
@@ -19,17 +18,6 @@ import java.math.BigDecimal;
 @Getter
 @Setter
 public class CashWalletReq implements MoneyChange {
-    /**
-     * 支付通道 huifu
-     */
-    @NotBlank(message = "支付通道不能为空")
-    private String channel;
-
-//    @NotBlank(message = "uid不能为空")
-//    private String uid;
-
-//    @NotBlank(message = "filter不能为空")
-//    private String filter;
 
     @Positive(message = "提现金额必须大于0")
     @Digits(message = "小数位数过长或金额过大", integer = 10, fraction = 2)

+ 37 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/req/page/CashPage.java

@@ -0,0 +1,37 @@
+package com.sckw.payment.model.vo.req.page;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.sckw.core.model.vo.BasePara;
+import com.sckw.payment.model.vo.res.MoneyChange;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+
+/**
+ * 提现
+ *
+ * @author xucaiqin
+ * @date 2023-08-29 09:14:04
+ */
+@Getter
+@Setter
+public class CashPage extends BasePara implements MoneyChange {
+    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;
+
+}

+ 23 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/req/page/ListPage.java

@@ -0,0 +1,23 @@
+package com.sckw.payment.model.vo.req.page;
+
+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 ListPage extends BasePara {
+    private BigDecimal startAmount;
+    private BigDecimal endAmount;
+
+    private String entName;
+
+}

+ 27 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/req/page/PayPage.java

@@ -0,0 +1,27 @@
+package com.sckw.payment.model.vo.req.page;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.sckw.core.model.vo.BasePara;
+import io.swagger.v3.oas.annotations.media.Schema;
+import jakarta.validation.constraints.NotNull;
+import lombok.Getter;
+import lombok.Setter;
+
+@Getter
+@Setter
+public class PayPage extends BasePara {
+    @NotNull(message = "收款方不能为空")
+    @Schema(description = "收款方企业")
+    private Long toEnt;
+    @Schema(description = "状态")
+    private Integer status;
+
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Schema(description = "开始时间")
+    private String startCreateTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Schema(description = "结束时间")
+    private String endCreateTime;
+
+}

+ 5 - 4
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/req/page/PrePayPage.java

@@ -4,6 +4,8 @@ import com.sckw.core.model.vo.BasePara;
 import lombok.Getter;
 import lombok.Setter;
 
+import java.math.BigDecimal;
+
 /**
  * 预付请求参数
  *
@@ -13,10 +15,9 @@ import lombok.Setter;
 @Getter
 @Setter
 public class PrePayPage extends BasePara {
-    /**
-     * 支付通道 1
-     */
-    private String channel;
+    private BigDecimal startAmount;
+    private BigDecimal endAmount;
+
 
     private String entName;
 

+ 122 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/res/ListVo.java

@@ -0,0 +1,122 @@
+package com.sckw.payment.model.vo.res;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+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:45:11
+ */
+@Schema(description = "预付")
+@Data
+public class ListVo {
+    /**
+     * 主键
+     */
+    @Schema(description = "主键")
+    private Long id;
+
+    /**
+     * 付款方
+     */
+    @Schema(description = "我方企业")
+    private Long fromEnt;
+    @Schema(description = "我方企业")
+    private String fromEntName;
+
+    /**
+     * 收款方
+     */
+    @Schema(description = "对方企业")
+    private Long toEnt;
+    @Schema(description = "对方企业")
+    private String toEntName;
+
+    /**
+     * 提现金额
+     */
+    @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 = "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;
+}

+ 108 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/res/PayVo.java

@@ -0,0 +1,108 @@
+package com.sckw.payment.model.vo.res;
+
+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:45:11
+ */
+@Schema(description = "预付")
+@Data
+public class PayVo {
+    /**
+     * 主键
+     */
+    @Schema(description = "主键")
+    private Long id;
+
+    /**
+     * 付款方
+     */
+    @Schema(description = "付款方")
+    private Long fromEnt;
+    @Schema(description = "付款方")
+    private String fromEntName;
+
+    /**
+     * 收款方
+     */
+    @Schema(description = "收款方")
+    private Long toEnt;
+
+    @Schema(description = "收款方")
+    private String toEntName;
+
+    /**
+     * 订单号
+     */
+    @Schema(description = "订单号")
+    private String orderNo;
+
+    /**
+     * 操作 1-预付 2-支付
+     */
+    @Schema(description = "操作 1-预付 2-支付")
+    private Integer action;
+
+    /**
+     * 申请金额
+     */
+    @Schema(description = "申请金额")
+    private BigDecimal applyAmount;
+
+    /**
+     * 支付金额
+     */
+    @Schema(description = "支付金额")
+    private BigDecimal payAmount;
+
+    @Schema(description = "凭证")
+    private String img;
+
+    /**
+     * 状态 1-成功 2-失败
+     */
+    @Schema(description = "状态 1-成功 2-失败")
+    private Integer status;
+
+    /**
+     * 备注
+     */
+    @Schema(description = "备注")
+    private String remark;
+
+
+    /**
+     * 创建人
+     */
+    @Schema(description = "创建人")
+    private Long createBy;
+
+    /**
+     * 创建时间
+     */
+    @Schema(description = "创建时间")
+    private LocalDateTime createTime;
+
+    /**
+     * 更新人
+     */
+    @Schema(description = "更新人")
+    private Long updateBy;
+
+    /**
+     * 更新时间
+     */
+    @Schema(description = "更新时间")
+    private LocalDateTime updateTime;
+
+    /**
+     * 0-正常 1-删除
+     */
+    @Schema(description = "0-正常 1-删除")
+    private Integer delFlag;
+}

+ 117 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/res/PrepayVo.java

@@ -0,0 +1,117 @@
+package com.sckw.payment.model.vo.res;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+/**
+ *
+ * @author xucaiqin
+ * @date 2026-03-26 14:45:11
+ */
+@Schema(description = "预付")
+@Data
+public class PrepayVo {
+    /**
+     * 主键
+     */
+    @Schema(description = "主键")
+    private Long id;
+
+    /**
+     * 付款方 采购商
+     */
+    @Schema(description = "付款方")
+    private Long fromEnt;
+
+    /**
+     * 收款方 供应商
+     */
+    @Schema(description = "收款方")
+    private Long toEnt;
+
+    /**
+     * 订单号
+     */
+    @TableField(value = "order_no")
+    @Schema(description = "中台订单号")
+    private String orderNo;
+
+    @Schema(description = "操作")
+    private Integer action;
+    @Schema(description = "操作")
+    private String actionLabel;
+    /**
+     * 交易金额
+     */
+    @TableField(value = "money")
+    @Schema(description = "交易金额")
+    private Integer money;
+
+    /**
+     * 预付金额
+     */
+    @TableField(value = "prepay_amount")
+    @Schema(description = "预付金额")
+    private Integer prepayAmount;
+
+    /**
+     * 交易中金额
+     */
+    @TableField(value = "deal_amount")
+    @Schema(description = "交易中金额")
+    private Integer dealAmount;
+
+    /**
+     * 备注
+     */
+    @TableField(value = "remark")
+    @Schema(description = "备注")
+    private String remark;
+
+    /**
+     * 状态 1-已提交 2-预付成功 3-预付失败
+     */
+    @TableField(value = "`status`")
+    @Schema(description = "状态 1-已提交 2-预付成功 3-预付失败")
+    private Integer status;
+    @Schema(description = "状态")
+    private String statusLabel;
+
+    /**
+     * 创建人
+     */
+    @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;
+}

+ 13 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/KwpWalletCashService.java

@@ -0,0 +1,13 @@
+package com.sckw.payment.service;
+
+import com.sckw.payment.model.KwpWalletCash;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * @author xucaiqin
+ * @date 2026-03-26 14:30:45
+ */
+public interface KwpWalletCashService extends IService<KwpWalletCash> {
+
+
+}

+ 12 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/KwpWalletFreightService.java

@@ -0,0 +1,12 @@
+package com.sckw.payment.service;
+
+import com.sckw.payment.model.KwpWalletFreight;
+import com.baomidou.mybatisplus.extension.service.IService;
+    /**
+* @date 2026-03-26 14:31:42
+* @author xucaiqin
+*/
+public interface KwpWalletFreightService extends IService<KwpWalletFreight>{
+
+
+}

+ 12 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/KwpWalletPayService.java

@@ -0,0 +1,12 @@
+package com.sckw.payment.service;
+
+import com.sckw.payment.model.KwpWalletPay;
+import com.baomidou.mybatisplus.extension.service.IService;
+    /**
+* @date 2026-03-26 14:32:05
+* @author xucaiqin
+*/
+public interface KwpWalletPayService extends IService<KwpWalletPay>{
+
+
+}

+ 6 - 51
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/KwpWalletPrepayService.java

@@ -1,57 +1,12 @@
 package com.sckw.payment.service;
 
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.sckw.core.model.constant.NumberConstant;
-import com.sckw.core.model.constant.Global;
-import com.sckw.core.utils.IdWorker;
-import com.sckw.core.web.context.LoginUserHolder;
-import com.sckw.payment.dao.KwpWalletPrepayMapper;
 import com.sckw.payment.model.KwpWalletPrepay;
-import com.sckw.payment.model.constant.PrePayEnum;
-import lombok.RequiredArgsConstructor;
-import org.springframework.stereotype.Service;
-
-import java.time.LocalDateTime;
-import java.util.Objects;
-
-/**
- * @author xucaiqin
- * @date 2023-09-22 15:49:51
- */
-@Service
-@RequiredArgsConstructor
-public class KwpWalletPrepayService {
-
-    private final KwpWalletPrepayMapper kwpWalletPrepayMapper;
-
+import com.baomidou.mybatisplus.extension.service.IService;
     /**
-     * 保存预付订单
-     *
-     * @param orderNo
-     */
-    public void savePrepay(String orderNo, PrePayEnum prePayEnum) {
-        KwpWalletPrepay kwpWalletPrepay = new KwpWalletPrepay();
-        kwpWalletPrepay.setId(new IdWorker(NumberConstant.ONE).nextId());
-        kwpWalletPrepay.setOrderNo(orderNo);
-        kwpWalletPrepay.setAction(prePayEnum.getStatus());
-        kwpWalletPrepay.setRemark(prePayEnum.getDesc());
-        kwpWalletPrepay.setStatus(2);
-        kwpWalletPrepay.setCreateBy(LoginUserHolder.getUserId());
-        kwpWalletPrepay.setCreateTime(LocalDateTime.now());
-        kwpWalletPrepay.setUpdateBy(LoginUserHolder.getUserId());
-        kwpWalletPrepay.setUpdateTime(LocalDateTime.now());
-        kwpWalletPrepay.setDelFlag(Global.UN_DELETED);
-        kwpWalletPrepayMapper.insert(kwpWalletPrepay);
-    }
+* @date 2026-03-26 14:45:11
+* @author xucaiqin
+*/
+public interface KwpWalletPrepayService extends IService<KwpWalletPrepay>{
+
 
-    public Integer getAction(String orderNo) {
-        LambdaQueryWrapper<KwpWalletPrepay> wrapper = new LambdaQueryWrapper<>();
-        wrapper.eq(KwpWalletPrepay::getDelFlag, Global.UN_DELETED)
-                .eq(KwpWalletPrepay::getOrderNo, orderNo).last("limit 1");
-        KwpWalletPrepay kwpWalletPrepay = kwpWalletPrepayMapper.selectOne(wrapper);
-        if(Objects.nonNull(kwpWalletPrepay)){
-            return kwpWalletPrepay.getAction();
-        }
-        return null;
-    }
 }

+ 5 - 93
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/KwpWalletService.java

@@ -1,100 +1,12 @@
 package com.sckw.payment.service;
 
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.sckw.core.model.constant.NumberConstant;
-import com.sckw.core.model.constant.Global;
-import com.sckw.core.utils.DateTimeUtil;
-import com.sckw.core.utils.IdWorker;
-import com.sckw.core.web.context.LoginUserHolder;
-import com.sckw.payment.dao.KwpWalletMapper;
 import com.sckw.payment.model.KwpWallet;
-import com.sckw.redis.constant.RedisConstant;
-import lombok.RequiredArgsConstructor;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.data.redis.core.RedisTemplate;
-import org.springframework.stereotype.Service;
-
-import java.time.LocalDateTime;
-import java.util.Objects;
-
-/**
- * @author xucaiqin
- * @date 2023-10-07 08:49:45
- */
-@Service
-@RequiredArgsConstructor
-public class KwpWalletService {
-    private final KwpWalletMapper kwpWalletMapper;
-    private final RedisTemplate<String, Object> redisTemplate;
-
-
-    /**
-     * 更新或新增 相关操作
-     *
-     * @param kwpWallet
-     */
-    public void saveOrUpdate(KwpWallet kwpWallet) {
-        LambdaQueryWrapper<KwpWallet> wrapper = new LambdaQueryWrapper<>();
-        wrapper.eq(KwpWallet::getUid, kwpWallet.getUid())
-                .eq(KwpWallet::getFilter, kwpWallet.getFilter())
-                .eq(KwpWallet::getChannel, kwpWallet.getChannel())
-                .last("limit 1");
-        KwpWallet kwpWalletCheck = kwpWalletMapper.selectOne(wrapper);
-        if (Objects.nonNull(kwpWalletCheck)) {
-            kwpWalletCheck.setAction(kwpWallet.getAction());
-            kwpWalletCheck.setActionTime(kwpWallet.getActionTime());
-            kwpWalletCheck.setRemark(kwpWallet.getRemark());
-            kwpWalletCheck.setOrderNo(kwpWallet.getOrderNo());
-            kwpWalletCheck.setStatus(kwpWallet.getStatus());
-            kwpWalletCheck.setUpdateBy(LoginUserHolder.getUserId());
-            kwpWalletCheck.setUpdateTime(LocalDateTime.now());
-            kwpWalletMapper.updateById(kwpWalletCheck);
-            return;
-        }
-        kwpWallet.setId(new IdWorker(NumberConstant.ONE).nextId());
-        kwpWallet.setCreateBy(LoginUserHolder.getUserId());
-        kwpWallet.setCreateTime(LocalDateTime.now());
-        kwpWallet.setUpdateBy(LoginUserHolder.getUserId());
-        kwpWallet.setUpdateTime(LocalDateTime.now());
-        kwpWallet.setDelFlag(Global.UN_DELETED);
-        kwpWalletMapper.insert(kwpWallet);
-    }
-
-    public KwpWallet queryOne(String uid, String filter, String channel) {
-        LambdaQueryWrapper<KwpWallet> wrapper = new LambdaQueryWrapper<>();
-        wrapper.eq(KwpWallet::getUid, uid)
-                .eq(KwpWallet::getFilter, filter)
-                .eq(KwpWallet::getChannel, channel)
-                .last("limit 1");
-        return kwpWalletMapper.selectOne(wrapper);
-    }
-
-    /**
-     * 记录预付业务的更新时间
-     *
-     * @param uid
-     * @param filter
-     * @param channel
-     */
-    public void saveTime(String uid, String filter, String channel) {
-        redisTemplate.opsForValue().set(String.format(RedisConstant.WALLET_TIME, uid, filter, channel), DateTimeUtil.format(LocalDateTime.now()));
-    }
-
+import com.baomidou.mybatisplus.extension.service.IService;
     /**
-     * 获取预付记录的更新时间
-     *
-     * @param uid
-     * @param filter
-     * @param channel
-     * @return
-     */
-    public LocalDateTime queryTime(String uid, String filter, String channel) {
-        String time = (String) redisTemplate.opsForValue().get(String.format(RedisConstant.WALLET_TIME, uid, filter, channel));
-        if (StringUtils.isNotBlank(time)) {
-            return DateTimeUtil.parse(time);
-        }
-        return null;
-    }
+* @date 2026-03-26 14:33:23
+* @author xucaiqin
+*/
+public interface KwpWalletService extends IService<KwpWallet>{
 
 
 }

+ 12 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/KwpWalletSubService.java

@@ -0,0 +1,12 @@
+package com.sckw.payment.service;
+
+import com.sckw.payment.model.KwpWalletSub;
+import com.baomidou.mybatisplus.extension.service.IService;
+    /**
+* @date 2026-03-26 14:32:05
+* @author xucaiqin
+*/
+public interface KwpWalletSubService extends IService<KwpWalletSub>{
+
+
+}

+ 66 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/PayXwService.java

@@ -0,0 +1,66 @@
+package com.sckw.payment.service;
+
+import com.alibaba.fastjson2.JSONObject;
+import com.alibaba.fastjson2.TypeReference;
+import com.sckw.core.utils.OkHttpUtils;
+import com.sckw.payment.api.model.dto.common.R;
+import com.sckw.payment.model.constant.PayXwEnum;
+import com.sckw.payment.model.dto.wallet.WithdrawRes;
+import com.sckw.payment.model.dto.xw.WithdrawDto;
+import com.sckw.payment.model.vo.UserPara;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.cloud.context.config.annotation.RefreshScope;
+import org.springframework.stereotype.Service;
+
+/**
+ * 转发中台接口
+ *
+ * @author xucaiqin
+ * @date 2023-07-21 17:45:51
+ */
+@Service
+@Slf4j
+@RefreshScope
+public class PayXwService {
+    @Value("${xw.address}")
+    private String xwAddress;
+
+    private String jsonHttp(PayXwEnum payXwEnum, Object object) {
+        String para = object instanceof JSONObject jsonObject ? jsonObject.toJSONString() : JSONObject.toJSONString(object);
+        log.info("{}入参->{}", payXwEnum.getDesc(), para);
+        OkHttpUtils okHttpUtils = OkHttpUtils.builder().url(xwAddress + payXwEnum.getAddr());
+        okHttpUtils.addBodyJsonStr(para);
+        String sync;
+        try {
+            sync = okHttpUtils.post(true).sync();
+        } catch (Exception e) {
+            log.error("新网服务异常", e.getCause());
+            throw new RuntimeException("支付服务异常!");
+        }
+        log.info("{}返回值->{}", payXwEnum.getDesc(), sync);
+        return sync;
+    }
+
+    /**
+     * 创建用户
+     *
+     * @return
+     */
+    public Object beforeCreateUser(UserPara userPara) {
+        String sync = jsonHttp(PayXwEnum.BEFORE_CREATE, userPara);
+        return JSONObject.parseObject(sync, new TypeReference<>() {
+        });
+    }
+
+    /**
+     * 提现
+     *
+     * @return
+     */
+    public R<WithdrawRes> withDraw(WithdrawDto withdrawDto) {
+        String sync = jsonHttp(PayXwEnum.WITHDRAW_TAKE, withdrawDto);
+        return JSONObject.parseObject(sync, new TypeReference<>() {
+        });
+    }
+}

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 117 - 1626
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/WalletService.java


+ 15 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/impl/KwpWalletCashServiceImpl.java

@@ -0,0 +1,15 @@
+package com.sckw.payment.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sckw.payment.dao.KwpWalletCashMapper;
+import com.sckw.payment.model.KwpWalletCash;
+import com.sckw.payment.service.KwpWalletCashService;
+import org.springframework.stereotype.Service;
+/**
+* @date 2026-03-26 14:30:45
+* @author xucaiqin
+*/
+@Service
+public class KwpWalletCashServiceImpl extends ServiceImpl<KwpWalletCashMapper, KwpWalletCash> implements KwpWalletCashService{
+
+}

+ 17 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/impl/KwpWalletFreightServiceImpl.java

@@ -0,0 +1,17 @@
+package com.sckw.payment.service.impl;
+
+import org.springframework.stereotype.Service;
+import jakarta.annotation.Resource;
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sckw.payment.model.KwpWalletFreight;
+import com.sckw.payment.dao.KwpWalletFreightMapper;
+import com.sckw.payment.service.KwpWalletFreightService;
+/**
+* @date 2026-03-26 14:31:42
+* @author xucaiqin
+*/
+@Service
+public class KwpWalletFreightServiceImpl extends ServiceImpl<KwpWalletFreightMapper, KwpWalletFreight> implements KwpWalletFreightService{
+
+}

+ 17 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/impl/KwpWalletPayServiceImpl.java

@@ -0,0 +1,17 @@
+package com.sckw.payment.service.impl;
+
+import org.springframework.stereotype.Service;
+import jakarta.annotation.Resource;
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sckw.payment.model.KwpWalletPay;
+import com.sckw.payment.dao.KwpWalletPayMapper;
+import com.sckw.payment.service.KwpWalletPayService;
+/**
+* @date 2026-03-26 14:32:05
+* @author xucaiqin
+*/
+@Service
+public class KwpWalletPayServiceImpl extends ServiceImpl<KwpWalletPayMapper, KwpWalletPay> implements KwpWalletPayService{
+
+}

+ 16 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/impl/KwpWalletPrepayServiceImpl.java

@@ -0,0 +1,16 @@
+package com.sckw.payment.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sckw.payment.dao.KwpWalletPrepayMapper;
+import com.sckw.payment.model.KwpWalletPrepay;
+import com.sckw.payment.service.KwpWalletPrepayService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author xucaiqin
+ * @date 2026-03-26 14:32:05
+ */
+@Service
+public class KwpWalletPrepayServiceImpl extends ServiceImpl<KwpWalletPrepayMapper, KwpWalletPrepay> implements KwpWalletPrepayService {
+
+}

+ 15 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/impl/KwpWalletServiceImpl.java

@@ -0,0 +1,15 @@
+package com.sckw.payment.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sckw.payment.dao.KwpWalletMapper;
+import com.sckw.payment.model.KwpWallet;
+import com.sckw.payment.service.KwpWalletService;
+import org.springframework.stereotype.Service;
+/**
+* @date 2026-03-26 14:33:04
+* @author xucaiqin
+*/
+@Service
+public class KwpWalletServiceImpl extends ServiceImpl<KwpWalletMapper, KwpWallet> implements KwpWalletService{
+
+}

+ 15 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/impl/KwpWalletSubServiceImpl.java

@@ -0,0 +1,15 @@
+package com.sckw.payment.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sckw.payment.dao.KwpWalletSubMapper;
+import com.sckw.payment.model.KwpWalletSub;
+import com.sckw.payment.service.KwpWalletSubService;
+import org.springframework.stereotype.Service;
+/**
+* @date 2026-03-26 14:32:05
+* @author xucaiqin
+*/
+@Service
+public class KwpWalletSubServiceImpl extends ServiceImpl<KwpWalletSubMapper, KwpWalletSub> implements KwpWalletSubService{
+
+}

+ 40 - 0
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/utils/MoneyUtil.java

@@ -0,0 +1,40 @@
+package com.sckw.payment.utils;
+
+import com.sckw.core.model.constant.NumberConstant;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.util.Objects;
+
+/**
+ * @author xucaiqin
+ * @date 2026-03-30 10:10:38
+ */
+public class MoneyUtil {
+    /**
+     * 元转分
+     *
+     * @param big
+     * @return
+     */
+    public static Long bigMoney(BigDecimal big) {
+        if (Objects.isNull(big)) {
+            return 0L;
+        }
+        BigDecimal divide = big.multiply(new BigDecimal("100"));
+        return divide.longValueExact();
+    }
+
+    /**
+     * 分转元
+     *
+     * @param big
+     * @return
+     */
+    public static BigDecimal smallMoney(Long big) {
+        if (Objects.isNull(big)) {
+            return NumberConstant.ZERO_TWO;
+        }
+        return new BigDecimal(big).divide(new BigDecimal("100"), 2, RoundingMode.HALF_UP);
+    }
+}

+ 28 - 0
sckw-modules/sckw-payment/src/main/resources/mapper/KwpWalletCashMapper.xml

@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.sckw.payment.dao.KwpWalletCashMapper">
+  <resultMap id="BaseResultMap" type="com.sckw.payment.model.KwpWalletCash">
+    <!--@mbg.generated-->
+    <!--@Table kwp_wallet_cash-->
+    <id column="id" jdbcType="BIGINT" property="id" />
+    <result column="from_ent" jdbcType="BIGINT" property="fromEnt" />
+    <result column="to_ent" jdbcType="BIGINT" property="toEnt" />
+    <result column="order_no" jdbcType="VARCHAR" property="orderNo" />
+    <result column="action" jdbcType="BOOLEAN" property="action" />
+    <result column="amount" jdbcType="INTEGER" property="amount" />
+    <result column="cash_amount" jdbcType="INTEGER" property="cashAmount" />
+    <result column="img" jdbcType="VARCHAR" property="img" />
+    <result column="remark" jdbcType="VARCHAR" property="remark" />
+    <result column="status" jdbcType="INTEGER" property="status" />
+    <result column="create_by" jdbcType="BIGINT" property="createBy" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="update_by" jdbcType="BIGINT" property="updateBy" />
+    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
+    <result column="del_flag" jdbcType="INTEGER" property="delFlag" />
+  </resultMap>
+  <sql id="Base_Column_List">
+    <!--@mbg.generated-->
+    id, from_ent, to_ent, order_no, `action`, amount, cash_amount, img, remark, `status`, 
+    create_by, create_time, update_by, update_time, del_flag
+  </sql>
+</mapper>

+ 30 - 0
sckw-modules/sckw-payment/src/main/resources/mapper/KwpWalletFreightMapper.xml

@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.sckw.payment.dao.KwpWalletFreightMapper">
+  <resultMap id="BaseResultMap" type="com.sckw.payment.model.KwpWalletFreight">
+    <!--@mbg.generated-->
+    <!--@Table kwp_wallet_freight-->
+    <id column="id" jdbcType="BIGINT" property="id" />
+    <result column="from_ent" jdbcType="BIGINT" property="fromEnt" />
+    <result column="to_ent" jdbcType="BIGINT" property="toEnt" />
+    <result column="order_no" jdbcType="VARCHAR" property="orderNo" />
+    <result column="action" jdbcType="BOOLEAN" property="action" />
+    <result column="money" jdbcType="INTEGER" property="money" />
+    <result column="freight_amount" jdbcType="INTEGER" property="freightAmount" />
+    <result column="processing_amount" jdbcType="INTEGER" property="processingAmount" />
+    <result column="paying_amount" jdbcType="INTEGER" property="payingAmount" />
+    <result column="remark" jdbcType="VARCHAR" property="remark" />
+    <result column="status" jdbcType="INTEGER" property="status" />
+    <result column="create_by" jdbcType="BIGINT" property="createBy" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="update_by" jdbcType="BIGINT" property="updateBy" />
+    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
+    <result column="del_flag" jdbcType="INTEGER" property="delFlag" />
+  </resultMap>
+  <sql id="Base_Column_List">
+    <!--@mbg.generated-->
+    id, from_ent, to_ent, order_no, `action`, money, freight_amount, processing_amount, 
+    paying_amount, remark, `status`, create_by, create_time, update_by, update_time, 
+    del_flag
+  </sql>
+</mapper>

+ 12 - 7
sckw-modules/sckw-payment/src/main/resources/mapper/KwpWalletMapper.xml

@@ -5,14 +5,18 @@
     <!--@mbg.generated-->
     <!--@Table kwp_wallet-->
     <id column="id" jdbcType="BIGINT" property="id" />
+    <result column="ent_id" jdbcType="BIGINT" property="entId" />
     <result column="uid" jdbcType="VARCHAR" property="uid" />
-    <result column="filter" jdbcType="VARCHAR" property="filter" />
+    <result column="ent_type" jdbcType="INTEGER" property="entType" />
+    <result column="cash_amount" jdbcType="INTEGER" property="cashAmount" />
+    <result column="prepay_amount" jdbcType="INTEGER" property="prepayAmount" />
+    <result column="dealing_amount" jdbcType="INTEGER" property="dealingAmount" />
+    <result column="freight_amount" jdbcType="INTEGER" property="freightAmount" />
+    <result column="processing_amount" jdbcType="INTEGER" property="processingAmount" />
+    <result column="paying_amount" jdbcType="INTEGER" property="payingAmount" />
     <result column="channel" jdbcType="VARCHAR" property="channel" />
-    <result column="action" jdbcType="VARCHAR" property="action" />
-    <result column="action_time" jdbcType="TIMESTAMP" property="actionTime" />
-    <result column="remark" jdbcType="VARCHAR" property="remark" />
-    <result column="order_no" jdbcType="VARCHAR" property="orderNo" />
     <result column="status" jdbcType="INTEGER" property="status" />
+    <result column="remark" jdbcType="VARCHAR" property="remark" />
     <result column="create_by" jdbcType="BIGINT" property="createBy" />
     <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
     <result column="update_by" jdbcType="BIGINT" property="updateBy" />
@@ -21,7 +25,8 @@
   </resultMap>
   <sql id="Base_Column_List">
     <!--@mbg.generated-->
-    id, `uid`, `filter`, channel, `action`, action_time, remark, order_no, `status`, 
-    create_by, create_time, update_by, update_time, del_flag
+    id, ent_id, `uid`, ent_type, cash_amount, prepay_amount, dealing_amount, freight_amount, 
+    processing_amount, paying_amount, channel, `status`, remark, create_by, create_time, 
+    update_by, update_time, del_flag
   </sql>
 </mapper>

+ 28 - 0
sckw-modules/sckw-payment/src/main/resources/mapper/KwpWalletPayMapper.xml

@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.sckw.payment.dao.KwpWalletPayMapper">
+  <resultMap id="BaseResultMap" type="com.sckw.payment.model.KwpWalletPay">
+    <!--@mbg.generated-->
+    <!--@Table kwp_wallet_pay-->
+    <id column="id" jdbcType="BIGINT" property="id" />
+    <result column="from_ent" jdbcType="BIGINT" property="fromEnt" />
+    <result column="to_ent" jdbcType="BIGINT" property="toEnt" />
+    <result column="order_no" jdbcType="VARCHAR" property="orderNo" />
+    <result column="action" jdbcType="BOOLEAN" property="action" />
+    <result column="apply_amount" jdbcType="INTEGER" property="applyAmount" />
+    <result column="pay_amount" jdbcType="INTEGER" property="payAmount" />
+    <result column="img" jdbcType="VARCHAR" property="img" />
+    <result column="remark" jdbcType="VARCHAR" property="remark" />
+    <result column="status" jdbcType="INTEGER" property="status" />
+    <result column="create_by" jdbcType="BIGINT" property="createBy" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="update_by" jdbcType="BIGINT" property="updateBy" />
+    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
+    <result column="del_flag" jdbcType="INTEGER" property="delFlag" />
+  </resultMap>
+  <sql id="Base_Column_List">
+    <!--@mbg.generated-->
+    id, from_ent, to_ent, order_no, `action`, apply_amount, pay_amount, img, remark, 
+    `status`, create_by, create_time, update_by, update_time, del_flag
+  </sql>
+</mapper>

+ 7 - 2
sckw-modules/sckw-payment/src/main/resources/mapper/KwpWalletPrepayMapper.xml

@@ -5,8 +5,13 @@
     <!--@mbg.generated-->
     <!--@Table kwp_wallet_prepay-->
     <id column="id" jdbcType="BIGINT" property="id" />
+    <result column="uid" jdbcType="BIGINT" property="uid" />
+    <result column="filter" jdbcType="BIGINT" property="filter" />
     <result column="order_no" jdbcType="VARCHAR" property="orderNo" />
     <result column="action" jdbcType="BOOLEAN" property="action" />
+    <result column="money" jdbcType="INTEGER" property="money" />
+    <result column="prepay_amount" jdbcType="INTEGER" property="prepayAmount" />
+    <result column="deal_amount" jdbcType="INTEGER" property="dealAmount" />
     <result column="remark" jdbcType="VARCHAR" property="remark" />
     <result column="status" jdbcType="INTEGER" property="status" />
     <result column="create_by" jdbcType="BIGINT" property="createBy" />
@@ -17,7 +22,7 @@
   </resultMap>
   <sql id="Base_Column_List">
     <!--@mbg.generated-->
-    id, order_no, `action`, remark, `status`, create_by, create_time, update_by, update_time, 
-    del_flag
+    id, `uid`, `filter`, order_no, `action`, money, prepay_amount, deal_amount, remark, 
+    `status`, create_by, create_time, update_by, update_time, del_flag
   </sql>
 </mapper>

+ 30 - 0
sckw-modules/sckw-payment/src/main/resources/mapper/KwpWalletSubMapper.xml

@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.sckw.payment.dao.KwpWalletSubMapper">
+  <resultMap id="BaseResultMap" type="com.sckw.payment.model.KwpWalletSub">
+    <!--@mbg.generated-->
+    <!--@Table kwp_wallet_sub-->
+    <id column="id" jdbcType="BIGINT" property="id" />
+    <result column="from_ent" jdbcType="BIGINT" property="fromEnt" />
+    <result column="to_ent" jdbcType="BIGINT" property="toEnt" />
+    <result column="cash_amount" jdbcType="INTEGER" property="cashAmount" />
+    <result column="prepay_amount" jdbcType="INTEGER" property="prepayAmount" />
+    <result column="dealing_amount" jdbcType="INTEGER" property="dealingAmount" />
+    <result column="freight_amount" jdbcType="INTEGER" property="freightAmount" />
+    <result column="processing_amount" jdbcType="INTEGER" property="processingAmount" />
+    <result column="paying_amount" jdbcType="INTEGER" property="payingAmount" />
+    <result column="channel" jdbcType="VARCHAR" property="channel" />
+    <result column="remark" jdbcType="VARCHAR" property="remark" />
+    <result column="create_by" jdbcType="BIGINT" property="createBy" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="update_by" jdbcType="BIGINT" property="updateBy" />
+    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
+    <result column="del_flag" jdbcType="INTEGER" property="delFlag" />
+  </resultMap>
+  <sql id="Base_Column_List">
+    <!--@mbg.generated-->
+    id, from_ent, to_ent, cash_amount, prepay_amount, dealing_amount, freight_amount, 
+    processing_amount, paying_amount, channel, remark, create_by, create_time, update_by, 
+    update_time, del_flag
+  </sql>
+</mapper>

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels