mac 2 лет назад
Родитель
Сommit
7b34183bb5
47 измененных файлов с 1563 добавлено и 30 удалено
  1. 1 0
      kxs-common/kxs-common-core/src/main/java/com/kxs/common/core/constant/enums/MachineTypeEnum.java
  2. 39 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/model/KxsBrand.java
  3. 37 5
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/model/KxsMachine.java
  4. 1 8
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/model/KxsMachineRatio.java
  5. 6 0
      kxs-product/kxs-product-biz/src/main/resources/mapper/KxsBrandMapper.xml
  6. 6 1
      kxs-product/kxs-product-biz/src/main/resources/mapper/KxsMachineMapper.xml
  7. 1 2
      kxs-product/kxs-product-biz/src/main/resources/mapper/KxsMachineRatioMapper.xml
  8. 13 0
      kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/model/KxsWarehouse.java
  9. 5 10
      kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/model/KxsWarehouseLimit.java
  10. 101 0
      kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/model/KxsWarehousePartner.java
  11. 17 0
      kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/mapper/KxsWarehousePartnerMapper.java
  12. 15 0
      kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/KxsWarehousePartnerService.java
  13. 2 2
      kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/impl/KxsMachineApplyServiceImpl.java
  14. 19 0
      kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/impl/KxsWarehousePartnerServiceImpl.java
  15. 1 2
      kxs-store/kxs-store-biz/src/main/resources/mapper/KxsWarehouseLimitMapper.xml
  16. 2 0
      kxs-store/kxs-store-biz/src/main/resources/mapper/KxsWarehouseMapper.xml
  17. 18 0
      kxs-store/kxs-store-biz/src/main/resources/mapper/KxsWarehousePartnerMapper.xml
  18. 115 0
      kxs-system/kxs-system-api/src/main/java/com/kxs/system/api/model/KxsServiceCenter.java
  19. 87 0
      kxs-system/kxs-system-api/src/main/java/com/kxs/system/api/model/KxsServiceMenu.java
  20. 17 0
      kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/mapper/KxsServiceCenterMapper.java
  21. 17 0
      kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/mapper/KxsServiceMenuMapper.java
  22. 15 0
      kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/KxsServiceCenterService.java
  23. 15 0
      kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/KxsServiceMenuService.java
  24. 19 0
      kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/impl/KxsServiceCenterServiceImpl.java
  25. 19 0
      kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/impl/KxsServiceMenuServiceImpl.java
  26. 20 0
      kxs-system/kxs-system-biz/src/main/resources/mapper/KxsServiceCenterMapper.xml
  27. 16 0
      kxs-system/kxs-system-biz/src/main/resources/mapper/KxsServiceMenuMapper.xml
  28. 25 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/controller/DtsController.java
  29. 23 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/product/KxsBrandMapper.java
  30. 24 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/product/KxsMachineMapper.java
  31. 19 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/store/KxsMachineRecycleInfoMapper.java
  32. 28 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/store/KxsMachineRecycleMapper.java
  33. 28 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/store/KxsWarehouseMapper.java
  34. 19 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/store/KxsWarehouseStockMapper.java
  35. 18 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/service/product/KxsBrandService.java
  36. 22 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/service/product/KxsMachineService.java
  37. 28 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/service/product/impl/KxsBrandServiceImpl.java
  38. 154 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/service/product/impl/KxsMachineServiceImpl.java
  39. 15 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/KxsMachineRecycleInfoService.java
  40. 29 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/KxsMachineRecycleService.java
  41. 26 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/KxsWarehouseService.java
  42. 15 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/KxsWarehouseStockService.java
  43. 19 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/impl/KxsMachineRecycleInfoServiceImpl.java
  44. 180 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/impl/KxsMachineRecycleServiceImpl.java
  45. 176 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/impl/KxsWarehouseServiceImpl.java
  46. 20 0
      kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/impl/KxsWarehouseStockServiceImpl.java
  47. 71 0
      kxs-transfer/src/main/resources/import.txt

+ 1 - 0
kxs-common/kxs-common-core/src/main/java/com/kxs/common/core/constant/enums/MachineTypeEnum.java

