-
admin
2024-04-29 2c7661d0bca739a9b403cdd420d2b91eb77470e6
jcdm-main/src/main/java/com/jcdm/main/bs/formulaChild/service/impl/BsFormulaChildInfoServiceImpl.java
@@ -145,6 +145,90 @@
    }
    @Override
    public AjaxResult yzUpdateResults(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());
            addParameterCollection(bsFormulaChildInfo);
            if (spareField4 != null && !spareField4.isEmpty()) {
                // 执行操作
                if(bsFormulaChildInfos.get(0).getSpareField4().equals("1")){
                    try {
                        result = "3";
                    } catch (Exception e) {
                        throw new RuntimeException(e);
                    }
                }
            }
        }else {
            result = "1";
        }
        return AjaxResult.success(result);
    }
    @Override
    public AjaxResult yzUpdateTighteningFormula(BsFormulaChildInfo bsFormulaChildInfo) {
        String result = "1";
        BsFormulaChildInfo getMaterTwo = new BsFormulaChildInfo();
        getMaterTwo.setProcessesCode(bsFormulaChildInfo.getLocationCode());
        getMaterTwo.setOperationType("2");
        List<BsFormulaChildInfo> operationType = bsFormulaChildInfoMapper.selectBsFormulaChildInfoList(getMaterTwo);
        List<String> collect = operationType.stream().map(BsFormulaChildInfo::getResults).collect(Collectors.toList());
        for (String s : collect) {
            if(s.equals("")){
                return AjaxResult.error("扫描未完成,禁止拧紧操作!");
            }
        }
        BsFormulaChildInfo listQuery = new BsFormulaChildInfo();
        listQuery.setParamCode(bsFormulaChildInfo.getParamCode());
        String paramCode = bsFormulaChildInfo.getTightenTheArray();
        if(paramCode.contains("N")){
            List<BsFormulaChildInfo> bsFormulaChildInfos = bsFormulaChildInfoMapper.selectBsFormulaChildInfoList(listQuery);
            bsFormulaChildInfos.get(0).setResults("NG");
            bsFormulaChildInfos.get(0).setCollectData(bsFormulaChildInfo.getTightenTheArray());
            bsFormulaChildInfoMapper.updateBsFormulaChildInfo(bsFormulaChildInfos.get(0));
            return AjaxResult.error("扫描结果NG,请重新扫描!");
        }else {
            List<BsFormulaChildInfo> bsFormulaChildInfos = bsFormulaChildInfoMapper.selectBsFormulaChildInfoList(listQuery);
            bsFormulaChildInfos.get(0).setResults("OK");
            bsFormulaChildInfos.get(0).setCollectData(bsFormulaChildInfo.getTightenTheArray());
            bsFormulaChildInfoMapper.updateBsFormulaChildInfo(bsFormulaChildInfos.get(0));
            String spareField4 = bsFormulaChildInfos.get(0).getSpareField4();
            if (spareField4 != null && !spareField4.isEmpty()) {
                // 执行操作
                if(bsFormulaChildInfos.get(0).getSpareField4().equals("1")){
                    try {
//                        WebSocketUsers.sendMessageToUserByText(map.get(bsFormulaChildInfo.getLocationCode()), "OUT");
                        result = "2";
                    } catch (Exception e) {
                        throw new RuntimeException(e);
                    }
                }
            }
        }
        return AjaxResult.success(result);
    }
    @Override
    public BsFormulaChildInfo releaseCheck(BsFormulaChildInfo bsFormulaChildInfo) {
        return bsFormulaChildInfoMapper.releaseCheck(bsFormulaChildInfo);
    }