package com.zy.asrs.task; 
 | 
  
 | 
import com.baomidou.mybatisplus.mapper.EntityWrapper; 
 | 
import com.core.common.Cools; 
 | 
import com.zy.asrs.entity.BasCrnp; 
 | 
import com.zy.asrs.entity.OrderPakout; 
 | 
import com.zy.asrs.entity.WrkMast; 
 | 
import com.zy.asrs.service.*; 
 | 
import com.zy.asrs.task.handler.AutoLocMoveHandler; 
 | 
import com.zy.common.properties.SlaveWmsParameterProperties; 
 | 
import com.zy.system.entity.Config; 
 | 
import com.zy.system.service.ConfigService; 
 | 
import lombok.extern.slf4j.Slf4j; 
 | 
import org.springframework.beans.factory.annotation.Autowired; 
 | 
import org.springframework.scheduling.annotation.Scheduled; 
 | 
import org.springframework.stereotype.Component; 
 | 
  
 | 
@Slf4j 
 | 
@Component 
 | 
public class AutoLocMoveScheduler { 
 | 
  
 | 
  
 | 
    @Autowired 
 | 
    private WrkMastService wrkMastService; 
 | 
    @Autowired 
 | 
    private WorkService workService; 
 | 
    @Autowired 
 | 
    private AutoLocMoveHandler autoLocMoveHandler; 
 | 
    @Autowired 
 | 
    private BasCrnpService basCrnpService; 
 | 
    @Autowired 
 | 
    private ConfigService configService; 
 | 
    @Autowired 
 | 
    private SlaveWmsParameterProperties slaveWmsParameterProperties; 
 | 
    @Autowired 
 | 
    private OrderService orderService; 
 | 
    @Autowired 
 | 
    private OrderPakoutService orderPakoutService; 
 | 
    @Autowired 
 | 
    private OrderDetlService orderDetlService; 
 | 
  
 | 
  
 | 
    //定时出库   经典双伸 
 | 
    @Scheduled(cron = "0/3 * * * * ? ") 
 | 
    public void locToLocAutoLocMove() { 
 | 
        if (slaveWmsParameterProperties.isAutoLocMoveBoolean()) { 
 | 
            Config config = configService.selectConfigByCode("AutoLocMove"); 
 | 
            if (Cools.isEmpty(config) || config.getValue().equals("false")) { 
 | 
                return; 
 | 
            } 
 | 
            OrderPakout orderPakout = orderPakoutService.selectOrderMoveStatus(); 
 | 
            if (!Cools.isEmpty(orderPakout)) { 
 | 
//                autoMoveService.selectList() 
 | 
            } else { 
 | 
                orderPakout = orderPakoutService.selectOrderMoveStatusInitial(); 
 | 
                if (Cools.isEmpty(orderPakout)) { 
 | 
                    return; 
 | 
                } 
 | 
                orderPakout.setMoveStatus(2); 
 | 
                orderPakoutService.updateById(orderPakout); 
 | 
            } 
 | 
        } 
 | 
    } 
 | 
  
 | 
    //定时出库 
 | 
    @Scheduled(cron = "0/3 * * * * ? ") 
 | 
    public void locToLoc11() { 
 | 
        if (slaveWmsParameterProperties.isAutoLocMoveUnilateralBoolean()) { 
 | 
            Config config = configService.selectConfigByCode("AutoLocMoveUnilateral"); 
 | 
            if (Cools.isEmpty(config) || config.getValue().equals("false")) { 
 | 
                return; 
 | 
            } 
 | 
            int crnCount = basCrnpService.selectCount(new EntityWrapper<>()); 
 | 
            for (int crnNo = 1; crnNo < crnCount; crnNo++) { 
 | 
                WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 11).eq("crn_no", crnNo)); 
 | 
                WrkMast wrkMast1 = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 111).eq("crn_no", crnNo)); 
 | 
                if (Cools.isEmpty(wrkMast) && Cools.isEmpty(wrkMast1)) { 
 | 
                    autoLocMoveHandler.start(crnNo, 11); 
 | 
                } 
 | 
            } 
 | 
        } 
 | 
    } 
 | 
  
 | 
    //定时入库 
 | 
    @Scheduled(cron = "0/3 * * * * ? ") 
 | 
    public void locToLoc111() { 
 | 
        if (slaveWmsParameterProperties.isAutoLocMoveUnilateralBoolean()) { 
 | 
            Config config = configService.selectConfigByCode("AutoLocMoveUnilateral"); 
 | 
            if (Cools.isEmpty(config) || config.getValue().equals("false")) { 
 | 
                return; 
 | 
            } 
 | 
            int crnCount = basCrnpService.selectCount(new EntityWrapper<>()); 
 | 
            for (int crnNo = 1; crnNo < crnCount; crnNo++) { 
 | 
                BasCrnp basCrnp = basCrnpService.selectById(crnNo); 
 | 
                if (basCrnp == null) { 
 | 
                    continue; 
 | 
                } 
 | 
                WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 111).eq("crn_no", crnNo)); 
 | 
                WrkMast wrkMast1 = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type", 11).eq("crn_no", crnNo)); 
 | 
                if (Cools.isEmpty(wrkMast) && Cools.isEmpty(wrkMast1)) { 
 | 
                    autoLocMoveHandler.start(crnNo, 111); 
 | 
                } 
 | 
            } 
 | 
        } 
 | 
    } 
 | 
} 
 |