|
|
@ -57,6 +57,11 @@ public class MesProductionPartNoReadStepService extends BaseStepService {
|
|
|
|
private IPartService partService;
|
|
|
|
private IPartService partService;
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
|
|
|
|
public void title(StationRequestBean reqBean) {
|
|
|
|
|
|
|
|
this.sendMessage(reqBean, new StationResultBean().resultObj(MesPcnExtConstWords.STEP_DISABLE_SCAN), String.format("工步: %s", reqBean.getStepName()), MesPcnEnumUtil.STATION_BUSI_TYPE.STEP_TITLE, MesPcnEnumUtil.STATION_DATA_TYPE.TITLE);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public StepResult init(StationRequestBean reqBean) {
|
|
|
|
public StepResult init(StationRequestBean reqBean) {
|
|
|
|
|
|
|
|
|
|
|
|
//发送工步内容
|
|
|
|
//发送工步内容
|
|
|
@ -113,12 +118,12 @@ public class MesProductionPartNoReadStepService extends BaseStepService {
|
|
|
|
|
|
|
|
|
|
|
|
//获取设备LOG采集数据
|
|
|
|
//获取设备LOG采集数据
|
|
|
|
MesEquipLogDispatchContext equipLogDispatchContext = equipmentLogExtService.doHandleEquipmentLogList(cellEquipContext, equipmentVariableList, equipmentVariableCfgList, false);
|
|
|
|
MesEquipLogDispatchContext equipLogDispatchContext = equipmentLogExtService.doHandleEquipmentLogList(cellEquipContext, equipmentVariableList, equipmentVariableCfgList, false);
|
|
|
|
this.sendMessage(reqBean, resultBean, JSONObject.toJSONString(equipLogDispatchContext), MesPcnEnumUtil.STATION_BUSI_TYPE.RUNNING_INFO, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//验证设备通信质量
|
|
|
|
//验证设备通信质量
|
|
|
|
productionCustomContextStepService.sendEquipQualityMessage(reqBean, cellEquipContext);
|
|
|
|
productionCustomContextStepService.sendEquipQualityMessage(reqBean, cellEquipContext);
|
|
|
|
if (!equipmentLogExtService.checkEquipQuality(cellEquipContext.getQuality()))
|
|
|
|
if (!equipmentLogExtService.checkEquipQuality(cellEquipContext.getQuality()))
|
|
|
|
execThreadSleepAndSendTaskCompleteAndThrowEx(reqBean, resultBean.writeDbLog(), stepResult.isCompleted(false).msg(String.format("请检查设备的质量状态,读取到设备[%s]的数据变量质量值为[%s],持续监听中...", cellEquipContext.getEquipmentName(), cellEquipContext.getQuality())),
|
|
|
|
execThreadSleepAndSendTaskCompleteAndThrowEx(reqBean, resultBean.writeDbLog().checkRepeatType(),
|
|
|
|
|
|
|
|
stepResult.isCompleted(false).msg(String.format("请检查设备的质量状态,读取到设备[%s]的数据变量质量值为[%s],持续监听中...", cellEquipContext.getEquipmentName(), cellEquipContext.getQuality())),
|
|
|
|
MesPcnEnumUtil.STATION_BUSI_TYPE.GUIDE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT, stepParamMap, MesPcnExtConstWords.READ_FAILURE_SLEEP, MesPcnExtConstWords.READ_FAILURE_SLEEP_DEFAULT_TIME);
|
|
|
|
MesPcnEnumUtil.STATION_BUSI_TYPE.GUIDE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT, stepParamMap, MesPcnExtConstWords.READ_FAILURE_SLEEP, MesPcnExtConstWords.READ_FAILURE_SLEEP_DEFAULT_TIME);
|
|
|
|
|
|
|
|
|
|
|
|
//验证产出零件号的有效性
|
|
|
|
//验证产出零件号的有效性
|
|
|
@ -131,7 +136,7 @@ public class MesProductionPartNoReadStepService extends BaseStepService {
|
|
|
|
|
|
|
|
|
|
|
|
//未采集到数据
|
|
|
|
//未采集到数据
|
|
|
|
if (!equipLogDispatchContext.getIsCollectValue())
|
|
|
|
if (!equipLogDispatchContext.getIsCollectValue())
|
|
|
|
execThreadSleepAndSendTaskCompleteAndThrowEx(reqBean, resultBean, stepResult.isCompleted(false).msg(String.format("当前未读取到设备[%s]产出零件号,持续监听中...", cellEquipContext.getEquipmentName())),
|
|
|
|
execThreadSleepAndSendTaskCompleteAndThrowEx(reqBean, resultBean.writeDbLog().checkRepeatType(), stepResult.isCompleted(false).msg(String.format("当前未读取到设备[%s]产出零件号,持续监听中...", cellEquipContext.getEquipmentName())),
|
|
|
|
MesPcnEnumUtil.STATION_BUSI_TYPE.GUIDE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT, stepParamMap, MesPcnExtConstWords.READ_FAILURE_SLEEP, MesPcnExtConstWords.READ_FAILURE_SLEEP_DEFAULT_TIME);
|
|
|
|
MesPcnEnumUtil.STATION_BUSI_TYPE.GUIDE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT, stepParamMap, MesPcnExtConstWords.READ_FAILURE_SLEEP, MesPcnExtConstWords.READ_FAILURE_SLEEP_DEFAULT_TIME);
|
|
|
|
|
|
|
|
|
|
|
|
//读取的产出零件号进行规则匹配
|
|
|
|
//读取的产出零件号进行规则匹配
|
|
|
@ -139,12 +144,15 @@ public class MesProductionPartNoReadStepService extends BaseStepService {
|
|
|
|
|
|
|
|
|
|
|
|
//没有有效的数据
|
|
|
|
//没有有效的数据
|
|
|
|
if (CollectionUtils.isEmpty(equipVariableCollectContextList))
|
|
|
|
if (CollectionUtils.isEmpty(equipVariableCollectContextList))
|
|
|
|
execThreadSleepAndSendTaskCompleteAndThrowEx(reqBean, resultBean.writeDbLog(), stepResult.isCompleted(false).msg(String.format("当前未读取到设备[%s]有效的头道模具号,持续监听中...", cellEquipContext.getEquipmentName())),
|
|
|
|
execThreadSleepAndSendTaskCompleteAndThrowEx(reqBean, resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.READ.getValue()).checkRepeatType(),
|
|
|
|
|
|
|
|
stepResult.isCompleted(false).msg(String.format("当前未读取到设备[%s]有效的产出零件号,持续监听中...", cellEquipContext.getEquipmentName())),
|
|
|
|
MesPcnEnumUtil.STATION_BUSI_TYPE.GUIDE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT, stepParamMap, MesPcnExtConstWords.READ_FAILURE_SLEEP, MesPcnExtConstWords.READ_FAILURE_SLEEP_DEFAULT_TIME);
|
|
|
|
MesPcnEnumUtil.STATION_BUSI_TYPE.GUIDE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT, stepParamMap, MesPcnExtConstWords.READ_FAILURE_SLEEP, MesPcnExtConstWords.READ_FAILURE_SLEEP_DEFAULT_TIME);
|
|
|
|
|
|
|
|
|
|
|
|
//根据设备ID,设备数据变量ID集合 修改设备ID分表采集数据的状态
|
|
|
|
//根据设备ID,设备数据变量ID集合 修改设备ID分表采集数据的状态
|
|
|
|
equipmentLogExtService.updateEquipmentLogList(reqBean.getOrganizeCode(), cellEquipContext.getEquipId(), equipLogDispatchContext.getResetEquipVariableIdList());
|
|
|
|
equipmentLogExtService.updateEquipmentLogList(reqBean.getOrganizeCode(), cellEquipContext.getEquipId(), equipLogDispatchContext.getResetEquipVariableIdList());
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.sendMessage(reqBean, resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.READ.getValue()), JSONObject.toJSONString(equipLogDispatchContext), MesPcnEnumUtil.STATION_BUSI_TYPE.RUNNING_INFO, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT);
|
|
|
|
|
|
|
|
|
|
|
|
//发送工步内容
|
|
|
|
//发送工步内容
|
|
|
|
String scanInfo = equipVariableCollectContextList.stream().filter(o -> null != o).map(MesEquipVariableCollectContext::getEquipVariableValue).collect(Collectors.joining(MesPcnExtConstWords.SEMICOLON));
|
|
|
|
String scanInfo = equipVariableCollectContextList.stream().filter(o -> null != o).map(MesEquipVariableCollectContext::getEquipVariableValue).collect(Collectors.joining(MesPcnExtConstWords.SEMICOLON));
|
|
|
|
productionCustomContextStepService.doSendStepContextMessage(reqBean, scanInfo, MesExtEnumUtil.CELL_MESSAGE_SOURCE.READ);
|
|
|
|
productionCustomContextStepService.doSendStepContextMessage(reqBean, scanInfo, MesExtEnumUtil.CELL_MESSAGE_SOURCE.READ);
|
|
|
|