南昌市物联网技防平台-后台
zengh
2021-05-28 9c3a3ac2f9ba5865098b5f19b9b0fedfc409f3d7
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
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
/*
 *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
 *  this software without specific prior written permission.
 *  Author: Chill 庄骞 (smallchill@163.com)
 */
package org.springblade.jfpt.alarm.service;
 
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springblade.common.entity.ReportReturnData;
import org.springblade.jfpt.alarm.entity.Alarm;
import org.springblade.common.entity.AlarmExcel;
import org.springblade.jfpt.alarm.vo.AlarmVO;
import org.springblade.jfpt.parcel.vo.ConditionVo;
import org.springblade.system.user.entity.User;
 
import java.util.List;
import java.util.Map;
 
/**
 *  服务类
 *
 * @author BladeX
 * @since 2020-07-04
 */
public interface IAlarmService extends IService<Alarm> {
 
    /**
     * 自定义分页
     *
     * @param page
     * @param alarm
     * @return
     */
    IPage<AlarmVO> selectAlarmPage(IPage<AlarmVO> page, AlarmVO alarm);
    List<AlarmVO> listAll();
    List<AlarmVO> selectList(String jtype, String district, String waringType, String beginTime, String endTime);
    List<AlarmVO> getLimit();
    List<AlarmVO> selectInfo(String id);
    List<AlarmVO> selecttx(String id);
    void deletejj(String id);
    void s(Alarm alarm);
    void updateOne(Alarm alarm);
    List<Map<String, Object>> selectScount(String time);
    List<AlarmVO> selectListSe(String beginTime, String endTime);
    void updateJtype(String id, String jtype, String bz,String securityArr);
    void updateVaddress(String vaddress,String uids,String jid);
    void updatePoliceStatus(String id, String status);
    void updateAaddress(String aaddress,String jid);
    List<Map<String, Object>> selectEq(String time);
 
    /**
     * 查询警情总数
     * @param conditionVo status  0:本日   1:本周   2:本月  3:近7天
     * @return
     */
    Integer selectAlarmCount(ConditionVo conditionVo);
 
    /**
     * 查询7天内主动报警(紧急求助)每天的数量
     * @return
     */
    Map<String, Object> selectAlarmData();
 
    /**
     * 主动报警统计   饼图展示
     * @param conditionVo status 0:本日   1:本月  2:本月
     * @return
     */
    List<Map<String,Object>> selectAlarmSum(ConditionVo conditionVo);
 
    List<User> queryPolice();
 
    List<AlarmVO> queryPoliceTime(List policeIdArr);
 
    List<Map<String, Object>> queryBa();
 
    List<AlarmVO> getAlarm(AlarmVO alarmVO);
 
    List<AlarmVO> getAlarming(AlarmVO alarmVO);
 
    boolean setAlarm(AlarmVO alarmVO);
 
    /**
     * 查询当前时间段一键求助报警总次数
     * @param conditionVo
     * @return
     */
    Integer selAlarmTimeCount(ConditionVo conditionVo);
 
 
    /**
     * 一键求助报警确认时间占比
     * @param conditionVo 条件
     * @return
     */
    Object selConfirmTimePro(ConditionVo conditionVo);
 
    /**
     * 查询当前时间段区间时间一键求助报警个数
     * @param conditionVo
     * @return
     */
    List<Integer> selAlarmTimeDis(ConditionVo conditionVo);
 
    /**
     * 统计时间段内一键求助警情数量数据
     * @param conditionVo
     * @return
     */
    Map<String, Object> selectAlarmTimeData(ConditionVo conditionVo);
 
    /**
     * 根据编号查询本年所有月份的报警数
     * @param deviceNumber
     * @return
     */
    List<Map<String, Object>> queryYearAlarm(String deviceNumber);
 
    /**
     * 导出主动报警数据表格
     * @param alarmVO 查询条件
     */
    List<AlarmExcel> exportAlarm(AlarmVO alarmVO);
 
    /**
     * 获取实时警情数据集合
     * @param alarmVO
     * @return
     */
    List<ReportReturnData> getAlarmPie(AlarmVO alarmVO);
 
    /**
     * 查询未处理及处理中的警情总数量
     * @param deviceNumber 设备编号
     * @return
     */
    Integer selectEqCount(String deviceNumber);
}