自动化立体仓库 - WMS系统
pang.jiabao
2025-02-08 f1c69821bfa7733daaa79a377dac45556946cf6b
物料冻结时间超三个月自动解冻
3个文件已修改
34 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/mapper/PlaMapper.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/PlaDetlScheduler.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/PlaMapper.xml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/mapper/PlaMapper.java
@@ -24,4 +24,10 @@
    Integer getStockStatisCountAll(Map<String, Object> map);
    /**
     * 自动解冻冻结时间超过90天的库存
     * @return 更新数量
     */
    int autoThaw();
}
src/main/java/com/zy/asrs/task/PlaDetlScheduler.java
@@ -2,12 +2,14 @@
import com.core.common.Cools;
import com.zy.asrs.entity.Pla;
import com.zy.asrs.mapper.PlaMapper;
import com.zy.asrs.service.PlaService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.List;
@Slf4j
@@ -16,6 +18,9 @@
    @Autowired
    private PlaService plaService;
    @Resource
    private PlaMapper plaMapper;
    @Scheduled(cron = "0/60 * * * * ? ")
    private void execute(){
@@ -29,4 +34,16 @@
        }
    }
    /**
     * 每隔一天扫描一次冻结的库存,超过三个月则自动解冻
     */
    @Scheduled(cron = "0 0 0 * * ?")
    private void autoThaw(){
        int i = plaMapper.autoThaw();
        log.info("---------------自动解冻库存{}个--------------------------", i);
    }
}
src/main/resources/mapper/PlaMapper.xml
@@ -1,6 +1,17 @@
<?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.zy.asrs.mapper.PlaMapper">
    <update id="autoThaw">
        update
            asr_pla_detl
        set
            stock_freeze = 1
        where
            stock_freeze = 0
          and status != '全部出库'
    and stock_freeze_date is not null
    and datediff(day , stock_freeze_date, getdate()) > 90
    </update>
    <select id="getStockStatisAll" resultType="com.zy.asrs.entity.Pla">
        select brand, matnr,workshop, sum(weight_anfme) as weight
        from asr_pla_detl