@@ -22,6 +22,7 @@ public enum MachineTypeEnum {
     STATUS_RECYCLE(3, "可回收"),
     STATUS_RE_ON(4, "回收中"),
     STATUS_RE_OVER(5, "已回收"),
+    STATUS_RE_RETURN(11, "回收驳回"),
     STATUS_ADVANCE(6, "已预发"),
     /**
      * 机具类型

+ 39 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/model/KxsBrand.java

@@ -105,6 +105,45 @@ public class KxsBrand extends Model<KxsBrand> implements Serializable {
     @Schema(description = "排序")
     private Integer sort;
 
+    /**
+     * 激活金额
+     */
+    @Schema(description = "激活金额")
+    private BigDecimal actAmount;
+
+    /**
+     * 流量费
+     */
+    @Schema(description = "流量费")
+    private BigDecimal fluxAmount;
+
+    /**
+     * 流量费分佣
+     */
+    @Schema(description = "流量费分佣")
+    private BigDecimal fluxProfit;
+
+
+    /**
+     * 默认押金
+     */
+    @Schema(description = "默认押金")
+    private BigDecimal defaultPledge;
+
+
+    /**
+     * 品牌价格
+     */
+    @Schema(description = "品牌价格")
+    private BigDecimal posPrice;
+
+    /**
+     * 每箱机具数
+     */
+    @Schema(description = "每箱机具数")
+    private BigDecimal countOfBox;
+
+
 
 
 

+ 37 - 5
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/model/KxsMachine.java

@@ -140,6 +140,13 @@ public class KxsMachine extends Model<KxsMachine> implements Serializable {
     private BigDecimal cashPledge;
 
 
+    /**
+     * 厂家押金
+     */
+    @Schema(description = "厂家押金")
+    private BigDecimal sourcePledge;
+
+
     /**
      * 机具轨迹路径
      */
@@ -200,11 +207,17 @@ public class KxsMachine extends Model<KxsMachine> implements Serializable {
 
 
     /**
-     * 状态 0在库 1出库 2已退回 3可回收 4回收中 5已回收 6已预发
+     * 状态 0在库 1出库
      */
-    @Schema(description = "状态 0在库 1出库 2已退回 3可回收 4回收中 5已回收 6已预发")
+    @Schema(description = "状态 0在库 1出库")
     private Integer status;
 
+    /**
+     * 回收状态 待回收=1 待确认=2 已确认=3 已驳回=4 已撤回=-1
+     */
+    @Schema(description = "回收状态 待回收=1 待确认=2 已确认=3 已驳回=4 已撤回=-1")
+    private Integer returnStatus;
+
 
     /**
      * 是否首台 0否 1是
@@ -214,10 +227,16 @@ public class KxsMachine extends Model<KxsMachine> implements Serializable {
 
 
     /**
-     * 是否调整费率 0未调 1已调整
+     * 费率调升标记
      */
-    @Schema(description = "是否调整费率 0未调 1已调整")
-    private Integer isRatio;
+    @Schema(description = "费率调升标记 0未调 1已调整")
+    private Integer upFeeFlag;
+
+    /**
+     * 费率调降标记
+     */
+    @Schema(description = "费率调升标记 0未调 1已调整")
+    private Integer downFeeFlag;
 
 
     /**
@@ -233,5 +252,18 @@ public class KxsMachine extends Model<KxsMachine> implements Serializable {
     private Integer partnerId;
 
 
+    /**
+     * 补录标识 0未补录 1已补录
+     */
+    @Schema(description = "补录标识 0未补录 1已补录")
+    private Integer isSupply;
+
+    /**
+     * 补激活奖标记 0未补录 1已补录
+     */
+    @Schema(description = "补录标识 0未补录 1已补录")
+    private Integer isOpAct;
+
+
 }
 

+ 1 - 8
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/model/KxsMachineRatio.java

@@ -81,18 +81,11 @@ public class KxsMachineRatio extends Model<KxsMachineRatio> implements Serializa
     private Integer machineId;
 
 
-    /**
-     * 调整前费率
-     */
-    @Schema(description = "调整前费率")
-    private BigDecimal beforeRatio;
-
-
     /**
      * 调整后费率
      */
     @Schema(description = "调整后费率")
-    private BigDecimal afterRatio;
+    private BigDecimal ratio;
 
 
     /**

+ 6 - 0
kxs-product/kxs-product-biz/src/main/resources/mapper/KxsBrandMapper.xml

@@ -13,6 +13,12 @@
         <result column="cover" property="cover" />
         <result column="brand_type" property="brandType" />
         <result column="sort" property="sort" />
+        <result column="act_amount" property="actAmount" />
+        <result column="flux_amount" property="fluxAmount" />
+        <result column="flux_profit" property="fluxProfit" />
+        <result column="default_pledge" property="defaultPledge" />
+        <result column="pos_price" property="posPrice" />
+        <result column="count_of_box" property="countOfBox" />
 
     </resultMap>
     <select id="getSortByList" resultType="com.kxs.product.api.vo.kxsapp.brand.BrandListVO">

+ 6 - 1
kxs-product/kxs-product-biz/src/main/resources/mapper/KxsMachineMapper.xml

@@ -18,6 +18,7 @@
         <result column="recycle_end_time" property="recycleEndTime" />
         <result column="machine_type" property="machineType" />
         <result column="cash_pledge" property="cashPledge" />
+        <result column="source_pledge" property="sourcePledge" />
         <result column="allot_path" property="allotPath" />
         <result column="bind_time" property="bindTime" />
         <result column="act_time" property="actTime" />
@@ -28,7 +29,11 @@
         <result column="bind_status" property="bindStatus" />
         <result column="status" property="status" />
         <result column="is_first" property="isFirst" />
-        <result column="is_ratio" property="isRatio" />
+        <result column="up_fee_flag" property="upFeeFlag" />
+        <result column="down_fee_flag" property="downFeeFlag" />
+        <result column="is_supply" property="isSupply" />
+        <result column="is_op_act" property="isOpAct" />
+        <result column="return_status" property="returnStatus" />
 
     </resultMap>
     <select id="machineStoreList" resultType="com.kxs.product.api.vo.kxsapp.machine.MachineStoreListVO">

+ 1 - 2
kxs-product/kxs-product-biz/src/main/resources/mapper/KxsMachineRatioMapper.xml

@@ -10,8 +10,7 @@
         <result column="version" property="version" />
         <result column="user_id" property="userId" />
         <result column="machine_id" property="machineId" />
-        <result column="before_ratio" property="beforeRatio" />
-        <result column="after_ratio" property="afterRatio" />
+        <result column="ratio" property="ratio" />
         <result column="remark" property="remark" />
         <result column="create_by" property="createBy" />
         <result column="brand_name" property="brandName" />

+ 13 - 0
kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/model/KxsWarehouse.java

@@ -151,6 +151,19 @@ public class KxsWarehouse extends Model<KxsWarehouse> implements Serializable {
     private String createBy;
 
 
+    /**
+     * 操作人
+     */
+    @Schema(description = "操作人")
+    private String updateBy;
+
+    /**
+     * 备注
+     */
+    @Schema(description = "备注")
+    private String remark;
+
+
     /**
      * 管理者邮箱
      */

+ 5 - 10
kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/model/KxsWarehouseLimit.java

@@ -89,9 +89,9 @@ public class KxsWarehouseLimit extends Model<KxsWarehouseLimit> implements Seria
 
 
     /**
-     * 临时额度
+     * 支付宝充值临时额度
      */
-    @Schema(description = "临时额度")
+    @Schema(description = "支付宝充值临时额度")
     private BigDecimal forAmount;
 
 
@@ -109,18 +109,13 @@ public class KxsWarehouseLimit extends Model<KxsWarehouseLimit> implements Seria
     private String createBy;
 
 
-    /**
-     * 银行卡充值总额度
-     */
-    @Schema(description = "银行卡充值总额度")
-    private BigDecimal bankRechargeAmount;
 
 
     /**
-     * 余额充值总额
+     * 余额充值临时额度
      */
-    @Schema(description = "余额充值总额")
-    private BigDecimal yueRechargeAmount;
+    @Schema(description = "余额充值临时额度")
+    private BigDecimal yueForAmount;
 
 
     /**

+ 101 - 0
kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/model/KxsWarehousePartner.java

@@ -0,0 +1,101 @@
+package com.kxs.store.api.model;
+
+import java.io.Serial;
+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.extension.activerecord.Model;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 分仓关联合伙人(KxsWarehousePartner)表实体类
+ *
+ * @author 系统
+ * @since 2024-03-04 11:27:08
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class KxsWarehousePartner extends Model<KxsWarehousePartner> implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+    
+    
+    /**
+     * 主键ID
+     */
+    @Schema(description = "主键ID")
+    @TableId(type = IdType.AUTO)
+    private Integer id;
+
+
+    /**
+     * 新增时间
+     */
+    @TableField(fill = FieldFill.INSERT)
+    @Schema(description = "新增时间")
+    private LocalDateTime createTime;
+
+
+    /**
+     * 更新时间
+     */
+    @TableField(fill = FieldFill.UPDATE)
+    @Schema(description = "更新时间")
+    private LocalDateTime updateTime;
+
+
+    /**
+     * 删除标记,0未删除,1已删除
+     */
+    @Schema(description = "删除标记,0未删除,1已删除")
+    private Integer delFlag;
+
+
+    /**
+     * 版本
+     */
+    @Schema(description = "版本")
+    private Integer version;
+
+
+    /**
+     * 分仓用户ID
+     */
+    @Schema(description = "分仓用户ID")
+    private Integer warehouseUserId;
+
+
+    /**
+     * 合伙人用户ID
+     */
+    @Schema(description = "合伙人用户ID")
+    private Integer partnerUserId;
+
+
+    /**
+     * 分仓用户头像
+     */
+    @Schema(description = "分仓用户头像")
+    private String avatar;
+
+
+    /**
+     * 分仓用户名称
+     */
+    @Schema(description = "分仓用户名称")
+    private String username;
+
+
+
+
+}
+

+ 17 - 0
kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/mapper/KxsWarehousePartnerMapper.java

@@ -0,0 +1,17 @@
+package com.kxs.store.biz.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.kxs.store.api.model.KxsWarehousePartner;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 分仓关联合伙人(KxsWarehousePartner)表数据库访问层
+ *
+ * @author 系统
+ * @since 2024-03-04 11:27:08
+ */
+@Mapper
+public interface KxsWarehousePartnerMapper extends BaseMapper<KxsWarehousePartner> {
+
+}
+

+ 15 - 0
kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/KxsWarehousePartnerService.java

@@ -0,0 +1,15 @@
+package com.kxs.store.biz.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.kxs.store.api.model.KxsWarehousePartner;
+
+/**
+ * 分仓关联合伙人(KxsWarehousePartner)表服务接口
+ *
+ * @author 系统
+ * @since 2024-03-04 11:27:08
+ */
+public interface KxsWarehousePartnerService extends IService<KxsWarehousePartner> {
+
+}
+

+ 2 - 2
kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/impl/KxsMachineApplyServiceImpl.java

@@ -448,8 +448,8 @@ public class KxsMachineApplyServiceImpl extends ServiceImpl<KxsMachineApplyMappe
                 KxsMachine machine = RetOps.of(kxsMachineR)
                         .getData()
                         .orElseThrow(() -> new GlobalCustomerException(StoreErrorTypeEnum.SN_FIND_NULL.getDescription()));
-
-                machine.setStatus(MachineRecycleStatusEnum.UN_RECYCLE_STATUS.getType());
+                //驳回订单设置为可循环
+                machine.setReturnStatus(MachineRecycleStatusEnum.CAN_RECYCLE_STATUS.getType());
                 R<Boolean> booleanR = remoteKxsProductService.updateByMachine(machine, SecurityConstants.FROM_IN);
                 if(!booleanR.getData()){
                     throw new GlobalCustomerException(ErrorTypeEnum.REMOTE_DATA_ERROR.getDescription());

+ 19 - 0
kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/impl/KxsWarehousePartnerServiceImpl.java

@@ -0,0 +1,19 @@
+package com.kxs.store.biz.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.kxs.store.biz.mapper.KxsWarehousePartnerMapper;
+import com.kxs.store.api.model.KxsWarehousePartner;
+import com.kxs.store.biz.service.KxsWarehousePartnerService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 分仓关联合伙人(KxsWarehousePartner)表服务实现类
+ *
+ * @author 系统
+ * @since 2024-03-04 11:27:08
+ */
+@Service("kxsWarehousePartnerService")
+public class KxsWarehousePartnerServiceImpl extends ServiceImpl<KxsWarehousePartnerMapper, KxsWarehousePartner> implements KxsWarehousePartnerService {
+
+}
+

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

@@ -14,8 +14,7 @@
         <result column="for_amount" property="forAmount" />
         <result column="credit_amount" property="creditAmount" />
         <result column="create_by" property="createBy" />
-        <result column="bank_recharge_amount" property="bankRechargeAmount" />
-        <result column="yue_recharge_amount" property="yueRechargeAmount" />
+        <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" />

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

@@ -27,6 +27,8 @@
         <result column="area" property="area" />
         <result column="warehouse_name" property="warehouseName" />
         <result column="brand_name" property="brandName" />
+        <result column="update_by" property="updateBy" />
+        <result column="remark" property="remark" />
 
     </resultMap>
     <select id="searchList" resultType="com.kxs.store.api.vo.kxsapp.store.StoreSearchListVO">

+ 18 - 0
kxs-store/kxs-store-biz/src/main/resources/mapper/KxsWarehousePartnerMapper.xml

@@ -0,0 +1,18 @@
+<?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.store.biz.mapper.KxsWarehousePartnerMapper">
+
+    <resultMap type="com.kxs.store.api.model.KxsWarehousePartner" id="KxsWarehousePartnerMap">
+        <result column="id" property="id" />
+        <result column="create_time" property="createTime" />
+        <result column="update_time" property="updateTime" />
+        <result column="del_flag" property="delFlag" />
+        <result column="version" property="version" />
+        <result column="warehouse_user_id" property="warehouseUserId" />
+        <result column="partner_user_id" property="partnerUserId" />
+        <result column="avatar" property="avatar" />
+        <result column="username" property="username" />
+
+    </resultMap>
+
+</mapper>

+ 115 - 0
kxs-system/kxs-system-api/src/main/java/com/kxs/system/api/model/KxsServiceCenter.java

@@ -0,0 +1,115 @@
+package com.kxs.system.api.model;
+
+import java.io.Serial;
+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.extension.activerecord.Model;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 服务中心(KxsServiceCenter)表实体类
+ *
+ * @author 系统
+ * @since 2024-03-01 17:26:39
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class KxsServiceCenter extends Model<KxsServiceCenter> implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+    
+    
+    /**
+     * 主键ID
+     */
+    @Schema(description = "主键ID")
+    @TableId(type = IdType.AUTO)
+    private Integer id;
+
+
+    /**
+     * 新增时间
+     */
+    @TableField(fill = FieldFill.INSERT)
+    @Schema(description = "新增时间")
+    private LocalDateTime createTime;
+
+
+    /**
+     * 更新时间
+     */
+    @TableField(fill = FieldFill.UPDATE)
+    @Schema(description = "更新时间")
+    private LocalDateTime updateTime;
+
+
+    /**
+     * 删除标记,0未删除,1已删除
+     */
+    @Schema(description = "删除标记,0未删除,1已删除")
+    private Integer delFlag;
+
+
+    /**
+     * 版本
+     */
+    @Schema(description = "版本")
+    private Integer version;
+
+
+    /**
+     * 标题
+     */
+    @Schema(description = "标题")
+    private String title;
+
+
+    /**
+     * 内容
+     */
+    @Schema(description = "内容")
+    private String content;
+
+
+    /**
+     * 分类ID
+     */
+    @Schema(description = "分类ID")
+    private Integer menuId;
+
+
+    /**
+     * 创建人
+     */
+    @Schema(description = "创建人")
+    private String createBy;
+
+
+    /**
+     * 排序
+     */
+    @Schema(description = "排序")
+    private Integer sort;
+
+
+    /**
+     * 修改人
+     */
+    @Schema(description = "修改人")
+    private String updateBy;
+
+
+
+
+}
+

+ 87 - 0
kxs-system/kxs-system-api/src/main/java/com/kxs/system/api/model/KxsServiceMenu.java

@@ -0,0 +1,87 @@
+package com.kxs.system.api.model;
+
+import java.io.Serial;
+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.extension.activerecord.Model;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 服务中心分类(KxsServiceMenu)表实体类
+ *
+ * @author 系统
+ * @since 2024-03-01 17:26:39
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class KxsServiceMenu extends Model<KxsServiceMenu> implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+    
+    
+    /**
+     * 主键ID
+     */
+    @Schema(description = "主键ID")
+    @TableId(type = IdType.AUTO)
+    private Integer id;
+
+
+    /**
+     * 新增时间
+     */
+    @TableField(fill = FieldFill.INSERT)
+    @Schema(description = "新增时间")
+    private LocalDateTime createTime;
+
+
+    /**
+     * 更新时间
+     */
+    @TableField(fill = FieldFill.UPDATE)
+    @Schema(description = "更新时间")
+    private LocalDateTime updateTime;
+
+
+    /**
+     * 删除标记,0未删除,1已删除
+     */
+    @Schema(description = "删除标记,0未删除,1已删除")
+    private Integer delFlag;
+
+
+    /**
+     * 版本
+     */
+    @Schema(description = "版本")
+    private Integer version;
+
+
+    /**
+     * 分类名称
+     */
+    @Schema(description = "分类名称")
+    private String title;
+
+
+    /**
+     * 排序
+     */
+    @Schema(description = "排序")
+    private Integer sort;
+
+
+
+
+}
+

