init: 初始化 hgmj 后台管理项目

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-10-08 17:48:09 +08:00
co-authored by Claude Opus 4.7
commit 397398b746
645 changed files with 179153 additions and 0 deletions
+12
View File
@@ -0,0 +1,12 @@
---
description: 用户要求 git commit、提交代码、写 commit message 或创建提交时,必须先加载 commit-convention skill 并严格遵守
alwaysApply: false
---
# Git 提交规范自动激活
当用户要求**提交代码**、**git commit**、**写提交说明**或执行提交流程时:
1. 必须先加载 `.cursor/skills/commit-convention/SKILL.md`。
2. Agent 代提交时 subject **必须**以 `[Ai]` 开头,并写清业务变更或 Bug 修复,禁止敷衍 subject。
3. 未获用户明确授权不得 commit;不得提交 `.env` 等含密钥文件;默认不 push。
+7
View File
@@ -0,0 +1,7 @@
{
"plugins": {
"superpowers": {
"enabled": true
}
}
}
+45
View File
@@ -0,0 +1,45 @@
# Skills 导航
本目录提供项目级 Cursor Skills,面向本仓库的 `Vue2 + Element UI` 管理端开发。
## 当前可用 Skills
### 1) 页面与组件开发
- 路径:`vue2-element-dev/SKILL.md`
- 适用:新增/修改列表页、表单弹窗、复用组件
- 重点:页面结构、状态管理、方法组织、交付前检查
### 2) 接口联调
- 路径:`vue2-api-integration/SKILL.md`
- 适用:接口接入、参数映射、错误处理、鉴权异常处理
- 重点:请求层与页面层分工、响应兜底、401/403、防重复提交
### 3) 路由与权限接入
- 路径:`vue2-route-permission/SKILL.md`
- 适用:新增页面后接菜单、接路由、排查可见性/可访问问题
- 重点:模块路由拆分、`permissionRouter` 聚合、菜单激活与一致性
## 推荐使用顺序
新增业务功能时,建议按以下顺序使用:
1. 先看 `vue2-element-dev`,把页面骨架与交互结构搭好
2. 再用 `vue2-api-integration` 完成查询/提交联调和异常兜底
3. 最后用 `vue2-route-permission` 接入路由菜单并做入口验证
## 每套 Skill 的配套文件
每个 skill 目录都包含:
- `SKILL.md`:主规范与流程
- `examples.md`:可参考的最小示例
- `checklist.md`:提交前自检项
## 团队使用建议
- 优先复用现有页面模式,不做无关重构
- 新功能至少走一遍对应 `checklist.md`
- 若出现同类问题反复发生,可在对应 skill 中沉淀新增规则
+97
View File
@@ -0,0 +1,97 @@
---
name: commit-convention
description: 为本仓库生成符合团队规范的 Git 提交信息,并在用户要求提交代码时执行完整提交流程。用于 git commit、提交代码、写 commit message、创建提交、push 前整理提交等场景;Agent 代提交时必须使用 [Ai] 标记并写清业务变更。
---
# Git 提交规范(Agent 代提交)
## 触发条件
满足任一条件,**必须先加载本 skill**,再执行 `git add` / `git commit`:
- 用户明确要求:提交、commit、git commit、保存提交、push 前先 commit 等
- 用户规则中的「committing-changes-with-git」流程已启动
**未获用户明确授权时,不得执行 commit。**
---
## Agent 代提交:标记规则(强制)
由 Cursor Agent 发起的提交,**必须**在 subject 前加 `[Ai]`:
```text
[Ai] <type>(<scope>): <subject>
<body 可选:业务背景、影响范围、关联 Bug>
```
- `type`:`feat` | `fix` | `refactor` | `style` | `perf` | `chore` | `docs` | `test` | `build` | `ci`
- `scope`:模块/页面,如 `benefits`、`mine`、`community`、`player`
- 可在正文末尾追加 trailer(可选):
```text
Co-Authored-By: Cursor <noreply@cursor.com>
```
用户本人手动提交、且明确说明「人工提交」时,建议使用 `[Human]`;Agent **不要**替用户假标 `[Human]`。
---
## Subject 质量(强制)
提交说明必须让人一眼看懂**改了什么业务**或**修了什么问题**。
### 必须做到
1. 先并行执行:`git status`、`git diff`(含 staged)、`git log -5 --oneline` 了解风格与变更范围
2. subject 用**完整语义**描述,优先中文;可中英混用 scope
3. 多文件、多模块时:一条 commit 只包同一业务目标;若混杂无关改动,先询问是否拆分
4. body 写:原因、用户可见变化、风险点(如有)
### 严禁(subject 不得仅为或等同于)
`test`、`修改`、`update`、`fix`、`xxx`、`111`、`wip`、`temp`、`提交`、`save`、纯标点、纯数字、单字
### 示例
```text
# ✅
[Ai] feat(benefits): 新增七日签到弹窗与连续签到奖励展示
[Ai] fix(player): 修复横屏切换后 HLS 首帧黑屏
[Ai] refactor(mine): 签到任务列表抽离 useSignTask composable
# ❌
[Ai] fix: 修改
[Ai] feat: test
修改播放器
111
```
---
## 提交流程(与 user rule 对齐)
1. `git status` + `git diff` + `git log`(可并行)
2. 根据 diff **撰写**符合本规范的 message(HEREDOC 传 `-m`)
3. 只 `git add` 与本次任务相关的文件
4. **不得**提交 `.env`、密钥、凭据类文件;若用户在 staged 中含此类文件,警告并排除
5. `git commit` 后 `git status` 确认成功
6. hook 失败时:**不要** `commit --amend`,修 message 后**新建 commit**
7. **除非用户明确要求,否则不 `git push`**
---
## 输出给用户
提交完成后简要说明:
- commit hash(若有)
- 本次纳入的文件范围
- message 摘要(一行)
---
## 与本地 Hook / CI 的关系
本 skill 约束 **Agent 行为**。若仓库后续接入 `husky` + `commitlint` 或 CI,以仓库脚本校验为准;Agent 仍须预先满足 `[Ai]` 与 subject 质量,避免 hook 拒绝。
@@ -0,0 +1,63 @@
---
name: vue2-api-integration
description: Use when implementing or debugging API integration in this Vue2 project, including request parameter mapping, response normalization, business error handling, auth expiry handling, and submit/list flow consistency.
disable-model-invocation: true
---
# Vue2 API Integration
## 适用场景
- 新增或修改 `src/api/*.js` 接口方法
- 页面查询、提交、删除、状态切换的接口联调
- 线上/测试环境出现接口报错、数据格式不一致、权限失效
## 联调核心原则
- **一处定义接口**:请求方法统一维护在 `src/api`,页面层不写裸请求
- **参数先整形再发送**:空值、时间范围、布尔值、数字类型先归一化
- **响应做兜底**:列表、分页、详情都要有默认值,避免空指针
- **错误统一反馈**:用户看得懂、可操作;开发可定位
- **鉴权失效可恢复**:401/403 走统一处理,避免页面卡死
## 请求层约定
- GET 查询使用 `params`,POST/PUT 使用 `data`
- 接口函数命名表达业务动作:`getXxxList`、`createXxx`、`updateXxx`
- 同类接口保持参数结构一致,降低页面层分支逻辑
## 页面层约定
- 页面只做调用、状态切换、提示和数据映射
- 所有异步方法都要有 `loading` 生命周期(开始/结束)
- 提交类动作默认防重复:`submitLoading` 或按钮禁用
- 删除/危险操作必须确认后调用
## 常见数据映射
- 时间区间:`[startTime, endTime]` 拆成后端需要字段
- 开关状态:`true/false` 映射为后端约定值(如 `1/0`)
- 数字输入:提交前转数字,避免 `"1"`/`1` 混用
- 列表响应:`list`、`total` 必须有默认值
## 错误与鉴权处理
- 业务失败:提示明确失败原因,不吞错误
- 网络异常:提示“网络异常,请稍后重试”
- 401:提示登录失效并引导重新登录
- 403:提示无权限并保持当前页面可回退
- 异常分支必须收尾:关闭 loading、恢复按钮状态
## 推荐联调流程
1. 先确认接口文档字段和返回结构
2. 在 `src/api` 定义/更新请求函数
3. 页面接入并补齐参数整形与响应兜底
4. 跑通成功路径(查询/提交)
5. 验证失败路径(业务报错/网络异常/无权限)
6. 执行 lint 或 test-build 确认无新增阻断问题
## 快速参考
- 示例代码:见 [examples.md](examples.md)
- 联调检查表:见 [checklist.md](checklist.md)
@@ -0,0 +1,30 @@
# Checklist
## 接口定义检查
- [ ] 接口方法统一定义在 `src/api/*.js`
- [ ] GET 使用 `params`,POST/PUT 使用 `data`
- [ ] 方法名与业务动作匹配(get/create/update/delete)
- [ ] 请求路径、method、参数字段与后端约定一致
## 页面联调检查
- [ ] 查询参数已整形(时间范围、布尔、数字、空值)
- [ ] 列表响应有默认值(`list`、`total`)
- [ ] 提交按钮有防重复(`submitLoading`/禁用)
- [ ] 删除/危险动作有二次确认
- [ ] 异常场景会关闭 loading 并提示用户
## 错误与权限检查
- [ ] 业务错误提示清晰,不吞异常
- [ ] 网络异常提示可理解(可重试)
- [ ] 401 有登录失效处理
- [ ] 403 有无权限处理与回退路径
## 交付前检查
- [ ] 成功路径通过(查询/提交/删除)
- [ ] 失败路径通过(业务失败/网络异常/权限失败)
- [ ] 执行 `npm run lint` 或 `npm run test-build`
- [ ] 不提交无关改动
@@ -0,0 +1,78 @@
# Examples
## API 方法定义示例
```js
import request from "@/utils/request";
export function getCheckInList(params) {
return request({
url: "/signin/checkin/list",
method: "get",
params
});
}
export function saveCheckInConfig(data) {
return request({
url: "/signin/checkin/config/save",
method: "post",
data
});
}
```
## 查询参数整形示例
```js
buildQueryParams() {
const { dateRange, status, pageNum, pageSize, keyword } = this.queryForm;
return {
pageNum,
pageSize,
keyword: keyword ? keyword.trim() : "",
status: typeof status === "boolean" ? (status ? 1 : 0) : status,
startTime: dateRange && dateRange.length ? dateRange[0] : "",
endTime: dateRange && dateRange.length ? dateRange[1] : ""
};
}
```
## 列表请求与兜底示例
```js
async fetchList() {
this.loading = true;
try {
const params = this.buildQueryParams();
const res = await getCheckInList(params);
const data = (res && res.data) || {};
this.tableData = Array.isArray(data.list) ? data.list : [];
this.total = Number(data.total || 0);
} catch (e) {
this.$message.error("列表加载失败,请稍后重试");
} finally {
this.loading = false;
}
}
```
## 提交流程与防重复示例
```js
async handleSubmit() {
if (this.submitLoading) return;
this.submitLoading = true;
try {
await this.$refs.formRef.validate();
await saveCheckInConfig(this.formData);
this.$message.success("保存成功");
this.dialogVisible = false;
this.fetchList();
} catch (e) {
this.$message.error("保存失败,请检查后重试");
} finally {
this.submitLoading = false;
}
}
```
+70
View File
@@ -0,0 +1,70 @@
---
name: vue2-element-dev
description: Use when implementing or modifying Vue2 + Element UI pages/components in this repository, especially for list pages, form dialogs, API integration, route/menu wiring, and pre-delivery checks.
disable-model-invocation: true
---
# Vue2 Element Dev
## 适用场景
- 新增或修改 `src/views` 下的页面(列表、表单、弹窗)
- 新增或修改 `src/components` 下的复用组件
- 做接口联调、参数映射、提交与回显
- 做路由接入、导航菜单接入、权限相关入口调整
## 项目默认约定(平衡型)
- **优先复用现有模式**:先参考同目录页面写法,再补差异
- **命名可读**:页面目录、组件名、方法名优先语义化
- **数据分层**:查询参数、表单数据、UI 状态分开管理
- **接口调用单点化**:统一放到 `src/api/*.js`,页面仅做调用和状态处理
- **样式就近维护**:页面样式写在组件内,避免全局污染
## 页面开发流程
1. 先找一个同类型页面作为参考(表格页/配置页/弹窗页)
2. 搭出页面骨架:筛选区、操作区、表格区、分页区
3. 补齐数据结构:`list`、`loading`、`query`、`pagination`
4. 接入接口:查询、重置、增删改、状态切换
5. 完成交互反馈:确认弹窗、成功提示、失败兜底
6. 执行构建或 lint 验证,修复明显问题后再交付
## 推荐代码组织
- `data`
- 查询模型:`queryForm`
- 列表模型:`tableData`
- 状态模型:`loading` / `dialogVisible` / `submitLoading`
- `computed`
- 放衍生值,不放有副作用逻辑
- `methods`
- `fetchList`:统一列表查询入口
- `handleSearch` / `handleReset`
- `handleAdd` / `handleEdit` / `handleDelete`
- `handleSubmit`:表单提交统一出口
## 接口联调约定
- API 文件里维护请求函数,页面中只做调用
- 参数透传前做必要整形(时间范围、数字布尔转换)
- 提交前做前端必填校验;提交后统一提示
- 失败场景要收敛:关闭 loading、保留用户输入、提示可理解信息
## 路由与菜单接入约定
- 新页面需要补路由入口与导航入口
- 菜单文案与页面标题保持一致,避免多处命名不一致
- 权限字段沿用现有规则,不自创新字段名
## 交付前最低检查
- 页面可正常进入,主流程可跑通(查、增/改、删)
- 列表页分页/筛选联动正常
- 弹窗表单可回显、可校验、可提交
- 无明显控制台报错,构建或 lint 不出现新增阻断错误
## 快速参考
- 详细示例:见 [examples.md](examples.md)
- 提交前清单:见 [checklist.md](checklist.md)
@@ -0,0 +1,25 @@
# Checklist
## 开发中检查
- [ ] 页面结构完整(筛选、表格、分页/操作区)
- [ ] `loading` 状态在请求前后正确切换
- [ ] 查询、重置、分页逻辑一致
- [ ] 新增/编辑弹窗支持回显、校验、提交
- [ ] 删除/状态切换有确认提示与成功反馈
- [ ] API 参数字段与后端约定一致
## 接入检查
- [ ] 新页面路由已添加
- [ ] 导航菜单已添加或已挂接
- [ ] 页面标题、菜单名称、权限标识一致
- [ ] 未破坏已有页面入口
## 交付前检查
- [ ] 至少执行一次 `npm run lint` 或 `npm run test-build`
- [ ] 控制台无新增阻断错误
- [ ] 主流程可复现(查、增/改、删)
- [ ] 异常分支有兜底(失败提示、loading 关闭)
- [ ] 仅提交与本需求相关改动
+127
View File
@@ -0,0 +1,127 @@
# Examples
## 列表页最小骨架(Vue2 + Element UI)
```vue
<template>
<div class="page-wrap">
<el-form :inline="true" :model="queryForm">
<el-form-item label="关键词">
<el-input v-model="queryForm.keyword" clearable />
</el-form-item>
<el-form-item>
<el-button type="primary" @click="handleSearch">查询</el-button>
<el-button @click="handleReset">重置</el-button>
</el-form-item>
</el-form>
<el-table :data="tableData" v-loading="loading" border>
<el-table-column prop="id" label="ID" width="100" />
<el-table-column prop="name" label="名称" min-width="160" />
</el-table>
<el-pagination
:current-page="queryForm.pageNum"
:page-size="queryForm.pageSize"
:total="total"
layout="total, prev, pager, next"
@current-change="handlePageChange"
/>
</div>
</template>
<script>
import { getList } from "@/api/demo";
export default {
name: "DemoList",
data() {
return {
loading: false,
tableData: [],
total: 0,
queryForm: {
keyword: "",
pageNum: 1,
pageSize: 20
}
};
},
created() {
this.fetchList();
},
methods: {
async fetchList() {
this.loading = true;
try {
const res = await getList(this.queryForm);
this.tableData = res?.data?.list || [];
this.total = res?.data?.total || 0;
} finally {
this.loading = false;
}
},
handleSearch() {
this.queryForm.pageNum = 1;
this.fetchList();
},
handleReset() {
this.queryForm.keyword = "";
this.queryForm.pageNum = 1;
this.fetchList();
},
handlePageChange(page) {
this.queryForm.pageNum = page;
this.fetchList();
}
}
};
</script>
```
## API 文件示例
```js
import request from "@/utils/request";
export function getList(params) {
return request({
url: "/api/demo/list",
method: "get",
params
});
}
export function createItem(data) {
return request({
url: "/api/demo/create",
method: "post",
data
});
}
```
## 表单弹窗处理示例
```js
methods: {
openDialog(row) {
this.dialogVisible = true;
this.formData = row
? { id: row.id, name: row.name }
: { id: "", name: "" };
},
async handleSubmit() {
this.submitLoading = true;
try {
await this.$refs.formRef.validate();
await createItem(this.formData);
this.$message.success("保存成功");
this.dialogVisible = false;
this.fetchList();
} finally {
this.submitLoading = false;
}
}
}
```
@@ -0,0 +1,56 @@
---
name: vue2-route-permission
description: Use when adding or modifying route/menu/permission access in this Vue2 admin project, including module router files, permissionRouter aggregation, sidebar visibility, and route metadata consistency.
disable-model-invocation: true
---
# Vue2 Route Permission
## 适用场景
- 新增一个业务页面,需要接入菜单与路由
- 新增一个模块路由文件并接入 `permissionRouter`
- 调整页面可见性、菜单结构、入口名称
- 排查“路由已写但菜单不显示 / 可见但不可访问”问题
## 本项目路由结构认知
- 模块路由拆分在 `src/router/*.js`(例如 `signin.js`)
- 聚合路由在 `src/router/permissionRouter.js`
- 侧边栏使用 `store.state.routerList` 渲染(见 `src/views/main/components/nav.vue`)
## 接入原则
- **单模块独立**:每个业务域维护自己的路由文件
- **统一聚合出口**:模块路由必须在 `permissionRouter.js` 引入并加入数组
- **元信息一致**:`title`、`meta.title`、`name`、`path` 保持语义一致
- **层级清晰**:一级菜单挂在 `Main` 下,子页面在 `children`
## 新页面接入流程
1. 在 `src/views` 创建页面组件并命名清晰
2. 在对应模块路由文件新增子路由(或新建模块路由文件)
3. 设置基础字段:`path`、`name`、`title`、`meta.title`
4. 需要缓存时补 `meta.keepAlive`
5. 在 `permissionRouter.js` 引入并追加模块路由
6. 验证菜单显示、点击跳转、激活状态、刷新后可访问
## 字段约定
- `path`:使用短横线风格,避免含糊缩写
- `name`:驼峰命名,保持唯一
- `title`:用于菜单与页面文案,避免同义不同字
- `icon`:仅一级菜单使用,沿用 Element 图标
- `meta.title`:与 `title` 保持一致,方便统一读取
## 常见问题处理
- **菜单不显示**:检查模块路由是否已加入 `permissionRouter` 聚合数组
- **菜单显示但跳转异常**:检查 `path` 与组件导入是否正确
- **激活态不正确**:检查路由跳转后 `activeRouter` 是否对应当前 `path`
- **刷新丢失访问**:检查路由注册时机和权限数据初始化顺序
## 快速参考
- 接入示例:见 [examples.md](examples.md)
- 自检清单:见 [checklist.md](checklist.md)
@@ -0,0 +1,28 @@
# Checklist
## 新增路由检查
- [ ] 页面组件已创建且导出正常
- [ ] 模块路由文件中已添加对应子路由
- [ ] 子路由包含 `path`、`name`、`title`、`meta.title`
- [ ] `name` 唯一,`path` 可读且与业务语义一致
## 聚合与菜单检查
- [ ] 新模块路由已在 `permissionRouter.js` 引入
- [ ] 已加入聚合数组并保持风格一致
- [ ] 一级菜单 `title/icon` 设置合理
- [ ] 侧边栏可见,点击可跳转
## 权限与体验检查
- [ ] 刷新页面后路由仍可访问
- [ ] 无权限场景有明确反馈(如项目已有拦截逻辑)
- [ ] 当前菜单激活态与页面路径一致
- [ ] 页面标题与菜单文案一致
## 交付前检查
- [ ] 至少执行一次 `npm run lint` 或 `npm run test-build`
- [ ] 无新增阻断报错
- [ ] 仅提交与路由接入相关改动
@@ -0,0 +1,65 @@
# Examples
## 模块路由文件示例(`src/router/demo.js`)
```js
import Main from "../views/main";
import DemoList from "../views/demo/list";
import DemoConfig from "../views/demo/config";
const DemoRouter = {
path: "/demo",
component: Main,
title: "示例管理",
icon: "el-icon-menu",
meta: {
keepAlive: true
},
children: [
{
path: "/demo-list",
component: DemoList,
name: "demoList",
title: "示例列表",
meta: {
title: "示例列表",
keepAlive: true
}
},
{
path: "/demo-config",
component: DemoConfig,
name: "demoConfig",
title: "示例配置",
meta: {
title: "示例配置",
keepAlive: true
}
}
]
};
export default DemoRouter;
```
## 聚合接入示例(`src/router/permissionRouter.js`)
```js
import DemoRouter from "./demo";
const authRouter = [
// ...existing routers
DemoRouter
];
export default authRouter;
```
## 路由排查最小步骤
```js
// 1. 看 router 文件是否 export default
// 2. 看 permissionRouter 是否 import + push
// 3. 看 path/name/title/meta.title 是否齐全
// 4. 看页面组件路径是否正确
```
+2
View File
@@ -0,0 +1,2 @@
NODE_ENV = 'production'
VUE_APP_TITLE = 'production'
+2
View File
@@ -0,0 +1,2 @@
NODE_ENV = 'production'
VUE_APP_TITLE = 'test'
+21
View File
@@ -0,0 +1,21 @@
.DS_Store
node_modules
/dist
# local env files
.env.local
.env.*.local
# Log files
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
+1
View File
@@ -0,0 +1 @@
12
+2
View File
@@ -0,0 +1,2 @@
# node 版本使用 12.18.1
+5
View File
@@ -0,0 +1,5 @@
module.exports = {
presets: [
'@vue/app'
]
}
+15800
View File
File diff suppressed because it is too large Load Diff
+87
View File
@@ -0,0 +1,87 @@
{
"name": "admin-server",
"version": "0.1.0",
"private": true,
"scripts": {
"dev": "vue-cli-service serve",
"build": "NODE_ENV=production vue-cli-service build",
"test-build": "vue-cli-service build --mode test",
"lint": "vue-cli-service lint"
},
"dependencies": {
"@liripeng/vue-audio-player": "1.1.1",
"core-js": "^2.6.5",
"dplayer": "^1.26.0",
"echarts": "^4.5.0",
"element-ui": "^2.15.8",
"gif.js": "^0.2.0",
"gifuct-js": "^2.1.2",
"hls.js": "^1.0.0",
"js-base64": "^2.5.2",
"js-md5": "^0.7.3",
"libphonenumber-js": "^1.7.48",
"lodash": "^4.17.15",
"moment": "^2.24.0",
"qrcodejs2": "0.0.2",
"spark-md5": "^3.0.1",
"video.js": "^7.6.5",
"videojs-contrib-hls": "^5.15.0",
"vue": "^2.6.10",
"vue-aplayer": "^1.6.1",
"vue-count-to": "^1.0.13",
"vue-router": "^3.0.3",
"vue-simple-uploader": "^0.7.2",
"vuex": "^3.0.1",
"vuex-persistedstate": "^2.7.1",
"wangeditor": "^4.6.12",
"xlsx": "^0.15.6"
},
"devDependencies": {
"@vue/cli-plugin-babel": "^3.11.0",
"@vue/cli-plugin-eslint": "^3.11.0",
"@vue/cli-service": "^4.1.1",
"axios": "^0.19.0",
"babel-eslint": "^10.0.1",
"compression-webpack-plugin": "^3.1.0",
"eslint": "^5.16.0",
"eslint-plugin-vue": "^5.0.0",
"node-sass": "^4.9.0",
"qs": "^6.9.0",
"sass-loader": "^7.1.0",
"vue-cropper": "^0.4.9",
"vue-template-compiler": "^2.6.10"
},
"eslintConfig": {
"root": true,
"env": {
"node": true
},
"extends": [
"plugin:vue/essential",
"eslint:recommended"
],
"rules": {
"no-console": "off",
"no-debugger": "off",
"no-restricted-syntax": [
"error",
{
"selector": "CallExpression[callee.object.name='console'][callee.property.name!=/^(log|warn|error|info|trace)$/]",
"message": "Unexpected property on console object was called"
}
]
},
"parserOptions": {
"parser": "babel-eslint"
}
},
"postcss": {
"plugins": {
"autoprefixer": {}
}
},
"browserslist": [
"> 1%",
"last 2 versions"
]
}
Executable
+6
View File
@@ -0,0 +1,6 @@
# sh 执行打包到正式服上
npm run build
zip -q -r dist.zip dist
scp dist.zip root@172.104.39.32:/tmp/dist.zip
ssh root@172.104.39.32 "cd /server/hgmj/webadmin/dist/ && rm -rf ./* && unzip -q /tmp/dist.zip -d /tmp/extract && mv /tmp/extract/dist/* . && rm -rf /tmp/extract /tmp/dist.zip && echo DEPLOY_OK"
rm dist.zip
+162
View File
@@ -0,0 +1,162 @@
---
项目名称: 91短剧 管理后台客户端 # 与 DMP 或内部命名一致时请自行替换
一级部门: 北斗 # 请填写一级部门名称
二级部门: 瑞升 # 请填写二级部门名称,无则留空
DMP编码: JHA-214 # 无则留空
项目类型: PC
# 可选值:
# H5 / APP / PC / 服务 / 组件 / 工具 / AI / 中间件
开发语言: Node
# 可选值:
# GO / Java / PHP / Node
项目负责人: DN3634,DN8161 # 员工编号,多个用逗号隔开,这里的负责是这套代码的负责人
运维负责人: DN9460,DN9651,DN4792 # 负责部署、监控、K8S、发布、证书等
产品负责人: YY1145,YY1208 # 项目产品经理
项目成员: DN3634,DN8161
项目状态: 开发中
# 可选值:
# 开发中 / 维护中 / 已停止 / 已归档
项目级别: 中
# 可选值:
# 高 / 中 / 低
核心分支: main
代码仓库:
- https://bd-git.jsyyds.com/ruisheng/jha-214-91/frontend/91dj-admin-client
最后审计人:
最后审计时间:
告警群:
备注:
- `package.json` 中 `name` 为 `admin-server`,仓库/目录名为 `91dj-admin-client`。
- 业务 API 根路径由 **`src/utils/serverUrlConfig.js`** 中的 **`baseServerUrl`** 决定,与 **`NODE_ENV`**、**`VUE_APP_TITLE`**(见 `.env.build` / `.env.test` 等)组合有关;请勿将含密钥、内网或未脱敏的生产地址对外发布。
---
# 1. 项目说明
本仓库为面向 **桌面浏览器** 的 **Vue 2 + Vue CLI + Webpack** 单页 **管理后台**,UI 基于 **Element UI 2**,状态管理为 **Vuex 3**(`vuex-persistedstate` 在依赖中,当前 `src/stroe/index.js` 内持久化插件为注释状态),路由为 **Vue Router 3**,模式为 **`hash`**(见 `src/router/index.js`)。入口为 **`src/main.js`**,挂载 Vuex、Router、Element、全局组件/过滤器、**LoginPlugin**、分片上传与音频播放等插件;全局路由守卫见 **`src/permission.js`**(登录态、权限路由刷新、多页签相关 store 动作)。
动态业务路由由 **`src/router/permissionRouter.js`** 聚合各业务子路由文件(如 `activity.js`、`user` 相关、`cinema.js` 等),经 **`src/stroe/actions.js`** 中 `refreshRouter` 与用户 **`localStorage` 中的 `role`** 做 **`recursionRouter`** 过滤后注入 **`/main`** 子路由;基础白名单路由见 **`src/router/baseRouter.js`**(登录、`/main` 下欢迎页与角色页等)。
业务页面在 **`src/views/`** 下按模块划分,示例包括:**用户**(`user`)、**视频/媒资**(`videoManagement`、`mediaLibrary`、`lsjMediaLibrary`)、**影院**(`cinemaManagement`)、**渠道与落地**(`channelManagement`、`channelBackground`、`landManagement`)、**活动/签到/产品/交易**(`activityManagement`、`signinManagement`、`productManagement`、`transactionManagement`)、**代理与区县**(`agentManagement`、`agentDistrictProvider`)、**AI / ACG / 小说**(`aiManagement`、`animationManage`、`fiction`)、**统计与系统**(`statistics`、`systemManagement`、`systemMessage`、`administrators`)等;接口封装在 **`src/api/`**,按域拆分为多个 `.js` 文件,请求统一走 **`src/utils/request.js`** 封装的 **`axios`** 实例。
**技术栈要点:**
- 构建:**Vue CLI 4**(`vue-cli-service`),生产可选 **compression-webpack-plugin** 对 js/css/html/mp4 等做 gzip(见 `vue.config.js`);**`publicPath: './'`**,适合静态目录或相对路径部署。
- 样式:**node-sass** + **sass-loader**,通过 `vue.config.js` 的 `css.loaderOptions.sass.data` 向各组件注入 **`@/assets/scss/base.scss`**;Element 主题变量见 **`src/assets/scss/element-variables.scss`**。
- 网络:**axios**(`baseURL` 在实例中空字符串,真实前缀在 `request.js` 的 `ajax` 内拼接 **`config.baseServerUrl`**),**Authorization** 头、**refresh-authorization** 触发的 token 刷新与请求队列、`code === 1003` 时登出确认等逻辑均在 **`src/utils/request.js`**。
- 媒体与编辑:**video.js**、**hls.js**、**dplayer**、**wangeditor**、**vue-cropper**、**vue-simple-uploader**、**echarts** 等。
- 其他:**lodash**、**moment**、**js-md5** / **spark-md5**、**xlsx**、**qrcodejs2** 等。
**Node 版本:** 仓库 `README.md` 建议使用 **12.18.1**。
**常用脚本(`package.json`):**
| 命令 | 说明 |
|------|------|
| `npm run dev` | 本地开发(`vue-cli-service serve`) |
| `npm run build` | 生产构建(`NODE_ENV=production vue-cli-service build`,默认读取项目根目录 `.env` 系列中变量) |
| `npm run test-build` | 测试环境构建(`--mode test`,配合 `.env.test` 等) |
| `npm run lint` | ESLint(`vue-cli-service lint`) |
**开发环境代理:** 当前 `vue.config.js` 未配置 `devServer.proxy`;本地联调后端地址主要在 **`serverUrlConfig.js`** 中维护(以文件内实际配置为准)。
**项目目录结构(核心):**
```
91pron-admin-client/
├── public/
├── src/
│ ├── main.js # 入口:Vuex、Router、Element、插件、permission
│ ├── App.vue
│ ├── permission.js # 路由守卫:登录、动态路由刷新、页签状态
│ ├── router/
│ │ ├── index.js # Router(hash)
│ │ ├── baseRouter.js # 登录 / main / welcome / role
│ │ ├── permissionRouter.js # 全量业务子路由聚合
│ │ └── *.js # 各业务模块路由片段
│ ├── stroe/ # Vuex(目录名为 stroe,非 store)
│ ├── views/ # 管理端各业务页面
│ ├── api/ # 接口方法(按域拆分 .js)
│ ├── components/ # 通用组件
│ ├── utils/ # request、serverUrlConfig、过滤器、全局方法等
│ ├── plugins/ # 如 LoginPlugin
│ └── assets/ # scss、图片等
├── vue.config.js
├── prod_build.sh # 示例打包/发布脚本(环境差异大,使用前请内部确认)
└── project.md # 本文件
```
**接口基址:**
- 详见 **`src/utils/serverUrlConfig.js`**:根据 **`NODE_ENV`** 与 **`VUE_APP_TITLE`** 切换 **`baseServerUrl`**(例如生产构建下相对路径 **`/api/web/admin`** 与测试包差异);**`playVideoUrl` / `imgUrl` / `downLoadUrl`** 等同文件内字段用于播放与资源地址拼接。
- 静态部署若使用相对 **`/api/web/admin`**,需由 **网关 / Nginx** 将浏览器同源下的路径转发到实际管理端后端。
---
# 2. 基础设施与中间件
本仓库为 **纯前端工程**,不内置后端;运行时依赖:
- **业务 API**:由 `serverUrlConfig.js` 的 **`baseServerUrl`** 决定;部署时需保证管理端 **API 反代** 与 HTTPS 策略一致。
- **静态资源托管**:`build` / `test-build` 产物在 **`dist/`**,由 Web 服务器或 CDN 提供;当前为 **hash 路由**,服务器层面对路径回退要求通常低于 history 模式,但仍需正确配置 **`publicPath`** 与资源根路径。
- **媒体、图片与下载域名**:见 `serverUrlConfig` 与接口返回(勿在文档中粘贴未脱敏的内网或密钥配置)。
---
# 3. 运维部署
**构建产物:** 执行 `npm run build` 或 `npm run test-build` 后,在 **`dist/`** 生成静态资源;生产构建可能生成 gzip 压缩产物(见 `vue.config.js` 插件配置)。
**推荐发布流程(示例):**
1. 使用约定 **Node** 版本安装依赖:`npm ci` 或 `npm install`。
2. 确认 **`.env.*`** 或构建 **mode** 下 **`VUE_APP_TITLE`** 等与 **`serverUrlConfig.js`** 逻辑一致。
3. 执行 `npm run build` 或 `npm run test-build`。
4. 将 **`dist/`** 同步至静态服务器;确认 **API 反代** 与 **`publicPath: './'`** 的访问路径一致。
5. 仓库内 **`prod_build.sh`** 为示例流程,**主机与路径以实际运维规范为准**,避免泄露账号与内网信息。
**环境变量说明(摘录,完整以实际 `.env.*` 与构建命令为准):**
| 变量 | 作用 |
|------|------|
| `NODE_ENV` | 构建/运行环境标识 |
| `VUE_APP_TITLE` | 与 `serverUrlConfig.js` 中测试/生产基址分支等逻辑配合(见 `.env.build`、`.env.test`) |
---
# 4. 风险说明
- **强依赖后端与反代**:`baseServerUrl` 或网关配置错误会导致 **整站接口不可用**。
- **登录与权限**:`permission.js` 依赖 **`localStorage`** 中 `userInfo`、`role` 与 Vuex **`routerList`** 刷新逻辑,权限数据异常可能导致无法进入业务页或反复刷新路由。
- **Token 刷新**:`request.js` 中刷新队列与 **1003** 等业务码处理与后端约定强相关,变更需联调。
- **配置敏感信息**:联调用的完整域名、内网 IP 等 **勿提交到公开仓库**;依赖锁定文件建议纳入审计流程。
- **目录命名**:Vuex 目录为 **`stroe`**,新人接手时注意路径与导入,避免误认为缺失 `store`。
---
# 5. 历史事故(可选)
- 暂无(请运维/研发后续补充)
---
# 6. 交接说明(可选)
- 路由与权限核心在 **`src/permission.js`**、**`src/stroe/actions.js`** 的 **`refreshRouter`**、**`src/router/permissionRouter.js`** 及各 **`src/router/*.js`**;新增菜单需在权限路由与后端角色配置侧同步。
- 用户信息、标签页等多与 **`src/stroe/`** 及 **`localStorage`** 配合;业务请求请统一走 **`src/utils/request.js`**,避免散落裸 **`axios`**。
- 接口目录:**`src/api/`**。
- **请勿将含密钥、生产内网地址的环境文件或未脱敏脚本提交至对外可见仓库**;YAML 头部元数据若与真实组织不一致,请在内部系统中核对后修改。
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

