#安装依赖
npm i
#添加数据库
mysql
CREATE DATABASE amwares_web_development CHARACTER SET='utf8';
#运行程序
npm start
#填充数据
npm run development-seeds
#pm2启动
pm2 start --name amwares-web-api-production npm -- run production --
- 200 - 请求成功状态码
- 400 - 异常请求状态码
- 404 - 找不到请求状态码
{
"status": 200,
"data": [
{
"id": 1,
"username": "admin",
"avatarUrl": "/images/avatar/avatar.png"
}
]
}
添加用户自动添加默认头像地址/images/avatar/avatar.png
参数名 |
必填 |
类型 |
说明 |
username |
y |
string |
用户名必须唯一 |
password |
y |
string |
密码 |
{
"status": 200,
"data": "添加用户成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
用户id |
password |
y |
string |
密码 |
{
"status": 200,
"data": "用户修改密码成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
用户id |
avatarUrl |
y |
file |
头像图片 |
{
"status": 200,
"data": "修改头像成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
用户id 不能删除已登录用户 |
{
"status": 200,
"data": "删除用户成功"
}
参数名 |
必填 |
类型 |
说明 |
username |
y |
string |
用户名 |
password |
y |
string |
密码 |
{
"status": 200,
"data": "登录成功"
}
{
"status": 200,
"data": "登出成功"
}
{
"status": 200,
"data": [
{
"id": 1,
"logoUrl": "/images/baseInfo/pic01.jpg",
"name": "广州辂轺信息科技有限公司",
"description": "广州辂轺信息科技2013年成立于广州,是一家专注于汽车ECU(电子控制单元)产品开发的科技企业。 依托于自行开发的AUTOSAR汽车软件架构和OSEK实时操作系统,凭借自身多年的技术积累,为广大客户提供各种ECU解决方案和产品。",
"copyright": "© 2014-2017 广州辂轺信息科技有限公司 版权所有",
"createdAt": "2017-11-09T04:17:39.000Z",
"updatedAt": "2017-11-09T04:17:39.000Z"
}
]
}
参数名 |
必填 |
类型 |
说明 |
name |
n |
string |
公司名 |
description |
n |
string |
描述 |
copyright |
n |
string |
注册商标 |
logoUrl |
n |
file |
头像文件 |
{
"status": 200,
"data": "修改网站基本信息成功"
}
{
"status": 200,
"data": [
{
"id": 1,
"title": "轮播图",
"description": "我是轮播图",
"link": "https://www.google.com",
"slideshowUrl": "/images/slideShow/32864.jpg",
"sort": 1,
"createdAt": "2017-11-09T06:45:30.000Z",
"updatedAt": "2017-11-09T06:45:30.000Z"
}
]
}
参数名 |
说明 |
slideshowUrl |
轮播图地址 |
sort |
排序标识 |
参数名 |
必填 |
类型 |
说明 |
title |
n |
string |
标题 |
description |
n |
string |
描述 |
link |
n |
string |
链接 |
slideshowUrl |
n |
file |
轮播图文件 |
{
"status": 200,
"data": "添加轮播图成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
轮播图id |
title |
n |
string |
标题 |
description |
n |
string |
描述 |
link |
n |
string |
链接 |
slideshowUrl |
n |
file |
轮播图文件 |
{
"status": 200,
"data": "修改轮播图成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
轮播图id |
{
"status": 200,
"data": "删除轮播图成功"
}
参数名 |
必填 |
类型 |
说明 |
change |
y |
array |
轮播图改变顺序后id数组 |
{
"status": 200,
"data": "顺序交换成功"
}
{
"status": 200,
"data": [
{
"id": 1,
"name": "zhangsan",
"province": "广东",
"city": "广州",
"createdAt": "2017-11-09T06:59:06.000Z",
"updatedAt": "2017-11-09T06:59:06.000Z"
}
]
}
参数名 |
必填 |
类型 |
说明 |
name |
y |
string |
合作伙伴名称 |
province |
y |
string |
省份 |
city |
y |
string |
城市 |
{
"status": 200,
"data": "添加合作伙伴成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
合作伙伴id |
name |
n |
string |
合作伙伴名称 |
province |
n |
string |
省份 |
city |
n |
string |
城市 |
{
"status": 200,
"data": "修改合作伙伴成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
合作伙伴id |
{
"status": 200,
"data": "删除合作伙伴成功"
}
{
"status": 200,
"data": [
{
"id": 1,
"address": "广州市天河区天河东路242号601室",
"tel": "+86 020 87519370",
"fax": "+86 020 85262282",
"email": "info@amwares.com",
"createdAt": "2017-11-09T06:33:10.000Z",
"updatedAt": "2017-11-09T06:33:10.000Z"
}
]
}
参数名 |
必填 |
类型 |
说明 |
address |
n |
string |
地址 |
tel |
n |
string |
电话 |
fax |
n |
string |
传真 |
email |
n |
string |
邮箱地址 |
{
"status": 200,
"data": "修改联系方式成功"
}
{
"status": 200,
"data": [
{
"id": 1,
"description": "description",
"icon": "icon",
"createdAt": "2017-11-09T07:09:21.000Z",
"updatedAt": "2017-11-09T07:09:21.000Z"
}
]
}
参数名 |
必填 |
类型 |
说明 |
description |
n |
string |
描述 |
icon |
n |
string |
标签 |
{
"status": 200,
"data": "添加我们的优势成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
我们的优势id |
description |
n |
string |
描述 |
icon |
n |
string |
标签 |
{
"status": 200,
"data": "修改我们的优势成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
我们的优势id |
{
"status": 200,
"data": "删除我们的优势成功"
}
{
"status": 200,
"data": [
{
"id": 1,
"name": "google",
"url": "https://www.google.com",
"createdAt": "2017-11-09T07:18:23.000Z",
"updatedAt": "2017-11-09T07:18:23.000Z"
}
]
}
参数名 |
必填 |
类型 |
说明 |
name |
y |
string |
友情链接名称 |
url |
y |
string |
友情链接 |
{
"status": 200,
"data": "添加友情链接成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
友情链接id |
name |
n |
string |
友情链接名称 |
url |
n |
string |
友情链接 |
{
"status": 200,
"data": "修改友情链接成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
友情链接id |
{
"status": 200,
"data": "删除友情链接成功"
}
参数名 |
必填 |
类型 |
说明 |
currentPage |
n |
int |
当前页码,不填则显示全部数据 |
name |
n |
string |
产品分类名称 |
{
"status": 200,
"data": {
"count": 1,
"rows": [
{
"id": 1,
"name": "name",
"classifyUrl": "/images/classify/111280.jpg",
"description": "description",
"createdAt": "2017-11-09T07:27:19.000Z",
"updatedAt": "2017-11-09T07:29:17.000Z"
}
]
}
}
参数名 |
说明 |
classifyUrl |
产品分类图片地址 |
参数名 |
必填 |
类型 |
说明 |
name |
y |
string |
产品分类名称 |
{
"status": 200,
"data": {
"id": 1,
"name": "classify",
"classifyUrl": null,
"description": "i am classify",
"createdAt": "2017-11-20T04:06:45.000Z",
"updatedAt": "2017-11-20T04:06:45.000Z"
}
}
参数名 |
说明 |
classifyUrl |
产品分类图片地址 |
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
产品分类id |
{
"status": 200,
"data": {
"id": 1,
"name": "classify",
"classifyUrl": null,
"description": "i am classify",
"createdAt": "2017-11-20T04:06:45.000Z",
"updatedAt": "2017-11-20T04:06:45.000Z"
}
}
参数名 |
说明 |
classifyUrl |
产品分类图片地址 |
参数名 |
必填 |
类型 |
说明 |
name |
y |
string |
产品分类名称 |
description |
n |
string |
描述 |
classifyUrl |
n |
file |
产品分类图文件 |
{
"status": 200,
"data": "添加产品分类成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
产品分类id |
name |
y |
string |
产品分类名称 |
description |
n |
string |
描述 |
classifyUrl |
n |
file |
产品分类图文件 |
{
"status": 200,
"data": "修改产品分类成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
产品分类id |
{
"status": 200,
"data": "删除产品分类成功"
}
参数名 |
必填 |
类型 |
说明 |
ClassifyId |
y |
int |
所属分类id |
currentPage |
y |
int |
当前页码,不填则显示全部数据 |
name |
n |
string |
产品名称 |
{
"status": 200,
"data": {
"count": 1,
"rows": [
{
"id": 1,
"name": "name",
"productUrl": "/images/product/114932.jpg",
"createdAt": "2017-11-09T07:34:38.000Z",
"updatedAt": "2017-11-09T07:36:28.000Z",
"ClassifyId": 2
}
]
}
}
参数名 |
说明 |
productUrl |
产品图片地址 |
ClassifyId |
所属类型id |
参数名 |
必填 |
类型 |
说明 |
name |
y |
string |
产品名称 |
{
"status": 200,
"data": {
"id": 1,
"name": "product",
"productUrl": null,
"createdAt": "2017-11-20T04:20:16.000Z",
"updatedAt": "2017-11-20T04:20:16.000Z",
"ClassifyId": 1
}
}
参数名 |
说明 |
productUrl |
产品图片地址 |
ClassifyId |
所属类型id |
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
产品id |
{
"status": 200,
"data": {
"id": 1,
"name": "product",
"productUrl": null,
"createdAt": "2017-11-20T04:20:16.000Z",
"updatedAt": "2017-11-20T04:20:16.000Z",
"ClassifyId": 1
}
}
参数名 |
说明 |
productUrl |
产品图片地址 |
ClassifyId |
所属类型id |
参数名 |
必填 |
类型 |
说明 |
ClassifyId |
y |
int |
所属分类id |
name |
y |
string |
产品名称 |
productUrl |
n |
file |
产品图文件 |
{
"status": 200,
"data": "添加产品成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
产品id |
name |
y |
string |
产品名称 |
productUrl |
n |
file |
产品图文件 |
{
"status": 200,
"data": "修改产品成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
产品id |
{
"status": 200,
"data": "删除产品成功"
}
参数名 |
必填 |
类型 |
说明 |
ProductId |
y |
int |
所属产品id |
{
"status": 200,
"data": {
"count": 1,
"rows": [
{
"id": 1,
"title": "title",
"contentUrl": "/images/content/114932.jpg",
"description": "description",
"sort": 1,
"createdAt": "2017-11-09T07:41:10.000Z",
"updatedAt": "2017-11-09T07:41:10.000Z",
"ProductId": 2
}
]
}
}
参数名 |
说明 |
contentUrl |
内容块图片地址 |
sort |
排序标识 |
ProductId |
所属产品id |
参数名 |
必填 |
类型 |
说明 |
ProductId |
y |
int |
所属产品id |
title |
y |
string |
内容块标题 |
description |
n |
string |
描述 |
contentUrl |
n |
file |
内容块图文件 |
{
"status": 200,
"data": "添加内容块成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
内容块id |
title |
y |
string |
内容块标题 |
description |
n |
string |
描述 |
contentUrl |
n |
file |
内容块图文件 |
{
"status": 200,
"data": "修改内容块成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
内容块id |
{
"status": 200,
"data": "删除内容块成功"
}
参数名 |
必填 |
类型 |
说明 |
change |
y |
array |
内容块改变顺序后id数组 |
{
"status": 200,
"data": "顺序交换成功"
}
{
"status": 200,
"data": {
"count": 1,
"rows": [
{
"id": 1,
"description": "hello",
"imageUrl": "/images/introduction/111280.jpg",
"createdAt": "2017-11-09T08:07:17.000Z",
"updatedAt": "2017-11-09T08:08:49.000Z"
}
]
}
}
参数名 |
必填 |
类型 |
说明 |
description |
n |
string |
描述 |
imageUrl |
n |
file |
公司简闻图片文件 |
{
"status": 200,
"data": "添加公司简闻成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
公司简闻id |
description |
n |
string |
描述 |
imageUrl |
n |
file |
公司简闻图片文件 |
{
"status": 200,
"data": "修改公司简闻成功"
}
参数名 |
必填 |
类型 |
说明 |
id |
y |
int |
公司简闻id |
{
"status": 200,
"data": "删除公司简闻成功"
}
参数名 |
必填 |
类型 |
说明 |
currentPage |
y |
int |
当前页码 |
ip |
n |
string |
ip |
city |
n |
string |
城市 |
cap |
n |
string |
结束时间格式为 20171109 && 与floor成对出现 |
floor |
n |
string |
开始时间不得超过结束时间 && 与cap成对出现 |
{
"cap":"20171121",
"floor":"20171119"
}
{
"status": 200,
"data": {
"count": 2,
"rows": [
{
"id": 8,
"ip": "678",
"province": "hunan",
"city": "changsha",
"device": "iphone",
"type": 1,
"createdAt": "2017-11-22T03:35:30.000Z",
"updatedAt": "2017-11-22T03:35:30.000Z",
"updated": "2017-11-22T03:35:30.000Z",
"ipCount": 1
},
{
"id": 2,
"ip": "345",
"province": "guangdong",
"city": "guangzhou",
"device": "iphone",
"type": 2,
"createdAt": "2017-11-21T03:47:54.000Z",
"updatedAt": "2017-11-21T03:47:54.000Z",
"updated": "2017-11-21T06:29:59.000Z",
"ipCount": 6
}
]
}
}
参数名 |
说明 |
type |
1代表pc,2代表手机,3代表平板 |
updated |
ip访问最新时间 |
ipCount |
ip访问总次数 |
参数名 |
必填 |
类型 |
说明 |
ip |
y |
string |
访客ip |
province |
y |
string |
省份 |
city |
y |
string |
城市 |
device |
y |
string |
设备名称 |
type |
y |
int |
1代表pc,2代表手机,3代表平板 |
{
"status": 200,
"data": "删除公司简闻成功"
}
参数名 |
必填 |
类型 |
说明 |
cap |
n |
string |
结束时间格式为 20171109 |
floor |
n |
string |
开始时间不得超过结束时间 |
{
"cap":"20171121",
"floor":"20171119"
}
{
"status": 200,
"data": [
0,
0,
7
]
}
{
"status": 200,
"data": {
"pc": 0,
"phone": 1,
"ipad": 0
}
}
{
"status": 200,
"data": [
{
"name": "广州",
"value": 1
}
]
}
参数名 |
必填 |
类型 |
说明 |
ip |
y |
string |
访客ip |
{
"status": 200,
"data": 1
}
参数名 |
必填 |
类型 |
说明 |
type |
n |
string |
"1"代表产品分类,"2"代表产品,"3"代表简闻,不传则全部搜索 |
content |
y |
string |
搜索匹配内容 |
{
"status": 200,
"data": [
{
"id": 1,
"name": "i am classify",
"classifyUrl": null,
"description": "just a classify test",
"createdAt": "2017-12-01T03:57:21.000Z",
"updatedAt": "2017-12-01T03:57:21.000Z",
"model": "classify"
},
{
"id": 1,
"name": "product",
"productUrl": null,
"createdAt": "2017-11-20T04:20:16.000Z",
"updatedAt": "2017-11-20T04:20:16.000Z",
"ClassifyId": 1,
"Contents": [
{
"id": 8,
"title": "i am content",
"contentUrl": null,
"description": "just like a test",
"sort": 4,
"createdAt": "2017-12-01T03:56:27.000Z",
"updatedAt": "2017-12-01T03:56:27.000Z",
"ProductId": 1
}
],
"model": "product"
}
]
}
参数名 |
说明 |
model |
classify代表产品分类,product代表产品,introduction代表简闻 |