Przeglądaj źródła

Merge branch 'test-transfer' into develop-debt

* test-transfer:
  同步数据区分根据环境切换库名
  仓库表导入
  异步开起过期机具扣款
  异步执行过期机具扣款
  同步仓库表
  循环过期机具日志打印
  no message
  ..
  重启合伙人数据表
  修复合伙人数据同步bug
mac 2 lat temu
rodzic
commit
414395b0fd
16 zmienionych plików z 336 dodań i 68 usunięć
  1. 3 4
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/model/KxsMerchant.java
  2. 3 4
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/model/KxsTicket.java
  3. 7 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsMachineService.java
  4. 37 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsMachineServiceImpl.java
  5. 4 26
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/task/KxsProductTask.java
  6. 10 4
      kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/model/KxsWarehouseCreditAmount.java
  7. 0 14
      kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/model/KxsWarehouseLimit.java
  8. 1 0
      kxs-store/kxs-store-biz/src/main/resources/mapper/KxsWarehouseCreditAmountMapper.xml
  9. 0 2
      kxs-store/kxs-store-biz/src/main/resources/mapper/KxsWarehouseLimitMapper.xml
  10. 23 8
      kxs-transfer/src/main/java/com/kxs/transfer/api/controller/DtsController.java
  11. 19 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/store/KxsWarehouseCreditAmountMapper.java
  12. 19 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/store/KxsWarehouseLimitMapper.java
  13. 6 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/KxsWarehouseService.java
  14. 192 1
      kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/impl/KxsWarehouseServiceImpl.java
  15. 5 4
      kxs-transfer/src/main/java/com/kxs/transfer/api/service/user/impl/KxsPartnerServiceImpl.java
  16. 7 1
      kxs-transfer/src/main/resources/import.txt

+ 3 - 4
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/model/KxsMerchant.java

@@ -5,10 +5,7 @@ import java.io.Serializable;
 import java.math.BigDecimal;
 import java.time.LocalDateTime;
 
-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.annotation.*;
 import com.baomidou.mybatisplus.extension.activerecord.Model;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
