-
admin
2024-05-09 06713afdb80bc876ffc6a09442049a08eb8a2364
jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/service/impl/BsFormulaChildInfoServiceImpl.java
@@ -237,6 +237,48 @@
    }
    @Override
    public AjaxResult jrmUpdateResults(BsFormulaChildInfo bsFormulaChildInfo) {
        String result = "";
        List<BsFormulaChildInfo> bsFormulaChildInfos = new ArrayList<>();
        List<BsFormulaChildInfo> infos = bsFormulaChildInfoService.list(new LambdaQueryWrapper<BsFormulaChildInfo>()
                .eq(BsFormulaChildInfo::getProcessesCode, bsFormulaChildInfo.getLocationCode())
                .eq(BsFormulaChildInfo::getProductCode, bsFormulaChildInfo.getProductCode())
                .eq(BsFormulaChildInfo::getOperationType, "2")
        );
        for (BsFormulaChildInfo formulaChildInfo : infos) {
            if(bsFormulaChildInfo.getScanBarcode().contains(formulaChildInfo.getMaterialCode())){
                bsFormulaChildInfos.add(formulaChildInfo);
                break;
            }
        }
        if(bsFormulaChildInfos.size()>0){
            String spareField4 = bsFormulaChildInfos.get(0).getSpareField4();
            bsFormulaChildInfos.get(0).setCollectData(bsFormulaChildInfo.getScanBarcode());
            bsFormulaChildInfos.get(0).setResults("OK");
            bsFormulaChildInfoMapper.updateBsFormulaChildInfo(bsFormulaChildInfos.get(0));
            bsFormulaChildInfo.setParamValue(bsFormulaChildInfo.getScanBarcode());
            bsFormulaChildInfo.setParamCode(bsFormulaChildInfos.get(0).getParamCode());
            bsFormulaChildInfo.setSfcBarcode(bsFormulaChildInfo.getSfcBarcode());
            jrmAddParameterCollection(bsFormulaChildInfo);
            if (spareField4 != null && !spareField4.isEmpty()) {
                // 执行操作
                if(bsFormulaChildInfos.get(0).getSpareField4().equals("1")){
                    try {
                        result = "3";
                        miloService.writeToOpcShort(ReadWriteEntity.builder().identifier("PACK."+bsFormulaChildInfo.getLocationCode()+".RecordDataDone").value(21).build());
                    } catch (Exception e) {
                        throw new RuntimeException(e);
                    }
                }
            }
        }else {
            result = "1";
        }
        return AjaxResult.success(result);
    }
    @Override
    public BsFormulaChildInfo releaseCheck(BsFormulaChildInfo bsFormulaChildInfo) {
        return bsFormulaChildInfoMapper.releaseCheck(bsFormulaChildInfo);
    }
@@ -303,6 +345,23 @@
        daParamCollectionMapper.insertDaParamCollection(daParamCollection);
    }
    public void jrmAddParameterCollection(BsFormulaChildInfo bsFormulaChildInfo){
        String scanBarCode = bsFormulaChildInfo.getSfcBarcode();
        String[] modeleSplit = scanBarCode.split(",");
        for (String modele : modeleSplit) {
            DaParamCollection daParamCollection = new DaParamCollection();
            daParamCollection.setParamCode(bsFormulaChildInfo.getParamCode());
            daParamCollection.setWorkOrderNo(bsFormulaChildInfo.getWorkOrderNo());
            daParamCollection.setLocationCode(bsFormulaChildInfo.getLocationCode());
            daParamCollection.setParamValue(bsFormulaChildInfo.getParamValue());
            daParamCollection.setProductCode(bsFormulaChildInfo.getProductCode());
            daParamCollection.setCollectionTime(new Date());
            daParamCollection.setSfcCode(modele);
            daParamCollectionMapper.insertDaParamCollection(daParamCollection);
        }
    }
    @Override
    public AjaxResult workpieceRelease(BsFormulaChildInfo bsFormulaChildInfo) {
        List<BsFormulaChildInfo> list = bsFormulaChildInfoService.list(new LambdaQueryWrapper<BsFormulaChildInfo>()