forked from I3-YF/i3plus-mes-pcn-yfai
自动化线接口
parent
c4f5f32963
commit
4f72b2b291
@ -0,0 +1,62 @@
|
||||
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.step;
|
||||
|
||||
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionDispatchContextStepService;
|
||||
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesEquipVariableCollectContext;
|
||||
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionPsInContext;
|
||||
import cn.estsh.i3plus.mes.pcn.serviceimpl.fsm.BaseStepService;
|
||||
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.tool.DdlPreparedPack;
|
||||
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.MesEquipmentProductionResultRepository;
|
||||
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description : 自动化线接口生成加工结果完成
|
||||
* @Author : jason.niu
|
||||
**/
|
||||
@Slf4j
|
||||
@Service("mesAutoLineHandleCompleteStepService")
|
||||
public class MesAutoLineHandleCompleteStepService extends BaseStepService {
|
||||
@Autowired
|
||||
private IMesProductionDispatchContextStepService productionDispatchContextStepService;
|
||||
@Autowired
|
||||
private MesEquipmentProductionResultRepository equipmentProductionResultRDao;
|
||||
|
||||
@Override
|
||||
public StepResult execute(StationRequestBean reqBean) {
|
||||
|
||||
StationResultBean resultBean = new StationResultBean();
|
||||
final String organizeCode = reqBean.getOrganizeCode();
|
||||
|
||||
StepResult stepResult = StepResult.getSuccessComplete();
|
||||
//获取进料主条码数据信息
|
||||
List<MesProductionPsInContext> productionPsInContextList = productionDispatchContextStepService.getProductionPsInContext(reqBean);
|
||||
|
||||
if (!CollectionUtils.isEmpty(productionPsInContextList)) {
|
||||
List<String> productSnList = new ArrayList<>();
|
||||
for (MesProductionPsInContext context : productionPsInContextList) {
|
||||
productSnList.add(context.getProductSn());
|
||||
}
|
||||
|
||||
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode);
|
||||
DdlPreparedPack.getInPackList(productSnList, "productSn", ddlPackBean);
|
||||
equipmentProductionResultRDao.updateByProperties(new String[]{"modifyUser", "modifyDatetime", "generateRecord"},
|
||||
new Object[]{reqBean.getUserInfo(), TimeTool.getNowTime(true),
|
||||
CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()}, ddlPackBean);
|
||||
}
|
||||
|
||||
return stepSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "处理自动化线生产结果成功!");
|
||||
}
|
||||
}
|
@ -0,0 +1,78 @@
|
||||
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.step;
|
||||
|
||||
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.MesProductionProcessContext;
|
||||
import cn.estsh.i3plus.mes.pcn.serviceimpl.fsm.BaseStepService;
|
||||
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
|
||||
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
|
||||
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
|
||||
import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentProductionResult;
|
||||
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.MesEquipmentProductionResultRepository;
|
||||
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description : 自动化线接口获取生产数据
|
||||
* @Author : jason.niu
|
||||
**/
|
||||
@Slf4j
|
||||
@Service("mesAutoLineProductionResultStepService")
|
||||
public class MesAutoLineProductionResultStepService extends BaseStepService {
|
||||
@Autowired
|
||||
private IMesProductionProcessContextStepService productionProcessContextStepService;
|
||||
|
||||
@Autowired
|
||||
private IMesProductionDispatchContextStepService productionDispatchContextStepService;
|
||||
|
||||
@Autowired
|
||||
private MesEquipmentProductionResultRepository equipmentProductionResultRDao;
|
||||
|
||||
@Override
|
||||
public StepResult execute(StationRequestBean reqBean) {
|
||||
|
||||
StationResultBean resultBean = new StationResultBean();
|
||||
|
||||
StepResult stepResult = StepResult.getSuccessComplete();
|
||||
final String organizeCode = reqBean.getOrganizeCode();
|
||||
|
||||
//获取工位当前设备信息
|
||||
MesProductionProcessContext productionProcessContext = productionProcessContextStepService.dispatchCurCellEquipment(reqBean);
|
||||
|
||||
//配置错误 抛出异常
|
||||
if (!productionProcessContext.getSuccess()) {
|
||||
stepExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), productionProcessContext.getMessage());
|
||||
}
|
||||
|
||||
List<MesEquipmentProductionResult> productionResults = getEquipmentProductionResult(organizeCode);
|
||||
if (CollectionUtils.isEmpty(productionResults)) {
|
||||
stepExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), "未获取到设备生产结果!");
|
||||
}
|
||||
List<MesEquipVariableCollectContext> equipVariableCollectContextList = new ArrayList<>();
|
||||
for (MesEquipmentProductionResult result : productionResults) {
|
||||
MesEquipVariableCollectContext context = new MesEquipVariableCollectContext(organizeCode, result.getProductSn(), MesExtEnumUtil.CELL_MESSAGE_SOURCE.READ.getValue());
|
||||
context.setQty(result.getQty());
|
||||
context.setEquipVariableId(result.getId());
|
||||
equipVariableCollectContextList.add(context);
|
||||
}
|
||||
productionDispatchContextStepService.dispatchScanProductSnContext(reqBean, equipVariableCollectContextList);
|
||||
return stepSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "收集自动化线生产结果成功!");
|
||||
}
|
||||
|
||||
private List<MesEquipmentProductionResult> getEquipmentProductionResult(String organizeCode) {
|
||||
List<MesEquipmentProductionResult> result = new ArrayList<>();
|
||||
DdlPackBean packBean = DdlPackBean.getDdlPackBean(organizeCode);
|
||||
DdlPreparedPack.getNumNOEqualPack(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "generateRecord", packBean);
|
||||
return equipmentProductionResultRDao.findByHqlWhere(packBean);
|
||||
}
|
||||
}
|
@ -1,45 +0,0 @@
|
||||
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.step;
|
||||
|
||||
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.MesProductionProcessContext;
|
||||
import cn.estsh.i3plus.mes.pcn.serviceimpl.fsm.BaseStepService;
|
||||
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 lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* @Description : 自动化线接口获取生产数据
|
||||
* @Author : jason.niu
|
||||
**/
|
||||
@Slf4j
|
||||
@Service("mesEquipmentProductionResultStepService")
|
||||
public class MesEquipmentProductionResultStepService extends BaseStepService {
|
||||
@Autowired
|
||||
private IMesProductionProcessContextStepService productionProcessContextStepService;
|
||||
|
||||
@Autowired
|
||||
private IMesProductionDispatchContextStepService productionDispatchContextStepService;
|
||||
|
||||
@Override
|
||||
public StepResult execute(StationRequestBean reqBean) {
|
||||
|
||||
StationResultBean resultBean = new StationResultBean();
|
||||
|
||||
StepResult stepResult = StepResult.getSuccessComplete();
|
||||
final String organizeCode = reqBean.getOrganizeCode();
|
||||
|
||||
//获取工位当前设备信息
|
||||
MesProductionProcessContext productionProcessContext = productionProcessContextStepService.dispatchCurCellEquipment(reqBean);
|
||||
|
||||
//配置错误 抛出异常
|
||||
if (!productionProcessContext.getSuccess()) {
|
||||
stepExpSendMsgAndThrowEx(reqBean, resultBean.writeDbLog(), productionProcessContext.getMessage());
|
||||
}
|
||||
|
||||
return stepSuccessCompleteAndSendMsgReturn(reqBean, resultBean.writeDbLog(), stepResult, "收集自动化线生产结果成功!");
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue