mac 2 лет назад
Родитель
Сommit
e8693301b7
16 измененных файлов с 366 добавлено и 61 удалено
  1. 3 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/service/user/impl/KxsLeaderAmountLogServiceImpl.java
  2. 3 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/model/KxsLeaderAmountLog.java
  3. 3 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/model/KxsPartnerAmountLog.java
  4. 40 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/model/old/KxsMain.java
  5. 27 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/admin/totalDebt/TotalDebtListVO.java
  6. 38 0
      kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/constant/enums/UserVariationTypeEnum.java
  7. 3 3
      kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/controller/admin/SysTotalDebtController.java
  8. 12 0
      kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/mapper/KxsTotalDebtMapper.java
  9. 40 0
      kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/mapper/old/KxsMainServerMapper.java
  10. 36 0
      kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/mapper/old/KxsOpServerMapper.java
  11. 14 2
      kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/service/KxsTotalDebtService.java
  12. 93 53
      kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/service/impl/KxsTotalDebtServiceImpl.java
  13. 3 3
      kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/task/KxsUserTaskJob.java
  14. 19 0
      kxs-user/kxs-user-biz/src/main/resources/mapper/KxsMainMapper.xml
  15. 21 0
      kxs-user/kxs-user-biz/src/main/resources/mapper/KxsOpMapper.xml
  16. 11 0
      kxs-user/kxs-user-biz/src/main/resources/mapper/KxsTotalDebtMapper.xml

+ 3 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/user/impl/KxsLeaderAmountLogServiceImpl.java

@@ -50,6 +50,9 @@ public class KxsLeaderAmountLogServiceImpl extends ServiceImpl<KxsLeaderAmountLo
                 case "UserId":
                     leaderAmountLog.setUserId(Integer.parseInt(validFieldDataMap.get(field).toString()));
                     break;
+                case "SourceUserId":
+                    leaderAmountLog.setSourceUserId(Integer.parseInt(validFieldDataMap.get(field).toString()));
+                    break;
                 case "Sort":
                     leaderAmountLog.setVariationType(Integer.parseInt(validFieldDataMap.get(field).toString()));
                     break;

+ 3 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/model/KxsLeaderAmountLog.java

@@ -120,6 +120,9 @@ public class KxsLeaderAmountLog extends Model<KxsLeaderAmountLog> implements Ser
 
     /**
      * 金额类型
+     * 盟主储蓄金增减单=11
+     * 可提现余额增减单=12
+     * 盟主储蓄金减少可提现余额增加=13
      */
     @Schema(description = "金额类型")
     private Integer variationType;

+ 3 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/model/KxsPartnerAmountLog.java

@@ -97,6 +97,9 @@ public class KxsPartnerAmountLog extends Model<KxsPartnerAmountLog> implements S
 
     /**
      * 金额类型
+     * 可提现余额增减=0
+     * 可使用余额增减=1
+     * 关键分仓额度增减=2
      */
     @Schema(description = "金额类型")
     private Integer variationType;

+ 40 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/model/old/KxsMain.java

@@ -0,0 +1,40 @@
+package com.kxs.user.api.model.old;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * 客小爽老库
+ *
+ * @author 系统
+ * @since 2024-02-22 15:39:26
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class KxsMain extends Model<KxsMain> implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 1L;
+    
+    /**
+     * 主键ID
+     */
+    @Schema(description = "主键ID")
+    @TableId(type = IdType.AUTO)
+    private Integer id;
+
+
+
+}
+

+ 27 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/admin/totalDebt/TotalDebtListVO.java

@@ -0,0 +1,27 @@
+package com.kxs.user.api.vo.admin.totalDebt;
+
+import com.kxs.user.api.model.KxsTotalDebt;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Builder;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+/**
+ * 总欠款明细 VO
+ *
+ * @author 没秃顶的码农
+ * @date 2024-03-22
+ */
+@Data
+@Schema(description = "总欠款明细")
+@Builder
+public class TotalDebtListVO extends KxsTotalDebt implements Serializable {
+
+    private String username;
+
+    private String userCode;
+
+
+}

