浏览代码

ユーザ管理

quyx@nextosd.com 2 月之前
父节点
当前提交
5e66dbcbea
共有 18 个文件被更改,包括 251 次插入155 次删除
  1. 9 11
      new-react-admin-ui/src/pages/usermanagements/UserManagementsList.tsx
  2. 3 1
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
  3. 29 28
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java
  4. 5 2
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java
  5. 1 1
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/TUserController.java
  6. 5 0
      ruoyi-common/pom.xml
  7. 117 0
      ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/TUser.java
  8. 16 5
      ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginUser.java
  9. 1 1
      ruoyi-common/src/main/java/com/ruoyi/common/enums/UserStatus.java
  10. 4 2
      ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/DataScopeAspect.java
  11. 4 2
      ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPasswordService.java
  12. 6 4
      ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java
  13. 11 9
      ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/UserDetailsServiceImpl.java
  14. 0 64
      ruoyi-system/src/main/java/com/ruoyi/system/domain/TUser.java
  15. 9 3
      ruoyi-system/src/main/java/com/ruoyi/system/mapper/TUserMapper.java
  16. 9 2
      ruoyi-system/src/main/java/com/ruoyi/system/service/ITUserService.java
  17. 13 16
      ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TUserServiceImpl.java
  18. 9 4
      ruoyi-system/src/main/resources/mapper/system/TUserMapper.xml

+ 9 - 11
new-react-admin-ui/src/pages/usermanagements/UserManagementsList.tsx

