自动化立体仓库 - WMS系统
18516761980
2022-06-16 4f7488aa49ab6420d25a6f7883ffebccbec9b73a
Merge branch 'master' of https://gitee.com/luxiaotao1123/zy-asrs into hylyasrs

# Conflicts:
# src/main/java/com/zy/asrs/controller/MatCodeController.java
# src/main/java/com/zy/asrs/utils/VersionUtils.java
# src/main/java/com/zy/common/utils/excel/matcode/MatCodeExcel.java
# src/main/java/com/zy/common/utils/excel/matcode/MatCodeExcelListener.java
# src/main/resources/application.yml
5个文件已修改
2个文件已添加
92 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/mapper/OrderMapper.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/OrderDetlService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/OrderService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/OrderMoveHistoryScheduler.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/OrderMoveHistoryHandler.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/OrderMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/mapper/OrderMapper.java
@@ -16,4 +16,5 @@
    List<Order> selectComplete();
    int addToLogTable(Order order);
}
src/main/java/com/zy/asrs/service/OrderDetlService.java
@@ -24,4 +24,5 @@
    boolean modifyStatus(Long orderId, Integer status);
    void addToLogTable(OrderDetl orderDetl);
}
src/main/java/com/zy/asrs/service/OrderService.java
@@ -24,4 +24,5 @@
    List<Order> selectComplete();
    void addToLogTable(Order order);
}
src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java
@@ -161,4 +161,9 @@
        return this.baseMapper.selectComplete();
    }
    @Override
    public void addToLogTable(Order order) {
        this.baseMapper.addToLogTable(order);
    }
}
src/main/java/com/zy/asrs/task/OrderMoveHistoryScheduler.java
New file
@@ -0,0 +1,22 @@
package com.zy.asrs.task;
import com.zy.asrs.task.handler.OrderMoveHistoryHandler;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@Component
public class OrderMoveHistoryScheduler {
    @Autowired
    private OrderMoveHistoryHandler handler;
    /**
     * 将已完成order和orderDetl移动到log表
     */
    @Scheduled(cron = "0/30 * * * * ?")
    public void execute(){
        handler.move();
    }
}
src/main/java/com/zy/asrs/task/handler/OrderMoveHistoryHandler.java
New file
@@ -0,0 +1,58 @@
package com.zy.asrs.task.handler;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
import com.zy.asrs.entity.Order;
import com.zy.asrs.entity.OrderDetl;
import com.zy.asrs.service.OrderDetlService;
import com.zy.asrs.service.OrderService;
import com.zy.asrs.task.AbstractHandler;
import com.zy.asrs.task.core.ReturnT;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
@Service
@Slf4j
public class OrderMoveHistoryHandler extends AbstractHandler<String> {
    @Autowired
    private OrderService orderService;
    @Autowired
    private OrderDetlService orderDetlService;
    public ReturnT<String> move(){
        List<Order> settleEqual6 = orderService.selectList(new EntityWrapper<Order>()
                .eq("settle", 6));
        for (Order order : settleEqual6) {
            List<OrderDetl> orderDetls = orderDetlService.selectList(new EntityWrapper<OrderDetl>()
                    .eq("order_no", order.getOrderNo()));
            moveBoth(order,orderDetls);
            log.info("已完成单据移动至历史表成功 =====>" +order);
        }
        return SUCCESS;
    }
    private void moveBoth(Order order, List<OrderDetl> orderDetls){
        Date now = new Date();
        if (!Cools.isEmpty(orderDetls)) {
            for (OrderDetl orderDetl : orderDetls) {
                orderDetl.setUpdateBy(0L);
                orderDetl.setUpdateTime(now);
                orderDetlService.addToLogTable(orderDetl);
                orderDetlService.delete(new EntityWrapper<OrderDetl>()
                        .eq("id",orderDetl.getId()));
            }
        }
        if (!Cools.isEmpty(order)){
            order.setUpdateBy(0L);
            order.setUpdateTime(now);
            orderService.addToLogTable(order);
            orderService.delete(new EntityWrapper<Order>()
                    .eq("id",order.getId()));
        }
    }
}
src/main/resources/mapper/OrderMapper.xml
@@ -62,4 +62,8 @@
        order by create_time asc
    </select>
    <insert id="addToLogTable">
        INSERT INTO man_order_log SELECT * FROM man_order WHERE id = #{id}
    </insert>
</mapper>