批量优化
This commit is contained in:
1 parent
438145cae7
commit
c925b198d1
50 files changed
+5716
-291
No files matched your search
@@ -4,11 +4,13 @@ import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"io"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"server/models"
|
||||
"server/pkg/jwtutil"
|
||||
"server/services/wechatmp"
|
||||
"server/services/wechatmini"
|
||||
"server/services/wechatmp"
|
||||
|
||||
beego "github.com/beego/beego/v2/server/web"
|
||||
)
|
||||
@@ -129,3 +131,88 @@ func (c *PlatformWechatMiniController) SaveConfig() {
|
||||
}
|
||||
c.ok(nil, "保存成功")
|
||||
}
|
||||
|
||||
// ListApps GET /platform/wechatMini/apps 多小程序应用列表(AppSecret 不回显)
|
||||
func (c *PlatformWechatMiniController) ListApps() {
|
||||
if _, err := c.claims(); err != nil {
|
||||
c.jsonErr(401, 401, err.Error())
|
||||
return
|
||||
}
|
||||
rows, err := wechatmini.ListApps()
|
||||
if err != nil {
|
||||
c.jsonErr(500, 500, "获取应用列表失败")
|
||||
return
|
||||
}
|
||||
type appDTO struct {
|
||||
models.WechatMiniApp
|
||||
Configured bool `json:"configured"` // AppSecret 已配置
|
||||
}
|
||||
list := make([]appDTO, 0, len(rows))
|
||||
for _, r := range rows {
|
||||
dto := appDTO{WechatMiniApp: r, Configured: r.AppSecret != ""}
|
||||
list = append(list, dto)
|
||||
}
|
||||
c.ok(map[string]interface{}{"list": list}, "获取成功")
|
||||
}
|
||||
|
||||
// SaveApp POST /platform/wechatMini/app/save 新增/更新应用
|
||||
func (c *PlatformWechatMiniController) SaveApp() {
|
||||
if _, err := c.claims(); err != nil {
|
||||
c.jsonErr(401, 401, err.Error())
|
||||
return
|
||||
}
|
||||
var p struct {
|
||||
ID uint64 `json:"id"`
|
||||
Name string `json:"name"`
|
||||
AppID string `json:"app_id"`
|
||||
AppSecret string `json:"app_secret"`
|
||||
Enabled int `json:"enabled"`
|
||||
AutoBind int `json:"auto_bind"`
|
||||
Remark string `json:"remark"`
|
||||
}
|
||||
raw, err := io.ReadAll(c.Ctx.Request.Body)
|
||||
if err != nil {
|
||||
c.jsonErr(400, 400, "参数错误")
|
||||
return
|
||||
}
|
||||
if err := json.Unmarshal(raw, &p); err != nil {
|
||||
c.jsonErr(400, 400, "参数错误")
|
||||
return
|
||||
}
|
||||
if strings.TrimSpace(p.Name) == "" {
|
||||
c.jsonErr(400, 400, "应用名称不能为空")
|
||||
return
|
||||
}
|
||||
id, err := wechatmini.SaveApp(wechatmini.SaveAppInput{
|
||||
ID: p.ID,
|
||||
Name: p.Name,
|
||||
AppID: p.AppID,
|
||||
AppSecret: p.AppSecret,
|
||||
Enabled: p.Enabled == 1,
|
||||
AutoBind: p.AutoBind == 1,
|
||||
Remark: p.Remark,
|
||||
})
|
||||
if err != nil {
|
||||
c.jsonErr(400, 400, err.Error())
|
||||
return
|
||||
}
|
||||
c.ok(map[string]interface{}{"id": id}, "保存成功")
|
||||
}
|
||||
|
||||
// DeleteApp POST /platform/wechatMini/app/delete/:id 软删应用并停用
|
||||
func (c *PlatformWechatMiniController) DeleteApp() {
|
||||
if _, err := c.claims(); err != nil {
|
||||
c.jsonErr(401, 401, err.Error())
|
||||
return
|
||||
}
|
||||
id, err := strconv.ParseUint(c.Ctx.Input.Param(":id"), 10, 64)
|
||||
if err != nil || id == 0 {
|
||||
c.jsonErr(400, 400, "无效ID")
|
||||
return
|
||||
}
|
||||
if err := wechatmini.DeleteApp(id); err != nil {
|
||||
c.jsonErr(400, 400, err.Error())
|
||||
return
|
||||
}
|
||||
c.ok(nil, "已删除")
|
||||
}
|
||||
Reference in new issue
Block a user