+ 38 - 0
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/constant/enums/UserVariationTypeEnum.java

@@ -0,0 +1,38 @@
+package com.kxs.user.biz.constant.enums;
+
+import lombok.Getter;
+import lombok.RequiredArgsConstructor;
+
+/**
+ * 交易类型枚举
+ *
+ * @author 没秃顶的码农
+ * @date 2024-03-25
+ */
+@Getter
+@RequiredArgsConstructor
+public enum UserVariationTypeEnum {
+
+    /**
+     * 盟主金额变动记录类型
+     */
+    LEADER_SAVINGS(11, "盟主储蓄金增减单"),
+    LEADER_WITHDRAW_BALANCE(12, "可提现余额增减单"),
+    LEADER_SAVINGS_WITHDRAW (13, "盟主储蓄金减少可提现余额增加"),
+    /**
+     * 合伙人进入变动类型
+     */
+    PARTNER_WITHDRAW_BALANCE(0, "可提现余额增减单"),
+    PARTNER_USE_BALANCE(1, "可使用余额增减"),
+    PARTNER_STORE_AMOUNT (2, "关键分仓额度增减");
+
+    /**
+     * 类型
+     */
+    private final Integer type;
+
+    /**
+     * 描述
+     */
+    private final String description;
+}

+ 3 - 3
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/controller/admin/SysTotalDebtController.java

