Browse Source

perf: 优化用户管理模块部分接口逻辑

master
insistence 9 months ago
parent
commit
6734df119a
  1. 2
      ruoyi-fastapi-backend/module_admin/controller/user_controller.py
  2. 4
      ruoyi-fastapi-backend/module_admin/dao/user_dao.py
  3. 12
      ruoyi-fastapi-backend/module_admin/service/user_service.py

2
ruoyi-fastapi-backend/module_admin/controller/user_controller.py

@ -303,7 +303,7 @@ async def reset_system_user_password(
reset_user = ResetUserModel(
userId=current_user.user.user_id,
oldPassword=reset_password.old_password,
password=PwdUtil.get_password_hash(reset_password.new_password),
password=reset_password.new_password,
updateBy=current_user.user.user_name,
updateTime=datetime.now(),
)

4
ruoyi-fastapi-backend/module_admin/dao/user_dao.py

@ -449,7 +449,7 @@ class UserDao:
SysUser.del_flag == '0',
SysUser.user_name == query_object.user_name if query_object.user_name else True,
SysUser.phonenumber == query_object.phonenumber if query_object.phonenumber else True,
or_(SysRole.role_id != query_object.role_id, SysRole.role_id is None),
or_(SysRole.role_id != query_object.role_id, SysRole.role_id.is_(None)),
~SysUser.user_id.in_(
select(SysUser.user_id)
.select_from(SysUser)
@ -502,7 +502,7 @@ class UserDao:
"""
await db.execute(
delete(SysUserRole).where(
SysUserRole.user_id.in_([user_role.user_id]),
SysUserRole.user_id == user_role.user_id if user_role.user_id else True,
SysUserRole.role_id == user_role.role_id if user_role.role_id else True,
)
)

12
ruoyi-fastapi-backend/module_admin/service/user_service.py

@ -333,6 +333,7 @@ class UserService:
del reset_user['sms_code']
del reset_user['session_id']
try:
reset_user['password'] = PwdUtil.get_password_hash(page_object.password)
await UserDao.edit_user_dao(query_db, reset_user)
await query_db.commit()
return CrudResponseModel(is_success=True, message='重置成功')
@ -553,16 +554,9 @@ class UserService:
if page_object.user_id and page_object.role_ids:
role_id_list = page_object.role_ids.split(',')
try:
await UserDao.delete_user_role_by_user_and_role_dao(query_db, UserRoleModel(userId=page_object.user_id))
for role_id in role_id_list:
user_role = await cls.detail_user_role_services(
query_db, UserRoleModel(userId=page_object.user_id, roleId=role_id)
)
if user_role:
continue
else:
await UserDao.add_user_role_dao(
query_db, UserRoleModel(userId=page_object.user_id, roleId=role_id)
)
await UserDao.add_user_role_dao(query_db, UserRoleModel(userId=page_object.user_id, roleId=role_id))
await query_db.commit()
return CrudResponseModel(is_success=True, message='分配成功')
except Exception as e:

Loading…
Cancel
Save