目录
管理后台
普通管理:
密码:Test123456789
超级管理:
密码:Admin123456789
总体设置
1.主题色:rgb(64,158,255)
2.导航栏悬停颜色: rgb(236,245,255)
3.底部背景色: rgb(241,242,249)
4.总体可以使用elementUI来构筑框架
5.左侧导航栏中的所有跳转都是一级路由,在此基础上所有的页面内跳转均为二级跳转
6.此处可以随着功能的切换而切换,但原网页需要刷新才会更改(可以优化)
常用接口:
当前用户信息:
功能未知:
主页
接口
1. 当前用户信息:
http://1.14.239.98/backend/api/v1/user
返回信息:(用户信息,权限,邮箱)
- 系统数据:
http://1.14.239.98/backend/api/v1/dashboard
返回信息:
- 表格数据:
每日注册用户数:
http://1.14.239.98/backend/api/v1/statistic/userRegister?start_at=2022-7-25&end_at=2022-8-1
每日创建订单数:
http://1.14.239.98/backend/api/v1/statistic/orderCreated?start_at=2022-7-25&end_at=2022-8-1
每日已支付订单数:
http://1.14.239.98/backend/api/v1/statistic/orderPaidCount?start_at=2022-7-25&end_at=2022-8-1
每日营收:
http://1.14.239.98/backend/api/v1/statistic/orderPaidSum?start_at=2022-7-25&end_at=2022-8-1
总结以上,可以发现,每次请求不同的便是请求类型与起止时间
点击筛选时再次发送当前选择的请求
折线图可以使用ECharts实现
课程面板
功能描述
1.课程筛选
点击更多时,弹出筛选框,点击后变为已选;
有三个筛选选项:关键字,课程分类(选项卡),课程id,选取交集;
点击清除可以将筛选条件清空,实际就是将筛选条件还原到默认,主页面与更多筛选中的清空都可以生效;
- 课程列表
http://1.14.239.98/backend/api/v1/course?page=1&size=10&sort=id&order=desc
page的数值x,表示是分页的第x页,在跳转下一页数据的时候用的上
size的数组y,表示当前页一次显示y条数据,在选择页面显示数据条数的时候使用
- 课程类型
- 筛选
http://1.14.239.98/backend/api/v1/course?keywords=前端&page=1&size=10&sort=id&order=desc
这个筛选的实质是个模糊查询,keywords是关键字
2.新建课程
这玩意在课程价格上可以设置为负数,但是在非勾选免费时设置为0会弹出提示(可以优化 -8.2)
现在仍然可以输入负数但是在课程总览中只会展示价格为0 -8.3
图片相关
选择封面(get):
http://1.14.239.98/backend/api/v1/media/images?page=1&size=15&from=0
返回:图片与图片来源
参数解析:page=分页页数 size=单页数量 from=侧边栏(由上到下分别为0~4)
上传封面(post):
推测与上个项目上传头像的方式一致
课程相关
提交创建请求(post):
参数分析:
- category_id: 课程分类 2
- charge: 价格 "199"
- description: null
- is_free: 是否免费(0:否,1:是)
- is_show: 是否展示(0:否,1:是)
- original_desc: 详情介绍 "
夏亚!!!
"- published_at: 开课时间 "2022-08-0315:45”
- render_desc: 详情介绍 “
夏亚!!!
"- short_description: 简介 “真男人就应该开扎古!! !”
- thumb: 图片地址 "http://1.14.239.98/storage/images/qn75eFCSK5pep4Zu1bAhRePXQunAzqRvXgxnzA6w .jpg"
- title: 标题 "高达驾驶实战”
- user_count: null
课程编辑(get)
参数分析:课程id对应的对象,似乎是整个对象可以从课程列表的接口下获得
删除课程(DELETE):
参数分析:可以看见这里是一个接口,创建时应该是系统给与id,删除时id就是必选参数
运营模块
公众号
公众号配置需要管理员权限,可以做个权限判断
新建公众号
进入时.会请求可以创建的消息类型,通过选择的消息类型来渲染页面
接口: /mpWechatMessageReply/create (get)
返回: res 所需使用的数据在res.data.types下
初始页面:
- 都有非空验证
文本消息:
事件:
提交创建
接口: /mpWechatMessageReply (post)
参数:
- type:消息类型,有text和event两种
- rule: 文本消息类型中的 触发关键字
- event_type: 事件消息类型中的 事件类型,有(用户关注:subscribe)和(自定义菜单事件:CLICK)两种
- event_key:事件类型中的事件key
- reply_content: 回复内容
提交后跳转回公众号页面
删除操作
接口: `/mpWechatMessageReply/id (DELETE)
参数: id ,自动回复事件的id
在点击删除后应该先出现一个确认面板,点击确认后再删除,同时是有遮罩层的
删除之后有提示
编辑操作
接口: /mpWechatMessageReply/id (get)
参数: id ,自动回复事件的id, 用于获取原本填写的数据
接口: /mpWechatMessageReply/id (PUT)
参数: id ,自动回复事件的id, 用于更新数据
同时调用了 /mpWechatMessageReply/create
去拿两个事件类型 事实上和创建的页面是一样的,但是在对应位置进行了数据的填充
微信公众号菜单
接口 :
/mpWechat/menu
每次点击删除时,会将没有填写数据的子选项删除,已填写的不受影响
在填写之后,若填写的是最后的一个父菜单,前面的父菜单为空的情况下会出现错误提示,根据缺失的部分,提示有所不同
玩多了还会炸
出现这种提示就算成功
Request access_token fail: {\"errcode\":40013,\"errmsg\":\"invalid appid rid: 62f99e9a-5a5df3ff-4aef3c18\"}
系统
管理人员
接口:
/administrator?page=1&size=10&sort=id&order=desc
(get)参数 : page:页数 , size单页数据量
返回: res ,需要的数据在res.data.data下
添加管理人
接口1: /
administrator/create
(get)返回 res 所需数据在 res.data.roles中
接口2:
/administrator
(post)参数:
- email: "[email protected]" 登录邮箱,不可重复,重复时返回状态码1
- is_ban_login: 0 是否禁止登录
- name: "fzb" 姓名
- password: "Test123456789" 密码 (默认为Test123456789)
- password_confirmation: "Test123456789" 密码确认 (默认为Test123456789)
- role_id: [1] 身份id ,1表示超管, 2表示一般管理员 数据是来着接口1的,可变动的
删除管理员
接口:
/administrator/id
(delete)参数: id ,自动回复事件的id, 用于获取原本填写的数据
虽然要填密码,但是没有密码校验
管理员角色
接口1:
administrator_role?page=1&size=10&sort=id&order=desc
(get)返回 res 所需数据在 res.data.data中
返回参数:
- id
- display_name :角色名称
- slug : Slug
- description :描述
- created_at : 创建时间
创建角色
接口1 :
/administrator_role/create
(get)返回 res 所需数据在 res.data.permissions下
返回参数 返回一个数组,其中有多个对象,对应不同的权限
标签:1.14,http,管理系统,239.98,api,后台,id,backend From: https://www.cnblogs.com/szfzb/p/16587098.html接口2:
/administrator_role
(post)参数:
- description:描述
- display_name:角色名
- permission_ids :一个数组对象,里面放在所选择的权限的id
- slug :slug