whyclxw
2021-12-15 809111afdd91e43f9aab288533a68e4da3881a1b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
package com.whyc.service;
 
import com.github.pagehelper.PageInfo;
import com.whyc.dto.AlarmDaoFactory;
import com.whyc.dto.Response;
import com.whyc.mapper.DevParamMapper;
import com.whyc.pojo.DevParam;
import org.springframework.stereotype.Service;
 
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.List;
 
@Service
public class DevParamService {
 
    @Resource
    private DevParamMapper mapper;
 
    //电池告警参数设置--列表查询
    public Response serchByCondition(int devId, int almId) {
        List<DevParam> list=mapper.serchByCondition(devId,almId);
        list.stream().forEach(devParam->{
            switch (devParam.getAlmId()){
                case AlarmDaoFactory.Alarm_vol_Online :
                case AlarmDaoFactory.Alarm_vol_Group :
                    devParam.setBaseValue(String.valueOf(devParam.getMonVolStd()*devParam.getMonCount()));
                    break;
                case AlarmDaoFactory.Alarm_curr_Charge :
                case AlarmDaoFactory.Alarm_curr_Discharge :
                    devParam.setBaseValue(BigDecimal.valueOf(devParam.getMonCapStd()/10).setScale(2,BigDecimal.ROUND_HALF_UP).toString());
                    break;
                case AlarmDaoFactory.Alarm_vol_Monomer :
                case AlarmDaoFactory.ALM_TYPE_DisChargeMonVol_ID :
                    devParam.setBaseValue(String.valueOf(devParam.getMonVolStd()));
                    break;
                case AlarmDaoFactory.Alarm_tmp_Monomer :
                    devParam.setBaseValue("25");
                    break;
                case AlarmDaoFactory.Alarm_res_Monomer :
                    devParam.setBaseValue(BigDecimal.valueOf((1*(devParam.getMonVolStd()/2)/(devParam.getMonCapStd()/100))).setScale(2, RoundingMode.HALF_UP).toString());
                    break;
                case AlarmDaoFactory.Alarm_res_Conn :
                    devParam.setBaseValue("0.2");
                    break;
                case AlarmDaoFactory.ALM_TYPE_MONLYVOL_ID :
                    devParam.setBaseValue("1");
                    break;
            }
        });
        PageInfo pageInfo=new PageInfo(list);
        return  new Response().set(1,list);
    }
}