145 lines
2.9 KiB
Go
145 lines
2.9 KiB
Go
package controller
|
|
|
|
import (
|
|
"errors"
|
|
"github.com/1340691923/xwl_bi/model"
|
|
"github.com/1340691923/xwl_bi/platform-basic-libs/jwt"
|
|
"github.com/1340691923/xwl_bi/platform-basic-libs/response"
|
|
app2 "github.com/1340691923/xwl_bi/platform-basic-libs/service/app"
|
|
"github.com/1340691923/xwl_bi/platform-basic-libs/service/myapp"
|
|
"github.com/gofiber/fiber/v2"
|
|
)
|
|
|
|
type AppController struct {
|
|
BaseController
|
|
}
|
|
|
|
//创建应用
|
|
func (this AppController) Create(ctx *fiber.Ctx) error {
|
|
|
|
var app model.App
|
|
err := ctx.BodyParser(&app)
|
|
if err != nil {
|
|
return this.Error(ctx, err)
|
|
}
|
|
|
|
if app.AppName == "" {
|
|
return this.Error(ctx, errors.New("应用名不能为空"))
|
|
}
|
|
|
|
c, _ := jwt.ParseToken(this.GetToken(ctx))
|
|
|
|
appService := app2.AppService{}
|
|
|
|
err = appService.Create(app, c.UserID)
|
|
|
|
if err != nil {
|
|
return this.Error(ctx, err)
|
|
}
|
|
|
|
return this.Success(ctx, response.OperateSuccess, nil)
|
|
}
|
|
|
|
//修改应用管理员
|
|
func (this AppController) UpdateManager(ctx *fiber.Ctx) error {
|
|
var app model.App
|
|
err := ctx.BodyParser(&app)
|
|
if err != nil {
|
|
return this.Error(ctx, err)
|
|
}
|
|
|
|
if app.AppId == "" {
|
|
return this.Error(ctx, errors.New("应用ID不能为空"))
|
|
}
|
|
|
|
c, _ := jwt.ParseToken(this.GetToken(ctx))
|
|
|
|
appService := app2.AppService{}
|
|
|
|
err = appService.UpdateManager(app, c.UserID)
|
|
|
|
if err != nil {
|
|
return this.Error(ctx, err)
|
|
}
|
|
|
|
return this.Success(ctx, response.OperateSuccess, nil)
|
|
}
|
|
|
|
//得到该用户的应用下拉选
|
|
func (this AppController) Config(ctx *fiber.Ctx) error {
|
|
|
|
list, err := myapp.GetAppidsByToken(this.GetToken(ctx))
|
|
|
|
if err != nil {
|
|
return this.Error(ctx, err)
|
|
}
|
|
|
|
return this.Success(ctx, response.SearchSuccess, map[string]interface{}{
|
|
"list": list,
|
|
})
|
|
}
|
|
|
|
//重置应用的appkey
|
|
func (this AppController) ResetAppkey(ctx *fiber.Ctx) error {
|
|
var app model.App
|
|
err := ctx.BodyParser(&app)
|
|
if err != nil {
|
|
return this.Error(ctx, err)
|
|
}
|
|
|
|
c, _ := jwt.ParseToken(this.GetToken(ctx))
|
|
|
|
appService := app2.AppService{}
|
|
|
|
err = appService.ResetAppkey(c.UserID, app)
|
|
|
|
if err != nil {
|
|
return this.Error(ctx, err)
|
|
}
|
|
|
|
return this.Success(ctx, response.OperateSuccess, nil)
|
|
}
|
|
|
|
//修改应用的状态
|
|
func (this AppController) StatusAction(ctx *fiber.Ctx) error {
|
|
var app model.App
|
|
err := ctx.BodyParser(&app)
|
|
if err != nil {
|
|
return this.Error(ctx, err)
|
|
}
|
|
c, _ := jwt.ParseToken(this.GetToken(ctx))
|
|
|
|
appService := app2.AppService{}
|
|
|
|
err = appService.ChangeStatus(app, c.UserID)
|
|
|
|
if err != nil {
|
|
return this.Error(ctx, err)
|
|
}
|
|
|
|
return this.Success(ctx, response.OperateSuccess, nil)
|
|
}
|
|
|
|
func (this AppController) List(ctx *fiber.Ctx) error {
|
|
var app model.App
|
|
err := ctx.BodyParser(&app)
|
|
if err != nil {
|
|
return this.Error(ctx, err)
|
|
}
|
|
|
|
c, _ := jwt.ParseToken(this.GetToken(ctx))
|
|
|
|
appService := app2.AppService{}
|
|
|
|
list, count, err := appService.List(c.UserID, app)
|
|
|
|
if err != nil {
|
|
return this.Error(ctx, err)
|
|
}
|
|
|
|
return this.Success(ctx, response.SearchSuccess, map[string]interface{}{
|
|
"list": list,
|
|
"count": count,
|
|
})
|
|
}
|