Ver código fonte

获取用户信息新增邀请码,退出登录修改为post

mac 2 anos atrás
pai
commit
7e89c4f18f

+ 17 - 4
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/model/KxsMachineTrack.java

@@ -87,6 +87,12 @@ public class KxsMachineTrack extends Model<KxsMachineTrack> implements Serializa
     @Schema(description = "机具ID")
     private Integer machineId;
 
+    /**
+     * 机具
+     */
+    @Schema(description = "机具")
+    private String posSn;
+
 
     /**
      * 品牌ID
@@ -96,19 +102,26 @@ public class KxsMachineTrack extends Model<KxsMachineTrack> implements Serializa
 
 
     /**
-     * 轨迹类型
+     * 轨迹类型 0 采购 1 调拨 2 出货 3 退货 4 驳回 5 回仓退款 6 换机出库 7 换机入库
      */
-    @Schema(description = "轨迹类型")
+    @Schema(description = "轨迹类型 0 采购 1 调拨 2 出货 3 退货 4 驳回 5 回仓退款 6 换机出库 7 换机入库")
     private Integer trackType;
 
 
     /**
-     * 变动方向 0出库 1入
+     * 变动方向 0入库 1出
      */
-    @Schema(description = "变动方向 0出库 1入库")
+    @Schema(description = "变动方向 0入库 1出库")
     private Integer changeType;
 
 
+    /**
+     * 合伙人ID'
+     */
+    @Schema(description = "合伙人ID'")
+    private Integer partnerId;
+
+
 
 
 }

+ 2 - 0
kxs-product/kxs-product-biz/src/main/resources/mapper/KxsMachineTrackMapper.xml

@@ -14,6 +14,8 @@
         <result column="brand_id" property="brandId" />
         <result column="track_type" property="trackType" />
         <result column="change_type" property="changeType" />
+        <result column="partner_id" property="partnerId" />
+        <result column="pos_sn" property="posSn" />
 
     </resultMap>
 

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

@@ -13,6 +13,7 @@ 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.*;
+import com.kxs.transfer.api.service.product.impl.KxsMachineTrackService;
 import com.kxs.transfer.api.service.store.KxsMachineRecycleService;
 import com.kxs.transfer.api.service.store.KxsWarehouseService;
 import com.kxs.transfer.api.service.sys.KxsMorningLogService;
