whycxzp
2021-06-03 0ed39bd9a35a51a118f54b6c3fea792294431a2f
src/main/java/com/whyc/service/ExperimentService.java
@@ -138,7 +138,7 @@
        //2种方式
        //m1
        QueryWrapper<ExperimentPrecondition> wrapper = Wrappers.query();
        wrapper.eq("type",type);
        wrapper.eq("type",type).eq("flag",1);
        List<ExperimentPrecondition> preconditions = preconditionMapper.selectList(wrapper);
        preconditions.stream().forEach(precondition->{
            //获取对应的值
@@ -251,14 +251,14 @@
        QueryWrapper<ExperimentPoint> wrapper = Wrappers.query();
        wrapper.eq("experiment_id",experimentId);
        List<ExperimentPoint> experimentPoints = pointMapper.selectList(wrapper);
        //TODO 针对已完成的测试点,计算出这段时间内的平均功率并返回,需要考虑是否将功率字段持久化到表中
        /*//TODO 针对已完成的测试点,计算出这段时间内的平均功率并返回,需要考虑是否将功率字段持久化到表中
        experimentPoints.stream().forEach(point -> {
            if(point.getStatus()==2){
                //计算出平均功率并赋值
                int power = (int) (100 + Math.random() * 10);
                point.setAveragePower(power);
            }
        });
        });*/
        return new Response<List<ExperimentPoint>>().set(1,experimentPoints);
    }
@@ -291,7 +291,7 @@
            @Override
            public void run() {
                try {
                    sleep(10000);
                    sleep(durationSecond*1000);
                    threadStatus[0] = false;
                } catch (InterruptedException e) {
                    interrupt();
@@ -329,10 +329,12 @@
        pointMapper.updateEndTime(point.getId(),new Date());
        //返回这段时间的测试结果
        //TODO 这段时间内的数据,需要进行动态计算
        Map<String,String> resMap = new HashMap<>();
        int value = (int) (100 + Math.random() * 10);
        resMap.put("平均功率",value+"kW");
        return new Response().set(1,resMap);
        ExperimentPoint pointTemp = new ExperimentPoint();
        pointTemp.setId(point.getId());
        pointTemp.setAveragePower(value);
        pointMapper.updateById(pointTemp);
        return new Response().setMsg(1,"测试点结束");
    }
@@ -350,28 +352,45 @@
        return new Response().setMsg(1,"测试点中断信号更新成功");
    }
    public Response setPrecondition(Integer id) {
    public Response restartExperimentPoint(Integer id) {
        ExperimentPoint point = new ExperimentPoint();
        point.setId(id);
        point.setStatus(0);
        point.setStartTime(null);
        point.setEndTime(null);
        pointMapper.updateById(point);
        return new Response().setMsg(1,"重置测试点成功");
    }
    public Response setPrecondition(Integer id,Integer value) {
        switch (id){
            case 1:{
                commonMapper.setPrecondition("`db_3.5mw_motor`.tb_central_monitor_sys_rt","10001","switch_close","0");
                commonMapper.setPrecondition("`db_3.5mw_motor`.tb_central_monitor_sys_rt","10001","switch_close",value.toString());
                break;
            }
            case 2:{
                commonMapper.setPrecondition("`db_3.5mw_motor`.tb_rectifier_power_rt","30001","rectifier_vol",value.toString());
                break;
            }
            case 3:{
                commonMapper.setPrecondition("`db_3.5mw_motor`.tb_central_monitor_sys_st","10005","vol_a",value.toString());
                break;
            }
            case 4:{
                commonMapper.setPrecondition("`db_3.5mw_motor`.tb_central_monitor_sys_st","10005","vol_b",value.toString());
                break;
            }
            case 5:{
                commonMapper.setPrecondition("`db_3.5mw_motor`.tb_device_state","40001","comm_status",value.toString());
                break;
            }
            case 6:{
                commonMapper.setPrecondition("`db_3.5mw_motor`.tb_device_state","40002","comm_status",value.toString());
                break;
            }
            case 7:{
                commonMapper.setPrecondition("`db_3.5mw_motor`.tb_device_state","50001","comm_status",value.toString());
                break;
            }
        }
        return new Response().setMsg(1,"设置完成");