+ 17 - 0
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/mapper/KxsServiceCenterMapper.java

@@ -0,0 +1,17 @@
+package com.kxs.system.biz.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.kxs.system.api.model.KxsServiceCenter;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 服务中心(KxsServiceCenter)表数据库访问层
+ *
+ * @author 系统
+ * @since 2024-03-01 17:26:39
+ */
+@Mapper
+public interface KxsServiceCenterMapper extends BaseMapper<KxsServiceCenter> {
+
+}
+

+ 17 - 0
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/mapper/KxsServiceMenuMapper.java

@@ -0,0 +1,17 @@
+package com.kxs.system.biz.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.kxs.system.api.model.KxsServiceMenu;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 服务中心分类(KxsServiceMenu)表数据库访问层
+ *
+ * @author 系统
+ * @since 2024-03-01 17:26:38
+ */
+@Mapper
+public interface KxsServiceMenuMapper extends BaseMapper<KxsServiceMenu> {
+
+}
+

+ 15 - 0
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/KxsServiceCenterService.java

@@ -0,0 +1,15 @@
+package com.kxs.system.biz.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.kxs.system.api.model.KxsServiceCenter;
+
+/**
+ * 服务中心(KxsServiceCenter)表服务接口
+ *
+ * @author 系统
+ * @since 2024-03-01 17:26:39
+ */
+public interface KxsServiceCenterService extends IService<KxsServiceCenter> {
+
+}
+

