forked from I3-YF/i3plus-mes-pcn-yfai
step
parent
cf4b501bd0
commit
8cc88b9f1b
@ -1,134 +0,0 @@
|
|||||||
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.step;
|
|
||||||
|
|
||||||
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionCustomContextStepService;
|
|
||||||
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionDispatchContextStepService;
|
|
||||||
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionProcessContextStepService;
|
|
||||||
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesEquipVariableCollectContext;
|
|
||||||
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProdShiftContext;
|
|
||||||
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionProcessContext;
|
|
||||||
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionPsOutContext;
|
|
||||||
import cn.estsh.i3plus.mes.pcn.serviceimpl.fsm.BaseStepService;
|
|
||||||
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
|
|
||||||
import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker;
|
|
||||||
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
|
|
||||||
import cn.estsh.i3plus.pojo.base.enumutil.MesEnumUtil;
|
|
||||||
import cn.estsh.i3plus.pojo.mes.bean.MesProductionRecord;
|
|
||||||
import cn.estsh.i3plus.pojo.mes.bean.MesWorkCell;
|
|
||||||
import cn.estsh.i3plus.pojo.mes.model.StationRequestBean;
|
|
||||||
import cn.estsh.i3plus.pojo.mes.model.StationResultBean;
|
|
||||||
import cn.estsh.i3plus.pojo.mes.model.StepResult;
|
|
||||||
import cn.estsh.i3plus.pojo.mes.repository.MesProduceSnRepository;
|
|
||||||
import cn.estsh.i3plus.pojo.mes.repository.MesProductionRecordRepository;
|
|
||||||
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
|
|
||||||
import cn.hutool.core.date.DateUtil;
|
|
||||||
import com.google.common.base.Objects;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
|
||||||
import org.springframework.stereotype.Service;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Date;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @Description : 生成加工记录工步
|
|
||||||
* @Author : wangjie
|
|
||||||
**/
|
|
||||||
@Slf4j
|
|
||||||
@Service
|
|
||||||
public class MesProductionReocrdGenerateStepServiceBak extends BaseStepService {
|
|
||||||
@Autowired
|
|
||||||
private SnowflakeIdMaker snowflakeIdMaker;
|
|
||||||
|
|
||||||
@Autowired
|
|
||||||
private IMesProductionProcessContextStepService productionProcessContextStepService;
|
|
||||||
|
|
||||||
@Autowired
|
|
||||||
private MesProduceSnRepository mesProduceSnRepository;
|
|
||||||
|
|
||||||
@Autowired
|
|
||||||
private MesProductionRecordRepository mesProductionRecordRepository;
|
|
||||||
|
|
||||||
@Autowired
|
|
||||||
private IMesProductionDispatchContextStepService mesProductionDispatchContextStepService;
|
|
||||||
|
|
||||||
@Autowired
|
|
||||||
private IMesProductionCustomContextStepService productionCustomContextStepService;
|
|
||||||
|
|
||||||
public static final String ORDER_NO_JIS_SORT = "ORDER_NO_JIS_SORT";
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public StepResult execute(StationRequestBean reqBean) {
|
|
||||||
|
|
||||||
StationResultBean resultBean = new StationResultBean();
|
|
||||||
|
|
||||||
StepResult stepResult = StepResult.getSuccessComplete();
|
|
||||||
/**
|
|
||||||
* 获取上下文
|
|
||||||
*/
|
|
||||||
MesProductionProcessContext productionProcessContext = productionProcessContextStepService.getEquipmentVariableList(reqBean, MesExtEnumUtil.EQUIP_VARIABLE_TYPE.PRODUCTION.getValue());
|
|
||||||
MesWorkCell mesWorkCell = productionProcessContext.getWorkCell();
|
|
||||||
MesProdShiftContext mesProdShiftKvBean = productionCustomContextStepService.getMesProdShiftKvBean(reqBean.getOrganizeCode(), reqBean.getWorkCenterCode());
|
|
||||||
|
|
||||||
List<MesProductionPsOutContext> mesProduceSnContexts = mesProductionDispatchContextStepService.getProductionPsOutContext(reqBean);
|
|
||||||
|
|
||||||
List<MesProductionRecord> mesProductionRecords = new ArrayList<>();
|
|
||||||
mesProduceSnContexts.forEach(mesProductionPsOutContext -> {
|
|
||||||
|
|
||||||
MesProductionRecord mesProductionRecord = getMesProductionRecord(productionProcessContext, mesProductionPsOutContext,mesProdShiftKvBean, reqBean);
|
|
||||||
ConvertBean.serviceModelInitialize(mesProductionRecord, reqBean.getUserInfo());
|
|
||||||
mesProductionRecords.add(mesProductionRecord);
|
|
||||||
});
|
|
||||||
|
|
||||||
mesProductionRecordRepository.saveAll(mesProductionRecords);
|
|
||||||
if (Objects.equal(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(),mesWorkCell.getIsCountFinish())) {
|
|
||||||
// 保存班次加工数量上下文
|
|
||||||
productionCustomContextStepService.addProductionStatisticsContext(reqBean,mesProduceSnContexts.size());
|
|
||||||
}
|
|
||||||
|
|
||||||
return execSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "生成加工记录成功");
|
|
||||||
}
|
|
||||||
|
|
||||||
private MesProductionRecord getMesProductionRecord(MesProductionProcessContext productionProcessContext, MesProductionPsOutContext mesProduceSn,MesProdShiftContext mesProdShiftKvBean, StationRequestBean reqBean) {
|
|
||||||
MesProductionRecord mesProductionRecord = new MesProductionRecord();
|
|
||||||
|
|
||||||
mesProductionRecord.setSerialNumber(mesProduceSn.getSerialNumber());
|
|
||||||
mesProductionRecord.setAreaCode(mesProduceSn.getAreaCode());
|
|
||||||
mesProductionRecord.setCraftCode(mesProduceSn.getCraftCode());
|
|
||||||
mesProductionRecord.setCustSn(mesProduceSn.getCustSn());
|
|
||||||
mesProductionRecord.setProductSn(mesProduceSn.getCustSn());
|
|
||||||
mesProductionRecord.setEquipmentCode(productionProcessContext.getCurCellEquip().getEquipmentCode());
|
|
||||||
mesProductionRecord.setEquipmentName(productionProcessContext.getCurCellEquip().getEquipmentName());
|
|
||||||
mesProductionRecord.setPartNo(mesProduceSn.getPartNo());
|
|
||||||
mesProductionRecord.setPartName(mesProduceSn.getPartName());
|
|
||||||
mesProductionRecord.setIsComplete(MesEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
|
|
||||||
mesProductionRecord.setCompleteDateTime(DateUtil.formatDateTime(new Date()));
|
|
||||||
mesProductionRecord.setLotNo(mesProduceSn.getLotNo());
|
|
||||||
mesProductionRecord.setShiftGroup(mesProdShiftKvBean.getShiftGroup());
|
|
||||||
mesProductionRecord.setShiftCode(mesProdShiftKvBean.getShiftCode());
|
|
||||||
mesProductionRecord.setWorkOrderNo(mesProduceSn.getWorkOrderNo());
|
|
||||||
|
|
||||||
String mouldNo = "";
|
|
||||||
MesEquipVariableCollectContext mesFirstMouldNoCollectContext = mesProductionDispatchContextStepService.getFirstMouldNoContext(reqBean);
|
|
||||||
MesEquipVariableCollectContext mesMouldNoCollectContext = mesProductionDispatchContextStepService.getMouldNoContext(reqBean);
|
|
||||||
|
|
||||||
if (mesFirstMouldNoCollectContext != null) {
|
|
||||||
mouldNo = mesFirstMouldNoCollectContext.getEquipVariableValue();
|
|
||||||
} else if (mesFirstMouldNoCollectContext == null && mesMouldNoCollectContext != null) {
|
|
||||||
mouldNo = mesMouldNoCollectContext.getEquipVariableValue();
|
|
||||||
}
|
|
||||||
mesProductionRecord.setMouldNo(mouldNo);
|
|
||||||
// todo
|
|
||||||
// mesProductionRecord.setMouldRecordId();
|
|
||||||
mesProductionRecord.setProcessCode(mesProduceSn.getProcessCode());
|
|
||||||
mesProductionRecord.setReportPartNo(mesProduceSn.getPartNo());
|
|
||||||
mesProductionRecord.setReportStatus(MesExtEnumUtil.REPORT_STATUS.REPORT_STATUS_10.getValue());
|
|
||||||
mesProductionRecord.setWorkOrderNo(mesProduceSn.getWorkOrderNo());
|
|
||||||
mesProductionRecord.setWorkCellCode(mesProduceSn.getWorkCellCode());
|
|
||||||
mesProductionRecord.setWorkCenterCode(mesProduceSn.getWorkCenterCode());
|
|
||||||
|
|
||||||
return mesProductionRecord;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
Loading…
Reference in New Issue