钟日健
2022-05-06 61cfb19a3864e70cedaa8de38f4caf032f528455
src/main/java/org/springblade/modules/FTP/DataHanlder.java
@@ -47,6 +47,9 @@
   @Autowired
   private IDeptService iDeptService;
   /**
    * 初始化
    */
@@ -61,6 +64,147 @@
      hanlder.iDeptService = this.iDeptService;
   }
   /**
    * 获取保安员证编号
    * @param json
    */
   public static void handlerSecurityNumerBit(String json) {
      Map map = JSON.parseObject(json, Map.class);
      //取出 key(uuid)
      String key = map.keySet().toArray()[0].toString();
      //编号前缀
      String pre = map.get(key).toString();
      Integer max = hanlder.userService.getSecurityPaperCount(pre);
      Result result = new Result(200, null, max.toString(),null);
      Map<String, Object> map1 = new HashMap<>(1);
      map1.put(key, result);
      //向外网发送数据
      FtpUtil.objectFileUploadSecurityNumberCount(map1);
   }
   /**
    * 培训报名数据处理
    * @param json
    */
   public static void handlerListTrain(String json) {
      Map map = JSON.parseObject(json, Map.class);
      //取出 key(uuid)
      String key = map.keySet().toArray()[0].toString();
      Object users = map.get(key);
      List<String > userList = JSON.parseArray(users.toString(), String.class);
      //遍历
      if (userList.size()>0) {
         List<Result> resultList = new ArrayList<>();
         //开始遍历
         for (String userId : userList) {
            //校验用户年龄
            int age = hanlder.userService.getUserAge(Long.parseLong(userId));
            //创建返回对象
            Result result1 = new Result();
            result1.setUserId(Long.parseLong(userId));
            if (age>=18 && age<=60) {
               //年龄符合要求
               result1.setCode(200);
            } else {
               //年龄不符合要求
               result1.setCode(201);
            }
            //存入结果集
            resultList.add(result1);
         }
         Result result = new Result(200, "", resultList);
         Map<String, Object> map1 = new HashMap<>(1);
         map1.put(key, result);
         //向外网发送数据
         FtpUtil.objectFileUploadListTrain(map1);
      }
   }
   /**
    * 数据处理(集合)
    * @param json
    */
   public static void handlerList(String json) {
      Map map = JSON.parseObject(json, Map.class);
      //取出 key(uuid)
      String key = map.keySet().toArray()[0].toString();
      Object users = map.get(key);
      List<User> userList = JSON.parseArray(users.toString(), User.class);
      //遍历
      if (userList.size()>0) {
         List<Result> resultList = new ArrayList<>();
         //创建更新用户集合对象
         List<User> updateUser = new ArrayList<>();
         //开始遍历
         for (User user : userList) {
            //取出 uuid
            String uuid = user.getReasonForLeav();
            //用户数据校验,是否已导入(本单位或其他单位)
            Result result = userCheckOut(user);
            //创建返回对象
            Result result1 = new Result();
            if (result.getCode() == 200) {
               user.setReasonForLeav("");
               //校验保安员证编号
               Result result2 = hanlder.checkSecurityNumber(user);
               User user1 = result2.getUser();
               //去新增
               boolean save = hanlder.userService.save(user1);
               if (save) {
                  //异步新增从业记录
                  hanlder.myAsyncService.insertExperience(user1);
                  //异步审查
                  hanlder.myAsyncService.checkUserExamineByCardNo(user1);
               }
               if (result2.getCode() == 200) {
                  //设置返回结果
                  result1.setCode(200);
                  result1.setUserId(user1.getId());
               } else {
                  //设置返回结果
                  result1.setCode(203);
                  result1.setUserId(user1.getId());
               }
            } else if (result.getCode() == 201) {
               //去修改
               user.setReasonForLeav("");
               User data = result.getUser();
               user.setId(data.getId());
               user.setCreateTime(data.getCreateTime());
               //校验保安员证编号
               Result result2 = hanlder.checkSecurityNumber(user);
               User user2 = result2.getUser();
               user2.setId(data.getId());
               hanlder.userService.updateById(user2);
               //设置返回结果
               if (result2.getCode() == 200) {
                  result1.setCode(201);
                  result1.setUserId(user.getId());
               } else {
                  //设置返回结果
                  result1.setCode(203);
                  result1.setUserId(user.getId());
               }
            } else {
               //不新增,不修改
               //设置返回结果,以在其他单位存在
               result1.setCode(202);
               result1.setUserId(null);
            }
            result1.setMsg(uuid);
            //存入结果集
            resultList.add(result1);
         }
         Result result = new Result(200, "", resultList);
         Map<String, Object> map1 = new HashMap<>(1);
         map1.put(key, result);
         System.out.println("map1 = " + map1);
         //向外网发送数据
         FtpUtil.objectFileUploadList(map1);
      }
   }
   /**
    * 数据处理
@@ -88,6 +232,8 @@
            //去新增
            boolean save = hanlder.userService.save(user2);
            if (save){
               //异步新增从业记录
               hanlder.myAsyncService.insertExperience(user2);
               //异步审查
               hanlder.myAsyncService.checkUserExamineByCardNo(user2);
            }
@@ -109,6 +255,8 @@
            user1.setReasonForLeav("");
            User data = result.getUser();
            user1.setId(data.getId());
            user1.setCreateTime(data.getCreateTime());
            //校验保安员证编号
            Result result2 = hanlder.checkSecurityNumber(user1);
            User user2 = result2.getUser();
@@ -248,8 +396,8 @@
         //内网同步
         String s = "insert into sys_experience(id,name,entryTime,departureTime,leaving,cardId,companyname,securityId) " +
            "values(" + "'" + experience.getId() + "'" + "," +
            "'" + experience.getName() + "'" + "," +
            "values(" + "'" + experience.getId() + "'" +
            "," + "'" + experience.getName() + "'" +
            "," + "'" + new SimpleDateFormat("yyyy-MM-dd").format(experience.getEntrytime()) + "'" +
            "," + "'" + new SimpleDateFormat("yyyy-MM-dd").format(experience.getDeparturetime()) + "'" +
            "," + "'" + experience.getLeaving() + "'" +
@@ -289,6 +437,8 @@
            states = false;
            user.setHold("2");
         }
      }else {
         states = true;
      }
      if (!states) {