Browse Source

服务费钱包模型

donglang 12 hours ago
parent
commit
b76c984542

+ 1 - 1
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/controller/ParkingChangeStrategyController.java

@@ -20,7 +20,7 @@ import java.util.List;
 /**
  * Author: donglang
  * Time: 2026-01-05
- * Des: 铲车司机Controller
+ * Des: 收费策略Controller
  * Version: 1.0
  */
 

+ 101 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/controller/ParkingWalletFeeController.java

@@ -0,0 +1,101 @@
+package com.sckw.transport.controller;
+
+
+import com.sckw.core.web.response.BaseResult;
+import com.sckw.core.web.response.result.PageDataResult;
+import com.sckw.transport.model.ParkingChangeStrategySaveParam;
+import com.sckw.transport.model.param.ParkingChangeStrategyQueryParam;
+import com.sckw.transport.model.param.ParkingChangeStrategyResp;
+import com.sckw.transport.model.param.ParkingChangeStrategyUnitResp;
+import com.sckw.transport.model.param.ParkingChangeStrategyUnitSaveParam;
+import com.sckw.transport.service.ParkingChangeStrategyService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.validation.Valid;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * Author: donglang
+ * Time: 2026-01-05
+ * Des: 服务费
+ * Version: 1.0
+ */
+
+@RestController
+@RequestMapping("/parking/wallet")
+@RequiredArgsConstructor
+@Tag(name = "服务费接口", description = "服务费接口")
+public class ParkingWalletFeeController {
+
+    private final ParkingChangeStrategyService parkingChangeStrategyService;
+
+    /**
+     * 分页查询门卫订单
+     *
+     * @param param
+     * @return
+     */
+    @Operation(summary = "分页查询收费策略", description = "分页查询收费策略")
+    @PostMapping("/pageQueryChangeStrategy")
+    public BaseResult<PageDataResult<ParkingChangeStrategyResp>> pageQueryChangeStrategy(@RequestBody @Valid ParkingChangeStrategyQueryParam param){
+        PageDataResult<ParkingChangeStrategyResp> gatekeeperOrderList = parkingChangeStrategyService.pageQueryChangeStrategy(param);
+        return BaseResult.success(gatekeeperOrderList);
+    }
+
+    /**
+     * 保存收费策略
+     *
+     * @param param
+     * @return
+     */
+    @Operation(summary = "保存收费策略", description = "保存收费策略")
+    @PostMapping("/saveChangeStrategy")
+    public BaseResult saveChangeStrategy(@RequestBody @Valid ParkingChangeStrategySaveParam param){
+        parkingChangeStrategyService.saveChangeStrategy(param);
+        return BaseResult.success();
+    }
+
+    /**
+     * 删除收费策略
+     *
+     * @param id
+     * @return
+     */
+    @Operation(summary = "删除收费策略", description = "删除收费策略")
+    @PostMapping("/deleteChangeStrategy")
+    public BaseResult deleteChangeStrategy(@RequestParam Long id){
+        parkingChangeStrategyService.deleteChangeStrategy(id);
+        return BaseResult.success();
+    }
+
+    /**
+     * 查询单位分配
+     *
+     * @param id
+     * @return
+     */
+    @Operation(summary = "查询单位分配", description = "查询单位分配")
+    @PostMapping("/queryChangeStrategyEnt")
+    public BaseResult<List<ParkingChangeStrategyUnitResp>> queryChangeStrategyEnt(@RequestParam Long id){
+        List<ParkingChangeStrategyUnitResp> changeStrategyUnitRespList = parkingChangeStrategyService.queryChangeStrategyEnt(id);
+        return BaseResult.success(changeStrategyUnitRespList);
+    }
+
+    /**
+     * 保存单位分配
+     *
+     * @param param
+     * @return
+     */
+    @Operation(summary = "保存单位分配", description = "保存单位分配")
+    @PostMapping("/saveChangeStrategyEnt")
+    public BaseResult saveChangeStrategyEnt(@RequestBody @Valid ParkingChangeStrategyUnitSaveParam param){
+        parkingChangeStrategyService.saveChangeStrategyEnt(param);
+        return BaseResult.success();
+    }
+
+
+}

+ 16 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/dao/KwtParkingWalletFeeBalanceMapper.java

