whyclxw
2022-01-10 00b61a61b2a90c85aeae872e351ddf4bb2b516cf
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
package com.whyc.service;
 
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.whyc.dto.Response;
import com.whyc.mapper.BattMapInformationMapper;
import com.whyc.pojo.BattMapInformation;
import com.whyc.pojo.BattalarmData;
import com.whyc.pojo.Battinf;
import org.springframework.stereotype.Service;
 
import javax.annotation.Resource;
import java.util.List;
 
@Service
public class BattMapInformationService {
 
    @Resource
    private BattMapInformationMapper mapper;
 
    @Resource
    private BadBattMonService badBattMonService;
    @Resource
    private BattalarmDataService battalarmDataService;
 
    public Response add(BattMapInformation entity){
        mapper.insert(entity);
        return new Response().set(1,true,"添加成功");
    }
 
    public Response update(BattMapInformation entity){
        mapper.updateById(entity);
        return new Response().set(1,true,"更新成功");
    }
 
 
    public Response searchNotInBattMapByUid(int uId){
        List<Battinf> list = mapper.searchNotInBattMapByUid(uId);
        return new Response().set(1,list,"查询成功");
    }
 
 
    //首页上查询用户管理的已经设置过位置的机房信息
    public Response searchUserManageStation(int uId){
        List<BattMapInformation> list = mapper.searchInBattMapByUid(uId);
        return new Response().set(1,list,"查询成功");
    }
 
 
    public Response searchAddressByStationId(String stationId){
        QueryWrapper<BattMapInformation> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("stationId",stationId);
        List<BattMapInformation> list = mapper.selectList(queryWrapper);
        for (BattMapInformation battMapInformation:list) {
            String address = battMapInformation.getAddress();
            String[] split = address.split("-");
            battMapInformation.setStationName1(split[0]);
            battMapInformation.setStationName2(split[1]);
            battMapInformation.setStationName5(split[2]);
        }
        return new Response().set(1,list,"查询成功");
    }
 
 
    public Response delete(BattMapInformation battMapInformation){
        QueryWrapper<BattMapInformation> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq(battMapInformation.getStationName3()!=null,"stationName3",battMapInformation.getStationName3());
        queryWrapper.eq(battMapInformation.getLongitude()!=null,"longitude",battMapInformation.getLongitude());
        queryWrapper.eq(battMapInformation.getLatitude()!=null,"latitude",battMapInformation.getLatitude());
        mapper.delete(queryWrapper);
        return new Response().set(1,true,"删除成功");
    }
 
 
 
    public Response multiAmount(String stationId){
        Response model = new Response();
        String state="";
        int numBadBatt=0;//落后总数
        int numAlarm=0;//告警总数
        int numPlan=0;//延迟总数
 
        state="item-normal";
        numBadBatt=badBattMonService.getBadCountByStationId(stationId);        //落后总数
        //numAlarm=(new Battalarm_dataDAOImpl()).serchByStationId(binformation);    //告警总数
        List<BattalarmData> alarmDataList = battalarmDataService.getCountByStationId(stationId);    //告警确认和未确认总数
        int battAlarmConfirmed = 0;
        int battAlarmNoConfirmed = 0;
        for (int i = 0; i < alarmDataList.size(); i++) {
            if(alarmDataList.get(i).getAlmIsConfirmed()==0){
                battAlarmNoConfirmed = alarmDataList.get(i).getNum().intValue();
            }else{
                battAlarmConfirmed = alarmDataList.get(i).getNum().intValue();
            }
        }
 
        String battAlarmStr = battAlarmConfirmed+","+battAlarmNoConfirmed;
        //todo 延迟总数
//        numPlan=(new BattDischarge_planImpl()).serchByStationId(binformation);    //延迟总数
//        if(numBadBatt>0){
//            state="item-behind";                                    //落后机房
//        }else{
//            if(numAlarm > 0){
//                state="item-warn";                                //告警机房
//            }else{
//                if(numPlan > 0){
//                    state="item-timeout";                        //延迟机房
//                }
//            }
//        }
        //}
        //model.setCode(numAlarm);        //告警总数
        model.setMsg(battAlarmStr);        //告警总数
//        model.setSum(numBadBatt);        //落后总数
//        model.setNewsum(numPlan);        //延时总数
        // model.setMsg(state);            //61850状态
        // model.setMsgN(binformation.getFBSDeviceId().toString());
        return model;
 
    }
 
 
 
 
 
 
}