File diff suppressed because one or more lines are too long
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 124 KiB

+26
View File
@@ -0,0 +1,26 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width,initial-scale=1.0" />
<link rel="icon" href="<%= BASE_URL %>icon.ico" />
<title>91短剧后台管理系统</title>
</head>
<body>
<!-- <script src="https://cdn.bootcss.com/vue/2.6.10/vue.runtime.min.js"></script> -->
<!-- <script src="https://cdn.bootcss.com/vue-router/3.0.2/vue-router.min.js"></script>
<script src="https://cdn.bootcss.com/vuex/3.1.0/vuex.min.js"></script>
<script src="https://cdn.bootcss.com/axios/0.18.0/axios.min.js"></script>
<script src="https://cdn.bootcss.com/mint-ui/2.2.13/index.js"></script> -->
<noscript>
<strong>We're sorry but admin-server doesn't work properly without JavaScript
enabled. Please enable it to continue.</strong>
</noscript>
<div id="app"></div>
<!-- built files will be auto injected -->
</body>
</html>
+2
View File
@@ -0,0 +1,2 @@
User-agent: *
Disallow: /
Executable
+37
View File
@@ -0,0 +1,37 @@
<template>
<div id="app">
<keep-alive v-if="isLoggedIn">
<router-view v-if="$route.meta.keepAlive" style="min-height:100%"></router-view>
</keep-alive>
<router-view v-if="!$route.meta.keepAlive ||!isLoggedIn" style="min-height:100%"></router-view>
</div>
</template>
<script>
import local from "./utils/localStroage.js";
export default {
data() {
return {
isLoggedIn: false
};
},
watch: {
// eslint-disable-next-line no-unused-vars
$route(to, from) {
// if the route changes...
let token = local.get("userInfo") ? local.get("userInfo").token : "";
this.isLoggedIn = token ? true : false;
}
}
};
</script>
<style lang="scss">
#app {
width: 100%;
height: 100%;
overflow: hidden;
font-family: "Avenir", Helvetica, Arial, sans-serif;
}
</style>
+439
View File
@@ -0,0 +1,439 @@
import ajax from "../utils/request";
const activeApi = {
/********************************活动列表*********************************** */
// 活动列表
getWebActivity(params) {
return ajax({
url: "/activity",
type: "get",
params: params,
});
},
// 新增活动
addWebActivity(params) {
return ajax({
url: "/activity",
type: "post",
params: params,
});
},
//编辑活动
editWebActive(params) {
return ajax({
url: "/activity",
type: "put",
params: params,
});
},
/********************************新版活动列表*********************************** */
// 活动列表
getActivity(params) {
return ajax({
url: "/actv/list",
type: "get",
params: params,
});
},
// 新增活动
addActivity(params) {
return ajax({
url: "/actv/add",
type: "post",
params: params,
});
},
//编辑活动
editActive(params) {
return ajax({
url: "/actv/update",
type: "post",
params: params,
});
},
/********************************一次活动列表*********************************** */
// 活动列表
getOneActivity(params) {
return ajax({
url: "/task/once/list",
type: "get",
params: params,
});
},
// 新增活动
addOneActivity(params) {
return ajax({
url: "/task/once/add",
type: "post",
params: params,
});
},
//编辑活动
editOneActive(params) {
return ajax({
url: "/task/once/edit",
type: "post",
params: params,
});
},
/********************************每日活动列表*********************************** */
// 活动列表
getDailyActivity(params) {
return ajax({
url: "/task/daily/list",
type: "get",
params: params,
});
},
// 新增活动
addDailyActivity(params) {
return ajax({
url: "/task/daily/add",
type: "post",
params: params,
});
},
//编辑活动
editDailyActive(params) {
return ajax({
url: "/task/daily/edit",
type: "post",
params: params,
});
},
/********************************成长活动任务列表*********************************** */
// 活动列表
getGrowthList(params) {
return ajax({
url: "/task/growth/list",
type: "get",
params: params,
});
},
// 新增活动
addGrowthActivity(params) {
return ajax({
url: "/task/growth/add",
type: "post",
params: params,
});
},
//编辑活动
editGrowthActive(params) {
return ajax({
url: "/task/growth/edit",
type: "post",
params: params,
});
},
/********************************活动奖品列表*********************************** */
//获取奖品
getWebPrice(params) {
return ajax({
url: "/activity/prize",
type: "get",
params: params,
});
},
//新增奖品
addWebPrice(params) {
return ajax({
url: "/activity/prize",
type: "post",
params: params,
});
},
//修改奖品
editWebPrice(params) {
return ajax(
{
url: "/activity/prize",
type: "put",
params: params,
},
true
);
},
//获取活动ID
getActiveityId(params) {
return ajax({
url: "/activity/box",
type: "get",
params: params,
});
},
//获取会员卡ID
getVipcardId(params) {
return ajax({
url: "/activity/prize/vipBox",
type: "get",
params: params,
});
},
/********************************奖池*********************************** */
// 获取奖池
getPrizePool(params) {
return ajax({
url: "/activity/prizePool",
type: "get",
params: params,
});
},
// 新增奖池
addPrizePool(params) {
return ajax({
url: "/activity/prizePool",
type: "post",
params: params,
});
},
// 修改奖池
editPrizePool(params) {
return ajax({
url: "/activity/prizePool",
type: "put",
params: params,
});
},
/********************************奖池*********************************** */
/********************************活动奖品列表*********************************** */
/**
* 奖品列表
* @param {object} [params] - 需要的参数
* @param {string} [params.actID] - 活动id
* @param {number} [params.pageNumber] - 页码【从1开始计数】
* @param {number} [params.pageSize] - 每页显示的条数【从1开始计数】
*/
getActivityPrize(params) {
return ajax({
url: "/activity/reward/list",
type: "get",
params: params,
});
},
/**
* 新增奖品
* @param {object} [params] - 需要的参数
* @param {string} [params.actID] - 活动id
* @param {number} [params.pageNumber] - 页码【从1开始计数】
* @param {number} [params.pageSize] - 每页显示的条数【从1开始计数】
*/
addActivityPrize(params) {
return ajax({
url: "/activity/reward/add",
type: "post",
params: params,
});
},
/**
* 编辑奖品
* @param {object} [params] - 需要的参数
* @param {string} [params.actID] - 活动id
* @param {number} [params.pageNumber] - 页码【从1开始计数】
* @param {number} [params.pageSize] - 每页显示的条数【从1开始计数】
*/
editActivityPrize(params) {
return ajax({
url: "/activity/reward/modify",
type: "post",
params: params,
});
},
/********************************兑换码列表*********************************** */
// 兑换码列表
redemptionCodeList(params) {
return ajax({
url: "/exchange/code/list",
type: "get",
params: params,
});
},
// 添加兑换码
addCode(params) {
return ajax({
url: "/exchange/code/add",
type: "post",
params: params,
});
},
// 修改兑换码
editCode(params) {
return ajax({
url: "/exchange/code/update",
type: "post",
params: params,
});
},
// 删除兑换码
delCode(params) {
return ajax({
url: "/exchange/code/del",
type: "delete",
params: params,
});
},
/********************************兑换码兑换日志*********************************** */
redemptionLogList(params) {
return ajax({
url: "/exchange/log/list",
type: "get",
params: params,
});
},
/********************************获奖记录列表(嫩模活动)*********************************** */
//添加获奖记录列表
addWinRecord(params) {
return ajax({
url: "/newactivity/addWinRecord",
type: "post",
params: params,
});
},
//导入所有嫩模
importModels(params) {
return ajax({
url: "/newactivity/importModels",
type: "post",
params: params,
});
},
//写入参数活动人数
updateJoinNum(params) {
return ajax({
url: "/newactivity/updateJoinNum",
type: "post",
params: params,
});
},
//
// 嫩模获奖记录
winRecordPage(params) {
return ajax({
url: "/newactivity/winRecordPage",
type: "post",
params: params,
});
},
/********************************购买列表*********************************** */
//购买列表
buyPage(params) {
return ajax({
url: "/newactivity/buyPage",
type: "post",
params: params,
});
},
/******************************** 摇奖号列表*********************************** */
//请求列表
getLottery(params) {
return ajax({
url: "/lottnum/list",
type: "get",
params: params,
});
},
/********************************兑换码类型*********************************** */
// 兑换码类型列表
// redemptionTypeList(params) {
// return ajax({
// url: '/exchange/type/list',
// type: 'get',
// params: params
// })
// },
// // 添加兑换码类型
// addType(params) {
// return ajax({
// url: '/exchange/type/add',
// type: 'post',
// params: params
// })
// },
// // 删除兑换码类型
// delType(params) {
// return ajax({
// url: '/exchange/type/del',
// type: 'delete',
// params: params
// })
// },
// // 修改兑换码类型
// editType(params) {
// return ajax({
// url: '/exchange/type/update',
// type: 'post',
// params: params
// })
// }
/** ********************楼凤列表************************* */
// 获取楼凤列表
getLouFengList(params) {
return ajax({
url: "/loufeng/list",
type: "post",
params: params,
});
},
// 新增
addLoufeng(params) {
return ajax({
url: "/loufeng/add",
type: "post",
params: params,
});
},
// 修改
updateLoufeng(params) {
return ajax({
url: "/loufeng/edit",
type: "post",
params: params,
});
},
// 删除
deleteLoufeng(params) {
return ajax({
url: "/loufeng/del",
type: "delete",
params: params,
});
},
/** **************砸蛋活动流水********************* */
// 获取砸蛋活动流水
getWinRecord(params) {
return ajax({
url: "/activity/record",
type: "get",
params: params,
});
},
// 获取奖品名字列表
getPrizeNames(params) {
return ajax({
url: "/sge/winRecord/prizeNames",
type: "get",
params: params,
});
},
};
export default activeApi;
+32
View File
@@ -0,0 +1,32 @@
import ajax from "../utils/request";
const actressApi = {
/********************************活动列表*********************************** */
// 女优列表
queryActressList(params) {
return ajax({
url: "/actor/list",
type: "get",
params: params,
});
},
// 新增女优
addActress(params) {
return ajax({
url: "/actor/add",
type: "post",
params: params,
});
},
//编辑女优
editActress(params) {
return ajax({
url: "/actor/update",
type: "post",
params: params,
});
},
};
export default actressApi;
+53
View File
@@ -0,0 +1,53 @@
import ajax from '../utils/request';
const admApi = {
/********************************系统管理*********************************** */
// 添加管理员
addAdm(params) {
return ajax({
url: '/manage/add',
type: 'post',
params: params
});
},
// 请求管理员列表
getAdmList(params) {
return ajax({
url: '/manage/list',
type: 'get',
params: params
});
},
// 修改权限
updateAdm(params) {
return ajax({
url: '/manage/update',
type: 'post',
params: params
});
},
// 删除权限
delAdm(params) {
return ajax({
url: '/manage/del',
type: 'delete',
params: params
});
},
// 请求管理员日志
getAdminLog(params) {
return ajax({
url: '/log/operator',
type: 'get',
params: params
});
},
// 编辑管理员操作日志
editAdminLog(params) {
return ajax({
url: '/log/operator/modify',
type: 'post',
params: params
})
}
};
export default admApi;
+79
View File
@@ -0,0 +1,79 @@
import ajax from '../utils/request'
const adsApi = {
/********************************广告管理*********************************** */
// 请求广告列表
getAdList(params) {
return ajax({
url: '/ads/list',
type: 'get',
params: params
})
},
// 新增广告
addAds(params) {
return ajax({
url: '/ads/add',
type: 'post',
params: params
})
},
// 编辑广告
editAds(params) {
return ajax({
url: '/ads/update',
type: 'post',
params: params
})
},
// 删除广告
delAds(params) {
return ajax({
url: '/ads/del',
type: 'delete',
params: params
})
},
// 请求点击日志列表
getClickLog(params) {
return ajax({
url: '/log/ads',
type: 'get',
params: params
})
},
/********************************公告管理*********************************** */
// 请求公告列表
getAnnouList(params) {
return ajax({
url: '/annou/list',
type: 'get',
params: params
})
},
// 新增公告
addAnnou(params) {
return ajax({
url: '/annou/add',
type: 'post',
params: params
})
},
// 编辑公告
editAnnou(params) {
return ajax({
url: '/annou/update',
type: 'post',
params: params
})
},
// 删除公告
delAnnou(params) {
return ajax({
url: '/annou/del',
type: 'delete',
params: params
})
},
}
export default adsApi
+260
View File
@@ -0,0 +1,260 @@
import ajax from "../utils/request";
const angentDistrictApi = {
/*************************代理列表*************************/
// 获取商区代理列表 or 下级代理 (共用接口,传参数不同)
getDistrictList(params) {
return ajax({
url: "/district/list",
type: "get",
params: params,
});
},
// 新增商区代理
addDistrict(params) {
return ajax({
url: "/district/add",
type: "post",
params: params,
});
},
//编辑---修改基础数据
updateBase(params) {
return ajax({
url: "/district/update/update/base",
type: "post",
params: params,
});
},
//编辑---修改充值配置
updateDedRecharge(params) {
return ajax({
url: "/district/update/update/dedRecharge",
type: "post",
params: params,
});
},
//编辑---修改用户配置
updateDedNewUser(params) {
return ajax({
url: "/district/update/update/dedNewUser",
type: "post",
params: params,
});
},
//编辑---修改落地页配置
updateLandPage(params) {
return ajax({
url: "/district/update/update/ldy",
type: "post",
params: params,
});
},
// // 编辑商区代理
// updateDistrict(params) {
// return ajax({
// url: "/district/update",
// type: "post",
// params: params,
// });
// },
// 删除商区代理
delDistrict(params) {
return ajax({
url: "/district/delete",
type: "delete",
params: params,
});
},
/*** 禁用 */
disDistrict(params) {
return ajax({
url: "/district/disable",
type: "post",
params: params,
});
},
/*** 购买记录 */
getPayHisList(params) {
return ajax({
url: "/district/agent/trans/BuyVip/list",
type: "get",
params: params,
});
},
/** 每日统计 */
getStatDailyList(params) {
return ajax({
url: "/district/agent/stat/daily/list",
type: "get",
params: params,
});
},
/** 结算账单*/
getStatSettlementList(params) {
return ajax({
url: "/district/agent/bill/list",
type: "get",
params: params,
});
},
// 提现记录
getWithdrawLists(params) {
return ajax({
url: "/district/agent/order/withdraw/list",
type: "get",
params: params,
});
},
// 充值记录
getRechargeList(params) {
return ajax({
url: "/district/agent/order/recharge/list",
type: "get",
params: params,
});
},
//编辑--扣用户
handleNewUserAnalysis(params) {
return ajax({
url: "/district/deduct/newUser/analysis",
type: "post",
params,
});
},
//编辑--扣充值
handleRechargeAnalysis(params) {
return ajax({
url: "/district/deduct/recharge/analysis",
type: "post",
params,
});
},
//下级代理--添加
addSubAgent(params) {
return ajax({
url: "/district/agent/add",
type: "post",
params: params,
});
},
/************************* 代理权限*************************/
//获取权限列表
getRoleList(params) {
return ajax({
url: "/district/author/list",
type: "get",
params: params,
});
},
// 新增权限列表
addRole(params) {
return ajax({
url: "/district/author/add",
type: "post",
params: params,
});
},
// 修改权限列表
updateRole(params) {
return ajax({
url: "/district/author/update",
type: "post",
params: params,
});
},
// 删除权限列表
deleteRole(params) {
return ajax({
url: "/district/author/del",
type: "delete",
params: params,
});
},
// 克隆权限
clone(params) {
return ajax({
url: "/district/author/cloneToChild",
type: "post",
params: params,
});
},
/************************* 每日报表*************************/
// 获取每日报表列表
getDailyList(params) {
return ajax({
url: "/district/agent/report/daily/list",
type: "get",
params: params,
});
},
/************************* 每日报表*************************/
// 获取每日报表列表
getMonthlyList(params) {
return ajax({
url: "/district/agent/report/monthly/list",
type: "get",
params: params,
});
},
/************************* 域名列表*************************/
// 获取域名表列表
getDomainList(params) {
return ajax({
url: "/district/domain/list",
type: "get",
params: params,
});
},
// 修改域名
updateDomain(params) {
return ajax({
url: "/district/domain/update",
type: "post",
params: params,
});
},
// 删除域名
delDomain(params) {
return ajax({
url: "/district/domain/del",
type: "delete",
params: params,
});
},
//添加域名
addDomain(params) {
return ajax({
url: "/district/domain/add",
type: "post",
params: params,
});
},
/*********************广告审核**************************/
// 请求广告审核列表
getAdReviewList(params) {
return ajax({
url: "/district/ad/review/list",
type: "get",
params: params,
});
},
//广告审核
AdReview(params) {
return ajax({
url: "/district/ad/review/check",
type: "post",
params: params,
});
},
};
export default angentDistrictApi;
Executable
+230
View File
@@ -0,0 +1,230 @@
import ajax from "../utils/request";
const voteApi = {
/********************************AI交易列表*********************************** */
// 请求AI交易列表
getAiTransList(params) {
return ajax({
url: "/ai/undress/list",
type: "get",
params: params,
});
},
// AI交易审核
aiTransExamine(params) {
return ajax({
url: "/ai/undress/update",
type: "post",
params: params,
});
},
// AI交易自动处理
aiTransAuto(params) {
return ajax({
url: "/ai/undress/auto",
type: "post",
params: params,
});
},
// AI交易批量自动处理
aiTransBatchAuto(params) {
return ajax({
url: "/ai/undress/auto/batch",
type: "post",
params: params,
});
},
/********************************AI图片换脸交易列表*********************************** */
// 请求AI图片换脸交易列表
getAiImgTransList(params) {
return ajax({
url: "/ai/change_face_img/list",
type: "get",
params: params,
});
},
// AI图片换脸交易审核
aiImgTransExamine(params) {
return ajax({
url: "/ai/change_face_img/update",
type: "post",
params: params,
});
},
/********************************AI换脸模版*********************************** */
// 获取AI换脸模版列表
getChangeFaceModList(params) {
return ajax({
url: "/ai/changeface/mod/list",
type: "get",
params: params,
});
},
// 添加AI换脸模版
addChangeFaceMod(params) {
return ajax({
url: "/ai/changeface/mod/add",
type: "post",
params: params,
});
},
// 修改AI换脸模版
updateChangeFaceMod(params) {
return ajax(
{
url: "/ai/changeface/mod/update",
type: "post",
params: params,
},
true
);
},
// 获取AI换脸交易列表
getChangeFaceList(params) {
return ajax({
url: "/ai/changeface/list",
type: "get",
params: params,
});
},
// 编辑AI换脸交易列表
updChangeFaceList(params) {
return ajax({
url: "/ai/changeface/update",
type: "post",
params: params,
});
},
// 给用户添加AI换脸折扣券
addUserAiChangeFaceDiscount(params) {
return ajax({
url: "/user/generate/aiChangeFaceDiscount",
type: "post",
params: params,
});
},
// 查询AI换脸折扣券奖品列表
getAiChangeFaceDiscountList() {
return ajax({
url: "/user/gainAiPrize",
type: "get",
});
},
/********************************AI模块列表*********************************** */
getTemplateList(params) {
return ajax({
url: "/ai_template_module/list",
type: "get",
params: params,
});
},
addTemplate(params) {
return ajax({
url: "/ai_template_module/create",
type: "post",
params: params,
});
},
updateTemplate(params) {
return ajax({
url: "/ai_template_module/update",
type: "post",
params: params,
});
},
deleteTemplate(params) {
return ajax({
url: "/ai_template_module/delete",
type: "post",
params: params,
});
},
getTemplateAll() {
return ajax({
url: "/ai_template_module/all",
type: "get",
});
},
setTemplateAll(params) {
return ajax({
url: "/ai/changeface/mod/batch/update",
type: "post",
params: params,
});
},
/********************************AI广场列表*********************************** */
geTaiplazaList(params) {
return ajax({
url: "/aiplaza/list",
type: "get",
params: params,
});
},
createAiplaza(params) {
return ajax({
url: "/aiplaza/create",
type: "post",
params: params,
});
},
updateAiplaza(params) {
return ajax({
url: "/aiplaza/update",
type: "post",
params: params,
});
},
// 批量修改
updateBatchAiplaza(params) {
return ajax({
url: "/aiplaza/batch/update",
type: "post",
params: params,
});
},
deleteAiplaza(params) {
return ajax({
url: "/aiplaza/delete",
type: "post",
params: params,
});
},
getAllScene(params) {
return ajax({
url: "/ai/changeface/mod/all/scene",
type: "get",
params,
});
},
/******************************** AI小说订单 *********************************** */
getAiNovelList(params) {
return ajax({
url: "/ai/text_to_novel/list",
type: "get",
params,
});
},
delAiNovel(params) {
return ajax({
url: "/ai/text_to_novel/delete",
type: "post",
params,
});
},
updateAiNovel(params) {
return ajax({
url: "/ai/text_to_novel/update",
type: "post",
params,
});
},
/********************************AI女友V2消费流水*********************************** */
getAimatev2OrderLogs(params) {
return ajax({
url: "/aimatev2/order_logs",
type: "get",
params: params,
});
},
};
export default voteApi;
+42
View File
@@ -0,0 +1,42 @@
import ajax from '../utils/request';
const angentApi = {
/***************************金币流水管理****************************** */
// 获取用户推广日志
getExtensionList(params) {
return ajax({
url: '/proxy/log',
type: 'get',
params: params
});
},
// 获取用户推广查询列表
getUserExtensionList(parmas) {
return ajax({
url: '/proxy/promotion',
type: 'get',
params: parmas
});
},
/***************************代理列表****************************** */
// 代理列表配置
getProxyList(params) {
return ajax({
url: '/proxy/totalIncome',
type: 'get',
params: params
});
},
// 代理列表详情记录
getProxyDetails(params) {
return ajax({
url: '/proxy/income/details',
type: 'get',
params: params
});
},
};
export default angentApi;
+340
View File
@@ -0,0 +1,340 @@
import ajax from "../utils/request";
const animationApi = {
/********************************动漫列表*********************************** */
// 获取动漫列表
getAnimeList(params) {
return ajax({
url: "/media/list",
type: "get",
params: params,
});
},
// 添加动漫
addAnime(params) {
return ajax({
url: "/media/create",
type: "post",
params: params,
});
},
// 删除动漫
delAnime(params) {
return ajax({
url: "/media/delete",
type: "post",
params: params,
});
},
// 修改动漫
updateAnime(params) {
return ajax({
url: "/media/update",
type: "post",
params: params,
});
},
// 动漫导出
exportMediaList(params) {
return ajax({
url: "/media/export",
type: "post",
responseType: "blob",
params: params,
});
},
// 批量删除动漫列表
batchDelMedia(params) {
return ajax({
url: "/media/batch/delete",
type: "post",
params: params,
});
},
/********************************动漫推荐列表*********************************** */
// 获取动漫推荐列表
getMediaRecommendList(params) {
return ajax({
url: "/media_recommend/list",
type: "get",
params: params,
});
},
// 添加动漫推荐
addMediaRecommend(params) {
return ajax({
url: "/media_recommend/create",
type: "post",
params: params,
});
},
// 删除动漫推荐
delMediaRecommend(params) {
return ajax({
url: "/media_recommend/delete",
type: "post",
params: params,
});
},
// 修改动漫推荐
updateMediaRecommend(params) {
return ajax({
url: "/media_recommend/update",
type: "post",
params: params,
});
},
// 获取动漫推荐信息
getMediaRecommendInfo(params) {
return ajax({
url: "/media_recommend/info",
type: "get",
params: params,
});
},
/********************************动漫任务列表*********************************** */
// 获取动漫任务列表
getMediaTaskList(params) {
return ajax({
url: "/media_task/list",
type: "get",
params: params,
});
},
// 添加动漫任务
addMediaTask(params) {
return ajax({
url: "/media_task/create",
type: "post",
params: params,
});
},
// 删除动漫任务
delMediaTask(params) {
return ajax({
url: "/media_task/delete",
type: "post",
params: params,
});
},
// 修改动漫任务
updateMediaTask(params) {
return ajax({
url: "/media_task/update",
type: "post",
params: params,
});
},
/********************************动漫上传列表*********************************** */
// 视频上传
uploadMedia(params) {
return ajax({
url: "/media/create",
type: "post",
params: params,
});
},
// 子媒体上传
subUploadMedia(params) {
return ajax({
url: "/media_content/create",
type: "post",
params: params,
});
},
// 校验媒体是否存在
getMediaInfo(params) {
return ajax({
url: "/media/find",
type: "get",
params: params,
});
},
// 获取种类、维度下的标签
getMediaTagByKindDimension(params) {
return ajax({
url: "/media_tag/all",
type: "get",
params: params,
});
},
// 设置媒体状态
setMediaStatus(params) {
return ajax({
url: "/media/batch/update",
type: "post",
params: params,
});
},
// 获取动漫专题
queryModuleCartoonAll(params) {
return ajax({
url: "/module/conf/cartoon/all",
type: "get",
params: params,
});
},
/********************************动漫内容列表*********************************** */
// 获取动漫内容列表
getAnimeContentList(params) {
return ajax({
url: "/media_content/list",
type: "get",
params: params,
});
},
// 添加动漫内容
addAnimeContent(params) {
return ajax({
url: "/media_content/create",
type: "post",
params: params,
});
},
// 删除动漫内容
delAnimeContent(params) {
return ajax({
url: "/media_content/delete",
type: "post",
params: params,
});
},
// 修改动漫内容
updateAnimeContent(params) {
return ajax({
url: "/media_content/update",
type: "post",
params: params,
});
},
// 修改动漫内容
setSubMediaStatus(params) {
return ajax({
url: "/media_content/batch/update",
type: "post",
params: params,
});
},
// 查询剧集转码状态
getMediaContentView(id) {
return ajax({
url: "/media_content/view/" + id,
type: "get",
});
},
/********************************动漫标签列表*********************************** */
// 获取动漫标签列表
getAnimeTagList(params) {
return ajax({
url: "/media_tag/list",
type: "get",
params: params,
});
},
// 获取动漫所有纬度
getAnimeAllLatitude(params) {
return ajax({
url: "/media_tag_dimension/all",
type: "get",
params: params,
});
},
// 添加动漫标签
addAnimeTag(params) {
return ajax({
url: "/media_tag/create",
type: "post",
params: params,
});
},
// 删除动漫标签
delAnimeTag(params) {
return ajax({
url: "/media_tag/delete",
type: "post",
params: params,
});
},
// 修改动漫标签
updateAnimeTag(params) {
return ajax({
url: "/media_tag/update",
type: "post",
params: params,
});
},
/********************************纬度列表*********************************** */
// 获取纬度列表
getLatitudeList(params) {
return ajax({
url: "/media_tag_dimension/list",
type: "get",
params: params,
});
},
// 添加纬度
addLatitude(params) {
return ajax({
url: "/media_tag_dimension/create",
type: "post",
params: params,
});
},
// 删除纬度
delLatitude(params) {
return ajax({
url: "/media_tag_dimension/delete",
type: "post",
params: params,
});
},
// 修改纬度
updateLatitude(params) {
return ajax({
url: "/media_tag_dimension/update",
type: "post",
params: params,
});
},
/***********************acg媒体资源库************************ */
// 查询acg媒体资源库列表
queryAcgMediaResConfig(params) {
return ajax({
url: "/mediaResource/media/list",
type: "get",
params: params,
});
},
// 查询acg媒体资源库列表(子)
queryAcgMediaContentResConfig(params) {
return ajax({
url: "/mediaResource/media/content_list",
type: "get",
params: params,
});
},
// acg媒体使用
useAcgMediaRes(params) {
return ajax({
url: "/mediaResource/media/use",
type: "post",
params: params,
});
},
// acg媒体使用
ignoreAcgMediaRes(params) {
return ajax({
url: "/mediaResource/media/ignore",
type: "post",
params: params,
});
},
// acg媒体同步
acgMediaSync(params) {
return ajax({
url: "/mediaResource/media/sync",
type: "post",
params: params,
});
},
};
export default animationApi;
+38
View File
@@ -0,0 +1,38 @@
import ajax from '../utils/request'
const authorApi = {
/********************************主后台权限管理*********************************** */
// 删除权限
delAuthor(params) {
return ajax({
url: '/author/del',
type: 'delete',
params: params
})
},
// 获取权限/角色列表
getAuthorList(params) {
return ajax({
url: '/author/list',
type: 'get',
params: params
})
},
// 修改权限
updateAuthor(params) {
return ajax({
url: '/author/update',
type: 'post',
params: params
})
},
// 添加角色
addAuthor(params) {
return ajax({
url: '/author/add',
type: 'post',
params: params
})
},
}
export default authorApi
+28
View File
@@ -0,0 +1,28 @@
import ajax from '../utils/request'
const avCommentApi = {
// 获取AV解说列表
getAvCommentList(params) {
return ajax({
url: '/avcomment/list',
type: 'post',
params: params
})
},
// 添加
addAvComment(params) {
return ajax({
url: '/avcomment/add',
type: 'post',
params: params
})
},
// 编辑
editAvComment(params) {
return ajax({
url: '/avcomment/edit',
type: 'post',
params: params
})
},
}
export default avCommentApi
+14
View File
@@ -0,0 +1,14 @@
import ajax from '../utils/request';
const balanceApi = {
/*******************************商人上分管理*********************************** */
getBalanceList(params) {
return ajax({
url:'/daichong/merchant/balanceList',
type:'get',
params
})
}
}
export default balanceApi;
+169
View File
@@ -0,0 +1,169 @@
import ajax from '../utils/request';
const businessmanApi = {
/********************************代充,商人管理*********************************** */
/**
* 编辑商人
* @param {*} params
* @param {String} params.uid 商户id
* @param {String} params.name 账户名
* @param {String} params.password 密码
* @param {String} params.nickname 昵称
* @param {String} params.email 邮箱
* @param {String} params.mobile 手机号
* @param {String} params.cid 商人所属聚商ID
* @param {String} params.channel 商人所属渠道
* @param {String} params.wechat 微信号码
* @param {Number} params.balance 商人余额
*/
editBusinessman(params) {
return ajax({
url: '/daichong/merchant/edit',
type: 'post',
params: params
})
},
/**
* 删除商人
* @param {*} params
* @param {Array} params.uids 商人id
*/
delBusinessman(params){
return ajax({
url:'/daichong/merchant/del',
type:'delete',
params,
})
},
/**
* 商人列表
* @param {*} params
* @param {String} params.uid 商户id
* @param {String} params.name 账户名
* @param {String} params.nickname 昵称
* @param {String} params.mobile 手机号
* @param {String} params.cid 商人所属聚商ID
* @param {String} params.channel 商人所属渠道
* @param {Number} params.pageNumber 当前页
* @param {Number} params.pageSize 每页条数
*/
getBusinessmanList(params) {
return ajax({
url:'/daichong/merchant/list',
type:'get',
params
})
},
/**
* 增加商人
* @param {*} params
* @param {String} params.name 账户名
* @param {String} params.password 密码
* @param {String} params.nickname 昵称
* @param {String} params.email 邮箱
* @param {String} params.mobile 手机号
* @param {String} params.cid 商人所属聚商ID
* @param {String} params.channel 商人所属渠道
* @param {String} params.wechat 微信号码
* @param {Number} params.balance 商人余额
*/
addBusinessman(params) {
return ajax({
url:'/daichong/merchant/add',
type:'post',
params,
// headers: {
// 'Content-Type': 'multipart/form-data'
// }
})
},
//商人上分
addOrDebitScore(params) {
return ajax({
url:'/daichong/merchant/addOrDebitScore',
type:'post',
params
})
},
// 商人追分
seekScore(params) {
return ajax({
url:'/daichong/merchant/seekScore',
type:'post',
params
})
},
// ----------------------聚商管理模块
// 增
addGatheringList(params) {
return ajax({
url: '/jushang/merchant/add',
type: 'post',
params
})
},
// 删
delGatheringList(params) {
return ajax({
url: '/jushang/merchant/del',
type: 'delete',
params
})
},
// 改
editGatheringList(params) {
return ajax({
url: '/jushang/merchant/edit',
type: 'post',
params
})
},
// 查询
getGatheringList(params) {
return ajax({
url: '/jushang/merchant/list',
type: 'get',
params
})
},
// 商人余额信息
businessblBalance(params) {
return ajax({
url: '/jushang/merchant/info',
type: 'get',
params
})
},
// 商人上分
onPointsGathering(params) {
return ajax({
url: '/jushang/merchant/addOrDebitScore',
type: 'post',
params
})
},
// 商人追分
chasePointsGathering(params) {
return ajax({
url: '/jushang/merchant/seekScore',
type: 'post',
params
})
},
// 聚商商人上分列表
JushangList(params) {
return ajax({
url: '/jushang/merchant/balanceList',
type: 'get',
params
})
},
}
export default businessmanApi;
+57
View File
@@ -0,0 +1,57 @@
import ajax from '../utils/request'
const channelBApi = {
/***************************渠道明细****************************** */
// 请求渠道查询,日志(同一个)列表列表
getChannelDetailList(params) {
return ajax({
url: '/channel/manage/detail',
type: 'get',
params: params
})
},
/***************************渠道账簿****************************** */
getBookList(params) {
return ajax({
url: '/channel/manage/accountbook',
type: 'get',
params: params
})
},
/***************************自助结算审核****************************** */
// 自助结算审核列表数据
getAutoAccountList(params) {
return ajax({
url: '/channel/manage/autoaccount',
type: 'get',
params: params
})
},
// 编辑账单
automaticBillGeneration(params) {
return ajax({
url: '/channel/manage/autoaccount/modify',
type: 'post',
params: params
})
},
// 编辑银行卡信息
editBank(params) {
return ajax({
url: '/channel/manage/autoaccount/addbank',
type: 'post',
params: params
})
},
/***************************银行卡配置****************************** */
// 银行卡列表数据
getBankList(params) {
return ajax({
url: '/channel/manage/bank',
type: 'get',
params: params
})
},
}
export default channelBApi
+131
View File
@@ -0,0 +1,131 @@
import ajax from '../utils/request'
const channelApi = {
/***************************渠道查询****************************** */
// 请求渠道查询,日志(同一个)列表列表
getChannelLogList(params) {
return ajax({
url: '/channel/channelLog/list',
type: 'get',
params: params
})
},
// 修改渠道日志
updateChannelLog(params) {
return ajax({
url: '/channel/channelLog/update',
type: 'post',
params: params
})
},
/***************************渠道号管理****************************** */
// 请求渠道号列表
getNumberList(params) {
return ajax({
url: '/channel/list',
type: 'get',
params: params
})
},
// 删除渠道号
delNumberList(params) {
return ajax({
url: '/channel/delete',
type: 'delete',
params: params
})
},
// 请求渠道成本列表
getChannelCostList(params) {
return ajax({
url: '/channel/channelCost/list',
type: 'get',
params: params
})
},
// 请求渠道成本列表
updateChannelCost(params) {
return ajax({
url: '/channel/channelCost/update',
type: 'post',
params: params
})
},
// 新增渠道号
addNumber(params) {
return ajax({
url: '/channel/add',
type: 'post',
params: params
})
},
// 编辑渠道号
updateNumber(params) {
return ajax({
url: '/channel/update',
type: 'post',
params: params
})
},
/***************************渠道商管理****************************** */
// 请求渠道商列表
getAgentList(params) {
return ajax({
url: '/channel/channelAgent/list',
type: 'get',
params: params
})
},
// 新增渠道商
addAgent(params) {
return ajax({
url: '/channel/channelAgent/add',
type: 'post',
params: params
})
},
// 编辑渠道商
updateAgent(params) {
return ajax({
url: '/channel/channelAgent/update',
type: 'post',
params: params
})
},
// 删除渠道商
delAgent(params) {
return ajax({
url: '/channel/channelAgent/delete',
type: 'delete',
params: params
})
},
/***************************渠道页面配置****************************** */
// 渠道页面配置列表
getChannelConfigList(params) {
return ajax({
url: '/channel/channelPage/list',
type: 'get',
params: params
})
},
// 渠道页面修改
updateChannelConfig(params) {
return ajax({
url: '/channel/channelPage/update',
type: 'post',
params: params
})
},
/***************************渠道页面配置****************************** */
// 渠道成本修改记录
getChannelUpdateList(params) {
return ajax({
url: '/channel/changeRecord/list',
type: 'get',
params: params
})
}
}
export default channelApi
+123
View File
@@ -0,0 +1,123 @@
import ajax from "../utils/request";
import axios from "axios";
import config from "../utils/serverUrlConfig";
import local from "../utils/localStroage.js";
function authHeaders() {
const token = local.get("userInfo") ? local.get("userInfo").token : "";
return token ? { Authorization: token } : {};
}
const contentReviewApi = {
/** 敏感词列表 */
sensitiveWordList(params) {
return ajax({
url: "/sensitive-word/list",
type: "get",
params,
});
},
sensitiveWordAdd(params) {
return ajax({
url: "/sensitive-word/add",
type: "post",
params,
});
},
sensitiveWordUpdate(params) {
return ajax({
url: "/sensitive-word/update",
type: "post",
params,
});
},
sensitiveWordDelete(params) {
return ajax({
url: "/sensitive-word/delete",
type: "post",
params,
});
},
/** xlsx 导出(GET + query) */
sensitiveWordExport(params) {
return ajax({
url: "/sensitive-word/export",
type: "get",
params,
responseType: "blob",
});
},
/** 下载导入模版(空 xlsx) */
sensitiveWordTemplate() {
return ajax({
url: "/sensitive-word/template",
type: "get",
responseType: "blob",
});
},
/** 发起检测任务 */
contentReviewCreate(params) {
return ajax({
url: "/content-review/create",
type: "post",
params,
});
},
contentReviewList(params) {
return ajax({
url: "/content-review/list",
type: "get",
params,
});
},
contentReviewDetail(params) {
return ajax({
url: "/content-review/detail",
type: "get",
params,
});
},
contentReviewIssues(params) {
return ajax({
url: "/content-review/issues",
type: "get",
params,
});
},
contentReviewIssueResolve(params) {
return ajax({
url: "/content-review/issue/resolve",
type: "post",
params,
});
},
contentReviewIssueReject(params) {
return ajax({
url: "/content-review/issue/reject",
type: "post",
params,
});
},
/** 批量下架命中记录对应资源 */
contentReviewIssueBatchOffshelf(params) {
return ajax({
url: "/content-review/issue/batch-offshelf",
type: "post",
params,
});
},
/** 敏感词 xlsx 导入(multipart) */
sensitiveWordImport(file) {
const fd = new FormData();
fd.append("upload", file);
return axios
.post(`${config.baseServerUrl}/sensitive-word/import`, fd, {
headers: {
...authHeaders(),
},
})
.then((r) => r.data);
},
};
export default contentReviewApi;
+71
View File
@@ -0,0 +1,71 @@
import ajax from "../utils/request";
const discountAreaManagementApi = {
/********************************折扣专区列表*********************************** */
// 请求折扣专区列表
getDiscountAreaList(params) {
return ajax({
url: "/discount_area/list",
type: "get",
params: params,
});
},
// 添加折扣专区
addDiscountArea(params) {
return ajax({
url: "/discount_area/add",
type: "post",
params: params,
});
},
// 修改折扣专区
updateDiscountArea(params) {
return ajax({
url: "/discount_area/update",
type: "post",
params: params,
});
},
// 删除折扣专区
deleteDiscountArea(params) {
return ajax({
url: "/discount_area/delete",
type: "post",
params: params,
});
},
/********************************折扣专区视频列表*********************************** */
// 请求折扣专区视频列表
getDiscountAreaVideoList(params) {
return ajax({
url: "/discount_area/vid/list",
type: "get",
params: params,
});
},
// 添加折扣专区视频
addDiscountAreaVideo(params) {
return ajax({
url: "/discount_area/vid/add",
type: "post",
params: params,
});
},
// 修改折扣专区视频
updateDiscountAreaVideo(params) {
return ajax({
url: "/discount_area/vid/update",
type: "post",
params: params,
});
},
// 删除折扣专区视频
deleteDiscountAreaVideo(params) {
return ajax({
url: "/discount_area/vid/delete",
type: "post",
params: params,
});
},
};
export default discountAreaManagementApi;
+126
View File
@@ -0,0 +1,126 @@
/*
* @Author: 王枫叶
* @Date: 2020-12-17 20:38:54
* @LastEditors: 王枫叶
* @LastEditTime: 2020-12-26 14:38:36
*/
import ajax from '../utils/request'
const fictionApi = {
/***************************小说列表****************************** */
// 获取列表
getfFiction(params) {
return ajax({
url: '/fiction/list',
type: 'post',
params: params
})
},
// 修改
updateFiction(params) {
return ajax({
url: '/fiction/edit',
type: 'post',
params: params
})
},
// 新增
addFiction(params) {
return ajax({
url: '/fiction/add',
type: 'post',
params: params
})
},
// 删除
deleteFiction(params) {
return ajax({
url: '/fiction/del',
type: 'delete',
params: params
})
},
// 查看报错小详情
getErr(params) {
return ajax({
url: '/fiction/get',
type: 'post',
params: params
})
},
/***************************举报列表****************************** */
// 获取列表
getErrFeedback(params) {
return ajax({
url: '/errFeedback/list',
type: 'post',
params: params
})
},
// 修改
updateErrFeedback(params) {
return ajax({
url: '/errFeedback/edit',
type: 'post',
params: params
})
},
// 新增
addErrFeedback(params) {
return ajax({
url: '/errFeedback/add',
type: 'post',
params: params
})
},
// 删除
deleteErrFeedback(params) {
return ajax({
url: '/errFeedback/del',
type: 'delete',
params: params
})
},
/***************************有声小说列表****************************** */
// 获取列表
getAudiobook(params) {
return ajax({
url: '/audiobook/list',
type: 'post',
params: params
})
},
// 本书配置
updateAudiobook(params) {
return ajax({
url: '/audiobook/edit',
type: 'post',
params: params
})
},
// 新增
addAudiobook(params) {
return ajax({
url: '/audiobook/add',
type: 'post',
params: params
})
},
// 删除
deleteAudiobook(params) {
return ajax({
url: '/audiobook/del',
type: 'delete',
params: params
})
} ,
// 一键配置
editPrice(params) {
return ajax({
url: '/audiobook/editBatch',
type: 'post',
params: params
})
},
}
export default fictionApi
+86
View File
@@ -0,0 +1,86 @@
import ajax from '../utils/request'
const groupChatManagementApi = {
// 群组列表
getImgroupList(params) {
return ajax({
url: '/imgroup/list',
type: 'get',
params: params
})
},
// 群组新增
createImgroup(params) {
return ajax({
url: '/imgroup/create',
type: 'post',
params: params
})
},
// 群组修改
updateImgroup(params) {
return ajax({
url: '/imgroup/update',
type: 'post',
params: params
})
},
// 群成员列表
getImgroupmemberList(params) {
return ajax({
url: '/imgroupmember/list',
type: 'get',
params: params
})
},
// 群成员新增
createImgroupmember(params) {
return ajax({
url: '/imgroupmember/create',
type: 'post',
params: params
})
},
// 群成员修改
updateImgroupmember(params) {
return ajax({
url: '/imgroupmember/update',
type: 'post',
params: params
})
},
// 群消息列表
getImmessageList(params) {
return ajax({
url: '/immessage/list',
type: 'get',
params: params
})
},
// 群消息新增
createImmessage(params) {
return ajax({
url: '/immessage/create',
type: 'post',
params: params
})
},
// 群消息修改
updateImmessage(params) {
return ajax({
url: '/immessage/update',
type: 'post',
params: params
})
},
// 群消息删除
deleteImmessage(params) {
return ajax({
url: '/immessage/delete',
type: 'post',
params: params
})
},
}
export default groupChatManagementApi
+46
View File
@@ -0,0 +1,46 @@
import ajax from '../utils/request'
const homeApi = {
/********************************首页*********************************** */
// 登陆
getStatData(params) {
return ajax({
url: '/home/statData',
type: 'get',
params: params
})
},
// 上传图片接口
uploadImg(param) {
return ajax({
url: '/vid/uploadStatic',
type: 'post',
params: param
})
},
// 视频上传成功回调通知接口
uploadSuccess(param) {
return ajax({
url: '/vid/uploadSuccess',
type: 'post',
params: param
})
},
// 访问量折线图数据接口
getViewsData(params) {
return ajax({
url: '/home/points/visit',
type: 'get',
params:params
})
},
// 注册量折线图数据接口
getRegisteredChart(params) {
return ajax({
url: '/home/points/regist',
type: 'get',
params:params
})
},
}
export default homeApi
+40
View File
@@ -0,0 +1,40 @@
import ajax from '../utils/request'
const hotApi = {
/***************************热点管理****************************** */
/*************************排行页面***************************** */
// 排行列表
getRankList(params) {
return ajax({
ulr: '',
type: 'get',
params: params
})
},
// 编辑排行
updateRank(params) {
return ajax({
url: '',
type: 'post',
params: params
})
},
/*************************发现精彩***************************** */
// 发现精彩列表
getWonderfulList(params) {
return ajax({
url: '',
type: 'get',
params: params
})
},
// 编辑精彩
updateWonderful(params) {
return ajax({
url: '',
type: 'post',
params: params
})
},
}
export default hotApi
+121
View File
@@ -0,0 +1,121 @@
/*
* @Author: 王枫叶
* @Date: 2020-10-13 17:37:19
* @LastEditors: 王枫叶
* @LastEditTime: 2020-12-17 21:44:43
*/
// 首页统计数据接口
// 活动管理接口
import activeApi from "./activeManagement";
// 女优管理接口
import actressApi from "./actressManagement";
// 系统管理接口
import admApi from "./administrators";
// 广告管理api接口
import adsApi from "./advertisingManagement";
// 代理管理Api接口
import angentApi from "./angentManagement";
// 权限管理接口
import authorApi from "./author";
import businessmanApi from "./businessman";
import balanceApi from "./balance";
// 渠道后台管理api
import channelBApi from "./channelBackground";
// 渠道管理api
import channelApi from "./channelManagement";
import homeApi from "./home";
// 热点管理接口
import hotApi from "./hotManagement";
// 落地页配置接口
import LandPageApi from "./landPage";
// 登陆api接口
import loginApi from "./login";
// 产品管理api接口
import productApi from "./productManagement";
// 用户配置api接口
import discountAreaManagementApi from "./discountAreaManagement";
// 机器人借口管理
import roBotApi from "./robot";
// 统计管理接口
import staticsAPi from "./statistics";
// 系统管理api接口
import systemApi from "./systemManagement";
// 热点管理接口
import systemMessage from "./systemMessage";
// 交易管理api接口
import transApi from "./transactionManagement";
// 用户api接口
import userApi from "./user";
// 视频api接口
import videoApi from "./videoManagement";
// 商区代理接口
import angentDistrictApi from "./agentDistrictProvider";
//楼凤模块接口
import loufApi from "./loufeng";
//裸聊专区接口
import nakedChatApi from "./nakedChatManage";
//小说管理接口
import fictionApi from "./fiction";
//av解说管理接口
import avCommentApi from "./avComment";
//标签配置接口
import tagConfigAPi from "./tagConfigList";
//模块配置接口
import moduleConfigApi from "./moduleConfig";
//签到管理
import signinApi from "./signin";
//AI
import aiApi from "./ai";
//动漫
import animationApi from "./animation";
// 群组
import groupChatManagementApi from "./groupChatManagement";
//老司机媒体模块接口
import lsjMediaLibApi from './lsjMediaLib';
//二部媒资库接口
import mediaLibApi from './mediaLib';
import contentReviewApi from './contentReview';
import officialWebsiteApi from './officialWebsite';
import shortVideoRecommendApi from './shortVideoRecommend';
const Api = Object.assign({
...loginApi,
...videoApi,
...userApi,
...productApi,
...discountAreaManagementApi,
...transApi,
...adsApi,
...admApi,
...authorApi,
...systemApi,
...activeApi,
...actressApi,
...angentApi,
...staticsAPi,
...channelApi,
...channelBApi,
...homeApi,
...LandPageApi,
...hotApi,
...systemMessage,
...roBotApi,
...businessmanApi,
...balanceApi,
...angentDistrictApi,
...loufApi,
...nakedChatApi,
...fictionApi,
...avCommentApi,
...signinApi,
...tagConfigAPi,
...moduleConfigApi,
...aiApi,
...animationApi,
...groupChatManagementApi,
...lsjMediaLibApi,
...mediaLibApi,
...contentReviewApi,
...officialWebsiteApi,
...shortVideoRecommendApi,
});
export default Api;
+88
View File
@@ -0,0 +1,88 @@
import ajax from "../utils/request";
const landPageApi = {
/******************* 域名配置**********************8*/
// 域名配置请求列表
getLangPageList(params) {
return ajax({
url: "/webplt/list",
type: "get",
params: params,
});
},
// 新增域名配置
addLandPage(params) {
return ajax({
url: "/webplt/add",
type: "post",
params: params,
});
},
// 删除域名配置
deleteLandPage(params) {
return ajax({
url: "/webplt/del",
type: "delete",
params: params,
});
},
// 编辑落地页配置
editLandPage(params) {
return ajax({
url: "/webplt/update",
type: "post",
params: params,
});
},
/********************* 落地页配置************************/
// 获取落地页配置
getLdyList(params) {
return ajax({
url: "/ldy/cfg",
type: "get",
params: params,
});
},
//编辑
updateLdy(params) {
return ajax({
url: "/ldy/update",
type: "post",
params,
});
},
// // 添加按钮状态
// addSwitchFlag(params) {
// return ajax({
// url: '/switch/add',
// type: 'post',
// params: params
// });
// },
// // 获取开关
// getSwitchList(params) {
// return ajax({
// url: '/switch/list',
// type: 'get',
// params: params
// });
// }
// // 删除开关
// deleteSwitch(params) {
// return ajax({
// url: '/switch/del',
// type: 'delete',
// params: params
// });
// },
// // 获取开关
// getSwitchList(params) {
// return ajax({
// url: '/switch/list',
// type: 'get',
// params: params
// });
// }
};
export default landPageApi;
+45
View File
@@ -0,0 +1,45 @@
import ajax from '../utils/request'
const loginApi = {
/********************************登陆管理*********************************** */
// 登陆
login(params) {
return ajax({
url: '/login',
type: 'post',
params: params
})
},
// sso登陆
slogin(params) {
return ajax({
url: '/slogin',
type: 'post',
params: params
})
},
// 登陆验证
verify(params) {
return ajax({
url: '/verify',
type: 'post',
params: params
})
},
// 刷新token
refreshToken(params) {
return ajax({
url: '/refresh',
type: 'get',
params: params
})
},
// 登出
logout(params) {
return ajax({
url: '/logout',
type: 'post',
params: params
})
},
}
export default loginApi
+121
View File
@@ -0,0 +1,121 @@
/*
* @Author: 王枫叶
* @Date: 2020-10-21 14:11:47
* @LastEditors: 王枫叶
* @LastEditTime: 2020-12-17 19:43:50
*/
import ajax from "../utils/request";
const loufApi={
/** ********************楼凤列表************************* */
// 获取楼凤列表
getLouFengList(params) {
return ajax({
url: '/loufeng/list',
type: 'post',
params: params
})
},
// 新增
addLoufeng(params) {
return ajax({
url: '/loufeng/add',
type: 'post',
params: params
})
},
// 修改
updateLoufeng(params) {
return ajax({
url: '/loufeng/edit',
type: 'post',
params: params
})
},
// 删除
deleteLoufeng(params) {
return ajax({
url: '/loufeng/del',
type: 'delete',
params: params
})
},
// 取消置顶
cancelToplf(params) {
return ajax({
url: '/loufeng/cancelTop',
type: 'post',
params: params
})
},
/**************楼凤配置******************/
// 获取楼凤列表
getLoufCfgList(params) {
return ajax({
url: '/loufeng/getConfig',
type: 'get',
params: params
})
},
// 修改
editLoufCfg(params) {
return ajax({
url: '/loufeng/setConfig',
type: 'post',
params: params
})
},
/**************举报信息列表******************/
// 获取举报信息
getFeedbList(params) {
return ajax({
url: '/loufeng/getFeedback',
type: 'post',
params: params
})
},
// 修改举报信息
editFeedb (params) {
return ajax({
url: '/loufeng/processFeedback',
type: 'post',
params: params
})
},
/** ********************楼凤广告配置************************* */
// 获取列表
getLfAdList(params) {
return ajax({
url: '/loufengad/list',
type: 'post',
params: params
})
},
// 新增
addLfAd(params) {
return ajax({
url: '/loufengad/add',
type: 'post',
params: params
})
},
// 修改
updateLfAd(params) {
return ajax({
url: '/loufengad/edit',
type: 'post',
params: params
})
},
// 删除
deleteLfAd(params) {
return ajax({
url: '/loufengad/del',
type: 'post',
params: params
})
},
}
export default loufApi;
+143
View File
@@ -0,0 +1,143 @@
import request from "../utils/request";
export default {
/**
* 动漫相关接口
*/
// 获取视频列表
lsjComicsList(params) {
return request({
url: '/laosiji/comics/search',
type: 'post',
params
})
},
// 获取视频列表
lsjComicsDel(params) {
return request({
url: '/laosiji/comics/search',
type: 'post',
params
})
},
lsjComicsDetail(params) {
return request({
url: '/laosiji/comics/detail',
type: 'post',
params
})
},
lsjComicsAdd(params) {
return request({
url: '/laosiji/comics/add',
type: 'post',
params
})
},
/**
* 小说相关接口
*/
// 获取视频列表
lsjNovelList(params) {
return request({
url: '/laosiji/novel/search',
type: 'post',
params
})
},
// 获取视频列表
lsjNovelDel(params) {
return request({
url: '/laosiji/novel/search',
type: 'post',
params
})
},
lsjNovelDetail(params) {
return request({
url: '/laosiji/novel/detail',
type: 'post',
params
})
},
lsjNovelAdd(params) {
return request({
url: '/laosiji/novel/add',
type: 'post',
params
})
},
/**
* 帖子相关接口
*/
// 获取视频列表
lsjPostList(params) {
return request({
url: '/laosiji/post/search',
type: 'post',
params
})
},
// 获取视频列表
lsjPostDel(params) {
return request({
url: '/laosiji/post/search',
type: 'post',
params
})
},
lsjPostDetail(params) {
return request({
url: '/laosiji/post/detail',
type: 'post',
params
})
},
lsjPostAdd(params) {
return request({
url: '/laosiji/post/add',
type: 'post',
params
})
},
/**
* 视频相关接口
*/
// 获取视频列表
lsjVideoList(params) {
return request({
url: '/laosiji/movie/search',
type: 'post',
params
})
},
// 获取视频列表
lsjVideoDel(params) {
return request({
url: '/laosiji/movie/search',
type: 'post',
params
})
},
lsjVideoDetail(params) {
return request({
url: '/laosiji/movie/detail',
type: 'post',
params
})
},
lsjVideoAdd(params) {
return request({
url: '/laosiji/movie/add',
type: 'post',
params
})
}
}
+37
View File
@@ -0,0 +1,37 @@
import axios from '../utils/request';
// 获取跑马灯列表
export function getAnnounceList(params) {
return axios({
url: '/announce/list',
type: 'get',
params
})
}
// 新增跑马灯
export function addAnnounce(params) {
return axios({
url: '/announce/add',
type: 'post',
params
})
}
// 修改跑马灯
export function updateAnnounce(params) {
return axios({
url: '/announce/update',
type: 'post',
params
})
}
// 删除跑马灯
export function deleteAnnounce(params) {
return axios({
url: '/announce/del',
type: 'delete',
params
})
}
+48
View File
@@ -0,0 +1,48 @@
import request from "../utils/request";
export default {
/**
* 视频相关接口
*/
// 获取视频列表
mediaSearch(params) {
return request({
url: '/tianyu/search',
type: 'post',
params
})
},
// 删除视频
mediaDel(params) {
return request({
url: '/mediafile/del',
type: 'post',
params
})
},
// 添加资源
mediaAdd(params) {
return request({
url: '/tianyu/add',
type: 'post',
params
})
},
// 资源更新
mediaUpdate(params) {
return request({
url: '/mediafile/update',
type: 'post',
params
})
},
// 资源更新预览时长
updatePreTime(params) {
return request({
url: '/mediafile/update/prefile',
type: 'post',
params
})
}
}
+178
View File
@@ -0,0 +1,178 @@
import axios from '../utils/request';
// 模块配置
const moduleConfApi = {
// 获取标签配置列表
getTagConfigs(params) {
return axios({
url: '/tag/conf',
type: 'get',
params
})
},
// 获取模块配置列表
getModules(params) {
return axios({
url: '/module/conf/list',
type: 'post',
params
})
},
// 新增模块
addModule(params, noFiltering) {
return axios({
url: '/module/conf/add',
type: 'post',
params
}, noFiltering)
},
// 修改模块
editModule(params, noFiltering) {
return axios({
url: '/module/conf/edit',
type: 'post',
params
}, noFiltering)
},
// 删除模块
deleteModule(params) {
return axios({
url: '/module/conf/delete',
type: 'post',
params
})
},
// 获取专题列表
getSections(params) {
return axios({
url: '/module/section/list',
type: 'post',
params
})
},
// 新增专题
addSection(params) {
return axios({
url: '/module/section/add',
type: 'post',
params
})
},
// 修改专题
editSection(params) {
return axios({
url: '/module/section/edit',
type: 'post',
params
})
},
// 删除专题
deleteSection(params) {
return axios({
url: '/module/section/delete',
type: 'post',
params
})
},
// 查询专题点击量
queryClicks(params) {
return axios({
url: '/module/section/clicks',
type: 'post',
params
})
},
// 获取视频列表
getVideos(params) {
return axios({
url: '/module/video/list',
type: 'post',
params
})
},
// 新增视频
addVideo(params) {
return axios({
url: '/module/video/add',
type: 'post',
params
})
},
// 批量新增视频
addVideos(params) {
return axios({
url: '/module/video/add/batch',
type: 'post',
params
})
},
// 修改视频
editVideo(params) {
return axios({
url: '/module/video/edit',
type: 'post',
params
})
},
// 删除视频
deleteVideo(params) {
return axios({
url: '/module/video/delete',
type: 'post',
params
})
},
// 获取跑马灯内容
queryMarquee(params) {
return axios({
url: '/module/conf/marquee',
type: 'get',
params
})
},
// 编辑跑马灯
modifyMarquee(params) {
return axios({
url: '/module/conf/marquee',
type: 'post',
params
})
},
// 金刚区
// 金刚区列表查询
queryKingKongList(params) {
return axios({
url: '/jingang/list',
type: 'get',
params
})
},
// 金刚区添加
addKingKong(params) {
return axios({
url: '/jingang/add',
type: 'post',
params
})
},
// 金刚区修改
modifyKingKong(params) {
return axios({
url: '/jingang/update',
type: 'post',
params
})
},
// 金刚区删除
delKingKong(params) {
return axios({
url: '/jingang/delete',
type: 'post',
params
})
},
}
export default moduleConfApi;
+104
View File
@@ -0,0 +1,104 @@
import ajax from "../utils/request";
const nakedChatApi = {
/** ********************裸聊专区列表************************* */
// 商品复选框
getProductCheckbox(params) {
return ajax({
url: '/business/product/checkbox',
type: 'get',
params: params
})
},
// 获取裸聊列表
getNakedChatList(params) {
return ajax({
url: '/nakedchat/list',
type: 'get',
params: params
})
},
// 新增
addNakedChat(params) {
return ajax({
url: '/nakedchat/create',
type: 'post',
params: params
})
},
// 修改
updateNakedChat(params) {
return ajax({
url: '/nakedchat/update',
type: 'post',
params: params
})
},
// 批量修改裸聊模块
batchUpdateNakedChat(params) {
return ajax({
url: '/nakedchat/batch/update',
type: 'post',
params: params
})
},
// 官方公告
nakedChatConfig(params) {
return ajax({
url: '/nude/chat/config',
type: 'get',
params: params
})
},
// 修改官方公告
updateNakedChatConfig(params) {
return ajax({
url: '/nude/chat/config',
type: 'put',
params: params
})
},
// 获取裸聊购买列表
getNakedChatBuyList(params) {
return ajax({
url: '/nakedchatorder/list',
type: 'get',
params: params
})
},
// 更新裸聊购买
updateNakedchatorder(params) {
return ajax({
url: '/nakedchatorder/update',
type: 'post',
params: params
})
},
// 获取裸聊购买列表
confirmUseCode(params) {
return ajax({
url: '/nude/chat/use/code',
type: 'put',
params: params
})
},
// 获取裸聊举报信息列表
queryFeedback(params) {
return ajax({
url: '/nude/chat/feedback',
type: 'get',
params: params
})
},
operateFeedback(params) {
return ajax({
url: '/nude/chat/feedback/operate',
type: 'post',
params: params
})
},
}
export default nakedChatApi;
+171
View File
@@ -0,0 +1,171 @@
import ajax from '../utils/request';
const BASE = '/officialWebsite';
const officialWebsiteApi = {
// 基础数据
getOfficialWebsiteBasic() {
return ajax({ url: BASE, type: 'get' });
},
createOfficialWebsiteBasic(params) {
return ajax({ url: BASE, type: 'post', params });
},
updateOfficialWebsiteBasic(params) {
return ajax({ url: BASE, type: 'put', params }, true);
},
deleteOfficialWebsiteBasic(params) {
return ajax({ url: BASE, type: 'delete', params });
},
// 创作者
getHeroList(params) {
return ajax({ url: `${BASE}/hero/list`, type: 'get', params });
},
createHero(params) {
return ajax({ url: `${BASE}/hero/create`, type: 'post', params });
},
updateHero(params) {
return ajax({ url: `${BASE}/hero/update`, type: 'put', params }, true);
},
deleteHero(params) {
return ajax({ url: `${BASE}/hero/delete`, type: 'delete', params });
},
// 专辑
getAlbumList(params) {
return ajax({ url: `${BASE}/album/list`, type: 'get', params });
},
createAlbum(params) {
return ajax({ url: `${BASE}/album/create`, type: 'post', params });
},
updateAlbum(params) {
return ajax({ url: `${BASE}/album/update`, type: 'put', params }, true);
},
deleteAlbum(params) {
return ajax({ url: `${BASE}/album/delete`, type: 'delete', params });
},
// 视频
getOfficialVideoList(params) {
return ajax({ url: `${BASE}/video/list`, type: 'get', params });
},
createOfficialVideo(params) {
return ajax({ url: `${BASE}/video/create`, type: 'post', params });
},
updateOfficialVideo(params) {
return ajax({ url: `${BASE}/video/update`, type: 'put', params }, true);
},
deleteOfficialVideo(params) {
return ajax({ url: `${BASE}/video/delete`, type: 'delete', params });
},
batchOfficialVideo(params) {
return ajax({ url: `${BASE}/video/batch`, type: 'put', params }, true);
},
// 导入后台视频库视频
importOfficialVideo(params) {
return ajax({ url: `${BASE}/video/import`, type: 'put', params }, true);
},
getOfficialVideoListFromVid(params) {
return ajax({ url: `${BASE}/video/listFromVid`, type: 'get', params });
},
// 写真
getPhotographList(params) {
return ajax({ url: `${BASE}/photograph/list`, type: 'get', params });
},
createPhotograph(params) {
return ajax({ url: `${BASE}/photograph/create`, type: 'post', params });
},
updatePhotograph(params) {
return ajax({ url: `${BASE}/photograph/update`, type: 'put', params }, true);
},
deletePhotograph(params) {
return ajax({ url: `${BASE}/photograph/delete`, type: 'delete', params });
},
batchPhotograph(params) {
return ajax({ url: `${BASE}/photograph/batch`, type: 'put', params }, true);
},
// 标签
getOfficialTagList(params) {
return ajax({ url: `${BASE}/tag/list`, type: 'get', params });
},
createOfficialTag(params) {
return ajax({ url: `${BASE}/tag/create`, type: 'post', params });
},
updateOfficialTag(params) {
return ajax({ url: `${BASE}/tag/update`, type: 'put', params }, true);
},
deleteOfficialTag(params) {
return ajax({ url: `${BASE}/tag/delete`, type: 'delete', params });
},
// 招聘表单
getRecruitFormList(params) {
return ajax({ url: `${BASE}/recruitForm/list`, type: 'get', params });
},
updateRecruitForm(params) {
return ajax({ url: `${BASE}/recruitForm/update`, type: 'put', params }, true);
},
deleteRecruitForm(params) {
return ajax({ url: `${BASE}/recruitForm/delete`, type: 'delete', params });
},
// 职位
getJobList(params) {
return ajax({ url: `${BASE}/jobList/list`, type: 'get', params });
},
createJob(params) {
return ajax({ url: `${BASE}/jobList/create`, type: 'post', params });
},
updateJob(params) {
return ajax({ url: `${BASE}/jobList/update`, type: 'put', params }, true);
},
deleteJob(params) {
return ajax({ url: `${BASE}/jobList/delete`, type: 'delete', params });
},
// 新闻
getNewsList(params) {
return ajax({ url: `${BASE}/news/list`, type: 'get', params });
},
createNews(params) {
return ajax({ url: `${BASE}/news/create`, type: 'post', params });
},
updateNews(params) {
return ajax({ url: `${BASE}/news/update`, type: 'put', params }, true);
},
deleteNews(params) {
return ajax({ url: `${BASE}/news/delete`, type: 'delete', params });
},
// 合作伙伴
getPartnerList(params) {
return ajax({ url: `${BASE}/partner/list`, type: 'get', params });
},
createPartner(params) {
return ajax({ url: `${BASE}/partner/create`, type: 'post', params });
},
updatePartner(params) {
return ajax({ url: `${BASE}/partner/update`, type: 'put', params }, true);
},
deletePartner(params) {
return ajax({ url: `${BASE}/partner/delete`, type: 'delete', params });
},
// Business
getBusinessList(params) {
return ajax({ url: `${BASE}/business/list`, type: 'get', params });
},
createBusiness(params) {
return ajax({ url: `${BASE}/business/create`, type: 'post', params });
},
updateBusiness(params) {
return ajax({ url: `${BASE}/business/update`, type: 'put', params }, true);
},
deleteBusiness(params) {
return ajax({ url: `${BASE}/business/delete`, type: 'delete', params });
},
};
export default officialWebsiteApi;
+458
View File
@@ -0,0 +1,458 @@
import ajax from "../utils/request";
const productApi = {
/********************************产品和订单管理*********************************** */
/********************************VIP商品列表*********************************** */
// VIP商品列表
getPruductList(params) {
return ajax({
url: "/business/product/list",
type: "get",
params: params,
});
},
// VIP所有权益列表
getProductAllList() {
return ajax({
url: "/productBenefit/all/list",
type: "get",
});
},
// 新增栏目
getNewSection(params) {
return ajax({
url: "/business/product",
type: "post",
params: params,
});
},
// 编辑栏目
getEditSection(params) {
return ajax({
url: "/business/product/update",
type: "post",
params: params,
});
},
// 删除栏目
getDeleteSection(params) {
return ajax({
url: "/business/product",
type: "delete",
params: params,
});
},
/********************************VIP权益列表*********************************** */
// VIP权益列表
getProductBenefitList(params) {
return ajax({
url: "/productBenefit/list",
type: "get",
params: params,
});
},
// 新增权益
newProductBenefit(params) {
return ajax({
url: "/productBenefit/add",
type: "post",
params: params,
});
},
// 编辑权益
editProductBenefit(params) {
return ajax({
url: "/productBenefit/update",
type: "post",
params: params,
});
},
// 删除权益
deleteProductBenefit(params) {
return ajax({
url: "/productBenefit/del",
type: "delete",
params: params,
});
},
/********************************金币列表*********************************** */
// 新增金币
addGold(params) {
return ajax({
url: "/recharge/gold/add",
type: "post",
params: params,
});
},
// 获取金币配置列表
getGoldList(params) {
return ajax({
url: "/recharge/gold/list",
type: "get",
params: params,
});
},
// 修改金币配置
updateGold(params) {
return ajax({
url: "/recharge/gold/update",
type: "post",
params: params,
});
},
// 删除金币配置
delGold(params) {
return ajax({
url: "/recharge/gold/delete",
type: "delete",
params: params,
});
},
/********************************积分配置列表*********************************** */
// 获取积分配置列表
getIntegralConfigList(params) {
return ajax({
url: "/integral_config",
type: "get",
params: params,
});
},
// 添加积分配置
addIntegralConfig(params) {
return ajax({
url: "/integral_config",
type: "post",
params: params,
});
},
// 修改积分配置
updateIntegralConfig(params) {
return ajax({
url: "/integral_config",
type: "put",
params: params,
});
},
/********************************预售配置列表*********************************** */
// 获取预售配置
getAdvanceConfigList(params) {
return ajax({
url: "/advance_config/list",
type: "get",
params: params,
});
},
// 添加预售配置
addAdvanceConfig(params) {
return ajax({
url: "/advance_config/create",
type: "post",
params: params,
});
},
// 删除预售配置
delAdvanceConfig(params) {
return ajax({
url: "/advance_config/delete",
type: "post",
params: params,
});
},
// 修改预售配置
updateAdvanceConfig(params) {
return ajax({
url: "/advance_config/update",
type: "post",
params: params,
});
},
/********************************游戏金币列表*********************************** */
// 新增游戏金币
addGameGold(params) {
return ajax({
url: "/recharge/game/gold/add",
type: "post",
params: params,
});
},
// 获取游戏金币配置列表
getGameGoldList(params) {
return ajax({
url: "/recharge/game/gold/list",
type: "get",
params: params,
});
},
// 修改游戏金币配置
updateGameGold(params) {
return ajax({
url: "/recharge/game/gold/update",
type: "post",
params: params,
});
},
// 删除游戏金币配置
delGameGold(params) {
return ajax({
url: "/recharge/game/gold/delete",
type: "delete",
params: params,
});
},
/********************************货币列表*********************************** */
// 新增货币
addCurrency(params) {
return ajax({
url: "/currency",
type: "post",
params: params,
});
},
// 获取货币配置列表
getCurrencyList(params) {
return ajax({
url: "/currency",
type: "get",
params: params,
});
},
// 修改货币配置
updateCurrency(params, noFiltering) {
return ajax(
{
url: "/currency",
type: "put",
params: params,
},
noFiltering
);
},
/********************************金币优惠配置*********************************** */
// 新增金币优惠配置
addPayGold(params) {
return ajax({
url: "/gold/cfg/add",
type: "post",
params: params,
});
},
// 获取金币支付配置列表
getPayGoldList(params) {
return ajax({
url: "/gold/cfg/list",
type: "get",
params: params,
});
},
// 编辑金币支付配置
updatePayGold(params) {
return ajax({
url: "/gold/cfg/edit",
type: "post",
params: params,
});
},
// 删除金币支付配置
delPayGold(params) {
return ajax({
url: "/gold/cfg/del",
type: "delete",
params: params,
});
},
/********************************推广落地页列表*********************************** */
// 新增推广落地页
addPromote(params) {
return ajax({
url: "/promoteUrl/insert",
type: "post",
params: params,
});
},
// 获取推广落地页配置列表
getPromoteList(params) {
return ajax({
url: "/promoteUrl/list",
type: "get",
params: params,
});
},
// 修改推广落地页配置
updatePromote(params) {
return ajax({
url: "/promoteUrl/update",
type: "post",
params: params,
});
},
// 删除推广落地页配置
delPromote(params) {
return ajax({
url: "/promoteUrl/delete",
type: "delete",
params: params,
});
},
/********************************支付方式列表*********************************** */
// 新增支付方式
addChannel(params) {
return ajax({
url: "/recharge/channel/add",
type: "post",
params: params,
});
},
// 获取支付方式配置列表
getChannelList(params) {
return ajax({
url: "/recharge/channel/list",
type: "get",
params: params,
});
},
// 修改支付方式配置
updateChannel(params) {
return ajax({
url: "/recharge/channel/update",
type: "post",
params: params,
});
},
// 删除支付方式配置
delChannel(params) {
return ajax({
url: "/recharge/channel/delete",
type: "delete",
params: params,
});
},
/********************************产品展示位置配置列表*********************************** */
// 获取列表
getPositionList(params) {
return ajax({
url: "/business/productPosition/list",
type: "post",
params: params,
});
},
// 新增
addPosition(params) {
return ajax({
url: "/business/productPosition/add",
type: "post",
params: params,
});
},
// 编辑
editPosition(params) {
return ajax({
url: "/business/productPosition/edit",
type: "post",
params: params,
});
},
//删除
deletePosition(params) {
return ajax({
url: "/business/productPosition/del",
type: "post",
params: params,
});
},
// 产品展示位置
getNames(params) {
return ajax({
url: "/business/productPosition/names",
type: "post",
params: params,
});
},
/********************************VIP升级配置*********************************** */
// 获取VIP升级配置信息
getConfig(params) {
return ajax({
url: "/business/getConfig",
type: "get",
params: params,
});
},
//编辑配置信息
setConfig(params) {
return ajax({
url: "/business/setConfig",
type: "post",
params: params,
});
},
/********************************官方下载管理*********************************** */
// 官方下载管理列表
getOfficialList(params) {
return ajax({
url: "/official/list",
type: "get",
params: params,
});
},
// 新增官方下载
addOfficial(params) {
return ajax({
url: "/official/add",
type: "post",
params: params,
});
},
// 编辑官方下载
updOfficial(params) {
return ajax({
url: "/official/update",
type: "post",
params: params,
});
},
// 删除栏目
delOfficial(params) {
return ajax({
url: "/official/delete",
type: "delete",
params: params,
});
},
/********************************banner活动管理*********************************** */
// 获取banner活动列表
getBannerjumpList(params) {
return ajax({
url: "/bannerjump/list",
type: "get",
params,
});
},
// 新增banner活动
addBannerjump(params) {
return ajax({
url: "/bannerjump/create",
type: "post",
params,
});
},
// 修改banner活动
updateBannerjump(params) {
return ajax({
url: "/bannerjump/update",
type: "post",
params,
});
},
// 删除banner活动
deleteBannerjump(params) {
return ajax({
url: "/bannerjump/delete",
type: "post",
params,
});
},
};
export default productApi;
+57
View File
@@ -0,0 +1,57 @@
import ajax from '../utils/request';
const robotApi = {
/***************************机器人配置****************************** */
// 请求机器人列表
getRbotList(params) {
return ajax({
url: '/robot/conf/list',
type: 'get',
params: params
});
},
// 添加机器人配置
addRbot(params) {
return ajax({
url: '/robot/conf/add',
type: 'post',
params: params
});
},
// 修改机器人列表
updateRbot(params) {
return ajax({
url: '/robot/conf/update',
type: 'post',
params: params
});
},
/***************************聊天内容****************************** */
// 机器人聊天内容列表
getContentList(params) {
return ajax({
url: '/robot/content/list',
type: 'get',
params: params
})
},
// 增加聊天内容
addContent(params) {
return ajax({
url: '/robot/content/add',
type: 'post',
params: params
})
},
// 删除聊天内容
delContent(params) {
return ajax({
url: '/robot/content/del',
type: 'delete',
params: params
})
}
};
export default robotApi;
+97
View File
@@ -0,0 +1,97 @@
import ajax from '../utils/request';
const shortVideoRecommendApi = {
// 付费引导配置
getPaymentGuideList(params) {
return ajax({
url: '/payment-guide/list',
type: 'get',
params,
});
},
addPaymentGuide(params) {
return ajax({
url: '/payment-guide/add',
type: 'post',
params,
});
},
editPaymentGuide(params) {
return ajax({
url: '/payment-guide/edit',
type: 'post',
params,
});
},
deletePaymentGuide(params) {
// id 走 query(params),request 对非 get 会把 params 放进 data
return ajax({
url: `/payment-guide/delete?id=${encodeURIComponent(params.id)}`,
type: 'delete',
});
},
// 评论 Banner 配置
getCommentBannerList(params) {
return ajax({
url: '/banner/list',
type: 'get',
params: {
scene: 'COMMENT_TOP',
...params,
},
});
},
addCommentBanner(params) {
return ajax({
url: '/banner/add',
type: 'post',
params,
});
},
editCommentBanner(params) {
return ajax({
url: '/banner/edit',
type: 'post',
params,
});
},
deleteCommentBanner(params) {
return ajax({
url: '/banner/delete',
type: 'delete',
params,
});
},
// VIP 卡片实验
getVipCardExperimentCurrent() {
return ajax({
url: '/vip-card-experiment/current',
type: 'get',
});
},
publishVipCardExperiment(params) {
return ajax({
url: '/vip-card-experiment/publish',
type: 'post',
params,
});
},
disableVipCardExperiment(params) {
return ajax({
url: '/vip-card-experiment/disable',
type: 'post',
params,
});
},
getVipCardExperimentStatistics(params) {
return ajax({
url: '/vip-card-experiment/statistics',
type: 'get',
params,
});
},
};
export default shortVideoRecommendApi;
+125
View File
@@ -0,0 +1,125 @@
import ajax from '../utils/request';
const signinApi = {
// 新增奖品
addSignin(params) {
return ajax({
url: '/task/prize',
type: 'post',
params: params
});
},
// 修改奖品
editSignin(params) {
return ajax({
url: '/task/prize',
type: 'put',
params: params
}, true);
},
// 查询奖品
querySignin(params) {
return ajax({
url: '/task/prize',
type: 'get',
params: params
});
},
// 查询奖品--配置页面
queryPrizeBox(params) {
return ajax({
url: '/activity/prize/box',
type: 'get',
params: params
});
},
// 新增配置
addSigninConfig(params) {
return ajax({
url: '/task/sign/add',
type: 'post',
params: params
});
},
// 修改配置
editSigninConfig(params) {
return ajax({
url: '/task/sign/edit',
type: 'post',
params: params
});
},
// 查询配置
querySigninConfig(params) {
return ajax({
url: '/task/sign/list',
type: 'get',
params: params
});
},
// 签到历史记录(参考 qiyou2_admin_client)
getCheckinHistoryList(params) {
return ajax({
url: '/checkin/history/list',
type: 'post',
params
});
},
deleteCheckinHistory(params) {
return ajax({
url: '/checkin/history/del',
type: 'post',
params
});
},
// 签到奖品配置列表(参考 qiyou2_admin_client)
checkinCfgAdd(params) {
return ajax({
url: '/checkinprize/add',
type: 'post',
params
});
},
checkinCfgDel(params) {
return ajax({
url: '/checkinprize/del',
type: 'post',
params
});
},
checkinCfgSearch(params) {
return ajax({
url: '/checkinprize/list',
type: 'post',
params
});
},
checkinCfgUpdate(params) {
return ajax({
url: '/checkinprize/update',
type: 'post',
params
});
},
// 文档后台管理接口
getCheckingCg(params = {}) {
return ajax({
url: '/checkin/conf/get',
type: 'post',
params
});
},
updateCheckingCg(params) {
return ajax({
url: '/checkin/conf/update',
type: 'post',
params
});
},
}
export default signinApi;
+98
View File
@@ -0,0 +1,98 @@
import ajax from '../utils/request'
const staticsApi = {
/***************************金币流水统计管理****************************** */
// 请求金币流水列表
getGlodList(params) {
return ajax({
url: '/log/gold',
type: 'get',
params: params
})
},
// 请求金币流水-用途列表
getUseList(params) {
return ajax({
url: '/log/goldType',
type: 'get',
params: params
})
},
/***************************营收数据****************************** */
getRevenue(params) {
return ajax({
url: '/stats/revenue/list',
type: 'get',
params: params
})
},
/***************************用户今日统计****************************** */
getUserTody(params) {
return ajax({
url: '/stats/user/daily/list',
type: 'get',
params: params
})
},
/***************************提现充值成功统计****************************** */
getOrderStats(params) {
return ajax({
url: '/stats/order/list',
type: 'get',
params: params
})
},
/**
* 获取交易统计里 趋势图详情接口
* @param {*} params
*/
getEchartData(data) {
return ajax({
url: '/stats/order/sucRate',
type: 'post',
params:data
})
},
/***************************视频收入统计****************************** */
getVIncomeList(params) {
return ajax({
url: '/stats/video/earn/list',
type: 'get',
params: params
})
},
/***************************广告点击统计****************************** */
getClickStatistics(params) {
return ajax({
url: '/log/ads/statistical',
type: 'get',
params: params
})
},
/***************************广告ab用户分析****************************** */
getAdgroupList(params) {
return ajax({
url: '/adgroup/list',
type: 'post',
params: params
})
},
/***************************视频销售金币统计****************************** */
getVideoPayGoldStat(params) {
return ajax({
url: '/stats/video/earn/aggregate',
type: 'get',
params: params
})
},
/***************************视频扣量金币统计****************************** */
getVideoKlGoldStat(params) {
return ajax({
url: '/stats/video/publisher/deduction',
type: 'get',
params: params
})
},
}
export default staticsApi
+70
View File
@@ -0,0 +1,70 @@
import ajax from '../utils/request'
const systemApi = {
/********************************版本管理*********************************** */
// 请求版本管理模块配置列表
getVersionList(params) {
return ajax({
url: '/ver/list',
type: 'get',
params: params
})
},
// 删除tags
getVersionDelets(params) {
return ajax({
url: '/ver',
type: 'delete',
params: params
})
},
// 编辑tags
getVersionPut(params) {
return ajax({
url: '/ver/update',
type: 'post',
params: params
})
},
// 增加tags
getVersionPost(params) {
return ajax({
url: '/ver',
type: 'post',
params: params
})
},
/** ***********************ip配置************************** */
// 请求列表
getIpConfigList(params) {
return ajax({
url: '/ipwhite/list',
type: 'get',
params: params
})
},
// 新增
addIpConfig(params) {
return ajax({
url: '/ipwhite/add',
type: 'post',
params: params
})
},
// 编辑
updateIpConfig(params) {
return ajax({
url: '/ipwhite/edit',
type: 'post',
params: params
})
},
// 删除
delIpConfig(params) {
return ajax({
url: '/ipwhite/del',
type: 'delete',
params: params
})
}
}
export default systemApi
+104
View File
@@ -0,0 +1,104 @@
import ajax from "../utils/request";
const systemMessageApi = {
/********************************系统管理*********************************** */
// 获取消息通知列表
getSystemMessage(params) {
return ajax({
url: "/infmt/notice/list",
type: "get",
params: params,
});
},
// 删除消息通知
removeMessage(params) {
return ajax({
url: "/infmt/notice/delete",
type: "delete",
params: params,
});
},
addMessage(params) {
return ajax({
url: "/infmt/notice/add",
type: "post",
params: params,
});
},
// 编辑通知
editMessage(params) {
return ajax({
url: "/infmt/notice/update",
type: "post",
params: params,
});
},
// 获取邮件列表
getEmailList(params) {
return ajax({
url: "/infmt/mail/list",
type: "get",
params: params,
});
},
// 添加邮件
addEmail(params) {
return ajax({
url: "/infmt/mail/add",
type: "post",
params: params,
});
},
// 删除邮件
removeEmail(params) {
return ajax({
url: "/infmt/mail/delete",
type: "delete",
params: params,
});
},
/********************************系统配置列表*********************************** */
// 获取系统配置列表
getSysconfAll(params) {
return ajax({
url: "/sysconf/all",
type: "get",
params: params,
});
},
// 添加系统配置
addSysconf(params) {
return ajax({
url: "/sysconf/create",
type: "post",
params: params,
});
},
// 删除系统配置
delSysconf(params) {
return ajax({
url: "/sysconf/delete",
type: "post",
params: params,
});
},
// 修改系统配置
updateSysconf(params) {
return ajax(
{
url: "/sysconf/update",
type: "post",
params: params,
},
true
);
},
// selectValues下拉框选项修改
updateSysSelect(params) {
return ajax({
url: "/sysconf/update/select",
type: "post",
params: params,
});
},
};
export default systemMessageApi;
+30
View File
@@ -0,0 +1,30 @@
import ajax from "../utils/request";
const tagConfigsListApi = {
// 新增标签配置
addTagConfig(params) {
return ajax({
url: '/tag/conf/add',
type: 'post',
params
})
},
// 删除标签配置
delTagConfig(params) {
return ajax({
url: '/tag/conf/delete',
type: 'post',
params
})
},
// 修改标签配置
editTagConfig(params) {
return ajax({
url: '/tag/conf/update',
type: 'post',
params
})
}
}
export default tagConfigsListApi;
+250
View File
@@ -0,0 +1,250 @@
import ajax from "../utils/request";
const transApi = {
/********************************充值订单管理列表*********************************** */
// 请求充值订单列表
getOrderList(params) {
return ajax({
url: "/recharge/order/list",
type: "get",
params: params,
});
},
// 编辑状态说明
editStatusText(params) {
return ajax({
url: "/recharge/order/update",
type: "post",
params: params,
});
},
// 把订单信息通知到第三方平台
handAddScore(params) {
return ajax({
url: "/daichong/order/handScore",
type: "post",
params: params,
});
},
/********************************积分兑换列表*********************************** */
// 获取积分兑换列表
getIntegralExchangeList(params) {
return ajax({
url: "/integral_exchange",
type: "get",
params: params,
});
},
// 修改积分兑换
updateIntegralExchange(params) {
return ajax({
url: "/integral_exchange",
type: "put",
params: params,
});
},
/********************************提现订单管理列表*********************************** */
// 请求提现列表
getWithdrawList(params) {
return ajax({
url: "/withdraw/list",
type: "get",
params: params,
});
},
// 提现审核
WithdrawExamine(params) {
return ajax({
url: "/withdraw/check",
type: "post",
params: params,
});
},
/********************************预售订单管理列表*********************************** */
// 请求预售订单列表
getAdvanceOrderList(params) {
return ajax({
url: "/advance_order",
type: "get",
params: params,
});
},
exportAdvanceOrder(params) {
return ajax({
url: "/advance_order/export",
type: "post",
params: params,
});
},
/********************************提现方式*********************************** */
// 新增提现方式
addWChannel(params) {
return ajax({
url: "/withdraw/channel/add",
type: "post",
params: params,
});
},
// 获取提现方式配置列表
getWChannelList(params) {
return ajax({
url: "/withdraw/channel/list",
type: "get",
params: params,
});
},
// 修改提现方式配置
updateWChannel(params) {
return ajax({
url: "/withdraw/channel/update",
type: "post",
params: params,
});
},
// 修改提现税率
updateTax(params) {
return ajax({
url: "/withdraw/channel/batch",
type: "post",
params: params,
});
},
// 删除提现方式配置
delWChannel(params) {
return ajax({
url: "/withdraw/channel/delete",
type: "delete",
params: params,
});
},
/********************************提现银行配置*********************************** */
// 提现银行配置列表配置
cashBankList(params) {
return ajax({
url: "/bankType/list",
type: "get",
params: params,
});
},
// 提现银行配置新增
addCashBank(params) {
return ajax({
url: "/bankType/add",
type: "post",
params: params,
});
},
// 提现银行配置编辑
editCashBank(params) {
return ajax({
url: "/bankType/update",
type: "post",
params: params,
});
},
// 提现银行配置删除
delCashBank(params) {
return ajax({
url: "/bankType/del ",
type: "delete",
params: params,
});
},
/******************************财务转账列表******************************/
// 获取财务转账列表
getTransferList(params) {
return ajax({
url: "/withdraw/finan/list",
type: "get",
params: params,
});
},
// 回执请求
receipt(params) {
return ajax({
url: "/withdraw/finan/receipt",
type: "post",
params: params,
});
},
/******************************会员购买记录******************************/
getVipCardPurchaseRecord(params) {
return ajax({
url: "/business/product/order",
type: "get",
params: params,
});
},
// 导出会员购买记录(POST)
exportVipCardPurchaseRecord(params) {
return ajax({
url: "/business/product/order/export",
type: "post",
params: params,
});
},
/******************************退款列表******************************/
// 获取退款列表
getRefundList(params) {
return ajax({
url: "/withdraw/refund/list",
type: "get",
params: params,
});
},
// 请求
Refund(params) {
return ajax({
url: "/withdraw/refund/dealwith ",
type: "post",
params: params,
});
},
/******************************** AI图生视频订单 *********************************** */
getAiImageToVideoList(params) {
return ajax({
url: "/ai/image_to_video/list",
type: "get",
params,
});
},
delAiImageToVideo(params) {
return ajax({
url: "/ai/image_to_video/delete",
type: "post",
params,
});
},
updateAiImageToVideo(params) {
return ajax({
url: "/ai/image_to_video/update",
type: "post",
params,
});
},
getAiTextImage(params) {
return ajax({
url: "/ai/text_to_image/list",
type: "get",
params
});
},
delAiTextImage(params) {
return ajax({
url: "/ai/text_to_image/delete",
type: "post",
params
});
},
updateAiTextImage(params) {
return ajax({
url: "/ai/text_to_image/update",
type: "post",
params
});
},
};
export default transApi;
+556
View File
@@ -0,0 +1,556 @@
import ajax from "../utils/request";
const userApi = {
/********************************用户管理*********************************** */
// 添加用户
addUser(params) {
return ajax({
url: "/user/add",
type: "post",
params: params,
});
},
// 更新用户设备id
resetDev(params) {
return ajax({
url: "/user/devID/reset",
type: "post",
params: params,
});
},
// 请求用户管理模块禁言用户
getUserBan(params) {
return ajax({
url: "/user/banned",
type: "post",
params: params,
});
},
// 设置用户是否打广告
setUserAdv(params) {
return ajax({
url: "/user/advertiser",
type: "post",
params: params,
});
},
// 神评或者取消神评
updateComment(params) {
return ajax({
url: "/comment/update",
type: "post",
params: params,
});
},
// 删除用户评论
delUserComment(params) {
return ajax({
url: "/user/deleteComment",
type: "post",
params: params,
});
},
// 请求用户列表
getUserList(params) {
return ajax({
url: "/user/list",
type: "get",
params: params,
});
},
// 更新用户禁止上传状态
resetForbid(params) {
return ajax({
url: "/user/forbid",
type: "post",
params: params,
});
},
// 请求查看或生成验证码
getViewCaptcha(params) {
return ajax({
url: "/extend/viewCaptcha",
type: "get",
params: params,
});
},
// 请求用户观看视频详情列表
getUserPlay(params) {
return ajax({
url: "/user/record/play",
type: "get",
params: params,
});
},
// 请求用户管理模块禁止用户登陆
getUserLock(params) {
return ajax({
url: "/user/lock",
type: "post",
params: params,
});
},
// 设置ai伴侣余额
creditAiMateBalance(params) {
return ajax({
url: "/user/credit/aiMateBalance",
type: "post",
params: params,
});
},
// 编辑用户
editUser(params) {
return ajax({
url: "/user/update",
type: "post",
params: params,
});
},
//重置用户银行卡姓名
restBankUserName(params) {
return ajax(
{
url: "/user/update",
type: "post",
params: params,
},
true
);
},
// 理由列表
getReasonList(params) {
return ajax({
url: "/rejectTemp/list",
type: "get",
params: params,
});
},
// 新增理由
addReasonList(params) {
return ajax({
url: "/rejectTemp/insert",
type: "post",
params: params,
});
},
// 删除理由
delReasonList(params) {
return ajax({
url: "/rejectTemp/del",
type: "post",
params: params,
});
},
// 编辑理由
editReasonList(params) {
return ajax({
url: "/rejectTemp/update",
type: "post",
params: params,
});
},
// 用户加金币
addUserGold(params) {
return ajax({
url: "/user/credit",
type: "post",
params: params,
});
},
// 用户加AI脱衣免费次数
addAiUndressFreeTimes(params) {
return ajax({
url: "/user/update/freeTimes",
type: "post",
params: params,
});
},
// 用户加下载次数
addDownloadTimes(params) {
return ajax({
url: "/user/update/download",
type: "post",
params: params,
});
},
// 用户加抽奖次数
addLotteryTimes(params) {
return ajax({
url: "/user/update/lotteryTimes",
type: "post",
params: params,
});
},
// 用户加积分
addUserIntegral(params) {
return ajax({
url: "/user/integral",
type: "post",
params: params,
});
},
// 用户加果币
addUserFruitCoin(params) {
return ajax({
url: "/user/credit/fruitCoin",
type: "post",
params: params,
});
},
// 用户VIP权益
getUserVipInfo(params) {
return ajax({
url: "/user/vipInfo",
type: "get",
params: params,
});
},
// 获取账号凭证
getQrcode(params) {
return ajax({
url: "/user/qr_code",
type: "post",
params: params,
});
},
// 查询会员卡
queryVipCard(params) {
return ajax({
url: "/business/product/list",
type: "get",
params: params,
});
},
// 查询游戏码
queryUserGameCode(params) {
return ajax({
url: "/user/queryGameCode",
type: "get",
params: params,
});
},
// 用户导出
exportUserList(params) {
return ajax({
url: "/export/userList",
type: "get",
params: params,
});
},
/********************************背包列表*********************************** */
// 获取背包列表
getBackpackList(params) {
return ajax({
url: "/backpack",
type: "get",
params: params,
});
},
/********************************用户私信列表*********************************** */
// 请求用户私信列表
getChatMessageList(params) {
return ajax({
url: "/user/chatMessage/list",
type: "get",
params: params,
});
},
// 请求用户私信列表
chatMessageSend(params) {
return ajax({
url: "/user/chatMessage/send",
type: "post",
params: params,
});
},
/********************************用户登陆日志*********************************** */
// 请求用户登陆日志列表
getLoginLog(params) {
return ajax({
url: "/user/login/list",
type: "get",
params: params,
});
},
/********************************用户ip限制*********************************** */
// 请求ip限制列表
getIpBlock(params) {
return ajax({
url: "/ipblock/list",
type: "get",
params: params,
});
},
// 修改IP限制
editIpBlock(params) {
return ajax({
url: "/ipblock/edit",
type: "post",
params: params,
});
},
// 删除IP限制
delIpBlock(params) {
return ajax({
url: "/ipblock/del",
type: "delete",
params: params,
});
},
// 添加IP限制
addIpBlock(params) {
return ajax({
url: "/ipblock/add",
type: "post",
params: params,
});
},
/********************************用户观看日志*********************************** */
// 请求用户观看记录列表
getWatchLog(params) {
return ajax({
url: "/user/play/list",
type: "get",
params: params,
});
},
/********************************用户常见问题*********************************** */
//请求用户常见问题列表
//请求用户常见问题列表
getUserQuestionList(params) {
return ajax({
url: "/user/faq/list",
type: "get",
params,
});
},
//请求用户常见问题分类列表
getClassificationList(params) {
return ajax({
url: "/user/faq/cate/list ",
type: "get",
params,
});
},
// 新增问题
AddQuestion(params) {
return ajax({
url: "/user/faq/add",
type: "post",
params,
});
},
// 编辑问题
EditQuestion(params) {
return ajax({
url: "/user/faq/update",
type: "post",
params,
});
},
// 删除问题
DeleteQuestion(params) {
return ajax({
url: "/user/faq/del",
type: "delete",
params,
});
},
/********************************用户举报列表*********************************** */
// 请求用户举报列表
getUserReport(params) {
return ajax({
url: "/user/report/list",
type: "get",
params: params,
});
},
// 请求用户举报列表
setRept(params) {
return ajax({
url: "/user/report/setStatus",
type: "post",
params: params,
});
},
// 请求举报分类列表
getReportTypes(params) {
return ajax({
url: "/user/report/types/list",
type: "get",
params: params,
});
},
/********************************黑名单列表*********************************** */
//请求黑名单列表
getBlackList(params) {
return ajax({
url: "/blacklist/list",
type: "get",
params,
});
},
// 移除黑名单
removeBlackList(params) {
return ajax({
url: "/blacklist/delete",
type: "delete",
params: params,
});
},
// 添加黑名单
addBlackList(params) {
return ajax({
url: "/blacklist/add",
type: "post",
params: params,
});
},
/********************************用户推荐列表*********************************** */
// 请求用户推荐列表
getRecommendationList(params) {
return ajax({
url: "/user/reco/list",
type: "get",
params: params,
});
},
// 用户推荐修改
updateRecommendation(params) {
return ajax({
url: "/user/reco/modify",
type: "post",
params: params,
});
},
// 用户推荐新增
addRecommendation(params) {
return ajax({
url: "/user/reco/add",
type: "post",
params: params,
});
},
// 用户推荐删除
delRecommendation(params) {
return ajax({
url: "/user/reco/del",
type: "post",
params: params,
});
},
/**********************用户反馈列表******************** */
// 请求用户反馈列表
getFeedbackList(params) {
return ajax({
url: "/user/feedback/list",
type: "get",
params: params,
});
},
//用户反馈修改
updateFeedback(params) {
return ajax({
url: "/user/feedback/update",
type: "post",
params: params,
});
},
//用户反馈删除
delFeedback(params) {
return ajax({
url: "/user/feedback/del",
type: "delete",
params: params,
});
},
//查询游戏余额
queryBalance(params) {
return ajax({
url: "/game/wali/balance/get",
type: "post",
params: params,
});
},
//回收游戏余额
recycleGameBal(params) {
return ajax({
url: "/game/wali/transfer",
type: "post",
params: params,
});
},
//回收金币
recycleIncome(params) {
return ajax({
url: "/user/credit/gold",
type: "post",
params: params,
});
},
/**********************用户操作日志列表******************** */
// 请求用户日志列表
getUserLogList(params) {
return ajax({
url: "/operation/log/list",
type: "get",
params: params,
});
},
// 查询所有工作室用户
queryStudioList(params) {
return ajax({
url: "/user/madou/list ",
type: "post",
params: params,
});
},
/********************************用户资源配置*********************************** */
// 请求用户资源配置列表
getResource(params) {
return ajax({
url: "/user/resource/list",
type: "get",
params: params,
});
},
// 删除用户资源配置
delResource(params) {
return ajax({
url: "/user/resource/del",
type: "post",
params: params,
});
},
// 新增用户资源配置
addResource(params) {
return ajax({
url: "/user/resource/add",
type: "post",
params: params,
});
},
// 编辑用户资源配置
updResource(params) {
return ajax({
url: "/user/resource/update",
type: "post",
params: params,
});
},
// 请求用户ai伴侣交易列表
getUserAiMateTransList(params) {
return ajax({
url: "/aimate/trans_list",
type: "get",
params: params,
});
},
};
export default userApi;
+813
View File
@@ -0,0 +1,813 @@
import ajax from "../utils/request";
const videoApi = {
/********************************审核视频相关接口*********************************** */
queryTagList(params) {
return ajax({
url: "/tag/pure/list",
type: "get",
params: params,
});
},
getVideoList(params) {
return ajax({
url: "/vid/list",
type: "get",
params: params,
});
},
queryHappTopList(params) {
return ajax({
url: "/image/list",
type: "post",
params: params,
});
},
delHappTopList(params) {
return ajax({
url: "/image/delete",
type: "post",
params: params,
});
},
updataHappTopList(params) {
return ajax({
url: "/image/update",
type: "post",
params: params,
});
},
queryVidHot(params) {
return ajax({
url: "/vid/search",
type: "post",
params: params,
});
},
exportVideoList(params) {
return ajax({
url: "/vid/export",
type: "post",
// responseType: "blob",
params: params,
});
},
// 视频删除接口
deleteVideos(params) {
return ajax({
url: "/vid/del",
type: "delete",
params: params,
});
},
// 单个视频审核接口
examineVideo(params) {
return ajax({
url: "/vid/batch/pass",
type: "post",
params: params,
});
},
// 批量视频审核接口
batchReview(params) {
return ajax({
url: "/vid/batch/edit",
type: "post",
params: params,
});
},
// 从专题批量视频删除接口
batchDelete(params) {
return ajax({
url: "/module/video/delete/batch",
type: "post",
params: params,
});
},
// 视频编辑
editVideoInfo(params) {
return ajax(
{
url: "/vid/update",
type: "post",
params: params,
},
true
);
},
// 上传图片
fileUpload(params) {
return ajax({
url: "/vid/uploadStatic",
type: "post",
headers: {
"Content-Type": "multipart/form-data",
},
params: params,
});
},
// 推送为精选
setChosen(params) {
return ajax({
url: "/vid/batch/update",
type: "post",
params: params,
});
},
// 是否推荐
setRecommend(params) {
return ajax({
url: "/vid/push",
type: "post",
params: params,
});
},
// 批量是否推荐
batchSetRecommend(params) {
return ajax({
url: "/vid/batch/reco",
type: "post",
params: params,
});
},
// 批量修改帖子类型
batchSetVideoType(params) {
return ajax({
url: "/vid/batch/newsType/update",
type: "post",
params: params,
});
},
// 取消推送
cancelRecommend(params) {
return ajax({
url: "/vid/push/delete",
type: "post",
params: params,
});
},
// 推送列表
recommendList(params) {
return ajax({
url: "/vid/push/list",
type: "get",
params: params,
});
},
// 视频上传
uploadVideo(params) {
return ajax({
url: "/vid/submit",
type: "post",
params: params,
});
},
// 精选视频推送
pushVideo(params) {
return ajax({
url: "/vid/push",
type: "post",
params: params,
});
},
// 审核不通过理由列表
// 查询
queryFailList(params) {
return ajax({
url: "/rejectTemp/vid/list",
type: "get",
params: params,
});
},
// 新增
addFailList(params) {
return ajax({
url: "/rejectTemp/vid/insert",
type: "post",
params: params,
});
},
// 删除
delFailList(params) {
return ajax({
url: "/rejectTemp/vid/del",
type: "post",
params: params,
});
},
// 编辑
editFailList(params) {
return ajax({
url: "/rejectTemp/vid/update",
type: "post",
params: params,
});
},
// 视频审查
videoFeviewList(params, urll) {
return ajax({
url: "/vid/view/" + urll,
type: "get",
params: params,
});
},
// 获取专题
sectionList(params) {
return ajax({
url: "/module/section/all",
type: "post",
params: params,
});
},
// 批量新增视频
batch(params) {
return ajax({
url: "/module/video/add/batch",
type: "post",
params: params,
});
},
// 批量新增视频
getVideoActivity(params) {
return ajax({
url: "/video_activity/box",
type: "get",
params: params,
});
},
/**
* 断点续传视频验证是否分片上传完毕
* @param {*} data
*/
uploadDotJson(params) {
return ajax({
url: "/vid/uploadDotJson",
type: "post",
params: params,
headers: {
"Content-Type": "application/json; charset=utf-8",
},
});
},
uploadDotStream(params) {
return ajax({
url: "/vid/uploadDotStream",
type: "post",
params: params,
});
},
// 批量编辑标签
batchEditTags(params) {
return ajax({
url: "/vid/batch/update/tags",
type: "post",
params: params,
});
},
/********************************城市列表*********************************** */
// 删除城市
deleteCity(params) {
return ajax({
url: "/vid/location/hotCity/delete",
type: "post",
params: params,
});
},
// 获取城市列表
getCityList(params) {
return ajax({
url: "/vid/location/city/list",
type: "get",
params: params,
});
},
// 编辑
updateCity(params) {
return ajax({
url: "/vid/location/city/update",
type: "post",
params: params,
});
},
/********************************热门城市*********************************** */
// 新增热门城市
addHotCity(params) {
return ajax({
url: "/vid/location/hotCity/add",
type: "post",
params: params,
});
},
// 删除热门城市
deleteHotCity(params) {
return ajax({
url: "/vid/location/hotCity/delete",
type: "delete",
params: params,
});
},
// 获取热门城市列表
getHotCityList(params) {
return ajax({
url: "/vid/location/hotCity/list",
type: "get",
params: params,
});
},
// 编辑热门城市
editHotCity(params) {
return ajax({
url: "/vid/location/hotCity/update",
type: "post",
params: params,
});
},
/********************************评论管理*********************************** */
// 回复评论
replyComment(params) {
return ajax({
url: "/comment/send",
type: "post",
params: params,
});
},
// 请求评论管理模块配置列表
getCommentList(params) {
return ajax({
url: "/comment/list",
type: "get",
params: params,
});
},
// 请求评论管理模块封禁用户
getCommentBan(params) {
return ajax({
url: "/comment/ban",
type: "post",
params: params,
});
},
// 请求评论管理模块通过审核
getCommentAccess(params) {
return ajax({
url: "/comment/access",
type: "post",
params: params,
});
},
// 评论批量通过
commentBatchPass(params) {
return ajax({
url: "/comment/batch/access",
type: "post",
params: params,
});
},
// 删除评论
delComment(params) {
return ajax({
url: "/comment/delete",
type: "post",
params: params,
});
},
// 根据评论内容删除评论
deleteContent(params) {
return ajax({
url: "/web/comment/delete",
type: "post",
params: params,
});
},
// 根据评论内容删除评论
// upLoadContent(params) {
// return ajax({
// url: '/comment/importExcel',
// type: 'post',
// params: params
// })
// },
//导入评论内容
iExcel(params) {
return ajax({
url: "/comment/importExcel",
type: "post",
params: params,
});
},
/********************************短视频最热*********************************** */
// 请求萝莉岛最热模块配置列表
getVideoHotList(params) {
return ajax({
url: "/vid/tone/list",
type: "get",
params: params,
});
},
// 编辑萝莉岛最热
editVideoHot(params) {
return ajax({
url: "/vid/tone/update",
type: "post",
params: params,
});
},
/********************************标签管理*********************************** */
// 添加标签
addTags(params) {
return ajax({
url: "/tag/add",
type: "post",
params: params,
});
},
// 请求标签列表
getTagList(params) {
return ajax({
url: "/tag/list",
type: "get",
params: params,
});
},
// 请求推荐标签列表
getRecmdList(params) {
return ajax({
url: "/recmd/list",
type: "get",
params: params,
});
},
// 请求新增推荐标签
addRecmdList(params) {
return ajax({
url: "/recmd/add",
type: "post",
params: params,
});
},
// 编辑推荐标签
editRecmdList(params) {
return ajax({
url: "/recmd/update",
type: "post",
params: params,
});
},
// 删除推荐标签
deleteRecmdList(params) {
return ajax({
url: "/recmd/delete",
type: "delete",
params: params,
});
},
// 删除tags
deleteTags(params) {
return ajax({
url: "/tag/delete",
type: "delete",
params: params,
});
},
// 编辑标签
editTags(params) {
return ajax({
url: "/tag/update",
type: "post",
params: params,
});
},
// 推送至精彩
pushWonder(params) {
return ajax({
url: "/vid/wonder/add",
type: "post",
params: params,
});
},
/********************************发现精彩*********************************** */
// 删除推荐精彩
deleteWonder(params) {
return ajax({
url: "/vid/wonder/delete",
type: "delete",
params: params,
});
},
// 获取精彩视频列表
getWonderList(params) {
return ajax({
url: "/vid/wonder/list",
type: "get",
params: params,
});
},
// 编辑发现精彩
editWonder(params) {
return ajax({
url: "/vid/wonder/update",
type: "post",
params: params,
});
},
/********************************视频热度计算方式*********************************** */
// 获取视频热度计算方式
queryVidPopularity(params) {
return ajax({
url: "/vid/popularity/config",
type: "get",
params,
});
},
// 修改视频热度计算方式
modifyVidPopularity(params) {
return ajax({
url: "/vid/popularity/config",
type: "post",
params,
});
},
/********************************资源管理*********************************** */
// 删除资源
deleteSource(params) {
return ajax({
url: "/source/del",
type: "delete",
params: params,
});
},
// 获取资源列表
getSourceList(params) {
return ajax({
url: "/source/list",
type: "get",
params: params,
});
},
// 添加资源
addSource(params) {
return ajax({
url: "/source/add",
type: "post",
params: params,
});
},
// 编辑资源
editSource(params) {
return ajax({
url: "/source/edit",
type: "post",
params: params,
});
},
/********************************过滤词管理*********************************** */
// 过滤词列表
filterList(params) {
return ajax({
url: "/filter/list",
type: "get",
params: params,
});
},
// 过滤词删除
filterDelete(params) {
return ajax({
url: "/filter/delete",
type: "delete",
params: params,
});
},
// 过滤词添加
filterAdd(params) {
return ajax({
url: "/filter/add",
type: "post",
params: params,
});
},
/***********************免费视频观看配置列表************************ */
// 过滤词列表
// 删除
deletefreeVid(params) {
return ajax({
url: "/freeVid/cfg/del",
type: "delete",
params: params,
});
},
// 获取请求列表
getfreeVidList(params) {
return ajax({
url: "/freeVid/cfg/list",
type: "get",
params: params,
});
},
// 添加
addfreeVid(params) {
return ajax({
url: "/freeVid/cfg/add",
type: "post",
params: params,
});
},
// 编辑
editfreeVid(params) {
return ajax({
url: "/freeVid/cfg/edit",
type: "post",
params: params,
});
},
/***********************活动配置************************ */
// 查询活动配置
queryActiveConfig(params) {
return ajax({
url: "/video_activity",
type: "get",
params: params,
});
},
// 新增活动配置
addActiveConfig(params) {
return ajax({
url: "/video_activity",
type: "post",
params: params,
});
},
// 编辑活动配置
eidtActiveConfig(params) {
return ajax({
url: "/video_activity",
type: "put",
params: params,
});
},
/********************************金币视频配置*********************************** */
// 请求金币视频配置
getVideoGoldCoin(params) {
return ajax({
url: "/video_gold_coin",
type: "get",
params: params,
});
},
// 添加金币视频配置
addVideoGoldCoin(params) {
return ajax({
url: "/video_gold_coin",
type: "post",
params: params,
});
},
// 修改金币视频配置
editVideoGoldCoin(params) {
return ajax({
url: "/video_gold_coin",
type: "put",
params: params,
});
},
// 删除金币视频配置
deleteVideoGoldCoin(params) {
return ajax({
url: "/video_gold_coin",
type: "delete",
params: params,
});
},
/***********************视频资源库************************ */
// 查询资源库列表
queryMediaResConfig(params) {
return ajax({
url: "/mediaResource/list",
type: "get",
params: params,
});
},
// 使用
useMediaRes(params) {
return ajax({
url: "/mediaResource/use",
type: "post",
params: params,
});
},
// 使用
ignoreMediaRes(params) {
return ajax({
url: "/mediaResource/ignore",
type: "post",
params: params,
});
},
/**************************自动上线视频配置**************************/
// 视频自动上线列表接口
getVidTimeOnlineList(params) {
return ajax({
url: "/vid/timeOnline/list",
type: "get",
params: params,
});
},
// 视频自动上线新增接口
editVidTimeOnline(params) {
return ajax({
url: "/vid/timeOnline/edit",
type: "post",
params: params,
});
},
// 视频自动上线删除接口
delVidTimeOnline(params) {
return ajax({
url: "/vid/timeOnline/del",
type: "post",
params: params,
});
},
// 视频自动上线批量新增接口
batchVidTimeOnline(params) {
return ajax({
url: "/vid/timeOnline/batchAudit",
type: "post",
params: params,
});
},
/********************************快捷搜索管理*********************************** */
// 获取快捷搜索列表
getQuickSearchList(params) {
return ajax({
url: "/quickSearch/list",
type: "get",
params: params,
});
},
// 新增快捷搜索
addQuickSearch(params) {
return ajax({
url: "/quickSearch/create",
type: "post",
params: params,
});
},
// 删除快捷搜索
deleteQuickSearch(params) {
return ajax({
url: "/quickSearch/delete",
type: "post",
params: params,
});
},
// 编辑快捷搜索
editQuickSearch(params) {
return ajax({
url: "/quickSearch/update",
type: "post",
params: params,
});
},
/***********************表情包管理************************ */
// 获取表情包列表
getEmojiList(params) {
return ajax({
url: "/emoji/list",
type: "get",
params,
});
},
// 新增表情包
addEmoji(params) {
return ajax({
url: "/emoji/create",
type: "post",
params,
});
},
// 修改表情包
updateEmoji(params) {
return ajax({
url: "/emoji/update",
type: "post",
params,
});
},
// 删除表情包
deleteEmoji(params) {
return ajax({
url: "/emoji/delete",
type: "post",
params,
});
},
};
export default videoApi;
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 1014 B

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 971 B

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 203 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 971 B

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 734 B

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

