From 673b84a0b3c5d04ec9809382561caa369e89a0c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E5=BF=97=E5=BC=BA?= <357099073@qq.com> Date: Wed, 17 Jun 2026 17:18:49 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BE=BF=E6=8D=B7=E5=B7=A5?= =?UTF-8?q?=E5=85=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/src/components/CommonAside.vue | 23 + go/controllers/api_getcard.go | 26 +- go/controllers/platform_account_pool.go | 134 +++ go/controllers/platform_home.go | 3 + go/controllers/pool_probe.go | 3 + go/models/init.go | 2 + go/models/platform_account_pool.go | 21 + go/routers/platform/platform.go | 14 +- platform/src/components/CommonAside.vue | 23 + .../accountpool/codex/components/detail.vue | 600 ++++++++++ .../accountpool/codex/components/edit.vue | 259 ++++ .../accountpool/codex/components/extract.vue | 103 ++ .../codex/components/replenish.vue | 49 + .../src/views/accountpool/codex/index.vue | 1045 +++++++++++++++++ .../apps/cms/analytics/content/index.vue | 241 ---- .../src/views/apps/cms/articles/category.vue | 493 -------- .../cms/articles/components/CategoryNode.vue | 269 ----- .../cms/articles/components/edit-cate.vue | 324 ----- .../apps/cms/articles/components/edit.vue | 686 ----------- .../apps/cms/articles/components/preview.vue | 347 ------ .../src/views/apps/cms/articles/index.vue | 670 ----------- .../views/apps/cms/banner/components/edit.vue | 332 ------ platform/src/views/apps/cms/banner/index.vue | 301 ----- .../views/apps/cms/demand/components/edit.vue | 150 --- platform/src/views/apps/cms/demand/index.vue | 333 ------ platform/src/views/apps/cms/domain/audit.vue | 185 --- platform/src/views/apps/cms/domain/index.vue | 5 - platform/src/views/apps/cms/domain/pool.vue | 287 ----- .../apps/cms/friendlink/components/edit.vue | 302 ----- .../src/views/apps/cms/friendlink/index.vue | 324 ----- .../apps/cms/frontMenu/components/edit.vue | 514 -------- .../src/views/apps/cms/frontMenu/index.vue | 563 --------- platform/src/views/apps/cms/index.vue | 7 - .../apps/cms/onepage/components/edit.vue | 245 ---- platform/src/views/apps/cms/onepage/index.vue | 298 ----- .../apps/cms/products/components/edit.vue | 321 ----- .../src/views/apps/cms/products/index.vue | 295 ----- .../cms/products/types/components/edit.vue | 211 ---- .../views/apps/cms/products/types/index.vue | 240 ---- .../apps/cms/resoucres/category/index.vue | 3 - .../views/apps/cms/resoucres/list/index.vue | 3 - .../apps/cms/services/components/edit.vue | 315 ----- .../src/views/apps/cms/services/index.vue | 281 ----- .../src/views/apps/cms/templates/index.vue | 281 ----- .../src/views/apps/cms/workbench/index.vue | 278 ----- platform/src/views/apps/index.vue | 11 - .../apps/notebook/components/WangEditor.vue | 304 +++++ .../views/apps/notebook/components/edit.vue | 148 +++ .../views/apps/notebook/components/index.vue | 0 platform/src/views/apps/notebook/index.vue | 381 ++++++ 50 files changed, 3135 insertions(+), 9118 deletions(-) create mode 100644 platform/src/views/accountpool/codex/components/detail.vue create mode 100644 platform/src/views/accountpool/codex/components/edit.vue create mode 100644 platform/src/views/accountpool/codex/components/extract.vue create mode 100644 platform/src/views/accountpool/codex/components/replenish.vue create mode 100644 platform/src/views/accountpool/codex/index.vue delete mode 100644 platform/src/views/apps/cms/analytics/content/index.vue delete mode 100644 platform/src/views/apps/cms/articles/category.vue delete mode 100644 platform/src/views/apps/cms/articles/components/CategoryNode.vue delete mode 100644 platform/src/views/apps/cms/articles/components/edit-cate.vue delete mode 100644 platform/src/views/apps/cms/articles/components/edit.vue delete mode 100644 platform/src/views/apps/cms/articles/components/preview.vue delete mode 100644 platform/src/views/apps/cms/articles/index.vue delete mode 100644 platform/src/views/apps/cms/banner/components/edit.vue delete mode 100644 platform/src/views/apps/cms/banner/index.vue delete mode 100644 platform/src/views/apps/cms/demand/components/edit.vue delete mode 100644 platform/src/views/apps/cms/demand/index.vue delete mode 100644 platform/src/views/apps/cms/domain/audit.vue delete mode 100644 platform/src/views/apps/cms/domain/index.vue delete mode 100644 platform/src/views/apps/cms/domain/pool.vue delete mode 100644 platform/src/views/apps/cms/friendlink/components/edit.vue delete mode 100644 platform/src/views/apps/cms/friendlink/index.vue delete mode 100644 platform/src/views/apps/cms/frontMenu/components/edit.vue delete mode 100644 platform/src/views/apps/cms/frontMenu/index.vue delete mode 100644 platform/src/views/apps/cms/index.vue delete mode 100644 platform/src/views/apps/cms/onepage/components/edit.vue delete mode 100644 platform/src/views/apps/cms/onepage/index.vue delete mode 100644 platform/src/views/apps/cms/products/components/edit.vue delete mode 100644 platform/src/views/apps/cms/products/index.vue delete mode 100644 platform/src/views/apps/cms/products/types/components/edit.vue delete mode 100644 platform/src/views/apps/cms/products/types/index.vue delete mode 100644 platform/src/views/apps/cms/resoucres/category/index.vue delete mode 100644 platform/src/views/apps/cms/resoucres/list/index.vue delete mode 100644 platform/src/views/apps/cms/services/components/edit.vue delete mode 100644 platform/src/views/apps/cms/services/index.vue delete mode 100644 platform/src/views/apps/cms/templates/index.vue delete mode 100644 platform/src/views/apps/cms/workbench/index.vue delete mode 100644 platform/src/views/apps/index.vue create mode 100644 platform/src/views/apps/notebook/components/WangEditor.vue create mode 100644 platform/src/views/apps/notebook/components/edit.vue create mode 100644 platform/src/views/apps/notebook/components/index.vue create mode 100644 platform/src/views/apps/notebook/index.vue diff --git a/backend/src/components/CommonAside.vue b/backend/src/components/CommonAside.vue index 243d024..479e138 100644 --- a/backend/src/components/CommonAside.vue +++ b/backend/src/components/CommonAside.vue @@ -427,9 +427,32 @@ h3 { :deep(.el-menu) { border-right: none; height: calc(100% - 80px); + overflow-y: auto; + overflow-x: hidden; padding: 16px 8px; background: transparent; + // 自定义滚动条样式 + scrollbar-width: thin; + scrollbar-color: rgba(255, 255, 255, 0.3) transparent; + + &::-webkit-scrollbar { + width: 4px; + } + + &::-webkit-scrollbar-track { + background: transparent; + } + + &::-webkit-scrollbar-thumb { + background: rgba(255, 255, 255, 0.3); + border-radius: 2px; + + &:hover { + background: rgba(255, 255, 255, 0.5); + } + } + .el-menu-item, .el-sub-menu__title { color: rgba(255, 255, 255, 0.85); diff --git a/go/controllers/api_getcard.go b/go/controllers/api_getcard.go index cc56394..f0a87a7 100644 --- a/go/controllers/api_getcard.go +++ b/go/controllers/api_getcard.go @@ -33,6 +33,7 @@ var validModules = map[string]bool{ "cursor": true, "windsurf": true, "krio": true, + "codex": true, } func (c *ApiGetCardController) cardErr(_ int, _ int, msg string) { @@ -52,7 +53,7 @@ func (c *ApiGetCardController) cardOK(text string) { // // 参数: // - type (必填) 来源平台:xianyu / taobao / pinduoduo / jingdong / local / xubei -// - module (必填) 号池模块:cursor / windsurf / krio +// - module (必填) 号池模块:cursor / windsurf / krio / codex // - data_type (可选) 账号类型:account / tk / account_tk,不传则取任意未提取的 // - id/start_id/current_id (可选) 起始 ID:从该 ID 开始向后提取,避免传 896 却取到 892 func (c *ApiGetCardController) GetCard() { @@ -79,7 +80,7 @@ func (c *ApiGetCardController) GetCard() { return } if !validModules[module] { - c.cardErr(400, 400, fmt.Sprintf("不支持的模块: %s,支持: cursor/windsurf/krio", module)) + c.cardErr(400, 400, fmt.Sprintf("不支持的模块: %s,支持: cursor/windsurf/krio/codex", module)) return } if dataType != "" && !isValidPoolType(dataType) { @@ -96,6 +97,8 @@ func (c *ApiGetCardController) GetCard() { c.extractWindsurf(platform, dataType, startID, now) case "krio": c.extractKrio(platform, dataType, startID, now) + case "codex": + c.extractCodex(platform, dataType, startID, now) } } @@ -175,6 +178,25 @@ func (c *ApiGetCardController) extractKrio(platform, dataType string, startID ui }) } +func (c *ApiGetCardController) extractCodex(platform, dataType string, startID uint64, now time.Time) { + c.extractWithProbe("codex", platform, dataType, now, func() (uint64, *string, *string, string, string, *int8, error) { + var row models.PlatformAccountPoolCodex + qs := models.Orm.QueryTable(new(models.PlatformAccountPoolCodex)). + Filter("is_extracted", 0). + Filter("delete_time__isnull", true) + if startID > 0 { + qs = qs.Filter("id__gte", startID) + } + if dataType != "" { + qs = qs.Filter("data_type", dataType) + } + if err := qs.OrderBy("id").One(&row); err != nil { + return 0, nil, nil, "", "", nil, err + } + return row.ID, &row.Account, &row.Password, row.Token, row.DataType, nil, nil + }) +} + type poolRowFetcher func() (id uint64, account, password *string, token, rowDataType string, isUsed *int8, err error) // extractWithProbe 按 id 顺序提取并探测 Token 可用性;不可用则标记已提取并继续下一条。 diff --git a/go/controllers/platform_account_pool.go b/go/controllers/platform_account_pool.go index 08a2762..93e27f2 100644 --- a/go/controllers/platform_account_pool.go +++ b/go/controllers/platform_account_pool.go @@ -20,6 +20,7 @@ import ( type PlatformAccountPoolCursorController struct{ beego.Controller } type PlatformAccountPoolWindsurfController struct{ beego.Controller } type PlatformAccountPoolKrioController struct{ beego.Controller } +type PlatformAccountPoolCodexController struct{ beego.Controller } type accountPoolCreateRow struct { DataType string `json:"type"` @@ -265,6 +266,28 @@ func listPoolRows(c *beego.Controller, module string) { rows = []models.PlatformAccountPoolKiro{} } list = rows + case "codex": + table := (&models.PlatformAccountPoolCodex{}).TableName() + total, err = accountPoolCountMySQL(table, where, whereArgs) + if err != nil { + poolJSONErr(c, 500, 500, "获取列表失败: "+err.Error()) + return + } + sqlStr := fmt.Sprintf( + "SELECT * FROM `%s` WHERE %s ORDER BY FIELD(is_extracted, 0, 2, 3, 1) ASC, id DESC LIMIT ? OFFSET ?", + table, where, + ) + args := append(append([]interface{}{}, whereArgs...), pageSize, offset) + var rows []models.PlatformAccountPoolCodex + _, err = models.Orm.Raw(sqlStr, args...).QueryRows(&rows) + if err != nil && err != orm.ErrNoRows { + poolJSONErr(c, 500, 500, "获取列表失败: "+err.Error()) + return + } + if rows == nil { + rows = []models.PlatformAccountPoolCodex{} + } + list = rows default: poolJSONErr(c, 400, 400, "无效模块") return @@ -332,6 +355,16 @@ func addPoolRow(c *beego.Controller, module string) { IsExtracted: 0, } _, err = models.Orm.Insert(r) + case "codex": + r := &models.PlatformAccountPoolCodex{ + DataType: strings.TrimSpace(row.DataType), + Account: strings.TrimSpace(row.Account), + Password: strings.TrimSpace(row.Password), + Token: strings.TrimSpace(row.Token), + Remark: strings.TrimSpace(row.Remark), + IsExtracted: 0, + } + _, err = models.Orm.Insert(r) default: poolJSONErr(c, 400, 400, "无效模块") return @@ -397,6 +430,15 @@ func batchAddPoolRows(c *beego.Controller, module string) { Remark: strings.TrimSpace(row.Remark), IsExtracted: 0, }) + case "codex": + _, err = models.Orm.Insert(&models.PlatformAccountPoolCodex{ + DataType: strings.TrimSpace(row.DataType), + Account: strings.TrimSpace(row.Account), + Password: strings.TrimSpace(row.Password), + Token: strings.TrimSpace(row.Token), + Remark: strings.TrimSpace(row.Remark), + IsExtracted: 0, + }) default: poolJSONErr(c, 400, 400, "无效模块") return @@ -443,6 +485,13 @@ func getPoolDetail(c *beego.Controller, module string) { return } c.Data["json"] = map[string]interface{}{"code": 200, "msg": "success", "data": row} + case "codex": + var row models.PlatformAccountPoolCodex + if err := models.Orm.QueryTable(new(models.PlatformAccountPoolCodex)).Filter("id", id).One(&row); err != nil { + poolJSONErr(c, 404, 404, "记录不存在") + return + } + c.Data["json"] = map[string]interface{}{"code": 200, "msg": "success", "data": row} default: poolJSONErr(c, 400, 400, "无效模块") return @@ -573,6 +622,34 @@ func extractPoolRow(c *beego.Controller, module string) { row.ExtractedPlatform = &pf row.Remark = remark c.Data["json"] = map[string]interface{}{"code": 200, "msg": "提取成功", "data": row} + case "codex": + var row models.PlatformAccountPoolCodex + qs := models.Orm.QueryTable(new(models.PlatformAccountPoolCodex)).Filter("is_extracted", 0) + if payload.ID > 0 { + qs = qs.Filter("id", payload.ID) + } else if payload.Type != "" { + qs = qs.Filter("data_type", payload.Type) + } + if err := qs.OrderBy("id").One(&row); err != nil { + poolJSONErr(c, 404, 404, "没有可提取数据") + return + } + _, err = models.Orm.QueryTable(new(models.PlatformAccountPoolCodex)).Filter("id", row.ID).Update(map[string]interface{}{ + "is_extracted": extractStatus, + "extracted_time": now, + "extracted_platform": platform, + "remark": remark, + }) + if err != nil { + poolJSONErr(c, 500, 500, "提取失败: "+err.Error()) + return + } + row.IsExtracted = extractStatus + row.ExtractedTime = &now + pf := platform + row.ExtractedPlatform = &pf + row.Remark = remark + c.Data["json"] = map[string]interface{}{"code": 200, "msg": "提取成功", "data": row} default: poolJSONErr(c, 400, 400, "无效模块") return @@ -678,6 +755,22 @@ func replenishWithProbe(c *beego.Controller, module, dataType, platform, remark id: row.ID, dataType: row.DataType, token: row.Token, row: row, }, nil } + case "codex": + fetch = func() (*poolReplenishCandidate, error) { + var row models.PlatformAccountPoolCodex + err := models.Orm.QueryTable(new(models.PlatformAccountPoolCodex)). + Filter("is_extracted", 0). + Filter("data_type", dataType). + Filter("delete_time__isnull", true). + OrderBy("id"). + One(&row) + if err != nil { + return nil, err + } + return &poolReplenishCandidate{ + id: row.ID, dataType: row.DataType, token: row.Token, row: row, + }, nil + } default: poolJSONErr(c, 400, 400, "无效模块") return @@ -754,6 +847,12 @@ func replenishApplyResponse(row interface{}, platform, remark string, now time.T r.ExtractedPlatform = &pf r.Remark = remark return r + case models.PlatformAccountPoolCodex: + r.IsExtracted = 2 + r.ExtractedTime = &now + r.ExtractedPlatform = &pf + r.Remark = remark + return r default: return row } @@ -793,6 +892,10 @@ func updatePoolRemark(c *beego.Controller, module string) { updated, err = models.Orm.QueryTable(new(models.PlatformAccountPoolKiro)).Filter("id", payload.ID).Update(map[string]interface{}{ "remark": remark, }) + case "codex": + updated, err = models.Orm.QueryTable(new(models.PlatformAccountPoolCodex)).Filter("id", payload.ID).Update(map[string]interface{}{ + "remark": remark, + }) default: poolJSONErr(c, 400, 400, "无效模块") return @@ -826,6 +929,8 @@ func updatePoolExtractFields(module string, id uint64, fields map[string]interfa return models.Orm.QueryTable(new(models.PlatformAccountPoolWindsurf)).Filter("id", id).Update(fields) case "krio": return models.Orm.QueryTable(new(models.PlatformAccountPoolKiro)).Filter("id", id).Update(fields) + case "codex": + return models.Orm.QueryTable(new(models.PlatformAccountPoolCodex)).Filter("id", id).Update(fields) default: return 0, fmt.Errorf("无效模块") } @@ -1059,6 +1164,17 @@ func probePoolToken(c *beego.Controller, module string) { return } token = strings.TrimSpace(row.Token) + case "codex": + if payload.ID == 0 { + poolJSONErr(c, 400, 400, "缺少有效 id") + return + } + var row models.PlatformAccountPoolCodex + if err := models.Orm.QueryTable(new(models.PlatformAccountPoolCodex)).Filter("id", payload.ID).One(&row); err != nil { + poolJSONErr(c, 404, 404, "记录不存在") + return + } + token = strings.TrimSpace(row.Token) default: poolJSONErr(c, 400, 400, "无效模块") return @@ -1182,3 +1298,21 @@ func (c *PlatformAccountPoolKrioController) UpdatePlatform() { } func (c *PlatformAccountPoolKrioController) Unextract() { unextractPoolRow(&c.Controller, "krio") } func (c *PlatformAccountPoolKrioController) ProbeToken() { probePoolToken(&c.Controller, "krio") } + +func (c *PlatformAccountPoolCodexController) List() { listPoolRows(&c.Controller, "codex") } +func (c *PlatformAccountPoolCodexController) Add() { addPoolRow(&c.Controller, "codex") } +func (c *PlatformAccountPoolCodexController) BatchAdd() { batchAddPoolRows(&c.Controller, "codex") } +func (c *PlatformAccountPoolCodexController) Detail() { getPoolDetail(&c.Controller, "codex") } +func (c *PlatformAccountPoolCodexController) Extract() { extractPoolRow(&c.Controller, "codex") } +func (c *PlatformAccountPoolCodexController) Replenish() { replenishPoolRow(&c.Controller, "codex") } +func (c *PlatformAccountPoolCodexController) UpdateRemark() { + updatePoolRemark(&c.Controller, "codex") +} +func (c *PlatformAccountPoolCodexController) SetUnavailable() { + setPoolUnavailable(&c.Controller, "codex") +} +func (c *PlatformAccountPoolCodexController) UpdatePlatform() { + updatePoolPlatform(&c.Controller, "codex") +} +func (c *PlatformAccountPoolCodexController) Unextract() { unextractPoolRow(&c.Controller, "codex") } +func (c *PlatformAccountPoolCodexController) ProbeToken() { probePoolToken(&c.Controller, "codex") } diff --git a/go/controllers/platform_home.go b/go/controllers/platform_home.go index 2d3943b..ebe9a3d 100644 --- a/go/controllers/platform_home.go +++ b/go/controllers/platform_home.go @@ -217,13 +217,16 @@ func (c *PlatformHomeController) AccountPoolInventoryTotals() { {Key: "cursor", Label: "Cursor"}, {Key: "krio", Label: "Kiro"}, {Key: "windsurf", Label: "Windsurf"}, + {Key: "codex", Label: "Codex"}, } modelsList := []interface{}{ new(models.PlatformAccountPoolCursor), new(models.PlatformAccountPoolKiro), new(models.PlatformAccountPoolWindsurf), + new(models.PlatformAccountPoolCodex), } + var grandTotal, grandSold int64 for i := range modules { tot, err := countPoolInventory(modelsList[i], false) diff --git a/go/controllers/pool_probe.go b/go/controllers/pool_probe.go index be8ef84..7195224 100644 --- a/go/controllers/pool_probe.go +++ b/go/controllers/pool_probe.go @@ -16,7 +16,10 @@ func poolTableName(module string) string { return new(models.PlatformAccountPoolWindsurf).TableName() case "krio": return new(models.PlatformAccountPoolKiro).TableName() + case "codex": + return new(models.PlatformAccountPoolCodex).TableName() default: + return "" } } diff --git a/go/models/init.go b/go/models/init.go index 92a376a..691c7f8 100644 --- a/go/models/init.go +++ b/go/models/init.go @@ -61,6 +61,8 @@ func Init(_ string) { new(PlatformAccountPoolKiro), new(PlatformAccountPoolWindsurf), new(PlatformAccountPoolCursor), + new(PlatformAccountPoolCodex), + new(CmsArticleCategory), new(CmsArticle), ) diff --git a/go/models/platform_account_pool.go b/go/models/platform_account_pool.go index 602bba2..3dc8b62 100644 --- a/go/models/platform_account_pool.go +++ b/go/models/platform_account_pool.go @@ -22,6 +22,27 @@ func (m *PlatformAccountPoolKiro) TableName() string { return "yz_platform_account_pool_krio" } +// PlatformAccountPoolCodex 号池表: yz_platform_account_pool_codex +type PlatformAccountPoolCodex struct { + ID uint64 `orm:"column(id);pk;auto" json:"id"` + DataType string `orm:"column(data_type);size(32)" json:"data_type"` // account | tk | account_tk + Account string `orm:"column(account);size(128);default()" json:"account"` + Password string `orm:"column(password);size(255);default()" json:"password"` + Token string `orm:"column(token);type(text);null" json:"token"` + Remark string `orm:"column(remark);size(255);default()" json:"remark"` + IsExtracted int8 `orm:"column(is_extracted);default(0)" json:"is_extracted"` + ExtractedTime *time.Time `orm:"column(extracted_time);type(datetime);null" json:"extracted_time"` + ExtractedPlatform *string `orm:"column(extracted_platform);size(32);null" json:"extracted_platform"` + CreateTime time.Time `orm:"column(create_time);auto_now_add;type(datetime)" json:"create_time"` + UpdateTime *time.Time `orm:"column(update_time);type(datetime);null" json:"update_time"` + DeleteTime *time.Time `orm:"column(delete_time);type(datetime);null" json:"delete_time"` +} + +func (m *PlatformAccountPoolCodex) TableName() string { + return "yz_platform_account_pool_codex" +} + + // PlatformAccountPoolWindsurf 号池表: yz_platform_account_pool_windsurf type PlatformAccountPoolWindsurf struct { ID uint64 `orm:"column(id);pk;auto" json:"id"` diff --git a/go/routers/platform/platform.go b/go/routers/platform/platform.go index d036c98..7cc0621 100644 --- a/go/routers/platform/platform.go +++ b/go/routers/platform/platform.go @@ -183,7 +183,7 @@ func Register() { beego.Router("/platform/cursor/activationcode/disable/:id", &controllers.PlatformCursorActivationCodeController{}, "post:Disable") beego.Router("/platform/cursor/activationcode/export", &controllers.PlatformCursorActivationCodeController{}, "get:Export") - // 账号池管理(cursor/windsurf/krio) + // 账号池管理(cursor/windsurf/krio/codex) beego.Router("/platform/accountPool/cursor/list", &controllers.PlatformAccountPoolCursorController{}, "get:List") beego.Router("/platform/accountPool/cursor/add", &controllers.PlatformAccountPoolCursorController{}, "post:Add") beego.Router("/platform/accountPool/cursor/batchAdd", &controllers.PlatformAccountPoolCursorController{}, "post:BatchAdd") @@ -220,4 +220,16 @@ func Register() { beego.Router("/platform/accountPool/krio/unextract", &controllers.PlatformAccountPoolKrioController{}, "post:Unextract") beego.Router("/platform/accountPool/krio/replenish", &controllers.PlatformAccountPoolKrioController{}, "post:Replenish") beego.Router("/platform/accountPool/krio/probeToken", &controllers.PlatformAccountPoolKrioController{}, "post:ProbeToken") + + beego.Router("/platform/accountPool/codex/list", &controllers.PlatformAccountPoolCodexController{}, "get:List") + beego.Router("/platform/accountPool/codex/add", &controllers.PlatformAccountPoolCodexController{}, "post:Add") + beego.Router("/platform/accountPool/codex/batchAdd", &controllers.PlatformAccountPoolCodexController{}, "post:BatchAdd") + beego.Router("/platform/accountPool/codex/detail/:id", &controllers.PlatformAccountPoolCodexController{}, "get:Detail") + beego.Router("/platform/accountPool/codex/extract", &controllers.PlatformAccountPoolCodexController{}, "post:Extract") + beego.Router("/platform/accountPool/codex/updateRemark", &controllers.PlatformAccountPoolCodexController{}, "post:UpdateRemark") + beego.Router("/platform/accountPool/codex/setUnavailable", &controllers.PlatformAccountPoolCodexController{}, "post:SetUnavailable") + beego.Router("/platform/accountPool/codex/updatePlatform", &controllers.PlatformAccountPoolCodexController{}, "post:UpdatePlatform") + beego.Router("/platform/accountPool/codex/unextract", &controllers.PlatformAccountPoolCodexController{}, "post:Unextract") + beego.Router("/platform/accountPool/codex/replenish", &controllers.PlatformAccountPoolCodexController{}, "post:Replenish") + beego.Router("/platform/accountPool/codex/probeToken", &controllers.PlatformAccountPoolCodexController{}, "post:ProbeToken") } diff --git a/platform/src/components/CommonAside.vue b/platform/src/components/CommonAside.vue index b4fef40..056f255 100644 --- a/platform/src/components/CommonAside.vue +++ b/platform/src/components/CommonAside.vue @@ -530,9 +530,32 @@ h3 { :deep(.el-menu) { border-right: none; height: calc(100% - 128px); + overflow-y: auto; + overflow-x: hidden; padding: 16px 8px; background: transparent; + // 自定义滚动条样式 + scrollbar-width: thin; + scrollbar-color: rgba(255, 255, 255, 0.3) transparent; + + &::-webkit-scrollbar { + width: 4px; + } + + &::-webkit-scrollbar-track { + background: transparent; + } + + &::-webkit-scrollbar-thumb { + background: rgba(255, 255, 255, 0.3); + border-radius: 2px; + + &:hover { + background: rgba(255, 255, 255, 0.5); + } + } + .el-menu-item, .el-sub-menu__title { color: rgba(255, 255, 255, 0.85); diff --git a/platform/src/views/accountpool/codex/components/detail.vue b/platform/src/views/accountpool/codex/components/detail.vue new file mode 100644 index 0000000..37bed82 --- /dev/null +++ b/platform/src/views/accountpool/codex/components/detail.vue @@ -0,0 +1,600 @@ + + + + + diff --git a/platform/src/views/accountpool/codex/components/edit.vue b/platform/src/views/accountpool/codex/components/edit.vue new file mode 100644 index 0000000..8f8c2d1 --- /dev/null +++ b/platform/src/views/accountpool/codex/components/edit.vue @@ -0,0 +1,259 @@ + + + diff --git a/platform/src/views/accountpool/codex/components/extract.vue b/platform/src/views/accountpool/codex/components/extract.vue new file mode 100644 index 0000000..476efb2 --- /dev/null +++ b/platform/src/views/accountpool/codex/components/extract.vue @@ -0,0 +1,103 @@ + + + + + diff --git a/platform/src/views/accountpool/codex/components/replenish.vue b/platform/src/views/accountpool/codex/components/replenish.vue new file mode 100644 index 0000000..1f733de --- /dev/null +++ b/platform/src/views/accountpool/codex/components/replenish.vue @@ -0,0 +1,49 @@ + + + diff --git a/platform/src/views/accountpool/codex/index.vue b/platform/src/views/accountpool/codex/index.vue new file mode 100644 index 0000000..01a5569 --- /dev/null +++ b/platform/src/views/accountpool/codex/index.vue @@ -0,0 +1,1045 @@ + + + + + + + diff --git a/platform/src/views/apps/cms/analytics/content/index.vue b/platform/src/views/apps/cms/analytics/content/index.vue deleted file mode 100644 index 285d84e..0000000 --- a/platform/src/views/apps/cms/analytics/content/index.vue +++ /dev/null @@ -1,241 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/articles/category.vue b/platform/src/views/apps/cms/articles/category.vue deleted file mode 100644 index ea496cd..0000000 --- a/platform/src/views/apps/cms/articles/category.vue +++ /dev/null @@ -1,493 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/articles/components/CategoryNode.vue b/platform/src/views/apps/cms/articles/components/CategoryNode.vue deleted file mode 100644 index 587c276..0000000 --- a/platform/src/views/apps/cms/articles/components/CategoryNode.vue +++ /dev/null @@ -1,269 +0,0 @@ - - - - - \ No newline at end of file diff --git a/platform/src/views/apps/cms/articles/components/edit-cate.vue b/platform/src/views/apps/cms/articles/components/edit-cate.vue deleted file mode 100644 index 21aae19..0000000 --- a/platform/src/views/apps/cms/articles/components/edit-cate.vue +++ /dev/null @@ -1,324 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/articles/components/edit.vue b/platform/src/views/apps/cms/articles/components/edit.vue deleted file mode 100644 index 94d16d5..0000000 --- a/platform/src/views/apps/cms/articles/components/edit.vue +++ /dev/null @@ -1,686 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/articles/components/preview.vue b/platform/src/views/apps/cms/articles/components/preview.vue deleted file mode 100644 index a1f3093..0000000 --- a/platform/src/views/apps/cms/articles/components/preview.vue +++ /dev/null @@ -1,347 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/articles/index.vue b/platform/src/views/apps/cms/articles/index.vue deleted file mode 100644 index 68defeb..0000000 --- a/platform/src/views/apps/cms/articles/index.vue +++ /dev/null @@ -1,670 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/banner/components/edit.vue b/platform/src/views/apps/cms/banner/components/edit.vue deleted file mode 100644 index c21f482..0000000 --- a/platform/src/views/apps/cms/banner/components/edit.vue +++ /dev/null @@ -1,332 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/banner/index.vue b/platform/src/views/apps/cms/banner/index.vue deleted file mode 100644 index 7f6b53f..0000000 --- a/platform/src/views/apps/cms/banner/index.vue +++ /dev/null @@ -1,301 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/demand/components/edit.vue b/platform/src/views/apps/cms/demand/components/edit.vue deleted file mode 100644 index 962276f..0000000 --- a/platform/src/views/apps/cms/demand/components/edit.vue +++ /dev/null @@ -1,150 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/demand/index.vue b/platform/src/views/apps/cms/demand/index.vue deleted file mode 100644 index fb51f27..0000000 --- a/platform/src/views/apps/cms/demand/index.vue +++ /dev/null @@ -1,333 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/domain/audit.vue b/platform/src/views/apps/cms/domain/audit.vue deleted file mode 100644 index 918193f..0000000 --- a/platform/src/views/apps/cms/domain/audit.vue +++ /dev/null @@ -1,185 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/domain/index.vue b/platform/src/views/apps/cms/domain/index.vue deleted file mode 100644 index 6c5b98b..0000000 --- a/platform/src/views/apps/cms/domain/index.vue +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/domain/pool.vue b/platform/src/views/apps/cms/domain/pool.vue deleted file mode 100644 index 81cff16..0000000 --- a/platform/src/views/apps/cms/domain/pool.vue +++ /dev/null @@ -1,287 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/friendlink/components/edit.vue b/platform/src/views/apps/cms/friendlink/components/edit.vue deleted file mode 100644 index f66c6a9..0000000 --- a/platform/src/views/apps/cms/friendlink/components/edit.vue +++ /dev/null @@ -1,302 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/friendlink/index.vue b/platform/src/views/apps/cms/friendlink/index.vue deleted file mode 100644 index f9ca38f..0000000 --- a/platform/src/views/apps/cms/friendlink/index.vue +++ /dev/null @@ -1,324 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/frontMenu/components/edit.vue b/platform/src/views/apps/cms/frontMenu/components/edit.vue deleted file mode 100644 index 1b28068..0000000 --- a/platform/src/views/apps/cms/frontMenu/components/edit.vue +++ /dev/null @@ -1,514 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/frontMenu/index.vue b/platform/src/views/apps/cms/frontMenu/index.vue deleted file mode 100644 index 16489d6..0000000 --- a/platform/src/views/apps/cms/frontMenu/index.vue +++ /dev/null @@ -1,563 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/index.vue b/platform/src/views/apps/cms/index.vue deleted file mode 100644 index 3fa5df9..0000000 --- a/platform/src/views/apps/cms/index.vue +++ /dev/null @@ -1,7 +0,0 @@ - - - - - \ No newline at end of file diff --git a/platform/src/views/apps/cms/onepage/components/edit.vue b/platform/src/views/apps/cms/onepage/components/edit.vue deleted file mode 100644 index b820ee7..0000000 --- a/platform/src/views/apps/cms/onepage/components/edit.vue +++ /dev/null @@ -1,245 +0,0 @@ - - - - - - diff --git a/platform/src/views/apps/cms/onepage/index.vue b/platform/src/views/apps/cms/onepage/index.vue deleted file mode 100644 index 1e53122..0000000 --- a/platform/src/views/apps/cms/onepage/index.vue +++ /dev/null @@ -1,298 +0,0 @@ - - - - - - diff --git a/platform/src/views/apps/cms/products/components/edit.vue b/platform/src/views/apps/cms/products/components/edit.vue deleted file mode 100644 index 855157a..0000000 --- a/platform/src/views/apps/cms/products/components/edit.vue +++ /dev/null @@ -1,321 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/products/index.vue b/platform/src/views/apps/cms/products/index.vue deleted file mode 100644 index 215cbff..0000000 --- a/platform/src/views/apps/cms/products/index.vue +++ /dev/null @@ -1,295 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/products/types/components/edit.vue b/platform/src/views/apps/cms/products/types/components/edit.vue deleted file mode 100644 index bc50820..0000000 --- a/platform/src/views/apps/cms/products/types/components/edit.vue +++ /dev/null @@ -1,211 +0,0 @@ - - - - - - diff --git a/platform/src/views/apps/cms/products/types/index.vue b/platform/src/views/apps/cms/products/types/index.vue deleted file mode 100644 index e3bc056..0000000 --- a/platform/src/views/apps/cms/products/types/index.vue +++ /dev/null @@ -1,240 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/platform/src/views/apps/cms/resoucres/category/index.vue b/platform/src/views/apps/cms/resoucres/category/index.vue deleted file mode 100644 index b4b3e83..0000000 --- a/platform/src/views/apps/cms/resoucres/category/index.vue +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/platform/src/views/apps/cms/resoucres/list/index.vue b/platform/src/views/apps/cms/resoucres/list/index.vue deleted file mode 100644 index 2ea1635..0000000 --- a/platform/src/views/apps/cms/resoucres/list/index.vue +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/platform/src/views/apps/cms/services/components/edit.vue b/platform/src/views/apps/cms/services/components/edit.vue deleted file mode 100644 index ae6fe27..0000000 --- a/platform/src/views/apps/cms/services/components/edit.vue +++ /dev/null @@ -1,315 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/services/index.vue b/platform/src/views/apps/cms/services/index.vue deleted file mode 100644 index ba82f59..0000000 --- a/platform/src/views/apps/cms/services/index.vue +++ /dev/null @@ -1,281 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/templates/index.vue b/platform/src/views/apps/cms/templates/index.vue deleted file mode 100644 index aef49a1..0000000 --- a/platform/src/views/apps/cms/templates/index.vue +++ /dev/null @@ -1,281 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/cms/workbench/index.vue b/platform/src/views/apps/cms/workbench/index.vue deleted file mode 100644 index 39ed412..0000000 --- a/platform/src/views/apps/cms/workbench/index.vue +++ /dev/null @@ -1,278 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/index.vue b/platform/src/views/apps/index.vue deleted file mode 100644 index 2ce359b..0000000 --- a/platform/src/views/apps/index.vue +++ /dev/null @@ -1,11 +0,0 @@ - - - - - diff --git a/platform/src/views/apps/notebook/components/WangEditor.vue b/platform/src/views/apps/notebook/components/WangEditor.vue new file mode 100644 index 0000000..03a48c3 --- /dev/null +++ b/platform/src/views/apps/notebook/components/WangEditor.vue @@ -0,0 +1,304 @@ + + + + + diff --git a/platform/src/views/apps/notebook/components/edit.vue b/platform/src/views/apps/notebook/components/edit.vue new file mode 100644 index 0000000..ad7643c --- /dev/null +++ b/platform/src/views/apps/notebook/components/edit.vue @@ -0,0 +1,148 @@ + + + + + diff --git a/platform/src/views/apps/notebook/components/index.vue b/platform/src/views/apps/notebook/components/index.vue new file mode 100644 index 0000000..e69de29 diff --git a/platform/src/views/apps/notebook/index.vue b/platform/src/views/apps/notebook/index.vue new file mode 100644 index 0000000..311c0ac --- /dev/null +++ b/platform/src/views/apps/notebook/index.vue @@ -0,0 +1,381 @@ + + + + +