tags/yfai-pcn-ext-v1.0
微笑着面对明天 1 year ago
parent 634c922679
commit 9cf6a96151

@ -0,0 +1,60 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.step;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionProcessContextStepService;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionProcessContext;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesSnProductionProcessContext;
import cn.estsh.i3plus.mes.pcn.api.iservice.busi.ISyncFuncService;
import cn.estsh.i3plus.mes.pcn.serviceimpl.fsm.BaseStepService;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker;
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
import cn.estsh.i3plus.pojo.mes.bean.MesMouldMultiCavity;
import cn.estsh.i3plus.pojo.mes.bean.MesPart;
import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn;
import cn.estsh.i3plus.pojo.mes.bean.MesWorkCell;
import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel;
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.MesPartRepository;
import cn.estsh.i3plus.pojo.mes.repository.MesProduceSnRepository;
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
import cn.hutool.core.date.DateUtil;
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 : zxw
**/
@Slf4j
@Service
public class MesProductSnSaveStepService extends BaseStepService {
@Autowired
private IMesProductionProcessContextStepService productionProcessContextStepService;
@Autowired
private MesProduceSnRepository mesProduceSnRepository;
public static final String ORDER_NO_JIS_SORT = "ORDER_NO_JIS_SORT";
@Override
public StepResult execute(StationRequestBean reqBean) {
MesProductionProcessContext productionProcessContext = productionProcessContextStepService.getEquipmentVariableList(reqBean, MesExtEnumUtil.EQUIP_VARIABLE_TYPE.PRODUCTION.getValue());
List<MesProduceSn> mesProduceSns = productionProcessContext.getProduceSnDataList();
mesProduceSns.forEach(mesProduceSn -> {
mesProduceSn.setSnStatus(MesExtEnumUtil.PRODUCE_SN_STATUS.OFFLINE.getValue());
});
mesProduceSnRepository.saveAll(mesProduceSns);
return StepResult.getSuccessComplete();
}
}

@ -0,0 +1,103 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.step;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionProcessContextStepService;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionProcessContext;
import cn.estsh.i3plus.mes.pcn.api.iservice.busi.ISyncFuncService;
import cn.estsh.i3plus.mes.pcn.serviceimpl.fsm.BaseStepService;
import cn.estsh.i3plus.pojo.base.codemaker.SnowflakeIdMaker;
import cn.estsh.i3plus.pojo.base.enumutil.MesEnumUtil;
import cn.estsh.i3plus.pojo.mes.bean.MesPart;
import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn;
import cn.estsh.i3plus.pojo.mes.bean.MesProductionRecord;
import cn.estsh.i3plus.pojo.mes.bean.MesWorkCell;
import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel;
import cn.estsh.i3plus.pojo.mes.model.StationRequestBean;
import cn.estsh.i3plus.pojo.mes.model.StepResult;
import cn.estsh.i3plus.pojo.mes.repository.MesPartRepository;
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 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 MesProductionReocrdGenerateStepService extends BaseStepService {
@Autowired
private SnowflakeIdMaker snowflakeIdMaker;
@Autowired
private IMesProductionProcessContextStepService productionProcessContextStepService;
@Autowired
private MesProduceSnRepository mesProduceSnRepository;
@Autowired
private MesProductionRecordRepository mesProductionRecordRepository;
public static final String ORDER_NO_JIS_SORT = "ORDER_NO_JIS_SORT";
@Override
public StepResult execute(StationRequestBean reqBean) {
MesProductionProcessContext productionProcessContext = productionProcessContextStepService.getEquipmentVariableList(reqBean, MesExtEnumUtil.EQUIP_VARIABLE_TYPE.PRODUCTION.getValue());
List<MesProduceSn> mesProduceSns = productionProcessContext.getProduceSnDataList();
List<MesProductionRecord> mesProductionRecords = new ArrayList<>();
mesProduceSns.forEach(mesProduceSn -> {
MesProductionRecord mesProductionRecord = getMesProductionRecord(productionProcessContext, mesProduceSn);
mesProductionRecords.add(mesProductionRecord);
});
mesProductionRecordRepository.saveAll(mesProductionRecords);
return StepResult.getSuccessComplete();
}
private MesProductionRecord getMesProductionRecord(MesProductionProcessContext productionProcessContext, MesProduceSn mesProduceSn) {
MesProductionRecord mesProductionRecord = new MesProductionRecord();
mesProductionRecord.setSerialNumber(mesProduceSn.getSerialNumber());
mesProductionRecord.setAreaCode(mesProduceSn.getAreaCode());
mesProductionRecord.setCraftCode(mesProduceSn.getCraftCode());
mesProductionRecord.setCustSn(mesProduceSn.getCustSn());
mesProductionRecord.setEquipmentCode(mesProduceSn.getEquipmentCode());
mesProductionRecord.setIsComplete(MesEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
mesProductionRecord.setCompleteDateTime(DateUtil.formatDateTime(new Date()));
mesProductionRecord.setLotNo(mesProduceSn.getLotNo());
mesProductionRecord.setEquipmentName(mesProduceSn.getEquipmentName());
String mouldNo = "";
if (productionProcessContext.getFirstMouldNo() != null) {
mouldNo = productionProcessContext.getFirstMouldNo().getEquipVariableValue();
}else if (productionProcessContext.getFirstMouldNo() == null && productionProcessContext.getMouldNo() != null){
mouldNo = productionProcessContext.getMouldNo().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.setReportType(mesProduceSn.getReportType() + "");
mesProductionRecord.setShiftCode(mesProduceSn.getShiftCode());
mesProductionRecord.setShiftGroup(mesProduceSn.getShiftGroup());
mesProductionRecord.setWorkOrderNo(mesProduceSn.getWorkOrderNo());
mesProductionRecord.setWorkCellCode(mesProduceSn.getWorkCellCode());
mesProductionRecord.setWorkCenterCode(mesProduceSn.getWorkCenterCode());
return mesProductionRecord;
}
}
Loading…
Cancel
Save