|
|
|
@ -640,13 +640,13 @@ public class MesWorkOrderService implements IMesWorkOrderService {
|
|
|
|
|
}
|
|
|
|
|
//更新SAP计划完成数量
|
|
|
|
|
saveMesProductPlan(oldMesWorkOrder, false, true);
|
|
|
|
|
|
|
|
|
|
//更新工单状态
|
|
|
|
|
|
|
|
|
|
if (oldMesWorkOrder.getReportedQty() >= oldMesWorkOrder.getQty()) {
|
|
|
|
|
oldMesWorkOrder.setWorkOrderStatus(MesExtEnumUtil.ORDER_STATUS.COMPLETE.getValue());
|
|
|
|
|
} else {
|
|
|
|
|
oldMesWorkOrder.setWorkOrderStatus(MesExtEnumUtil.ORDER_STATUS.PROCESS.getValue());
|
|
|
|
|
if (StringUtil.isEmpty(productionRecord.getWorkOrderNo())) {
|
|
|
|
|
//更新工单状态
|
|
|
|
|
if (oldMesWorkOrder.getReportedQty() >= oldMesWorkOrder.getQty()) {
|
|
|
|
|
oldMesWorkOrder.setWorkOrderStatus(MesExtEnumUtil.ORDER_STATUS.COMPLETE.getValue());
|
|
|
|
|
} else {
|
|
|
|
|
oldMesWorkOrder.setWorkOrderStatus(MesExtEnumUtil.ORDER_STATUS.PROCESS.getValue());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
LOGGER.info("工单报工后数量【{}】", oldMesWorkOrder.getReportedQty());
|
|
|
|
|
ConvertBean.serviceModelUpdate(oldMesWorkOrder, userName);
|
|
|
|
@ -670,7 +670,21 @@ public class MesWorkOrderService implements IMesWorkOrderService {
|
|
|
|
|
return bom;
|
|
|
|
|
}));
|
|
|
|
|
for (Map.Entry<MesBom, List<MesBom>> entry : map.entrySet()) {
|
|
|
|
|
//查询条码是否已发生过报工
|
|
|
|
|
MesBom mesBom = entry.getValue().get(0);
|
|
|
|
|
|
|
|
|
|
DdlPackBean productPackBean = DdlPackBean.getDdlPackBean(organizeCode);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesBom.getItemPartNo(),"itemPartNo", productPackBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(oldMesWorkOrder.getPartNo(),"reportPartNo", productPackBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(productionRecord.getProductSn(),"reportSn", productPackBean);
|
|
|
|
|
MesProductOffLine productOffLine = mesProductOffLineRDao.getByProperty(productPackBean);
|
|
|
|
|
if (productOffLine != null) {
|
|
|
|
|
String msg = String.format("子零件【%s】产成零件【%s】条码【%s】对应报工信息已存在",
|
|
|
|
|
mesBom.getItemPartNo(),oldMesWorkOrder.getPartNo(), productionRecord.getProductSn());
|
|
|
|
|
LOGGER.error(msg);
|
|
|
|
|
throw new ImppBusiException(msg);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
newMesProductOffLine = new MesProductOffLine();
|
|
|
|
|
newMesProductOffLine.setReportPartNo(oldMesWorkOrder.getPartNo());
|
|
|
|
|
newMesProductOffLine.setReportPartNameRdd(oldMesWorkOrder.getPartName());
|
|
|
|
@ -689,6 +703,9 @@ public class MesWorkOrderService implements IMesWorkOrderService {
|
|
|
|
|
newMesProductOffLine.setWorkOrderNo(oldMesWorkOrder.getWorkOrderNo());
|
|
|
|
|
newMesProductOffLine.setWorkOrderType(oldMesWorkOrder.getWorkOrderType());
|
|
|
|
|
newMesProductOffLine.setWorkCenterCode(oldMesWorkOrder.getWorkCenterCode());
|
|
|
|
|
if (Objects.equals(MesExtEnumUtil.ORDER_TYPE.BTO.getValue(), oldMesWorkOrder.getWorkOrderType())) {
|
|
|
|
|
newMesProductOffLine.setWorkCenterCode(oldMesWorkOrder.getErpWorkCenter());
|
|
|
|
|
}
|
|
|
|
|
newMesProductOffLine.setWorkCellCode(oldMesWorkOrder.getWorkCellCode());
|
|
|
|
|
newMesProductOffLine.setReportType(oldMesWorkOrder.getReportType());
|
|
|
|
|
newMesProductOffLine.setSapWorkCenter(mesProductVersion.getWorkCenterCode());
|
|
|
|
@ -831,8 +848,9 @@ public class MesWorkOrderService implements IMesWorkOrderService {
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(productionRecord.getWorkCenterCode(), "workCenterCode", ddlPackBean);
|
|
|
|
|
if (!StringUtils.isEmpty(productionRecord.getWorkOrderNo())) {
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(productionRecord.getWorkOrderNo(), "workOrderNo", ddlPackBean);
|
|
|
|
|
} else {
|
|
|
|
|
DdlPreparedPack.getInPackList(list, "workOrderStatus", ddlPackBean);
|
|
|
|
|
}
|
|
|
|
|
DdlPreparedPack.getInPackList(list, "workOrderStatus", ddlPackBean);
|
|
|
|
|
DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.ASC.getValue()}, new String[]{"modifyDatetime"}, ddlPackBean);
|
|
|
|
|
// 新增班次逻辑
|
|
|
|
|
//DdlPreparedPack.
|
|
|
|
|