chore: test and fix bugs of user group

This commit is contained in:
Matin
2025-01-27 09:22:29 +03:30
parent 4c9748ef1a
commit c3bcfd3ef0
4 changed files with 33 additions and 10 deletions
+10 -4
View File
@@ -2,11 +2,11 @@ NODE_ENV=development
PORT=3500 PORT=3500
DB_HOST= DB_HOST=localhost
DB_PORT= DB_PORT=54320
DB_NAME= DB_USER=danak
DB_USER=
DB_PASS= DB_PASS=
DB_NAME=
PGADMIN_EMAIL=root@test.ir PGADMIN_EMAIL=root@test.ir
@@ -39,4 +39,10 @@ JWT_SECRET_KEY=secret
ACCESS_TOKEN_EXPIRE=1 #==> in hour ACCESS_TOKEN_EXPIRE=1 #==> in hour
REFRESH_TOKEN_EXPIRE=3 #===> in days REFRESH_TOKEN_EXPIRE=3 #===> in days
BUCKET_NAME=dsc
BUCKET_REGION=default
BUCKET_URL=https://storage.iran.liara.space
BUCKET_ACCESS_KEY=
BUCKET_SECRET_KEY=
BUCKET_UPLOAD_URL=https://dsc.storage.iran.liara.space
+2 -2
View File
@@ -6,12 +6,12 @@ import { AuthMessage } from "../../../common/enums/message.enum";
export class LoginPasswordDTO { export class LoginPasswordDTO {
@IsNotEmpty({ message: AuthMessage.EMAIL_NOT_EMPTY }) @IsNotEmpty({ message: AuthMessage.EMAIL_NOT_EMPTY })
@IsEmail(undefined, { message: AuthMessage.INVALID_EMAIL_FORMAT }) @IsEmail(undefined, { message: AuthMessage.INVALID_EMAIL_FORMAT })
@ApiProperty({ description: "email of user", default: "user@test.ir" }) @ApiProperty({ description: "email of user", default: "admin-dsc@gmail.com" })
email: string; email: string;
@IsNotEmpty({ message: AuthMessage.PasswordNotEmpty }) @IsNotEmpty({ message: AuthMessage.PasswordNotEmpty })
@IsString({ message: AuthMessage.INVALID_PASS_FORMAT }) @IsString({ message: AuthMessage.INVALID_PASS_FORMAT })
@ApiProperty({ type: "string", description: "password user", example: "@1234" }) @ApiProperty({ type: "string", description: "password user", example: "admin123" })
password: string; password: string;
} }
+13 -3
View File
@@ -12,6 +12,7 @@ import { User } from "../entities/user.entity";
import { RoleEnum } from "../enums/role.enum"; import { RoleEnum } from "../enums/role.enum";
import { ValidityType } from "../enums/validity-type.enum"; import { ValidityType } from "../enums/validity-type.enum";
import { RoleRepository } from "../repositories/roles.repository"; import { RoleRepository } from "../repositories/roles.repository";
import { UserGroupRepository } from "../repositories/user-group.repository";
import { UserRepository } from "../repositories/users.repository"; import { UserRepository } from "../repositories/users.repository";
@Injectable() @Injectable()
@@ -34,6 +35,7 @@ export class UsersService {
constructor( constructor(
private userRepository: UserRepository, private userRepository: UserRepository,
private roleRepository: RoleRepository, private roleRepository: RoleRepository,
private userGroupRepository: UserGroupRepository,
) {} ) {}
/************************************************************ */ /************************************************************ */
@@ -117,11 +119,19 @@ export class UsersService {
async createUserGroup(createUserGroupDto: CreateUserGroupDto) { async createUserGroup(createUserGroupDto: CreateUserGroupDto) {
const users = await this.userRepository.find({ where: { id: In(createUserGroupDto.userIds) } }); const users = await this.userRepository.find({ where: { id: In(createUserGroupDto.userIds) } });
const userGroup = this.userRepository.create({ const userGroup = this.userGroupRepository.create({
...createUserGroupDto, ...createUserGroupDto,
...users, users,
}); });
return await this.userRepository.save(userGroup); console.log({ userGroup });
return await this.userGroupRepository.save(userGroup);
}
async getUserGroup() {
const usersGroup = await this.userGroupRepository.find({});
return {
usersGroup,
};
} }
///****************************************************** */ ///****************************************************** */
+8 -1
View File
@@ -41,9 +41,16 @@ export class UsersController {
@AuthGuards() @AuthGuards()
@Roles(RoleEnum.ADMIN) @Roles(RoleEnum.ADMIN)
@ApiOperation({ summary: "Create user group" }) @ApiOperation({ summary: "Create user group" })
@HttpCode(HttpStatus.OK) @HttpCode(HttpStatus.CREATED)
@Post("user-group") @Post("user-group")
createUserGroup(@Body() createDto: CreateUserGroupDto) { createUserGroup(@Body() createDto: CreateUserGroupDto) {
return this.usersService.createUserGroup(createDto); return this.usersService.createUserGroup(createDto);
} }
@ApiOperation({ summary: "get all user group" })
@HttpCode(HttpStatus.OK)
@Get("user-group")
UserGroups() {
return this.usersService.getUserGroup();
}
} }