| | |
| | | import com.google.zxing.WriterException; |
| | | import lombok.AllArgsConstructor; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.apache.ibatis.annotations.Param; |
| | | import org.springblade.common.cache.SysCache; |
| | | import org.springblade.common.constant.AgeUtil; |
| | | import org.springblade.common.constant.CommonConstant; |
| | |
| | | import org.springblade.modules.system.wrapper.UserWrapper; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import java.io.FileNotFoundException; |
| | | import java.io.FileOutputStream; |
| | | import java.io.IOException; |
| | |
| | | private final IDeptService deptService; |
| | | private final JurisdictionService jurisdictionService; |
| | | private final IExperienceService experienceService; |
| | | private final MyAsyncService myAsyncService; |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | |
| | | "," + "'" + user.getJurisdiction() + "'"+ |
| | | "," + "'" + user.getIsDeleted() + "'" |
| | | + ")"; |
| | | FtpUtil.sqlFileUpload(s); |
| | | //FtpUtil.sqlFileUpload(s); |
| | | myAsyncService.FTP(s); |
| | | return b; |
| | | } |
| | | |
| | |
| | | |
| | | @Override |
| | | public IPage<UserVO> selectUserPages(IPage<UserVO> page, UserVO user) { |
| | | List<UserVO> userVOS = baseMapper.selectUserPages(page, user); |
| | | //机构名称拼接 |
| | | userVOS.forEach(userVO -> { |
| | | if (null != userVO.getCardid() && userVO.getCardid() != "") { |
| | | userVO.setAge(AgeUtil.idCardToAge(userVO.getCardid())); |
| | | } else { |
| | | userVO.setAge(null); |
| | | } |
| | | if (null!=userVO.getDeptId()) { |
| | | List<String> list = baseMapper.getDeptName(userVO.getDeptId()); |
| | | if (list.size() > 1) { |
| | | if (null != list.get(1) && list.get(1) != "") { |
| | | String s = list.get(1).toString(); |
| | | if (s.equals("本市保安公司") || s.equals("保安培训学校") || s.equals("自招保安单位") || s.equals("武装押运公司") || s.equals("分公司") || s.equals("其他")){ |
| | | if (null!=user.getAgeType() && user.getAgeType()!=4){ |
| | | List<UserVO> userVOS = baseMapper.selectUserPagesByAge(page, user); |
| | | //机构名称拼接 |
| | | userVOS.forEach(userVO -> { |
| | | // if (null != userVO.getCardid() && userVO.getCardid() != "") { |
| | | // userVO.setAge(AgeUtil.idCardToAge(userVO.getCardid())); |
| | | // } else { |
| | | // userVO.setAge(null); |
| | | // } |
| | | if (null!=userVO.getDeptId()) { |
| | | List<String> list = baseMapper.getDeptName(userVO.getDeptId()); |
| | | if (list.size() > 1) { |
| | | if (null != list.get(1) && list.get(1) != "") { |
| | | String s = list.get(1).toString(); |
| | | if (s.equals("本市保安公司") || s.equals("保安培训学校") || s.equals("自招保安单位") || s.equals("武装押运公司") || s.equals("分公司") || s.equals("其他")){ |
| | | userVO.setDeptName(list.get(0)); |
| | | } |
| | | else { |
| | | userVO.setDeptName(list.get(1) + "," + list.get(0)); |
| | | } |
| | | } else { |
| | | userVO.setDeptName(list.get(0)); |
| | | } |
| | | else { |
| | | userVO.setDeptName(list.get(1) + "," + list.get(0)); |
| | | } |
| | | } else { |
| | | } |
| | | if (list.size() == 1) { |
| | | userVO.setDeptName(list.get(0)); |
| | | } |
| | | } |
| | | if (list.size() == 1) { |
| | | userVO.setDeptName(list.get(0)); |
| | | }); |
| | | return page.setRecords(userVOS); |
| | | }else { |
| | | List<UserVO> userVOS = baseMapper.selectUserPages(page, user); |
| | | //机构名称拼接 |
| | | userVOS.forEach(userVO -> { |
| | | // if (null != userVO.getCardid() && userVO.getCardid() != "") { |
| | | // userVO.setAge(AgeUtil.idCardToAge(userVO.getCardid())); |
| | | // } else { |
| | | // userVO.setAge(null); |
| | | // } |
| | | if (null!=userVO.getDeptId()) { |
| | | List<String> list = baseMapper.getDeptName(userVO.getDeptId()); |
| | | if (list.size() > 1) { |
| | | if (null != list.get(1) && list.get(1) != "") { |
| | | String s = list.get(1).toString(); |
| | | if (s.equals("本市保安公司") || s.equals("保安培训学校") || s.equals("自招保安单位") || s.equals("武装押运公司") || s.equals("分公司") || s.equals("其他")){ |
| | | userVO.setDeptName(list.get(0)); |
| | | } |
| | | else { |
| | | userVO.setDeptName(list.get(1) + "," + list.get(0)); |
| | | } |
| | | } else { |
| | | userVO.setDeptName(list.get(0)); |
| | | } |
| | | } |
| | | if (list.size() == 1) { |
| | | userVO.setDeptName(list.get(0)); |
| | | } |
| | | } |
| | | } |
| | | }); |
| | | return page.setRecords(userVOS); |
| | | }); |
| | | return page.setRecords(userVOS); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | |
| | | "," + "'" + user.getIsDeleted() + "'" + |
| | | "," + "'" + user.getJurisdiction() + "'" |
| | | + ")"; |
| | | FtpUtil.sqlFileUpload(s); |
| | | //FtpUtil.sqlFileUpload(s); |
| | | myAsyncService.FTP(s); |
| | | }else { |
| | | //匹配组织机构是否一致,如果不一致 |
| | | if(!user2.getDeptId().equals(user.getDeptId())){ |
| | |
| | | + ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user2.getUpdateTime()) + "'" |
| | | + ",cardid = " + "'" + user2.getCardid() + "'" |
| | | + " " + "where id = " + "'" + user2.getId() + "'"; |
| | | FtpUtil.sqlFileUpload(s1); |
| | | //FtpUtil.sqlFileUpload(s1); |
| | | myAsyncService.FTP(s1); |
| | | } |
| | | } |
| | | }); |
| | |
| | | + ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user2.getUpdateTime()) + "'" |
| | | + ",registered = " + "'" + user2.getRegistered() + "'" |
| | | + " " + "where id = " + "'" + user2.getId() + "'"; |
| | | FtpUtil.sqlFileUpload(s1); |
| | | //FtpUtil.sqlFileUpload(s1); |
| | | myAsyncService.FTP(s1); |
| | | }else { |
| | | status.set(false); |
| | | //加入集合 |
| | |
| | | + ",registered = " + "'" + user2.getRegistered() + "'" |
| | | + ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user2.getUpdateTime()) + "'" |
| | | + " " + "where id = " + "'" + user2.getId() + "'"; |
| | | FtpUtil.sqlFileUpload(s1); |
| | | //FtpUtil.sqlFileUpload(s1); |
| | | myAsyncService.FTP(s1); |
| | | } |
| | | } |
| | | } |
| | |
| | | //判断list.size 大小 |
| | | if (list.size()==1000){ |
| | | //执行 |
| | | FtpUtil.sqlFileUpload(builder.toString()); |
| | | //FtpUtil.sqlFileUpload(builder.toString()); |
| | | myAsyncService.FTP(builder.toString()); |
| | | //清空 |
| | | builder.delete(0,builder.length()); |
| | | } |
| | |
| | | //判断list.size 大小 |
| | | if (split1.length==1000){ |
| | | //执行 |
| | | FtpUtil.sqlFileUpload(builder1.toString()); |
| | | //FtpUtil.sqlFileUpload(builder1.toString()); |
| | | myAsyncService.FTP(builder1.toString()); |
| | | //清空 |
| | | builder1.delete(0,builder1.length()); |
| | | } |
| | | } |
| | | //剩余的继续执行 |
| | | FtpUtil.sqlFileUpload(builder.toString()); |
| | | FtpUtil.sqlFileUpload(builder1.toString()); |
| | | //FtpUtil.sqlFileUpload(builder.toString()); |
| | | myAsyncService.FTP(builder.toString()); |
| | | //FtpUtil.sqlFileUpload(builder1.toString()); |
| | | myAsyncService.FTP(builder1.toString()); |
| | | } |
| | | // System.out.println("导入时间: = " + (System.currentTimeMillis()-time)); |
| | | |
| | |
| | | "," + "'" + experience.getCompanyname() + "'" + |
| | | "," + "'" + experience.getSecurityid() + "'" |
| | | + ")"; |
| | | FtpUtil.sqlFileUpload(s); |
| | | //FtpUtil.sqlFileUpload(s); |
| | | myAsyncService.FTP(s); |
| | | } |
| | | else { |
| | | //匹配组织机构是否一致,如果不一致 |
| | |
| | | + ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user2.getUpdateTime()) + "'" |
| | | + ",registered = " + "'" + user2.getRegistered() + "'" |
| | | + " " + "where id = " + "'" + user2.getId() + "'"; |
| | | FtpUtil.sqlFileUpload(s1); |
| | | //FtpUtil.sqlFileUpload(s1); |
| | | myAsyncService.FTP(s1); |
| | | }else { |
| | | status.set(false); |
| | | //加入集合 |
| | |
| | | + ",registered = " + "'" + user2.getRegistered() + "'" |
| | | + ",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user2.getUpdateTime()) + "'" |
| | | + " " + "where id = " + "'" + user2.getId() + "'"; |
| | | FtpUtil.sqlFileUpload(s1); |
| | | //FtpUtil.sqlFileUpload(s1); |
| | | myAsyncService.FTP(s1); |
| | | } |
| | | } |
| | | }); |
| | |
| | | * @return |
| | | */ |
| | | @Override |
| | | public UserVO getUserInfoBySecurityNumber(String securityNumber) { |
| | | UserVO userVO = baseMapper.getUserInfoBySecurityNumber(securityNumber); |
| | | public UserVO getUserInfoBySecurityNumber(String securityNumber,String cardid) { |
| | | UserVO userVO = baseMapper.getUserInfoBySecurityNumber(securityNumber,cardid); |
| | | //查询派遣信息 |
| | | if (null!=userVO) { |
| | | DispatcherVO dispatcherVO = baseMapper.getUserDispatcherInfo(userVO.getId()); |
| | |
| | | */ |
| | | @Override |
| | | public void importQrCode(List<QrCodeExcel> data, Boolean isCovered, String deptId) { |
| | | // String url = "http://223.82.109.183:2080/securityInfo.html"; |
| | | // data.forEach(qrCodeExcel -> { |
| | | // if (null!=qrCodeExcel.getSecuritynumber()) { |
| | | // String encoded = null; |
| | | // try { |
| | | // //中文字符串编码 |
| | | // encoded = URLEncoder.encode(qrCodeExcel.getSecuritynumber(),"UTF-8"); |
| | | // } catch (UnsupportedEncodingException e) { |
| | | // e.printStackTrace(); |
| | | // } |
| | | // //url 拼接 |
| | | // String content = url + "?securityNumber=" + encoded; |
| | | // byte[] qrCodeImage = new byte[0]; |
| | | // try { |
| | | // //生成二维码字节流 |
| | | // qrCodeImage = QRCodeUtil.getQRCodeImage(content, 350, 350); |
| | | // } catch (WriterException e) { |
| | | // e.printStackTrace(); |
| | | // } catch (IOException e) { |
| | | // e.printStackTrace(); |
| | | // } |
| | | // String path = "D:\\QrCode\\"; |
| | | // FileOutputStream fileOutputStream = null; |
| | | // try { |
| | | // fileOutputStream = new FileOutputStream(path+qrCodeExcel.getSecuritynumber()+".png"); |
| | | // } catch (FileNotFoundException e) { |
| | | // e.printStackTrace(); |
| | | // } |
| | | // try { |
| | | // //图片下载到本地 |
| | | // fileOutputStream.write(qrCodeImage,0,qrCodeImage.length); |
| | | // fileOutputStream.flush(); |
| | | // fileOutputStream.close(); |
| | | // } catch (IOException e) { |
| | | // e.printStackTrace(); |
| | | // } |
| | | // } |
| | | // }); |
| | | String url = "http://223.82.109.183:2080/securityInfo.html"; |
| | | //二维码生成 |
| | | data.forEach(qrCodeExcel -> { |
| | | if (null!=qrCodeExcel.getSecuritynumber()) { |
| | | String encoded = null; |
| | | try { |
| | | //中文字符串编码 |
| | | encoded = URLEncoder.encode(qrCodeExcel.getSecuritynumber(),"UTF-8"); |
| | | } catch (UnsupportedEncodingException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | //url 拼接 |
| | | String content = url + "?securityNumber=" + encoded; |
| | | byte[] qrCodeImage = new byte[0]; |
| | | try { |
| | | //生成二维码字节流 |
| | | qrCodeImage = QRCodeUtil.getQRCodeImage(content, 350, 350); |
| | | } catch (WriterException e) { |
| | | e.printStackTrace(); |
| | | } catch (IOException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | String path = "D:\\QrCode\\"; |
| | | FileOutputStream fileOutputStream = null; |
| | | try { |
| | | fileOutputStream = new FileOutputStream(path+qrCodeExcel.getSecuritynumber()+".png"); |
| | | } catch (FileNotFoundException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | try { |
| | | //图片下载到本地 |
| | | fileOutputStream.write(qrCodeImage,0,qrCodeImage.length); |
| | | fileOutputStream.flush(); |
| | | fileOutputStream.close(); |
| | | } catch (IOException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | }); |
| | | //头像生成 |
| | | data.forEach(qrCodeExcel -> { |
| | | if (null!=qrCodeExcel.getSecuritynumber()) { |
| | | //查询用户头像url |
| | | User user = new User(); |
| | | user.setRealName(qrCodeExcel.getRealName()); |
| | | user.setStatus(1); |
| | | user.setIsDeleted(0); |
| | | user.setSecuritynumber(qrCodeExcel.getSecuritynumber()); |
| | | User user1 = this.getOne(Condition.getQueryWrapper(user)); |
| | | //url 拼接 |
| | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 年龄分布查询 |
| | | * @param user |
| | | * @return |
| | | */ |
| | | @Override |
| | | public Object getAgeStatistics(UserVO user) { |
| | | //获取年龄分布数据 |
| | | List<Integer> list = baseMapper.getAgeStatistics(user); |
| | | //返回 |
| | | return list; |
| | | } |
| | | |
| | | /** |
| | | * 查询登录密码还是 123456 的单位信息 |
| | | * @return |
| | | */ |
| | | @Override |
| | | public Object getNotUpdatePwdInfo() { |
| | | //查询角色为保安公司管理员的用户信息 |
| | | User user = new User(); |
| | | user.setRoleId("1414575196264300546"); |
| | | user.setStatus(1); |
| | | user.setIsDeleted(0); |
| | | List<User> list = this.list(Condition.getQueryWrapper(user)); |
| | | List<User> list1 = new ArrayList<>(); |
| | | //遍历 |
| | | if (list.size()>0){ |
| | | byte[] bytes = DigestUtil.decodeHex(list.get(0).getPassword()); |
| | | try { |
| | | System.out.println("解密的密码 = " + new String(bytes)); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | return list; |
| | | } |
| | | } |