@@ -56,6 +53,8 @@ public class KxsMerchant extends Model<KxsMerchant> implements Serializable {
     /**
      * 删除标记,0未删除,1已删除
      */
+    @TableLogic
+    @TableField(fill = FieldFill.INSERT)
     @Schema(description = "删除标记,0未删除,1已删除")
     private String delFlag;
 

+ 3 - 4
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/model/KxsTicket.java

@@ -5,10 +5,7 @@ import java.io.Serializable;
 import java.math.BigDecimal;
 import java.time.LocalDateTime;
 
-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.annotation.*;
 import com.baomidou.mybatisplus.extension.activerecord.Model;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.v3.oas.annotations.media.Schema;
@@ -59,6 +56,8 @@ public class KxsTicket extends Model<KxsTicket> implements Serializable {
     /**
      * 删除标记,0未删除,1已删除
      */
+    @TableLogic
+    @TableField(fill = FieldFill.INSERT)
     @Schema(description = "删除标记,0未删除,1已删除")
     private String delFlag;
 

+ 7 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsMachineService.java

@@ -130,5 +130,12 @@ public interface KxsMachineService extends IService<KxsMachine> {
      * @return {@link ExpiredModalBrandVO}
      */
     List<ExpiredModalBrandVO> expiredModal();
+
+    /**
+     * 循环过期机具添加预扣款
+     *
+     * @param para 段落
+     */
+    void recycleMachineSchedule(String para);
 }
 

+ 37 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsMachineServiceImpl.java

@@ -2,6 +2,8 @@ package com.kxs.product.biz.service.impl;
 
 import cn.hutool.core.date.DatePattern;
 import cn.hutool.core.date.LocalDateTimeUtil;
+import cn.hutool.crypto.symmetric.AES;
+import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -20,9 +22,13 @@ import com.kxs.product.biz.constant.enums.ProductErrorTypeEnum;
 import com.kxs.product.biz.mapper.*;
 import com.kxs.product.biz.service.KxsMachineService;
 import com.kxs.store.api.feign.RemoteKxsStoreService;
+import com.kxs.system.api.feign.RemoteOldService;
 import com.kxs.user.api.feign.RemoteKxsUserService;
 import com.kxs.user.api.model.KxsUser;
 import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.scheduling.annotation.Async;
+import org.springframework.scheduling.annotation.EnableAsync;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -31,6 +37,7 @@ import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.time.LocalTime;
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.function.Function;
@@ -44,6 +51,8 @@ import java.util.stream.Collectors;
  */
 @Service("kxsMachineService")
 @RequiredArgsConstructor
+@Slf4j
+@EnableAsync
 public class KxsMachineServiceImpl extends ServiceImpl<KxsMachineMapper, KxsMachine> implements KxsMachineService {
 
     private final KxsBrandMapper kxsBrandMapper;
@@ -58,6 +67,10 @@ public class KxsMachineServiceImpl extends ServiceImpl<KxsMachineMapper, KxsMach
 
     private final RemoteKxsStoreService remoteKxsStoreService;
 
+    private final RemoteOldService remoteOldService;
+
+    private final AES cryptoOldAes;
+
     @Override
     public IPage<MachineStoreListVO> machineStoreList(Page<MachineStoreListVO> page, MachineStoreListDTO param) {
 
@@ -297,6 +310,30 @@ public class KxsMachineServiceImpl extends ServiceImpl<KxsMachineMapper, KxsMach
         return result;
     }
 
+    @Override
+    @Async("getAsyncExecutor")
+    public void recycleMachineSchedule(String para) {
+        LocalDateTime endDay = LocalDate.now().minusDays(30).atStartOfDay();
+        List<KxsMachine> machines = baseMapper.selectExpireDeductList(endDay);
+
+        for (KxsMachine machine : machines) {
+            HashMap<String, Object> param = new HashMap<>();
+            HashMap<String, Object> data = new HashMap<>();
+            data.put("PosSn", machine.getPosSn());
+//            String body  = cryptoOldAes.encryptHex(JSON.toJSONString(data));
+            param.put("value", JSON.toJSONString(data));
+            R result = remoteOldService.savePosAdvance(param);
+            if(result.getStatus() == 1){
+                log.info("已添加机具到预扣款:{}", machine.getPosSn());
+
+                KxsMachineDeduct machineDeduct = new KxsMachineDeduct();
+                machineDeduct.setPosSn(machine.getPosSn());
+                machineDeduct.setRemark("已添加预扣款");
+                kxsMachineDeductMapper.insert(machineDeduct);
+            }
+        }
+    }
+
 
 }
 

+ 4 - 26
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/task/KxsProductTask.java

@@ -10,6 +10,7 @@ import com.kxs.product.api.model.KxsMachineDeduct;
 import com.kxs.product.biz.config.KxsOldConfigProperties;
 import com.kxs.product.biz.mapper.KxsMachineDeductMapper;
 import com.kxs.product.biz.mapper.KxsMachineMapper;
+import com.kxs.product.biz.service.KxsMachineService;
 import com.kxs.system.api.feign.RemoteOldService;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
@@ -46,41 +47,18 @@ import java.util.List;
 @RequestMapping("product-job")
 public class KxsProductTask {
 
-
-    private final KxsMachineMapper kxsMachineMapper;
-
-    private final KxsMachineDeductMapper kxsMachineDeductMapper;
-
-    private final RemoteOldService remoteOldService;
-
-    private final AES cryptoOldAes;
+    private final KxsMachineService kxsMachineService;
 
     /**
      * 循环过期机具添加预扣款
      * 一个小时执行一次
-     *
+     * 异步执行
      */
     @Inner
     @GetMapping("/recycleMachineSchedule")
     public void recycleMachineSchedule(@RequestParam("param") String para)  {
-        LocalDateTime endDay = LocalDate.now().minusDays(30).atStartOfDay();
-        List<KxsMachine> machines = kxsMachineMapper.selectExpireDeductList(endDay);
 
-        for (KxsMachine machine : machines) {
-            HashMap<String, Object> param = new HashMap<>();
-            HashMap<String, Object> data = new HashMap<>();
-            data.put("PosSn", machine.getPosSn());
-//                    String body  = cryptoOldAes.encryptHex(JSON.toJSONString(data));
-            param.put("value", JSON.toJSONString(data));
-            R result = remoteOldService.savePosAdvance(param);
-            if(result.getStatus() == 1){
-                log.info("查询数据:{}", machines);
+        kxsMachineService.recycleMachineSchedule(para);
 
-                KxsMachineDeduct machineDeduct = new KxsMachineDeduct();
-                machineDeduct.setPosSn(machine.getPosSn());
-                machineDeduct.setRemark("已添加预扣款");
-                kxsMachineDeductMapper.insert(machineDeduct);
-            }
-        }
     }
 }

+ 10 - 4
kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/model/KxsWarehouseCreditAmount.java

@@ -5,10 +5,7 @@ import java.io.Serializable;
 import java.math.BigDecimal;
 import java.time.LocalDateTime;
 
-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.annotation.*;
 import com.baomidou.mybatisplus.extension.activerecord.Model;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
@@ -57,6 +54,8 @@ public class KxsWarehouseCreditAmount extends Model<KxsWarehouseCreditAmount> im
      * 删除标记,0未删除,1已删除
      */
     @Schema(description = "删除标记,0未删除,1已删除")
+    @TableLogic
+    @TableField(fill = FieldFill.INSERT)
     private Integer delFlag;
 
 
@@ -107,6 +106,13 @@ public class KxsWarehouseCreditAmount extends Model<KxsWarehouseCreditAmount> im
     private Integer createBy;
 
 
+    /**
+     * 备注
+     */
+    @Schema(description = "备注")
+    private String remark;
+
+
 
 
 }

+ 0 - 14
kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/model/KxsWarehouseLimit.java

@@ -118,20 +118,6 @@ public class KxsWarehouseLimit extends Model<KxsWarehouseLimit> implements Seria
     private BigDecimal yueForAmount;
 
 
-    /**
-     * 银行卡提现总额
-     */
-    @Schema(description = "银行卡提现总额")
-    private BigDecimal bankWithdrawAmount;
-
-
-    /**
-     * 余额提现总额
-     */
-    @Schema(description = "余额提现总额")
-    private BigDecimal yueWithdrawAmount;
-
-
     /**
      * 已用额度
      */

+ 1 - 0
kxs-store/kxs-store-biz/src/main/resources/mapper/KxsWarehouseCreditAmountMapper.xml

@@ -14,6 +14,7 @@
         <result column="username" property="username" />
         <result column="user_code" property="userCode" />
         <result column="create_by" property="createBy" />
+        <result column="remark" property="remark" />
 
     </resultMap>
 

+ 0 - 2
kxs-store/kxs-store-biz/src/main/resources/mapper/KxsWarehouseLimitMapper.xml

@@ -15,8 +15,6 @@
         <result column="credit_amount" property="creditAmount" />
         <result column="create_by" property="createBy" />
         <result column="yue_for_amount" property="yueForAmount" />
-        <result column="bank_withdraw_amount" property="bankWithdrawAmount" />
-        <result column="yue_withdraw_amount" property="yueWithdrawAmount" />
         <result column="used_amount" property="usedAmount" />
         <result column="warehouse_type" property="warehouseType" />
 

+ 23 - 8
kxs-transfer/src/main/java/com/kxs/transfer/api/controller/DtsController.java

@@ -22,6 +22,7 @@ import com.kxs.user.api.model.KxsPartner;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang.exception.ExceptionUtils;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.RestController;
 
 import java.util.List;
@@ -71,6 +72,8 @@ public class DtsController {
     private final KxsWarehouseService kxsWarehouseService;
     private final KxsMachineRecycleService kxsMachineRecycleService;
 
+    @Value("${spring.profiles.active}")
+    private String active;
 
     @DtsMsgListener
     public void dtsListener(Long dataId, DMLData dmlData, DefaultUserRecord record) {
@@ -131,7 +134,7 @@ public class DtsController {
                 kxsUserAddressService.changeData(dmlData);
             }
             //用户账户
-            if ("UserAccount".equals(dmlData.getTableName()) && "KxsProfitServer".equals(dmlData.getDatabaseName())) {
+            if ("UserAccount".equals(dmlData.getTableName()) && ("dev".equals(active) || "test".equals(active) ? "KxsMainServer":"KxsProfitServer").equals(dmlData.getDatabaseName())) {
                 kxsUserAmountService.changeData(dmlData);
             }
             //用户预扣款表
@@ -143,7 +146,7 @@ public class DtsController {
                 kxsUserAmountLogService.changeData(dmlData);
             }
             //用户提现申请记录
-            if ("UserCashRecord".equals(dmlData.getTableName()) && "KxsProfitServer".equals(dmlData.getDatabaseName())) {
+            if ("UserCashRecord".equals(dmlData.getTableName()) && ("dev".equals(active) || "test".equals(active) ? "KxsMainServer":"KxsProfitServer").equals(dmlData.getDatabaseName())) {
                 kxsUserWithdrawalService.changeData(dmlData);
             }
             //盟主表
@@ -179,12 +182,24 @@ public class DtsController {
             if ("SchoolMakerStudy".equals(dmlData.getTableName())) {
                 kxsSchoolStudyService.changeData(dmlData);
             }
-//
-//            //仓库表
-//            if ("StoreHouse".equals(dmlData.getTableName())) {
-//                kxsWarehouseService.changeData(dmlData);
-//            }
-//            //机具表
+
+            //仓库表
+            if ("StoreHouse".equals(dmlData.getTableName())) {
+                kxsWarehouseService.changeData(dmlData);
+            }
+            //仓库担保记录
+            if ("StoreHouseAmountPromiss".equals(dmlData.getTableName())) {
+                kxsWarehouseService.changeCreditData(dmlData);
+            }
+            //仓库额度表
+            if ("UserAccount".equals(dmlData.getTableName()) && ("dev".equals(active) || "test".equals(active) ? "KxsMainServer":"KxsProfitServer").equals(dmlData.getDatabaseName())) {
+                kxsWarehouseService.changeAccountData(dmlData);
+            }
+            //小仓库额度表
+            if ("UserAccount".equals(dmlData.getTableName()) && ("dev".equals(active) || "test".equals(active) ? "KxsMainServer":"KxsProfitServer").equals(dmlData.getDatabaseName())) {
+                kxsWarehouseService.changeAccountMinData(dmlData);
+            }
+            //机具表
             if ("PosMachinesTwo".equals(dmlData.getTableName())) {
                 kxsMachineService.changeData(dmlData);
             }

+ 19 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/store/KxsWarehouseCreditAmountMapper.java

@@ -0,0 +1,19 @@
+package com.kxs.transfer.api.mapper.store;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.kxs.store.api.model.KxsWarehouseCreditAmount;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 客小爽分仓担保明细记录表(KxsWarehousePromiss)表数据库访问层
+ *
+ * @author 系统
+ * @since 2024-01-08 09:46:02
+ */
+@Mapper
+@DS("store")
+public interface KxsWarehouseCreditAmountMapper extends BaseMapper<KxsWarehouseCreditAmount> {
+
+}
+

+ 19 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/store/KxsWarehouseLimitMapper.java

@@ -0,0 +1,19 @@
+package com.kxs.transfer.api.mapper.store;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.kxs.store.api.model.KxsWarehouseLimit;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 客小爽仓库额度表(KxsWarehouseLimit)表数据库访问层
+ *
+ * @author 系统
+ * @since 2024-01-08 09:46:02
+ */
+@Mapper
+@DS("store")
+public interface KxsWarehouseLimitMapper extends BaseMapper<KxsWarehouseLimit> {
+
+}
+

+ 6 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/KxsWarehouseService.java

@@ -22,5 +22,11 @@ public interface KxsWarehouseService extends IService<KxsWarehouse> {
 
 
     void changeData(DMLData dmlData);
+
+    void changeCreditData(DMLData dmlData);
+
+    void changeAccountData(DMLData dmlData);
+
+    void changeAccountMinData(DMLData dmlData);
 }
 

+ 192 - 1
kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/impl/KxsWarehouseServiceImpl.java

@@ -5,17 +5,24 @@ import cn.hutool.core.date.DatePattern;
 import cn.hutool.core.date.LocalDateTimeUtil;
 import cn.hutool.core.util.NumberUtil;
 import com.aliyun.dts.subscribe.clients.record.OperationType;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.kxs.product.api.model.KxsMachine;
+import com.kxs.product.api.model.KxsTicket;
 import com.kxs.store.api.model.KxsWarehouse;
+import com.kxs.store.api.model.KxsWarehouseCreditAmount;
 import com.kxs.store.api.model.KxsWarehouseLimit;
 import com.kxs.store.api.model.KxsWarehouseStock;
+import com.kxs.transfer.api.mapper.store.KxsWarehouseCreditAmountMapper;
+import com.kxs.transfer.api.mapper.store.KxsWarehouseLimitMapper;
 import com.kxs.transfer.api.mapper.store.KxsWarehouseMapper;
 import com.kxs.transfer.api.mapper.store.KxsWarehouseStockMapper;
 import com.kxs.transfer.api.mapper.user.KxsUserMapper;
 import com.kxs.transfer.api.model.table.DMLData;
+import com.kxs.transfer.api.model.table.FieldData;
 import com.kxs.transfer.api.service.store.KxsWarehouseService;
 import com.kxs.user.api.model.KxsUser;
+import com.kxs.user.api.model.KxsUserAmount;
 import com.kxs.user.api.model.KxsUserReal;
 import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
@@ -37,6 +44,8 @@ public class KxsWarehouseServiceImpl extends ServiceImpl<KxsWarehouseMapper, Kxs
     private final KxsUserMapper kxsUserMapper;
 
     private final KxsWarehouseStockMapper kxsWarehouseStockMapper;
+    private final KxsWarehouseLimitMapper kxsWarehouseLimitMapper;
+    private final KxsWarehouseCreditAmountMapper kxsWarehouseCreditAmountMapper;
 
     @Override
     public void changeData(DMLData dmlData) {
@@ -53,7 +62,10 @@ public class KxsWarehouseServiceImpl extends ServiceImpl<KxsWarehouseMapper, Kxs
 
         //操作类型
         OperationType operation = dmlData.getOperation();
-
+        if(operation.equals(OperationType.DELETE)){
+            baseMapper.deleteById(id);
+            return;
+        }
         for (String field : changeFieldList) {
 
             switch (field) {
@@ -176,5 +188,184 @@ public class KxsWarehouseServiceImpl extends ServiceImpl<KxsWarehouseMapper, Kxs
         }
 
     }
+
+    @Override
+    public void changeCreditData(DMLData dmlData) {
+        //修改的字段值
+        Map<String, Object> validFieldDataMap = dmlData.getValidFieldDataMap();
+        //修改的字段
+        List<String> changeFieldList = dmlData.getChangeFieldList();
+        //操作的主键
+        int id = Integer.parseInt(dmlData.getId());
+
+        KxsWarehouseCreditAmount creditAmount = new KxsWarehouseCreditAmount();
+
+        creditAmount.setId(id);
+
+        //操作类型
+        OperationType operation = dmlData.getOperation();
+        if(operation.equals(OperationType.DELETE)){
+            kxsWarehouseCreditAmountMapper.deleteById(id);
+            return;
+        }
+        for (String field : changeFieldList) {
+
+            switch (field) {
+                case "Status":
+                    if(Integer.parseInt(validFieldDataMap.get(field).toString()) == -1){
+                        kxsWarehouseCreditAmountMapper.deleteById(id);
+                        return;
+                    }
+                    break;
+                case "PromissAmount":
+                    creditAmount.setCreditAmount(new BigDecimal(validFieldDataMap.get(field).toString()));
+                    break;
+                case "FromUserId":
+                    Integer userId = Integer.valueOf(validFieldDataMap.get(field).toString());
+                    KxsUser user = kxsUserMapper.selectById(userId);
+                    creditAmount.setCreditUserId(userId);
+                    creditAmount.setUsername(user.getUsername());
+                    creditAmount.setUserCode(user.getUserCode());
+                    break;
+                case "ToUserId":
+                    creditAmount.setToCreditUserId(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "SeoDescription":
+                    creditAmount.setRemark(validFieldDataMap.get(field).toString());
+                    break;
+
+                case "CreateDate":
+                    creditAmount.setCreateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "UpdateDate":
+                    creditAmount.setUpdateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+            }
+        }
+        if(operation.equals(OperationType.INSERT)){
+            KxsWarehouseCreditAmount kxsWarehouseCreditAmount = kxsWarehouseCreditAmountMapper.selectById(id);
+            if(kxsWarehouseCreditAmount == null){
+                kxsWarehouseCreditAmountMapper.insert(creditAmount);
+            }
+        }
+        if(operation.equals(OperationType.UPDATE)){
+
+            kxsWarehouseCreditAmountMapper.updateById(creditAmount);
+        }
+    }
+
+    @Override
+    public void changeAccountData(DMLData dmlData) {
+        //修改的字段值
+        Map<String, Object> validFieldDataMap = dmlData.getValidFieldDataMap();
+        //全部字段值
+        Map<String, FieldData> fieldDataMap = dmlData.getFieldDataMap();
+        //修改的字段
+        List<String> changeFieldList = dmlData.getChangeFieldList();
+        //操作的主键
+        int id = Integer.parseInt(dmlData.getId());
+        Integer userId = null;
+
+        KxsWarehouseLimit warehouseLimit = new KxsWarehouseLimit();
+
+        if(fieldDataMap.get("UserId").getValue() != null){
+            userId = Integer.valueOf(fieldDataMap.get("UserId").getValue().toString());
+        }
+        for (String field : changeFieldList) {
+
+            switch (field) {
+                case "UserId":
+                    warehouseLimit.setUserId(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "ValidAmount":
+                    warehouseLimit.setValidAmount(new BigDecimal(validFieldDataMap.get(field).toString()));
+                    break;
+                case "FixedAmount":
+                    warehouseLimit.setFixedAmount(new BigDecimal(validFieldDataMap.get(field).toString()));
+                    break;
+                case "TempAmount":
+                    warehouseLimit.setForAmount(new BigDecimal(validFieldDataMap.get(field).toString()));
+                    break;
+                case "TempAmountForBalance":
+                    warehouseLimit.setYueForAmount(new BigDecimal(validFieldDataMap.get(field).toString()));
+                    break;
+                case "CreateDate":
+                    warehouseLimit.setCreateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "UpdateDate":
+                    warehouseLimit.setUpdateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+            }
+        }
+        if (BeanUtil.isNotEmpty(warehouseLimit, "entityClass") && userId != null) {
+            KxsWarehouseLimit kxsWarehouseLimit = kxsWarehouseLimitMapper.selectOne(Wrappers.<KxsWarehouseLimit>lambdaQuery()
+                    .eq(KxsWarehouseLimit::getWarehouseType, 0)
+                    .eq(KxsWarehouseLimit::getUserId, userId));
+            if (kxsWarehouseLimit == null) {
+                warehouseLimit.setUserId(userId);
+                kxsWarehouseLimitMapper.insert(warehouseLimit);
+            }else{
+                warehouseLimit.setId(kxsWarehouseLimit.getId());
+                kxsWarehouseLimitMapper.updateById(warehouseLimit);
+            }
+        }
+    }
+
+    @Override
+    public void changeAccountMinData(DMLData dmlData) {
+        //修改的字段值
+        Map<String, Object> validFieldDataMap = dmlData.getValidFieldDataMap();
+        //全部字段值
+        Map<String, FieldData> fieldDataMap = dmlData.getFieldDataMap();
+        //修改的字段
+        List<String> changeFieldList = dmlData.getChangeFieldList();
+        //操作的主键
+        int id = Integer.parseInt(dmlData.getId());
+        Integer userId = null;
+
+        KxsWarehouseLimit warehouseLimit = new KxsWarehouseLimit();
+
+        if(fieldDataMap.get("UserId").getValue() != null){
+            userId = Integer.valueOf(fieldDataMap.get("UserId").getValue().toString());
+        }
+        for (String field : changeFieldList) {
+
+            switch (field) {
+                case "UserId":
+                    warehouseLimit.setUserId(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "ValidPreAmount":
+                    warehouseLimit.setValidAmount(new BigDecimal(validFieldDataMap.get(field).toString()));
+                    break;
+                case "ThisMonthPreAmount":
+                    warehouseLimit.setFixedAmount(new BigDecimal(validFieldDataMap.get(field).toString()));
+                    break;
+                case "PreTempAmount":
+                    warehouseLimit.setForAmount(new BigDecimal(validFieldDataMap.get(field).toString()));
+                    break;
+                case "PreTempAmountForBalance":
+                    warehouseLimit.setYueForAmount(new BigDecimal(validFieldDataMap.get(field).toString()));
+                    break;
+                case "CreateDate":
+                    warehouseLimit.setCreateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "UpdateDate":
+                    warehouseLimit.setUpdateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+            }
+        }
+        if (BeanUtil.isNotEmpty(warehouseLimit, "entityClass") && userId != null) {
+            KxsWarehouseLimit kxsWarehouseLimit = kxsWarehouseLimitMapper.selectOne(Wrappers.<KxsWarehouseLimit>lambdaQuery()
+                    .eq(KxsWarehouseLimit::getWarehouseType, 1)
+                    .eq(KxsWarehouseLimit::getUserId, userId));
+            if (kxsWarehouseLimit == null) {
+                warehouseLimit.setUserId(userId);
+                kxsWarehouseLimitMapper.insert(warehouseLimit);
+            }else{
+                warehouseLimit.setId(kxsWarehouseLimit.getId());
+                kxsWarehouseLimitMapper.updateById(warehouseLimit);
+            }
+        }
+    }
 }
 

+ 5 - 4
kxs-transfer/src/main/java/com/kxs/transfer/api/service/user/impl/KxsPartnerServiceImpl.java

@@ -102,12 +102,13 @@ public class KxsPartnerServiceImpl extends ServiceImpl<KxsPartnerMapper, KxsPart
                     break;
             }
         }
-        //用户ID为空过滤
-        if(ObjectUtils.isEmpty(partner.getUserId())){
-            return;
-        }
+
         KxsPartner kxsPartner = baseMapper.selectById(partner.getId());
         if(kxsPartner == null){
+            //用户ID为空过滤
+            if(ObjectUtils.isEmpty(partner.getUserId())){
+                return;
+            }
             partner.setPartnerLevel(9);
             baseMapper.insert(partner);
         }else{

+ 7 - 1
kxs-transfer/src/main/resources/import.txt

@@ -160,11 +160,17 @@ TotalNum as stock_total, LaveNum as stock_num, OutNum as delivery_num, a.Id as w
 from StoreHouse a
 -- 仓库额度表
 SELECT s.Id as id, s.UserId as user_id, s.CreateDate as create_time, s.UpdateDate as update_time,
-a.ValidAmount as valid_amount, a.FixedAmount as fixed_amount, a.TempAmount as for_amount, ifnull(b.PromissAmount,0) as credit_amount
+a.ValidAmount as valid_amount, a.FixedAmount as fixed_amount, a.TempAmount as for_amount, TempAmountForBalance as yue_for_amount, ifnull(b.PromissAmount,0) as credit_amount
 from StoreHouse s
 left join UserAccount a on a.UserId = s.UserId
 left JOIN StoreHouseAmountPromiss b on s.UserId = b.ToUserId and b.status = 1
 GROUP BY s.UserId
+-- 仓库担保记录
+SELECT a.Id as id, a.CreateDate as create_time, a.UpdateDate as update_time, case a.Status when  1 then 0 when -1 then 1 end  del_flag,
+a.PromissAmount as credit_amount, a.FromUserId as credit_user_id, a.ToUserId as to_credit_user_id, a.SeoDescription as remark,
+u.RealName as username, u.MakerCode as user_code
+FROM StoreHouseAmountPromiss a
+LEFT JOIN Users u on u.id = a.ToUserId WHERE a.`Status` < 2
 
 //机具回收表
 SELECT  a.Id as id, a.UserId as user_id,a.CreateDate as create_time, a.UpdateDate as update_time,