自动化立体仓库 - WMS系统
zyx
2024-01-29 4b4d5ef35c5a1db827db52bb448d7c5d56bf41e8
修复卡顿Bug
2个文件已修改
27 ■■■■ 已修改文件
src/main/java/com/zy/asrs/task/ErrorStockScheduler.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/ErrorStockHandler.java 25 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/ErrorStockScheduler.java
@@ -20,7 +20,7 @@
    @Autowired
    private ErrorStockHandler errorStockHandler;
    @Scheduled(cron = "0/10 * * * * ? ")
    @Scheduled(cron = "0/60 * * * * ? ")
    private void execute(){
        ReturnT<String> returnT = errorStockHandler.start();
        if (!returnT.isSuccess()) {
src/main/java/com/zy/asrs/task/handler/ErrorStockHandler.java
@@ -1,22 +1,19 @@
package com.zy.asrs.task.handler;
import com.zy.asrs.entity.LocMast;
import com.zy.asrs.service.LocMastService;
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.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import java.util.List;
import java.util.Map;
/**
 * Created by vincent on 2020/7/7
 */
@Service
@Slf4j
public class ErrorStockHandler extends AbstractHandler<String> {
    @Autowired
@@ -24,23 +21,11 @@
    @Autowired
    private LocMastService locMastService;
    @Transactional
    //@Transactional
    public ReturnT<String> start() {
        try {
            String sql = "SELECT distinct a.loc_no as locNo FROM asr_loc_mast a,asr_loc_detl b where a.loc_no=b.loc_no and (a.loc_sts ='O' or a.loc_sts ='D')";
            List<Map<String, Object>> result = jdbcTemplate.queryForList(sql);
            if (!result.isEmpty()) {
                for (Map<String, Object> map : result) {
                    LocMast locMast = locMastService.selectByLoc(map.get("locNo").toString());
                    if (!locMast.getLocSts().equals("O")){
                        continue;
                    }
                    int delCount = jdbcTemplate.update("delete from asr_loc_detl where loc_no=?;", map.get("locNo"));
                    System.out.println(delCount);
                }
            }
            int update = jdbcTemplate.update("DELETE asr_loc_detl FROM asr_loc_detl JOIN asr_loc_mast ON asr_loc_detl.loc_no = asr_loc_mast.loc_no WHERE asr_loc_mast.loc_sts = 'O'");
            log.info("(ErrorStockHandler)删除条数为;" + update);
        } catch (Exception e) {
            e.printStackTrace();
            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();