+291
View File
@@ -0,0 +1,291 @@
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html,
body {
height: 100%;
}
a {
text-decoration: none;
}
li {
list-style: none;
}
i {
font-style: normal;
}
/*公共样式*/
.el-pagination {
margin-top: 4px;
float: right;
}
.el-dialog__header {
text-align: center;
}
.el-menu-item-group {
.el-menu-item {
font-size: 14px;
padding-left: 60px !important;
text-align: left;
}
}
.el-table {
.el-button--mini {
padding: 7px 11px !important;
font-weight: normal !important;
}
}
// 表头数据可以复制
.el-table th {
user-select: unset;
}
/*操作栏样式*/
.action-bar {
width: 100%;
//height: 30px;
height: auto;
font-size: 14px;
color: #666;
margin-bottom: 15px !important;
.el-select {
width: 150px;
margin-right: 10px;
margin-bottom: 10px;
}
.el-button {
margin-left: 10px;
margin-bottom: 10px;
}
.block {
margin-top: 30px;
}
.param-input {
width: 180px;
margin-right: 10px;
margin-bottom: 10px;
}
}
.color-1 {
background-image: linear-gradient(
to right,
#25aae1,
#40e495,
#30dd8a,
#2bb673
);
box-shadow: 0 4px 15px 0 rgba(49, 196, 190, 0.75);
}
.color-2 {
background-image: linear-gradient(
to right,
#f5ce62,
#e43603,
#fa7199,
#e85a19
);
box-shadow: 0 4px 15px 0 rgba(229, 66, 10, 0.75);
}
.color-3 {
background-image: linear-gradient(
to right,
#667eea,
#764ba2,
#6b8dd6,
#8e37d7
);
box-shadow: 0 4px 15px 0 rgba(116, 79, 168, 0.75);
}
.color-4 {
background-image: linear-gradient(
to right,
#fc6076,
#ff9a44,
#ef9d43,
#e75516
);
box-shadow: 0 4px 15px 0 rgba(252, 104, 110, 0.75);
}
.color-5 {
background-image: linear-gradient(
to right,
#0ba360,
#3cba92,
#30dd8a,
#2bb673
);
box-shadow: 0 4px 15px 0 rgba(23, 168, 108, 0.75);
}
.color-6 {
background-image: linear-gradient(
to right,
#009245,
#fcee21,
#00a8c5,
#d9e021
);
box-shadow: 0 4px 15px 0 rgba(83, 176, 57, 0.75);
}
.color-7 {
background-image: linear-gradient(
to right,
#6253e1,
#852d91,
#a3a1ff,
#f24645
);
box-shadow: 0 4px 15px 0 rgba(126, 52, 161, 0.75);
}
.color-8 {
background-image: linear-gradient(
to right,
#29323c,
#485563,
#2b5876,
#4e4376
);
box-shadow: 0 4px 15px 0 rgba(45, 54, 65, 0.75);
}
.color-9 {
background-image: linear-gradient(
to right,
#25aae1,
#4481eb,
#04befe,
#3f86ed
);
box-shadow: 0 4px 15px 0 rgba(65, 132, 234, 0.75);
}
.color-10 {
background-image: linear-gradient(
to right,
#ed6ea0,
#ec8c69,
#f7186a,
#fbb03b
);
box-shadow: 0 4px 15px 0 rgba(236, 116, 149, 0.75);
}
.color-11 {
background-image: linear-gradient(
to right,
#eb3941,
#04befe,
#e14e53,
#3f86ed
);
box-shadow: 0 5px 15px rgba(242, 97, 103, 0.4);
}
.color-12 {
background-image: linear-gradient(
to right,
#ed6ea0,
#ec8c69,
#ec8c69,
#ed6ea0
);
box-shadow: 0 5px 15px rgba(242, 97, 103, 0.4);
}
.color-13 {
background-image: linear-gradient(
to right,
#25aae1,
#40e495,
#30dd8a,
#2bb673
);
box-shadow: 0 4px 15px 0 rgba(49, 196, 190, 0.75);
}
.color-14 {
background-image: linear-gradient(
to right,
#f5ce62,
#e43603,
#fa7199,
#e85a19
);
box-shadow: 0 4px 15px 0 rgba(229, 66, 10, 0.75);
}
.color-15 {
background-image: linear-gradient(
to right,
#667eea,
#764ba2,
#6b8dd6,
#8e37d7
);
box-shadow: 0 4px 15px 0 rgba(116, 79, 168, 0.75);
}
.color-16 {
background-image: linear-gradient(
to right,
#fc6076,
#ff9a44,
#ef9d43,
#e75516
);
box-shadow: 0 4px 15px 0 rgba(252, 104, 110, 0.75);
}
.color-17 {
background-image: linear-gradient(
to right,
#0ba360,
#3cba92,
#30dd8a,
#2bb673
);
box-shadow: 0 4px 15px 0 rgba(23, 168, 108, 0.75);
}
.color-18 {
background-image: linear-gradient(
to right,
#009245,
#fcee21,
#00a8c5,
#d9e021
);
box-shadow: 0 4px 15px 0 rgba(83, 176, 57, 0.75);
}
.color-19 {
background-image: linear-gradient(
to right,
#6253e1,
#852d91,
#a3a1ff,
#f24645
);
box-shadow: 0 4px 15px 0 rgba(126, 52, 161, 0.75);
}
.color-20 {
background-image: linear-gradient(
to right,
#29323c,
#485563,
#2b5876,
#4e4376
);
box-shadow: 0 4px 15px 0 rgba(45, 54, 65, 0.75);
}
.color-9 {
background-image: linear-gradient(
to right,
#25aae1,
#4481eb,
#04befe,
#3f86ed
);
box-shadow: 0 4px 15px 0 rgba(65, 132, 234, 0.75);
}
.color-10 {
background-image: linear-gradient(
to right,
#ed6ea0,
#ec8c69,
#f7186a,
#fbb03b
);
box-shadow: 0 4px 15px 0 rgba(236, 116, 149, 0.75);
}
+7
View File
@@ -0,0 +1,7 @@
/* 改变主题色变量 */
$--color-primary: #e63765;
/* 改变 icon 字体路径变量,必需 */
$--font-path: '~element-ui/lib/theme-chalk/fonts';
@import '~element-ui/packages/theme-chalk/src/index';

Some files were not shown because too many files have changed in this diff Show More