流程包含解绑工步[工步参数]逻辑优化

tags/yfai-pcn-ext-v2.3
jun 7 months ago
parent e67dd0fe8d
commit e6aa6deb48

@ -716,6 +716,7 @@ public class MesWorkOrderService implements IMesWorkOrderService {
private MesProductOffLine getMesProductOffLine(MesProductionRecord productionRecord, String userName, MesWorkOrder oldMesWorkOrder, MesProductVersion mesProductVersion, MesBom mesBom,String reportSn,boolean isItemReport) {
MesProductOffLine newMesProductOffLine = new MesProductOffLine();
BeanUtils.copyProperties(mesBom, newMesProductOffLine, MesPcnExtConstWords.BASE_BEAN_FIELDS);
newMesProductOffLine.setReportPartNo(mesBom.getPartNo());
newMesProductOffLine.setReportPartNameRdd(mesBom.getPartName());
newMesProductOffLine.setAlort(mesProductVersion.getReceiveInventoryPoint());
@ -725,6 +726,10 @@ public class MesWorkOrderService implements IMesWorkOrderService {
if (mesBom.getPartNo().equals(oldMesWorkOrder.getPartNo())) {
newMesProductOffLine.setReportPartNo(mesBom.getItemPartNo());
newMesProductOffLine.setReportPartNameRdd(mesBom.getItemPartName());
newMesProductOffLine.setItemPartNo(MesPcnExtConstWords.EMPTY);
newMesProductOffLine.setItemPartName(MesPcnExtConstWords.EMPTY);
newMesProductOffLine.setItemUnit(MesPcnExtConstWords.EMPTY);
newMesProductOffLine.setItemQty(0d);
}
newMesProductOffLine.setReportSn(reportSn);
newMesProductOffLine.setSerialNumber(reportSn);
@ -732,14 +737,10 @@ public class MesWorkOrderService implements IMesWorkOrderService {
newMesProductOffLine.setReportSn(productionRecord.getProductSn());
newMesProductOffLine.setSerialNumber(productionRecord.getSerialNumber());
}
newMesProductOffLine.setItemPartNo(mesBom.getItemPartNo());
newMesProductOffLine.setItemPartName(mesBom.getItemPartName());
newMesProductOffLine.setItemQty(mesBom.getItemQty());
newMesProductOffLine.setQty(1d);
newMesProductOffLine.setBomVersion(oldMesWorkOrder.getProductVersion());
newMesProductOffLine.setUnit(mesBom.getUnit());
newMesProductOffLine.setBomCode(mesBom.getBomCode());
newMesProductOffLine.setItemUnit(mesBom.getItemUnit());
newMesProductOffLine.setWorkOrderNo(oldMesWorkOrder.getWorkOrderNo());
newMesProductOffLine.setWorkOrderType(oldMesWorkOrder.getWorkOrderType());
newMesProductOffLine.setWorkCenterCode(oldMesWorkOrder.getWorkCenterCode());

@ -3,17 +3,16 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.step;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProduceSnExtService;
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.api.busi.recyclablepackage.IMesRecyclablePackageBindingLogService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.recyclablepackage.IMesRecyclablePackageBindingService;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesEquipVariableCollectContext;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionProcessContext;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionPsInContext;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionRecyclablePackageContext;
import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords;
import cn.estsh.i3plus.mes.pcn.actor.shipping.dispatch.IFsmCommonService;
import cn.estsh.i3plus.mes.pcn.api.iservice.base.IConfigService;
import cn.estsh.i3plus.mes.pcn.serviceimpl.fsm.BaseStepService;
import cn.estsh.i3plus.pojo.mes.bean.MesConfig;
import cn.estsh.i3plus.pojo.mes.bean.MesProdRouteOptParam;
import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn;
import cn.estsh.i3plus.pojo.mes.bean.MesWorkCell;
import cn.estsh.i3plus.pojo.mes.bean.recyclablepackage.MesRecyclablePackageBinding;
@ -57,9 +56,6 @@ public class MesProcessMethodSourceBoxInOutStepService extends BaseStepService {
@Autowired
private IConfigService configService;
@Autowired
private IFsmCommonService fsmCommonService;
@Override
public StepResult execute(StationRequestBean reqBean) {
@ -152,9 +148,9 @@ public class MesProcessMethodSourceBoxInOutStepService extends BaseStepService {
createProductionPsInContext(reqBean, stepResult, workCell, equipVariableCollectContextList.iterator().next(), produceSnMap.get(bindingDetail.getProductSn()), productionPsInContextList);
}
}
//没有单独扣减工步时在本工步扣减
Map<String, String> wcpcMap = fsmCommonService.handleFsmWcpcMapDataForDoScan(reqBean);
if (wcpcMap.containsKey(MesPcnExtConstWords.CONTEXT_UNBINDING_STEP) && !Boolean.parseBoolean(wcpcMap.get(MesPcnExtConstWords.CONTEXT_UNBINDING_STEP))) {
//流程包含解绑工步[工步参数]
Optional<Map<String, MesProdRouteOptParam>> stepParamMap = getStepParams(reqBean);
if ((null != stepParamMap && stepParamMap.isPresent() && stepParamMap.get().containsKey(MesPcnExtConstWords.CONTEXT_UNBINDING_STEP)) && !Boolean.parseBoolean(stepParamMap.get().get(MesPcnExtConstWords.CONTEXT_UNBINDING_STEP).getParamValue())) {
mesRecyclablePackageBindingService.doMesRecyclablePackageUnBinding(recyclablePackageBinding, bindingDetailList, reqBean.getUserInfo());
}
return stepResult;

@ -279,6 +279,8 @@ public class MesPcnExtConstWords {
public static final Integer MAX_RETRY_TIMES_DEFAULT = 10;
// 非排序需要验证主条码是否是自制件[工步参数]
public static final String NEED_CHECK_IS_PS = "NEED_CHECK_IS_PS";
// 流程包含解绑工步[工步参数]
public static final String CONTEXT_UNBINDING_STEP = "CONTEXT_UNBINDING_STEP";
// 装配件显示规则配置[工位参数]
public static final String ASSEMBLY_SHOW_MR_CFG = "ASSEMBLY_SHOW_MR_CFG";
@ -298,8 +300,6 @@ public class MesPcnExtConstWords {
public static final String ENDLESS_LOOP_READ_TIMES = "ENDLESS_LOOP_READ_TIMES";
// 死循环读取默认默认次数
public static final String ENDLESS_LOOP_READ_TIMES_DEFAULT = "10";
// 流程包含解绑工步
public static final String CONTEXT_UNBINDING_STEP = "CONTEXT_UNBINDING_STEP";
// 工位/工步 参数按钮事件
public static final String FUNCTION_CMD = "FUNCTION_CMD";
@ -501,8 +501,6 @@ public class MesPcnExtConstWords {
//发运解析条码最大长度
public static final String MAX_SHIPPING_BARCODE_LENGTH = "MAX_SHIPPING_BARCODE_LENGTH";
//拆解目标库位
public static final String DISASSEMBLY_DEST_LOCATE = "DISASSEMBLY_DEST_LOCATE";
//裁片工单号
public static final String CUT_WORK_ORDER_NO = "cutWorkOrderNo";
// 条码

Loading…
Cancel
Save