feat: update user levels

This commit is contained in:
hanif salafi 2025-02-06 17:16:37 +07:00
parent d352aee937
commit cd09dae524
10 changed files with 38 additions and 36 deletions

View File

@ -8,7 +8,7 @@ type UserLevels struct {
AliasName string `json:"alias_name" gorm:"type:varchar"`
LevelNumber int `json:"level_number" gorm:"type:int4"`
ParentLevelId int `json:"parent_level_id" gorm:"type:int4"`
ProvinceId int `json:"province_id" gorm:"type:int4"`
ProvinceId *int `json:"province_id" gorm:"type:int4"`
Group *string `json:"group" gorm:"type:varchar"`
IsActive *bool `json:"is_active" gorm:"type:bool"`
CreatedAt time.Time `json:"created_at" gorm:"default:now()"`

View File

@ -114,7 +114,7 @@ func (_i *userLevelsController) Save(c *fiber.Ctx) error {
return err
}
err := _i.userLevelsService.Save(*req)
dataResult, err := _i.userLevelsService.Save(*req)
if err != nil {
return err
}
@ -122,6 +122,7 @@ func (_i *userLevelsController) Save(c *fiber.Ctx) error {
return utilRes.Resp(c, utilRes.Response{
Success: true,
Messages: utilRes.Messages{"UserLevels successfully created"},
Data: dataResult,
})
}

View File

@ -8,16 +8,16 @@ import (
func UserLevelsResponseMapper(userLevelsReq *entity.UserLevels) (userLevelsRes *res.UserLevelsResponse) {
if userLevelsReq != nil {
userLevelsRes = &res.UserLevelsResponse{
ID: userLevelsReq.ID,
Name: userLevelsReq.Name,
AliasName: userLevelsReq.AliasName,
LevelNumber: userLevelsReq.LevelNumber,
ParentLevelId: userLevelsReq.ParentLevelId,
ID: userLevelsReq.ID,
Name: userLevelsReq.Name,
AliasName: userLevelsReq.AliasName,
LevelNumber: userLevelsReq.LevelNumber,
ParentLevelId: userLevelsReq.ParentLevelId,
ProvinceId: userLevelsReq.ProvinceId,
IsActive: userLevelsReq.IsActive,
CreatedAt: userLevelsReq.CreatedAt,
UpdatedAt: userLevelsReq.UpdatedAt,
IsActive: userLevelsReq.IsActive,
CreatedAt: userLevelsReq.CreatedAt,
UpdatedAt: userLevelsReq.UpdatedAt,
}
}
return userLevelsRes
}
}

View File

@ -18,7 +18,7 @@ type UserLevelsRepository interface {
GetAll(req request.UserLevelsQueryRequest) (userLevelss []*entity.UserLevels, paging paginator.Pagination, err error)
FindOne(id uint) (userLevels *entity.UserLevels, err error)
FindOneByAlias(alias string) (userLevels *entity.UserLevels, err error)
Create(userLevels *entity.UserLevels) (err error)
Create(userLevels *entity.UserLevels) (userLevelsReturn *entity.UserLevels, err error)
Update(id uint, userLevels *entity.UserLevels) (err error)
Delete(id uint) (err error)
}
@ -92,8 +92,9 @@ func (_i *userLevelsRepository) FindOneByAlias(alias string) (userLevels *entity
return userLevels, nil
}
func (_i *userLevelsRepository) Create(userLevels *entity.UserLevels) (err error) {
return _i.DB.DB.Create(userLevels).Error
func (_i *userLevelsRepository) Create(userLevels *entity.UserLevels) (userLevelsReturn *entity.UserLevels, err error) {
result := _i.DB.DB.Create(userLevels)
return userLevels, result.Error
}
func (_i *userLevelsRepository) Update(id uint, userLevels *entity.UserLevels) (err error) {

View File

@ -24,7 +24,7 @@ type UserLevelsCreateRequest struct {
AliasName string `json:"aliasName" validate:"required"`
LevelNumber int `json:"levelNumber" validate:"required"`
ParentLevelId int `json:"parentLevelId" validate:"required"`
ProvinceId int `json:"provinceId" validate:"required"`
ProvinceId *int `json:"provinceId"`
IsActive *bool `json:"isActive"`
}
@ -44,7 +44,7 @@ type UserLevelsUpdateRequest struct {
AliasName string `json:"aliasName" validate:"required"`
LevelNumber int `json:"levelNumber" validate:"required"`
ParentLevelId int `json:"parentLevelId" validate:"required"`
ProvinceId int `json:"provinceId" validate:"required"`
ProvinceId *int `json:"provinceId"`
}
func (req UserLevelsUpdateRequest) ToEntity() *entity.UserLevels {

View File

@ -5,11 +5,11 @@ import "time"
type UserLevelsResponse struct {
ID uint `json:"id"`
Name string `json:"name"`
AliasName string `json:"alias_name"`
LevelNumber int `json:"level_number"`
ParentLevelId int `json:"parent_level_id"`
ProvinceId int `json:"province_id"`
IsActive *bool `json:"is_active"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
AliasName string `json:"aliasName"`
LevelNumber int `json:"levelNumber"`
ParentLevelId int `json:"parentLevelId"`
ProvinceId *int `json:"provinceId"`
IsActive *bool `json:"isActive"`
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
}

View File

@ -2,6 +2,7 @@ package service
import (
"github.com/rs/zerolog"
"go-humas-be/app/database/entity"
"go-humas-be/app/module/user_levels/mapper"
"go-humas-be/app/module/user_levels/repository"
"go-humas-be/app/module/user_levels/request"
@ -19,7 +20,7 @@ type userLevelsService struct {
type UserLevelsService interface {
All(req request.UserLevelsQueryRequest) (userLevels []*response.UserLevelsResponse, paging paginator.Pagination, err error)
Show(id uint) (userLevels *response.UserLevelsResponse, err error)
Save(req request.UserLevelsCreateRequest) (err error)
Save(req request.UserLevelsCreateRequest) (userLevels *entity.UserLevels, err error)
Update(id uint, req request.UserLevelsUpdateRequest) (err error)
Delete(id uint) error
}
@ -56,10 +57,15 @@ func (_i *userLevelsService) Show(id uint) (userLevels *response.UserLevelsRespo
return mapper.UserLevelsResponseMapper(result), nil
}
func (_i *userLevelsService) Save(req request.UserLevelsCreateRequest) (err error) {
func (_i *userLevelsService) Save(req request.UserLevelsCreateRequest) (userLevels *entity.UserLevels, err error) {
_i.Log.Info().Interface("data", req).Msg("")
return _i.Repo.Create(req.ToEntity())
saveUserLevelsRes, err := _i.Repo.Create(req.ToEntity())
if err != nil {
return nil, err
}
return saveUserLevelsRes, nil
}
func (_i *userLevelsService) Update(id uint, req request.UserLevelsUpdateRequest) (err error) {

View File

@ -7478,8 +7478,7 @@ const docTemplate = `{
"aliasName",
"levelNumber",
"name",
"parentLevelId",
"provinceId"
"parentLevelId"
],
"properties": {
"aliasName": {
@ -7508,8 +7507,7 @@ const docTemplate = `{
"aliasName",
"levelNumber",
"name",
"parentLevelId",
"provinceId"
"parentLevelId"
],
"properties": {
"aliasName": {

View File

@ -7467,8 +7467,7 @@
"aliasName",
"levelNumber",
"name",
"parentLevelId",
"provinceId"
"parentLevelId"
],
"properties": {
"aliasName": {
@ -7497,8 +7496,7 @@
"aliasName",
"levelNumber",
"name",
"parentLevelId",
"provinceId"
"parentLevelId"
],
"properties": {
"aliasName": {

View File

@ -439,7 +439,6 @@ definitions:
- levelNumber
- name
- parentLevelId
- provinceId
type: object
request.UserLevelsUpdateRequest:
properties:
@ -458,7 +457,6 @@ definitions:
- levelNumber
- name
- parentLevelId
- provinceId
type: object
request.UserLogin:
properties: