| | |
| | | package org.springblade.modules.FTP; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import liquibase.pro.packaged.M; |
| | | import org.springblade.common.utils.DesensitizedUtil; |
| | | import org.springblade.core.mp.support.Condition; |
| | | import org.springblade.core.tool.api.R; |
| | | import org.springblade.modules.dispatcher.entity.Dispatcher; |
| | | import org.springblade.modules.dispatcher.service.IDispatcherService; |
| | | import org.springblade.modules.experience.entity.Experience; |
| | |
| | | import org.springblade.modules.system.service.IUserService; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | import javax.annotation.PostConstruct; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.*; |
| | |
| | | @Autowired |
| | | private IDeptService iDeptService; |
| | | |
| | | |
| | | |
| | | |
| | | /** |
| | | * 初始化 |
| | | */ |
| | |
| | | |
| | | |
| | | /** |
| | | * 数据处理 |
| | | * 保安员审查 |
| | | * @param json |
| | | */ |
| | | public static void handlerUserExamine(String json) { |
| | | User user = JSON.parseObject(json, User.class); |
| | | //获取用户cardid |
| | | User user1 = hanlder.userService.getById(user.getId()); |
| | | //用户审查 |
| | | hanlder.myAsyncService.checkUserExamineByCardNo(user1); |
| | | } |
| | | |
| | | /** |
| | | * 获取保安员证编号 |
| | | * @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); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 数据处理(单个保安员新增) |
| | | * @param json |
| | | */ |
| | | public static void handler(String json){ |
| | |
| | | Map map = JSON.parseObject(s, Map.class); |
| | | Object user = map.get("user"); |
| | | User user1 = JSON.parseObject(user.toString(), User.class); |
| | | System.out.println("user1 = " + user1); |
| | | |
| | | //获取 uuid |
| | | String uuid = user1.getReasonForLeav(); |
| | | //用户数据校验 |
| | |
| | | //去新增 |
| | | boolean save = hanlder.userService.save(user2); |
| | | if (save){ |
| | | //异步新增从业记录 |
| | | hanlder.myAsyncService.insertExperience(user2); |
| | | //异步审查 |
| | | hanlder.myAsyncService.checkUserExamineByCardNo(user2); |
| | | } |
| | |
| | | user1.setReasonForLeav(""); |
| | | User data = result.getUser(); |
| | | user1.setId(data.getId()); |
| | | user1.setCreateTime(data.getCreateTime()); |
| | | |
| | | //校验保安员证编号 |
| | | Result result2 = hanlder.checkSecurityNumber(user1); |
| | | User user2 = result2.getUser(); |
| | |
| | | } |
| | | Map<String, Object> map1 = new HashMap<>(1); |
| | | map1.put(uuid,result1); |
| | | System.out.println("用户新增:开始向外网推送数据............"); |
| | | //向外网发送数据 |
| | | FtpUtil.objectFileUpload(map1); |
| | | FtpUtil.objectFileUpload(map1,uuid); |
| | | } |
| | | } |
| | | |
| | |
| | | one.setUpdateTime(new Date()); |
| | | //离职 |
| | | hanlder.userService.updateById(one); |
| | | //内网同步 |
| | | //同步外网 |
| | | String s1 = "update blade_user set status = " + one.getStatus() + |
| | | ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(one.getUpdateTime()) + "'" + |
| | | " where id = " + "'" + one.getId() + "'"; |
| | |
| | | |
| | | //人员离职后修改派遣记录,修改从业记录 |
| | | hanlder.updateUserDispatcherExp(one); |
| | | //返回 |
| | | return new Result(200,null,""); |
| | | } |
| | | } |
| | | return new Result(400,null,user.getRealName() + "已在其他单位导入"); |
| | |
| | | |
| | | //内网同步 |
| | | 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() + "'" + |
| | |
| | | //2.保安证编号校验 |
| | | //判断是否持证 |
| | | boolean states = false; |
| | | if (user.getHold().equals("1") && null!=user.getSecuritynumber() && !user.getSecuritynumber().equals("")){ |
| | | if (null!= user.getHold() |
| | | && user.getHold().equals("1") |
| | | && null!=user.getSecuritynumber() |
| | | && !user.getSecuritynumber().equals("")){ |
| | | //持证,校验保安证编号是否合法 |
| | | SecurityPaper securityPaper = new SecurityPaper(); |
| | | securityPaper.setIdCardNo(user.getCardid()); |
| | |
| | | states = false; |
| | | user.setHold("2"); |
| | | } |
| | | }else { |
| | | states = true; |
| | | } |
| | | |
| | | if (!states) { |