| | |
| | | import com.zy.asrs.task.core.ReturnT; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | |
| | | @Slf4j |
| | | @Service |
| | | public class AgvWrkMastHandler extends AbstractHandler<String> { |
| | | |
| | | @Value("${agvBasDev.maxWorkNum}") |
| | | private int maxWrokNum; |
| | | |
| | | @Autowired |
| | | private AgvWrkMastService agvWrkMastService; |
| | |
| | | public ReturnT<String> dealWatiWrk(List<AgvWrkMast> agvWrkMastList) throws IOException { |
| | | |
| | | agvWrkMastList.forEach(agvWrkMast -> { |
| | | //寻找空站点位置 |
| | | AgvBasDevp agvBasDevp = agvBasDevpService.selectEmptyDevpByStation(agvWrkMast.getLocNo()); |
| | | if(!Cools.isEmpty(agvBasDevp)){ |
| | | agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvBasDevp.getDevNo(),"S",null); |
| | | agvWrkMast.setLocNo(agvBasDevp.getDevNo()); |
| | | // //寻找空站点位置 |
| | | // AgvBasDevp agvBasDevp = agvBasDevpService.selectEmptyDevpByStation(agvWrkMast.getLocNo()); |
| | | // if(!Cools.isEmpty(agvBasDevp)){ |
| | | // agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvBasDevp.getDevNo(),"S",null); |
| | | // agvWrkMast.setLocNo(agvBasDevp.getDevNo()); |
| | | // agvWrkMastService.updateById(agvWrkMast); |
| | | // } |
| | | |
| | | //查询该站点所有暂存位在工作档中出现的次数 |
| | | List<Map<String, Object>> devNoMaps = agvBasDevpService.selectDevNoAndNumBystationCode(agvWrkMast.getLocNo()); |
| | | //取第一个暂存位,并查询其次数与配置的次数做比较 |
| | | Map<String, Object> devNoMap = devNoMaps.get(0); |
| | | if((int)devNoMap.get("num") < maxWrokNum){ |
| | | agvWrkMast.setLocNo(devNoMap.get("dev_no").toString()); |
| | | agvWrkMastService.updateById(agvWrkMast); |
| | | } |
| | | |