|
@@ -2,14 +2,22 @@ import mockjs from 'mockjs';
|
|
|
import { format, delay } from 'roadhog-api-doc';
|
|
|
import { campusList } from './mock/campus';
|
|
|
import { terminalList } from './mock/terminal';
|
|
|
+import { merchantList } from './mock/merchant';
|
|
|
+import { resourceList } from './mock/resource';
|
|
|
+import { signature } from './mock/signature';
|
|
|
import * as api from './src/utils/api';
|
|
|
|
|
|
// mock数据持久化
|
|
|
global.campusList = campusList;
|
|
|
global.terminalList = terminalList;
|
|
|
+global.merchantList = merchantList;
|
|
|
+global.resourceList = resourceList;
|
|
|
+global.signature = signature;
|
|
|
|
|
|
// 操作成功响应内容
|
|
|
-const successMsg = { code: 200, success: true, message: null };
|
|
|
+const SUCCESS = { code: 200, success: true, message: null };
|
|
|
+// 资源未找到响应内容
|
|
|
+const NOTFOUND = { code: 404, message: 'Not Found!' };
|
|
|
|
|
|
// 查询
|
|
|
const query = (dataset, params) => {
|
|
@@ -31,7 +39,7 @@ const query = (dataset, params) => {
|
|
|
const totalSize = newDataset.length || 0;
|
|
|
const list = newDataset.slice(pageSize * (pageNo - 1), pageSize * pageNo);
|
|
|
return {
|
|
|
- ...successMsg,
|
|
|
+ ...SUCCESS,
|
|
|
data: { pageSize, pageNo, totalSize: newDataset.length, list }
|
|
|
};
|
|
|
}
|
|
@@ -42,7 +50,7 @@ const create = (dataset, params) => {
|
|
|
const data = { ...params, id: last.id + 1 };
|
|
|
dataset.push(data);
|
|
|
return {
|
|
|
- ...successMsg,
|
|
|
+ ...SUCCESS,
|
|
|
data,
|
|
|
};
|
|
|
}
|
|
@@ -55,18 +63,10 @@ const update = (dataset, params) => {
|
|
|
}
|
|
|
}
|
|
|
return {
|
|
|
- ...successMsg,
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
-// 删除
|
|
|
-const remove = (dataset, params) => {
|
|
|
- return {
|
|
|
- ...successMsg,
|
|
|
+ ...SUCCESS,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-const NOTFOUND = { code: 404, message: 'Not Found!' };
|
|
|
const queryArray = (array, key, keyAlias = 'key') => {
|
|
|
if (!(array instanceof Array)) {
|
|
|
return null
|
|
@@ -86,41 +86,83 @@ const queryArray = (array, key, keyAlias = 'key') => {
|
|
|
return null
|
|
|
}
|
|
|
|
|
|
+// 查询一条
|
|
|
+const queryOne = (dataset, id, res) => {
|
|
|
+ const target = queryArray(dataset, id, 'id');
|
|
|
+ if (target) {
|
|
|
+ res.send({ ...SUCCESS, data: { ...target } });
|
|
|
+ } else {
|
|
|
+ res.send({ ...NOTFOUND, data: {} });
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+// 删除
|
|
|
+const remove = (dataset, id, res) => {
|
|
|
+ const data = queryArray(dataset, id, 'id');
|
|
|
+ if (data) {
|
|
|
+ dataset.map(item => { item.id === data.id ? item.status = 'DEL' : null });
|
|
|
+ res.send(SUCCESS);
|
|
|
+ } else {
|
|
|
+ res.send(NOTFOUND);
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
// mock数据
|
|
|
const proxy = {
|
|
|
+ [`POST ${api.resource.replace('/:id', '')}`]: (req, res) => {
|
|
|
+ res.send(create(global.resource, req.body));
|
|
|
+ },
|
|
|
+ [`DELETE ${api.resource}`]: (req, res) => {
|
|
|
+ const { id } = req.params;
|
|
|
+ remove(global.resourceList, id, res);
|
|
|
+ },
|
|
|
+ [`PUT ${api.resource.replace('/:id', '')}`]: (req, res) => {
|
|
|
+ res.send(update(global.resourceList, req.body));
|
|
|
+ },
|
|
|
+ [`GET ${api.resources}`]: (req, res) => {
|
|
|
+ res.send(query(global.resourceList, req.query));
|
|
|
+ },
|
|
|
+ [`GET ${api.signature}`]: (req, res) => {
|
|
|
+ res.send({ ...SUCCESS, data: global.signature });
|
|
|
+ },
|
|
|
[`GET ${api.campuses}`]: (req, res) => {
|
|
|
- console.log('[CampusList]', req.query);
|
|
|
res.send(query(global.campusList, req.query));
|
|
|
},
|
|
|
[`POST ${api.campus.replace('/:id', '')}`]: (req, res) => {
|
|
|
- console.log('[CampusCreate]', req.body);
|
|
|
res.send(create(global.campusList, req.body));
|
|
|
},
|
|
|
[`PUT ${api.campus.replace('/:id', '')}`]: (req, res) => {
|
|
|
- console.log('[CampusUpdate]', req.body);
|
|
|
res.send(update(global.campusList, req.body));
|
|
|
},
|
|
|
[`GET ${api.terminals}`]: (req, res) => {
|
|
|
- console.log('[TerminalList]', req.query);
|
|
|
res.send(query(global.terminalList, req.query));
|
|
|
},
|
|
|
[`POST ${api.terminal.replace('/:id', '')}`]: (req, res) => {
|
|
|
- console.log('[TerminalCreate]', req.body);
|
|
|
res.send(create(global.terminalList, req.body));
|
|
|
},
|
|
|
[`PUT ${api.terminal.replace('/:id', '')}`]: (req, res) => {
|
|
|
- console.log('[TerminalUpdate]', req.body);
|
|
|
res.send(update(global.terminalList, req.body));
|
|
|
},
|
|
|
[`DELETE ${api.terminal}`]: (req, res) => {
|
|
|
const { id } = req.params;
|
|
|
- const data = queryArray(global.terminalList, id, 'id');
|
|
|
- if (data) {
|
|
|
- global.terminalList = global.terminalList.filter(item => item.id !== id);
|
|
|
- res.status(204).end();
|
|
|
- } else {
|
|
|
- res.status(404).json(NOTFOUND);
|
|
|
- }
|
|
|
+ remove(global.terminalList, id, res);
|
|
|
+ },
|
|
|
+ [`GET ${api.merchant}`]: (req, res) => {
|
|
|
+ const { id } = req.params;
|
|
|
+ queryOne(global.merchantList, id, res);
|
|
|
+ },
|
|
|
+ [`GET ${api.merchants}`]: (req, res) => {
|
|
|
+ res.send(query(global.merchantList, req.query));
|
|
|
+ },
|
|
|
+ [`POST ${api.merchant.replace('/:id', '')}`]: (req, res) => {
|
|
|
+ res.send(create(global.merchantList, req.body));
|
|
|
+ },
|
|
|
+ [`PUT ${api.merchant.replace('/:id', '')}`]: (req, res) => {
|
|
|
+ res.send(update(global.merchantList, req.body));
|
|
|
+ },
|
|
|
+ [`DELETE ${api.merchant}`]: (req, res) => {
|
|
|
+ const { id } = req.params;
|
|
|
+ remove(global.merchantList, id, res);
|
|
|
},
|
|
|
};
|
|
|
|