mirror of
https://github.com/go-admin-team/go-admin.git
synced 2026-09-21 10:13:01 +00:00
feat✨ 结构统一调整
This commit is contained in:
@@ -2,12 +2,12 @@ package apis
|
||||
|
||||
import (
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/captcha"
|
||||
"go-admin/common/apis"
|
||||
)
|
||||
|
||||
type System struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
func (e System) GenerateCaptchaHandler(c *gin.Context) {
|
||||
|
||||
@@ -4,6 +4,7 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
|
||||
_ "github.com/go-admin-team/go-admin-core/sdk/pkg/response"
|
||||
|
||||
@@ -11,11 +12,10 @@ import (
|
||||
"go-admin/app/admin/service"
|
||||
"go-admin/app/admin/service/dto"
|
||||
"go-admin/common/actions"
|
||||
"go-admin/common/apis"
|
||||
)
|
||||
|
||||
type SysApi struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
// GetSysApiList 获取接口管理列表
|
||||
|
||||
@@ -1,20 +1,20 @@
|
||||
package apis
|
||||
|
||||
import (
|
||||
"github.com/gin-gonic/gin/binding"
|
||||
"go-admin/app/admin/models"
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/gin-gonic/gin/binding"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
|
||||
|
||||
"go-admin/app/admin/models"
|
||||
"go-admin/app/admin/service"
|
||||
"go-admin/app/admin/service/dto"
|
||||
"go-admin/common/apis"
|
||||
)
|
||||
|
||||
type SysConfig struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
func (e SysConfig) GetSysConfigList(c *gin.Context) {
|
||||
|
||||
@@ -6,16 +6,16 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
|
||||
_ "github.com/go-admin-team/go-admin-core/sdk/pkg/response"
|
||||
|
||||
"go-admin/app/admin/service"
|
||||
"go-admin/app/admin/service/dto"
|
||||
"go-admin/common/apis"
|
||||
)
|
||||
|
||||
type SysDept struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
// @Summary 分页部门列表数据
|
||||
|
||||
@@ -5,17 +5,17 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
|
||||
_ "github.com/go-admin-team/go-admin-core/sdk/pkg/response"
|
||||
|
||||
"go-admin/app/admin/service"
|
||||
"go-admin/app/admin/service/dto"
|
||||
"go-admin/common/apis"
|
||||
common "go-admin/common/models"
|
||||
)
|
||||
|
||||
type SysDictData struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
// @Summary 字典数据列表
|
||||
|
||||
@@ -5,17 +5,17 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
|
||||
_ "github.com/go-admin-team/go-admin-core/sdk/pkg/response"
|
||||
|
||||
"go-admin/app/admin/service"
|
||||
"go-admin/app/admin/service/dto"
|
||||
"go-admin/common/apis"
|
||||
common "go-admin/common/models"
|
||||
)
|
||||
|
||||
type SysDictType struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
// @Summary 字典类型列表数据
|
||||
|
||||
@@ -5,15 +5,15 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
|
||||
|
||||
"go-admin/app/admin/service"
|
||||
"go-admin/app/admin/service/dto"
|
||||
"go-admin/common/apis"
|
||||
)
|
||||
|
||||
type SysLoginLog struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
func (e SysLoginLog) GetSysLoginLogList(c *gin.Context) {
|
||||
|
||||
+55
-76
@@ -5,17 +5,18 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
|
||||
|
||||
"go-admin/app/admin/service"
|
||||
"go-admin/app/admin/service/dto"
|
||||
"go-admin/common/apis"
|
||||
)
|
||||
|
||||
type SysMenu struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
// GetSysMenuList Menu列表数据
|
||||
// @Summary Menu列表数据
|
||||
// @Description 获取JSON
|
||||
// @Tags 菜单
|
||||
@@ -65,28 +66,20 @@ func (e SysMenu) GetSysMenuList(c *gin.Context) {
|
||||
// @Security Bearer
|
||||
func (e SysMenu) GetSysMenu(c *gin.Context) {
|
||||
control := new(dto.SysMenuById)
|
||||
|
||||
e.Context = c
|
||||
log := e.GetLogger()
|
||||
|
||||
db, err := e.GetOrm()
|
||||
s := new(service.SysMenu)
|
||||
err := e.MakeContext(c).
|
||||
MakeOrm().
|
||||
Bind(control, nil).
|
||||
MakeService(&s.Service).
|
||||
Errors
|
||||
if err != nil {
|
||||
log.Error(err)
|
||||
return
|
||||
}
|
||||
|
||||
//查看详情
|
||||
err = control.Bind(c)
|
||||
if err != nil {
|
||||
e.Error(http.StatusUnprocessableEntity, err, "参数验证失败")
|
||||
e.Error(http.StatusInternalServerError, err, err.Error())
|
||||
e.Logger.Error(err)
|
||||
return
|
||||
}
|
||||
var object models.SysMenu
|
||||
|
||||
serviceSysMenu := service.SysMenu{}
|
||||
serviceSysMenu.Log = log
|
||||
serviceSysMenu.Orm = db
|
||||
err = serviceSysMenu.GetSysMenu(control, &object)
|
||||
err = s.GetSysMenu(control, &object)
|
||||
if err != nil {
|
||||
e.Error(http.StatusUnprocessableEntity, err, "查询失败")
|
||||
return
|
||||
@@ -179,58 +172,45 @@ func (e SysMenu) UpdateSysMenu(c *gin.Context) {
|
||||
// @Router /api/v1/menu/ [delete]
|
||||
func (e SysMenu) DeleteSysMenu(c *gin.Context) {
|
||||
control := new(dto.SysMenuById)
|
||||
|
||||
e.Context = c
|
||||
log := e.GetLogger()
|
||||
|
||||
db, err := e.GetOrm()
|
||||
s := new(service.SysMenu)
|
||||
err := e.MakeContext(c).
|
||||
MakeOrm().
|
||||
Bind(control).
|
||||
MakeService(&s.Service).
|
||||
Errors
|
||||
if err != nil {
|
||||
log.Error(err)
|
||||
e.Logger.Error(err)
|
||||
return
|
||||
}
|
||||
|
||||
//删除操作
|
||||
err = control.Bind(c)
|
||||
err = s.RemoveSysMenu(control).Error
|
||||
if err != nil {
|
||||
log.Errorf("Bind error: %s", err)
|
||||
e.Error(http.StatusUnprocessableEntity, err, "参数验证失败")
|
||||
return
|
||||
}
|
||||
|
||||
serviceSysMenu := service.SysMenu{}
|
||||
serviceSysMenu.Orm = db
|
||||
serviceSysMenu.Log = log
|
||||
err = serviceSysMenu.RemoveSysMenu(control)
|
||||
if err != nil {
|
||||
log.Errorf("RemoveSysMenu error, %s", err)
|
||||
e.Logger.Errorf("RemoveSysMenu error, %s", err)
|
||||
e.Error(http.StatusInternalServerError, err, "删除失败")
|
||||
return
|
||||
}
|
||||
e.OK(control.GetId(), "删除成功")
|
||||
}
|
||||
|
||||
// GetMenuRole 根据角色名称获取菜单列表数据(左菜单使用)
|
||||
// @Summary 根据角色名称获取菜单列表数据(左菜单使用)
|
||||
// GetMenuRole 根据登录角色名称获取菜单列表数据(左菜单使用)
|
||||
// @Summary 根据登录角色名称获取菜单列表数据(左菜单使用)
|
||||
// @Description 获取JSON
|
||||
// @Tags 菜单
|
||||
// @Param id path int true "id"
|
||||
// @Success 200 {string} string "{"code": 200, "data": [...]}"
|
||||
// @Success 200 {string} string "{"code": -1, "message": "抱歉未找到相关信息"}"
|
||||
// @Router /api/v1/menurole [get]
|
||||
// @Security Bearer
|
||||
func (e SysMenu) GetMenuRole(c *gin.Context) {
|
||||
e.Context = c
|
||||
log := e.GetLogger()
|
||||
db, err := e.GetOrm()
|
||||
s := new(service.SysMenu)
|
||||
err := e.MakeContext(c).
|
||||
MakeOrm().
|
||||
MakeService(&s.Service).
|
||||
Errors
|
||||
if err != nil {
|
||||
log.Error(err)
|
||||
e.Logger.Error(err)
|
||||
return
|
||||
}
|
||||
|
||||
serviceSysMenu := service.SysMenu{}
|
||||
serviceSysMenu.Log = log
|
||||
serviceSysMenu.Orm = db
|
||||
result, err := serviceSysMenu.SetMenuRole(user.GetRoleName(c))
|
||||
result, err := s.SetMenuRole(user.GetRoleName(c))
|
||||
|
||||
if err != nil {
|
||||
e.Error(http.StatusInternalServerError, err, "查询失败")
|
||||
@@ -250,19 +230,21 @@ func (e SysMenu) GetMenuRole(c *gin.Context) {
|
||||
// @Router /api/v1/menuids/{id} [get]
|
||||
// @Security Bearer
|
||||
func (e SysMenu) GetMenuIDS(c *gin.Context) {
|
||||
e.Context = c
|
||||
log := e.GetLogger()
|
||||
db, err := e.GetOrm()
|
||||
s := new(service.SysMenu)
|
||||
err := e.MakeContext(c).
|
||||
MakeOrm().
|
||||
MakeService(&s.Service).
|
||||
Errors
|
||||
if err != nil {
|
||||
log.Error(err)
|
||||
e.Logger.Error(err)
|
||||
return
|
||||
}
|
||||
var data models.RoleMenu
|
||||
data.RoleName = c.GetString("role")
|
||||
data.UpdateBy = user.GetUserId(c)
|
||||
result, err := data.GetIDS(db)
|
||||
result, err := data.GetIDS(s.Orm)
|
||||
if err != nil {
|
||||
log.Errorf("GetIDS error, %s", err.Error())
|
||||
e.Logger.Errorf("GetIDS error, %s", err.Error())
|
||||
e.Error(http.StatusInternalServerError, err, "获取失败")
|
||||
return
|
||||
}
|
||||
@@ -280,39 +262,36 @@ func (e SysMenu) GetMenuIDS(c *gin.Context) {
|
||||
// @Router /api/v1/menuTreeselect [get]
|
||||
// @Security Bearer
|
||||
func (e SysMenu) GetMenuTreeSelect(c *gin.Context) {
|
||||
e.Context = c
|
||||
log := e.GetLogger()
|
||||
db, err := e.GetOrm()
|
||||
if err != nil {
|
||||
log.Error(err)
|
||||
return
|
||||
}
|
||||
|
||||
s := new(service.SysMenu)
|
||||
sr := new(service.SysRole)
|
||||
d := new(dto.SelectRole)
|
||||
|
||||
err = c.BindUri(d)
|
||||
err := e.MakeContext(c).
|
||||
MakeOrm().
|
||||
MakeService(&s.Service).
|
||||
MakeService(&sr.Service).
|
||||
Bind(&d, nil).
|
||||
Errors
|
||||
if err != nil {
|
||||
e.Error(http.StatusUnprocessableEntity, err, "参数验证失败")
|
||||
e.Logger.Error(err)
|
||||
e.Error(http.StatusUnprocessableEntity, err, err.Error())
|
||||
return
|
||||
}
|
||||
|
||||
serviceSysMenu := service.SysMenu{}
|
||||
serviceSysMenu.Log = log
|
||||
serviceSysMenu.Orm = db
|
||||
result, err := serviceSysMenu.SetSysMenuLabel()
|
||||
result, err := s.SetSysMenuLabel()
|
||||
if err != nil {
|
||||
e.Error(http.StatusUnprocessableEntity, err, "查询失败")
|
||||
return
|
||||
}
|
||||
s := service.SysRole{}
|
||||
s.Log = log
|
||||
s.Orm = db
|
||||
menuIds, err := s.GetRoleMenuId(db, d.RoleId)
|
||||
|
||||
menuIds := make([]int, 0)
|
||||
if d.RoleId != 0 {
|
||||
menuIds, err = sr.GetRoleMenuId(d.RoleId)
|
||||
if err != nil {
|
||||
log.Errorf("GetIDS error, %s", err.Error())
|
||||
e.Logger.Errorf("GetRoleMenuId error, %s", err.Error())
|
||||
e.Error(http.StatusInternalServerError, err, "")
|
||||
return
|
||||
}
|
||||
}
|
||||
e.OK(gin.H{
|
||||
"menus": result,
|
||||
"checkedKeys": menuIds,
|
||||
|
||||
@@ -5,15 +5,15 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
|
||||
|
||||
"go-admin/app/admin/service"
|
||||
"go-admin/app/admin/service/dto"
|
||||
"go-admin/common/apis"
|
||||
)
|
||||
|
||||
type SysOperaLog struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
func (e SysOperaLog) GetSysOperaLogList(c *gin.Context) {
|
||||
|
||||
@@ -1,20 +1,20 @@
|
||||
package apis
|
||||
|
||||
import (
|
||||
"go-admin/app/admin/models"
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
|
||||
_ "github.com/go-admin-team/go-admin-core/sdk/pkg/response"
|
||||
|
||||
"go-admin/app/admin/models"
|
||||
"go-admin/app/admin/service"
|
||||
"go-admin/app/admin/service/dto"
|
||||
"go-admin/common/apis"
|
||||
)
|
||||
|
||||
type SysPost struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
// @Summary 岗位列表数据
|
||||
|
||||
+41
-60
@@ -1,21 +1,22 @@
|
||||
package apis
|
||||
|
||||
import (
|
||||
"github.com/go-admin-team/go-admin-core/sdk"
|
||||
"go-admin/app/admin/models"
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
|
||||
_ "github.com/go-admin-team/go-admin-core/sdk/pkg/response"
|
||||
|
||||
"go-admin/app/admin/service"
|
||||
"go-admin/app/admin/service/dto"
|
||||
"go-admin/common/apis"
|
||||
"go-admin/common/global"
|
||||
)
|
||||
|
||||
type SysRole struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
// @Summary 角色列表数据
|
||||
@@ -109,38 +110,27 @@ func (e SysRole) GetSysRole(c *gin.Context) {
|
||||
// @Router /api/v1/role [post]
|
||||
// @Security Bearer
|
||||
func (e SysRole) InsertSysRole(c *gin.Context) {
|
||||
e.Context = c
|
||||
log := e.GetLogger()
|
||||
control := new(dto.SysRoleControl)
|
||||
db, err := e.GetOrm()
|
||||
if err != nil {
|
||||
log.Error(err)
|
||||
return
|
||||
}
|
||||
|
||||
//新增操作
|
||||
err = control.Bind(c)
|
||||
if err != nil {
|
||||
e.Error(http.StatusUnprocessableEntity, err, "参数验证失败")
|
||||
return
|
||||
}
|
||||
object, err := control.Generate()
|
||||
if err != nil {
|
||||
e.Error(http.StatusInternalServerError, err, "模型生成失败")
|
||||
return
|
||||
}
|
||||
// 设置创建人
|
||||
object.CreateBy = user.GetUserId(c)
|
||||
if object.Status == "" {
|
||||
object.Status = "2"
|
||||
}
|
||||
|
||||
s := service.SysRole{}
|
||||
s.Orm = db
|
||||
s.Log = log
|
||||
err = s.InsertSysRole(object)
|
||||
control := new(dto.SysRoleControl)
|
||||
err := e.MakeContext(c).
|
||||
MakeOrm().
|
||||
Bind(control).
|
||||
MakeService(&s.Service).
|
||||
Errors
|
||||
if err != nil {
|
||||
log.Error(err)
|
||||
e.Logger.Error(err)
|
||||
return
|
||||
}
|
||||
|
||||
// 设置创建人
|
||||
control.CreateBy = user.GetUserId(c)
|
||||
if control.Status == "" {
|
||||
control.Status = "2"
|
||||
}
|
||||
|
||||
err = s.InsertSysRole(control)
|
||||
if err != nil {
|
||||
e.Logger.Error(err)
|
||||
e.Error(http.StatusInternalServerError, err, "创建失败")
|
||||
return
|
||||
}
|
||||
@@ -149,9 +139,10 @@ func (e SysRole) InsertSysRole(c *gin.Context) {
|
||||
e.Error(http.StatusInternalServerError, err, "")
|
||||
return
|
||||
}
|
||||
e.OK(object.GetId(), "创建成功")
|
||||
e.OK(control.GetId(), "创建成功")
|
||||
}
|
||||
|
||||
// UpdateSysRole 修改用户角色
|
||||
// @Summary 修改用户角色
|
||||
// @Description 获取JSON
|
||||
// @Tags 角色/Role
|
||||
@@ -163,34 +154,24 @@ func (e SysRole) InsertSysRole(c *gin.Context) {
|
||||
// @Router /api/v1/role/{id} [put]
|
||||
// @Security Bearer
|
||||
func (e SysRole) UpdateSysRole(c *gin.Context) {
|
||||
e.Context = c
|
||||
log := e.GetLogger()
|
||||
control := new(dto.SysRoleControl)
|
||||
db, err := e.GetOrm()
|
||||
if err != nil {
|
||||
log.Error(err)
|
||||
return
|
||||
}
|
||||
|
||||
//更新操作
|
||||
err = control.Bind(c)
|
||||
if err != nil {
|
||||
e.Error(http.StatusUnprocessableEntity, err, "参数验证失败")
|
||||
return
|
||||
}
|
||||
object, err := control.Generate()
|
||||
if err != nil {
|
||||
e.Error(http.StatusInternalServerError, err, "模型生成失败")
|
||||
return
|
||||
}
|
||||
object.UpdateBy = user.GetUserId(c)
|
||||
|
||||
s := service.SysRole{}
|
||||
s.Orm = db
|
||||
s.Log = log
|
||||
err = s.UpdateSysRole(object)
|
||||
control := new(dto.SysRoleControl)
|
||||
err := e.MakeContext(c).
|
||||
MakeOrm().
|
||||
Bind(control).
|
||||
MakeService(&s.Service).
|
||||
Errors
|
||||
if err != nil {
|
||||
log.Error(err)
|
||||
e.Logger.Error(err)
|
||||
return
|
||||
}
|
||||
cb :=sdk.Runtime.GetCasbinKey(c.Request.Host)
|
||||
|
||||
control.SetUpdateBy(user.GetUserId(c))
|
||||
|
||||
err = s.UpdateSysRole(control,cb)
|
||||
if err != nil {
|
||||
e.Logger.Error(err)
|
||||
return
|
||||
}
|
||||
_, err = global.LoadPolicy(c)
|
||||
@@ -198,7 +179,7 @@ func (e SysRole) UpdateSysRole(c *gin.Context) {
|
||||
e.Error(http.StatusInternalServerError, err, "")
|
||||
return
|
||||
}
|
||||
e.OK(object.GetId(), "更新成功")
|
||||
e.OK(control.GetId(), "更新成功")
|
||||
}
|
||||
|
||||
// @Summary 删除用户角色
|
||||
|
||||
@@ -5,6 +5,7 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
|
||||
_ "github.com/go-admin-team/go-admin-core/sdk/pkg/response"
|
||||
"github.com/google/uuid"
|
||||
@@ -12,12 +13,11 @@ import (
|
||||
"go-admin/app/admin/service"
|
||||
"go-admin/app/admin/service/dto"
|
||||
"go-admin/common/actions"
|
||||
"go-admin/common/apis"
|
||||
common "go-admin/common/models"
|
||||
)
|
||||
|
||||
type SysUser struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
// @Summary 列表用户信息数据
|
||||
|
||||
@@ -15,11 +15,10 @@ import (
|
||||
|
||||
"go-admin/app/admin/models"
|
||||
"go-admin/app/admin/models/tools"
|
||||
"go-admin/common/apis"
|
||||
)
|
||||
|
||||
type Gen struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
func (e Gen) Preview(c *gin.Context) {
|
||||
|
||||
@@ -5,17 +5,17 @@ import (
|
||||
"strings"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
|
||||
_ "github.com/go-admin-team/go-admin-core/sdk/pkg/response"
|
||||
"gorm.io/gorm"
|
||||
|
||||
"go-admin/app/admin/models/tools"
|
||||
"go-admin/common/apis"
|
||||
)
|
||||
|
||||
type SysTable struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
// GetSysTableList 分页列表数据
|
||||
|
||||
@@ -24,7 +24,7 @@ type SysMenu struct {
|
||||
DataScope string `json:"dataScope" gorm:"-"`
|
||||
Params string `json:"params" gorm:"-"`
|
||||
RoleId int `gorm:"-"`
|
||||
Children []SysMenu `json:"children" gorm:"-"`
|
||||
Children []SysMenu `json:"children,omitempty" gorm:"-"`
|
||||
IsSelect bool `json:"is_select" gorm:"-"`
|
||||
models.ControlBy
|
||||
models.ModelTime
|
||||
|
||||
@@ -15,6 +15,7 @@ type SysRole struct {
|
||||
Params string `json:"params" gorm:"-"`
|
||||
MenuIds []int `json:"menuIds" gorm:"-"`
|
||||
DeptIds []int `json:"deptIds" gorm:"-"`
|
||||
SysMenu []SysMenu `json:"sysMenu" gorm:"many2many:sys_role_menu;foreignKey:RoleId;joinForeignKey:role_id;references:MenuId;joinReferences:menu_id;"`
|
||||
models.ControlBy
|
||||
models.ModelTime
|
||||
}
|
||||
|
||||
@@ -2,12 +2,12 @@ package dto
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"go-admin/app/admin/models"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/gin-gonic/gin/binding"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
|
||||
"go-admin/app/admin/models"
|
||||
"go-admin/common/dto"
|
||||
common "go-admin/common/models"
|
||||
)
|
||||
@@ -25,16 +25,6 @@ func (m *SysConfigSearch) GetNeedSearch() interface{} {
|
||||
return *m
|
||||
}
|
||||
|
||||
// Bind 映射上下文中的结构体数据
|
||||
//func (m *SysConfigSearch) Bind(ctx *gin.Context) error {
|
||||
// log := api.GetRequestLogger(ctx)
|
||||
// err := ctx.ShouldBind(m)
|
||||
// if err != nil {
|
||||
// log.Debugf("ShouldBind error: %s", err.Error())
|
||||
// }
|
||||
// return err
|
||||
//}
|
||||
|
||||
// SysConfigControl 增、改使用的结构体
|
||||
type SysConfigControl struct {
|
||||
ID int `uri:"Id" comment:"编码"` // 编码
|
||||
|
||||
@@ -3,6 +3,7 @@ package dto
|
||||
import (
|
||||
"encoding/json"
|
||||
"go-admin/app/admin/models"
|
||||
common "go-admin/common/models"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/gin-gonic/gin/binding"
|
||||
@@ -51,7 +52,17 @@ type SysRoleControl struct {
|
||||
Remark string `form:"remark" comment:"备注"` // 备注
|
||||
Admin bool `form:"admin" comment:"是否管理员"`
|
||||
DataScope string `form:"dataScope"`
|
||||
MenuIds []int `json:"menuIds"`
|
||||
SysMenu []models.SysMenu `form:"sysMenu"`
|
||||
MenuIds []int `form:"menuIds"`
|
||||
common.ControlBy
|
||||
}
|
||||
|
||||
func (s *SysRoleControl) SetCreateBy(id int) {
|
||||
s.CreateBy = id
|
||||
}
|
||||
|
||||
func (s *SysRoleControl) SetUpdateBy(id int) {
|
||||
s.UpdateBy = id
|
||||
}
|
||||
|
||||
// Bind 映射上下文中的结构体数据
|
||||
@@ -76,19 +87,20 @@ func (s *SysRoleControl) Bind(ctx *gin.Context) error {
|
||||
}
|
||||
|
||||
// Generate 结构体数据转化 从 SysConfigControl 至 system.SysConfig 对应的模型
|
||||
func (s *SysRoleControl) Generate() (*models.SysRole, error) {
|
||||
return &models.SysRole{
|
||||
RoleId: s.RoleId,
|
||||
RoleName: s.RoleName,
|
||||
Status: s.Status,
|
||||
RoleKey: s.RoleKey,
|
||||
RoleSort: s.RoleSort,
|
||||
Flag: s.Flag,
|
||||
Remark: s.Remark,
|
||||
Admin: s.Admin,
|
||||
DataScope: s.DataScope,
|
||||
MenuIds: s.MenuIds,
|
||||
}, nil
|
||||
func (s *SysRoleControl) Generate(model *models.SysRole) {
|
||||
if s.RoleId != 0 {
|
||||
model.RoleId = s.RoleId
|
||||
}
|
||||
model.RoleName = s.RoleName
|
||||
model.Status = s.Status
|
||||
model.RoleKey = s.RoleKey
|
||||
model.RoleSort = s.RoleSort
|
||||
model.Flag = s.Flag
|
||||
model.Remark = s.Remark
|
||||
model.Admin = s.Admin
|
||||
model.DataScope = s.DataScope
|
||||
model.SysMenu = s.SysMenu
|
||||
|
||||
}
|
||||
|
||||
// GetId 获取数据对应的ID
|
||||
|
||||
@@ -3,15 +3,15 @@ package service
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/runtime"
|
||||
|
||||
"github.com/go-admin-team/go-admin-core/sdk/runtime"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"gorm.io/gorm"
|
||||
|
||||
"go-admin/app/admin/models"
|
||||
"go-admin/app/admin/service/dto"
|
||||
"go-admin/common/actions"
|
||||
cDto "go-admin/common/dto"
|
||||
"go-admin/common/service"
|
||||
)
|
||||
|
||||
type SysApi struct {
|
||||
|
||||
@@ -2,10 +2,10 @@ package service
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"go-admin/app/admin/models"
|
||||
"go-admin/app/admin/service/dto"
|
||||
cDto "go-admin/common/dto"
|
||||
"go-admin/common/service"
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
|
||||
@@ -8,9 +8,9 @@ import (
|
||||
|
||||
"gorm.io/gorm"
|
||||
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"go-admin/app/admin/service/dto"
|
||||
cDto "go-admin/common/dto"
|
||||
"go-admin/common/service"
|
||||
)
|
||||
|
||||
type SysDept struct {
|
||||
|
||||
@@ -2,13 +2,13 @@ package service
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"go-admin/app/admin/models"
|
||||
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"gorm.io/gorm"
|
||||
|
||||
"go-admin/app/admin/models"
|
||||
"go-admin/app/admin/service/dto"
|
||||
cDto "go-admin/common/dto"
|
||||
"go-admin/common/service"
|
||||
)
|
||||
|
||||
type SysDictData struct {
|
||||
|
||||
@@ -2,13 +2,13 @@ package service
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"go-admin/app/admin/models"
|
||||
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"gorm.io/gorm"
|
||||
|
||||
"go-admin/app/admin/models"
|
||||
"go-admin/app/admin/service/dto"
|
||||
cDto "go-admin/common/dto"
|
||||
"go-admin/common/service"
|
||||
)
|
||||
|
||||
type SysDictType struct {
|
||||
|
||||
@@ -2,14 +2,14 @@ package service
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"go-admin/app/admin/models"
|
||||
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"gorm.io/gorm"
|
||||
|
||||
"go-admin/app/admin/models"
|
||||
"go-admin/app/admin/service/dto"
|
||||
cDto "go-admin/common/dto"
|
||||
common "go-admin/common/models"
|
||||
"go-admin/common/service"
|
||||
)
|
||||
|
||||
type SysLoginLog struct {
|
||||
|
||||
@@ -4,31 +4,18 @@ import (
|
||||
"errors"
|
||||
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/logger"
|
||||
"gorm.io/gorm"
|
||||
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"go-admin/app/admin/models"
|
||||
"go-admin/app/admin/service/dto"
|
||||
cDto "go-admin/common/dto"
|
||||
"go-admin/common/service"
|
||||
)
|
||||
|
||||
type SysMenu struct {
|
||||
service.Service
|
||||
}
|
||||
|
||||
// MakeOrm 设置ORM
|
||||
func (e *SysMenu) MakeOrm(orm *gorm.DB) *SysMenu {
|
||||
e.Orm = orm
|
||||
return e
|
||||
}
|
||||
|
||||
// MakeLog 设置Log
|
||||
func (e *SysMenu) MakeLog(l *logger.Logger) *SysMenu {
|
||||
e.Log = l
|
||||
return e
|
||||
}
|
||||
|
||||
// GetSysMenuPage 获取SysMenu列表
|
||||
func (e *SysMenu) GetSysMenuPage(c *dto.SysMenuSearch) (*[]models.SysMenu, error) {
|
||||
var m = make([]models.SysMenu, 0)
|
||||
@@ -51,7 +38,7 @@ func (e *SysMenu) getSysMenuPage(c *dto.SysMenuSearch, list *[]models.SysMenu) e
|
||||
var err error
|
||||
var data models.SysMenu
|
||||
|
||||
err = e.Orm.Model(&data).Preload("SysApi").
|
||||
err = e.Orm.Model(&data).
|
||||
Scopes(
|
||||
cDto.OrderDest("sort", false),
|
||||
cDto.MakeCondition(c.GetNeedSearch()),
|
||||
@@ -83,7 +70,7 @@ func (e *SysMenu) GetSysMenu(d *dto.SysMenuById, model *models.SysMenu) error {
|
||||
}
|
||||
apis := make([]int, 0)
|
||||
for _, v := range model.SysApi {
|
||||
apis = append(model.Apis, v.Id)
|
||||
apis = append(apis, v.Id)
|
||||
}
|
||||
model.Apis = apis
|
||||
return nil
|
||||
@@ -140,7 +127,7 @@ func (e *SysMenu) UpdateSysMenu(c *dto.SysMenuControl) *SysMenu {
|
||||
}
|
||||
|
||||
// RemoveSysMenu 删除SysMenu
|
||||
func (e *SysMenu) RemoveSysMenu(d *dto.SysMenuById) error {
|
||||
func (e *SysMenu) RemoveSysMenu(d *dto.SysMenuById) *SysMenu {
|
||||
var err error
|
||||
var data models.SysMenu
|
||||
|
||||
@@ -149,13 +136,13 @@ func (e *SysMenu) RemoveSysMenu(d *dto.SysMenuById) error {
|
||||
if db.Error != nil {
|
||||
err = db.Error
|
||||
e.Log.Errorf("Delete error: %s", err)
|
||||
return err
|
||||
_ = e.AddError(err)
|
||||
}
|
||||
if db.RowsAffected == 0 {
|
||||
err = errors.New("无权删除该数据")
|
||||
return err
|
||||
_ = e.AddError(err)
|
||||
}
|
||||
return nil
|
||||
return e
|
||||
}
|
||||
|
||||
// GetSysMenuList 获取菜单数据
|
||||
@@ -175,7 +162,7 @@ func (e *SysMenu) GetSysMenuList(c *dto.SysMenuSearch, list *[]models.SysMenu) e
|
||||
return nil
|
||||
}
|
||||
|
||||
// SetSysMenuTree 设置菜单数据
|
||||
// SetSysMenuLabel 设置菜单数据
|
||||
func (e *SysMenu) SetSysMenuLabel() (m []dto.MenuLabel, err error) {
|
||||
var list []models.SysMenu
|
||||
err = e.GetSysMenuList(&dto.SysMenuSearch{}, &list)
|
||||
@@ -195,26 +182,31 @@ func (e *SysMenu) SetSysMenuLabel() (m []dto.MenuLabel, err error) {
|
||||
return
|
||||
}
|
||||
|
||||
// 左侧菜单
|
||||
func (e *SysMenu) GetSysMenuByRoleName(roleName string) (Menus []models.SysMenu, err error) {
|
||||
var table *gorm.DB
|
||||
var data models.SysMenu
|
||||
// GetSysMenuByRoleName 左侧菜单
|
||||
func (e *SysMenu) GetSysMenuByRoleName(roleName string) ([]models.SysMenu, error) {
|
||||
var MenuList []models.SysMenu
|
||||
var role models.SysRole
|
||||
var err error
|
||||
|
||||
if roleName == "admin" {
|
||||
table = e.Orm.Model(&data).Select("sys_menu.*")
|
||||
table = table.Where(" menu_type in ('M','C')")
|
||||
var data []models.SysMenu
|
||||
err = e.Orm.Where(" menu_type in ('M','C')").
|
||||
Order("sort").
|
||||
Find(&data).
|
||||
Error
|
||||
MenuList = data
|
||||
} else {
|
||||
table = e.Orm.Model(&data).Select("sys_menu.*").Joins("left join sys_role_menu on sys_role_menu.menu_id=sys_menu.menu_id")
|
||||
table = table.Where("sys_role_menu.role_name=? and menu_type in ('M','C')", roleName)
|
||||
err = e.Orm.Model(&role).Preload("SysMenu", func(db *gorm.DB) *gorm.DB {
|
||||
return db.Where(" menu_type in ('M','C')").Order("sort")
|
||||
}).Where("role_name=?", roleName).Find(&role).
|
||||
Error
|
||||
MenuList = role.SysMenu
|
||||
}
|
||||
|
||||
err = table.Order("sort").Find(&Menus).Error
|
||||
|
||||
if err != nil {
|
||||
e.Log.Errorf("db error:%s", err)
|
||||
return
|
||||
}
|
||||
return
|
||||
return MenuList, err
|
||||
}
|
||||
|
||||
// menuLabelCall 递归构造组织数据
|
||||
@@ -286,40 +278,38 @@ func menuCall(menulist *[]models.SysMenu, menu models.SysMenu) models.SysMenu {
|
||||
return menu
|
||||
}
|
||||
|
||||
// SetMenuRole 获取左侧菜单树使用
|
||||
func (e *SysMenu) SetMenuRole(roleName string) (m []models.SysMenu, err error) {
|
||||
|
||||
menus, err := e.getByRoleName(roleName)
|
||||
|
||||
m = make([]models.SysMenu, 0)
|
||||
for i := 0; i < len(menus); i++ {
|
||||
if menus[i].ParentId != 0 {
|
||||
continue
|
||||
}
|
||||
menusInfo := menuCall(&menus, menus[i])
|
||||
|
||||
m = append(m, menusInfo)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func (e *SysMenu) getByRoleName(roleName string) (Menus []models.SysMenu, err error) {
|
||||
var data models.SysMenu
|
||||
func (e *SysMenu) getByRoleName(roleName string) ([]models.SysMenu, error) {
|
||||
var MenuList []models.SysMenu
|
||||
var role models.SysRole
|
||||
var err error
|
||||
|
||||
var table *gorm.DB
|
||||
if roleName == "admin" {
|
||||
table = e.Orm.Model(&data).Select("sys_menu.*")
|
||||
table = table.Where(" menu_type in ('M','C')")
|
||||
var data []models.SysMenu
|
||||
err = e.Orm.Where(" menu_type in ('M','C')").Order("sort").Find(&data).Error
|
||||
MenuList = data
|
||||
} else {
|
||||
table = e.Orm.Model(&data).Select("sys_menu.*").Joins("left join sys_role_menu on sys_role_menu.menu_id=sys_menu.menu_id")
|
||||
table = table.Where("sys_role_menu.role_name=? and menu_type in ('M','C')", roleName)
|
||||
err = e.Orm.Model(&role).Preload("SysMenu", func(db *gorm.DB) *gorm.DB {
|
||||
return db.Where(" menu_type in ('M','C')").Order("sort")
|
||||
}).Where("role_name=?", roleName).Find(&role).Error
|
||||
MenuList = role.SysMenu
|
||||
}
|
||||
err = table.Scopes(
|
||||
cDto.OrderDest("sort", false),
|
||||
).Find(&Menus).Error
|
||||
|
||||
if err != nil {
|
||||
e.Log.Errorf("db error:%s", err)
|
||||
return
|
||||
}
|
||||
return
|
||||
return MenuList, err
|
||||
}
|
||||
@@ -2,10 +2,12 @@ package service
|
||||
|
||||
import (
|
||||
"errors"
|
||||
|
||||
"go-admin/app/admin/models"
|
||||
"go-admin/app/admin/service/dto"
|
||||
cDto "go-admin/common/dto"
|
||||
"go-admin/common/service"
|
||||
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
|
||||
@@ -2,13 +2,13 @@ package service
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"go-admin/app/admin/models"
|
||||
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"gorm.io/gorm"
|
||||
|
||||
"go-admin/app/admin/models"
|
||||
"go-admin/app/admin/service/dto"
|
||||
cDto "go-admin/common/dto"
|
||||
"go-admin/common/service"
|
||||
)
|
||||
|
||||
type SysPost struct {
|
||||
|
||||
@@ -2,13 +2,14 @@ package service
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"github.com/casbin/casbin/v2"
|
||||
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"gorm.io/gorm"
|
||||
|
||||
"go-admin/app/admin/models"
|
||||
"go-admin/app/admin/service/dto"
|
||||
cDto "go-admin/common/dto"
|
||||
"go-admin/common/service"
|
||||
)
|
||||
|
||||
type SysRole struct {
|
||||
@@ -20,7 +21,7 @@ func (e *SysRole) GetSysRolePage(c *dto.SysRoleSearch, list *[]models.SysRole, c
|
||||
var err error
|
||||
var data models.SysRole
|
||||
|
||||
err = e.Orm.Model(&data).
|
||||
err = e.Orm.Model(&data).Preload("SysMenu").
|
||||
Scopes(
|
||||
cDto.MakeCondition(c.GetNeedSearch()),
|
||||
cDto.Paginate(c.GetPageSize(), c.GetPageIndex()),
|
||||
@@ -49,7 +50,7 @@ func (e *SysRole) GetSysRole(d *dto.SysRoleById, model *models.SysRole) error {
|
||||
e.Log.Errorf("db error:%s", err)
|
||||
return err
|
||||
}
|
||||
model.MenuIds, err = e.GetRoleMenuId(e.Orm, model.RoleId)
|
||||
model.MenuIds, err = e.GetRoleMenuId(model.RoleId)
|
||||
if err != nil {
|
||||
e.Log.Errorf("get menuIds error, %s", err.Error())
|
||||
return err
|
||||
@@ -58,10 +59,17 @@ func (e *SysRole) GetSysRole(d *dto.SysRoleById, model *models.SysRole) error {
|
||||
}
|
||||
|
||||
// InsertSysRole 创建SysRole对象
|
||||
func (e *SysRole) InsertSysRole(c *models.SysRole) error {
|
||||
func (e *SysRole) InsertSysRole(c *dto.SysRoleControl) error {
|
||||
var err error
|
||||
var data models.SysRole
|
||||
|
||||
var dataMenu []models.SysMenu
|
||||
err = e.Orm.Preload("SysApi").Where("menu_id in ?", c.MenuIds).Find(&dataMenu).Error
|
||||
if err != nil {
|
||||
e.Log.Errorf("db error:%s", err)
|
||||
return err
|
||||
}
|
||||
c.SysMenu = dataMenu
|
||||
c.Generate(&data)
|
||||
tx := e.Orm.Begin()
|
||||
defer func() {
|
||||
if err != nil {
|
||||
@@ -91,7 +99,7 @@ func (e *SysRole) InsertSysRole(c *models.SysRole) error {
|
||||
}
|
||||
|
||||
// UpdateSysRole 修改SysRole对象
|
||||
func (e *SysRole) UpdateSysRole(c *models.SysRole) error {
|
||||
func (e *SysRole) UpdateSysRole(c *dto.SysRoleControl, cb *casbin.SyncedEnforcer) error {
|
||||
var err error
|
||||
|
||||
tx := e.Orm.Debug().Begin()
|
||||
@@ -102,8 +110,14 @@ func (e *SysRole) UpdateSysRole(c *models.SysRole) error {
|
||||
tx.Commit()
|
||||
}
|
||||
}()
|
||||
db := tx.Model(&c).
|
||||
Where(c.GetId()).Updates(c)
|
||||
var model = models.SysRole{}
|
||||
var mlist = make([]models.SysMenu, 0)
|
||||
e.Orm.First(&model, c.GetId())
|
||||
e.Orm.Preload("SysApi").Find(&mlist, c.MenuIds)
|
||||
c.Generate(&model)
|
||||
model.SysMenu = mlist
|
||||
db := e.Orm.Session(&gorm.Session{FullSaveAssociations: true}).Debug().Save(&model)
|
||||
|
||||
if db.Error != nil {
|
||||
e.Log.Errorf("db error:%s", err)
|
||||
return err
|
||||
@@ -111,23 +125,13 @@ func (e *SysRole) UpdateSysRole(c *models.SysRole) error {
|
||||
if db.RowsAffected == 0 {
|
||||
return errors.New("无权更新该数据")
|
||||
}
|
||||
for _, menu := range mlist {
|
||||
for _, api := range menu.SysApi {
|
||||
_, err = cb.AddNamedPolicy("p", model.RoleKey, api.Path, api.Action)
|
||||
}
|
||||
}
|
||||
|
||||
var t models.RoleMenu
|
||||
err = t.DeleteRoleMenu(tx, c.RoleId)
|
||||
if err != nil {
|
||||
e.Log.Errorf("delete role menu error, %", err.Error())
|
||||
return err
|
||||
}
|
||||
if len(c.MenuIds) > 0 {
|
||||
s := SysRoleMenu{}
|
||||
s.Orm = e.Orm
|
||||
s.Log = e.Log
|
||||
err = s.ReloadRule(tx, c.RoleId, c.MenuIds)
|
||||
if err != nil {
|
||||
e.Log.Errorf("reload casbin rule error, %", err.Error())
|
||||
return err
|
||||
}
|
||||
}
|
||||
_ = cb.SavePolicy()
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -169,10 +173,10 @@ func (e *SysRole) RemoveSysRole(d *dto.SysRoleById) error {
|
||||
}
|
||||
|
||||
// 获取角色对应的菜单ids
|
||||
func (e *SysRole) GetRoleMenuId(tx *gorm.DB, roleId int) ([]int, error) {
|
||||
func (e *SysRole) GetRoleMenuId(roleId int) ([]int, error) {
|
||||
menuIds := make([]int, 0)
|
||||
menuList := make([]models.MenuIdList, 0)
|
||||
if err := tx.Table("sys_role_menu").
|
||||
if err := e.Orm.Table("sys_role_menu").
|
||||
Select("sys_role_menu.menu_id").
|
||||
Where("role_id = ? ", roleId).
|
||||
Where(" sys_role_menu.menu_id not in(select sys_menu.parent_id from sys_role_menu "+
|
||||
|
||||
@@ -2,9 +2,10 @@ package service
|
||||
|
||||
import (
|
||||
log "github.com/go-admin-team/go-admin-core/logger"
|
||||
"go-admin/app/admin/models"
|
||||
"go-admin/common/service"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"gorm.io/gorm"
|
||||
|
||||
"go-admin/app/admin/models"
|
||||
)
|
||||
|
||||
type SysRoleMenu struct {
|
||||
|
||||
@@ -3,10 +3,10 @@ package service
|
||||
import (
|
||||
"errors"
|
||||
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"gorm.io/gorm"
|
||||
|
||||
"go-admin/app/admin/models"
|
||||
"go-admin/common/service"
|
||||
)
|
||||
|
||||
type SysSetting struct {
|
||||
|
||||
@@ -6,12 +6,12 @@ import (
|
||||
|
||||
log "github.com/go-admin-team/go-admin-core/logger"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"gorm.io/gorm"
|
||||
|
||||
"go-admin/common/actions"
|
||||
cDto "go-admin/common/dto"
|
||||
common "go-admin/common/models"
|
||||
"go-admin/common/service"
|
||||
)
|
||||
|
||||
type SysUser struct {
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
package apis
|
||||
|
||||
import (
|
||||
"go-admin/app/jobs/service"
|
||||
"net/http"
|
||||
|
||||
"go-admin/common/apis"
|
||||
"go-admin/common/dto"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
|
||||
"go-admin/app/jobs/service"
|
||||
"go-admin/common/dto"
|
||||
)
|
||||
|
||||
type SysJob struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
// RemoveJobForService 调用service实现
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
package service
|
||||
|
||||
import (
|
||||
"github.com/robfig/cron/v3"
|
||||
"go-admin/app/jobs/models"
|
||||
"time"
|
||||
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"github.com/robfig/cron/v3"
|
||||
|
||||
"go-admin/app/jobs"
|
||||
"go-admin/app/jobs/models"
|
||||
"go-admin/common/dto"
|
||||
"go-admin/common/service"
|
||||
)
|
||||
|
||||
type SysJob struct {
|
||||
|
||||
@@ -8,11 +8,11 @@ import (
|
||||
"strings"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/utils"
|
||||
"github.com/google/uuid"
|
||||
|
||||
"go-admin/common/apis"
|
||||
"go-admin/common/file_store"
|
||||
)
|
||||
|
||||
@@ -27,7 +27,7 @@ type FileResponse struct {
|
||||
const path = "static/uploadfile/"
|
||||
|
||||
type File struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
// UploadFile 上传图片
|
||||
|
||||
@@ -4,13 +4,12 @@ import (
|
||||
"runtime"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg"
|
||||
_ "github.com/go-admin-team/go-admin-core/sdk/pkg/response"
|
||||
"github.com/shirou/gopsutil/cpu"
|
||||
"github.com/shirou/gopsutil/disk"
|
||||
"github.com/shirou/gopsutil/mem"
|
||||
|
||||
"go-admin/common/apis"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -21,7 +20,7 @@ const (
|
||||
)
|
||||
|
||||
type Monitor struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
// ServerInfo 获取系统信息
|
||||
|
||||
@@ -7,14 +7,14 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
|
||||
|
||||
"go-admin/common/actions"
|
||||
"go-admin/common/apis"
|
||||
)
|
||||
|
||||
type SysChinaAreaData struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
func (e SysChinaAreaData) GetSysChinaAreaDataList(c *gin.Context) {
|
||||
|
||||
@@ -4,6 +4,7 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
|
||||
|
||||
@@ -11,11 +12,10 @@ import (
|
||||
"go-admin/app/other/service"
|
||||
"go-admin/app/other/service/dto"
|
||||
"go-admin/common/actions"
|
||||
"go-admin/common/apis"
|
||||
)
|
||||
|
||||
type SysFileDir struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
func (e SysFileDir) GetSysFileDirList(c *gin.Context) {
|
||||
|
||||
@@ -7,14 +7,14 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
|
||||
|
||||
"go-admin/common/actions"
|
||||
"go-admin/common/apis"
|
||||
)
|
||||
|
||||
type SysFileInfo struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
func (e SysFileInfo) GetSysFileInfoList(c *gin.Context) {
|
||||
|
||||
@@ -2,14 +2,14 @@ package service
|
||||
|
||||
import (
|
||||
"errors"
|
||||
models2 "go-admin/app/other/models"
|
||||
dto2 "go-admin/app/other/service/dto"
|
||||
"go-admin/app/other/models"
|
||||
"go-admin/app/other/service/dto"
|
||||
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"gorm.io/gorm"
|
||||
|
||||
"go-admin/common/actions"
|
||||
cDto "go-admin/common/dto"
|
||||
"go-admin/common/service"
|
||||
)
|
||||
|
||||
type SysChinaAreaData struct {
|
||||
@@ -17,8 +17,8 @@ type SysChinaAreaData struct {
|
||||
}
|
||||
|
||||
// GetSysChinaAreaDataPage 获取SysChinaAreaData列表
|
||||
func (e *SysChinaAreaData) GetSysChinaAreaDataPage(c *dto2.SysChinaAreaDataSearch, p *actions.DataPermission, list *[]models2.SysChinaAreaData, count *int64) error {
|
||||
var data models2.SysChinaAreaData
|
||||
func (e *SysChinaAreaData) GetSysChinaAreaDataPage(c *dto.SysChinaAreaDataSearch, p *actions.DataPermission, list *[]models.SysChinaAreaData, count *int64) error {
|
||||
var data models.SysChinaAreaData
|
||||
|
||||
err := e.Orm.Model(&data).
|
||||
Scopes(
|
||||
@@ -36,8 +36,8 @@ func (e *SysChinaAreaData) GetSysChinaAreaDataPage(c *dto2.SysChinaAreaDataSearc
|
||||
}
|
||||
|
||||
// GetSysChinaAreaData 获取SysChinaAreaData对象
|
||||
func (e *SysChinaAreaData) GetSysChinaAreaData(d *dto2.SysChinaAreaDataById, p *actions.DataPermission, model *models2.SysChinaAreaData) error {
|
||||
var data models2.SysChinaAreaData
|
||||
func (e *SysChinaAreaData) GetSysChinaAreaData(d *dto.SysChinaAreaDataById, p *actions.DataPermission, model *models.SysChinaAreaData) error {
|
||||
var data models.SysChinaAreaData
|
||||
|
||||
err := e.Orm.Model(&data).
|
||||
Scopes(
|
||||
@@ -57,8 +57,8 @@ func (e *SysChinaAreaData) GetSysChinaAreaData(d *dto2.SysChinaAreaDataById, p *
|
||||
}
|
||||
|
||||
// InsertSysChinaAreaData 创建SysChinaAreaData对象
|
||||
func (e *SysChinaAreaData) InsertSysChinaAreaData(model *models2.SysChinaAreaData) error {
|
||||
var data models2.SysChinaAreaData
|
||||
func (e *SysChinaAreaData) InsertSysChinaAreaData(model *models.SysChinaAreaData) error {
|
||||
var data models.SysChinaAreaData
|
||||
|
||||
err := e.Orm.Model(&data).
|
||||
Create(model).Error
|
||||
@@ -70,7 +70,7 @@ func (e *SysChinaAreaData) InsertSysChinaAreaData(model *models2.SysChinaAreaDat
|
||||
}
|
||||
|
||||
// UpdateSysChinaAreaData 修改SysChinaAreaData对象
|
||||
func (e *SysChinaAreaData) UpdateSysChinaAreaData(c *models2.SysChinaAreaData, p *actions.DataPermission) error {
|
||||
func (e *SysChinaAreaData) UpdateSysChinaAreaData(c *models.SysChinaAreaData, p *actions.DataPermission) error {
|
||||
db := e.Orm.Model(c).
|
||||
Scopes(
|
||||
actions.Permission(c.TableName(), p),
|
||||
@@ -86,9 +86,9 @@ func (e *SysChinaAreaData) UpdateSysChinaAreaData(c *models2.SysChinaAreaData, p
|
||||
}
|
||||
|
||||
// RemoveSysChinaAreaData 删除SysChinaAreaData
|
||||
func (e *SysChinaAreaData) RemoveSysChinaAreaData(d *dto2.SysChinaAreaDataById, p *actions.DataPermission) error {
|
||||
func (e *SysChinaAreaData) RemoveSysChinaAreaData(d *dto.SysChinaAreaDataById, p *actions.DataPermission) error {
|
||||
|
||||
var data models2.SysChinaAreaData
|
||||
var data models.SysChinaAreaData
|
||||
|
||||
db := e.Orm.Model(&data).
|
||||
Scopes(
|
||||
|
||||
@@ -3,14 +3,14 @@ package service
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"go-admin/app/other/models"
|
||||
"go-admin/app/other/service/dto"
|
||||
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"gorm.io/gorm"
|
||||
|
||||
"go-admin/app/other/models"
|
||||
"go-admin/app/other/service/dto"
|
||||
"go-admin/common/actions"
|
||||
cDto "go-admin/common/dto"
|
||||
"go-admin/common/service"
|
||||
)
|
||||
|
||||
type SysFileDir struct {
|
||||
|
||||
@@ -2,14 +2,14 @@ package service
|
||||
|
||||
import (
|
||||
"errors"
|
||||
models2 "go-admin/app/other/models"
|
||||
dto2 "go-admin/app/other/service/dto"
|
||||
|
||||
"gorm.io/gorm"
|
||||
"go-admin/app/other/models"
|
||||
"go-admin/app/other/service/dto"
|
||||
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"go-admin/common/actions"
|
||||
cDto "go-admin/common/dto"
|
||||
"go-admin/common/service"
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
type SysFileInfo struct {
|
||||
@@ -17,9 +17,9 @@ type SysFileInfo struct {
|
||||
}
|
||||
|
||||
// GetSysFileInfoPage 获取SysFileInfo列表
|
||||
func (e *SysFileInfo) GetSysFileInfoPage(c *dto2.SysFileInfoSearch, p *actions.DataPermission, list *[]models2.SysFileInfo, count *int64) error {
|
||||
func (e *SysFileInfo) GetSysFileInfoPage(c *dto.SysFileInfoSearch, p *actions.DataPermission, list *[]models.SysFileInfo, count *int64) error {
|
||||
var err error
|
||||
var data models2.SysFileInfo
|
||||
var data models.SysFileInfo
|
||||
|
||||
err = e.Orm.Model(&data).
|
||||
Scopes(
|
||||
@@ -37,9 +37,9 @@ func (e *SysFileInfo) GetSysFileInfoPage(c *dto2.SysFileInfoSearch, p *actions.D
|
||||
}
|
||||
|
||||
// GetSysFileInfo 获取SysFileInfo对象
|
||||
func (e *SysFileInfo) GetSysFileInfo(d *dto2.SysFileInfoById, p *actions.DataPermission, model *models2.SysFileInfo) error {
|
||||
func (e *SysFileInfo) GetSysFileInfo(d *dto.SysFileInfoById, p *actions.DataPermission, model *models.SysFileInfo) error {
|
||||
var err error
|
||||
var data models2.SysFileInfo
|
||||
var data models.SysFileInfo
|
||||
|
||||
db := e.Orm.Model(&data).
|
||||
Scopes(
|
||||
@@ -60,9 +60,9 @@ func (e *SysFileInfo) GetSysFileInfo(d *dto2.SysFileInfoById, p *actions.DataPer
|
||||
}
|
||||
|
||||
// InsertSysFileInfo 创建SysFileInfo对象
|
||||
func (e *SysFileInfo) InsertSysFileInfo(model *dto2.SysFileInfoControl) error {
|
||||
func (e *SysFileInfo) InsertSysFileInfo(model *dto.SysFileInfoControl) error {
|
||||
var err error
|
||||
var data *models2.SysFileInfo
|
||||
var data *models.SysFileInfo
|
||||
|
||||
data, err = model.Generate()
|
||||
if err != nil {
|
||||
@@ -80,9 +80,9 @@ func (e *SysFileInfo) InsertSysFileInfo(model *dto2.SysFileInfoControl) error {
|
||||
}
|
||||
|
||||
// UpdateSysFileInfo 修改SysFileInfo对象
|
||||
func (e *SysFileInfo) UpdateSysFileInfo(c *dto2.SysFileInfoControl, p *actions.DataPermission) error {
|
||||
func (e *SysFileInfo) UpdateSysFileInfo(c *dto.SysFileInfoControl, p *actions.DataPermission) error {
|
||||
var err error
|
||||
var data *models2.SysFileInfo
|
||||
var data *models.SysFileInfo
|
||||
|
||||
data, err = c.Generate()
|
||||
if err != nil {
|
||||
@@ -105,9 +105,9 @@ func (e *SysFileInfo) UpdateSysFileInfo(c *dto2.SysFileInfoControl, p *actions.D
|
||||
}
|
||||
|
||||
// RemoveSysFileInfo 删除SysFileInfo
|
||||
func (e *SysFileInfo) RemoveSysFileInfo(d *dto2.SysFileInfoById, p *actions.DataPermission) error {
|
||||
func (e *SysFileInfo) RemoveSysFileInfo(d *dto.SysFileInfoById, p *actions.DataPermission) error {
|
||||
var err error
|
||||
var data models2.SysFileInfo
|
||||
var data models.SysFileInfo
|
||||
|
||||
db := e.Orm.Model(&data).
|
||||
Scopes(
|
||||
|
||||
+1
-1
@@ -35,7 +35,7 @@ var rootCmd = &cobra.Command{
|
||||
|
||||
func tip() {
|
||||
usageStr := `欢迎使用 ` + pkg.Green(`go-admin `+global.Version) + ` 可以使用 ` + pkg.Red(`-h`) + ` 查看命令`
|
||||
usageStr1 := `也可以参考 http://doc.zhangwj.com/go-admin-site/guide/ksks.html 里边的【启动】章节`
|
||||
usageStr1 := `也可以参考 https://doc.go-admin.dev/guide/ksks.html 里边的【启动】章节`
|
||||
fmt.Printf("%s\n", usageStr)
|
||||
fmt.Printf("%s\n", usageStr1)
|
||||
}
|
||||
|
||||
@@ -1,137 +0,0 @@
|
||||
package apis
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"github.com/gin-gonic/gin/binding"
|
||||
"go-admin/common/service"
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/logger"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/response"
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
type Api struct {
|
||||
Context *gin.Context
|
||||
Logger *logger.Logger
|
||||
Orm *gorm.DB
|
||||
Errors error
|
||||
}
|
||||
|
||||
func (e *Api) AddError(err error) {
|
||||
if e.Errors == nil {
|
||||
e.Errors = err
|
||||
} else if err != nil {
|
||||
e.Logger.Error(err)
|
||||
e.Errors = fmt.Errorf("%v; %w", e.Error, err)
|
||||
}
|
||||
}
|
||||
|
||||
// MakeContext 设置http上下文
|
||||
func (e *Api) MakeContext(c *gin.Context) *Api {
|
||||
fmt.Println(&c)
|
||||
e.Context = c
|
||||
e.Logger = api.GetRequestLogger(c)
|
||||
fmt.Println(&e.Context)
|
||||
return e
|
||||
}
|
||||
|
||||
// GetLogger 获取上下文提供的日志
|
||||
func (e Api) GetLogger() *logger.Logger {
|
||||
return api.GetRequestLogger(e.Context)
|
||||
}
|
||||
|
||||
func (e *Api) Bind(d interface{}, bindings ...binding.Binding) *Api {
|
||||
var err error
|
||||
if len(bindings) == 0 {
|
||||
bindings = append(bindings, binding.JSON, nil)
|
||||
}
|
||||
for i := range bindings {
|
||||
switch bindings[i] {
|
||||
case binding.JSON:
|
||||
err = e.Context.ShouldBindWith(d, binding.JSON)
|
||||
case binding.XML:
|
||||
err = e.Context.ShouldBindWith(d, binding.XML)
|
||||
case binding.Form:
|
||||
err = e.Context.ShouldBindWith(d, binding.Form)
|
||||
case binding.Query:
|
||||
err = e.Context.ShouldBindWith(d, binding.Query)
|
||||
case binding.FormPost:
|
||||
err = e.Context.ShouldBindWith(d, binding.FormPost)
|
||||
case binding.FormMultipart:
|
||||
err = e.Context.ShouldBindWith(d, binding.FormMultipart)
|
||||
case binding.ProtoBuf:
|
||||
err = e.Context.ShouldBindWith(d, binding.ProtoBuf)
|
||||
case binding.MsgPack:
|
||||
err = e.Context.ShouldBindWith(d, binding.MsgPack)
|
||||
case binding.YAML:
|
||||
err = e.Context.ShouldBindWith(d, binding.YAML)
|
||||
case binding.Header:
|
||||
err = e.Context.ShouldBindWith(d, binding.Header)
|
||||
default:
|
||||
err = e.Context.ShouldBindUri(d)
|
||||
}
|
||||
if err != nil {
|
||||
e.AddError(err)
|
||||
}
|
||||
}
|
||||
return e
|
||||
}
|
||||
|
||||
// GetOrm 获取Orm DB
|
||||
func (e Api) GetOrm() (*gorm.DB, error) {
|
||||
db, err := pkg.GetOrm(e.Context)
|
||||
if err != nil {
|
||||
e.Error(http.StatusInternalServerError, err, "数据库连接获取失败")
|
||||
return nil, err
|
||||
}
|
||||
return db, nil
|
||||
}
|
||||
|
||||
// MakeOrm 设置Orm DB
|
||||
func (e *Api) MakeOrm() *Api {
|
||||
var err error
|
||||
if e.Logger == nil {
|
||||
err = errors.New("at MakeOrm logger is nil")
|
||||
//e.Logger.Error(http.StatusInternalServerError, err, "at MakeOrm logger is nil")
|
||||
e.AddError(err)
|
||||
return e
|
||||
}
|
||||
db, err := pkg.GetOrm(e.Context)
|
||||
if err != nil {
|
||||
e.Logger.Error(http.StatusInternalServerError, err, "数据库连接获取失败")
|
||||
e.AddError(err)
|
||||
}
|
||||
e.Orm = db
|
||||
return e
|
||||
}
|
||||
|
||||
func (e *Api) MakeService(c *service.Service) *Api {
|
||||
c.Log = e.Logger
|
||||
c.Orm = e.Orm
|
||||
return e
|
||||
}
|
||||
|
||||
// Error 通常错误数据处理
|
||||
func (e Api) Error(code int, err error, msg string) {
|
||||
response.Error(e.Context, code, err, msg)
|
||||
}
|
||||
|
||||
// OK 通常成功数据处理
|
||||
func (e Api) OK(data interface{}, msg string) {
|
||||
response.OK(e.Context, data, msg)
|
||||
}
|
||||
|
||||
// PageOK 分页数据处理
|
||||
func (e Api) PageOK(result interface{}, count int, pageIndex int, pageSize int, msg string) {
|
||||
response.PageOK(e.Context, result, count, pageIndex, pageSize, msg)
|
||||
}
|
||||
|
||||
// Custom 兼容函数
|
||||
func (e Api) Custom(data gin.H) {
|
||||
response.Custum(e.Context, data)
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
package apis
|
||||
|
||||
// GetRequestLogger 获取上下文提供的日志
|
||||
//func GetRequestLogger(c *gin.Context) *logger.Logger {
|
||||
// requestId := pkg.GenerateMsgIDFromContext(c)
|
||||
// log := sdk.Runtime.GetLogger().Fields(map[string]interface{}{
|
||||
// strings.ToLower(pkg.TrafficKey): requestId,
|
||||
// })
|
||||
// return &logger.Logger{Logger: log}
|
||||
//}
|
||||
@@ -60,10 +60,6 @@ func setupSimpleDatabase(host string, c *toolsConfig.Database) {
|
||||
|
||||
e := mycasbin.Setup(db, "sys_")
|
||||
|
||||
//if host == "*" {
|
||||
// global.Eloquent = db
|
||||
//}
|
||||
|
||||
sdk.Runtime.SetDb(host, db)
|
||||
sdk.Runtime.SetCasbin(host, e)
|
||||
}
|
||||
@@ -14,10 +14,11 @@ type ALiYunOSS struct {
|
||||
}
|
||||
|
||||
func (e *ALiYunOSS) Setup() error {
|
||||
e.AccessKeyId = "LTAI4G3S4hDLxg6Zmu4UTBwG"
|
||||
e.AccessKeySecret = "C8sj70orL03bwk6wNXX0jbNjAbLCb8"
|
||||
e.Endpoint = "oss-cn-shanghai.aliyuncs.com"
|
||||
e.BucketName = "youshikeji"
|
||||
// TODO: 如果需要使用阿里云OSS请在此处填写对应信息
|
||||
e.AccessKeyId = ""
|
||||
e.AccessKeySecret = ""
|
||||
e.Endpoint = ""
|
||||
e.BucketName = ""
|
||||
|
||||
client, err := oss.New(e.Endpoint, e.AccessKeyId, e.AccessKeySecret)
|
||||
if err != nil {
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
package service
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/logger"
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
type Service struct {
|
||||
Orm *gorm.DB
|
||||
Msg string
|
||||
MsgID string
|
||||
Log *logger.Logger
|
||||
Error error
|
||||
}
|
||||
|
||||
func (db *Service) AddError(err error) error {
|
||||
if db.Error == nil {
|
||||
db.Error = err
|
||||
} else if err != nil {
|
||||
db.Error = fmt.Errorf("%v; %w", db.Error, err)
|
||||
}
|
||||
return db.Error
|
||||
}
|
||||
@@ -4,6 +4,7 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/api"
|
||||
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
|
||||
_ "github.com/go-admin-team/go-admin-core/sdk/pkg/response"
|
||||
|
||||
@@ -11,11 +12,10 @@ import (
|
||||
"go-admin/app/{{.PackageName}}/service"
|
||||
"go-admin/app/{{.PackageName}}/service/dto"
|
||||
"go-admin/common/actions"
|
||||
"go-admin/common/apis"
|
||||
)
|
||||
|
||||
type {{.ClassName}} struct {
|
||||
apis.Api
|
||||
api.Api
|
||||
}
|
||||
|
||||
// Get{{.ClassName}}List 获取{{.TableComment}}列表
|
||||
|
||||
@@ -3,13 +3,13 @@ package service
|
||||
import (
|
||||
"errors"
|
||||
|
||||
"github.com/go-admin-team/go-admin-core/sdk/service"
|
||||
"gorm.io/gorm"
|
||||
|
||||
"go-admin/app/{{.PackageName}}/models"
|
||||
"go-admin/common/actions"
|
||||
cDto "go-admin/common/dto"
|
||||
"go-admin/app/{{.PackageName}}/service/dto"
|
||||
"go-admin/common/service"
|
||||
)
|
||||
|
||||
type {{.ClassName}} struct {
|
||||
|
||||
Reference in New Issue
Block a user