24282 hace 1 año
padre
commit
04fe001da7

+ 8 - 53
sd-business/src/main/java/com/sd/business/controller/sku/SkuClassifyController.java

@@ -1,13 +1,12 @@
 package com.sd.business.controller.sku;
 
-import org.springframework.web.bind.annotation.*;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.sd.business.entity.sku.vo.SkuClassifyVo;
-import com.sd.business.entity.sku.dto.SkuClassifySelectDto;
+import com.alibaba.fastjson.JSONObject;
 import com.sd.business.entity.sku.dto.SkuClassifyDto;
-import com.ruoyi.common.core.domain.BaseSelectDto;
 import com.sd.business.service.sku.SkuClassifyService;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
 import java.util.List;
 
@@ -27,55 +26,11 @@ public class SkuClassifyController {
     private SkuClassifyService skuClassifyService;
 
     /**
-     * sku分类列表
+     * sku树形列表
      */
-    @PostMapping("/list")
-    public List<SkuClassifyVo> list() {
-        return skuClassifyService.getList();
+    @PostMapping("/tree")
+    public List<JSONObject> tree(SkuClassifyDto dto) {
+        return skuClassifyService.tree(dto);
     }
 
-    /**
-     * sku分类分页
-     */
-    @PostMapping("/page")
-    public Page<SkuClassifyVo> page(@RequestBody SkuClassifySelectDto dto) {
-        return skuClassifyService.getPage(dto);
-    }
-
-    /**
-     * sku分类明细
-     */
-    @PostMapping("/detail")
-    public SkuClassifyVo detail(@RequestBody BaseSelectDto dto) {
-        return skuClassifyService.detail(dto.getId());
-    }
-
-    /**
-     * sku分类新增
-     */
-    @PostMapping("/add")
-    public void add(@RequestBody SkuClassifyDto skuClassifyDto) {
-        skuClassifyService.add(skuClassifyDto);
-    }
-
-    /**
-     * sku分类编辑
-     */
-    @PostMapping("/edit")
-    public void edit(@RequestBody SkuClassifyDto skuClassifyDto) {
-        skuClassifyService.edit(skuClassifyDto);
-    }
-
-    /**
-     * sku分类删除
-     */
-    @PostMapping("/delete")
-    public void delete(@RequestBody BaseSelectDto dto) {
-        skuClassifyService.delete(dto.getId());
-    }
-
-    @PostMapping("/saveBath")
-    public Boolean saveBath(@RequestBody List<SkuClassifyVo> skuClassifyDtos){
-        return skuClassifyService.saveBatch(skuClassifyDtos);
-    }
 }

+ 6 - 1
sd-business/src/main/java/com/sd/business/entity/sku/dto/SkuClassifyDto.java

@@ -7,11 +7,16 @@ import lombok.Setter;
 /**
  * sku分类新增编辑入参实体
  *
- * @author 
+ * @author
  * @since 2023-07-03
  */
 @Getter
 @Setter
 public class SkuClassifyDto extends SkuClassify {
 
+    /**
+     * 分类名称
+     */
+    private String name;
+
 }

+ 1 - 17
sd-business/src/main/java/com/sd/business/mapper/sku/SkuClassifyMapper.java

@@ -1,13 +1,7 @@
 package com.sd.business.mapper.sku;
 
-import com.sd.business.entity.sku.po.SkuClassify;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.sd.business.entity.sku.vo.SkuClassifyVo;
-import com.ruoyi.common.utils.wrapper.IWrapper;
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
+import com.sd.business.entity.sku.po.SkuClassify;
 
 /**
  * <p>
@@ -19,14 +13,4 @@ import java.util.List;
  */
 public interface SkuClassifyMapper extends BaseMapper<SkuClassify> {
 
-    /**
-     * sku分类列表
-     */
-    List<SkuClassifyVo> getList(@Param("ew") IWrapper<SkuClassify> wrapper);
-
-    /**
-     * sku分类分页
-     */
-    Page<SkuClassifyVo> getPage(@Param("page") Page<Object> page, @Param("ew") IWrapper<SkuClassify> wrapper);
-
 }

+ 3 - 35
sd-business/src/main/java/com/sd/business/service/sku/SkuClassifyService.java

@@ -1,11 +1,9 @@
 package com.sd.business.service.sku;
 
-import com.sd.business.entity.sku.po.SkuClassify;
+import com.alibaba.fastjson.JSONObject;
 import com.ruoyi.common.core.service.BaseService;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.sd.business.entity.sku.vo.SkuClassifyVo;
-import com.sd.business.entity.sku.dto.SkuClassifySelectDto;
 import com.sd.business.entity.sku.dto.SkuClassifyDto;
+import com.sd.business.entity.sku.po.SkuClassify;
 
 import java.util.List;
 
@@ -19,36 +17,6 @@ import java.util.List;
  */
 public interface SkuClassifyService extends BaseService<SkuClassify> {
 
-    /**
-     * sku分类列表
-     */
-    List<SkuClassifyVo> getList();
-
-    /**
-     * sku分类分页
-     */
-    Page<SkuClassifyVo> getPage(SkuClassifySelectDto dto);
-
-    /**
-     * sku分类明细
-     */
-    SkuClassifyVo detail(Long id);
-
-    /**
-     * sku分类新增
-     */
-    void add(SkuClassifyDto skuClassifyDto);
-
-    /**
-     * sku分类编辑
-     */
-    void edit(SkuClassifyDto skuClassifyDto);
-
-    /**
-     * sku分类删除
-     */
-    void delete(Long id);
-
-    Boolean saveBatch(List<SkuClassifyVo> skuClassifyDtos);
+    List<JSONObject> tree(SkuClassifyDto dto);
 
 }

+ 11 - 48
sd-business/src/main/java/com/sd/business/service/sku/impl/SkuClassifyServiceImpl.java

@@ -1,17 +1,14 @@
 package com.sd.business.service.sku.impl;
 
+import cn.hutool.core.util.ObjectUtil;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.utils.TreeUtil;
+import com.sd.business.entity.sku.dto.SkuClassifyDto;
 import com.sd.business.entity.sku.po.SkuClassify;
 import com.sd.business.mapper.sku.SkuClassifyMapper;
 import com.sd.business.service.sku.SkuClassifyService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.sd.business.entity.sku.vo.SkuClassifyVo;
-import com.sd.business.entity.sku.dto.SkuClassifySelectDto;
-import com.ruoyi.common.utils.wrapper.IWrapper;
-import com.sd.business.entity.sku.dto.SkuClassifyDto;
-import cn.hutool.core.bean.BeanUtil;
 
 import java.util.List;
 
@@ -27,46 +24,12 @@ import java.util.List;
 public class SkuClassifyServiceImpl extends ServiceImpl<SkuClassifyMapper, SkuClassify> implements SkuClassifyService {
 
     @Override
-    public List<SkuClassifyVo> getList() {
-        IWrapper<SkuClassify> wrapper = getWrapper();
-        wrapper.orderByDesc("sc", SkuClassify::getId);
-        List<SkuClassifyVo> list = this.baseMapper.getList(wrapper);
-        return list;
-    }
-
-    @Override
-    public Page<SkuClassifyVo> getPage(SkuClassifySelectDto dto) {
-        IWrapper<SkuClassify> wrapper = getWrapper();
-        wrapper.orderByDesc("sc", SkuClassify::getId);
-        Page<SkuClassifyVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
-        return page;
-    }
-
-    @Override
-    public SkuClassifyVo detail(Long id) {
-        SkuClassify SkuClassify = this.getById(id);
-        SkuClassifyVo result = BeanUtil.toBean(SkuClassify, SkuClassifyVo.class);
-        return result;
-    }
-
-    @Override
-    public void add(SkuClassifyDto skuClassifyDto) {
-        this.save(skuClassifyDto);
-    }
-
-    @Override
-    public void edit(SkuClassifyDto skuClassifyDto) {
-        this.updateById(skuClassifyDto);
-    }
-
-    @Override
-    public void delete(Long id) {
-        this.removeById(id);
-    }
-
-    @Override
-    public Boolean saveBatch(List<SkuClassifyVo> skuClassifyDtos) {
-        return this.executeBatch(skuClassifyDtos,null);
+    public List<JSONObject> tree(SkuClassifyDto dto) {
+        List<SkuClassify> list = list(q -> q
+                .like(ObjectUtil.isNotEmpty(dto.getName()), SkuClassify::getName, dto.getName())
+                .orderByAsc(SkuClassify::getSort)
+        );
+        return TreeUtil.buildTreeObj(list);
     }
 
 }

+ 0 - 27
sd-business/src/main/resources/mapper/sku/SkuClassifyMapper.xml

@@ -1,32 +1,5 @@
 <?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.sd.business.mapper.sku.SkuClassifyMapper">
-    <select id="getList" resultType="com.sd.business.entity.sku.vo.SkuClassifyVo">
-        select
-            sc.id,
-            sc.parent_id,
-            sc.name,
-            sc.sort,
-            sc.create_user,
-            sc.create_time,
-            sc.update_user,
-            sc.update_time
-        from sku_classify sc
-            ${ew.customSqlSegment}
-    </select>
-
-    <select id="getPage" resultType="com.sd.business.entity.sku.vo.SkuClassifyVo">
-        select
-            sc.id,
-            sc.parent_id,
-            sc.name,
-            sc.sort,
-            sc.create_user,
-            sc.create_time,
-            sc.update_user,
-            sc.update_time
-        from sku_classify sc
-            ${ew.customSqlSegment}
-    </select>
 
 </mapper>

+ 10 - 2
sd-wln/src/main/java/com/sd/wln/scheduled/WlnSyncTask.java

@@ -3,9 +3,14 @@ package com.sd.wln.scheduled;
 import com.sd.wln.service.WlnOrderService;
 import com.sd.wln.service.WlnSkuService;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Profile;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
+/**
+ * 同步万里牛数据(本地环境不执行同步逻辑)
+ */
+@Profile({"test", "prod"})
 @Component
 public class WlnSyncTask {
 
@@ -16,7 +21,7 @@ public class WlnSyncTask {
     private WlnOrderService wlnOrderService;
 
     /**
-     * 每天同步库存
+     * 每天凌晨1点同步一次sku信息
      */
     @Scheduled(cron = "0 0 1 * * ?")
     // @Scheduled(cron = "0/1 * * * * ?")
@@ -36,7 +41,10 @@ public class WlnSyncTask {
         }
     }
 
-    @Scheduled(fixedDelay = 30 * 1000)
+    /**
+     * 每分钟同步一次订单数据
+     */
+    @Scheduled(fixedDelay = 60 * 1000)
     private void syncOrder() {
         wlnOrderService.syncOrder();
     }

+ 18 - 16
sd-wln/src/main/java/com/sd/wln/service/impl/WlnOrderServiceImpl.java

@@ -55,14 +55,9 @@ public class WlnOrderServiceImpl implements WlnOrderService {
 
     @Override
     public boolean syncOrder() {
-        Date endDate = new Date();
 
-        // 查询万里牛3天之内的全部订单
-        List<JSONObject> wlnOrderList = getWlnOrderList(endDate);
-        if (wlnOrderList == null) {
-            log.error("订单同步失败");
-            return false;
-        }
+        // 当前时间
+        Date endDate = new Date();
 
         // 保存订单列表
         List<OrderInfo> saveOrderList = new ArrayList<>();
@@ -71,20 +66,26 @@ public class WlnOrderServiceImpl implements WlnOrderService {
         // 保存订单明细列表
         List<OrderSku> saveOrderSkuList = new ArrayList<>();
 
-        // 查询事业部map
-        Map<String, Department> departmentMap = getDepartmentMap();
+        // 查询近3天万里牛订单
+        List<JSONObject> wlnOrderList = getWlnOrderList(endDate);
+        if (wlnOrderList == null || wlnOrderList.size() == 0) {
+            return false;
+        }
 
-        // 查询近3天已存在数据库中德订单map
+        // 查询近3天已存在数据库中的订单
         Map<String, OrderInfo> orderMap = orderService.mapKEntity(OrderInfo::getWlnUid,
                 q -> q.between(OrderInfo::getWlnApproveTime, DateUtil.offsetDay(endDate, -3), endDate));
 
-        // 获取sku规格map
+        // 查询事业部
+        Map<String, Department> departmentMap = getDepartmentMap();
+
+        // 获取sku规格
         Map<String, SkuSpec> skuSpecMap = getSkuSpecMap(wlnOrderList);
 
         // 循环万里牛订单
         for (JSONObject wlnOrder : wlnOrderList) {
 
-            // 如果订单存在,且订单状态改变,执行update
+            // 如果订单存在于数据库,且订单状态改变,执行update
             OrderInfo orderInfo = orderMap.get(wlnOrder.getString("uid"));
             if (orderInfo != null) {
                 Integer processStatus = wlnOrder.getInteger("process_status");
@@ -95,7 +96,7 @@ public class WlnOrderServiceImpl implements WlnOrderService {
                 continue;
             }
 
-            // 没有匹配到事业部则跳过
+            // 没有匹配到事业部,则跳过
             Department department = departmentMap.get(wlnOrder.getString("storage_code"));
             if (department == null) {
                 continue;
@@ -135,16 +136,17 @@ public class WlnOrderServiceImpl implements WlnOrderService {
             log.error("同步订单失败", e);
             return false;
         }
+
     }
 
     /**
-     * 查询万里牛3天之内的全部订单
+     * 查询近3天万里牛订单
      */
     private List<JSONObject> getWlnOrderList(Date endDate) {
         List<DictCommonData> warehouseCodeList = dictCommonDataService.list(q -> q
                 .eq(DictCommonData::getDictCode, "warehouse_code"));
         if (warehouseCodeList.size() == 0) {
-            log.error("仓库字典:warehouse_code 为空");
+            log.error("订单同步失败,仓库字典:warehouse_code 为空");
             return null;
         }
 
@@ -177,7 +179,7 @@ public class WlnOrderServiceImpl implements WlnOrderService {
     }
 
     /**
-     * 事业部id Map
+     * 查询事业部
      */
     private Map<String, Department> getDepartmentMap() {
         List<Department> departmentList = departmentService.list();