智慧保安后台管理-外网
Administrator
2021-11-30 388c0a460456c3ecd73f9bc62530a0fd162fa0c5
src/main/java/org/springblade/modules/system/controller/UserController.java
@@ -308,12 +308,65 @@
               dispatcherList.forEach(dispatcher1 -> {
                  dispatcher1.setStatus(1);
                  dispatcher1.setUpdateTime(new Date());
                  dispatcherService.updateById(dispatcher1);
                  String s1 =
                     "update sys_dispatcher set status = " + "'" + dispatcher1.getStatus() + "'"
                        + ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dispatcher1.getUpdateTime()) + "'"
                        + " " + "where id = " + "'" + dispatcher1.getId() + "'";
                  FtpUtil.sqlFileUpload(s1);
               });
            }
            //查询当前用户是否有从业记录,没有的话新增,有就更新
            //根据公司名查询单位
            Dept dept = iDeptService.getById(user.getDeptId());
            Experience experience = new Experience();
            experience.setCompanyname(dept.getDeptName());
            experience.setCardid(user.getCardid());
            //按id降序
            List<Experience> list = experienceService.list(Condition.getQueryWrapper(experience).orderByDesc("id"));
            if (list.size()>0){
               //如果有多条取第一条更新
               Experience experience1 = list.get(0);
               //设置离职时间
               experience1.setDeparturetime(new Date());
               //更新从业记录信息
               experienceService.updateById(experience1);
               //数据同步
               String s1 =
                  "update sys_experience set departureTime = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(experience1.getDeparturetime()) + "'"
                     + " " + "where id = " + "'" + experience1.getId() + "'";
               FtpUtil.sqlFileUpload(s1);
            }else {
               //新增
               if (null!=user.getRtime()){
                  experience.setEntrytime(user.getRtime());
               }else {
                  experience.setEntrytime(new Date());
               }
               experience.setDeparturetime(new Date());
               experience.setName(user.getRealName());
               if (null!=user.getReasonForLeav() && !user.getReasonForLeav().equals("")){
                  experience.setLeaving(user.getReasonForLeav());
               }
               experience.setCardid(user.getCardid());
               experience.setSecurityid(user.getId().toString());
               //新增
               experienceService.save(experience);
               //内网同步
               String s = "insert into sys_experience(id,name,entryTime,departureTime,leaving,cardId,companyname,securityId) " +
                  "values(" + "'" + experience.getId() + "'" +
                  "," + "'" + experience.getName() + "'" +
                  "," + "'" + new SimpleDateFormat("yyyy-MM-dd").format(experience.getEntrytime()) + "'" +
                  "," + "'" + new SimpleDateFormat("yyyy-MM-dd").format(experience.getDeparturetime()) + "'" +
                  "," + "'" + experience.getLeaving() + "'" +
                  "," + "'" + experience.getCardid() + "'" +
                  "," + "'" + experience.getCompanyname() + "'" +
                  "," + "'" + experience.getSecurityid() + "'"
                  + ")";
               FtpUtil.sqlFileUpload(s);
            }
         }
      }
@@ -922,6 +975,9 @@
                     String s1 = "update blade_user set status = " + user2.getStatus() +
                        " where id = " + "'" + user2.getId() + "'";
                     FtpUtil.sqlFileUpload(s1);
                     //人员离职后修改派遣记录,修改从业记录
                     updateUserDispatcherExp(user);
                  }else {
                     throw new ServiceException(StringUtil.format("当前用户 [{}] 已存在!", user.getAccount()));
                  }
@@ -962,19 +1018,34 @@
      user.setTenantId("000000");
      //用户新增
      boolean status = userService.save(user);
      //从业记录新增
      Experience experience = new Experience();
      String rtime;
      String paperTime;
      if (user.getRtime() == null) {
         rtime = null;
      } else {
         rtime = new SimpleDateFormat("yyyy-MM-dd").format(user.getRtime());
         experience.setEntrytime(user.getRtime());
      }
      Dept dept = iDeptService.getById(user.getDeptId());
      experience.setCardid(user.getCardid());
      experience.setSecurityid(user.getId().toString());
      experience.setCompanyname(dept.getDeptName());
      experience.setName(user.getRealName());
      experience.setPost("保安员");
      experienceService.save(experience);
      //发证日期处理
      if (user.getPaperTime() == null) {
         paperTime = "";
      } else {
         paperTime = new SimpleDateFormat("yyyy-MM-dd").format(user.getPaperTime());
      }
//      if (user.getPaperTime() == null) {
//         paperTime = "";
//      } else {
//         paperTime = new SimpleDateFormat("yyyy-MM-dd").format(user.getPaperTime());
//      }
      //头像
      if (null!=user.getAvatar() && !user.getAvatar().equals("")) {
         user.setAvatar(FtpConfig.ip + user.getAvatar().substring(26));
@@ -1016,7 +1087,17 @@
         "," + "'" + user.getIsDeleted() + "'" +
         "," + "'" + user.getDispatch() + "'" +
         "," + "'" + user.getGuncode() + "'" +
         "," + "'" + user.getCell() + "'" + ")";
         "," + "'" + user.getCell() + "'" + ");"+
      "insert into sys_experience(id,name,post,entryTime," +
         "cardId,companyname,securityId) " +
         "values(" + "'" + experience.getId() + "'" + "," +
         "'" + experience.getName() + "'" + "," +
         "'" + experience.getPost() + "'" + "," +
         "," + "'" + new SimpleDateFormat("yyyy-MM-dd").format(experience.getEntrytime()) + "'" +
         "," + "'" + experience.getCardid() + "'" +
         "," + "'" + experience.getCompanyname() + "'" +
         "," + "'" + experience.getSecurityid() + "'"
         + ")";
      FtpUtil.sqlFileUpload(s);
      //获取从业记录
@@ -1037,6 +1118,82 @@
      return R.status(status);
   }
   /**
    * 修改派遣记录,修改从业记录
    * @param user
    */
   private void updateUserDispatcherExp(User user) {
      //修改派遣状态
      user.setDispatch("1");
      //同时将派遣记录中的派遣状态修改
      //查询派遣记录(还在派遣中的)
      Dispatcher dispatcher = new Dispatcher();
      dispatcher.setUserIds(user.getId().toString());
      dispatcher.setStatus(0);
      List<Dispatcher> dispatcherList = dispatcherService.list(Condition.getQueryWrapper(dispatcher));
      if (dispatcherList.size()>0){
         dispatcherList.forEach(dispatcher1 -> {
            dispatcher1.setStatus(1);
            dispatcher1.setUpdateTime(new Date());
            String s1 =
               "update sys_dispatcher set status = " + "'" + dispatcher1.getStatus() + "'"
                  + ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dispatcher1.getUpdateTime()) + "'"
                  + " " + "where id = " + "'" + dispatcher1.getId() + "'";
            FtpUtil.sqlFileUpload(s1);
         });
      }
      //查询当前用户是否有从业记录,没有的话新增,有就更新
      //根据公司名查询单位
      Dept dept = iDeptService.getById(user.getDeptId());
      Experience experience = new Experience();
      experience.setCompanyname(dept.getDeptName());
      //按id降序
      List<Experience> list = experienceService.list(Condition.getQueryWrapper(experience).orderByDesc("id"));
      if (list.size()>0){
         //如果有多条取第一条更新
         Experience experience1 = list.get(0);
         //设置离职时间
         experience1.setDeparturetime(new Date());
         //更新从业记录信息
         experienceService.updateById(experience1);
         //数据同步
         String s1 =
            "update sys_experience set departureTime = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(experience1.getDeparturetime()) + "'"
               + " " + "where id = " + "'" + experience1.getId() + "'";
         FtpUtil.sqlFileUpload(s1);
      }else {
         //新增
         if (null!=user.getRtime()){
            experience.setEntrytime(user.getRtime());
         }else {
            experience.setEntrytime(new Date());
         }
         experience.setDeparturetime(new Date());
         experience.setName(user.getRealName());
         if (null!=user.getReasonForLeav() && !user.getReasonForLeav().equals("")){
            experience.setLeaving(user.getReasonForLeav());
         }
         experience.setCardid(user.getCardid());
         experience.setSecurityid(user.getId().toString());
         //新增
         experienceService.save(experience);
         //内网同步
         String s = "insert into sys_experience(id,name,entryTime,departureTime,leaving,cardId,companyname,securityId) " +
            "values(" + "'" + experience.getId() + "'" + "," +
            "'" + experience.getName() + "'" + "," +
            "," + "'" + new SimpleDateFormat("yyyy-MM-dd").format(experience.getEntrytime()) + "'" +
            "," + "'" + new SimpleDateFormat("yyyy-MM-dd").format(experience.getDeparturetime()) + "'" +
            "," + "'" + experience.getLeaving() + "'" +
            "," + "'" + experience.getCardid() + "'" +
            "," + "'" + experience.getCompanyname() + "'" +
            "," + "'" + experience.getSecurityid() + "'"
            + ")";
         FtpUtil.sqlFileUpload(s);
      }
   }
   /**
    * 保安员信息