zy-acs-flow/src/page/staReserve/StaReserveList.jsx
@@ -84,7 +84,7 @@ <DateInput source="expireTime" label="table.field.staReserve.expireTime" />, <DateInput source="waitingAt" label="table.field.staReserve.waitingAt" />, <DateInput source="confirmedAt" label="table.field.staReserve.confirmedAt" />, <DateInput source="cancelledAt" label="table.field.staReserve.cancelledAt" />, // <DateInput source="cancelledAt" label="table.field.staReserve.cancelledAt" />, <TextInput source="uniqKey" label="table.field.staReserve.uniqKey" />, <TextInput label="common.field.memo" source="memo" />, @@ -160,7 +160,7 @@ <DateField source="expireTime" label="table.field.staReserve.expireTime" showTime /> <DateField source="waitingAt" label="table.field.staReserve.waitingAt" showTime /> <DateField source="confirmedAt" label="table.field.staReserve.confirmedAt" showTime /> <DateField source="cancelledAt" label="table.field.staReserve.cancelledAt" showTime /> {/* <DateField source="cancelledAt" label="table.field.staReserve.cancelledAt" showTime /> */} <TextField source="uniqKey" label="table.field.staReserve.uniqKey" /> <ReferenceField source="updateBy" label="common.field.updateBy" reference="user" link={false} sortable={false}> zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/StaReserve.java
@@ -63,6 +63,7 @@ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date confirmedAt; // 用不到,使用确认时间代替 @ApiModelProperty(value= "取消时间") @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date cancelledAt; zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/StaReserveService.java
@@ -14,4 +14,6 @@ void confirmStaReserve(Sta sta, Task task, Integer qty, StaReserveType type); void cancelStaReserve(Sta sta, Task task, Integer qty, StaReserveType type); } zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/StaReserveServiceImpl.java
@@ -105,7 +105,8 @@ // update reserve state to be confirmed if (0 == this.baseMapper.updateState(task.getId(), sta.getId(), type.toString(), StaReserveStateType.CONFIRMED.toString())) { throw new BusinessException("failed to confirm sta reserve"); log.error("failed to confirm sta reserve"); return; } int cntOfDealWithReserve = 0; @@ -120,7 +121,33 @@ break; } if (cntOfDealWithReserve == 0) { throw new BusinessException("Sta[" + sta.getStaNo() + "] apply confirmed failed, type=" + type.toString()); throw new BusinessException("Sta[" + sta.getStaNo() + "] confirm failed, type=" + type.toString()); } } @Override public void cancelStaReserve(Sta sta, Task task, Integer qty, StaReserveType type) { qty = Optional.ofNullable(qty).orElse(1); // update reserve state to be canceled if (0 == this.baseMapper.updateState(task.getId(), sta.getId(), type.toString(), StaReserveStateType.CANCELLED.toString())) { log.error("failed to cancel sta reserve"); return; } int cntOfDealWithReserve = 0; switch (type) { case IN: cntOfDealWithReserve = staMapper.releaseReserveIn(sta.getId(), qty); break; case OUT: cntOfDealWithReserve = staMapper.releaseReserveOut(sta.getId(), qty); break; default: break; } if (cntOfDealWithReserve == 0) { throw new BusinessException("Sta[" + sta.getStaNo() + "] cancel failed, type=" + type.toString()); } } zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/TaskServiceImpl.java
@@ -98,7 +98,7 @@ if (null == task) { return Boolean.FALSE; } this.maintainLocSts(task, Boolean.TRUE); this.maintainLocAndStaHandler(task, Boolean.TRUE); task.setTaskSts(TaskStsType.COMPLETE.val()); task.setUpdateTime(new Date()); @@ -117,7 +117,7 @@ if (null == task) { return Boolean.FALSE; } this.maintainLocSts(task, Boolean.FALSE); this.maintainLocAndStaHandler(task, Boolean.FALSE); task.setTaskSts(TaskStsType.CANCEL.val()); task.setUpdateTime(new Date()); @@ -300,7 +300,7 @@ @Transactional public void maintainLocSts(Task task, Boolean complete) { public void maintainLocAndStaHandler(Task task, Boolean complete) { Loc oriLoc = null; Loc destLoc = null; Sta oriSta = null; Sta destSta = null; Date now = new Date(); @@ -331,18 +331,18 @@ } destSta = staService.getById(task.getDestSta()); destSta.setStaSts(complete?StaStsType.STOCK.val():StaStsType.IDLE.val()); destSta.setUpdateTime(now); if (!staService.updateById(destSta)) { throw new BusinessException("Sta [" + destSta.getStaNo() + "] 站点修改状态失败 !!!"); if (complete) { staReserveService.confirmStaReserve(destSta, task, 1, StaReserveType.IN); } else { staReserveService.cancelStaReserve(destSta, task, 1, StaReserveType.IN); } break; case STA_TO_LOC: oriSta = staService.getById(task.getOriSta()); oriSta.setStaSts(complete?StaStsType.IDLE.val():StaStsType.STOCK.val()); oriSta.setUpdateTime(now); if (!staService.updateById(oriSta)) { throw new BusinessException("Sta [" + oriSta.getStaNo() + "] 站点修改状态失败 !!!"); if (complete) { staReserveService.confirmStaReserve(oriSta, task, 1, StaReserveType.OUT); } else { staReserveService.cancelStaReserve(oriSta, task, 1, StaReserveType.OUT); } destLoc = locService.getById(task.getDestLoc()); @@ -354,17 +354,17 @@ break; case STA_TO_STA: oriSta = staService.getById(task.getOriSta()); oriSta.setStaSts(complete?StaStsType.IDLE.val():StaStsType.STOCK.val()); oriSta.setUpdateTime(now); if (!staService.updateById(oriSta)) { throw new BusinessException("Sta [" + oriSta.getStaNo() + "] 站点修改状态失败 !!!"); if (complete) { staReserveService.confirmStaReserve(oriSta, task, 1, StaReserveType.OUT); } else { staReserveService.cancelStaReserve(oriSta, task, 1, StaReserveType.OUT); } destSta = staService.getById(task.getDestSta()); destSta.setStaSts(complete?StaStsType.STOCK.val():StaStsType.IDLE.val()); destSta.setUpdateTime(now); if (!staService.updateById(destSta)) { throw new BusinessException("Sta [" + destSta.getStaNo() + "] 站点修改状态失败 !!!"); if (complete) { staReserveService.confirmStaReserve(destSta, task, 1, StaReserveType.IN); } else { staReserveService.cancelStaReserve(destSta, task, 1, StaReserveType.IN); } break; case TO_CHARGE: