test-temp-wj-250117-pack
王杰 4 months ago
parent 91fbdbed6a
commit 17818f5ea2

@ -62,13 +62,10 @@ public class MesFunctionPackagePartService extends BaseSwsService implements IFs
//前端传递的参数
MesPackageDataContext packageDataContext = StringUtils.isEmpty(buttonDynamicModel.getFunctionValue()) ? null : JSONObject.parseObject(buttonDynamicModel.getFunctionValue(), MesPackageDataContext.class);
//初始化界面
if (null == packageDataContext || StringUtils.isEmpty(packageDataContext.getBusiType())) {
//前端拿到接口返回数据的时候如果存在 IS_COVER_DATA=1 则覆盖之前渲染的数据
resultMap.put(MesPcnExtConstWords.IS_COVER_DATA, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
//获取上下文产出零件信息
List<MesProductionPartContext> productionPartContextList = productionDispatchContextStepService.getProductionPartContext(reqBean);
@ -84,6 +81,9 @@ public class MesFunctionPackagePartService extends BaseSwsService implements IFs
List<MesProdRuleContext> prodRuleContextList = null;
if (CollectionUtils.isEmpty(productionPartContextList)) prodRuleContextList = productionDispatchContextStepService.getProdRuleDataContext(reqBean);
//当前没有产成零件时,设置 IS_SELECT_PART=1 则支持开窗选零件
if (CollectionUtils.isEmpty(productionPartContextList) && CollectionUtils.isEmpty(prodRuleContextList)) resultMap.put(MesPcnExtConstWords.IS_SELECT_PART, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
if (CollectionUtils.isEmpty(productionPartContextList) && CollectionUtils.isEmpty(prodRuleContextList) && (null == packageDataContext || StringUtils.isEmpty(packageDataContext.getPartNo()))) {
resultMap.put(MesPcnExtConstWords.DATA_TYPE, MesPcnEnumUtil.STATION_DATA_TYPE.TEXT.getValue());
return packResultMap(reqBean, resultBean, resultMap, String.format("生产线[%s]工位[%s]零件打包:请选择打包零件编码!", reqBean.getWorkCenterCode(), reqBean.getWorkCellCode()));
@ -101,9 +101,9 @@ public class MesFunctionPackagePartService extends BaseSwsService implements IFs
//根据上下文产出零件信息封装列表数据
if (!CollectionUtils.isEmpty(productionPartContextList)) packResultList2Ppc(reqBean, stepResult, productionPartContextList, isExistOrder, packageRuleContextMap, resultList);
//根据上下文产品加工规则数据信息封装列表数据
//根据上下文产品加工规则数据信息封装列表数据
else if (!CollectionUtils.isEmpty(prodRuleContextList)) packResultList2Prc(reqBean, stepResult, prodRuleContextList, packageRuleContextMap, resultList);
//根据用户选择的零件信息封装列表数据
//根据用户选择的零件信息封装列表数据
else packResultList2PartNo(reqBean, stepResult, packageDataContext.getPartNo(), packageRuleContextMap, resultList);
//保存包装规则信息
@ -120,8 +120,6 @@ public class MesFunctionPackagePartService extends BaseSwsService implements IFs
resultBean.writeDbLog(MesPcnEnumUtil.WORK_CELL_SCAN_MONITOR_LOG_TYPE.PICK.getValue()).scanInfo(String.format("零件号[%s]数量[%s]包装规格数量[%s]", packageDataContext.getPartNo(), packageDataContext.getQty(), packageDataContext.getPackSpecQty()));
//业务操作: 零件打包 ----- 当前端调用传了 busiType 时, 前端拿到接口返回数据的时候如果存在 IS_COVER_DATA=2 则不覆盖之前渲染的数据, 只判断是否提示信息 -----
resultMap.put(MesPcnExtConstWords.IS_COVER_DATA, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue());
resultMap.put(MesPcnExtConstWords.DATA_TYPE, MesPcnEnumUtil.STATION_DATA_TYPE.EXP_TEXT.getValue());
if (StringUtils.isEmpty(packageDataContext.getPartNo()) || StringUtils.isEmpty(packageDataContext.getQty()) || StringUtils.isEmpty(packageDataContext.getPackageCode())) {
return packResultMap(reqBean, resultBean, resultMap, String.format("生产线[%s]工位[%s]零件打包:零件编码[%s]缺少必要主数据!", reqBean.getWorkCenterCode(), reqBean.getWorkCellCode(), packageDataContext.getPartNo()));
@ -245,3 +243,4 @@ public class MesFunctionPackagePartService extends BaseSwsService implements IFs
}
}

@ -327,8 +327,8 @@ public class MesPcnExtConstWords {
public static final String PACK_SPEC_QTY = "packSpecQty";
//动态列名
public static final String ATTR_BEAN_LIST = "ATTR_BEAN_LIST";
//是否覆盖数据
public static final String IS_COVER_DATA = "IS_COVER_DATA";
//支持允许前端开窗选零件
public static final String IS_SELECT_PART = "IS_SELECT_PART";
//BaseBean字段不包含工厂, 用于对象复制剔除属性BeanUtils.copyProperties(Object source, Object target, String... ignoreProperties)

Loading…
Cancel
Save