| | |
| | | |
| | | |
| | | //警情分发测试代码 |
| | | //查询所有在线的接警员 |
| | | //查询所有闲置的接警员 |
| | | List<Map<String, Object>> policeList = alarmService.queryPolice(); |
| | | List<Map<String, Object>> online_police = new ArrayList<>(); |
| | | for (int i = 0; i < policeList.size(); i++) { |
| | | if (policeList.get(i).get("work_status").equals(0)){ |
| | | System.out.println(policeList.get(i).get("real_name")); |
| | | //System.out.println(policeList.get(i).get("real_name")); |
| | | online_police.add(policeList.get(i)); |
| | | } |
| | | } |
| | | |
| | | int size = 0; |
| | | |
| | | if (online_police.size() == 0){ |
| | | online_police = policeList; |
| | | size = policeList.size(); |
| | | }else { |
| | | size = online_police.size(); |
| | | } |
| | | |
| | | int num=(int)(Math.random()*(size)); |
| | | String name = (String) online_police.get(num).get("real_name"); |
| | | String id = (String) online_police.get(num).get("id"); |
| | | List policeIdArr = new ArrayList(); |
| | | |
| | | alarm.setAlarmPeople(name); |
| | | alarm.setAlarmId(name); |
| | | //将闲置状态的人员id存入数组 |
| | | for (int i = 0; i < online_police.size(); i++) { |
| | | policeIdArr.add(online_police.get(i).get("id")); |
| | | } |
| | | |
| | | //通过id计算接警员最后一次接警时间,倒序返回闲置最久的人员,派发任务 |
| | | List<Map<String, Object>> police = alarmService.queryPoliceTime(policeIdArr); |
| | | |
| | | if (police.size() != 0){ |
| | | alarm.setAlarmId((String) police.get(0).get("alarmId")); |
| | | alarm.setAlarmPeople((String) police.get(0).get("alarmPeople")); |
| | | Date date = new Date(); |
| | | SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | alarm.setJjTime(dateFormat.format(date)); |
| | | }else { |
| | | alarm.setAlarmId((String) online_police.get(0).get("id")); |
| | | alarm.setAlarmPeople((String) online_police.get(0).get("name")); |
| | | Date date = new Date(); |
| | | SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | alarm.setJjTime(dateFormat.format(date)); |
| | | } |
| | | |
| | | |
| | | return null; |
| | | //return R.status(alarmService.saveOrUpdate(alarm)); |
| | |
| | | */ |
| | | List<Map<String, Object>> selectAlarmSum(@Param("conditionVo") ConditionVo conditionVo); |
| | | |
| | | List queryPolice(); |
| | | List<Map<String, Object>> queryPolice(); |
| | | |
| | | List<Map<String, Object>> queryPoliceTime(List policeIdArr); |
| | | } |
| | |
| | | <result column="district" property="district"/> |
| | | <result column="alarmId" property="alarmId"/> |
| | | <result column="level" property="level"/> |
| | | <result column="coordinate" property="coordinate"/> |
| | | <!--<result column="coordinate" property="coordinate"/>--> |
| | | <result column="jd" property="jd"/> |
| | | <result column="wd" property="wd"/> |
| | | <result column="jtype" property="jtype"/> |
| | |
| | | a.id,a.alarmType,a.alarmPeople,a.alarmTime,a.galarmPeople,a.sex,a.phoneNumber,a.place,a.content,a.waringType, |
| | | a.deviceNumber,a.region,a.district, |
| | | a.alarmId,a.LEVEL,e.jd,e.wd,a.jtype,a.rname,a.jjTime,a.province,a.city,a.cid, |
| | | e.serialNumber,e.oneContacts,e.ThreeContacts,e.twoContacts,onePhone,twoPhone,ThreePhone, |
| | | e.serialNumber,e.oneContacts,e.ThreeContacts,e.twoContacts,e.onePhone,e.twoPhone,e.ThreePhone, |
| | | e.stype, |
| | | e.channelNumber from sys_alarm a |
| | | LEFT JOIN sys_equipment e on e.deviceNumber=a.deviceNumber |
| | |
| | | d.addvnm, |
| | | e.serialNumber, |
| | | e.stype, |
| | | e.channelNumber |
| | | e.channelNumber, |
| | | e.oneContacts, |
| | | e.ThreeContacts, |
| | | e.twoContacts, |
| | | e.onePhone, |
| | | e.twoPhone, |
| | | e.ThreePhone |
| | | FROM |
| | | sys_alarm a LEFT JOIN sys_district d on d.addvcds=a.district LEFT JOIN sys_equipment e on |
| | | e.deviceNumber=a.deviceNumber where 1=1 |
| | |
| | | sa.alarmType = sb.alarmType |
| | | </select> |
| | | |
| | | <select id="queryPolice" resultType="java.util.List"> |
| | | SELECT * FROM jfpth.blade_user WHERE is_deleted != '1' and role_id ="1370562810882502657"</select> |
| | | <select id="queryPolice" resultType="java.util.HashMap"> |
| | | SELECT * FROM jfpth.blade_user WHERE is_deleted != '1' and role_id ="1372092102682521602" |
| | | </select> |
| | | |
| | | |
| | | <select id="queryPoliceTime" resultType="java.util.HashMap"> |
| | | |
| | | SELECT |
| | | a.alarmPeople, |
| | | a.alarmId, |
| | | max( a.jjTime ) AS jjTime |
| | | FROM |
| | | sys_alarm a |
| | | WHERE |
| | | 1 =1 |
| | | |
| | | <if test="policeIdArr!=null and policeIdArr.size>0"> |
| | | and alarmId in |
| | | <foreach collection="policeIdArr" index="index" item="item" open="(" separator="," close=")"> |
| | | #{item} |
| | | </foreach> |
| | | </if> |
| | | GROUP BY |
| | | a.alarmPeople, |
| | | a.alarmId |
| | | ORDER BY |
| | | jjTime |
| | | LIMIT 1 |
| | | |
| | | </select> |
| | | </mapper> |
| | |
| | | */ |
| | | List<Map<String,Object>> selectAlarmSum(ConditionVo conditionVo); |
| | | |
| | | List queryPolice(); |
| | | List<Map<String, Object>> queryPolice(); |
| | | |
| | | List<Map<String, Object>> queryPoliceTime(List policeIdArr); |
| | | } |
| | |
| | | } |
| | | |
| | | @Override |
| | | public List queryPolice() { |
| | | public List<Map<String, Object>> queryPolice() { |
| | | return baseMapper.queryPolice(); |
| | | } |
| | | |
| | | @Override |
| | | public List<Map<String, Object>> queryPoliceTime(List policeIdArr) { |
| | | return baseMapper.queryPoliceTime(policeIdArr); |
| | | } |
| | | } |