智慧保安后台管理-外网项目备份
Administrator
2022-01-05 548c15acd182735a75fa8aa447e28645b6a36970
src/main/java/org/springblade/modules/dispatcher/controller/DispatcherController.java
@@ -375,66 +375,154 @@
      dispatcher.setUpdateTime(new Date());
      //查询当前派遣记录
      Dispatcher dispatcher1 = dispatcherService.getById(dispatcher.getId());
      //判断派遣单位类型,如果是医院,学校,银行等单位,则派遣人员年龄不应大于50岁
      DispatcherUnit dispatcherUnit = dispatcherUnitService.getById(dispatcher.getDispatcherUnitId());
      if (!dispatcher1.getUserIds().equals(dispatcher.getUserIds())) {
         //修改原保安人员的派遣状态
         //查询原保安人员的派遣记录,是否存在多条未结束派遣的
         Dispatcher dispatcher2 = new Dispatcher();
         dispatcher2.setUserIds(dispatcher1.getUserIds());
         dispatcher2.setStatus(0);
         List<Dispatcher> dispatcherList = dispatcherService.list(Condition.getQueryWrapper(dispatcher2));
         User user = new User();
         user.setId(Long.parseLong(dispatcher1.getUserIds()));
         if (dispatcherList.size() == 1) {
            //用户状态改变
            user.setDispatch("1");
         } else {
            user.setDispatch("0");
         if (null!=dispatcherUnit.getDistrict() && !dispatcherUnit.getDistrict().equals("") && !dispatcherUnit.getDistrict().equals(-1)) {
            //判断
            if (dispatcherUnit.getDistrict().equals(1) ||
               dispatcherUnit.getDistrict().equals(2) ||
               dispatcherUnit.getDistrict().equals(3)) {
               //查询保安员年龄
               UserVO userVO = userService.getUserAgeById(Long.parseLong(dispatcher.getUserIds()));
               if (userVO.getAge() > 50) {
                  throw new ServiceException("保安员["+ userVO.getCardid() +"]变更派遣失败!派遣到学校,医院,银行的保安员年龄应不超过50周岁!");
               } else {
                  //修改原保安人员的派遣状态
                  //查询原保安人员的派遣记录,是否存在多条未结束派遣的
                  Dispatcher dispatcher2 = new Dispatcher();
                  dispatcher2.setUserIds(dispatcher1.getUserIds());
                  dispatcher2.setStatus(0);
                  List<Dispatcher> dispatcherList = dispatcherService.list(Condition.getQueryWrapper(dispatcher2));
                  User user = new User();
                  user.setId(Long.parseLong(dispatcher1.getUserIds()));
                  if (dispatcherList.size() == 1) {
                     //用户状态改变
                     user.setDispatch("1");
                  } else {
                     user.setDispatch("0");
                  }
                  //修改原保安人员用户信息
                  userService.updateById(user);
                  //修改当前保安人员的派遣状态
                  User user1 = new User();
                  user1.setId(Long.parseLong(dispatcher.getUserIds()));
                  user1.setDispatch("0");
                  userService.updateById(user1);
                  //修改派遣记录信息
                  status = dispatcherService.updateById(dispatcher);
                  //内网同步
                  String s1 =
                     "update blade_user set dispatch = " + "'" + user.getDispatch() + "'" +
                        " " + "where id = " + "'" + user.getId() + "';" +
                        "update sys_dispatcher set dispatcherTime = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getDispatchertime()) + "'" +
                        ",dispatcherAddress = " + "'" + dispatcher.getDispatcheraddress() + "'" +
                        ",dispatcher_unit_id = " + "'" + dispatcher.getDispatcherUnitId() + "'" +
                        ",user_ids = " + "'" + dispatcher.getUserIds() + "'" +
                        ",end_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getEndTime()) + "'" +
                        ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dispatcher.getUpdateTime()) + "'" +
                        ",dept_id = " + "'" + dispatcher.getDeptId() + "'" +
                        ",jurisdiction = " + "'" + dispatcher.getJurisdiction() + "'" +
                        " " + "where id = " + "'" + dispatcher.getId() + "';" +
                     "update blade_user set dispatch = " + "'" + user1.getDispatch() + "'" +
                        " " + "where id = " + "'" + user1.getId() + "'";
                  FtpUtil.sqlFileUpload(s1);
               }
            }
         }else {
            //修改原保安人员的派遣状态
            //查询原保安人员的派遣记录,是否存在多条未结束派遣的
            Dispatcher dispatcher2 = new Dispatcher();
            dispatcher2.setUserIds(dispatcher1.getUserIds());
            dispatcher2.setStatus(0);
            List<Dispatcher> dispatcherList = dispatcherService.list(Condition.getQueryWrapper(dispatcher2));
            User user = new User();
            user.setId(Long.parseLong(dispatcher1.getUserIds()));
            if (dispatcherList.size() == 1) {
               //用户状态改变
               user.setDispatch("1");
            } else {
               user.setDispatch("0");
            }
            //修改原保安人员用户信息
            userService.updateById(user);
            //修改当前保安人员的派遣状态
            User user1 = new User();
            user1.setId(Long.parseLong(dispatcher.getUserIds()));
            user1.setDispatch("0");
            userService.updateById(user1);
            //修改派遣记录信息
            status = dispatcherService.updateById(dispatcher);
            //内网同步
            String s1 =
               "update blade_user set dispatch = " + "'" + user.getDispatch() + "'" +
                  " " + "where id = " + "'" + user.getId() + "';" +
                  "update sys_dispatcher set dispatcherTime = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getDispatchertime()) + "'" +
                  ",dispatcherAddress = " + "'" + dispatcher.getDispatcheraddress() + "'" +
                  ",dispatcher_unit_id = " + "'" + dispatcher.getDispatcherUnitId() + "'" +
                  ",user_ids = " + "'" + dispatcher.getUserIds() + "'" +
                  ",end_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getEndTime()) + "'" +
                  ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dispatcher.getUpdateTime()) + "'" +
                  ",dept_id = " + "'" + dispatcher.getDeptId() + "'" +
                  ",jurisdiction = " + "'" + dispatcher.getJurisdiction() + "'" +
                  " " + "where id = " + "'" + dispatcher.getId() + "';" +
                  "update blade_user set dispatch = " + "'" + user1.getDispatch() + "'" +
                  " " + "where id = " + "'" + user1.getId() + "'";
            FtpUtil.sqlFileUpload(s1);
         }
         //修改原保安人员用户信息
         userService.updateById(user);
         //修改当前保安人员的派遣状态
         User user1 = new User();
         user1.setId(Long.parseLong(dispatcher.getUserIds()));
         user1.setDispatch("0");
         userService.updateById(user1);
         //修改派遣记录信息
         status = dispatcherService.updateById(dispatcher);
         //内网同步
         String s1 =
            "update blade_user set dispatch = " + "'" + user.getDispatch() + "'" +
               " " + "where id = " + "'" + user.getId() + "';" +
               "update sys_dispatcher set dispatcherTime = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getDispatchertime()) + "'" +
               ",dispatcherAddress = " + "'" + dispatcher.getDispatcheraddress() + "'" +
               ",dispatcher_unit_id = " + "'" + dispatcher.getDispatcherUnitId() + "'" +
               ",user_ids = " + "'" + dispatcher.getUserIds() + "'" +
               ",end_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getEndTime()) + "'" +
               ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dispatcher.getUpdateTime()) + "'" +
               ",dept_id = " + "'" + dispatcher.getDeptId() + "'" +
               ",jurisdiction = " + "'" + dispatcher.getJurisdiction() + "'" +
               " " + "where id = " + "'" + dispatcher.getId() + "';" +
               "update blade_user set dispatch = " + "'" + user1.getDispatch() + "'" +
               " " + "where id = " + "'" + user1.getId() + "'";
         FtpUtil.sqlFileUpload(s1);
      }else {
         //没有修改保安员,只修改了派遣时间等信息
         //修改
         status = dispatcherService.updateById(dispatcher);
         if (null!=dispatcherUnit.getDistrict() && !dispatcherUnit.getDistrict().equals("") && !dispatcherUnit.getDistrict().equals(-1)) {
            //判断
            if (dispatcherUnit.getDistrict().equals(1) ||
               dispatcherUnit.getDistrict().equals(2) ||
               dispatcherUnit.getDistrict().equals(3)) {
               //查询保安员年龄
               UserVO userVO = userService.getUserAgeById(Long.parseLong(dispatcher.getUserIds()));
               if (userVO.getAge() > 50) {
                  throw new ServiceException("保安员[" + userVO.getCardid() + "]变更派遣失败!派遣到学校,医院,银行的保安员年龄应不超过50周岁!");
               } else {
                  //没有修改保安员,只修改了派遣时间等信息
                  //修改
                  status = dispatcherService.updateById(dispatcher);
         //内网同步
         String s1 =
            "update sys_dispatcher set dispatcherTime = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getDispatchertime()) + "'" +
               ",dispatcherAddress = " + "'" + dispatcher.getDispatcheraddress() + "'" +
               ",dispatcher_unit_id = " + "'" + dispatcher.getDispatcherUnitId() + "'" +
               ",user_ids = " + "'" + dispatcher.getUserIds() + "'" +
               ",end_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getEndTime()) + "'" +
               ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dispatcher.getUpdateTime()) + "'" +
               ",dept_id = " + "'" + dispatcher.getDeptId() + "'" +
               ",jurisdiction = " + "'" + dispatcher.getJurisdiction() + "'" +
               " " + "where id = " + "'" + dispatcher.getId() + "'";
         FtpUtil.sqlFileUpload(s1);
                  //内网同步
                  String s1 =
                     "update sys_dispatcher set dispatcherTime = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getDispatchertime()) + "'" +
                        ",dispatcherAddress = " + "'" + dispatcher.getDispatcheraddress() + "'" +
                        ",dispatcher_unit_id = " + "'" + dispatcher.getDispatcherUnitId() + "'" +
                        ",user_ids = " + "'" + dispatcher.getUserIds() + "'" +
                        ",end_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getEndTime()) + "'" +
                        ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dispatcher.getUpdateTime()) + "'" +
                        ",dept_id = " + "'" + dispatcher.getDeptId() + "'" +
                        ",jurisdiction = " + "'" + dispatcher.getJurisdiction() + "'" +
                        " " + "where id = " + "'" + dispatcher.getId() + "'";
                  FtpUtil.sqlFileUpload(s1);
               }
            }
         }else {
            //没有修改保安员,只修改了派遣时间等信息
            //修改
            status = dispatcherService.updateById(dispatcher);
            //内网同步
            String s1 =
               "update sys_dispatcher set dispatcherTime = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getDispatchertime()) + "'" +
                  ",dispatcherAddress = " + "'" + dispatcher.getDispatcheraddress() + "'" +
                  ",dispatcher_unit_id = " + "'" + dispatcher.getDispatcherUnitId() + "'" +
                  ",user_ids = " + "'" + dispatcher.getUserIds() + "'" +
                  ",end_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(dispatcher.getEndTime()) + "'" +
                  ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dispatcher.getUpdateTime()) + "'" +
                  ",dept_id = " + "'" + dispatcher.getDeptId() + "'" +
                  ",jurisdiction = " + "'" + dispatcher.getJurisdiction() + "'" +
                  " " + "where id = " + "'" + dispatcher.getId() + "'";
            FtpUtil.sqlFileUpload(s1);
         }
      }
      return R.status(status);
   }