@@ -74,6 +75,8 @@ public class DtsController {
     private final KxsTicketService kxsTicketService;
     private final KxsTicketTransferService kxsTicketTransferService;
     private final KxsMerchantService kxsMerchantService;
+    private final KxsMachineTransferService kxsMachineTransferService;
+    private final KxsMachineTrackService kxsMachineTrackService;
 
     //仓库模块
     private final KxsWarehouseService kxsWarehouseService;
@@ -226,6 +229,14 @@ public class DtsController {
             if ("PosMachinesTwo".equals(dmlData.getTableName())) {
                 kxsMachineService.changeData(dmlData);
             }
+            //未绑定划拨记录表
+            if ("UserStoreChange".equals(dmlData.getTableName())) {
+                kxsMachineTransferService.changeData(dmlData);
+            }
+            //机具轨迹记录表
+            if ("StoreChangeHistory".equals(dmlData.getTableName())) {
+                kxsMachineTrackService.changeData(dmlData);
+            }
             //商户表
             if ("PosMerchantInfo".equals(dmlData.getTableName())) {
                 kxsMerchantService.changeData(dmlData);

+ 19 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/product/KxsMachineTrackMapper.java

@@ -0,0 +1,19 @@
+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.KxsMachineTrack;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 客小爽机具轨迹记录表(KxsMachineTrack)表数据库访问层
+ *
+ * @author 系统
+ * @since 2023-12-20 10:09:35
+ */
+@Mapper
+@DS("product")
+public interface KxsMachineTrackMapper extends BaseMapper<KxsMachineTrack> {
+
+}
+

+ 24 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/product/KxsMachineTransferMapper.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.MachineTransferListDTO;
+import com.kxs.product.api.model.KxsMachineTransfer;
+import com.kxs.product.api.vo.kxsapp.machine.MachineTransferListVO;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * 客小爽机具划拨表(KxsMachineTransfer)表数据库访问层
+ *
+ * @author 系统
+ * @since 2023-12-20 10:09:35
+ */
+@Mapper
+@DS("product")
+public interface KxsMachineTransferMapper extends BaseMapper<KxsMachineTransfer> {
+
+}
+

+ 21 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/product/KxsMachineTransferService.java

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

+ 100 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/product/impl/KxsMachineTrackService.java

@@ -0,0 +1,100 @@
+package com.kxs.transfer.api.service.product.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.KxsMachine;
+import com.kxs.product.api.model.KxsMachineTrack;
+import com.kxs.product.api.model.KxsMachineTransfer;
+import com.kxs.transfer.api.mapper.product.KxsMachineMapper;
+import com.kxs.transfer.api.mapper.product.KxsMachineTrackMapper;
+import com.kxs.transfer.api.model.table.DMLData;
+import com.kxs.transfer.api.model.table.FieldData;
+import com.kxs.user.api.model.KxsUser;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 客小爽机具轨迹记录表(KxsMachineTrack)表服务实现类
+ *
+ * @author 系统
+ * @since 2023-12-20 10:09:35
+ */
+@Service("kxsMachineTrackService")
+@RequiredArgsConstructor
+public class KxsMachineTrackService extends ServiceImpl<KxsMachineTrackMapper, KxsMachineTrack> {
+
+    private final KxsMachineMapper kxsMachineMapper;
+
+    public void changeData(DMLData dmlData) {
+        //修改的字段值
+        Map<String, Object> validFieldDataMap = dmlData.getValidFieldDataMap();
+        //修改的字段
+        List<String> changeFieldList = dmlData.getChangeFieldList();
+        //操作的主键
+        int id = Integer.parseInt(dmlData.getId());
+
+        KxsMachineTrack machineTrack = new KxsMachineTrack();
+        machineTrack.setId(id);
+
+        //操作类型
+        OperationType operation = dmlData.getOperation();
+
+        if(operation.equals(OperationType.DELETE)){
+            baseMapper.deleteById(id);
+            return;
+        }
+        for (String field : changeFieldList) {
+
+            switch (field) {
+                case "FromUserId":
+                    machineTrack.setBeforeUserId(Integer.parseInt(validFieldDataMap.get(field).toString()));
+                    break;
+                case "ToUserId":
+                    int userId = Integer.parseInt(validFieldDataMap.get(field).toString());
+                    machineTrack.setAfterUserId(userId);
+                    break;
+                case "SnNo":
+                    String sn = validFieldDataMap.get(field).toString();
+                    KxsMachine kxsMachine = kxsMachineMapper.selectOne(Wrappers.<KxsMachine>lambdaQuery().eq(KxsMachine::getPosSn, sn));
+                    if(kxsMachine == null){
+                        return;
+                    }
+                    machineTrack.setPosSn(sn);
+                    machineTrack.setMachineId(kxsMachine.getId());
+                    break;
+                case "BrandId":
+                    machineTrack.setBrandId(Integer.parseInt(validFieldDataMap.get(field).toString()));
+                    break;
+                case "TransType":
+                    machineTrack.setTrackType(Integer.parseInt(validFieldDataMap.get(field).toString()));
+                    break;
+                case "OpId":
+                    machineTrack.setPartnerId(Integer.parseInt(validFieldDataMap.get(field).toString()));
+                    break;
+                case "CreateDate":
+                    machineTrack.setCreateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "UpdateDate":
+                    machineTrack.setUpdateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+            }
+        }
+
+        if(operation.equals(OperationType.INSERT)){
+            KxsMachineTrack kxsMachineTrack = baseMapper.selectById(id);
+            if(kxsMachineTrack == null){
+                baseMapper.insert(machineTrack);
+            }
+        }
+        if(operation.equals(OperationType.UPDATE)){
+            baseMapper.updateById(machineTrack);
+        }
+    }
+}
+

+ 118 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/product/impl/KxsMachineTransferServiceImpl.java

@@ -0,0 +1,118 @@
+package com.kxs.transfer.api.service.product.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.KxsMachine;
+import com.kxs.product.api.model.KxsMachineTransfer;
+import com.kxs.system.api.model.KxsAppModal;
+import com.kxs.transfer.api.mapper.product.KxsMachineMapper;
+import com.kxs.transfer.api.mapper.product.KxsMachineTransferMapper;
+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.product.KxsMachineTransferService;
+import com.kxs.user.api.model.KxsUser;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 客小爽机具划拨表(KxsMachineTransfer)表服务实现类
+ *
+ * @author 系统
+ * @since 2023-12-20 10:09:35
+ */
+@Service("kxsMachineTransferService")
+@RequiredArgsConstructor
+public class KxsMachineTransferServiceImpl extends ServiceImpl<KxsMachineTransferMapper, KxsMachineTransfer> implements KxsMachineTransferService {
+
+    private final KxsMachineMapper kxsMachineMapper;
+
+    private final KxsUserMapper kxsUserMapper;
+    @Override
+    public void changeData(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());
+        if(fieldDataMap.get("TransType") == null){
+            return;
+        }
+        if(fieldDataMap.get("TransType").getValue() == null){
+            return;
+        }
+        //创客划拨
+        int transType = Integer.parseInt(fieldDataMap.get("TransType").getValue().toString());
+        if(transType != 11){
+            return;
+        }
+        KxsMachineTransfer machineTransfer = new KxsMachineTransfer();
+        machineTransfer.setId(id);
+
+        //操作类型
+        OperationType operation = dmlData.getOperation();
+
+        if(operation.equals(OperationType.DELETE)){
+            baseMapper.deleteById(id);
+            return;
+        }
+        for (String field : changeFieldList) {
+
+            switch (field) {
+                case "FromUserId":
+                    machineTransfer.setSendUserId(Integer.parseInt(validFieldDataMap.get(field).toString()));
+                    break;
+                case "ToUserId":
+                    int userId = Integer.parseInt(validFieldDataMap.get(field).toString());
+                    KxsUser user = kxsUserMapper.selectById(userId);
+                    if(user == null){
+                        return;
+                    }
+                    machineTransfer.setToUserId(userId);
+                    machineTransfer.setToUserName(user.getUsername());
+                    machineTransfer.setToUserCode(user.getUserCode());
+                    break;
+                case "SnNo":
+                    String sn = validFieldDataMap.get(field).toString();
+                    KxsMachine kxsMachine = kxsMachineMapper.selectOne(Wrappers.<KxsMachine>lambdaQuery().eq(KxsMachine::getPosSn, sn));
+                    if(kxsMachine == null){
+                        return;
+                    }
+                    machineTransfer.setMachineSn(sn);
+                    machineTransfer.setMachineId(kxsMachine.getId());
+                    machineTransfer.setMachineType(kxsMachine.getMachineType());
+                    break;
+                case "BrandId":
+                    machineTransfer.setBrandId(Integer.parseInt(validFieldDataMap.get(field).toString()));
+                    break;
+                case "CreateDate":
+                    machineTransfer.setCreateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "UpdateDate":
+                    machineTransfer.setUpdateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+            }
+        }
+
+        if(operation.equals(OperationType.INSERT)){
+            KxsMachineTransfer kxsMachineTransfer = baseMapper.selectById(id);
+            if(kxsMachineTransfer == null){
+                baseMapper.insert(machineTransfer);
+            }
+        }
+        if(operation.equals(OperationType.UPDATE)){
+            baseMapper.updateById(machineTransfer);
+        }
+    }
+}
+

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

@@ -267,6 +267,21 @@ SeoTitle as create_by, Remark as remark, ParentId as stage_id, ChargeAmount as a
 FROM ToChargeBackRecordSub a WHERE status > -1
 ORDER BY Id, ParentId
 
+--未绑定划拨记录
+select a.Id as id,a.CreateDate as create_time, a.UpdateDate as update_time,
+a.SnNo as machine_sn, a.BrandId as brand_id, a.FromUserId as send_user_id, a.ToUserId as to_user_id, m.id as machine_id, m.PosSnType as machine_type, 0 as transfer_type,
+u.RealName as to_user_name, u.MakerCode as to_user_code
+from UserStoreChange a
+left join Users u on a.ToUserId = u.Id
+left join PosMachinesTwo m on a.SnNo = m.PosSn
+WHERE a.TransType = 11
+
+--机具轨迹记录表
+select a.Id as id,a.CreateDate as create_time, a.UpdateDate as update_time,
+m.id as machine_id, a.BrandId as brand_id, a.FromUserId as before_user_id, ToUserId as after_user_id, TransType as track_type, a.OpId as partner_id
+FROM StoreChangeHistory a
+left join PosMachinesTwo m on a.SnNo = m.PosSn
+where m.id is not null
 
 
 

+ 6 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/kxsapp/user/UserInfoVO.java

@@ -50,6 +50,12 @@ public class UserInfoVO implements Serializable {
     @Schema(description = "手机号")
     private String phone;
 
+    /**
+     * 用户邀请码
+     */
+    @Schema(description = "用户邀请码")
+    private String userCode;
+
 
     /**
      * 地址

+ 1 - 1
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/controller/kxsapp/KxsAppController.java

@@ -126,7 +126,7 @@ public class KxsAppController {
      *
      * @return 退出登陆
      */
-    @DeleteMapping("logout")
+    @PostMapping("logout")
     public R logout(@RequestHeader(value = HttpHeaders.AUTHORIZATION, required = false) String authHeader) {
         if (StrUtil.isBlank(authHeader)) {
             return R.ok(Boolean.TRUE);