关闭的单据也需要报工

tags/yfai-pcn-ext-v2.3
xiangwei.zhang 7 months ago
parent 26bc0bcab8
commit d924f8a73d

@ -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.

Loading…
Cancel
Save