|
|
|
@ -4,9 +4,7 @@ import cn.estsh.i3plus.ext.mes.pcn.api.base.IShiftExtService;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.api.base.IShiftProdCenterRecordService;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.api.base.ISxWorkOrderExtService;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.api.base.IWorkCenterExtService;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IProduceSnExtService;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IProduceSnTravelExtService;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.apiservice.dao.IPackageExtDao;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.pojo.bean.MesManulExecuteOutTravel;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.pojo.bean.MesProduceSnTravelExt;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pcn.pojo.bean.MesWorkCenterExt;
|
|
|
|
@ -59,6 +57,12 @@ import java.util.stream.Collectors;
|
|
|
|
|
public class SxNoumenonSnPopUpOnlineModuleService extends BaseModuleService {
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private IProduceSnTravelExtService produceSnTravelExtService;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private ISxWorkOrderExtService workOrderExtService;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private IWorkCenterExtService workCenterExtService;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
@ -93,7 +97,7 @@ public class SxNoumenonSnPopUpOnlineModuleService extends BaseModuleService {
|
|
|
|
|
|
|
|
|
|
resultBean.setBusiType(MesPcnEnumUtil.STATION_BUSI_TYPE.MODULE_CONTENT.getValue());
|
|
|
|
|
resultBean.setDataType(MesPcnEnumUtil.STATION_DATA_TYPE.CUSTOM.getValue());
|
|
|
|
|
resultBean.setCustomPageName(MesPcnExtConstWords.NOUMENON_SN_POP_UP_ONLINE);
|
|
|
|
|
resultBean.setCustomPageName(MesPcnExtConstWords.NOUMENON_SN_POP_UP_ONLINE_MODULE);
|
|
|
|
|
//resultBean.setCustomPageName(MesPcnExtConstWords.NOUMENON_PACKAGE_MODULE);
|
|
|
|
|
|
|
|
|
|
//resultBean.setDataAttrList(packDataAttrList(reqBean));
|
|
|
|
@ -132,46 +136,46 @@ public class SxNoumenonSnPopUpOnlineModuleService extends BaseModuleService {
|
|
|
|
|
.setErrorDetail("生产线[%s]需要重新启动班次", reqBean.getWorkCenterCode())
|
|
|
|
|
.build();
|
|
|
|
|
}
|
|
|
|
|
//if (StringUtils.isEmpty(reqBean.getWorkOrderNo())) {
|
|
|
|
|
// this.sendMessage(reqBean, resultBean);
|
|
|
|
|
// err = LocaleUtil.transferLanguage(reqBean.getUserInfo(), "请选择工单");
|
|
|
|
|
// this.sendMessage(reqBean, null, err, MesPcnEnumUtil.STATION_BUSI_TYPE.GUIDE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT);
|
|
|
|
|
// throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
// .setSystemID(CommonEnumUtil.SOFT_TYPE.MES_PCN.getCode())
|
|
|
|
|
// .setErrorCode(ImppExceptionEnum.BUSINESS_EXCEPTION.getCode())
|
|
|
|
|
// .setErrorDetail("请选择工单")
|
|
|
|
|
// .build();
|
|
|
|
|
//}
|
|
|
|
|
//
|
|
|
|
|
//List<MesProduceSnTravelExt> produceSnTravelExtList = produceSnTravelExtService.getProduceSnTravelExtListByOrderNo(
|
|
|
|
|
// reqBean.getOrganizeCode(), reqBean.getWorkCenterCode(), reqBean.getWorkCellCode(), reqBean.getWorkOrderNo());
|
|
|
|
|
//
|
|
|
|
|
//int snCount = CollectionUtils.isEmpty(produceSnTravelExtList) ? 0 : produceSnTravelExtList.size();
|
|
|
|
|
//
|
|
|
|
|
//MesWorkOrderExt workOrderExt = workOrderExtService.getWorkOrderExtByOrderNo(reqBean.getOrganizeCode(), reqBean.getWorkOrderNo());
|
|
|
|
|
//if (null == workOrderExt || MesPcnExtEnumUtil.WORK_ORDER_STATUS.OPEN.getValue() != workOrderExt.getWorkOrderStatus() ||
|
|
|
|
|
// MesPcnExtEnumUtil.WORK_ORDER_TYPE.REWORK_ORDER.getValue() == workOrderExt.getWorkOrderType()) {
|
|
|
|
|
// this.sendMessage(reqBean, resultBean);
|
|
|
|
|
// throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
// .setSystemID(CommonEnumUtil.SOFT_TYPE.MES_PCN.getCode())
|
|
|
|
|
// .setErrorCode(ImppExceptionEnum.BUSINESS_EXCEPTION.getCode())
|
|
|
|
|
// .setErrorDetail("工单[%s]不能在此工位操作", reqBean.getWorkOrderNo())
|
|
|
|
|
// .build();
|
|
|
|
|
//
|
|
|
|
|
//} else if (snCount >= workOrderExt.getQty().intValue()) {
|
|
|
|
|
// this.sendMessage(reqBean, resultBean);
|
|
|
|
|
// throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
// .setSystemID(CommonEnumUtil.SOFT_TYPE.MES_PCN.getCode())
|
|
|
|
|
// .setErrorCode(ImppExceptionEnum.BUSINESS_EXCEPTION.getCode())
|
|
|
|
|
// .setErrorDetail("工单[%s]已达绑定数量,不能在此工位操作", reqBean.getWorkOrderNo())
|
|
|
|
|
// .build();
|
|
|
|
|
//}
|
|
|
|
|
if (StringUtils.isEmpty(reqBean.getWorkOrderNo())) {
|
|
|
|
|
this.sendMessage(reqBean, resultBean);
|
|
|
|
|
err = LocaleUtil.transferLanguage(reqBean.getUserInfo(), "请选择工单");
|
|
|
|
|
this.sendMessage(reqBean, null, err, MesPcnEnumUtil.STATION_BUSI_TYPE.GUIDE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT);
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES_PCN.getCode())
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.BUSINESS_EXCEPTION.getCode())
|
|
|
|
|
.setErrorDetail("请选择工单")
|
|
|
|
|
.build();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
List<MesProduceSnTravelExt> produceSnTravelExtList = produceSnTravelExtService.getProduceSnTravelExtListByOrderNo(
|
|
|
|
|
reqBean.getOrganizeCode(), reqBean.getWorkCenterCode(), reqBean.getWorkCellCode(), reqBean.getWorkOrderNo());
|
|
|
|
|
|
|
|
|
|
int snCount = CollectionUtils.isEmpty(produceSnTravelExtList) ? 0 : produceSnTravelExtList.size();
|
|
|
|
|
|
|
|
|
|
MesWorkOrderExt workOrderExt = workOrderExtService.getWorkOrderExtByOrderNo(reqBean.getOrganizeCode(), reqBean.getWorkOrderNo());
|
|
|
|
|
if (null == workOrderExt || MesPcnExtEnumUtil.WORK_ORDER_STATUS.OPEN.getValue() != workOrderExt.getWorkOrderStatus() ||
|
|
|
|
|
MesPcnExtEnumUtil.WORK_ORDER_TYPE.REWORK_ORDER.getValue() == workOrderExt.getWorkOrderType()) {
|
|
|
|
|
this.sendMessage(reqBean, resultBean);
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES_PCN.getCode())
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.BUSINESS_EXCEPTION.getCode())
|
|
|
|
|
.setErrorDetail("工单[%s]不能在此工位操作", reqBean.getWorkOrderNo())
|
|
|
|
|
.build();
|
|
|
|
|
|
|
|
|
|
} else if (snCount >= workOrderExt.getQty().intValue()) {
|
|
|
|
|
this.sendMessage(reqBean, resultBean);
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES_PCN.getCode())
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.BUSINESS_EXCEPTION.getCode())
|
|
|
|
|
.setErrorDetail("工单[%s]已达绑定数量,不能在此工位操作", reqBean.getWorkOrderNo())
|
|
|
|
|
.build();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map<String, String> wcpcMap = fsmCommonService.getCachedWorkCellParam(reqBean);
|
|
|
|
|
reqBean.setWorkOrderNo(wcpcMap.get("WORK_ORDER_NO"));
|
|
|
|
|
doHandleSelectWorkOrderNo(reqBean, 2, wcpcMap.get("WORK_ORDER_NO"));
|
|
|
|
|
|
|
|
|
|
//resultBean.setResultMap(packResultMap(workOrderExt, produceSnTravelExtList));
|
|
|
|
|
resultBean.setResultMap(packResultMap(workOrderExt, produceSnTravelExtList));
|
|
|
|
|
|
|
|
|
|
this.sendMessage(reqBean, resultBean);
|
|
|
|
|
}
|
|
|
|
|