From 2174b22bbbb45284765a23b8189df59583c65d29 Mon Sep 17 00:00:00 2001
From: 胡仁荣 <897853850@qq.com>
Date: 星期五, 04 八月 2023 14:33:47 +0800
Subject: [PATCH] 统计人数

---
 src/main/java/com/qxueyou/scc/user/service/impl/UserService.java |   63 +++++++++++++++++++++++++++----
 1 files changed, 54 insertions(+), 9 deletions(-)

diff --git a/src/main/java/com/qxueyou/scc/user/service/impl/UserService.java b/src/main/java/com/qxueyou/scc/user/service/impl/UserService.java
index 3610bfb..ad29f25 100644
--- a/src/main/java/com/qxueyou/scc/user/service/impl/UserService.java
+++ b/src/main/java/com/qxueyou/scc/user/service/impl/UserService.java
@@ -1,7 +1,9 @@
 package com.qxueyou.scc.user.service.impl;
 
 import java.util.List;
+import java.util.UUID;
 
+import com.qxueyou.scc.base.dao.CommonDAO;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -20,6 +22,7 @@
 import com.qxueyou.scc.user.model.User;
 import com.qxueyou.scc.user.model.UserReRoleUser;
 import com.qxueyou.scc.user.service.IUserService;
+import org.springframework.util.DigestUtils;
 import org.springframework.web.context.request.RequestContextHolder;
 import org.springframework.web.context.request.ServletRequestAttributes;
 
@@ -36,6 +39,9 @@
 
     @Autowired
     IOrganizationService organizationService;
+
+    @Autowired
+    private CommonDAO commonDAO;
 
     /**
      * 鍒濆鍖栫敤鎴穡rapper
@@ -85,13 +91,18 @@
     }
 
     private User newUser(String name, String account, String mobilePhone, String password, Boolean sex, String orgId) {
-
+        //闅忔満瀛楃涓�
+        String salt= UUID.randomUUID().toString();
         User user = new User();
         TraceUtils.setCreateTrace(user);
         user.setAccount(account);
         user.setName(name);
+        //鐩愬��
+        user.setSalt(salt);
+        //瀵瑰瘑鐮佽繘琛屽姞瀵嗗鐞�
+        String newPassword= DigestUtils.md5DigestAsHex((salt+password).getBytes());
+        user.setPassword(newPassword);
         user.setMobilePhone(mobilePhone);
-        user.setPassword(password);
         user.setSex(sex);
         user.setOrganizationId(orgId);
         save(user);
@@ -124,12 +135,25 @@
 
     @Override
     public Result updatePassword(String userId, String usedPass, String pass) {
+        String hql = null;
+
+        List<Object> params = null;
+
         User user = read(User.class, userId);
+        //闅忔満瀛楃涓�
+        String salt= UUID.randomUUID().toString();
+
+        String salts = user.getSalt();
+        //鐩愬��
+        user.setSalt(salt);
+        //瀵瑰瘑鐮佽繘琛屽姞瀵嗗鐞�
+        String newPassword= DigestUtils.md5DigestAsHex((salt+pass).getBytes());
+        String newPasswords= DigestUtils.md5DigestAsHex((salts+usedPass).getBytes());
         if (StringUtils.isNotBlank(usedPass) && StringUtils.isNotBlank(pass)) {
-            if (!user.getPassword().equals(usedPass)) {
+            if (!user.getPassword().equals(newPasswords)) {
                 return new Result(false, "杈撳叆鐨勬棫瀵嗙爜閿欒");
             }
-            user.setPassword(pass);
+            user.setPassword(newPassword);
         }
         TraceUtils.setUpdateTrace(user);
         save(user);
@@ -177,8 +201,14 @@
     public Result updatePassword(String userId, String password) {
         User user = read(User.class, userId);
 
+        //闅忔満瀛楃涓�
+        String salt= UUID.randomUUID().toString();
+        //鐩愬��
+        user.setSalt(salt);
+        //瀵瑰瘑鐮佽繘琛屽姞瀵嗗鐞�
+        String newPassword= DigestUtils.md5DigestAsHex((salt+password).getBytes());
         TraceUtils.setUpdateTrace(user);
-        user.setPassword(password);
+        user.setPassword(newPassword);
 
         save(user);
 
@@ -217,13 +247,18 @@
     @Override
     public Result updateUser(String userId, String name, String account, String mobilePhone, String password,
                              Boolean sex) {
-
         User dbUser = read(User.class, userId);
-
+        String salt = dbUser.getSalt();
+        if(salt == null){
+            salt= UUID.randomUUID().toString();
+            dbUser.setSalt(salt);
+            salt = dbUser.getSalt();
+        }
+		String newPassword= DigestUtils.md5DigestAsHex((salt+password).getBytes());
         if (dbUser.getAccount().equals(account)) {
             dbUser.setName(name);
             dbUser.setMobilePhone(mobilePhone);
-            dbUser.setPassword(password);
+            dbUser.setPassword(newPassword);
             TraceUtils.setCreateTrace(dbUser);
             save(dbUser);
             return new Result(true, "success");
@@ -236,7 +271,7 @@
         dbUser.setAccount(account);
         dbUser.setName(name);
         dbUser.setMobilePhone(mobilePhone);
-        dbUser.setPassword(password);
+        dbUser.setPassword(newPassword);
         TraceUtils.setCreateTrace(dbUser);
         save(dbUser);
         return new Result(true, "success");
@@ -247,4 +282,14 @@
         return findCount("from User where account = ?", CollectionUtils.newList(account)) > 0;
     }
 
+    @Override
+    public Result countUser() {
+        String hql = "from count User where sex=? and deleteFlag is false";
+        return new Result(true,findCount(hql,CollectionUtils.newList(1)));
+    }
+    @Override
+    public Result countUsersex() {
+        String hql = "from count User where sex=? and deleteFlag is false";
+        return new Result(true,findCount(hql,CollectionUtils.newList(0)));
+    }
 }

--
Gitblit v1.8.0