@@ -0,0 +1,16 @@
+package com.sckw.transport.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.sckw.transport.model.KwtParkingWalletFeeBalance;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @author zk
+ * @desc 门卫车辆订单
+ * @date 2026/01/06
+ */
+@Mapper
+public interface KwtParkingWalletFeeBalanceMapper extends BaseMapper<KwtParkingWalletFeeBalance> {
+
+
+}

+ 17 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/dao/KwtParkingWalletFeeMapper.java

@@ -0,0 +1,17 @@
+package com.sckw.transport.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.sckw.transport.model.KwtParkingChargeStrategy;
+import com.sckw.transport.model.KwtParkingWalletFee;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @author zk
+ * @desc 门卫车辆订单
+ * @date 2026/01/06
+ */
+@Mapper
+public interface KwtParkingWalletFeeMapper extends BaseMapper<KwtParkingWalletFee> {
+
+
+}

+ 73 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/KwtParkingWalletFee.java

@@ -0,0 +1,73 @@
+package com.sckw.transport.model;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * @author lfdc
+ * @description 服务费
+ * @date 2023-06-26 16:06:12
+ */
+@Data
+@TableName("kwt_parking_wallet_fee")
+public class KwtParkingWalletFee implements Serializable {
+
+    /**
+     * 主键
+     */
+    private Long id;
+
+    /**
+     * 采购商企业id
+     */
+    private Long proEntId;
+
+    /**
+     * 服务费余额
+     */
+    private BigDecimal serviceFeeBalance;
+
+    /**
+     * 履约中金额
+     */
+    private BigDecimal tradingAmount;
+
+    /**
+     * 凭证图片
+     */
+    private String voucherUrl;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 创建人
+     */
+    private Long createBy;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+    /**
+     * 创建人更新人
+     */
+    private Long updateBy;
+
+    /**
+     * 更新时间
+     */
+    private Date updateTime;
+
+    /**
+     * 是否删除(0未删除,1删除)
+     */
+    private Integer delFlag;
+}

+ 83 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/KwtParkingWalletFeeBalance.java

@@ -0,0 +1,83 @@
+package com.sckw.transport.model;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * @author lfdc
+ * @description 服务费明细
+ * @date 2023-06-26 16:06:12
+ */
+@Data
+@TableName("kwt_parking_wallet_fee_balance")
+public class KwtParkingWalletFeeBalance implements Serializable {
+
+    /**
+     * 主键
+     */
+    private Long id;
+
+    /**
+     * 关联订单编号
+     */
+    private String orderNo;
+
+    /**
+     * 采购商企业id
+     */
+    private Long proEntId;
+
+    /**
+     * 交易类型 2-预付 3-收益 4-冻结 5-解冻 6-消费 9-人工录入
+     */
+    private Integer tradeType;
+
+    /**
+     * 交易金额
+     */
+    private BigDecimal tradeAmount;
+
+    /**
+     * 服务费余额
+     */
+    private BigDecimal serviceFeeBalance;
+
+    /**
+     * 履约中金额
+     */
+    private BigDecimal tradingAmount;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 创建人
+     */
+    private Long createBy;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+    /**
+     * 创建人更新人
+     */
+    private Long updateBy;
+
+    /**
+     * 更新时间
+     */
+    private Date updateTime;
+
+    /**
+     * 是否删除(0未删除,1删除)
+     */
+    private Integer delFlag;
+}

+ 1 - 1
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/repository/KwParkingChangeStrategyRepository.java → sckw-modules/sckw-transport/src/main/java/com/sckw/transport/repository/KwtParkingChangeStrategyRepository.java

@@ -16,7 +16,7 @@ import java.util.List;
  */
 
 @Repository
