| | |
| | | |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.baomidou.mybatisplus.service.impl.ServiceImpl; |
| | | import com.core.common.Cools; |
| | | import com.core.exception.CoolException; |
| | | import com.zy.asrs.entity.WrkMast; |
| | | import com.zy.asrs.mapper.WrkMastMapper; |
| | | import com.zy.asrs.service.WrkMastService; |
| | | import com.zy.asrs.utils.Utils; |
| | | import com.zy.core.enums.WrkIoType; |
| | | import com.zy.core.enums.WrkStsType; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | |
| | | @Service("wrkMastService") |
| | | public class WrkMastServiceImpl extends ServiceImpl<WrkMastMapper, WrkMast> implements WrkMastService { |
| | | |
| | | @Override |
| | | public int getWorkingMast(Integer devpNo) { |
| | | return selectCount(new EntityWrapper<WrkMast>().eq("source_sta_no", devpNo).in("wrk_sts", 1, 6)); |
| | | public WrkMast selectByWorkNo(Integer workNo) { |
| | | return this.baseMapper.selectByWorkNo(workNo); |
| | | } |
| | | |
| | | @Override |
| | | public List<WrkMast> selectToBeCompleteData() { |
| | | return this.baseMapper.selectToBeCompleteData(); |
| | | public Boolean judgeInbound(WrkMast wrkMast) { |
| | | switch (WrkStsType.query(wrkMast.getWrkSts())) { |
| | | case NEW_INBOUND: |
| | | case INBOUND_DEVICE_RUN: |
| | | case INBOUND_LIFT_RUN: |
| | | case INBOUND_LIFT_RUN_COMPLETE: |
| | | case INBOUND_SHUTTLE_RUN: |
| | | case INBOUND_SHUTTLE_RUN_COMPLETE: |
| | | case COMPLETE_INBOUND: |
| | | case SETTLE_INBOUND: |
| | | return Boolean.TRUE; |
| | | case NEW_OUTBOUND: |
| | | case OUTBOUND_SHUTTLE_RUN: |
| | | case OUTBOUND_SHUTTLE_RUN_COMPLETE: |
| | | case OUTBOUND_LIFT_RUN: |
| | | case OUTBOUND_LIFT_RUN_COMPLETE: |
| | | case COMPLETE_OUTBOUND: |
| | | case SETTLE_OUTBOUND: |
| | | return Boolean.FALSE; |
| | | } |
| | | return Boolean.TRUE; |
| | | } |
| | | |
| | | @Override |
| | | public List<WrkMast> selectToBeHistoryData() { |
| | | return this.baseMapper.selectToBeHistoryData(); |
| | | public List<WrkMast> selectWrkByLev(Integer lev) { |
| | | ArrayList<WrkMast> currentLevList = new ArrayList<>(); |
| | | List<WrkMast> wrkMasts = this.baseMapper.selectList(new EntityWrapper<WrkMast>()); |
| | | for (WrkMast wrkMast : wrkMasts) { |
| | | int wrkLev; |
| | | if (wrkMast.getIoType() == WrkIoType.IN.id) { |
| | | wrkLev = Utils.getLev(wrkMast.getLocNo()); |
| | | } else if (wrkMast.getIoType() == WrkIoType.OUT.id) { |
| | | wrkLev = Utils.getLev(wrkMast.getSourceLocNo()); |
| | | } else if (wrkMast.getIoType() == WrkIoType.SHUTTLE_MOVE.id) { |
| | | wrkLev = Utils.getLev(wrkMast.getLocNo()); |
| | | } else if (wrkMast.getIoType() == WrkIoType.LOC_MOVE.id) { |
| | | wrkLev = Utils.getLev(wrkMast.getLocNo()); |
| | | } else if (wrkMast.getIoType() == WrkIoType.SHUTTLE_CHARGE.id) { |
| | | wrkLev = Utils.getLev(wrkMast.getLocNo()); |
| | | } else { |
| | | throw new CoolException("未知任务类型"); |
| | | } |
| | | |
| | | if (wrkLev == lev) { |
| | | currentLevList.add(wrkMast); |
| | | } |
| | | } |
| | | return currentLevList; |
| | | } |
| | | |
| | | @Override |
| | | public List<WrkMast> selectShuttleWrkByLev(Integer lev) { |
| | | return this.baseMapper.selectShuttleWrkByLev("%" + lev); |
| | | } |
| | | |
| | | @Override |
| | | public List<WrkMast> selectShuttleOutWrkByLev(Integer lev) { |
| | | return this.baseMapper.selectShuttleOutWrkByLev("%" + lev); |
| | | } |
| | | |
| | | @Override |
| | | public WrkMast selectChargeWorking(Integer shuttleNo) { |
| | | return this.baseMapper.selectChargeWorking(shuttleNo); |
| | | } |
| | | |
| | | @Override |
| | | public WrkMast selectChargeWorkingByChargeSta(Integer chargeSta) { |
| | | return this.baseMapper.selectChargeWorkingByChargeSta(chargeSta); |
| | | } |
| | | |
| | | @Override |
| | | public Boolean hasBusyByShuttle(Integer shuttleNo) { |
| | | List<WrkMast> wrkMasts = this.selectList(new EntityWrapper<WrkMast>().in("wrk_sts" |
| | | , WrkStsType.NEW_INBOUND.sts |
| | | , WrkStsType.INBOUND_DEVICE_RUN.sts |
| | | , WrkStsType.INBOUND_LIFT_RUN.sts |
| | | , WrkStsType.INBOUND_LIFT_RUN_COMPLETE.sts |
| | | , WrkStsType.INBOUND_SHUTTLE_RUN.sts |
| | | , WrkStsType.INBOUND_SHUTTLE_RUN_COMPLETE.sts |
| | | |
| | | , WrkStsType.NEW_OUTBOUND.sts |
| | | , WrkStsType.OUTBOUND_SHUTTLE_RUN.sts |
| | | , WrkStsType.OUTBOUND_SHUTTLE_RUN_COMPLETE.sts |
| | | , WrkStsType.OUTBOUND_LIFT_RUN.sts |
| | | , WrkStsType.OUTBOUND_LIFT_RUN_COMPLETE.sts |
| | | |
| | | , WrkStsType.NEW_MOVE.sts |
| | | , WrkStsType.MOVE_NEARBY.sts |
| | | , WrkStsType.MOVE_NEARBY_COMPLETE.sts |
| | | , WrkStsType.MOVE_IN_LIFT.sts |
| | | , WrkStsType.MOVE_IN_LIFT_COMPLETE.sts |
| | | , WrkStsType.MOVE_LIFT_RUN.sts |
| | | , WrkStsType.MOVE_LIFT_RUN_COMPLETE.sts |
| | | , WrkStsType.MOVE_OUT_LIFT.sts |
| | | , WrkStsType.MOVE_OUT_LIFT_COMPLETE.sts |
| | | , WrkStsType.MOVE_SHUTTLE.sts |
| | | |
| | | , WrkStsType.NEW_CHARGE.sts |
| | | , WrkStsType.CHARGE_SHUTTLE_RUN.sts |
| | | , WrkStsType.CHARGE_SHUTTLE_WORKING.sts |
| | | , WrkStsType.CHARGE_SHUTTLE_COMPLETE.sts |
| | | ).eq("shuttle_no", shuttleNo)); |
| | | if (Cools.isEmpty(wrkMasts)) { |
| | | return false; |
| | | } |
| | | return true; |
| | | } |
| | | |
| | | @Override |
| | | public WrkMast selectShuttleHasMoveWorking(Integer shuttleNo) { |
| | | return this.baseMapper.selectShuttleHasMoveWorking(shuttleNo); |
| | | } |
| | | |
| | | @Override |
| | | public WrkMast selectShuttleWorking(Integer shuttleNo) { |
| | | return this.baseMapper.selectShuttleWorking(shuttleNo); |
| | | } |
| | | |
| | | @Override |
| | | public List<WrkMast> selectShuttleMoveWrk() { |
| | | return this.baseMapper.selectShuttleMoveWrk(); |
| | | } |
| | | |
| | | @Override |
| | | public List<WrkMast> selectLiftWrkMast(Integer liftNo) { |
| | | return this.baseMapper.selectLiftWrkMast(liftNo); |
| | | } |
| | | } |