gorm wire

This commit is contained in:
2025-05-07 14:12:53 +08:00
parent 461531c308
commit 68606c76f9
111 changed files with 1726 additions and 5809 deletions

View File

@@ -10,29 +10,29 @@ import (
"management/internal/erpserver/model/dto"
"management/internal/erpserver/model/system"
"management/internal/erpserver/model/view"
"management/internal/erpserver/repository"
"management/internal/erpserver/service"
v1 "management/internal/erpserver/service/v1"
"management/internal/pkg/know"
"management/internal/pkg/redis"
)
type menuService struct {
redis redis.RedisCache
store repository.Store
repo system.MenuRepository
rolesvc v1.RoleService
rolemenusvc v1.RoleMenuService
*service.Service
repo system.MenuRepository
roleService v1.RoleService
roleMenuService v1.RoleMenuService
}
var _ v1.MenuService = (*menuService)(nil)
func NewMenuService(redis redis.RedisCache, store repository.Store, repo system.MenuRepository, rolesvc v1.RoleService, rolemenusvc v1.RoleMenuService) *menuService {
func NewMenuService(
service *service.Service,
repo system.MenuRepository,
roleService v1.RoleService,
roleMenuService v1.RoleMenuService,
) v1.MenuService {
return &menuService{
redis: redis,
store: store,
repo: repo,
rolesvc: rolesvc,
rolemenusvc: rolemenusvc,
Service: service,
repo: repo,
roleService: roleService,
roleMenuService: roleMenuService,
}
}
@@ -54,7 +54,7 @@ func (s *menuService) GetByUrl(ctx context.Context, url string) (*system.Menu, e
func (s *menuService) All(ctx context.Context) ([]*system.Menu, error) {
key := know.GetManageKey(ctx, know.AllMenus)
b, err := s.redis.GetBytes(ctx, key)
b, err := s.Redis.GetBytes(ctx, key)
if err == nil {
var res []*system.Menu
if err := json.Unmarshal(b, &res); err == nil {
@@ -72,7 +72,7 @@ func (s *menuService) All(ctx context.Context) ([]*system.Menu, error) {
return nil, err
}
_ = s.redis.Set(ctx, key, b, time.Hour*6)
_ = s.Redis.Set(ctx, key, b, time.Hour*6)
return res, nil
}
@@ -87,7 +87,7 @@ func (s *menuService) ListMenuTree(ctx context.Context) ([]*view.MenuTree, error
func (s *menuService) ListByRoleID(ctx context.Context, roleID int32) ([]*dto.OwnerMenuDto, error) {
key := know.GetManageKey(ctx, know.OwnerMenus, roleID)
bs, err := s.redis.GetBytes(ctx, key)
bs, err := s.Redis.GetBytes(ctx, key)
if err == nil {
var res []*dto.OwnerMenuDto
if err := json.Unmarshal(bs, &res); err == nil {
@@ -111,13 +111,13 @@ func (s *menuService) SetListByRoleID(ctx context.Context, roleID int32) ([]*dto
return nil, err
}
_ = s.redis.Set(ctx, key, b, time.Hour*6)
_ = s.Redis.Set(ctx, key, b, time.Hour*6)
return res, nil
}
func (s *menuService) ListByRoleIDToMap(ctx context.Context, roleID int32) (map[string]*dto.OwnerMenuDto, error) {
key := know.GetManageKey(ctx, know.OwnerMenusMap, roleID)
bs, err := s.redis.GetBytes(ctx, key)
bs, err := s.Redis.GetBytes(ctx, key)
if err == nil {
var res map[string]*dto.OwnerMenuDto
if err := json.Unmarshal(bs, &res); err == nil {
@@ -141,13 +141,13 @@ func (s *menuService) SetListByRoleIDToMap(ctx context.Context, roleID int32) (m
return nil, err
}
_ = s.redis.Set(ctx, key, b, time.Hour*6)
_ = s.Redis.Set(ctx, key, b, time.Hour*6)
return res, nil
}
func (s *menuService) OwerMenus(ctx context.Context, roleID int32) ([]*dto.MenuUIDto, error) {
key := know.GetManageKey(ctx, know.AdminMenus, roleID)
bs, err := s.redis.GetBytes(ctx, key)
bs, err := s.Redis.GetBytes(ctx, key)
if err == nil {
var res []*dto.MenuUIDto
if err := json.Unmarshal(bs, &res); err == nil {
@@ -172,7 +172,7 @@ func (s *menuService) SetOwerMenus(ctx context.Context, roleID int32) ([]*dto.Me
return nil, err
}
_ = s.redis.Set(ctx, key, b, time.Hour*6)
_ = s.Redis.Set(ctx, key, b, time.Hour*6)
return res, nil
}
@@ -193,15 +193,15 @@ func (s *menuService) MenuViewData(ctx context.Context, roleID int32) ([]*dto.Se
func (s *menuService) SetRoleMenu(ctx context.Context, roleID int32, rms []*system.RoleMenu) error {
// 开启事务
return s.store.TX(ctx, func(ctx context.Context) error {
return s.Tx.Transaction(ctx, func(ctx context.Context) error {
// 先删除该角色的所有权限
err := s.rolemenusvc.DeleteByRoleID(ctx, roleID)
err := s.roleMenuService.DeleteByRoleID(ctx, roleID)
if err != nil {
return err
}
// 再添加该角色的所有权限
return s.rolemenusvc.Create(ctx, rms)
return s.roleMenuService.Create(ctx, rms)
})
}
@@ -217,7 +217,7 @@ func (s *menuService) RefreshCache(ctx context.Context) error {
return err
}
_ = redis.Set(ctx, key, b, time.Hour*6)
_ = s.Redis.Set(ctx, key, b, time.Hour*6)
return nil
}
@@ -245,7 +245,7 @@ func (s *menuService) XmSelectTree(ctx context.Context, id int32) ([]*view.XmSel
// listByRoleID 获取该角色所拥有的菜单集合
func (s *menuService) listByRoleID(ctx context.Context, roleID int32) ([]*system.Menu, error) {
role, err := s.rolesvc.Get(ctx, roleID)
role, err := s.roleService.Get(ctx, roleID)
if err != nil {
return nil, err
}
@@ -260,7 +260,7 @@ func (s *menuService) listByRoleID(ctx context.Context, roleID int32) ([]*system
}
// 通过角色获取所拥有的权限
roleMenus, err := s.rolemenusvc.ListByRoleID(ctx, roleID)
roleMenus, err := s.roleMenuService.ListByRoleID(ctx, roleID)
if err != nil {
return nil, err
}