自动化立体仓库 - WCS系统
Junjie
2023-05-22 5ce93b60b31ca5a346109fe1d232a591469b163d
定时将WMS任务(完成、取消)转成日志
1个文件已添加
8个文件已修改
64 ■■■■■ 已修改文件
src/main/java/com/zy/Boot.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/mapper/WmsWrkLogMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/mapper/WmsWrkMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/WmsWrkLogService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/WmsWrkService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/WmsWrkLogServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/WmsWrkServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/WmsWrkLogScheduler.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/WmsWrkMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/Boot.java
@@ -5,8 +5,10 @@
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.scheduling.annotation.EnableScheduling;
@EnableAsync
@EnableScheduling
@SpringBootApplication
public class Boot extends SpringBootServletInitializer {
src/main/java/com/zy/asrs/mapper/WmsWrkLogMapper.java
@@ -2,6 +2,7 @@
import com.zy.asrs.entity.WmsWrkLog;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
@@ -9,4 +10,7 @@
@Repository
public interface WmsWrkLogMapper extends BaseMapper<WmsWrkLog> {
    @Insert("insert into wcs_wms_wrk_log select * from wcs_wms_wrk where wms_wrk_no=#{wmsWrkNo}")
    int save(Integer wmsWrkNo);
}
src/main/java/com/zy/asrs/mapper/WmsWrkMapper.java
@@ -5,10 +5,14 @@
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
import java.util.List;
@Mapper
@Repository
public interface WmsWrkMapper extends BaseMapper<WmsWrk> {
    WmsWrk selectByWmsWrkNo(Integer wmsWrkNo);
    List<WmsWrk> selectToBeHistoryData();
}
src/main/java/com/zy/asrs/service/WmsWrkLogService.java
@@ -5,4 +5,6 @@
public interface WmsWrkLogService extends IService<WmsWrkLog> {
    boolean save(Integer wmsWrkNo);
}
src/main/java/com/zy/asrs/service/WmsWrkService.java
@@ -3,6 +3,8 @@
import com.zy.asrs.entity.WmsWrk;
import com.baomidou.mybatisplus.service.IService;
import java.util.List;
public interface WmsWrkService extends IService<WmsWrk> {
    WmsWrk selectByWmsWrkNo(Integer wmsWrkNo);
@@ -19,4 +21,6 @@
    //库位移转
    void locMove(WmsWrk wmsWrk, Long userId);
    List<WmsWrk> selectToBeHistoryData();
}
src/main/java/com/zy/asrs/service/impl/WmsWrkLogServiceImpl.java
@@ -9,4 +9,8 @@
@Service("wmsWrkLogService")
public class WmsWrkLogServiceImpl extends ServiceImpl<WmsWrkLogMapper, WmsWrkLog> implements WmsWrkLogService {
    @Override
    public boolean save(Integer wmsWrkNo) {
        return this.baseMapper.save(wmsWrkNo) > 0;
    }
}
src/main/java/com/zy/asrs/service/impl/WmsWrkServiceImpl.java
@@ -275,4 +275,9 @@
            throw new CoolException("移转失败,目标库位状态:"+loc.getLocSts$());
        }
    }
    @Override
    public List<WmsWrk> selectToBeHistoryData() {
        return this.baseMapper.selectToBeHistoryData();
    }
}
src/main/java/com/zy/asrs/task/WmsWrkLogScheduler.java
New file
@@ -0,0 +1,34 @@
package com.zy.asrs.task;
import com.zy.asrs.entity.WmsWrk;
import com.zy.asrs.service.WmsWrkLogService;
import com.zy.asrs.service.WmsWrkService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
/**
 * 定时将WMS任务(完成、取消)转成日志
 */
@Slf4j
@Component
public class WmsWrkLogScheduler {
    @Autowired
    private WmsWrkService wmsWrkService;
    @Autowired
    private WmsWrkLogService wmsWrkLogService;
    @Scheduled(cron = "0/3 * * * * ? ")
    public void execute() {
        for (WmsWrk wmsWrk : wmsWrkService.selectToBeHistoryData()) {
            boolean save = wmsWrkLogService.save(wmsWrk.getWmsWrkNo());
            boolean delete = wmsWrkService.deleteById(wmsWrk.getWmsWrkNo());
            if (!save || !delete) {
                log.error("任务[wmsWrkNo={}]历史处理失败", wmsWrk.getWmsWrkNo());
            }
        }
    }
}
src/main/resources/mapper/WmsWrkMapper.xml
@@ -29,4 +29,9 @@
        where wms_wrk_no = #{wmsWrkNo}
    </select>
    <select id="selectToBeHistoryData" resultMap="BaseResultMap">
        select * from wcs_wms_wrk
        where wms_status in (4,5)
    </select>
</mapper>