+ 15 - 0
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/KxsServiceMenuService.java

@@ -0,0 +1,15 @@
+package com.kxs.system.biz.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.kxs.system.api.model.KxsServiceMenu;
+
+/**
+ * 服务中心分类(KxsServiceMenu)表服务接口
+ *
+ * @author 系统
+ * @since 2024-03-01 17:26:39
+ */
+public interface KxsServiceMenuService extends IService<KxsServiceMenu> {
+
+}
+

+ 19 - 0
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/impl/KxsServiceCenterServiceImpl.java

@@ -0,0 +1,19 @@
+package com.kxs.system.biz.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.kxs.system.biz.mapper.KxsServiceCenterMapper;
+import com.kxs.system.api.model.KxsServiceCenter;
+import com.kxs.system.biz.service.KxsServiceCenterService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 服务中心(KxsServiceCenter)表服务实现类
+ *
+ * @author 系统
+ * @since 2024-03-01 17:26:39
+ */
+@Service("kxsServiceCenterService")
+public class KxsServiceCenterServiceImpl extends ServiceImpl<KxsServiceCenterMapper, KxsServiceCenter> implements KxsServiceCenterService {
+
+}
+

+ 19 - 0
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/impl/KxsServiceMenuServiceImpl.java

@@ -0,0 +1,19 @@
+package com.kxs.system.biz.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.kxs.system.biz.mapper.KxsServiceMenuMapper;
+import com.kxs.system.api.model.KxsServiceMenu;
+import com.kxs.system.biz.service.KxsServiceMenuService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 服务中心分类(KxsServiceMenu)表服务实现类
+ *
+ * @author 系统
+ * @since 2024-03-01 17:26:39
+ */
+@Service("kxsServiceMenuService")
+public class KxsServiceMenuServiceImpl extends ServiceImpl<KxsServiceMenuMapper, KxsServiceMenu> implements KxsServiceMenuService {
+
+}
+

+ 20 - 0
kxs-system/kxs-system-biz/src/main/resources/mapper/KxsServiceCenterMapper.xml

@@ -0,0 +1,20 @@
+<?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.system.biz.mapper.KxsServiceCenterMapper">
+
+    <resultMap type="com.kxs.system.api.model.KxsServiceCenter" id="KxsServiceCenterMap">
+        <result column="id" property="id" />
+        <result column="create_time" property="createTime" />
+        <result column="update_time" property="updateTime" />
+        <result column="del_flag" property="delFlag" />
+        <result column="version" property="version" />
+        <result column="title" property="title" />
+        <result column="content" property="content" />
+        <result column="menu_id" property="menuId" />
+        <result column="create_by" property="createBy" />
+        <result column="sort" property="sort" />
+        <result column="update_by" property="updateBy" />
+
+    </resultMap>
+
+</mapper>

+ 16 - 0
kxs-system/kxs-system-biz/src/main/resources/mapper/KxsServiceMenuMapper.xml

@@ -0,0 +1,16 @@
+<?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.system.biz.mapper.KxsServiceMenuMapper">
+
+    <resultMap type="com.kxs.system.api.model.KxsServiceMenu" id="KxsServiceMenuMap">
+        <result column="id" property="id" />
+        <result column="create_time" property="createTime" />
+        <result column="update_time" property="updateTime" />
+        <result column="del_flag" property="delFlag" />
+        <result column="version" property="version" />
+        <result column="title" property="title" />
+        <result column="sort" property="sort" />
+
+    </resultMap>
+
+</mapper>

+ 25 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/controller/DtsController.java

@@ -10,7 +10,10 @@ import com.kxs.transfer.api.model.KxsDtsLog;
 import com.kxs.transfer.api.model.table.DMLData;
 import com.kxs.transfer.api.service.KxsDtsErrorLogService;
 import com.kxs.transfer.api.service.KxsDtsLogService;
+import com.kxs.transfer.api.service.product.KxsMachineService;
 import com.kxs.transfer.api.service.product.KxsShopGoodsService;
+import com.kxs.transfer.api.service.store.KxsMachineRecycleService;
+import com.kxs.transfer.api.service.store.KxsWarehouseService;
 import com.kxs.transfer.api.service.sys.KxsMorningLogService;
 import com.kxs.transfer.api.service.sys.KxsMorningService;
 import com.kxs.transfer.api.service.sys.KxsSchoolStudyService;
