南昌市物联网技防平台-后台
zengh
2021-03-19 9d6f5ab26f707ccdd5b5ffcdb4af6925a0f5bd57
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/controller/AlarmController.java
@@ -33,6 +33,9 @@
import org.springblade.jfpt.alarm.wrapper.AlarmWrapper;
import org.springblade.jfpt.animalheat.service.AnimalHeatService;
import org.springblade.jfpt.healthcode.service.IhealthcodeService;
import org.springblade.jfpt.operation.entity.Operation;
import org.springblade.jfpt.operation.service.IOperationService;
import org.springblade.jfpt.operation.vo.OperationVO;
import org.springblade.jfpt.parcel.service.ParcelService;
import org.springblade.jfpt.parcel.util.DateUtils;
import org.springblade.jfpt.parcel.vo.ConditionVo;
@@ -59,6 +62,8 @@
   private final IAlarmService alarmService;
   private final AnimalHeatService animalHeatService;
   private final IOperationService operationService;
   private IhealthcodeService ihealthcodeService;
@@ -169,30 +174,45 @@
      //警情分发测试代码
      //查询所有在线的接警员
      //查询所有闲置的接警员
      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));
@@ -455,15 +475,18 @@
   /**
    * 修改警情类型
    * 修改警情类型/同时修改人员状态
    */
   @PostMapping("/updateJtype")
   public R updateJtype(String id, String czTime, String bz, HttpServletResponse response) {
   public R updateJtype(OperationVO operation, HttpServletResponse response) {
      response.setHeader("Access-Control-Allow-Origin", "*");
      response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
      response.setHeader("Access-Control-Allow-Credentials","true");
      alarmService.updateJtype(id,czTime,bz);
      alarmService.updateJtype(operation.getJid(),operation.getJtype(),operation.getBz());
      alarmService.updatePoliceStatus(operation.getRid(),"0");
      operationService.save(operation);
      return R.success("修改成功");
   }
}