| | |
| | | @Override |
| | | @Transactional(rollbackFor = RuntimeException.class) |
| | | public int addUser(SysUser user) { |
| | | ExStudent exStudent = new ExStudent(); |
| | | exStudent.setCompanyId(user.getCompanyId()); |
| | | exStudent.setName(user.getName()); |
| | | exStudent.setPassword(user.getPassword()); |
| | | exStudent.setDeptId(user.getDeptId()); |
| | | exStudent.setDuty(user.getDuty()); |
| | | exStudent.setSex(user.getSex()); |
| | | exStudent.setPhone(user.getPhone()); |
| | | |
| | | checkRequestData(user); |
| | | checkUserAllowed(user); |
| | | user.setCreateBy(SecurityUtils.getUsername()); |
| | |
| | | |
| | | batchSaveRole(user.getRoles(), user.getId(), false); |
| | | |
| | | ExStudent exStudent = new ExStudent(); |
| | | exStudent.setCompanyId(user.getCompanyId()); |
| | | exStudent.setName(user.getName()); |
| | | exStudent.setPassword(user.getPassword()); |
| | | exStudent.setDeptId(user.getDeptId()); |
| | | exStudent.setDuty(user.getDuty()); |
| | | exStudent.setSex(user.getSex()); |
| | | exStudent.setPhone(user.getPhone()); |
| | | exStudent.setUserId(user.getId()); |
| | | exStudentService.insertStudent(exStudent); |
| | | |
| | | if (row < 1) { |
| | |
| | | |
| | | long qualification1 = sysUsers.stream() |
| | | .filter(user -> user.getQualification() != null) |
| | | .filter(user -> user.getQualification().equals("1")) |
| | | .filter(user -> ("1").equals(user.getQualification().toString())) |
| | | .count(); |
| | | map.put("qualification1", qualification1);//学历1、高中及以下 |
| | | long qualification2 = sysUsers.stream() |
| | | .filter(user -> user.getQualification() != null) |
| | | .filter(user -> user.getQualification().equals("2")) |
| | | .filter(user -> ("2").equals(user.getQualification().toString())) |
| | | .count(); |
| | | map.put("qualification2", qualification2);//学历2、专科 |
| | | long qualification3 = sysUsers.stream() |
| | | .filter(user -> user.getQualification() != null) |
| | | .filter(user -> user.getQualification().equals("3")) |
| | | .filter(user -> ("3").equals(user.getQualification().toString())) |
| | | .count(); |
| | | map.put("qualification3", qualification3);//学历3本科 |
| | | long qualification4 = sysUsers.stream() |
| | | .filter(user -> user.getQualification() != null) |
| | | .filter(user -> user.getQualification().equals("4")) |
| | | .filter(user -> ("4").equals(user.getQualification().toString())) |
| | | .count(); |
| | | map.put("qualification4", qualification4);//学历4硕士 |
| | | |
| | | long qualification5 = sysUsers.stream() |
| | | .filter(user -> user.getQualification() != null) |
| | | .filter(user -> user.getQualification().equals("5")) |
| | | .filter(user -> ("5").equals(user.getQualification().toString())) |
| | | .count(); |
| | | map.put("qualification5", qualification5);//学历5博士及以上 |
| | | |
| | |
| | | map.put("qualificationBK", countBk); |
| | | double bachelorRatio = totalUser > 0 ? (double) countBk / totalUser * 100 : 0; |
| | | //本科占比 |
| | | map.put("qualificationBKRatio", String.format("%.2f%%", bachelorRatio)); |
| | | map.put("qualificationBKRatio", String.format("%.2f", bachelorRatio)); |
| | | |
| | | long countJS = sysUsers.stream() |
| | | .filter(user -> user.getPersonType() != null) |
| | |
| | | .count(); |
| | | map.put("personTypeJS", countJS); |
| | | double jsRatio = totalUser > 0 ? (double) countJS / totalUser * 100 : 0; |
| | | map.put("jsRatio", String.format("%.2f%%", jsRatio)); |
| | | map.put("jsRatio", String.format("%.2f", jsRatio)); |
| | | double averageAge = sysUsers.stream() |
| | | .filter(user -> user.getAge() != null) // 过滤年龄为null的用户 |
| | | .mapToInt(SysUser::getAge) // 提取年龄值 |
| | |
| | | .count(); |
| | | map.put("age40", countAge40); |
| | | double age40Ratio = totalUser > 0 ? (double) countAge40 / totalUser * 100 : 0; |
| | | map.put("age40Ratio", String.format("%.2f%%", age40Ratio)); |
| | | map.put("age40Ratio", String.format("%.2f", age40Ratio)); |
| | | long countAge30 = totalUser - countAge40; |
| | | map.put("age1840", countAge30);//18-40 |
| | | double age30Ratio = totalUser > 0 ? (double) countAge30 / totalUser * 100 : 0; |
| | | map.put("age1840Ratio", String.format("%.2f%%", age30Ratio)); |
| | | map.put("age1840Ratio", String.format("%.2f", age30Ratio)); |
| | | |
| | | return Collections.emptyMap(); |
| | | return map; |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public boolean checkPhoneUnique(SysUser user) { |
| | | Long userId = user.getId() == null ? -1L : user.getId(); |