| | |
| | | import lombok.AllArgsConstructor; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springblade.common.cache.SysCache; |
| | | import org.springblade.common.config.QrcodeConfig; |
| | | import org.springblade.common.constant.AgeUtil; |
| | | import org.springblade.common.constant.CommonConstant; |
| | | import org.springblade.common.constant.TenantConstant; |
| | |
| | | "," + "'" + user.getIsDeleted() + "'" |
| | | + ")"; |
| | | //FtpUtil.sqlFileUpload(s); |
| | | myAsyncService.FTP(s); |
| | | myAsyncService.dataSync(s); |
| | | return b; |
| | | } |
| | | |
| | |
| | | public UserInfo userInfo(String tenantId, String account, String password) { |
| | | User user = baseMapper.getUser(tenantId, account, password); |
| | | return buildUserInfo(user); |
| | | } |
| | | |
| | | /** |
| | | * 获取用户信息(wx) |
| | | * @param tenantId |
| | | * @param phone |
| | | * @param userEnum |
| | | * @return |
| | | */ |
| | | @Override |
| | | public UserInfo userInfoByWx(String tenantId, String phone, UserEnum userEnum) { |
| | | User user = baseMapper.getUserByPhone(tenantId, phone); |
| | | return buildUserInfo(user, userEnum); |
| | | } |
| | | |
| | | @Override |
| | |
| | | "," + "'" + user.getJurisdiction() + "'" |
| | | + ")"; |
| | | //FtpUtil.sqlFileUpload(s); |
| | | myAsyncService.FTP(s); |
| | | myAsyncService.dataSync(s); |
| | | }else { |
| | | //匹配组织机构是否一致,如果不一致 |
| | | if(!user2.getDeptId().equals(user.getDeptId())){ |
| | |
| | | + ",cardid = " + "'" + user2.getCardid() + "'" |
| | | + " " + "where id = " + "'" + user2.getId() + "'"; |
| | | //FtpUtil.sqlFileUpload(s1); |
| | | myAsyncService.FTP(s1); |
| | | myAsyncService.dataSync(s1); |
| | | } |
| | | } |
| | | }); |
| | |
| | | */ |
| | | @Override |
| | | public List<TreeNode> getSecurityApplyTree(UserVO user) { |
| | | Map<Long, TreeNode> map = baseMapper.getSecurityApplyTree(user); |
| | | List<TreeNode> tree = new ArrayList<>(); |
| | | if (map.size() > 1) { |
| | | map.forEach((id, treeNode) -> { |
| | | if (map.containsKey(treeNode.getParentId())) { |
| | | map.get(treeNode.getParentId()).getChildren().add(treeNode); |
| | | } else { |
| | | tree.add(treeNode); |
| | | // 总的 |
| | | List<TreeNode> allList = new ArrayList<>(); |
| | | // 考试未通过 |
| | | List<TreeNode> notList = new ArrayList<>(); |
| | | // 新申报报名的 |
| | | List<TreeNode> newList = new ArrayList<>(); |
| | | // 查询 |
| | | List<TreeNode> treeNodeList = baseMapper.getSecurityApplyTree(user); |
| | | // 遍历 |
| | | if (treeNodeList.size()>0){ |
| | | for (TreeNode treeNode : treeNodeList) { |
| | | if (treeNode.getType()==1){ |
| | | notList.add(treeNode); |
| | | } |
| | | }); |
| | | if (treeNode.getType()==2){ |
| | | newList.add(treeNode); |
| | | } |
| | | } |
| | | } |
| | | return tree; |
| | | if (newList.size()>0){ |
| | | // 新申报报名的 |
| | | TreeNode treeNode = new TreeNode(); |
| | | treeNode.setName("新申报名单"); |
| | | treeNode.setChildren(newList); |
| | | allList.add(treeNode); |
| | | } |
| | | if (notList.size()>0){ |
| | | // 考试未通过 |
| | | TreeNode treeNode = new TreeNode(); |
| | | treeNode.setName("未通过考试名单"); |
| | | treeNode.setChildren(notList); |
| | | allList.add(treeNode); |
| | | } |
| | | // 返回 |
| | | return allList; |
| | | } |
| | | |
| | | /** |
| | |
| | | } |
| | | } |
| | | |
| | | //性别 |
| | | if (null != userExcel.getSex()) { |
| | | if (userExcel.getSex().equals("男")) { |
| | | user.setSex(1); |
| | | } |
| | | if (userExcel.getSex().equals("女")) { |
| | | user.setSex(2); |
| | | } |
| | | } |
| | | |
| | | // 学历 |
| | | if (null != userExcel.getEducation()) { |
| | | if (userExcel.getEducation().equals("初中及以下") |
| | | || userExcel.getEducation().equals("初中") |
| | | ) { |
| | | user.setEducation("1"); |
| | | } |
| | | if (userExcel.getEducation().equals("高中/中技/中专") |
| | | || userExcel.getEducation().equals("高中") |
| | | || userExcel.getEducation().equals("中技") |
| | | || userExcel.getEducation().equals("中专") |
| | | ) { |
| | | user.setEducation("2"); |
| | | } |
| | | if (userExcel.getEducation().equals("大专")) { |
| | | user.setEducation("3"); |
| | | } |
| | | if (userExcel.getEducation().equals("本科")) { |
| | | user.setEducation("4"); |
| | | } |
| | | if (userExcel.getEducation().equals("博士")) { |
| | | user.setEducation("5"); |
| | | } |
| | | if (userExcel.getEducation().equals("硕士")) { |
| | | user.setEducation("6"); |
| | | } |
| | | } |
| | | |
| | | //判断当前用户是否已在本单位,如果是的更新数据 |
| | | User user1 = new User(); |
| | | user1.setAccount(user.getCardid()); |
| | |
| | | //默认在职 |
| | | user.setStatus(1); |
| | | user.setIsDeleted(0); |
| | | user.setHold("2"); |
| | | //判断是否持证 |
| | | if (null != userExcel.getSecuritynumber() && userExcel.getSecuritynumber() != "") { |
| | | user.setHold("1"); |
| | | //校验保安员证编号是否合规 |
| | | SecurityPaper securityPaper = new SecurityPaper(); |
| | | securityPaper.setIdCardNo(userExcel.getCardid()); |
| | | List<SecurityPaper> securityPaperList = securityPaperService.list(Condition.getQueryWrapper(securityPaper)); |
| | | if (securityPaperList.size()>0){ |
| | | boolean state = false; |
| | | //遍历 |
| | | for (SecurityPaper paper : securityPaperList) { |
| | | if (paper.getNumber().equals(user.getSecuritynumber())){ |
| | | state = true; |
| | | } |
| | | } |
| | | if (!state){ |
| | | user.setHold("2"); |
| | | user.setSecuritynumber(null); |
| | | securityInvalidList.add(userExcel.getCardid()); |
| | | securityInvalidStatus.set(false); |
| | | } |
| | | }else { |
| | | user.setHold("2"); |
| | | user.setSecuritynumber(null); |
| | | securityInvalidList.add(userExcel.getCardid()); |
| | | securityInvalidStatus.set(false); |
| | | } |
| | | }else { |
| | | user.setHold("2"); |
| | | } |
| | | // if (null != userExcel.getSecuritynumber() && userExcel.getSecuritynumber() != "") { |
| | | // user.setHold("1"); |
| | | // //校验保安员证编号是否合规 |
| | | // SecurityPaper securityPaper = new SecurityPaper(); |
| | | // securityPaper.setIdCardNo(userExcel.getCardid()); |
| | | // List<SecurityPaper> securityPaperList = securityPaperService.list(Condition.getQueryWrapper(securityPaper)); |
| | | // if (securityPaperList.size()>0){ |
| | | // boolean state = false; |
| | | // //遍历 |
| | | // for (SecurityPaper paper : securityPaperList) { |
| | | // if (paper.getNumber().equals(user.getSecuritynumber())){ |
| | | // state = true; |
| | | // } |
| | | // } |
| | | // if (!state){ |
| | | // user.setHold("2"); |
| | | // user.setSecuritynumber(null); |
| | | // securityInvalidList.add(userExcel.getCardid()); |
| | | // securityInvalidStatus.set(false); |
| | | // } |
| | | // }else { |
| | | // user.setHold("2"); |
| | | // user.setSecuritynumber(null); |
| | | // securityInvalidList.add(userExcel.getCardid()); |
| | | // securityInvalidStatus.set(false); |
| | | // } |
| | | // }else { |
| | | // user.setHold("2"); |
| | | // } |
| | | //判断年龄,超过60岁的不入 |
| | | // if (AgeUtil.idCardToAge(user.getCardid())<60) { |
| | | //分配保安角色 |
| | |
| | | role.setRoleAlias("保安"); |
| | | Role oneRole = roleService.getOne(Condition.getQueryWrapper(role)); |
| | | user.setRoleId(oneRole.getId().toString()); |
| | | |
| | | //性别 |
| | | if (null != userExcel.getSex()) { |
| | | if (userExcel.getSex().equals("男")) { |
| | | user.setSex(1); |
| | | } |
| | | if (userExcel.getSex().equals("女")) { |
| | | user.setSex(2); |
| | | } |
| | | } |
| | | |
| | | //设置账号 |
| | | user.setAccount(user.getCardid()); |
| | |
| | | }else { |
| | | //匹配组织机构是否一致,如果不一致 |
| | | if(!user2.getDeptId().equals(user.getDeptId())){ |
| | | Dept dept = deptService.getById(user2.getDeptId()); |
| | | Dept dept1 = deptService.getById(user.getDeptId()); |
| | | //如果是南昌总公司分公司导入的 |
| | | if (dept.getId().equals(1432626178757275649L) && dept1.getParentId().equals(1432626178757275649L)){ |
| | | user2.setDeptId(dept1.getId().toString()); |
| | | //判断是否持证 |
| | | if (null != userExcel.getSecuritynumber() && userExcel.getSecuritynumber() != "") { |
| | | user2.setHold("1"); |
| | | user2.setSecuritynumber(user.getSecuritynumber()); |
| | | //校验保安员证编号是否合规 |
| | | SecurityPaper securityPaper = new SecurityPaper(); |
| | | securityPaper.setIdCardNo(userExcel.getCardid()); |
| | | List<SecurityPaper> securityPaperList = securityPaperService.list(Condition.getQueryWrapper(securityPaper)); |
| | | if (securityPaperList.size()>0){ |
| | | boolean state = false; |
| | | //遍历 |
| | | for (SecurityPaper paper : securityPaperList) { |
| | | if (paper.getNumber().equals(user.getSecuritynumber())){ |
| | | state = true; |
| | | } |
| | | } |
| | | if (!state){ |
| | | user2.setHold("2"); |
| | | user2.setSecuritynumber(null); |
| | | securityInvalidList.add(userExcel.getCardid()); |
| | | securityInvalidStatus.set(false); |
| | | } |
| | | }else { |
| | | user2.setHold("2"); |
| | | user2.setSecuritynumber(null); |
| | | securityInvalidList.add(userExcel.getCardid()); |
| | | securityInvalidStatus.set(false); |
| | | } |
| | | }else { |
| | | user2.setHold("2"); |
| | | } |
| | | //更新用户数据 |
| | | user2.setUpdateTime(new Date()); |
| | | this.updateById(user2); |
| | | //qfqk异步推送 |
| | | myAsyncService.updateUserByQfqk(user2); |
| | | String s1 = |
| | | "update blade_user set hold = " + "'" + user2.getHold() + "'" |
| | | + ",securitynumber = " + "'" + user2.getSecuritynumber() + "'" |
| | | + ",dept_id = " + "'" + user2.getDeptId() + "'" |
| | | + ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user2.getUpdateTime()) + "'" |
| | | + ",registered = " + "'" + user2.getRegistered() + "'" |
| | | + " " + "where id = " + "'" + user2.getId() + "'"; |
| | | //FtpUtil.sqlFileUpload(s1); |
| | | myAsyncService.FTP(s1); |
| | | }else { |
| | | status.set(false); |
| | | //加入集合 |
| | | errorList.add(user.getCardid()); |
| | | //forEach 只能使用 return 跳出本次循环 |
| | | status.set(false); |
| | | //加入集合 |
| | | errorList.add(user.getCardid()); |
| | | //forEach 只能使用 return 跳出本次循环 |
| | | // return; |
| | | continue; |
| | | } |
| | | continue; |
| | | }else { |
| | | //如果是一致,则更新用户数据 |
| | | //判断是否持证 |
| | | if (null != userExcel.getSecuritynumber() && userExcel.getSecuritynumber() != "") { |
| | | user2.setHold("1"); |
| | | user2.setSecuritynumber(user.getSecuritynumber()); |
| | | //校验保安员证编号是否合规 |
| | | SecurityPaper securityPaper = new SecurityPaper(); |
| | | securityPaper.setIdCardNo(userExcel.getCardid()); |
| | | List<SecurityPaper> securityPaperList = securityPaperService.list(Condition.getQueryWrapper(securityPaper)); |
| | | if (securityPaperList.size()>0){ |
| | | boolean state = false; |
| | | //遍历 |
| | | for (SecurityPaper paper : securityPaperList) { |
| | | if (paper.getNumber().equals(user.getSecuritynumber())){ |
| | | state = true; |
| | | } |
| | | } |
| | | if (!state){ |
| | | user2.setHold("2"); |
| | | user2.setSecuritynumber(null); |
| | | securityInvalidList.add(userExcel.getCardid()); |
| | | securityInvalidStatus.set(false); |
| | | } |
| | | }else { |
| | | user2.setHold("2"); |
| | | user2.setSecuritynumber(null); |
| | | securityInvalidList.add(userExcel.getCardid()); |
| | | securityInvalidStatus.set(false); |
| | | } |
| | | }else { |
| | | user2.setHold("2"); |
| | | } |
| | | // if (null != userExcel.getSecuritynumber() && userExcel.getSecuritynumber() != "") { |
| | | // user2.setHold("1"); |
| | | // user2.setSecuritynumber(user.getSecuritynumber()); |
| | | // //校验保安员证编号是否合规 |
| | | // SecurityPaper securityPaper = new SecurityPaper(); |
| | | // securityPaper.setIdCardNo(userExcel.getCardid()); |
| | | // List<SecurityPaper> securityPaperList = securityPaperService.list(Condition.getQueryWrapper(securityPaper)); |
| | | // if (securityPaperList.size()>0){ |
| | | // boolean state = false; |
| | | // //遍历 |
| | | // for (SecurityPaper paper : securityPaperList) { |
| | | // if (paper.getNumber().equals(user.getSecuritynumber())){ |
| | | // state = true; |
| | | // } |
| | | // } |
| | | // if (!state){ |
| | | // user2.setHold("2"); |
| | | // user2.setSecuritynumber(null); |
| | | // securityInvalidList.add(userExcel.getCardid()); |
| | | // securityInvalidStatus.set(false); |
| | | // } |
| | | // }else { |
| | | // user2.setHold("2"); |
| | | // user2.setSecuritynumber(null); |
| | | // securityInvalidList.add(userExcel.getCardid()); |
| | | // securityInvalidStatus.set(false); |
| | | // } |
| | | // }else { |
| | | // user2.setHold("2"); |
| | | // } |
| | | // user2.setHold("2"); |
| | | if (null!=userExcel.getRegistered()){ |
| | | user2.setRegistered(userExcel.getRegistered()); |
| | | }else { |
| | | user2.setRegistered(""); |
| | | } |
| | | |
| | | // 住址 |
| | | if (null!=userExcel.getAddress()){ |
| | | user2.setAddress(userExcel.getAddress()); |
| | | }else { |
| | | user2.setAddress(""); |
| | | } |
| | | |
| | | // 学历 |
| | | if (null!=userExcel.getEducation()){ |
| | | user2.setEducation(user.getEducation()); |
| | | }else { |
| | | user2.setEducation(""); |
| | | } |
| | | |
| | | // 从业单位 |
| | | if (null!=userExcel.getUnitName()){ |
| | | user2.setUnitName(userExcel.getUnitName()); |
| | | }else { |
| | | user2.setUnitName(""); |
| | | } |
| | | |
| | | // 政治面貌 |
| | | if (null!=userExcel.getPoliticaloutlook()){ |
| | | user2.setPoliticaloutlook(userExcel.getPoliticaloutlook()); |
| | | }else { |
| | | user2.setPoliticaloutlook(""); |
| | | } |
| | | |
| | | user2.setUpdateTime(new Date()); |
| | | //更新用户数据 |
| | | this.updateById(user2); |
| | | //qfqk异步推送 |
| | | myAsyncService.updateUserByQfqk(user2); |
| | | //内网数据sql |
| | | String s1 = |
| | | "update blade_user set hold = " + "'" + user2.getHold() + "'" |
| | | + ",securitynumber = " + "'" + user2.getSecuritynumber() + "'" |
| | | + ",registered = " + "'" + user2.getRegistered() + "'" |
| | | + ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user2.getUpdateTime()) + "'" |
| | | + " " + "where id = " + "'" + user2.getId() + "'"; |
| | | //FtpUtil.sqlFileUpload(s1); |
| | | myAsyncService.FTP(s1); |
| | | } |
| | | } |
| | | } |
| | |
| | | //用户批量插入 |
| | | if (userList.size()>0) { |
| | | baseMapper.batchUserList(userList); |
| | | //用户批量插入异步推送 |
| | | myAsyncService.batchUserList(userList); |
| | | //sql 拼接 |
| | | StringBuilder builder = new StringBuilder(); |
| | | StringBuilder builder1 = new StringBuilder(); |
| | | //遍历 |
| | | for (User user : userList) { |
| | | //内网同步,sql 拼接 |
| | | String sql = "insert into blade_user(" + |
| | | "id,tenant_id,account,password,name,real_name,avatar,email,phone,sex," + |
| | | "role_id,dept_id,cardid,nativePlace,nation,fingerprint,education," + |
| | | "politicaloutlook,healstats,height,address,registered," + |
| | | "securitynumber,hold,jurisdiction,examination_type,status,is_deleted,dispatch,create_time) " + |
| | | "values(" + "'" + user.getId() + "'" + |
| | | "," + "'" + user.getTenantId() + "'" + |
| | | "," + "'" + user.getAccount() + "'" + |
| | | "," + "'" + user.getPassword() + "'" + |
| | | "," + "'" + user.getName() + "'" + |
| | | "," + "'" + user.getRealName() + "'" + |
| | | "," + "'" + user.getAvatar() + "'" + |
| | | "," + "'" + user.getEmail() + "'" + |
| | | "," + "'" + user.getPhone() + "'" + |
| | | "," + "'" + user.getSex() + "'" + |
| | | "," + "'" + user.getRoleId() + "'" + |
| | | "," + "'" + user.getDeptId() + "'" + |
| | | "," + "'" + user.getCardid() + "'" + |
| | | "," + "'" + user.getNativeplace() + "'" + |
| | | "," + "'" + user.getNation() + "'" + |
| | | "," + "'" + user.getFingerprint() + "'" + |
| | | "," + "'" + user.getEducation() + "'" + |
| | | "," + "'" + user.getPoliticaloutlook() + "'" + |
| | | "," + "'" + user.getHealstats() + "'" + |
| | | "," + "'" + user.getHeight() + "'" + |
| | | "," + "'" + user.getAddress() + "'" + |
| | | "," + "'" + user.getRegistered() + "'" + |
| | | "," + "'" + user.getSecuritynumber() + "'" + |
| | | "," + "'" + user.getHold() + "'" + |
| | | "," + "'" + user.getJurisdiction() + "'" + |
| | | "," + "'" + user.getExaminationType() + "'" + |
| | | "," + "'" + user.getStatus() + "'" + |
| | | "," + "'" + user.getIsDeleted() + "'" + |
| | | "," + "'" + user.getDispatch() + "'" + |
| | | "," + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getCreateTime()) + "'" + ")"; |
| | | //拼接 |
| | | builder = builder.append(sql).append(";"); |
| | | List<String> list = Arrays.asList(builder.toString().split(";")); |
| | | //判断list.size 大小 |
| | | if (list.size()==1000){ |
| | | //执行 |
| | | //FtpUtil.sqlFileUpload(builder.toString()); |
| | | myAsyncService.FTP(builder.toString()); |
| | | //清空 |
| | | builder.delete(0,builder.length()); |
| | | } |
| | | } |
| | | |
| | | //装换成map |
| | | Map<String, User> userMap = userList.stream().collect(Collectors.toMap(user -> user.getCardid(), user -> user)); |
| | | //匹配 |
| | |
| | | }).collect(Collectors.toList()); |
| | | //批量插入从业记录 |
| | | baseMapper.batchExperienceList(experienceList); |
| | | //遍历,拼接sql ,同步数据到内网 |
| | | for (Experience experience : experienceList) { |
| | | String sql1 = "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() + "'" + ")"; |
| | | //拼接 |
| | | builder1 = builder1.append(sql1).append(";"); |
| | | String[] split1 = builder.toString().split(";"); |
| | | //判断list.size 大小 |
| | | if (split1.length==1000){ |
| | | //执行 |
| | | //FtpUtil.sqlFileUpload(builder1.toString()); |
| | | myAsyncService.FTP(builder1.toString()); |
| | | //清空 |
| | | builder1.delete(0,builder1.length()); |
| | | } |
| | | } |
| | | //剩余的继续执行 |
| | | //FtpUtil.sqlFileUpload(builder.toString()); |
| | | myAsyncService.FTP(builder.toString()); |
| | | //FtpUtil.sqlFileUpload(builder1.toString()); |
| | | myAsyncService.FTP(builder1.toString()); |
| | | } |
| | | // System.out.println("导入时间: = " + (System.currentTimeMillis()-time)); |
| | | |
| | |
| | | user.setCreateTime(new Date()); |
| | | //新增 |
| | | this.save(user); |
| | | //qfqk 推送 |
| | | myAsyncService.qfqkUserSave(user); |
| | | |
| | | //从业记录新增 |
| | | Experience experience = new Experience(); |
| | |
| | | experience.setEntrytime(new Date()); |
| | | experienceService.save(experience); |
| | | |
| | | //内网同步 |
| | | String s = "insert into blade_user(" + |
| | | "id,tenant_id,account,password,name,real_name,avatar,email,phone,sex," + |
| | | "role_id,dept_id,cardid,nativePlace,nation,fingerprint,education," + |
| | | "politicaloutlook,healstats,height,address,registered," + |
| | | "securitynumber,hold,jurisdiction,examination_type,status,is_deleted,dispatch,create_time,guncode) " + |
| | | "values(" + "'" + user.getId() + "'" + |
| | | "," + "'" + user.getTenantId() + "'" + |
| | | "," + "'" + user.getAccount() + "'" + |
| | | "," + "'" + user.getPassword() + "'" + |
| | | "," + "'" + user.getName() + "'" + |
| | | "," + "'" + user.getRealName() + "'" + |
| | | "," + "'" + user.getAvatar() + "'" + |
| | | "," + "'" + user.getEmail() + "'" + |
| | | "," + "'" + user.getPhone() + "'" + |
| | | "," + "'" + user.getSex() + "'" + |
| | | "," + "'" + user.getRoleId() + "'" + |
| | | "," + "'" + user.getDeptId() + "'" + |
| | | "," + "'" + user.getCardid() + "'" + |
| | | "," + "'" + user.getNativeplace() + "'" + |
| | | "," + "'" + user.getNation() + "'" + |
| | | "," + "'" + user.getFingerprint() + "'" + |
| | | "," + "'" + user.getEducation() + "'" + |
| | | "," + "'" + user.getPoliticaloutlook() + "'" + |
| | | "," + "'" + user.getHealstats() + "'"+ |
| | | "," + "'" + user.getHeight() + "'" + |
| | | "," + "'" + user.getAddress() + "'" + |
| | | "," + "'" + user.getRegistered() + "'" + |
| | | "," + "'" + user.getSecuritynumber() + "'" + |
| | | "," + "'" + user.getHold() + "'" + |
| | | "," + "'" + user.getJurisdiction() + "'" + |
| | | "," + "'" + user.getExaminationType() + "'" + |
| | | "," + "'" + user.getStatus() + "'" + |
| | | "," + "'" + user.getIsDeleted() + "'" + |
| | | "," + "'" + user.getDispatch() + "'" + |
| | | "," + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getCreateTime()) + "'" + |
| | | "," + "'" + user.getGuncode() + "'" + ");"+ |
| | | "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); |
| | | myAsyncService.FTP(s); |
| | | } |
| | | else { |
| | | //匹配组织机构是否一致,如果不一致 |
| | |
| | | user2.setUpdateTime(new Date()); |
| | | //更新用户数据 |
| | | this.updateById(user2); |
| | | //qfqk 推送 |
| | | myAsyncService.updateUserByQfqk(user); |
| | | |
| | | String s1 = |
| | | "update blade_user set hold = " + "'" + user2.getHold() + "'" |
| | | + ",securitynumber = " + "'" + user2.getSecuritynumber() + "'" |
| | | + ",dept_id = " + "'" + user2.getDeptId() + "'" |
| | | + ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user2.getUpdateTime()) + "'" |
| | | + ",registered = " + "'" + user2.getRegistered() + "'" |
| | | + " " + "where id = " + "'" + user2.getId() + "'"; |
| | | //FtpUtil.sqlFileUpload(s1); |
| | | myAsyncService.FTP(s1); |
| | | }else { |
| | | status.set(false); |
| | | //加入集合 |
| | |
| | | user2.setUpdateTime(new Date()); |
| | | //更新用户数据 |
| | | this.updateById(user2); |
| | | //qfqk 推送 |
| | | myAsyncService.updateUserByQfqk(user); |
| | | |
| | | String s1 = |
| | | "update blade_user set hold = " + "'" + user2.getHold() + "'" |
| | |
| | | + ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user2.getUpdateTime()) + "'" |
| | | + " " + "where id = " + "'" + user2.getId() + "'"; |
| | | //FtpUtil.sqlFileUpload(s1); |
| | | myAsyncService.FTP(s1); |
| | | myAsyncService.dataSync(s1); |
| | | } |
| | | } |
| | | }); |
| | |
| | | */ |
| | | @Override |
| | | public void importQrCode(List<QrCodeExcel> data, Boolean isCovered, String deptId) { |
| | | String url = "http://223.82.109.183:2080/securityInfo.html"; |
| | | String url = QrcodeConfig.baseUrl + "securityInfo.html"; |
| | | //二维码生成 |
| | | data.forEach(qrCodeExcel -> { |
| | | if (null!=qrCodeExcel.getSecuritynumber()) { |
| | |
| | | //默认在职 |
| | | user.setStatus(1); |
| | | user.setIsDeleted(0); |
| | | user.setHold("2"); |
| | | //判断是否持证 |
| | | if (null != userExcel.getSecuritynumber() && userExcel.getSecuritynumber() != "") { |
| | | user.setHold("1"); |
| | | //校验保安员证编号是否合规 |
| | | SecurityPaper securityPaper = new SecurityPaper(); |
| | | securityPaper.setIdCardNo(userExcel.getCardid()); |
| | | List<SecurityPaper> securityPaperList = securityPaperService.list(Condition.getQueryWrapper(securityPaper)); |
| | | if (securityPaperList.size()>0){ |
| | | boolean state = false; |
| | | //遍历 |
| | | for (SecurityPaper paper : securityPaperList) { |
| | | if (paper.getNumber().equals(user.getSecuritynumber())){ |
| | | state = true; |
| | | } |
| | | } |
| | | if (!state){ |
| | | user.setHold("2"); |
| | | user.setSecuritynumber(null); |
| | | securityInvalidList.add(userExcel.getCardid()); |
| | | securityInvalidStatus.set(false); |
| | | } |
| | | }else { |
| | | user.setHold("2"); |
| | | user.setSecuritynumber(null); |
| | | securityInvalidList.add(userExcel.getCardid()); |
| | | securityInvalidStatus.set(false); |
| | | } |
| | | }else { |
| | | //创建保安证编号 |
| | | user.setHold("1"); |
| | | //去生成保安证编号 |
| | | String pre = SecurityPaperUtil.getSecurityPaper(); |
| | | //查询当前年份已有的保安证编号 |
| | | int max = this.getSecurityPaperCount(pre); |
| | | String result = null; |
| | | if (max == 0) { |
| | | result = pre + "00001"; |
| | | } else { |
| | | //格式化 |
| | | DecimalFormat decimalFormat = new DecimalFormat("00000"); |
| | | max++; |
| | | result = pre + (decimalFormat.format(max)); |
| | | } |
| | | user.setSecuritynumber(result); |
| | | |
| | | //生成保安证的同时向保安证管理表中插入一条数据 |
| | | SecurityPaper securityPaper = new SecurityPaper(); |
| | | securityPaper.setNumber(result); |
| | | securityPaper.setCreateTime(new Date()); |
| | | securityPaper.setIdCardNo(user.getCardid()); |
| | | securityPaper.setPeopleName(user.getRealName()); |
| | | securityPaper.setSource(3); |
| | | //新增保安员证信息 |
| | | securityPaperService.save(securityPaper); |
| | | } |
| | | // if (null != userExcel.getSecuritynumber() && userExcel.getSecuritynumber() != "") { |
| | | // user.setHold("1"); |
| | | // //校验保安员证编号是否合规 |
| | | // SecurityPaper securityPaper = new SecurityPaper(); |
| | | // securityPaper.setIdCardNo(userExcel.getCardid()); |
| | | // List<SecurityPaper> securityPaperList = securityPaperService.list(Condition.getQueryWrapper(securityPaper)); |
| | | // if (securityPaperList.size()>0){ |
| | | // boolean state = false; |
| | | // //遍历 |
| | | // for (SecurityPaper paper : securityPaperList) { |
| | | // if (paper.getNumber().equals(user.getSecuritynumber())){ |
| | | // state = true; |
| | | // } |
| | | // } |
| | | // if (!state){ |
| | | // user.setHold("2"); |
| | | // user.setSecuritynumber(null); |
| | | // securityInvalidList.add(userExcel.getCardid()); |
| | | // securityInvalidStatus.set(false); |
| | | // } |
| | | // }else { |
| | | // user.setHold("2"); |
| | | // user.setSecuritynumber(null); |
| | | // securityInvalidList.add(userExcel.getCardid()); |
| | | // securityInvalidStatus.set(false); |
| | | // } |
| | | // }else { |
| | | // //创建保安证编号 |
| | | // user.setHold("1"); |
| | | // //去生成保安证编号 |
| | | // String pre = SecurityPaperUtil.getSecurityPaper(); |
| | | // //查询当前年份已有的保安证编号 |
| | | // int max = this.getSecurityPaperCount(pre); |
| | | // String result = null; |
| | | // if (max == 0) { |
| | | // result = pre + "00001"; |
| | | // } else { |
| | | // //格式化 |
| | | // DecimalFormat decimalFormat = new DecimalFormat("00000"); |
| | | // max++; |
| | | // result = pre + (decimalFormat.format(max)); |
| | | // } |
| | | // user.setSecuritynumber(result); |
| | | // |
| | | // //生成保安证的同时向保安证管理表中插入一条数据 |
| | | // SecurityPaper securityPaper = new SecurityPaper(); |
| | | // securityPaper.setNumber(result); |
| | | // securityPaper.setCreateTime(new Date()); |
| | | // securityPaper.setIdCardNo(user.getCardid()); |
| | | // securityPaper.setPeopleName(user.getRealName()); |
| | | // securityPaper.setSource(3); |
| | | // //新增保安员证信息 |
| | | // securityPaperService.save(securityPaper); |
| | | // } |
| | | //分配保安角色 |
| | | Role role = new Role(); |
| | | role.setRoleAlias("保安"); |
| | |
| | | }else { |
| | | //如果是一致,则更新用户数据 |
| | | //判断是否持证 |
| | | if (null != userExcel.getSecuritynumber() && userExcel.getSecuritynumber() != "") { |
| | | user2.setHold("1"); |
| | | user2.setSecuritynumber(user.getSecuritynumber()); |
| | | //校验保安员证编号是否合规 |
| | | SecurityPaper securityPaper = new SecurityPaper(); |
| | | securityPaper.setIdCardNo(userExcel.getCardid()); |
| | | List<SecurityPaper> securityPaperList = securityPaperService.list(Condition.getQueryWrapper(securityPaper)); |
| | | if (securityPaperList.size()>0){ |
| | | boolean state = false; |
| | | //遍历 |
| | | for (SecurityPaper paper : securityPaperList) { |
| | | if (paper.getNumber().equals(user.getSecuritynumber())){ |
| | | state = true; |
| | | } |
| | | } |
| | | if (!state){ |
| | | user2.setHold("2"); |
| | | user2.setSecuritynumber(null); |
| | | securityInvalidList.add(userExcel.getCardid()); |
| | | securityInvalidStatus.set(false); |
| | | } |
| | | }else { |
| | | user2.setHold("2"); |
| | | user2.setSecuritynumber(null); |
| | | securityInvalidList.add(userExcel.getCardid()); |
| | | securityInvalidStatus.set(false); |
| | | } |
| | | }else { |
| | | //创建保安证编号 |
| | | user2.setHold("1"); |
| | | //去生成保安证编号 |
| | | String pre = SecurityPaperUtil.getSecurityPaper(); |
| | | //查询当前年份已有的保安证编号 |
| | | int max = this.getSecurityPaperCount(pre); |
| | | String result = null; |
| | | if (max == 0) { |
| | | result = pre + "00001"; |
| | | } else { |
| | | //格式化 |
| | | DecimalFormat decimalFormat = new DecimalFormat("00000"); |
| | | max++; |
| | | result = pre + (decimalFormat.format(max)); |
| | | } |
| | | user2.setSecuritynumber(result); |
| | | |
| | | //生成保安证的同时向保安证管理表中插入一条数据 |
| | | SecurityPaper securityPaper = new SecurityPaper(); |
| | | securityPaper.setNumber(result); |
| | | securityPaper.setCreateTime(new Date()); |
| | | securityPaper.setIdCardNo(user2.getCardid()); |
| | | securityPaper.setPeopleName(user2.getRealName()); |
| | | securityPaper.setSource(3); |
| | | //新增保安员证信息 |
| | | securityPaperService.save(securityPaper); |
| | | } |
| | | // if (null != userExcel.getSecuritynumber() && userExcel.getSecuritynumber() != "") { |
| | | // user2.setHold("1"); |
| | | // user2.setSecuritynumber(user.getSecuritynumber()); |
| | | // //校验保安员证编号是否合规 |
| | | // SecurityPaper securityPaper = new SecurityPaper(); |
| | | // securityPaper.setIdCardNo(userExcel.getCardid()); |
| | | // List<SecurityPaper> securityPaperList = securityPaperService.list(Condition.getQueryWrapper(securityPaper)); |
| | | // if (securityPaperList.size()>0){ |
| | | // boolean state = false; |
| | | // //遍历 |
| | | // for (SecurityPaper paper : securityPaperList) { |
| | | // if (paper.getNumber().equals(user.getSecuritynumber())){ |
| | | // state = true; |
| | | // } |
| | | // } |
| | | // if (!state){ |
| | | // user2.setHold("2"); |
| | | // user2.setSecuritynumber(null); |
| | | // securityInvalidList.add(userExcel.getCardid()); |
| | | // securityInvalidStatus.set(false); |
| | | // } |
| | | // }else { |
| | | // user2.setHold("2"); |
| | | // user2.setSecuritynumber(null); |
| | | // securityInvalidList.add(userExcel.getCardid()); |
| | | // securityInvalidStatus.set(false); |
| | | // } |
| | | // }else { |
| | | // //创建保安证编号 |
| | | // user2.setHold("1"); |
| | | // //去生成保安证编号 |
| | | // String pre = SecurityPaperUtil.getSecurityPaper(); |
| | | // //查询当前年份已有的保安证编号 |
| | | // int max = this.getSecurityPaperCount(pre); |
| | | // String result = null; |
| | | // if (max == 0) { |
| | | // result = pre + "00001"; |
| | | // } else { |
| | | // //格式化 |
| | | // DecimalFormat decimalFormat = new DecimalFormat("00000"); |
| | | // max++; |
| | | // result = pre + (decimalFormat.format(max)); |
| | | // } |
| | | // user2.setSecuritynumber(result); |
| | | // |
| | | // //生成保安证的同时向保安证管理表中插入一条数据 |
| | | // SecurityPaper securityPaper = new SecurityPaper(); |
| | | // securityPaper.setNumber(result); |
| | | // securityPaper.setCreateTime(new Date()); |
| | | // securityPaper.setIdCardNo(user2.getCardid()); |
| | | // securityPaper.setPeopleName(user2.getRealName()); |
| | | // securityPaper.setSource(3); |
| | | // //新增保安员证信息 |
| | | // securityPaperService.save(securityPaper); |
| | | // } |
| | | if (null!=userExcel.getRegistered()){ |
| | | user2.setRegistered(userExcel.getRegistered()); |
| | | }else { |
| | |
| | | //更新用户数据 |
| | | this.updateById(user2); |
| | | //qfqk异步推送 |
| | | myAsyncService.updateUserByQfqk(user2); |
| | | // myAsyncService.updateUserByQfqk(user2); |
| | | //内网数据sql |
| | | String s1 = |
| | | "update blade_user set hold = " + "'" + user2.getHold() + "'" |
| | |
| | | + ",registered = " + "'" + user2.getRegistered() + "'" |
| | | + ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user2.getUpdateTime()) + "'" |
| | | + " " + "where id = " + "'" + user2.getId() + "'"; |
| | | myAsyncService.FTP(s1); |
| | | myAsyncService.dataSync(s1); |
| | | } |
| | | } |
| | | } |
| | |
| | | //用户批量插入 |
| | | if (userList.size()>0) { |
| | | baseMapper.batchUserList(userList); |
| | | //用户批量插入异步推送 |
| | | myAsyncService.batchUserList(userList); |
| | | //sql 拼接 |
| | | StringBuilder builder = new StringBuilder(); |
| | | StringBuilder builder1 = new StringBuilder(); |
| | | //遍历 |
| | | for (User user : userList) { |
| | | //内网同步,sql 拼接 |
| | | String sql = "insert into blade_user(" + |
| | | "id,tenant_id,account,password,name,real_name,avatar,email,phone,sex," + |
| | | "role_id,dept_id,cardid,nativePlace,nation,fingerprint,education," + |
| | | "politicaloutlook,healstats,height,address,registered," + |
| | | "securitynumber,hold,jurisdiction,examination_type,status,is_deleted,dispatch,create_time) " + |
| | | "values(" + "'" + user.getId() + "'" + |
| | | "," + "'" + user.getTenantId() + "'" + |
| | | "," + "'" + user.getAccount() + "'" + |
| | | "," + "'" + user.getPassword() + "'" + |
| | | "," + "'" + user.getName() + "'" + |
| | | "," + "'" + user.getRealName() + "'" + |
| | | "," + "'" + user.getAvatar() + "'" + |
| | | "," + "'" + user.getEmail() + "'" + |
| | | "," + "'" + user.getPhone() + "'" + |
| | | "," + "'" + user.getSex() + "'" + |
| | | "," + "'" + user.getRoleId() + "'" + |
| | | "," + "'" + user.getDeptId() + "'" + |
| | | "," + "'" + user.getCardid() + "'" + |
| | | "," + "'" + user.getNativeplace() + "'" + |
| | | "," + "'" + user.getNation() + "'" + |
| | | "," + "'" + user.getFingerprint() + "'" + |
| | | "," + "'" + user.getEducation() + "'" + |
| | | "," + "'" + user.getPoliticaloutlook() + "'" + |
| | | "," + "'" + user.getHealstats() + "'" + |
| | | "," + "'" + user.getHeight() + "'" + |
| | | "," + "'" + user.getAddress() + "'" + |
| | | "," + "'" + user.getRegistered() + "'" + |
| | | "," + "'" + user.getSecuritynumber() + "'" + |
| | | "," + "'" + user.getHold() + "'" + |
| | | "," + "'" + user.getJurisdiction() + "'" + |
| | | "," + "'" + user.getExaminationType() + "'" + |
| | | "," + "'" + user.getStatus() + "'" + |
| | | "," + "'" + user.getIsDeleted() + "'" + |
| | | "," + "'" + user.getDispatch() + "'" + |
| | | "," + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getCreateTime()) + "'" + ")"; |
| | | //拼接 |
| | | builder = builder.append(sql).append(";"); |
| | | List<String> list = Arrays.asList(builder.toString().split(";")); |
| | | //判断list.size 大小 |
| | | if (list.size()==1000){ |
| | | //执行 |
| | | myAsyncService.FTP(builder.toString()); |
| | | //清空 |
| | | builder.delete(0,builder.length()); |
| | | } |
| | | } |
| | | |
| | | //装换成map |
| | | Map<String, User> userMap = userList.stream().collect(Collectors.toMap(user -> user.getCardid(), user -> user)); |
| | |
| | | }).collect(Collectors.toList()); |
| | | //批量插入从业记录 |
| | | baseMapper.batchExperienceList(experienceList); |
| | | //遍历,拼接sql ,同步数据到内网 |
| | | for (Experience experience : experienceList) { |
| | | String sql1 = "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() + "'" + ")"; |
| | | //拼接 |
| | | builder1 = builder1.append(sql1).append(";"); |
| | | String[] split1 = builder.toString().split(";"); |
| | | //判断list.size 大小 |
| | | if (split1.length==1000){ |
| | | //执行 |
| | | myAsyncService.FTP(builder1.toString()); |
| | | //清空 |
| | | builder1.delete(0,builder1.length()); |
| | | } |
| | | } |
| | | //剩余的继续执行 |
| | | myAsyncService.FTP(builder.toString()); |
| | | myAsyncService.FTP(builder1.toString()); |
| | | } |
| | | |
| | | //如果所有数据导入有一个异常 |
| | |
| | | public User getUserById(String id) { |
| | | return baseMapper.getUserById(Long.parseLong(id)); |
| | | } |
| | | |
| | | /** |
| | | * 6个月未登录人员,进行冻结 |
| | | */ |
| | | @Override |
| | | public void sixMonthNotLoginHandle() { |
| | | // 查询6个月未登录人员 |
| | | List<String> userIds = baseMapper.getMoreDayNotLoginUser(183); |
| | | // 统一冻结操作 |
| | | baseMapper.updateFreeze(userIds); |
| | | } |
| | | |
| | | /** |
| | | * 12个月未登录人员,进行注销 |
| | | */ |
| | | @Override |
| | | public void oneYearNotLoginHandle() { |
| | | // 查询12个月未登录人员 |
| | | List<String> userIds = baseMapper.getMoreDayNotLoginUser(366); |
| | | // 统一注销操作 |
| | | baseMapper.updateLogout(userIds); |
| | | } |
| | | |
| | | /** |
| | | * 判断用户是否存在(根据手机号) |
| | | * @param phone |
| | | * @return |
| | | */ |
| | | @Override |
| | | public UserInfo getUserByPhone(String phone) { |
| | | User user = baseMapper.getUserByPhone("000000", phone); |
| | | return buildUserInfo(user, UserEnum.WEB); |
| | | } |
| | | |
| | | /** |
| | | * 判断是否报名 |
| | | * @param id |
| | | * @return |
| | | */ |
| | | @Override |
| | | public boolean getUserIsApply(Long id) { |
| | | User user = baseMapper.getUserIsApply(id); |
| | | if (null!=user){ |
| | | return true; |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | /** |
| | | * 自定义查询详情信息 |
| | | * @param id |
| | | * @return |
| | | */ |
| | | @Override |
| | | public UserVO getUserDetailById(Long id) { |
| | | return baseMapper.getUserDetailById(id); |
| | | } |
| | | } |