zouyu
13 小时以前 8ebb968641c80accdc03551164cfeb93e41ff976
inspect-server/src/main/java/com/ruoyi/inspect/service/impl/IfsPartPropsRecordServiceImpl.java
@@ -48,29 +48,33 @@
        if(Objects.isNull(ifsPartPropsRecord)){
            throw new RuntimeException("参数不能为空");
        }
        //判断是新增还是更新
        String actionType = Objects.isNull(ifsPartPropsRecord.getId())?"New":"Modify";
        Map<String, Object> inAttrMap = new HashMap<>();
        inAttrMap.put("RECORD_ID", UUID.randomUUID().toString());
        inAttrMap.put("SYSCODE", "LIMS");
        inAttrMap.put("SYSMODEL", "库存物料批次属性修改");
        HashMap<String, Object> batchInfoMap = new HashMap<>();
        batchInfoMap.put("CONTRACT","ZTNS");//域
        batchInfoMap.put("PART_NO",ifsPartPropsRecord.getPartNo());//零件号
        batchInfoMap.put("LOT_BATCH_NO",ifsPartPropsRecord.getLotBatchNo());//批次号
        batchInfoMap.put("ATTR1",ifsPartPropsRecord.getDrumNo());//载具编号
        batchInfoMap.put("ATTR2",ifsPartPropsRecord.getStartMeterMark().toString());//起始米标
        batchInfoMap.put("ATTR3",ifsPartPropsRecord.getEndMeterMark().toString());//截止米标
        batchInfoMap.put("ATTR4", ifsPartPropsRecord.getOuterColor());//外护颜色
        batchInfoMap.put("ATTR5",ifsPartPropsRecord.getInsulationColor());//绝缘颜色
        batchInfoMap.put("ATTR8",ifsPartPropsRecord.getLetteringInfo());//印字信息
        batchInfoMap.put("ATTR23","车间订单");//入库来源
        batchInfoMap.put("ATTR24","0");//分割预留数量
        batchInfoMap.put("ACTION_TYPE",actionType);//操作类型
        inAttrMap.put("BATCH_INFO", Collections.singletonList(batchInfoMap));
        Result result = ifsApiUtils.importPartLotAttr(JSONUtil.toJsonStr(inAttrMap));
        if(result.getCode()!=200){
            throw new RuntimeException("库存物料批次属性更新失败:"+result.getMessage());
        //查询是否已有同批次同零件号的批次属性,没有才更新
        Long count = baseMapper.selectCountByPartNoAndLotBatchNo(ifsPartPropsRecord.getPartNo(),ifsPartPropsRecord.getLotBatchNo());
        if(count==0){
            //判断是新增还是更新
            String actionType = Objects.isNull(ifsPartPropsRecord.getId())?"New":"Modify";
            Map<String, Object> inAttrMap = new HashMap<>();
            inAttrMap.put("RECORD_ID", UUID.randomUUID().toString());
            inAttrMap.put("SYSCODE", "LIMS");
            inAttrMap.put("SYSMODEL", "库存物料批次属性修改");
            HashMap<String, Object> batchInfoMap = new HashMap<>();
            batchInfoMap.put("CONTRACT","ZTNS");//域
            batchInfoMap.put("PART_NO",ifsPartPropsRecord.getPartNo());//零件号
            batchInfoMap.put("LOT_BATCH_NO",ifsPartPropsRecord.getLotBatchNo());//批次号
            batchInfoMap.put("ATTR1",ifsPartPropsRecord.getDrumNo());//载具编号
            batchInfoMap.put("ATTR2",ifsPartPropsRecord.getStartMeterMark().toString());//起始米标
            batchInfoMap.put("ATTR3",ifsPartPropsRecord.getEndMeterMark().toString());//截止米标
            batchInfoMap.put("ATTR4", ifsPartPropsRecord.getOuterColor());//外护颜色
            batchInfoMap.put("ATTR5",ifsPartPropsRecord.getInsulationColor());//绝缘颜色
            batchInfoMap.put("ATTR8",ifsPartPropsRecord.getLetteringInfo());//印字信息
            batchInfoMap.put("ATTR23","车间订单");//入库来源
            batchInfoMap.put("ATTR24","0");//分割预留数量
            batchInfoMap.put("ACTION_TYPE",actionType);//操作类型
            inAttrMap.put("BATCH_INFO", Collections.singletonList(batchInfoMap));
            Result result = ifsApiUtils.importPartLotAttr(JSONUtil.toJsonStr(inAttrMap));
            if(result.getCode()!=200){
                throw new RuntimeException("库存物料批次属性更新失败:"+result.getMessage());
            }
        }
        return this.saveOrUpdate(ifsPartPropsRecord);
    }