From 34d203c93e776c433b7b6614a77ad1d61c7035dd Mon Sep 17 00:00:00 2001
From: “djh” <“3298565835@qq.com”>
Date: 星期四, 13 十一月 2025 17:14:11 +0800
Subject: [PATCH] 修改新增

---
 multi-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java |   39 +++++++++++++++++++++------------------
 1 files changed, 21 insertions(+), 18 deletions(-)

diff --git a/multi-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java b/multi-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java
index 86d8f7a..681a283 100644
--- a/multi-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java
+++ b/multi-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java
@@ -139,14 +139,7 @@
     @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());
@@ -155,6 +148,15 @@
 
         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) {
@@ -288,28 +290,28 @@
 
         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博士及以上
 
@@ -340,7 +342,7 @@
         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)
@@ -348,7 +350,7 @@
                 .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)              // 提取年龄值
@@ -362,15 +364,16 @@
                 .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();

--
Gitblit v1.9.2