whyclxw
2025-05-28 e16302f9d475c7cc4dd18c5abf1a23cb5502e362
src/main/java/com/whyc/service/BattTestDataInf2Service.java
@@ -52,9 +52,19 @@
    @Autowired
    private PageParamService pageParamService;
    @Autowired
    private SubTablePageInfoService subService;
    /*新版接口不包含内阻数据
     * */
    public PageInfo<BatttestdataInf> calcTestData(BattTestDataDTO paramDto, Integer pageNum, Integer pageSize) {
        //获取充放电时间过滤参数
        List<PageParam> pageParamList = pageParamService.getList2ByCategoryId(14);
        int jcDischargeFilterTime = pageParamList.get(2).getStatus() * 60;
        int jcChargeFilterTime = pageParamList.get(3).getStatus() * 60;
        paramDto.setJcDischargeFilterTime(jcDischargeFilterTime);
        paramDto.setJcChargeFilterTime(jcChargeFilterTime);
        List<BatttestdataInf> calcDataList = new LinkedList<>();
        //查询电池组 电池信息或者电导信息
        PageHelper.startPage(pageNum, pageSize, true);
@@ -83,58 +93,7 @@
            calcDataList.add(battTestDataInf);
        });
        //获取充放电时间过滤参数
        List<PageParam> pageParamList = pageParamService.getList2ByCategoryId(14);
        //过滤
        List<BatttestdataInf> finalDataList = calcDataList.stream().filter(data -> {
            Integer testType = data.getTestType();
            Integer testStarttype = data.getTestStarttype();
            Integer testDatatype = data.getTestDatatype();
            Integer testTimeLong = data.getTestTimelong();
            if (testType == 3) {
                // 测试类型为放电
                if (testStarttype == 3) {
                    //核容放电
                    if (testTimeLong >= pageParamList.get(0).getStatus() * 60) {
                        return true;
                    } else {
                        return false;
                    }
                } else {
                    if (testDatatype == 1) {
                        //停电放电
                        return true;
                    } else {
                        //监测放电
                        if (testTimeLong >= pageParamList.get(2).getStatus() * 60) {
                            return true;
                        } else {
                            return false;
                        }
                    }
                }
            } else if (testType == 2) {
                // 测试类型为充电
                if (testStarttype == 3) {
                    //核容充电
                    if (testTimeLong >= pageParamList.get(1).getStatus() * 60) {
                        return true;
                    } else {
                        return false;
                    }
                } else {
                    //监测充电
                    if (testTimeLong >= pageParamList.get(3).getStatus() * 60) {
                        return true;
                    } else {
                        return false;
                    }
                }
            } else {
                return true;
            }
        }).collect(Collectors.toList());
        pageInfo.setList(finalDataList);
        pageInfo.setList(calcDataList);
        return pageInfo;
    }
@@ -192,9 +151,13 @@
    public boolean delete(Integer num, Integer battGroupId, Integer testRecordCount, Integer testType) {
        //充电,放电,在线监测
        if(testType == BattTestEnum.TEST_TYPE_CHARGE.getValue() ||
        /*if(testType == BattTestEnum.TEST_TYPE_CHARGE.getValue() ||
                testType == BattTestEnum.TEST_TYPE_DISCHARGE.getValue()||
                testType == BattTestEnum.TEST_TYPE_MONITOR.getValue()
        )*/
        if(testType.equals(BattTestEnum.TEST_TYPE_CHARGE.getValue())  ||
                testType.equals(BattTestEnum.TEST_TYPE_DISCHARGE.getValue())||
                testType.equals(BattTestEnum.TEST_TYPE_MONITOR.getValue())
        ){
            //删除 测试表inf里的信息
            testDataInfMapper.deleteById(num);
@@ -205,7 +168,8 @@
            //删除 测试表inf里的信息
            resDataInfMapper.deleteById(num);
            //删除 测试表_battGroupId里面对应的单体信息
            resDataMapper.deleteByTestRecordCount(battGroupId,testRecordCount);
            //resDataMapper.deleteByTestRecordCount(battGroupId,testRecordCount);
            subService.deleteByTestRecordCount(battGroupId,testRecordCount);
        }
        return true;
    }