feat: fixing user role
This commit is contained in:
parent
bdc5b02c07
commit
21a5970dd8
|
|
@ -7,9 +7,9 @@ type UserRoles struct {
|
|||
Name string `json:"name" gorm:"type:varchar"`
|
||||
Description string `json:"description" gorm:"type:varchar"`
|
||||
Code string `json:"code" gorm:"type:varchar"`
|
||||
LevelNumber int `json:"level_number" gorm:"type:int4"`
|
||||
StatusId int `json:"status_id" gorm:"type:int4;default:1"`
|
||||
CreatedById *uint `json:"created_by_id" gorm:"type:int4"`
|
||||
UserLevelId uint `json:"user_level_id" gorm:"type:int4"`
|
||||
IsActive *bool `json:"is_active" gorm:"type:bool;default:true"`
|
||||
CreatedAt time.Time `json:"created_at" gorm:"default:now()"`
|
||||
UpdatedAt time.Time `json:"updated_at" gorm:"default:now()"`
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ func (_i *userRolesController) All(c *fiber.Ctx) error {
|
|||
Name: c.Query("name"),
|
||||
Description: c.Query("description"),
|
||||
Code: c.Query("code"),
|
||||
LevelNumber: c.Query("levelNumber"),
|
||||
UserLevelId: c.Query("userLevelId"),
|
||||
StatusId: c.Query("statusId"),
|
||||
}
|
||||
req := reqContext.ToParamRequest()
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ func UserRolesResponseMapper(userRolesReq *entity.UserRoles) (userRolesRes *res.
|
|||
Name: userRolesReq.Name,
|
||||
Description: userRolesReq.Description,
|
||||
Code: userRolesReq.Code,
|
||||
LevelNumber: userRolesReq.LevelNumber,
|
||||
UserLevelId: userRolesReq.UserLevelId,
|
||||
StatusId: userRolesReq.StatusId,
|
||||
CreatedById: userRolesReq.CreatedById,
|
||||
IsActive: userRolesReq.IsActive,
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ type userRolesRepository struct {
|
|||
type UserRolesRepository interface {
|
||||
GetAll(req request.UserRolesQueryRequest) (userRoless []*entity.UserRoles, paging paginator.Pagination, err error)
|
||||
FindOne(id uint) (userRoles *entity.UserRoles, err error)
|
||||
Create(userRoles *entity.UserRoles) (userRolesReturn *entity.UserRoles, err error)
|
||||
Create(userRoles *entity.UserRoles) (err error)
|
||||
Update(id uint, userRoles *entity.UserRoles) (err error)
|
||||
Delete(id uint) (err error)
|
||||
}
|
||||
|
|
@ -47,8 +47,8 @@ func (_i *userRolesRepository) GetAll(req request.UserRolesQueryRequest) (userRo
|
|||
if req.Code != nil {
|
||||
query = query.Where("code = ?", req.Code)
|
||||
}
|
||||
if req.LevelNumber != nil {
|
||||
query = query.Where("level_number = ?", req.LevelNumber)
|
||||
if req.UserLevelId != nil {
|
||||
query = query.Where("user_level_id = ?", req.UserLevelId)
|
||||
}
|
||||
if req.StatusId != nil {
|
||||
query = query.Where("status_id = ?", req.StatusId)
|
||||
|
|
@ -84,9 +84,8 @@ func (_i *userRolesRepository) FindOne(id uint) (userRoles *entity.UserRoles, er
|
|||
return userRoles, nil
|
||||
}
|
||||
|
||||
func (_i *userRolesRepository) Create(userRoles *entity.UserRoles) (userRolesReturn *entity.UserRoles, err error) {
|
||||
result := _i.DB.DB.Create(userRoles)
|
||||
return userRoles, result.Error
|
||||
func (_i *userRolesRepository) Create(userRoles *entity.UserRoles) (err error) {
|
||||
return _i.DB.DB.Create(userRoles).Error
|
||||
}
|
||||
|
||||
func (_i *userRolesRepository) Update(id uint, userRoles *entity.UserRoles) (err error) {
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ type UserRolesQueryRequest struct {
|
|||
Name *string `json:"name"`
|
||||
Description *string `json:"description"`
|
||||
Code *string `json:"code"`
|
||||
LevelNumber *int `json:"levelNumber"`
|
||||
UserLevelId *int `json:"userLevelId"`
|
||||
StatusId *int `json:"statusId"`
|
||||
Pagination *paginator.Pagination `json:"pagination"`
|
||||
}
|
||||
|
|
@ -24,9 +24,8 @@ type UserRolesCreateRequest struct {
|
|||
Name string `json:"name" validate:"required"`
|
||||
Description string `json:"description" validate:"required"`
|
||||
Code string `json:"code" validate:"required"`
|
||||
LevelNumber int `json:"levelNumber" validate:"required"`
|
||||
UserLevelId uint `json:"userLevelId" validate:"required"`
|
||||
StatusId int `json:"statusId" validate:"required"`
|
||||
UserLevelIds []int `json:"userLevelIds" validate:"required"`
|
||||
}
|
||||
|
||||
func (req UserRolesCreateRequest) ToEntity() *entity.UserRoles {
|
||||
|
|
@ -34,8 +33,8 @@ func (req UserRolesCreateRequest) ToEntity() *entity.UserRoles {
|
|||
Name: req.Name,
|
||||
Description: req.Description,
|
||||
Code: req.Code,
|
||||
LevelNumber: req.LevelNumber,
|
||||
StatusId: req.StatusId,
|
||||
UserLevelId: req.UserLevelId,
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -44,8 +43,8 @@ type UserRolesUpdateRequest struct {
|
|||
Description string `json:"description" validate:"required"`
|
||||
Code string `json:"code" validate:"required"`
|
||||
LevelNumber int `json:"level_number" validate:"required"`
|
||||
UserLevelId uint `json:"userLevelIds" validate:"required"`
|
||||
StatusId int `json:"status_id" validate:"required"`
|
||||
UserLevelIds []int `json:"userLevelIds" validate:"required"`
|
||||
}
|
||||
|
||||
func (req UserRolesUpdateRequest) ToEntity() *entity.UserRoles {
|
||||
|
|
@ -53,8 +52,8 @@ func (req UserRolesUpdateRequest) ToEntity() *entity.UserRoles {
|
|||
Name: req.Name,
|
||||
Description: req.Description,
|
||||
Code: req.Code,
|
||||
LevelNumber: req.LevelNumber,
|
||||
StatusId: req.StatusId,
|
||||
UserLevelId: req.UserLevelId,
|
||||
UpdatedAt: time.Now(),
|
||||
}
|
||||
}
|
||||
|
|
@ -63,7 +62,7 @@ type UserRolesQueryRequestContext struct {
|
|||
Name string `json:"name"`
|
||||
Description string `json:"description"`
|
||||
Code string `json:"code"`
|
||||
LevelNumber string `json:"levelNumber"`
|
||||
UserLevelId string `json:"userLevelId"`
|
||||
StatusId string `json:"statusId"`
|
||||
}
|
||||
|
||||
|
|
@ -76,10 +75,10 @@ func (req UserRolesQueryRequestContext) ToParamRequest() UserRolesQueryRequest {
|
|||
if code := req.Code; code != "" {
|
||||
request.Code = &code
|
||||
}
|
||||
if levelNumberStr := req.LevelNumber; levelNumberStr != "" {
|
||||
levelNumber, err := strconv.Atoi(levelNumberStr)
|
||||
if userLevelIdStr := req.UserLevelId; userLevelIdStr != "" {
|
||||
userLevelId, err := strconv.Atoi(userLevelIdStr)
|
||||
if err == nil {
|
||||
request.LevelNumber = &levelNumber
|
||||
request.UserLevelId = &userLevelId
|
||||
}
|
||||
}
|
||||
if statusIdStr := req.StatusId; statusIdStr != "" {
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ type UserRolesResponse struct {
|
|||
Name string `json:"name"`
|
||||
Description string `json:"description"`
|
||||
Code string `json:"code"`
|
||||
LevelNumber int `json:"level_number"`
|
||||
UserLevelId uint `json:"user_level_id"`
|
||||
StatusId int `json:"status_id"`
|
||||
CreatedById *uint `json:"created_by_id"`
|
||||
IsActive *bool `json:"is_active"`
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ package service
|
|||
|
||||
import (
|
||||
"github.com/rs/zerolog"
|
||||
"go-humas-be/app/database/entity"
|
||||
userLevelsRepository "go-humas-be/app/module/user_levels/repository"
|
||||
userRoleLevelDetailsRepository "go-humas-be/app/module/user_role_level_details/repository"
|
||||
"go-humas-be/app/module/user_roles/mapper"
|
||||
|
|
@ -81,21 +80,7 @@ func (_i *userRolesService) Save(req request.UserRolesCreateRequest, authToken s
|
|||
createdBy := utilSvc.GetUserInfo(_i.Log, _i.UsersRepo, authToken)
|
||||
newReq.CreatedById = &createdBy.ID
|
||||
|
||||
dataResult, err := _i.Repo.Create(newReq)
|
||||
|
||||
for _, levelId := range req.UserLevelIds {
|
||||
var userRoleLevelDetails *entity.UserRoleLevelDetails
|
||||
userRoleLevelDetails = &entity.UserRoleLevelDetails{
|
||||
UserRoleId: dataResult.ID,
|
||||
UserLevelId: uint(levelId),
|
||||
}
|
||||
err := _i.UserRoleLevelDetailsRepo.Create(userRoleLevelDetails)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
return err
|
||||
return _i.Repo.Create(newReq)
|
||||
}
|
||||
|
||||
func (_i *userRolesService) Update(id uint, req request.UserRolesUpdateRequest) (err error) {
|
||||
|
|
|
|||
|
|
@ -5960,11 +5960,6 @@ const docTemplate = `{
|
|||
"name": "description",
|
||||
"in": "query"
|
||||
},
|
||||
{
|
||||
"type": "integer",
|
||||
"name": "levelNumber",
|
||||
"in": "query"
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"name": "name",
|
||||
|
|
@ -5975,6 +5970,11 @@ const docTemplate = `{
|
|||
"name": "statusId",
|
||||
"in": "query"
|
||||
},
|
||||
{
|
||||
"type": "integer",
|
||||
"name": "userLevelId",
|
||||
"in": "query"
|
||||
},
|
||||
{
|
||||
"type": "integer",
|
||||
"name": "count",
|
||||
|
|
@ -7254,10 +7254,9 @@ const docTemplate = `{
|
|||
"required": [
|
||||
"code",
|
||||
"description",
|
||||
"levelNumber",
|
||||
"name",
|
||||
"statusId",
|
||||
"userLevelIds"
|
||||
"userLevelId"
|
||||
],
|
||||
"properties": {
|
||||
"code": {
|
||||
|
|
@ -7266,22 +7265,16 @@ const docTemplate = `{
|
|||
"description": {
|
||||
"type": "string"
|
||||
},
|
||||
"levelNumber": {
|
||||
"type": "integer"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"statusId": {
|
||||
"type": "integer"
|
||||
},
|
||||
"userLevelIds": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"userLevelId": {
|
||||
"type": "integer"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"request.UserRolesUpdateRequest": {
|
||||
"type": "object",
|
||||
|
|
@ -7310,12 +7303,9 @@ const docTemplate = `{
|
|||
"type": "integer"
|
||||
},
|
||||
"userLevelIds": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "integer"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"request.UsersCreateRequest": {
|
||||
"type": "object",
|
||||
|
|
|
|||
|
|
@ -5949,11 +5949,6 @@
|
|||
"name": "description",
|
||||
"in": "query"
|
||||
},
|
||||
{
|
||||
"type": "integer",
|
||||
"name": "levelNumber",
|
||||
"in": "query"
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
"name": "name",
|
||||
|
|
@ -5964,6 +5959,11 @@
|
|||
"name": "statusId",
|
||||
"in": "query"
|
||||
},
|
||||
{
|
||||
"type": "integer",
|
||||
"name": "userLevelId",
|
||||
"in": "query"
|
||||
},
|
||||
{
|
||||
"type": "integer",
|
||||
"name": "count",
|
||||
|
|
@ -7243,10 +7243,9 @@
|
|||
"required": [
|
||||
"code",
|
||||
"description",
|
||||
"levelNumber",
|
||||
"name",
|
||||
"statusId",
|
||||
"userLevelIds"
|
||||
"userLevelId"
|
||||
],
|
||||
"properties": {
|
||||
"code": {
|
||||
|
|
@ -7255,22 +7254,16 @@
|
|||
"description": {
|
||||
"type": "string"
|
||||
},
|
||||
"levelNumber": {
|
||||
"type": "integer"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"statusId": {
|
||||
"type": "integer"
|
||||
},
|
||||
"userLevelIds": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"userLevelId": {
|
||||
"type": "integer"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"request.UserRolesUpdateRequest": {
|
||||
"type": "object",
|
||||
|
|
@ -7299,12 +7292,9 @@
|
|||
"type": "integer"
|
||||
},
|
||||
"userLevelIds": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "integer"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"request.UsersCreateRequest": {
|
||||
"type": "object",
|
||||
|
|
|
|||
|
|
@ -433,23 +433,18 @@ definitions:
|
|||
type: string
|
||||
description:
|
||||
type: string
|
||||
levelNumber:
|
||||
type: integer
|
||||
name:
|
||||
type: string
|
||||
statusId:
|
||||
type: integer
|
||||
userLevelIds:
|
||||
items:
|
||||
userLevelId:
|
||||
type: integer
|
||||
type: array
|
||||
required:
|
||||
- code
|
||||
- description
|
||||
- levelNumber
|
||||
- name
|
||||
- statusId
|
||||
- userLevelIds
|
||||
- userLevelId
|
||||
type: object
|
||||
request.UserRolesUpdateRequest:
|
||||
properties:
|
||||
|
|
@ -464,9 +459,7 @@ definitions:
|
|||
status_id:
|
||||
type: integer
|
||||
userLevelIds:
|
||||
items:
|
||||
type: integer
|
||||
type: array
|
||||
required:
|
||||
- code
|
||||
- description
|
||||
|
|
@ -4378,15 +4371,15 @@ paths:
|
|||
- in: query
|
||||
name: description
|
||||
type: string
|
||||
- in: query
|
||||
name: levelNumber
|
||||
type: integer
|
||||
- in: query
|
||||
name: name
|
||||
type: string
|
||||
- in: query
|
||||
name: statusId
|
||||
type: integer
|
||||
- in: query
|
||||
name: userLevelId
|
||||
type: integer
|
||||
- in: query
|
||||
name: count
|
||||
type: integer
|
||||
|
|
|
|||
Loading…
Reference in New Issue