@@ -42,13 +42,13 @@ public class SysTotalDebtController {
      * 账户管理-总欠款管理-列表
      *
      * @param page 分页对象
-     * @param param 查询实体
+     * @param keyword 关键字
      * @return 账户管理-总欠款管理-列表
      */
     @GetMapping("/page")
-    public R page(Page<KxsTotalDebt> page, KxsTotalDebt param) {
+    public R page(Page<KxsTotalDebt> page, @RequestParam(value = "keyword",required = false) String keyword) {
 
-        return R.ok(kxsTotalDebtService.page(page, new QueryWrapper<>(param)));
+        return R.ok(kxsTotalDebtService.getByPage(page, keyword));
     }
 
 

+ 12 - 0
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/mapper/KxsTotalDebtMapper.java

@@ -1,8 +1,12 @@
 package com.kxs.user.biz.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.kxs.user.api.model.KxsTotalDebt;
+import com.kxs.user.api.vo.admin.totalDebt.TotalDebtListVO;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * 用户总欠款表(KxsTotalDebt)表数据库访问层
@@ -13,5 +17,13 @@ import org.apache.ibatis.annotations.Mapper;
 @Mapper
 public interface KxsTotalDebtMapper extends BaseMapper<KxsTotalDebt> {
 
+    /**
+     * 分页
+     *
+     * @param page  页
+     * @param keyword 参数
+     * @return {@link IPage}<{@link TotalDebtListVO}>
+     */
+    IPage<TotalDebtListVO> getByPage(Page<KxsTotalDebt> page, @Param("keyword") String keyword);
 }
 

+ 40 - 0
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/mapper/old/KxsMainServerMapper.java

@@ -0,0 +1,40 @@
+package com.kxs.user.biz.mapper.old;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.kxs.user.api.model.KxsLeaderAmountLog;
+import com.kxs.user.api.model.KxsUserAmount;
+import com.kxs.user.api.model.old.KxsMain;
+import com.kxs.user.api.model.old.TradeDaySummary;
+import com.kxs.user.api.vo.kxsapp.userLevel.AmountDetailVO;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.math.BigDecimal;
+
+/**
+ * 操作老库
+ *
+ * @author 没秃顶的码农
+ * @date 2024-02-27
+ */
+@Mapper
+@DS("KxsProfitServer")
+public interface KxsMainServerMapper extends BaseMapper<KxsMain> {
+
+
+    /**
+     * 扣除盟主可提现额度
+     *
+     * @param userAmount 用户数量
+     */
+    void deductMakerUseAmount(KxsUserAmount userAmount);
+
+    /**
+     * 添加金额日志
+     *
+     * @param kxsLeaderAmountLog KXS 领导金额日志
+     */
+    void addAmountLog(KxsLeaderAmountLog kxsLeaderAmountLog);
+
+}

+ 36 - 0
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/mapper/old/KxsOpServerMapper.java

@@ -0,0 +1,36 @@
+package com.kxs.user.biz.mapper.old;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.kxs.user.api.model.KxsPartner;
+import com.kxs.user.api.model.KxsPartnerAmountLog;
+import com.kxs.user.api.model.old.KxsMain;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * 操作运营中心老库
+ *
+ * @author 没秃顶的码农
+ * @date 2024-02-27
+ */
+@Mapper
+@DS("KxsOpServer")
+public interface KxsOpServerMapper extends BaseMapper<KxsMain> {
+
+
+    /**
+     * 扣除运营中心可提现额度
+     *
+     * @param partner 伙伴
+     */
+    void deductMakerUseAmount(KxsPartner partner);
+
+    /**
+     * 添加金额日志
+     *
+     * @param kxsPartner          KXS合伙人
+     * @param partnerDeductAmount 扣款金额
+     */
+    void addAmountLog(@Param("param") KxsPartner kxsPartner, @Param("amountLog") KxsPartnerAmountLog partnerDeductAmount);
+}

+ 14 - 2
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/service/KxsTotalDebtService.java

@@ -1,8 +1,11 @@
 package com.kxs.user.biz.service;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.kxs.common.core.util.R;
 import com.kxs.user.api.model.KxsTotalDebt;
+import com.kxs.user.api.vo.admin.totalDebt.TotalDebtListVO;
 import com.kxs.user.api.vo.kxsapp.totalDebt.TotalDebtDetailVO;
 
 /**
@@ -33,13 +36,22 @@ public interface KxsTotalDebtService extends IService<KxsTotalDebt> {
      *
      * @param kxsTotalDebt KXS总债务
      */
-    void deductPartner(KxsTotalDebt kxsTotalDebt);
+    void deductPartnerAmount(KxsTotalDebt kxsTotalDebt);
 
     /**
      * 扣除盟主可提现额度
      *
      * @param kxsTotalDebt KXS总债务
      */
-    void deductLeader(KxsTotalDebt kxsTotalDebt);
+    void deductLeaderAmount(KxsTotalDebt kxsTotalDebt);
+
+    /**
+     * 分页
+     *
+     * @param page  页
+     * @param param 参数
+     * @return {@link IPage}<{@link TotalDebtListVO}>
+     */
+    IPage<TotalDebtListVO> getByPage(Page<KxsTotalDebt> page, String param);
 }
 

+ 93 - 53
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/service/impl/KxsTotalDebtServiceImpl.java

@@ -1,22 +1,28 @@
 package com.kxs.user.biz.service.impl;
 
+import cn.hutool.core.util.NumberUtil;
+import com.baomidou.dynamic.datasource.annotation.DSTransactional;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.kxs.common.core.constant.enums.KindTypeEnum;
 import com.kxs.common.core.util.R;
 import com.kxs.common.security.util.SecurityUtils;
 import com.kxs.system.api.feign.RemoteOldService;
 import com.kxs.user.api.model.*;
+import com.kxs.user.api.vo.admin.totalDebt.TotalDebtListVO;
 import com.kxs.user.api.vo.kxsapp.totalDebt.TotalDebtDetailVO;
 import com.kxs.user.biz.constant.enums.UserErrorTypeEnum;
+import com.kxs.user.biz.constant.enums.UserVariationTypeEnum;
 import com.kxs.user.biz.mapper.*;
+import com.kxs.user.biz.mapper.old.KxsMainServerMapper;
+import com.kxs.user.biz.mapper.old.KxsOpServerMapper;
 import com.kxs.user.biz.service.KxsTotalDebtService;
 import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
-import java.util.HashMap;
 
 /**
  * 用户总欠款表(KxsTotalDebt)表服务实现类
@@ -40,6 +46,17 @@ public class KxsTotalDebtServiceImpl extends ServiceImpl<KxsTotalDebtMapper, Kxs
 
     private final KxsTotalDebtLogMapper kxsTotalDebtLogMapper;
 
+    private final KxsMainServerMapper kxsMainServerMapper;
+
+    private final KxsOpServerMapper kxsOpServerMapper;
+
+
+    @Override
+    public IPage<TotalDebtListVO> getByPage(Page<KxsTotalDebt> page, String keyword) {
+
+        return baseMapper.getByPage(page, keyword);
+    }
+
     @Override
     public R addData(KxsTotalDebt param) {
         KxsUser user = kxsUserMapper.selectById(param.getUserId());
@@ -65,48 +82,63 @@ public class KxsTotalDebtServiceImpl extends ServiceImpl<KxsTotalDebtMapper, Kxs
     }
 
     @Override
-    @Transactional(rollbackFor = Exception.class)
-    public void deductPartner(KxsTotalDebt kxsTotalDebt) {
+    @DSTransactional(rollbackFor = Exception.class)
+    public void deductPartnerAmount(KxsTotalDebt kxsTotalDebt) {
         //查询该创客合伙人/盟主是否有客提现余额,如果大于0则扣除
         KxsPartner kxsPartner = kxsPartnerMapper.selectOne(Wrappers.<KxsPartner>lambdaQuery().eq(KxsPartner::getUserId, kxsTotalDebt.getUserId()));
+        if(kxsPartner == null){
+            return;
+        }
         //合伙人扣除金额
         BigDecimal partnerDeductAmount;
-        if(kxsPartner != null && kxsPartner.getWithdrawalAmount().compareTo(BigDecimal.ZERO) > 0){
+        if(kxsPartner.getWithdrawalAmount().compareTo(BigDecimal.ZERO) > 0){
             //扣除可提现余额
             if(kxsTotalDebt.getTotalDebt().compareTo(kxsPartner.getWithdrawalAmount()) >= 0){
                 partnerDeductAmount = kxsPartner.getWithdrawalAmount();
             }else{
                 partnerDeductAmount = kxsTotalDebt.getTotalDebt();
             }
-            HashMap<String, Object> partner = new HashMap<>();
-            partner.put("UserId", kxsTotalDebt.getUserId());
-            partner.put("Kind", 2);
-            partner.put("Amount", partnerDeductAmount);
-            R res = remoteOldService.deductMakerDebts(partner);
-            if(res.getStatus() == 1){
-                //扣除成功
-                BigDecimal afterAmount = kxsTotalDebt.getTotalDebt().subtract(partnerDeductAmount);
-
-                //添加日志
-                KxsTotalDebtLog kxsTotalDebtLog = new KxsTotalDebtLog();
-                kxsTotalDebtLog.setKind(KindTypeEnum.SUB.getType());
-                kxsTotalDebtLog.setUserId(kxsTotalDebt.getUserId());
-                kxsTotalDebtLog.setRemark("扣除合伙人可提现余额");
-                kxsTotalDebtLog.setCreateBy("系统");
-                kxsTotalDebtLog.setAmount(partnerDeductAmount);
-                kxsTotalDebtLog.setAfterAmount(afterAmount);
-                kxsTotalDebtLog.setBeforeAmount(kxsTotalDebt.getTotalDebt());
-                kxsTotalDebtLogMapper.insert(kxsTotalDebtLog);
-
-                kxsTotalDebt.setTotalDebt(afterAmount);
-                baseMapper.updateById(kxsTotalDebt);
-            }
+            //扣除可提现额度
+            kxsPartner.setWithdrawalAmount(NumberUtil.sub(kxsPartner.getWithdrawalAmount(),partnerDeductAmount));
+            //扣除运营中心可提现额度
+            kxsOpServerMapper.deductMakerUseAmount(kxsPartner);
+            //增加运营中心额度日志
+            KxsPartnerAmountLog kxsPartnerAmountLog = new KxsPartnerAmountLog();
+            kxsPartnerAmountLog.setUserId(kxsTotalDebt.getUserId());
+            kxsPartnerAmountLog.setBeforeAmount(NumberUtil.add(kxsPartner.getWithdrawalAmount(),partnerDeductAmount));
+            kxsPartnerAmountLog.setAfterAmount(kxsPartner.getWithdrawalAmount());
+            kxsPartnerAmountLog.setAmount(partnerDeductAmount);
+            kxsPartnerAmountLog.setKind(KindTypeEnum.SUB.getType());
+            kxsPartnerAmountLog.setRemark("预借款项还款");
+            kxsPartnerAmountLog.setVariationType(UserVariationTypeEnum.PARTNER_WITHDRAW_BALANCE.getType());
+            kxsOpServerMapper.addAmountLog(kxsPartner, kxsPartnerAmountLog);
+
+            //扣除成功 增加欠款日志
+            BigDecimal afterAmount = NumberUtil.sub(kxsTotalDebt.getTotalDebt(),partnerDeductAmount);
+            //添加日志
+            KxsTotalDebtLog kxsTotalDebtLog = new KxsTotalDebtLog();
+            kxsTotalDebtLog.setKind(KindTypeEnum.SUB.getType());
+            kxsTotalDebtLog.setUserId(kxsTotalDebt.getUserId());
+            kxsTotalDebtLog.setRemark("扣除合伙人可提现余额");
+            kxsTotalDebtLog.setCreateBy("系统");
+            kxsTotalDebtLog.setAmount(partnerDeductAmount);
+            kxsTotalDebtLog.setAfterAmount(afterAmount);
+            kxsTotalDebtLog.setBeforeAmount(kxsTotalDebt.getTotalDebt());
+            kxsTotalDebtLogMapper.insert(kxsTotalDebtLog);
+
+            kxsTotalDebt.setTotalDebt(afterAmount);
+            baseMapper.updateById(kxsTotalDebt);
+
         }
     }
     @Override
-    @Transactional(rollbackFor = Exception.class)
-    public void deductLeader(KxsTotalDebt kxsTotalDebt) {
+    @DSTransactional(rollbackFor = Exception.class)
+    public void deductLeaderAmount(KxsTotalDebt kxsTotalDebt) {
         //查询该创客合伙人/盟主是否有客提现余额,如果大于0则扣除
+        KxsLeader kxsLeader = kxsLeaderMapper.selectOne(Wrappers.<KxsLeader>lambdaQuery().eq(KxsLeader::getUserId, kxsTotalDebt.getUserId()));
+        if(kxsLeader == null){
+            return;
+        }
         KxsUserAmount userAmount = kxsUserAmountMapper.selectOne(Wrappers.<KxsUserAmount>lambdaQuery().eq(KxsUserAmount::getUserId, kxsTotalDebt.getUserId()));
         //合伙人扣除金额
         BigDecimal leaderDeductAmount;
@@ -117,30 +149,38 @@ public class KxsTotalDebtServiceImpl extends ServiceImpl<KxsTotalDebtMapper, Kxs
             }else{
                 leaderDeductAmount = kxsTotalDebt.getTotalDebt();
             }
-            HashMap<String, Object> partner = new HashMap<>();
-            partner.put("UserId", kxsTotalDebt.getUserId());
-            partner.put("Kind", 1);
-            partner.put("Amount", leaderDeductAmount);
-            R res = remoteOldService.deductMakerDebts(partner);
-            if(res.getStatus() == 1){
-                //扣除成功
-                BigDecimal afterAmount = kxsTotalDebt.getTotalDebt().subtract(leaderDeductAmount);
-
-                //添加日志
-                KxsTotalDebtLog kxsTotalDebtLog = new KxsTotalDebtLog();
-                kxsTotalDebtLog.setKind(KindTypeEnum.SUB.getType());
-                kxsTotalDebtLog.setUserId(kxsTotalDebt.getUserId());
-                kxsTotalDebtLog.setRemark("扣除盟主可提现余额");
-                kxsTotalDebtLog.setCreateBy("系统");
-                kxsTotalDebtLog.setAmount(leaderDeductAmount);
-                kxsTotalDebtLog.setAfterAmount(afterAmount);
-                kxsTotalDebtLog.setBeforeAmount(kxsTotalDebt.getTotalDebt());
-                kxsTotalDebtLogMapper.insert(kxsTotalDebtLog);
-
-                kxsTotalDebt.setTotalDebt(afterAmount);
-                baseMapper.updateById(kxsTotalDebt);
-            }
+            //扣除盟主可提现额度
+            userAmount.setLeaderBalanceAmount(NumberUtil.sub(userAmount.getLeaderBalanceAmount(),leaderDeductAmount));
+            kxsMainServerMapper.deductMakerUseAmount(userAmount);
+            //添加盟主扣除日志
+            KxsLeaderAmountLog kxsLeaderAmountLog = new KxsLeaderAmountLog();
+            kxsLeaderAmountLog.setUserId(kxsTotalDebt.getUserId());
+            kxsLeaderAmountLog.setRemark("预借款项还款");
+            kxsLeaderAmountLog.setBeforeAmount(NumberUtil.add(userAmount.getLeaderBalanceAmount(), leaderDeductAmount));
+            kxsLeaderAmountLog.setAfterAmount(userAmount.getLeaderBalanceAmount());
+            kxsLeaderAmountLog.setAmount(leaderDeductAmount);
+            kxsLeaderAmountLog.setKind(KindTypeEnum.SUB.getType());
+            kxsLeaderAmountLog.setVariationType(UserVariationTypeEnum.LEADER_WITHDRAW_BALANCE.getType());
+            kxsMainServerMapper.addAmountLog(kxsLeaderAmountLog);
+
+            //扣除盟主余额成功
+            BigDecimal afterAmount = kxsTotalDebt.getTotalDebt().subtract(leaderDeductAmount);
+
+            //添加欠款日志
+            KxsTotalDebtLog kxsTotalDebtLog = new KxsTotalDebtLog();
+            kxsTotalDebtLog.setKind(KindTypeEnum.SUB.getType());
+            kxsTotalDebtLog.setUserId(kxsTotalDebt.getUserId());
+            kxsTotalDebtLog.setRemark("扣除盟主可提现余额");
+            kxsTotalDebtLog.setCreateBy("系统");
+            kxsTotalDebtLog.setAmount(leaderDeductAmount);
+            kxsTotalDebtLog.setAfterAmount(afterAmount);
+            kxsTotalDebtLog.setBeforeAmount(kxsTotalDebt.getTotalDebt());
+            kxsTotalDebtLogMapper.insert(kxsTotalDebtLog);
+
+            kxsTotalDebt.setTotalDebt(afterAmount);
+            baseMapper.updateById(kxsTotalDebt);
         }
     }
+
 }
 

+ 3 - 3
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/task/KxsUserTaskJob.java

@@ -59,16 +59,16 @@ public class KxsUserTaskJob {
      * 1.扫创客合伙人可提现额度,若有合伙人可提现额度,则扣除可提现额度,最大扣除金额=欠款总金额,扣除后减少欠款总金额,同时在前端增加扣除记录,备注为「预借款项还款」
      * 2.扫创客盟主可提现余额,若有盟主可提现余额,则扣除可提现余额,最大扣除金额=欠款总金额,扣除后减少欠款总金额,同时在前端增加扣除记录,备注为「预借款项还款」
      */
-    @Inner
+    @Inner(value = false)
     @GetMapping("/userTotalDebtSub")
     public void userTotalDebtSub(){
         //查询所有欠款大于0的创客
         List<KxsTotalDebt> kxsTotalDebts = kxsTotalDebtMapper.selectList(Wrappers.<KxsTotalDebt>lambdaQuery().gt(KxsTotalDebt::getTotalDebt, BigDecimal.ZERO));
         for (KxsTotalDebt kxsTotalDebt : kxsTotalDebts) {
             //扣除合伙人
-            kxsTotalDebtService.deductPartner(kxsTotalDebt);
+            kxsTotalDebtService.deductPartnerAmount(kxsTotalDebt);
             //扣除盟主
-            kxsTotalDebtService.deductLeader(kxsTotalDebt);
+            kxsTotalDebtService.deductLeaderAmount(kxsTotalDebt);
 
         }
 

+ 19 - 0
kxs-user/kxs-user-biz/src/main/resources/mapper/KxsMainMapper.xml

@@ -0,0 +1,19 @@
+<?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.kxs.user.biz.mapper.old.KxsMainServerMapper">
+
+    <insert id="addAmountLog">
+        insert into LeaderReserveRecord (UserId, Remark, AfterAmt, BeforeAmt, ChangeAmt, sort, TradeDate, TradeMonth, CreateDate)
+        values (#{userId}, #{remark}, #{afterAmount},#{beforeAmount},#{amount}, #{variationType}, DATE_FORMAT(NOW(), '%Y%m%d'), DATE_FORMAT(NOW(), '%Y%m'), NOW())
+    </insert>
+
+    <update id="deductMakerUseAmount">
+        update UserAccount
+        <set>
+            <if test="userId != null">
+                LeaderBalanceAmount = #{leaderBalanceAmount},
+            </if>
+        </set>
+        where UserId = #{userId}
+    </update>
+</mapper>

+ 21 - 0
kxs-user/kxs-user-biz/src/main/resources/mapper/KxsOpMapper.xml

@@ -0,0 +1,21 @@
+<?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.kxs.user.biz.mapper.old.KxsOpServerMapper">
+
+
+    <insert id="addAmountLog">
+        insert into AmountRecord (UserId, SeoDescription, UseAmount, AfterValidForGetAmount, AfterTotalAmt, AfterValidAmount, CreateDate)
+        values (#{amountLog.userId}, #{amountLog.remark}, #{amountLog.amount},#{param.withdrawalAmount},#{param.amount}, #{param.storeAmount}, NOW())
+    </insert>
+
+
+    <update id="deductMakerUseAmount">
+        update UserAccount
+        <set>
+            <if test="userId != null">
+                ValidForGetAmount = #{withdrawalAmount},
+            </if>
+        </set>
+        where UserId = #{userId}
+    </update>
+</mapper>

+ 11 - 0
kxs-user/kxs-user-biz/src/main/resources/mapper/KxsTotalDebtMapper.xml

@@ -14,5 +14,16 @@
         <result column="remark" property="remark" />
 
     </resultMap>
+    <select id="getByPage" resultType="com.kxs.user.api.vo.admin.totalDebt.TotalDebtListVO">
+        SELECT a.*, u.username, u.user_code from kxs_total_debt a
+        LEFT JOIN kxs_user u on a.user_id = u.id
+        <where>
+            a.del_flag = 0
+            <if test="keyword != null and keyword !=''">
+               and (u.username like concat('%' #{keyword} '%') or u.phone like concat('%' #{keyword} '%'))
+            </if>
+
+        </where>
+    </select>
 
 </mapper>