@@ -171,7 +171,7 @@ export const usermanagementsList = () => {
       const formattedData = response.data.map((user: any) => ({
         userId: user.userId || '',
         password: user.password || '',
-        userNm: user.userNm || '',
+        userName: user.userName || '',
       }));
       
       setRowData(formattedData);
@@ -200,7 +200,7 @@ export const usermanagementsList = () => {
     setIsEditing(false);
     setEditingData({
       userId: '',
-      userNm: '',
+      userName: '',
       password: ''
     });
   };
@@ -209,7 +209,7 @@ export const usermanagementsList = () => {
   const handleDelete = async (data: any) => {
     if (isDeleting) return; 
     
-    if (window.confirm(`确定要删除用户 ${data.userNm} (${data.userId}) 吗?`)) {
+    if (window.confirm(`确定要删除用户 ${data.userName} (${data.userId}) 吗?`)) {
       setIsDeleting(true);
       try {
         await dataProvider.delete('usermanagements', {
@@ -269,7 +269,7 @@ export const usermanagementsList = () => {
   const handleAddSave = async () => {
     try {
 
-       if (!editingData.userId || !editingData.userNm || !editingData.password) {
+       if (!editingData.userId || !editingData.userName || !editingData.password) {
         alert("ユーザID、ユーザ名及びパスワードは必須です");
         return;
       }
@@ -322,7 +322,7 @@ export const usermanagementsList = () => {
       minWidth: 100,
     },
     {
-      field: "userNm",
+      field: "userName",
       headerClass: "header-center",
       headerName: "ユーザ名",
       cellRenderer: (params: ICellRendererParams) => (
@@ -393,8 +393,8 @@ export const usermanagementsList = () => {
           <label>ユーザ名</label>
           <input 
               type="text" 
-              value={editingData.userNm || ''}
-              onChange={(e) => setEditingData({...editingData, userNm: e.target.value})}
+              value={editingData.userName || ''}
+              onChange={(e) => setEditingData({...editingData, userName: e.target.value})}
               maxLength={50}
             />
           <br/>
@@ -403,7 +403,6 @@ export const usermanagementsList = () => {
               type="password" 
               value={editingData.password || ''}
               onChange={(e) => setEditingData({...editingData, password: e.target.value})}
-              maxLength={8}
             />
           <button className="issue-button" style={{ marginLeft: '30px' }}>発行</button>
           <div className="user-edit-buttons">
@@ -429,8 +428,8 @@ export const usermanagementsList = () => {
           <label>ユーザ名</label>
           <input 
               type="text" 
-              value={editingData.userNm || ''}
-              onChange={(e) => setEditingData({...editingData, userNm: e.target.value})}
+              value={editingData.userName || ''}
+              onChange={(e) => setEditingData({...editingData, userName: e.target.value})}
               placeholder=""
               maxLength={50}
             />
@@ -441,7 +440,6 @@ export const usermanagementsList = () => {
               value={editingData.password || ''}
               onChange={(e) => setEditingData({...editingData, password: e.target.value})}
               placeholder=""
-              maxLength={8}
             />
           <button className="issue-button" style={{ marginLeft: '30px' }}>発行</button>
           <div className="user-edit-buttons">

+ 3 - 1
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java

@@ -2,6 +2,8 @@ package com.ruoyi.web.controller.system;
 
 import java.util.List;
 import java.util.Set;
+
+import com.ruoyi.common.core.domain.entity.TUser;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -59,7 +61,7 @@ public class SysLoginController
     @GetMapping("getInfo")
     public AjaxResult getInfo()
     {
-        SysUser user = SecurityUtils.getLoginUser().getUser();
+       TUser user = SecurityUtils.getLoginUser().getUser();
         // 角色集合
         Set<String> roles = permissionService.getRolePermission(user);
         // 权限集合

+ 29 - 28
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysProfileController.java

@@ -1,5 +1,6 @@
 package com.ruoyi.web.controller.system;
 
+import com.ruoyi.common.core.domain.entity.TUser;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -45,7 +46,7 @@ public class SysProfileController extends BaseController
     public AjaxResult profile()
     {
         LoginUser loginUser = getLoginUser();
-        SysUser user = loginUser.getUser();
+        TUser user = loginUser.getUser();
         AjaxResult ajax = AjaxResult.success(user);
         ajax.put("roleGroup", userService.selectUserRoleGroup(loginUser.getUsername()));
         return ajax;
@@ -54,32 +55,32 @@ public class SysProfileController extends BaseController
     /**
      * 修改用户
      */
-    @Log(title = "个人信息", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult updateProfile(@RequestBody SysUser user)
-    {
-        LoginUser loginUser = getLoginUser();
-        SysUser currentUser = loginUser.getUser();
-        currentUser.setNickName(user.getNickName());
-        currentUser.setEmail(user.getEmail());
-        currentUser.setPhonenumber(user.getPhonenumber());
-        currentUser.setSex(user.getSex());
-        if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(currentUser))
-        {
-            return error("修改用户'" + loginUser.getUsername() + "'失败,手机号码已存在");
-        }
-        if (StringUtils.isNotEmpty(user.getEmail()) && !userService.checkEmailUnique(currentUser))
-        {
-            return error("修改用户'" + loginUser.getUsername() + "'失败,邮箱账号已存在");
-        }
-        if (userService.updateUserProfile(currentUser) > 0)
-        {
-            // 更新缓存用户信息
-            tokenService.setLoginUser(loginUser);
-            return success();
-        }
-        return error("修改个人信息异常,请联系管理员");
-    }
+//    @Log(title = "个人信息", businessType = BusinessType.UPDATE)
+//    @PutMapping
+//    public AjaxResult updateProfile(@RequestBody SysUser user)
+//    {
+//        LoginUser loginUser = getLoginUser();
+//        TUser currentUser = loginUser.getUser();
+//        currentUser.setNickName(user.getNickName());
+//        currentUser.setEmail(user.getEmail());
+//        currentUser.setPhonenumber(user.getPhonenumber());
+//        currentUser.setSex(user.getSex());
+//        if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(currentUser))
+//        {
+//            return error("修改用户'" + loginUser.getUsername() + "'失败,手机号码已存在");
+//        }
+//        if (StringUtils.isNotEmpty(user.getEmail()) && !userService.checkEmailUnique(currentUser))
+//        {
+//            return error("修改用户'" + loginUser.getUsername() + "'失败,邮箱账号已存在");
+//        }
+//        if (userService.updateUserProfile(currentUser) > 0)
+//        {
+//            // 更新缓存用户信息
+//            tokenService.setLoginUser(loginUser);
+//            return success();
+//        }
+//        return error("修改个人信息异常,请联系管理员");
+//    }
 
     /**
      * 重置密码
@@ -126,7 +127,7 @@ public class SysProfileController extends BaseController
                 AjaxResult ajax = AjaxResult.success();
                 ajax.put("imgUrl", avatar);
                 // 更新缓存用户头像
-                loginUser.getUser().setAvatar(avatar);
+//                loginUser.getUser().setAvatar(avatar);
                 tokenService.setLoginUser(loginUser);
                 return ajax;
             }

+ 5 - 2
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java

@@ -2,6 +2,8 @@ package com.ruoyi.web.controller.system;
 
 import java.util.ArrayList;
 import java.util.List;
+
+import com.ruoyi.system.service.ITUserService;
 import jakarta.servlet.http.HttpServletResponse;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -50,6 +52,7 @@ public class SysRoleController extends BaseController
 
     @Autowired
     private ISysUserService userService;
+    private ITUserService tUserdService;
 
     @PreAuthorize("@ss.hasPermi('system:role:list')")
     @GetMapping("/list")
@@ -124,11 +127,11 @@ public class SysRoleController extends BaseController
         
         if (roleService.updateRole(role) > 0)
         {
-            // 更新缓存用户权限
+            // 更新缓存用户权限userdService
             LoginUser loginUser = getLoginUser();
             if (StringUtils.isNotNull(loginUser.getUser()) && !loginUser.getUser().isAdmin())
             {
-                loginUser.setUser(userService.selectUserByUserName(loginUser.getUser().getUserName()));
+                loginUser.setUser(tUserdService.selectUserByUserName(loginUser.getUser().getUserName()));
                 loginUser.setPermissions(permissionService.getMenuPermission(loginUser.getUser()));
                 tokenService.setLoginUser(loginUser);
             }

+ 1 - 1
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/TUserController.java

@@ -3,10 +3,10 @@ package com.ruoyi.web.controller.system;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.core.controller.BaseController;
 import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.domain.entity.TUser;
 import com.ruoyi.common.core.page.TableDataInfo;
 import com.ruoyi.common.enums.BusinessType;
 import com.ruoyi.common.utils.SecurityUtils;
-import com.ruoyi.system.domain.TUser;
 import com.ruoyi.system.service.ITUserService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.annotation.Validated;

+ 5 - 0
ruoyi-common/pom.xml

@@ -124,6 +124,11 @@
             <groupId>jakarta.servlet</groupId>
             <artifactId>jakarta.servlet-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.projectlombok</groupId>
+            <artifactId>lombok</artifactId>
+            <scope>provided</scope>
+        </dependency>
 
     </dependencies>
 

+ 117 - 0
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/TUser.java

@@ -0,0 +1,117 @@
+package com.ruoyi.common.core.domain.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+import com.ruoyi.common.core.domain.BaseEntity;
+import lombok.EqualsAndHashCode;
+import lombok.Getter;
+import lombok.Setter;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 調査アンケート主(時間制御と状態管理を含む)对象 t_user
+ *
+ * @author ruoyi
+ * @date 2025-11-26
+ */
+@EqualsAndHashCode(callSuper = true)
+@Getter
+@Setter
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class TUser extends BaseEntity implements Serializable
+{
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+    /** ユーザID */
+    private String userId;
+
+    /** ユーザ名 */
+    private String userName;
+
+    /** パスワード */
+    private String password;
+
+    /** 廃止フラグ */
+    private String haisiFlg;
+
+    /** 廃止日 */
+    private String haisiDt;
+
+    /** 登録日時 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date insDt;
+
+    /** 登録社員コード */
+    private String insSyainCd;
+
+    /**登録プログラムID */
+    private String insPgId;
+
+    /** 更新日時 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date updDt;
+
+    /** 更新社員コード */
+    private String updSyainCd;
+
+    /** 更新プログラムID */
+    private String updPgId;
+
+    /** 角色列表 - 初始化为空列表避免null */
+    private List<SysRole> roles = new ArrayList<>();
+
+    // 无参构造函数
+    public TUser() {
+        super();
+        this.roles = new ArrayList<>();
+    }
+
+    /**
+     * 判断是否为管理员
+     */
+    public boolean isAdmin()
+    {
+        return isAdmin(this.userId);
+    }
+
+    /**
+     * 判断是否为管理员
+     */
+    public static boolean isAdmin(Long userId)
+    {
+        return userId != null && 1L == userId;
+    }
+
+    /**
+     * 判断是否为管理员
+     */
+    public static boolean isAdmin(String userId) {
+        if (userId == null || userId.trim().isEmpty()) {
+            return false;
+        }
+        try {
+            Long userIdLong = Long.valueOf(userId.trim());
+            return isAdmin(userIdLong);
+        } catch (NumberFormatException e) {
+            return false;
+        }
+    }
+
+    /**
+     * 获取角色列表
+     */
+    public List<SysRole> getRoles()
+    {
+        return roles != null ? roles : Collections.emptyList();
+    }
+}

+ 16 - 5
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginUser.java

@@ -3,6 +3,7 @@ package com.ruoyi.common.core.domain.model;
 import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
 import com.ruoyi.common.core.domain.entity.SysUser;
+import com.ruoyi.common.core.domain.entity.TUser;
 import org.springframework.security.core.GrantedAuthority;
 import org.springframework.security.core.userdetails.UserDetails;
 import java.util.Collection;
@@ -68,25 +69,35 @@ public class LoginUser implements UserDetails
     /**
      * 用户信息
      */
-    private SysUser user;
+    private TUser user;
 
     public LoginUser()
     {
     }
 
-    public LoginUser(SysUser user, Set<String> permissions)
+    public LoginUser(TUser user, Set<String> permissions)
     {
         this.user = user;
         this.permissions = permissions;
     }
 
-    public LoginUser(Long userId, SysUser user, Set<String> permissions)
+    public LoginUser(Long userId, TUser user, Set<String> permissions)
     {
         this.userId = userId;
         this.user = user;
         this.permissions = permissions;
     }
 
+    public LoginUser(String userId, TUser user, Set<String> menuPermission) {
+        try {
+            this.userId = Long.valueOf(userId);
+        } catch (NumberFormatException e) {
+            this.userId = null;
+        }
+        this.user = user;
+        this.permissions = menuPermission;
+    }
+
     public Long getUserId()
     {
         return userId;
@@ -238,12 +249,12 @@ public class LoginUser implements UserDetails
         this.permissions = permissions;
     }
 
-    public SysUser getUser()
+    public TUser getUser()
     {
         return user;
     }
 
-    public void setUser(SysUser user)
+    public void setUser(TUser user)
     {
         this.user = user;
     }

+ 1 - 1
ruoyi-common/src/main/java/com/ruoyi/common/enums/UserStatus.java

@@ -7,7 +7,7 @@ package com.ruoyi.common.enums;
  */
 public enum UserStatus
 {
-    OK("0", "正常"), DISABLE("1", "停用"), DELETED("2", "删除");
+    OK("0", "正常"), DISABLE("1", "停用"), DELETED("1", "删除");
 
     private final String code;
     private final String info;

+ 4 - 2
ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/DataScopeAspect.java

@@ -2,6 +2,8 @@ package com.ruoyi.framework.aspectj;
 
 import java.util.ArrayList;
 import java.util.List;
+
+import com.ruoyi.common.core.domain.entity.TUser;
 import org.aspectj.lang.JoinPoint;
 import org.aspectj.lang.annotation.Aspect;
 import org.aspectj.lang.annotation.Before;
@@ -59,7 +61,7 @@ public class DataScopeAspect
         LoginUser loginUser = SecurityUtils.getLoginUser();
         if (StringUtils.isNotNull(loginUser))
         {
-            SysUser currentUser = loginUser.getUser();
+            TUser currentUser = loginUser.getUser();
             // 如果是超级管理员,则不过滤数据
             if (StringUtils.isNotNull(currentUser) && !currentUser.isAdmin())
             {
@@ -77,7 +79,7 @@ public class DataScopeAspect
      * @param userAlias 用户别名
      * @param permission 权限字符
      */
-    public static void dataScopeFilter(JoinPoint joinPoint, SysUser user, String userAlias, String permission)
+    public static void dataScopeFilter(JoinPoint joinPoint, TUser user, String userAlias, String permission)
     {
         StringBuilder sqlString = new StringBuilder();
         List<String> conditions = new ArrayList<String>();

+ 4 - 2
ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPasswordService.java

@@ -1,6 +1,8 @@
 package com.ruoyi.framework.web.service;
 
 import java.util.concurrent.TimeUnit;
+
+import com.ruoyi.common.core.domain.entity.TUser;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.security.core.Authentication;
@@ -41,7 +43,7 @@ public class SysPasswordService
         return CacheConstants.PWD_ERR_CNT_KEY + username;
     }
 
-    public void validate(SysUser user)
+    public void validate(TUser user)
     {
         Authentication usernamePasswordAuthenticationToken = AuthenticationContextHolder.getContext();
         String username = usernamePasswordAuthenticationToken.getName();
@@ -71,7 +73,7 @@ public class SysPasswordService
         }
     }
 
-    public boolean matches(SysUser user, String rawPassword)
+    public boolean matches(TUser user, String rawPassword)
     {
         return SecurityUtils.matchesPassword(rawPassword, user.getPassword());
     }

+ 6 - 4
ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysPermissionService.java

@@ -3,6 +3,8 @@ package com.ruoyi.framework.web.service;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
+
+import com.ruoyi.common.core.domain.entity.TUser;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.util.CollectionUtils;
@@ -33,7 +35,7 @@ public class SysPermissionService
      * @param user 用户信息
      * @return 角色权限信息
      */
-    public Set<String> getRolePermission(SysUser user)
+    public Set<String> getRolePermission(TUser user)
     {
         Set<String> roles = new HashSet<String>();
         // 管理员拥有所有权限
@@ -43,7 +45,7 @@ public class SysPermissionService
         }
         else
         {
-            roles.addAll(roleService.selectRolePermissionByUserId(user.getUserId()));
+            roles.addAll(roleService.selectRolePermissionByUserId(Long.valueOf(user.getUserId())));
         }
         return roles;
     }
@@ -54,7 +56,7 @@ public class SysPermissionService
      * @param user 用户信息
      * @return 菜单权限信息
      */
-    public Set<String> getMenuPermission(SysUser user)
+    public Set<String> getMenuPermission(TUser user)
     {
         Set<String> perms = new HashSet<String>();
         // 管理员拥有所有权限
@@ -80,7 +82,7 @@ public class SysPermissionService
             }
             else
             {
-                perms.addAll(menuService.selectMenuPermsByUserId(user.getUserId()));
+                perms.addAll(menuService.selectMenuPermsByUserId(Long.valueOf(user.getUserId())));
             }
         }
         return perms;

+ 11 - 9
ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/UserDetailsServiceImpl.java

@@ -1,5 +1,7 @@
 package com.ruoyi.framework.web.service;
 
+import com.ruoyi.common.core.domain.entity.TUser;
+import com.ruoyi.system.service.ITUserService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -26,7 +28,7 @@ public class UserDetailsServiceImpl implements UserDetailsService
     private static final Logger log = LoggerFactory.getLogger(UserDetailsServiceImpl.class);
 
     @Autowired
-    private ISysUserService userService;
+    private ITUserService userService;
     
     @Autowired
     private SysPasswordService passwordService;
@@ -37,29 +39,29 @@ public class UserDetailsServiceImpl implements UserDetailsService
     @Override
     public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException
     {
-        SysUser user = userService.selectUserByUserName(username);
+        TUser user = userService.selectUserByUserName(username);
         if (StringUtils.isNull(user))
         {
             log.info("登录用户:{} 不存在.", username);
             throw new ServiceException(MessageUtils.message("user.not.exists"));
         }
-        else if (UserStatus.DELETED.getCode().equals(user.getDelFlag()))
+        else if (UserStatus.DELETED.getCode().equals(user.getHaisiFlg()))
         {
             log.info("登录用户:{} 已被删除.", username);
             throw new ServiceException(MessageUtils.message("user.password.delete"));
         }
-        else if (UserStatus.DISABLE.getCode().equals(user.getStatus()))
-        {
-            log.info("登录用户:{} 已被停用.", username);
-            throw new ServiceException(MessageUtils.message("user.blocked"));
-        }
+//        else if (UserStatus.DISABLE.getCode().equals(user.getStatus()))
+//        {
+//            log.info("登录用户:{} 已被停用.", username);
+//            throw new ServiceException(MessageUtils.message("user.blocked"));
+//        }
 
         passwordService.validate(user);
 
         return createLoginUser(user);
     }
 
-    public UserDetails createLoginUser(SysUser user)
+    public UserDetails createLoginUser(TUser user)
     {
         return new LoginUser(user.getUserId(), user, permissionService.getMenuPermission(user));
     }

+ 0 - 64
ruoyi-system/src/main/java/com/ruoyi/system/domain/TUser.java

@@ -1,64 +0,0 @@
-package com.ruoyi.system.domain;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.ruoyi.common.core.domain.BaseEntity;
-import lombok.EqualsAndHashCode;
-import lombok.Getter;
-import lombok.Setter;
-import org.springframework.format.annotation.DateTimeFormat;
-
-import java.io.Serial;
-import java.util.Date;
-
-
-/**
- * 調査アンケート主(時間制御と状態管理を含む)对象 t_user
- *
- * @author ruoyi
- * @date 2025-11-26
- */
-@EqualsAndHashCode(callSuper = true)
-@Getter
-@Setter
-public class TUser extends BaseEntity
-{
-    @Serial
-    private static final long serialVersionUID = 1L;
-
-    /** ユーザID */
-    private String userId;
-
-    /** ユーザ名 */
-    private String userNm;
-
-    /** パスワード */
-    private String password;
-
-    /** 廃止フラグ */
-    private String haisiFlg;
-
-    /** 廃止日 */
-    private String haisiDt;
-
-    /** 登録日時 */
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    private Date insDt;
-
-    /** 登録社員コード */
-    private String insSyainCd;
-
-    /**登録プログラムID */
-    private String insPgId;
-
-    /** 更新日時 */
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    private Date updDt;
-
-    /** 更新社員コード */
-    private String updSyainCd;
-
-    /** 更新プログラムID */
-    private String updPgId;
-}

+ 9 - 3
ruoyi-system/src/main/java/com/ruoyi/system/mapper/TUserMapper.java

@@ -1,8 +1,6 @@
 package com.ruoyi.system.mapper;
 
-import com.ruoyi.common.core.domain.entity.SysUser;
-import com.ruoyi.system.domain.TUser;
-import org.apache.ibatis.annotations.Param;
+import com.ruoyi.common.core.domain.entity.TUser;
 
 import java.util.List;
 
@@ -22,6 +20,14 @@ public interface TUserMapper
     public List<TUser> selectUserList(TUser tUser);
 
     /**
+     * 通过用户名查询用户
+     *
+     * @param userName 用户名
+     * @return 用户对象信息
+     */
+    public TUser selectUserByUserName(String userName);
+
+    /**
      * 新增用户信息
      * 
      * @param user 用户信息

+ 9 - 2
ruoyi-system/src/main/java/com/ruoyi/system/service/ITUserService.java

@@ -1,7 +1,6 @@
 package com.ruoyi.system.service;
 
-import com.ruoyi.common.core.domain.entity.SysUser;
-import com.ruoyi.system.domain.TUser;
+import com.ruoyi.common.core.domain.entity.TUser;
 
 import java.util.List;
 
@@ -21,6 +20,14 @@ public interface ITUserService
     public List<TUser> selectUserList(TUser user);
 
     /**
+     * 通过用户名查询用户
+     *
+     * @param userName 用户名
+     * @return 用户对象信息
+     */
+    public TUser selectUserByUserName(String userName);
+
+    /**
      * 新增用户信息
      * 
      * @param user 用户信息

+ 13 - 16
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TUserServiceImpl.java

@@ -1,22 +1,10 @@
 package com.ruoyi.system.service.impl;
 
-import com.ruoyi.common.annotation.DataScope;
-import com.ruoyi.common.constant.UserConstants;
-import com.ruoyi.common.core.domain.entity.SysRole;
-import com.ruoyi.common.core.domain.entity.SysUser;
-import com.ruoyi.common.exception.ServiceException;
-import com.ruoyi.common.utils.SecurityUtils;
-import com.ruoyi.common.utils.StringUtils;
-import com.ruoyi.common.utils.bean.BeanValidators;
-import com.ruoyi.common.utils.spring.SpringUtils;
-import com.ruoyi.system.domain.SysUserRole;
-import com.ruoyi.system.domain.TUser;
+import com.ruoyi.common.core.domain.entity.TUser;
 import com.ruoyi.system.mapper.SysRoleMapper;
-import com.ruoyi.system.mapper.SysUserMapper;
 import com.ruoyi.system.mapper.SysUserRoleMapper;
 import com.ruoyi.system.mapper.TUserMapper;
 import com.ruoyi.system.service.ISysConfigService;
-import com.ruoyi.system.service.ISysUserService;
 import com.ruoyi.system.service.ITUserService;
 import jakarta.validation.Validator;
 import org.slf4j.Logger;
@@ -24,11 +12,8 @@ import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
 
-import java.util.ArrayList;
 import java.util.List;
-import java.util.stream.Collectors;
 
 /**
  * 用户 业务层处理
@@ -68,6 +53,18 @@ public class TUserServiceImpl implements ITUserService
     }
 
     /**
+     * 通过用户名查询用户
+     *
+     * @param userName 用户名
+     * @return 用户对象信息
+     */
+    @Override
+    public TUser selectUserByUserName(String userName)
+    {
+        return userMapper.selectUserByUserName(userName);
+    }
+
+    /**
      * 新增保存用户信息
      * 
      * @param user 用户信息

+ 9 - 4
ruoyi-system/src/main/resources/mapper/system/TUserMapper.xml

@@ -6,7 +6,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 
     <resultMap type="TUser" id="TUserResult">
         <id     property="userId"       column="user_id"      />
-        <result property="userNm"     column="user_nm"    />
+        <result property="userName"     column="user_nm"    />
         <result property="password"     column="password"     />
         <result property="haisiFlg"       column="haisi_flg"       />
         <result property="haisiDt"      column="haisi_dt"     />
@@ -28,10 +28,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		ORDER BY t.user_id ASC
 	</select>
 
+	<select id="selectUserByUserName" parameterType="String" resultMap="TUserResult">
+		<include refid="selectUserVo"/>
+		where t.user_nm = #{userName} and t.haisi_flg = '0'
+	</select>
+
 	<insert id="insertUser" parameterType="TUser" useGeneratedKeys="true" keyProperty="userId">
 		insert into t_user(
 		<if test="userId != null and userId != 0">user_id,</if>
-		<if test="userNm != null and userNm != ''">user_nm,</if>
+		<if test="userName != null and userName != ''">user_nm,</if>
 		<if test="password != null and password != ''">password,</if>
 		<if test="haisiFlg != null and haisiFlg != ''">haisi_flg,</if>
 		<if test="haisiDt != null and haisiDt != ''">haisi_dt,</if>
@@ -43,7 +48,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<if test="updPgId != null and updPgId != ''">,upd_pg_id</if>
 		)values(
 		<if test="userId != null and userId != ''">#{userId},</if>
-		<if test="userNm != null and userNm != ''">#{userNm},</if>
+		<if test="userName != null and userName != ''">#{userName},</if>
 		<if test="password != null and password != ''">#{password},</if>
 		<if test="haisiFlg != null and haisiFlg != ''">#{haisiFlg},</if>
 		<if test="haisiDt != null and haisiDt != ''">#{haisiDt},</if>
@@ -59,7 +64,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	<update id="updateUser" parameterType="TUser">
  		update t_user
  		<set>
- 			<if test="userNm != null and userNm != ''">user_nm = #{userNm},</if>
+ 			<if test="userName != null and userName != ''">user_nm = #{userName},</if>
  			<if test="password != null and password != ''">password = #{password},</if>
 			<if test="haisiFlg != null and haisiFlg != ''">haisi_flg = #{haisiFlg},</if>
 			<if test="haisiDt != null and haisiDt != ''">haisi_dt = #{haisiDt},</if>