uat-temp-wj-2502060000-chongqing-step
王杰 2 months ago
parent bc1bb87025
commit 3137abbfa9

@ -28,14 +28,14 @@ public interface IMesQueueOrderPushService {
Integer getQueueOrderPushMaxSeq(String organizeCode, MesQueueOrderPushCellCfg queueOrderPushCellCfg);
@ApiOperation(value = "根据条件顺序号查询上一个顺序号,返回加一")
Integer getQueueOrderPushCalcSeq(String organizeCode, MesQueueOrderPushCellCfg queueOrderPushCellCfg, Integer processSeqNext);
Integer getQueueOrderPushCalcSeq(String organizeCode, MesQueueOrderPushCellCfg queueOrderPushCellCfg, Integer processSeqUp);
@ApiOperation(value = "写入工位工单推送信息")
void insertQueueOrderPush(String organizeCode, String userInfo, List<MesQueueOrderPushCellCfg> queueOrderPushCellCfgList,
MesProductionPsOutContext productionPsOutContext, MesProductionPartContext productionPartContext);
@ApiOperation(value = "写入工位工单推送信息")
void insertQueueOrderPush(StationRequestBean reqBean, MesWorkOrder workOrder, MesQueueOrderPushCellCfg queueOrderPushCellCfg, String processSeqNext);
void insertQueueOrderPush(StationRequestBean reqBean, MesWorkOrder workOrder, MesQueueOrderPushCellCfg queueOrderPushCellCfg, String processSeqUp);
@ApiOperation(value = "根据ID查询生产队列工位推送信息")
MesQueueOrderPush getQueueOrderPush(String organizeCode, Long id);

@ -68,17 +68,17 @@ public class MesQueueOrderPushService implements IMesQueueOrderPushService {
//根据条件顺序号查询上一个顺序号,返回加一
@Override
public Integer getQueueOrderPushCalcSeq(String organizeCode, MesQueueOrderPushCellCfg queueOrderPushCellCfg, Integer processSeqNext) {
public Integer getQueueOrderPushCalcSeq(String organizeCode, MesQueueOrderPushCellCfg queueOrderPushCellCfg, Integer processSeqUp) {
if (StringUtils.isEmpty(organizeCode) || null == queueOrderPushCellCfg) return MesPcnExtConstWords.TEN;
DdlPackBean packBean = DdlPackBean.getDdlPackBean(organizeCode);
DdlPreparedPack.getStringEqualPack(queueOrderPushCellCfg.getPushSourceCode(), MesPcnExtConstWords.PUSH_SOURCE_CODE, packBean);
DdlPreparedPack.getStringEqualPack(queueOrderPushCellCfg.getWorkCenterCode(), MesPcnExtConstWords.WORK_CENTER_CODE, packBean);
DdlPreparedPack.getNumberSmallerPackContainsZero(processSeqNext, MesPcnExtConstWords.PROCESS_SEQ, packBean);
DdlPreparedPack.getNumberSmallerPackContainsZero(processSeqUp, MesPcnExtConstWords.PROCESS_SEQ, packBean);
DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{MesPcnExtConstWords.PROCESS_SEQ}, packBean);
MesQueueOrderPush queueOrderPushDb2MaxSeq = queueOrderPushRepository.getByProperty(packBean);
if (null == queueOrderPushDb2MaxSeq) return MesPcnExtConstWords.ONE;
Integer processSeq = queueOrderPushDb2MaxSeq.getProcessSeq() + 1;
if (processSeq.compareTo(processSeqNext) == 0) return queueOrderPushDb2MaxSeq.getProcessSeq();
if (processSeq.compareTo(processSeqUp) == 0) return queueOrderPushDb2MaxSeq.getProcessSeq();
return processSeq;
}
@ -115,12 +115,12 @@ public class MesQueueOrderPushService implements IMesQueueOrderPushService {
//写入工位工单推送信息
@Override
public void insertQueueOrderPush(StationRequestBean reqBean, MesWorkOrder workOrder, MesQueueOrderPushCellCfg queueOrderPushCellCfg, String processSeqNext) {
public void insertQueueOrderPush(StationRequestBean reqBean, MesWorkOrder workOrder, MesQueueOrderPushCellCfg queueOrderPushCellCfg, String processSeqUp) {
Integer processSeq;
//获取当前生产线推单代码中最大的顺序号
if (StringUtils.isEmpty(processSeqNext)) processSeq = getQueueOrderPushMaxSeq(reqBean.getOrganizeCode(), queueOrderPushCellCfg);
if (StringUtils.isEmpty(processSeqUp)) processSeq = getQueueOrderPushMaxSeq(reqBean.getOrganizeCode(), queueOrderPushCellCfg);
//根据条件顺序号查询上一个顺序号,返回加一
else processSeq = getQueueOrderPushCalcSeq(reqBean.getOrganizeCode(), queueOrderPushCellCfg, Integer.valueOf(processSeqNext));
else processSeq = getQueueOrderPushCalcSeq(reqBean.getOrganizeCode(), queueOrderPushCellCfg, Integer.valueOf(processSeqUp));
//新增队列
MesQueueOrderPush queueOrderPush = new MesQueueOrderPush();

@ -130,10 +130,10 @@ public class MesFunctionQueueOrderPushService extends BaseSwsService implements
//新增
private Map<String, Object> insertQueueOrderPush(StationRequestBean reqBean, StationResultBean resultBean,
ButtonDynamicModel buttonDynamicModel, Map<String, Object> resultMap, Map<String, String> paramMap) {
if (!paramMap.containsKey(MesPcnExtConstWords.PUSH_SOURCE_CODE)) {
if (StringUtils.isEmpty(paramMap.get(MesPcnExtConstWords.PUSH_SOURCE_CODE))) {
return packResultMap(reqBean, resultBean, resultMap, String.format("[%s]新增:请选择推送来源代码!", buttonDynamicModel.getButtonName()));
}
if (!paramMap.containsKey(MesPcnExtConstWords.WORK_ORDER_NO)) {
if (StringUtils.isEmpty(paramMap.get(MesPcnExtConstWords.WORK_ORDER_NO))) {
return packResultMap(reqBean, resultBean, resultMap, String.format("[%s]新增:请扫描加工单或客户条码!", buttonDynamicModel.getButtonName()));
}
@ -157,7 +157,7 @@ public class MesFunctionQueueOrderPushService extends BaseSwsService implements
}
//写入工位工单推送信息
queueOrderPushService.insertQueueOrderPush(reqBean, workOrder, optional.get(), paramMap.get(MesPcnExtConstWords.PROCESS_SEQ));
queueOrderPushService.insertQueueOrderPush(reqBean, workOrder, optional.get(), paramMap.get(MesPcnExtConstWords.PROCESS_SEQ_UP));
return resultMap;
@ -166,11 +166,11 @@ public class MesFunctionQueueOrderPushService extends BaseSwsService implements
//修改【仅支持修改顺序】
private Map<String, Object> updateQueueOrderPush(StationRequestBean reqBean, StationResultBean resultBean,
ButtonDynamicModel buttonDynamicModel, Map<String, Object> resultMap, Map<String, String> paramMap) {
if (!paramMap.containsKey(MesPcnExtConstWords.ID)) {
if (StringUtils.isEmpty(paramMap.get(MesPcnExtConstWords.ID))) {
return packResultMap(reqBean, resultBean, resultMap, String.format("[%s]修改:缺少修改数据的ID参数!", buttonDynamicModel.getButtonName()));
}
if (!paramMap.containsKey(MesPcnExtConstWords.PROCESS_SEQ)) {
return packResultMap(reqBean, resultBean, resultMap, String.format("[%s]修改:请输入工艺顺序号!", buttonDynamicModel.getButtonName()));
if (StringUtils.isEmpty(paramMap.get(MesPcnExtConstWords.PROCESS_SEQ)) && StringUtils.isEmpty(paramMap.get(MesPcnExtConstWords.PROCESS_SEQ_UP)) && StringUtils.isEmpty(paramMap.get(MesPcnExtConstWords.PROCESS_SEQ_DOWN))) {
return packResultMap(reqBean, resultBean, resultMap, String.format("[%s]修改:缺少工艺顺序号!", buttonDynamicModel.getButtonName()));
}
//根据ID查询生产队列工位推送信息
MesQueueOrderPush queueOrderPush = queueOrderPushService.getQueueOrderPush(reqBean.getOrganizeCode(), Long.valueOf(paramMap.get(MesPcnExtConstWords.ID)));
@ -180,12 +180,26 @@ public class MesFunctionQueueOrderPushService extends BaseSwsService implements
if (queueOrderPush.getQueueStatus().compareTo(MesExtEnumUtil.QUEUE_ORDER_STATUS.CREATE.getValue()) != 0) {
return packResultMap(reqBean, resultBean, resultMap, String.format("[%s]修改:当前修改的队列信息状态为[%s],不支持修改操作!", buttonDynamicModel.getButtonName(), MesExtEnumUtil.QUEUE_ORDER_STATUS.valueOfDescription(queueOrderPush.getQueueStatus())));
}
//处理排序线推单上下文, 返回推送工位类型对应的配置信息 【目标工位】
List<MesQueueOrderPushCellCfg> queueOrderPushCellCfg = productionProcessContextStepService.dispatchQueueOrderPushCellCfgContext(reqBean, MesExtEnumUtil.QUEUE_ORDER_CELL_PUSH_TYPE.TARGET.getValue());
Optional<MesQueueOrderPushCellCfg> optional = CollectionUtils.isEmpty(queueOrderPushCellCfg) ? null :
queueOrderPushCellCfg.stream().filter(o -> (null != o && o.getPushSourceCode().equals(queueOrderPush.getPushSourceCode()))).findFirst();
if (null == optional || !optional.isPresent()) {
return packResultMap(reqBean, resultBean, resultMap, String.format("[%s]修改:当前工位未配置推送来源代码[%s]推送工位类型[%s]的配置信息!",
buttonDynamicModel.getButtonName(), paramMap.get(MesPcnExtConstWords.PUSH_SOURCE_CODE), MesExtEnumUtil.QUEUE_ORDER_CELL_PUSH_TYPE.TARGET.getDescription()));
}
Integer processSeq;
if (!StringUtils.isEmpty(paramMap.get(MesPcnExtConstWords.PROCESS_SEQ))) processSeq = Integer.valueOf(paramMap.get(MesPcnExtConstWords.PROCESS_SEQ));
else if (!StringUtils.isEmpty(paramMap.get(MesPcnExtConstWords.PROCESS_SEQ_UP))) processSeq = queueOrderPushService.getQueueOrderPushCalcSeq(reqBean.getOrganizeCode(), optional.get(), Integer.valueOf(paramMap.get(MesPcnExtConstWords.PROCESS_SEQ_UP)));
else processSeq = Integer.valueOf(paramMap.get(MesPcnExtConstWords.PROCESS_SEQ_UP)) + 1;
//根据条件修改生产队列工位推送信息
queueOrderPushService.saveQueueOrderPushByCondition(
new String[]{MesPcnExtConstWords.ORGANIZE_CODE, MesPcnExtConstWords.ID},
new Object[]{reqBean.getOrganizeCode(), Long.valueOf(paramMap.get(MesPcnExtConstWords.ID))},
new String[]{MesPcnExtConstWords.PROCESS_SEQ, MesPcnExtConstWords.MODIFY_USER, MesPcnExtConstWords.MODIFY_DATE_TIME, MesPcnExtConstWords.SYSTEM_SYNC_STATUS, MesPcnExtConstWords.SYSTEM_SYNC_DATE_TIME},
new Object[]{Integer.valueOf(paramMap.get(MesPcnExtConstWords.PROCESS_SEQ)), reqBean.getUserInfo(), TimeTool.getNowTime(true), CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), MesPcnExtConstWords.EMPTY});
new Object[]{processSeq, reqBean.getUserInfo(), TimeTool.getNowTime(true), CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), MesPcnExtConstWords.EMPTY});
return resultMap;
}

@ -363,6 +363,10 @@ public class MesPcnExtConstWords {
public static final String TARGET_WORK_CELL_CODE = "targetWorkCellCode";
//工艺顺序号
public static final String PROCESS_SEQ = "processSeq";
//工艺顺序号(上面)
public static final String PROCESS_SEQ_UP = "processSeqUp";
//工艺顺序号(下面)
public static final String PROCESS_SEQ_DOWN = "processSeqDown";
//推送来源代码
public static final String PUSH_SOURCE_CODE = "pushSourceCode";
//业务类型

Loading…
Cancel
Save