报工忽略试制单

tags/yfai-pcn-ext-v1.7
微笑着面对明天 9 months ago
parent a55002ae0c
commit fb3397410f

@ -118,7 +118,7 @@ public class MesEquipmentLogService implements IMesEquipmentLogService {
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode);
DdlPreparedPack.getNumEqualPack(MesExtEnumUtil.RECORD_STATUS.RECORD_STATUS_10.getValue(), "recordStatus", ddlPackBean);
DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.ASC.getValue()}, new String[]{"createDatetime"}, ddlPackBean);
List<MesEquipmentRecord> mesEquipmentRecords = mesEquipmentRecordRepository.findByHqlWhere(ddlPackBean);
List<MesEquipmentRecord> mesEquipmentRecords = mesEquipmentRecordRepository.findByHqlTopWhere(ddlPackBean, 10);
if (CollectionUtils.isEmpty(mesEquipmentRecords)) {
LOGGER.info("没有设备记录需要同步");
}
@ -159,6 +159,7 @@ public class MesEquipmentLogService implements IMesEquipmentLogService {
mesEquipmentLogDetail.setExtend(mesEquipmentRecord.getProduceSnJson());
}
ConvertBean.serviceModelInitialize(mesEquipmentLogDetail, "job");
mesEquipmentLogDetails.add(mesEquipmentLogDetail);
}
mesEquipmentLogDetailRepository.saveAll(mesEquipmentLogDetails);

@ -13,6 +13,7 @@ import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.MesEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
import cn.estsh.i3plus.pojo.mes.bean.*;
import cn.estsh.i3plus.pojo.mes.bean.nc.MesPartInspection;
@ -353,7 +354,6 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService
model.getPartInspection().setInspectionStatus(MesExtEnumUtil.PART_INSPECTION_STATUS.FAIL.getValue());
ConvertBean.serviceModelUpdate(model.getPartInspection(), AuthUtil.getSessionUser().getUserName());
partInspectionRepository.save(model.getPartInspection());
//查询当前单据明细
List<MesPartInspectionDetail> resultDetailList = queryResultDetailList(model, org);
@ -387,10 +387,19 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService
if (model.getSourceType() == MesExtEnumUtil.PART_INSPECTION_SOURCE_TYPE.SINGLE.getValue()) {
checkProduceSn(produceSn, model.getSn());
produceSn.setQcStatus(MesExtEnumUtil.PRODUCE_QC_STATUS.SUSPICIOUS.getValue());
String defectTypeCode = MesEnumUtil.DEFECT_TYPE_CODE.DETERMIND.getValue();
//根据页面上选择的位置 查询位置,若不存在则提示 位置不存在,请检查数据
DdlPackBean packBean = DdlPackBean.getDdlPackBean(org);
DdlPreparedPack.getStringEqualPack("QX130", "defectTypeCode", packBean);
MesDefectType defectType = defectTypeRepository.getByProperty(packBean);
model.getPartInspection().setDefectTypeCode(defectType.getDefectTypeCode());
model.getPartInspection().setDefectTypeId(defectType.getId());
ConvertBean.serviceModelInitialize(produceSn, AuthUtil.getSessionUser().getUserName());
produceSnExtService.update(produceSn);
}
partInspectionRepository.save(model.getPartInspection());
partInspectionDetailRepository.saveAll(resultDetailList);
partInspectionDetailRepository.saveAll(model.getPartInspectionDetailList());

@ -462,6 +462,14 @@ public class MesWorkOrderService implements IMesWorkOrderService {
try {
List<MesWorkOrder> oldMesWorkOrderList = getMesWorkOrder(productionRecord, organizeCode);
if (CollectionUtils.isEmpty(oldMesWorkOrderList)) {
if (Objects.equals(productionRecord.getReportStatus(), MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_30.getValue())) {
LOGGER.warn("报工条码:{}工单为试制单,更新成无需报工", productionRecord.getProductSn());
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode);
DdlPreparedPack.getNumEqualPack(productionRecord.getId(), "id", ddlPackBean);
productionRecordRao.updateByProperties(new String[]{"modifyUser", "modifyDatetime", "reportStatus"},
new Object[]{userName, TimeTool.getNowTime(true), productionRecord.getReportStatus()},ddlPackBean);
return;
}
LOGGER.error("报工条码:{}找不到加工单", productionRecord.getProductSn());
updateProductionRecord(organizeCode, userName, productionRecord.getId());
return;
@ -782,6 +790,9 @@ public class MesWorkOrderService implements IMesWorkOrderService {
List<MesWorkOrder> oldMesWorkOrders = workOrderRepository.findByHqlWhere(ddlPackBean);
if (!CollectionUtils.isEmpty(oldMesWorkOrders)) {
oldMesWorkOrders = oldMesWorkOrders.stream().filter(mesWorkOrder -> !Objects.equals(MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.P.getValue(), mesWorkOrder.getOrderFlag())).collect(Collectors.toList());
if (CollectionUtils.isEmpty(oldMesWorkOrders)) {
productionRecord.setReportStatus(MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_30.getValue());
}
}
return oldMesWorkOrders;
}
@ -875,7 +886,11 @@ public class MesWorkOrderService implements IMesWorkOrderService {
DdlPreparedPack.getNotInPack(centerList, "workCenterCode", ddlPackBean);
}
DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.ASC.getValue()}, new String[]{"modifyDatetime"}, ddlPackBean);
List<MesProductionRecord> mesProductionRecordList = productionRecordRao.findByHqlTopWhere(ddlPackBean, 50);
String numStr = configService.getCfgValue(organizeCode, "MES_PCN_REPORT_NUM");
int num = StringUtils.isEmpty(numStr) ? 50 : Integer.valueOf(numStr);
List<MesProductionRecord> mesProductionRecordList = productionRecordRao.findByHqlTopWhere(ddlPackBean, num);
List<MesProductionRecord> recordList = new ArrayList<>();
// 根据零件号分组
/*if(!CollectionUtils.isEmpty(mesProductionRecordList)) {

Loading…
Cancel
Save