@@ -54,9 +57,16 @@ public class DtsController {
     private final KxsMorningService kxsMorningService;
     private final KxsSchoolStudyService kxsSchoolStudyService;
 
+    private final KxsMachineService kxsMachineService;
+
     //产品模块
     private final KxsShopGoodsService kxsShopGoodsService;
 
+    //仓库模块
+    private final KxsWarehouseService kxsWarehouseService;
+    private final KxsMachineRecycleService kxsMachineRecycleService;
+
+
     @DtsMsgListener
     public void dtsListener(Long dataId, DMLData dmlData, DefaultUserRecord record) {
 
@@ -166,6 +176,21 @@ public class DtsController {
                 kxsSchoolStudyService.changeData(dmlData);
             }
 
+            //仓库表
+            if ("StoreHouse".equals(dmlData.getTableName())) {
+                kxsWarehouseService.changeData(dmlData);
+            }
+            //机具表
+            if ("PosMachinesTwo".equals(dmlData.getTableName())) {
+                kxsMachineService.changeData(dmlData);
+            }
+            //机具回收表
+            if ("RecycMachineOrder".equals(dmlData.getTableName())) {
+                kxsMachineRecycleService.changeData(dmlData);
+            }
+            if ("RecycMachineOrderPos".equals(dmlData.getTableName())) {
+                kxsMachineRecycleService.changeInfoData(dmlData);
+            }
 
             //存储历史数据
 //            KxsDtsLog kxsDtsLog = new KxsDtsLog();

+ 23 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/product/KxsBrandMapper.java

@@ -0,0 +1,23 @@
+package com.kxs.transfer.api.mapper.product;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.kxs.product.api.model.KxsBrand;
+import com.kxs.product.api.vo.kxsapp.brand.BrandListVO;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 客小爽品牌表(KxsBrand)表数据库访问层
+ *
+ * @author 系统
+ * @since 2023-12-20 10:09:34
+ */
+@Mapper
+@DS("product")
+public interface KxsBrandMapper extends BaseMapper<KxsBrand> {
+
+
+}
+

+ 24 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/product/KxsMachineMapper.java

@@ -0,0 +1,24 @@
+package com.kxs.transfer.api.mapper.product;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+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.product.api.dto.kxsapp.machine.*;
+import com.kxs.product.api.model.KxsMachine;
+import com.kxs.product.api.vo.kxsapp.machine.*;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * 客小爽机具表(KxsMachine)表数据库访问层
+ *
+ * @author 系统
+ * @since 2023-12-20 10:09:35
+ */
+@Mapper
+@DS("product")
+public interface KxsMachineMapper extends BaseMapper<KxsMachine> {
+
+}
+

+ 19 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/store/KxsMachineRecycleInfoMapper.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.KxsMachineRecycleInfo;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 客小爽仓库机具回收申请明细表(KxsMachineRecycleInfo)表数据库访问层
+ *
+ * @author 系统
+ * @since 2024-01-09 16:29:20
+ */
+@Mapper
+@DS("store")
+public interface KxsMachineRecycleInfoMapper extends BaseMapper<KxsMachineRecycleInfo> {
+
+}
+

+ 28 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/store/KxsMachineRecycleMapper.java

@@ -0,0 +1,28 @@
+package com.kxs.transfer.api.mapper.store;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+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.store.api.dto.kxsapp.storeRecycle.StoreRecycleMachineListDTO;
+import com.kxs.store.api.model.KxsMachineRecycle;
+import com.kxs.store.api.vo.kxsapp.storeRecycle.NeedConfirmRecycleVO;
+import com.kxs.store.api.vo.kxsapp.storeRecycle.RecycleUserListVO;
+import com.kxs.store.api.vo.kxsapp.storeRecycle.StoreRecycleMachineListVO;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 客小爽仓库机具回收申请表(KxsMachineRecycle)表数据库访问层
+ *
+ * @author 系统
+ * @since 2024-01-08 09:46:02
+ */
+@Mapper
+@DS("store")
+public interface KxsMachineRecycleMapper extends BaseMapper<KxsMachineRecycle> {
+
+}
+

+ 28 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/store/KxsWarehouseMapper.java

@@ -0,0 +1,28 @@
+package com.kxs.transfer.api.mapper.store;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+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.store.api.dto.kxsapp.store.StoreSearchListDTO;
+import com.kxs.store.api.model.KxsWarehouse;
+import com.kxs.store.api.vo.kxsapp.store.StoreListVO;
+import com.kxs.store.api.vo.kxsapp.store.StoreSearchListVO;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 客小爽仓库表(KxsWarehouse)表数据库访问层
+ *
+ * @author 系统
+ * @since 2024-01-08 09:46:01
+ */
+@Mapper
+@DS("store")
+public interface KxsWarehouseMapper extends BaseMapper<KxsWarehouse> {
+
+
+}
+

+ 19 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/store/KxsWarehouseStockMapper.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.KxsWarehouseStock;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 客小爽仓库库存统计表(KxsWarehouseStock)表数据库访问层
+ *
+ * @author 系统
+ * @since 2024-01-08 09:46:01
+ */
+@Mapper
+@DS("store")
+public interface KxsWarehouseStockMapper extends BaseMapper<KxsWarehouseStock> {
+
+}
+

+ 18 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/product/KxsBrandService.java

@@ -0,0 +1,18 @@
+package com.kxs.transfer.api.service.product;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.kxs.product.api.model.KxsBrand;
+import com.kxs.product.api.vo.kxsapp.brand.BrandListVO;
+
+import java.util.List;
+
+/**
+ * 客小爽品牌表(KxsBrand)表服务接口
+ *
+ * @author 系统
+ * @since 2023-12-20 10:09:35
+ */
+public interface KxsBrandService extends IService<KxsBrand> {
+
+}
+

+ 22 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/product/KxsMachineService.java

@@ -0,0 +1,22 @@
+package com.kxs.transfer.api.service.product;
+
+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.product.api.dto.kxsapp.machine.*;
+import com.kxs.product.api.model.KxsMachine;
+import com.kxs.product.api.vo.kxsapp.machine.*;
+import com.kxs.transfer.api.model.table.DMLData;
+
+/**
+ * 客小爽机具表(KxsMachine)表服务接口
+ *
+ * @author 系统
+ * @since 2023-12-20 10:09:35
+ */
+public interface KxsMachineService extends IService<KxsMachine> {
+
+    void changeData(DMLData dmlData);
+}
+

+ 28 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/product/impl/KxsBrandServiceImpl.java

@@ -0,0 +1,28 @@
+package com.kxs.transfer.api.service.product.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.kxs.product.api.model.KxsBrand;
+import com.kxs.transfer.api.mapper.product.KxsBrandMapper;
+import com.kxs.transfer.api.service.product.KxsBrandService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+
+/**
+ * 客小爽品牌表(KxsBrand)表服务实现类
+ *
+ * @author 系统
+ * @since 2023-12-20 10:09:35
+ */
+@Service("kxsBrandService")
+@RequiredArgsConstructor
+public class KxsBrandServiceImpl extends ServiceImpl<KxsBrandMapper, KxsBrand> implements KxsBrandService {
+
+
+
+
+
+
+
+
+}
+

+ 154 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/product/impl/KxsMachineServiceImpl.java

@@ -0,0 +1,154 @@
+package com.kxs.transfer.api.service.product.impl;
+
+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.extension.service.impl.ServiceImpl;
+import com.kxs.product.api.model.KxsMachine;
+import com.kxs.store.api.model.KxsWarehouse;
+import com.kxs.transfer.api.mapper.product.KxsMachineMapper;
+import com.kxs.transfer.api.mapper.store.KxsWarehouseMapper;
+import com.kxs.transfer.api.model.table.DMLData;
+import com.kxs.transfer.api.service.product.KxsMachineService;
+import com.kxs.user.api.model.KxsPartner;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 客小爽机具表(KxsMachine)表服务实现类
+ *
+ * @author 系统
+ * @since 2023-12-20 10:09:35
+ */
+@Service("kxsMachineService")
+@RequiredArgsConstructor
+public class KxsMachineServiceImpl extends ServiceImpl<KxsMachineMapper, KxsMachine> implements KxsMachineService {
+
+    private final KxsWarehouseMapper kxsWarehouseMapper;
+
+    @Override
+    public void changeData(DMLData dmlData) {
+        //修改的字段值
+        Map<String, Object> validFieldDataMap = dmlData.getValidFieldDataMap();
+        //修改的字段
+        List<String> changeFieldList = dmlData.getChangeFieldList();
+        //操作的主键
+        int id = Integer.parseInt(dmlData.getId());
+
+        KxsMachine machine = new KxsMachine();
+        machine.setId(id);
+
+        //操作类型
+        OperationType operation = dmlData.getOperation();
+
+        for (String field : changeFieldList) {
+
+            switch (field) {
+                case "UserId":
+                    int userId = Integer.parseInt(validFieldDataMap.get(field).toString());
+                    if(userId > 0){
+                        machine.setStatus(1);
+                    }
+                    machine.setUserId(Integer.parseInt(validFieldDataMap.get(field).toString()));
+                    break;
+                case "PosSn":
+                    machine.setPosSn(validFieldDataMap.get(field).toString());
+                    break;
+                case "StoreId":
+                    Integer warehouseId = Integer.valueOf(validFieldDataMap.get(field).toString());
+                    KxsWarehouse warehouse = kxsWarehouseMapper.selectById(warehouseId);
+                    if(warehouse != null){
+                        machine.setWarehouseName(warehouse.getWarehouseName());
+                    }
+                    machine.setWarehouseId(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "BindMerchantId":
+                    machine.setMerchantId(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "BrandId":
+                    machine.setBrandId(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "RecycEndDate":
+                    machine.setRecycleEndTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "IsPurchase":
+                    machine.setRecycleStatus(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "PosSnType":
+                    machine.setMachineType(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "PrizeParams":
+                    machine.setCashPledge(new BigDecimal(validFieldDataMap.get(field).toString()));
+                    break;
+                case "SeoKeyword":
+                    BigDecimal bigDecimal = new BigDecimal(validFieldDataMap.get(field).toString());
+                    if(bigDecimal.intValue() > 1000){
+                        bigDecimal = NumberUtil.div(bigDecimal, 100);
+                    }
+                    machine.setSourcePledge(bigDecimal);
+                    break;
+                case "BindingTime":
+                    machine.setBindTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "ActivationTime":
+                    machine.setActTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "DownFee":
+                    machine.setMachineRatio(new BigDecimal(validFieldDataMap.get(field).toString()));
+                    break;
+                case "ActivationState":
+                    machine.setIsAct(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "BindingState":
+                    machine.setBindStatus(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "IsFirst":
+                    machine.setIsFirst(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "LeaderUserId":
+                    machine.setLeaderId(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "OpId":
+                    machine.setPartnerId(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "UpFeeFlag":
+                    machine.setUpFeeFlag(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "DownFeeFlag":
+                    machine.setDownFeeFlag(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "IsSupplement":
+                    machine.setIsSupply(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "IsOpAct":
+                    machine.setIsOpAct(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "TransferTime":
+                    machine.setDeliveryTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "CreateDate":
+                    machine.setCreateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "UpdateDate":
+                    machine.setUpdateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+            }
+        }
+        KxsMachine kxsMachine = baseMapper.selectById(machine.getId());
+        if(kxsMachine == null){
+            if(machine.getCashPledge() == null){
+                machine.setCashPledge(new BigDecimal("299"));
+            }
+            baseMapper.insert(machine);
+        }else{
+            baseMapper.updateById(machine);
+        }
+
+    }
+}
+

+ 15 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/KxsMachineRecycleInfoService.java

@@ -0,0 +1,15 @@
+package com.kxs.transfer.api.service.store;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.kxs.store.api.model.KxsMachineRecycleInfo;
+
+/**
+ * 客小爽仓库机具回收申请明细表(KxsMachineRecycleInfo)表服务接口
+ *
+ * @author 系统
+ * @since 2024-01-09 16:29:20
+ */
+public interface KxsMachineRecycleInfoService extends IService<KxsMachineRecycleInfo> {
+
+}
+

+ 29 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/KxsMachineRecycleService.java

@@ -0,0 +1,29 @@
+package com.kxs.transfer.api.service.store;
+
+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.store.api.dto.kxsapp.storeRecycle.RecycleConfirmDTO;
+import com.kxs.store.api.dto.kxsapp.storeRecycle.RecycleSubmitDTO;
+import com.kxs.store.api.dto.kxsapp.storeRecycle.StoreRecycleMachineListDTO;
+import com.kxs.store.api.dto.kxsapp.storeRecycle.UserReturnRecycleDTO;
+import com.kxs.store.api.model.KxsMachineRecycle;
+import com.kxs.store.api.vo.kxsapp.storeRecycle.*;
+import com.kxs.transfer.api.model.table.DMLData;
+
+/**
+ * 客小爽仓库机具回收申请表(KxsMachineRecycle)表服务接口
+ *
+ * @author 系统
+ * @since 2024-01-08 09:46:02
+ */
+public interface KxsMachineRecycleService extends IService<KxsMachineRecycle> {
+
+
+    void changeData(DMLData dmlData);
+
+    void changeInfoData(DMLData dmlData);
+
+}
+

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

@@ -0,0 +1,26 @@
+package com.kxs.transfer.api.service.store;
+
+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.store.api.dto.kxsapp.store.StoreSearchListDTO;
+import com.kxs.store.api.model.KxsWarehouse;
+import com.kxs.store.api.vo.kxsapp.store.StoreDataVO;
+import com.kxs.store.api.vo.kxsapp.store.StoreListVO;
+import com.kxs.store.api.vo.kxsapp.store.StoreSearchListVO;
+import com.kxs.transfer.api.model.table.DMLData;
+
+import java.util.List;
+
+/**
+ * 客小爽仓库表(KxsWarehouse)表服务接口
+ *
+ * @author 系统
+ * @since 2024-01-08 09:46:01
+ */
+public interface KxsWarehouseService extends IService<KxsWarehouse> {
+
+
+    void changeData(DMLData dmlData);
+}
+

+ 15 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/KxsWarehouseStockService.java

@@ -0,0 +1,15 @@
+package com.kxs.transfer.api.service.store;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.kxs.store.api.model.KxsWarehouseStock;
+
+/**
+ * 客小爽仓库库存统计表(KxsWarehouseStock)表服务接口
+ *
+ * @author 系统
+ * @since 2024-01-08 09:46:02
+ */
+public interface KxsWarehouseStockService extends IService<KxsWarehouseStock> {
+
+}
+

+ 19 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/impl/KxsMachineRecycleInfoServiceImpl.java

@@ -0,0 +1,19 @@
+package com.kxs.transfer.api.service.store.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.kxs.store.api.model.KxsMachineRecycleInfo;
+import com.kxs.transfer.api.mapper.store.KxsMachineRecycleInfoMapper;
+import com.kxs.transfer.api.service.store.KxsMachineRecycleInfoService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 客小爽仓库机具回收申请明细表(KxsMachineRecycleInfo)表服务实现类
+ *
+ * @author 系统
+ * @since 2024-01-09 16:29:20
+ */
+@Service("kxsMachineRecycleInfoService")
+public class KxsMachineRecycleInfoServiceImpl extends ServiceImpl<KxsMachineRecycleInfoMapper, KxsMachineRecycleInfo> implements KxsMachineRecycleInfoService {
+
+}
+

+ 180 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/impl/KxsMachineRecycleServiceImpl.java

@@ -0,0 +1,180 @@
+package com.kxs.transfer.api.service.store.impl;
+
+import cn.hutool.core.date.DatePattern;
+import cn.hutool.core.date.LocalDateTimeUtil;
+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.KxsBrand;
+import com.kxs.product.api.model.KxsMachine;
+import com.kxs.store.api.model.KxsMachineRecycle;
+import com.kxs.store.api.model.KxsMachineRecycleInfo;
+import com.kxs.store.api.model.KxsWarehouse;
+import com.kxs.transfer.api.mapper.product.KxsBrandMapper;
+import com.kxs.transfer.api.mapper.product.KxsMachineMapper;
+import com.kxs.transfer.api.mapper.store.KxsMachineRecycleInfoMapper;
+import com.kxs.transfer.api.mapper.store.KxsMachineRecycleMapper;
+import com.kxs.transfer.api.mapper.store.KxsWarehouseMapper;
+import com.kxs.transfer.api.mapper.user.KxsUserMapper;
+import com.kxs.transfer.api.model.table.DMLData;
+import com.kxs.transfer.api.service.store.KxsMachineRecycleService;
+import com.kxs.user.api.model.KxsUser;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 客小爽仓库机具回收申请表(KxsMachineRecycle)表服务实现类
+ *
+ * @author 系统
+ * @since 2024-01-08 09:46:02
+ */
+@Service("kxsMachineRecycleService")
+@RequiredArgsConstructor
+public class KxsMachineRecycleServiceImpl extends ServiceImpl<KxsMachineRecycleMapper, KxsMachineRecycle> implements KxsMachineRecycleService {
+
+    private final KxsBrandMapper kxsBrandMapper;
+    private final KxsUserMapper kxsUserMapper;
+    private final KxsWarehouseMapper kxsWarehouseMapper;
+    private final KxsMachineMapper kxsMachineMapper;
+
+    private final KxsMachineRecycleInfoMapper kxsMachineRecycleInfoMapper;
+
+
+
+    @Override
+    public void changeData(DMLData dmlData) {
+        //修改的字段值
+        Map<String, Object> validFieldDataMap = dmlData.getValidFieldDataMap();
+        //修改的字段
+        List<String> changeFieldList = dmlData.getChangeFieldList();
+        //操作的主键
+        int id = Integer.parseInt(dmlData.getId());
+
+        KxsMachineRecycle machineRecycle = new KxsMachineRecycle();
+        machineRecycle.setId(id);
+
+        //操作类型
+        OperationType operation = dmlData.getOperation();
+        for (String field : changeFieldList) {
+
+            switch (field) {
+                case "UserId":
+                    int userId = Integer.parseInt(validFieldDataMap.get(field).toString());
+                    KxsUser user = kxsUserMapper.selectById(userId);
+                    if (user != null){
+                        machineRecycle.setUsername(user.getUsername());
+                        machineRecycle.setPhone(user.getPhone());
+                        machineRecycle.setUserCode(user.getUserCode());
+                    }
+                    machineRecycle.setUserId(userId);
+                    break;
+                case "RecycStoreId":
+                    int storeId = Integer.parseInt(validFieldDataMap.get(field).toString());
+                    KxsWarehouse warehouse = kxsWarehouseMapper.selectById(storeId);
+                    if(warehouse != null){
+                        machineRecycle.setWarehouseUserId(warehouse.getUserId());
+                    }
+                    machineRecycle.setWarehouseId(storeId);
+                    break;
+                case "PostType":
+                    int posType = Integer.parseInt(validFieldDataMap.get(field).toString());
+                    if(posType == 2){
+                        machineRecycle.setGetMode(0);
+                    }else{
+                        machineRecycle.setGetMode(1);
+                    }
+                    break;
+                case "RecycOrderNo":
+                    machineRecycle.setOrderSn(validFieldDataMap.get(field).toString());
+                    break;
+                case "ErpCode":
+                    machineRecycle.setTrackNo(validFieldDataMap.get(field).toString());
+                    break;
+                case "BrandId":
+                    Integer brandId = Integer.valueOf(validFieldDataMap.get(field).toString());
+                    KxsBrand brand = kxsBrandMapper.selectById(brandId);
+                    if(brand != null){
+                        machineRecycle.setBrandName(brand.getName());
+                    }
+                    machineRecycle.setBrandId(brandId);
+                    break;
+                case "CreateDate":
+                    machineRecycle.setCreateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "UpdateDate":
+                    machineRecycle.setUpdateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+            }
+            KxsMachineRecycle kxsMachineRecycle = baseMapper.selectById(machineRecycle.getId());
+            if(kxsMachineRecycle == null){
+                baseMapper.insert(machineRecycle);
+            }else{
+                baseMapper.updateById(machineRecycle);
+            }
+        }
+    }
+
+    @Override
+    public void changeInfoData(DMLData dmlData) {
+        //修改的字段值
+        Map<String, Object> validFieldDataMap = dmlData.getValidFieldDataMap();
+        //修改的字段
+        List<String> changeFieldList = dmlData.getChangeFieldList();
+        //操作的主键
+        int id = Integer.parseInt(dmlData.getId());
+
+        KxsMachineRecycleInfo machineRecycle = new KxsMachineRecycleInfo();
+        machineRecycle.setId(id);
+
+        for (String field : changeFieldList) {
+
+            switch (field) {
+                case "SnNo":
+                    KxsMachine machine = kxsMachineMapper.selectOne(Wrappers.<KxsMachine>lambdaQuery().eq(KxsMachine::getPosSn, validFieldDataMap.get(field).toString()));
+                    if (machine != null) {
+                        machineRecycle.setRecycleEndTime(machine.getRecycleEndTime());
+                    }
+                    machineRecycle.setPosSn(validFieldDataMap.get(field).toString());
+                    break;
+                case "OrderId":
+                    machineRecycle.setOrderId(Integer.parseInt(validFieldDataMap.get(field).toString()));
+                    break;
+                case "BrandId":
+                    machineRecycle.setBrandId(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "ResultDate":
+                    machineRecycle.setConfirmTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "CancelDate":
+                    machineRecycle.setCancelTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "Status":
+                    int status = Integer.parseInt(validFieldDataMap.get(field).toString());
+                    if (status == -1) {
+                        machineRecycle.setStatus(3);
+                    } else {
+                        machineRecycle.setStatus(status);
+                    }
+                    break;
+                case "CreateDate":
+                    machineRecycle.setCreateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "UpdateDate":
+                    machineRecycle.setUpdateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+            }
+            KxsMachineRecycleInfo kxsMachineRecycle = kxsMachineRecycleInfoMapper.selectById(machineRecycle.getId());
+            if (kxsMachineRecycle == null) {
+                kxsMachineRecycleInfoMapper.insert(machineRecycle);
+            } else {
+                kxsMachineRecycleInfoMapper.updateById(machineRecycle);
+            }
+        }
+    }
+}
+
+

+ 176 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/impl/KxsWarehouseServiceImpl.java

@@ -0,0 +1,176 @@
+package com.kxs.transfer.api.service.store.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+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.extension.service.impl.ServiceImpl;
+import com.kxs.product.api.model.KxsMachine;
+import com.kxs.store.api.model.KxsWarehouse;
+import com.kxs.store.api.model.KxsWarehouseLimit;
+import com.kxs.store.api.model.KxsWarehouseStock;
+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.service.store.KxsWarehouseService;
+import com.kxs.user.api.model.KxsUser;
+import com.kxs.user.api.model.KxsUserReal;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 客小爽仓库表(KxsWarehouse)表服务实现类
+ *
+ * @author 系统
+ * @since 2024-01-08 09:46:01
+ */
+@Service("kxsWarehouseService")
+@RequiredArgsConstructor
+public class KxsWarehouseServiceImpl extends ServiceImpl<KxsWarehouseMapper, KxsWarehouse> implements KxsWarehouseService {
+
+    private final KxsUserMapper kxsUserMapper;
+
+    private final KxsWarehouseStockMapper kxsWarehouseStockMapper;
+
+    @Override
+    public void changeData(DMLData dmlData) {
+        //修改的字段值
+        Map<String, Object> validFieldDataMap = dmlData.getValidFieldDataMap();
+        //修改的字段
+        List<String> changeFieldList = dmlData.getChangeFieldList();
+        //操作的主键
+        int id = Integer.parseInt(dmlData.getId());
+
+        KxsWarehouse warehouse = new KxsWarehouse();
+
+        KxsWarehouseStock warehouseStock = new KxsWarehouseStock();
+
+        //操作类型
+        OperationType operation = dmlData.getOperation();
+
+        for (String field : changeFieldList) {
+
+            switch (field) {
+                case "UserId":
+                    int userId = Integer.parseInt(validFieldDataMap.get(field).toString());
+                    KxsUser user = kxsUserMapper.selectById(userId);
+                    if (user != null){
+                        warehouse.setContacts(user.getUsername());
+                    }
+                    warehouse.setUserId(userId);
+                    break;
+                case "StoreNo":
+                    warehouse.setWarehouseNo(validFieldDataMap.get(field).toString());
+                    break;
+                case "StoreName":
+                    warehouse.setWarehouseName(validFieldDataMap.get(field).toString());
+                    break;
+                case "ProductName":
+                    warehouse.setBrandName(validFieldDataMap.get(field).toString());
+                    break;
+                case "BrandId":
+                    warehouse.setBrandId(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "Address":
+                    warehouse.setWarehouseAddress(validFieldDataMap.get(field).toString());
+                    break;
+                case "ManageUserId":
+                    warehouse.setWarehouseAdminId(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "ManagerEmail":
+                    warehouse.setAdminEmail(validFieldDataMap.get(field).toString());
+                    break;
+                case "ParentStoreId":
+                    warehouse.setPid(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "Areas":
+                    String[] split = validFieldDataMap.get(field).toString().split(",");
+                    if(split.length == 3){
+                        warehouse.setProvince(split[0]);
+                        warehouse.setCity(split[1]);
+                        warehouse.setArea(split[2]);
+                    }
+                    break;
+                case "StoreStatus":
+                    warehouse.setStatus(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "StoreKind":
+                    int warehouseType = Integer.parseInt(validFieldDataMap.get(field).toString());
+                    if(warehouseType == 0){
+                        warehouse.setWarehouseType(1);
+                    }
+                    if(warehouseType == 1){
+                        warehouse.setWarehouseType(0);
+                    }
+                    if(warehouseType == 2){
+                        warehouse.setWarehouseType(2);
+                    }
+                    break;
+                case "FilePath":
+                    warehouse.setFileUrl(validFieldDataMap.get(field).toString());
+                    break;
+                case "ManageMobile":
+                    warehouse.setWarehousePhone(validFieldDataMap.get(field).toString());
+                    break;
+                case "CreateMan":
+                    warehouse.setCreateBy(validFieldDataMap.get(field).toString());
+                    break;
+                case "Deposit":
+                    warehouse.setPledgeAmount(new BigDecimal(validFieldDataMap.get(field).toString()));
+                    break;
+                case "Remark":
+                    warehouse.setRemark(validFieldDataMap.get(field).toString());
+                    break;
+                case "UpdateMan":
+                    warehouse.setUpdateBy(validFieldDataMap.get(field).toString());
+                    break;
+                case "CreateDate":
+                    warehouse.setCreateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "UpdateDate":
+                    warehouse.setUpdateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "TotalNum":
+                    warehouseStock.setStockTotal(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "LaveNum":
+                    warehouseStock.setStockNum(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "OutNum":
+                    warehouseStock.setDeliveryNum(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+            }
+        }
+        if(operation.equals(OperationType.UPDATE)){
+            if(BeanUtil.isNotEmpty(warehouse, "entityClass")){
+                warehouse.setId(id);
+                baseMapper.updateById(warehouse);
+            }
+            if(BeanUtil.isNotEmpty(warehouseStock, "entityClass")){
+                warehouseStock.setId(id);
+                kxsWarehouseStockMapper.updateById(warehouseStock);
+            }
+        }
+        if(operation.equals(OperationType.INSERT)){
+            KxsWarehouse kxsWarehouse = baseMapper.selectById(warehouse.getId());
+            if(kxsWarehouse == null){
+                warehouse.setId(id);
+                baseMapper.insert(warehouse);
+            }
+            KxsWarehouseStock kxsWarehouseStock = kxsWarehouseStockMapper.selectById(id);
+            if(kxsWarehouseStock == null){
+                warehouseStock.setId(id);
+                warehouseStock.setWarehouseId(id);
+                kxsWarehouseStockMapper.insert(warehouseStock);
+            }
+        }
+
+    }
+}
+

+ 20 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/impl/KxsWarehouseStockServiceImpl.java

@@ -0,0 +1,20 @@
+package com.kxs.transfer.api.service.store.impl;
+
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.kxs.store.api.model.KxsWarehouseStock;
+import com.kxs.transfer.api.mapper.store.KxsWarehouseStockMapper;
+import com.kxs.transfer.api.service.store.KxsWarehouseStockService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 客小爽仓库库存统计表(KxsWarehouseStock)表服务实现类
+ *
+ * @author 系统
+ * @since 2024-01-08 09:46:02
+ */
+@Service("kxsWarehouseStockService")
+public class KxsWarehouseStockServiceImpl extends ServiceImpl<KxsWarehouseStockMapper, KxsWarehouseStock> implements KxsWarehouseStockService {
+
+}
+

+ 71 - 0
kxs-transfer/src/main/resources/import.txt

@@ -110,3 +110,74 @@ select Id as id,  CreateDate as create_time, UpdateDate as update_time, Sort as
 ParentId as pid, ColDetail as col_detail, ColPicPath as col_pic_path, ColName as col_name, ColId as col_id
 FROM Col where id in(21,22,23,25,26,27,30)
 
+//市场活动
+select Id as id, CreateDate as create_time, UpdateDate as update_time, Sort as sort,
+Title as title, case ColId when '007001' then 2 when '007002' then 1 end menu_id, PicPath as pic_path, Contents as contents, Url as url, Status as status
+FROM Advertisment where ColId in ('007001', '007002')
+
+//服务中心
+select Id as id, CreateDate as create_time, UpdateDate as update_time, Sort as sort,
+Title as title, Content as content, CategoryId as menu_id, CreateMan as create_by
+from ServiceCenter
+ where `Status` > -1
+
+select Id as id, CreateDate as create_time, UpdateDate as update_time, Sort as sort,
+ColName as title
+FROM Col where id in (3,4,5,6,32,33,34,35,36,38)
+
+//品牌表
+SELECT a.Id as id, a.CreateDate as create_time, a.UpdateDate as update_time, a.Sort as sort,
+a.Name as name, case a.Kind when 1 then 0 when 2 then 1 end brand_type, a.PosPrice as pos_price, a.DefaultDeposit as default_pledge, a.CountOfBox as count_of_box,ActTradeAmount as act_amount,FluxAmount as flux_amount, FluxProfit as flux_profit,
+ c.ColPicPath
+from KqProducts a
+left join KxsBsServer.Col c on a.AdColId = c.ColId
+where a.`Status` > 0
+//机具表
+select a.Id as id, a.UserId as user_id,a.CreateDate as create_time, a.UpdateDate as update_time,
+a.PosSn as pos_sn, a.StoreId as warehouse_id, a.BindMerchantId as merchant_id, a.BrandId as brand_id,
+a.IsPurchase as recycle_status, a.RecycEndDate as recycle_end_time,
+a.PosSnType as machine_type, ifnull(a.PrizeParams, 299) as cash_pledge, case when a.SeoKeyword > 1000 then a.SeoKeyword / 100 ELSE a.SeoKeyword end as source_pledge,
+a.BindingTime as bind_time, a.ActivationTime as act_time, a.DownFee as machine_ratio, a.ActivationState as is_act, a.BindingState as bind_status,
+a.IsFirst as is_first, a.LeaderUserId as  leader_id, a.OpId as  partner_id, TransferTime as delivery_time, UpFeeFlag as up_fee_flag, DownFeeFlag as down_fee_flag,
+IsSupplement as is_supply, IsOpAct as is_op_act, case when a.UserId = 0 then 0  ELSE 1 end status, RecycStatus,
+case when a.RecycEndDate < NOW() && a.BindingState = 0 then 1 ELSE 0 end return_status,
+b.StoreName as warehouse_name
+FROM PosMachinesTwo a LEFT JOIN StoreHouse b on  a.StoreId = b.id
+//仓库表
+select a.Id as id, a.UserId as user_id,a.CreateDate as create_time, a.UpdateDate as update_time,
+StoreNo as warehouse_no, StoreName as warehouse_name, BrandId as brand_id, ProductName as brand_name,a.Address as warehouse_address,
+ManageUserId as warehouse_admin_id, ManagerEmail as admin_email, ParentStoreId as pid,
+SUBSTRING_INDEX(a.Areas, ',', 1) AS province,
+SUBSTRING_INDEX(SUBSTRING_INDEX(a.Areas, ',', -2), ',', 1) AS city,
+SUBSTRING_INDEX(a.Areas, ',', -1) AS area,
+StoreStatus as status, case a.StoreKind when 0 then 1 when 1 then 0 when 2 then 2  end warehouse_type, FilePath as file_url, ManageMobile as warehouse_phone,
+a.CreateMan as create_by ,Deposit as pledge_amount, a.Remark as remark, a.UpdateMan as update_by, u.RealName as contacts
+from StoreHouse a
+LEFT JOIN Users u on a.UserId = u.Id
+-- 仓库库存统计表
+SELECT a.Id as id, a.UserId as user_id,a.CreateDate as create_time, a.UpdateDate as update_time,
+TotalNum as stock_total, LaveNum as stock_num, OutNum as delivery_num, a.Id as warehouse_id
+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
+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.UserId as user_id,a.CreateDate as create_time, a.UpdateDate as update_time,
+case a.PostType when 2 then 0 ELSE 1 end get_mode, a.RecycOrderNo as order_sn, a.RecycStoreId as warehouse_id,
+a.ErpCode as  track_no, a.BrandId as brand_id, b.`Name` as brand_name,
+u.RealName as username, u.Mobile as phone, u.MakerCode as user_code,
+s.UserId as warehouse_user_id
+FROM RecycMachineOrder a
+LEFT JOIN KqProducts b on a.BrandId = b.Id
+left JOIN Users u on a.UserId = u.id
+LEFT JOIN StoreHouse s on s.id = a.RecycStoreId
+-------
+SELECT a.Id as id, a.CreateDate as create_time, a.UpdateDate as update_time,
+a.SnNo as pos_sn, a.OrderId as order_id, a.BrandId as brand_id, a.ResultDate as confirm_time, a.CancelDate as cancel_time,
+case a.Status when -1 then 3 when 0 then 0 when 1 then 1 when 2 then 2 end status, b.RecycEndDate as recycle_end_time
+FROM RecycMachineOrderPos a LEFT JOIN PosMachinesTwo b on a.SnNo = b.PosSn