76 lines
2.0 KiB
TypeScript
76 lines
2.0 KiB
TypeScript
|
|
import { Injectable } from '@nestjs/common';
|
||
|
|
import { CoreUserService } from '../core/CoreUserService';
|
||
|
|
import { CreateUserAdminDto, UpdateUserAdminDto, GetUserListAdminDto, BatchUpdateUserStatusAdminDto, ResetUserPasswordAdminDto } from '../../dto/admin/UserDto';
|
||
|
|
import { UserContextDto } from '../../dto/UserContextDto';
|
||
|
|
|
||
|
|
@Injectable()
|
||
|
|
export class UserAdminService {
|
||
|
|
constructor(
|
||
|
|
private readonly coreUserService: CoreUserService,
|
||
|
|
) {}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 创建用户
|
||
|
|
*/
|
||
|
|
async createUser(createUserDto: CreateUserAdminDto, userContext: UserContextDto) {
|
||
|
|
return await this.coreUserService.createUser(
|
||
|
|
createUserDto,
|
||
|
|
userContext.siteId,
|
||
|
|
userContext.userId,
|
||
|
|
);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 更新用户
|
||
|
|
*/
|
||
|
|
async updateUser(updateUserDto: UpdateUserAdminDto, userContext: UserContextDto) {
|
||
|
|
return await this.coreUserService.updateUser(
|
||
|
|
updateUserDto,
|
||
|
|
userContext.siteId,
|
||
|
|
userContext.userId,
|
||
|
|
);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 获取用户列表
|
||
|
|
*/
|
||
|
|
async getUserList(queryDto: GetUserListAdminDto, userContext: UserContextDto) {
|
||
|
|
return await this.coreUserService.getUserList(queryDto, userContext.siteId);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 根据ID获取用户
|
||
|
|
*/
|
||
|
|
async getUserById(id: number, userContext: UserContextDto) {
|
||
|
|
return await this.coreUserService.getUserById(id, userContext.siteId);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 删除用户
|
||
|
|
*/
|
||
|
|
async deleteUser(id: number, userContext: UserContextDto) {
|
||
|
|
return await this.coreUserService.deleteUser(id, userContext.siteId);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 批量更新用户状态
|
||
|
|
*/
|
||
|
|
async batchUpdateStatus(batchUpdateDto: BatchUpdateUserStatusAdminDto, userContext: UserContextDto) {
|
||
|
|
return await this.coreUserService.batchUpdateStatus(
|
||
|
|
batchUpdateDto.ids,
|
||
|
|
batchUpdateDto.status,
|
||
|
|
userContext.siteId,
|
||
|
|
);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 重置用户密码
|
||
|
|
*/
|
||
|
|
async resetPassword(resetPasswordDto: ResetUserPasswordAdminDto, userContext: UserContextDto) {
|
||
|
|
return await this.coreUserService.resetPassword(
|
||
|
|
resetPasswordDto.id,
|
||
|
|
resetPasswordDto.password,
|
||
|
|
userContext.siteId,
|
||
|
|
);
|
||
|
|
}
|
||
|
|
}
|