-public class KwParkingChangeStrategyRepository extends ServiceImpl<KwtParkingChangeStrategyMapper, KwtParkingChargeStrategy> {
+public class KwtParkingChangeStrategyRepository extends ServiceImpl<KwtParkingChangeStrategyMapper, KwtParkingChargeStrategy> {
 
 
     public List<KwtParkingChargeStrategy> queryParkingChangeStrategy() {

+ 1 - 1
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/repository/KwParkingChangeStrategyUnitRepository.java → sckw-modules/sckw-transport/src/main/java/com/sckw/transport/repository/KwtParkingChangeStrategyUnitRepository.java

@@ -16,7 +16,7 @@ import java.util.List;
  */
 
 @Repository
-public class KwParkingChangeStrategyUnitRepository extends ServiceImpl<KwtParkingChangeStrategyUnitMapper, KwtParkingChargeStrategyUnit> {
+public class KwtParkingChangeStrategyUnitRepository extends ServiceImpl<KwtParkingChangeStrategyUnitMapper, KwtParkingChargeStrategyUnit> {
 
 
     public List<KwtParkingChargeStrategyUnit> queryByStrategyId(Long id) {

+ 31 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/repository/KwtParkingWalletFeeBalanceRepository.java

@@ -0,0 +1,31 @@
+package com.sckw.transport.repository;
+
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sckw.transport.dao.KwtParkingChangeStrategyUnitMapper;
+import com.sckw.transport.dao.KwtParkingWalletFeeBalanceMapper;
+import com.sckw.transport.model.KwtParkingChargeStrategy;
+import com.sckw.transport.model.KwtParkingChargeStrategyUnit;
+import com.sckw.transport.model.KwtParkingWalletFeeBalance;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+/**
+ * @Author: 门卫车辆订单
+ * @CreateTime: 2025-10-12
+ * @Description:
+ * @Version: 1.0
+ */
+
+@Repository
+public class KwtParkingWalletFeeBalanceRepository extends ServiceImpl<KwtParkingWalletFeeBalanceMapper, KwtParkingWalletFeeBalance> {
+
+
+    public List<KwtParkingWalletFeeBalance> queryParkingChangeStrategy() {
+        return list(
+                Wrappers.<KwtParkingWalletFeeBalance>lambdaQuery()
+                        .orderByDesc(KwtParkingWalletFeeBalance::getId));
+    }
+
+}

+ 28 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/repository/KwtParkingWalletFeeRepository.java

@@ -0,0 +1,28 @@
+package com.sckw.transport.repository;
+
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sckw.transport.dao.KwtParkingWalletFeeMapper;
+import com.sckw.transport.model.KwtParkingWalletFee;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+/**
+ * @Author: 门卫车辆订单
+ * @CreateTime: 2025-10-12
+ * @Description:
+ * @Version: 1.0
+ */
+
+@Repository
+public class KwtParkingWalletFeeRepository extends ServiceImpl<KwtParkingWalletFeeMapper, KwtParkingWalletFee> {
+
+
+    public List<KwtParkingWalletFee> queryParkingChangeStrategy() {
+        return list(
+                Wrappers.<KwtParkingWalletFee>lambdaQuery()
+                        .orderByDesc(KwtParkingWalletFee::getId));
+    }
+
+}

+ 4 - 4
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/ParkingChangeStrategyService.java

@@ -21,8 +21,8 @@ import com.sckw.transport.model.param.ParkingChangeStrategyQueryParam;
 import com.sckw.transport.model.param.ParkingChangeStrategyResp;
 import com.sckw.transport.model.param.ParkingChangeStrategyUnitResp;
 import com.sckw.transport.model.param.ParkingChangeStrategyUnitSaveParam;
-import com.sckw.transport.repository.KwParkingChangeStrategyRepository;
-import com.sckw.transport.repository.KwParkingChangeStrategyUnitRepository;
+import com.sckw.transport.repository.KwtParkingChangeStrategyRepository;
+import com.sckw.transport.repository.KwtParkingChangeStrategyUnitRepository;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.dubbo.config.annotation.DubboReference;
@@ -46,8 +46,8 @@ import java.util.stream.Collectors;
 public class ParkingChangeStrategyService {
 
 
-    private final KwParkingChangeStrategyRepository parkingChangeStrategyRepository;
-    private final KwParkingChangeStrategyUnitRepository parkingChangeStrategyUnitRepository;
+    private final KwtParkingChangeStrategyRepository parkingChangeStrategyRepository;
+    private final KwtParkingChangeStrategyUnitRepository parkingChangeStrategyUnitRepository;
 
     @DubboReference(version = "1.0.0", group = "design", check = false, timeout = 6000)
    RemoteSystemService remoteSystemService;

+ 33 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/ParkingWalletFeeService.java

@@ -0,0 +1,33 @@
+package com.sckw.transport.service;
+
+
+import com.sckw.system.api.RemoteSystemService;
+import com.sckw.transport.repository.KwtParkingWalletFeeBalanceRepository;
+import com.sckw.transport.repository.KwtParkingWalletFeeRepository;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.dubbo.config.annotation.DubboReference;
+import org.springframework.stereotype.Service;
+
+/**
+ * Author: donglang
+ * Time: 2026-01-05
+ * Des: 收费策略 Service
+ * Version: 1.0
+ */
+
+@Slf4j
+@Service
+@RequiredArgsConstructor
+public class ParkingWalletFeeService {
+
+
+    private final KwtParkingWalletFeeRepository parkingWalletFeeRepository;
+    private final KwtParkingWalletFeeBalanceRepository parkingWalletFeeBalanceRepository;
+
+    @DubboReference(version = "1.0.0", group = "design", check = false, timeout = 6000)
+   RemoteSystemService remoteSystemService;
+
+
+
+}

+ 33 - 0
sql/2026/01/2026_01_06_donglang_create.sql

@@ -126,3 +126,36 @@ create table kwt_parking_charge_strategy_unit
     PRIMARY KEY (`id`) USING BTREE
 ) comment '收费策略企业关联表';
 
+CREATE TABLE `kwt_parking_wallet_fee` (
+                                  `id`                            bigint          NOT NULL AUTO_INCREMENT COMMENT '主键',
+                                  `pro_ent_id`                    bigint          NOT NULL DEFAULT '-1' COMMENT '采购商企业id',
+                                  `service_fee_balance`           decimal(16,2)   NOT NULL DEFAULT '0.00' COMMENT '服务费余额',
+                                  `trading_amount`                decimal(16,2)   NOT NULL DEFAULT '0.00' COMMENT '履约中金额',
+                                  `voucher_url`                   longtext        CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT '凭证图片',
+                                  `remark`                        varchar(20)     DEFAULT NULL DEFAULT '' COMMENT '备注',
+                                  del_flag                        int             NOT NULL DEFAULT '0' COMMENT '是否删除(0未删除,1删除)',
+                                  create_time                     datetime        NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+                                  update_time                     datetime        NOT NULL DEFAULT CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP COMMENT '更新时间',
+                                  create_user                     bigint          NOT NULL DEFAULT '-1' COMMENT '创建人',
+                                  update_user                     bigint          NOT NULL DEFAULT '-1' COMMENT '更新人',
+                                  PRIMARY KEY (`id`) USING BTREE
+) comment '预存服务费';
+
+
+CREATE TABLE `kwt_parking_wallet_fee_balance` (
+                                          `id`                            bigint          NOT NULL AUTO_INCREMENT COMMENT '主键',
+                                          `order_no`                      varchar(32)     CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '关联订单编号',
+                                          `pro_ent_id`                    bigint          NOT NULL DEFAULT '-1' COMMENT '采购商企业id',
+                                          `trade_type`                    int             NOT NULL DEFAULT '0' COMMENT '交易类型 2-预付 3-收益 4-冻结 5-解冻 6-消费 9-人工录入',
+                                          `trade_amount`                  decimal(16,2)   NOT NULL DEFAULT '0.00' COMMENT '交易金额',
+                                          `service_fee_balance`           decimal(16,2)   NOT NULL DEFAULT '0.00' COMMENT '服务费余额',
+                                          `trading_amount`                decimal(16,2)   NOT NULL DEFAULT '0.00' COMMENT '履约中金额',
+                                          `remark`                        varchar(20)     DEFAULT NULL DEFAULT '' COMMENT '备注',
+                                          del_flag                        int             NOT NULL DEFAULT '0' COMMENT '是否删除(0未删除,1删除)',
+                                          create_time                     datetime        NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+                                          update_time                     datetime        NOT NULL DEFAULT CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP COMMENT '更新时间',
+                                          create_user                     bigint          NOT NULL DEFAULT '-1' COMMENT '创建人',
+                                          update_user                     bigint          NOT NULL DEFAULT '-1' COMMENT '更新人',
+                                          PRIMARY KEY (`id`) USING BTREE
+) comment '预存服务费明细';
+