其他分享
首页 > 其他分享> > 后台管理系统

后台管理系统

作者:互联网

目录

管理后台


http://admin.xiaomage.tech/

普通管理:

账号:test@qq.com

密码:Test123456789

超级管理:

账号:admin@qq.com

密码:Admin123456789

总体设置

1.主题色:rgb(64,158,255)

2.导航栏悬停颜色: rgb(236,245,255)

3.底部背景色: rgb(241,242,249)

4.总体可以使用elementUI来构筑框架

5.左侧导航栏中的所有跳转都是一级路由,在此基础上所有的页面内跳转均为二级跳转

6.此处可以随着功能的切换而切换,但原网页需要刷新才会更改(可以优化)image-20220802100557680

常用接口:

当前用户信息:

http://1.14.239.98/backend/api/v1/user

功能未知:

http://1.14.239.98/backend/api/v1/addons

主页


接口


1. 当前用户信息:

http://1.14.239.98/backend/api/v1/user

返回信息:(用户信息,权限,邮箱)image-20220801200831779

  1. 系统数据:

http://1.14.239.98/backend/api/v1/dashboard

返回信息:

image-20220801201141483

  1. 表格数据:

每日注册用户数:

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,选取交集;

点击清除可以将筛选条件清空,实际就是将筛选条件还原到默认,主页面与更多筛选中的清空都可以生效;

image-20220802093540857

image-20220802093506464

image-20220802093611649

  1. 课程列表

http://1.14.239.98/backend/api/v1/course?page=1&size=10&sort=id&order=desc

page的数值x,表示是分页的第x页,在跳转下一页数据的时候用的上

size的数组y,表示当前页一次显示y条数据,在选择页面显示数据条数的时候使用


  1. 课程类型

http://1.14.239.98/backend/api/v1/course/create


  1. 筛选

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

image-20220802104436917

image-20220802104706975

image-20220802104800659

图片相关


选择封面(get):

http://1.14.239.98/backend/api/v1/media/images?page=1&size=15&from=0

image-20220803152408807

返回:图片与图片来源

参数解析:page=分页页数 size=单页数量 from=侧边栏(由上到下分别为0~4)

image-20220803153723056

上传封面(post):

http://1.14.239.98/backend/api/v1/media/image

image-20220803153344820

推测与上个项目上传头像的方式一致

课程相关


提交创建请求(post):

http://1.14.239.98/backend/api/v1/course

image-20220803153101032

参数分析:

  • 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
image-20220803154605709

image-20220803154629084

课程编辑(get)

http://1.14.239.98/backend/api/v1/course/29

参数分析:课程id对应的对象,似乎是整个对象可以从课程列表的接口下获得

image-20220803162240609

删除课程(DELETE):

http://1.14.239.98/backend/api/v1/course/27

image-20220803153031598

参数分析:可以看见这里是一个接口,创建时应该是系统给与id,删除时id就是必选参数

运营模块


公众号


公众号配置需要管理员权限,可以做个权限判断

新建公众号


进入时.会请求可以创建的消息类型,通过选择的消息类型来渲染页面

接口: /mpWechatMessageReply/create (get)

返回: res 所需使用的数据在res.data.types下

初始页面:

image-20220811103419664

  1. 都有非空验证

文本消息:

image-20220811103541089

事件:

image-20220811103556847

提交创建


接口: /mpWechatMessageReply (post)

参数:

  • type:消息类型,有text和event两种
  • rule: 文本消息类型中的 触发关键字
  • event_type: 事件消息类型中的 事件类型,有(用户关注:subscribe)和(自定义菜单事件:CLICK)两种
  • event_key:事件类型中的事件key
  • reply_content: 回复内容

提交后跳转回公众号页面

删除操作


接口: `/mpWechatMessageReply/id (DELETE)

参数: id ,自动回复事件的id

在点击删除后应该先出现一个确认面板,点击确认后再删除,同时是有遮罩层的

image-20220811104908330

删除之后有提示

image-20220811104955008

编辑操作


接口: /mpWechatMessageReply/id (get)

参数: id ,自动回复事件的id, 用于获取原本填写的数据

接口: /mpWechatMessageReply/id (PUT)

参数: id ,自动回复事件的id, 用于更新数据

同时调用了 /mpWechatMessageReply/create 去拿两个事件类型 事实上和创建的页面是一样的,但是在对应位置进行了数据的填充

微信公众号菜单


image-20220812143520130

image-20220812143527845

接口 : /mpWechat/menu

每次点击删除时,会将没有填写数据的子选项删除,已填写的不受影响

image-20220815091019356

image-20220815091033985

image-20220815091144271

image-20220815091159525

在填写之后,若填写的是最后的一个父菜单,前面的父菜单为空的情况下会出现错误提示,根据缺失的部分,提示有所不同

image-20220815091351104

image-20220815091457706

玩多了还会炸

image-20220815091616566

出现这种提示就算成功

Request access_token fail: {\"errcode\":40013,\"errmsg\":\"invalid appid rid: 62f99e9a-5a5df3ff-4aef3c18\"}

image-20220815091724110

系统


管理人员


接口: /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)

参数:

  1. email: "test321@qq.com" 登录邮箱,不可重复,重复时返回状态码1
  2. is_ban_login: 0 是否禁止登录
  3. name: "fzb" 姓名
  4. password: "Test123456789" 密码 (默认为Test123456789)
  5. password_confirmation: "Test123456789" 密码确认 (默认为Test123456789)
  6. 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下

返回参数 返回一个数组,其中有多个对象,对应不同的权限

接口2: /administrator_role (post)

参数:

  • description:描述
  • display_name:角色名
  • permission_ids :一个数组对象,里面放在所选择的权限的id
  • slug :slug

标签:1.14,http,管理系统,239.98,api,后台,id,backend
来源: https://www.cnblogs.com/szfzb/p/16587098.html