|
@@ -22,27 +22,137 @@ module.exports = async (util) => {
|
|
|
api: {
|
|
|
// 在其他文件里的 api
|
|
|
...api(util).api,
|
|
|
- 'post /api/login': util.side({
|
|
|
- tags: [`admin`],
|
|
|
- summary: `根据用户名获取 token`,
|
|
|
- schema: {
|
|
|
- body: joi
|
|
|
- .object({
|
|
|
- username: joi
|
|
|
- .string()
|
|
|
- .default(`李蕾`)
|
|
|
- .required()
|
|
|
- .description(`用户名`),
|
|
|
- })
|
|
|
- .description(`用户信息`),
|
|
|
+ 'get /api/currentWeather': util.side({
|
|
|
+ tags: [`公用`],
|
|
|
+ summary: `当前天气`,
|
|
|
+ async action(req, res) {
|
|
|
+ res.json(
|
|
|
+ wrapApiData(
|
|
|
+ util.libObj.mockjs.mock({
|
|
|
+ data: {
|
|
|
+ 温度: `@integer(0, 40)`,
|
|
|
+ 天气: `@pick(多云, 少云, 晴, 雨, 雪, 雾, 暴雨)`,
|
|
|
+ },
|
|
|
+ })
|
|
|
+ )
|
|
|
+ )
|
|
|
},
|
|
|
+ }),
|
|
|
+ 'get /api/realTimeStatistics': util.side({
|
|
|
+ tags: [`综合总览`],
|
|
|
+ summary: `实时统计`,
|
|
|
+ async action(req, res) {
|
|
|
+ res.json(
|
|
|
+ wrapApiData(
|
|
|
+ util.libObj.mockjs.mock({
|
|
|
+ data: {
|
|
|
+ 目标完成率: `@integer(0, 100)`,
|
|
|
+ 年移栽数量: `@integer(9, 9e4)`,
|
|
|
+ 年移栽面积: `@integer(9, 9e4)`,
|
|
|
+ 移载区域数: `@integer(9, 9e4)`,
|
|
|
+ 烟农数量: `@integer(9, 9e4)`,
|
|
|
+ },
|
|
|
+ })
|
|
|
+ )
|
|
|
+ )
|
|
|
+ },
|
|
|
+ }),
|
|
|
+ 'get /api/analysisOfTransplantYieldInVariousRegions': util.side({
|
|
|
+ tags: [`综合总览`],
|
|
|
+ summary: `各区域移栽产量分析`,
|
|
|
+ async action(req, res) {
|
|
|
+ res.json(
|
|
|
+ wrapApiData(
|
|
|
+ util.libObj.mockjs.mock({
|
|
|
+ 'data|10': [
|
|
|
+ {
|
|
|
+ 名称: `@county`,
|
|
|
+ 值: `@integer(0, 1000)`,
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ })
|
|
|
+ )
|
|
|
+ )
|
|
|
+ },
|
|
|
+ }),
|
|
|
+ 'get /api/weatherForecast': util.side({
|
|
|
+ tags: [`综合总览`],
|
|
|
+ summary: `天气预报`,
|
|
|
+ async action(req, res) {
|
|
|
+ res.json(
|
|
|
+ wrapApiData(
|
|
|
+ util.libObj.mockjs.mock({
|
|
|
+ 'data|24': [
|
|
|
+ {
|
|
|
+ '时间|+1': 0,
|
|
|
+ 温度: `@integer(0, 40)`,
|
|
|
+ 天气: `@pick(多云, 少云, 晴, 雨, 雪, 雾, 暴雨)`,
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ })
|
|
|
+ )
|
|
|
+ )
|
|
|
+ },
|
|
|
+ }),
|
|
|
+ 'get /api/transplantAreaInEachRegion': util.side({
|
|
|
+ tags: [`综合总览`],
|
|
|
+ summary: `各区域移栽面积`,
|
|
|
+ async action(req, res) {
|
|
|
+ res.json(
|
|
|
+ wrapApiData(
|
|
|
+ util.libObj.mockjs.mock({
|
|
|
+ 'data|10': [
|
|
|
+ {
|
|
|
+ 名称: `@county`,
|
|
|
+ 今年: `@integer(0, 80)`,
|
|
|
+ 去年: `@integer(0, 80)`,
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ })
|
|
|
+ )
|
|
|
+ )
|
|
|
+ },
|
|
|
+ }),
|
|
|
+ 'get /api/analysisOfTransplantingSituation': util.side({
|
|
|
+ tags: [`综合总览`],
|
|
|
+ summary: `移栽情况分析`,
|
|
|
+ async action(req, res) {
|
|
|
+ res.json(
|
|
|
+ wrapApiData(
|
|
|
+ util.libObj.mockjs.mock({
|
|
|
+ 'data|10': [
|
|
|
+ {
|
|
|
+ 名称: `@county`,
|
|
|
+ 已移载: `@integer(9, 9e4)`,
|
|
|
+ 未移栽: `@integer(9, 9e4)`,
|
|
|
+ 比率() {
|
|
|
+ return (this.已移载 / (this.已移载 + this.未移栽)) * 100
|
|
|
+ },
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ })
|
|
|
+ )
|
|
|
+ )
|
|
|
+ },
|
|
|
+ }),
|
|
|
+ 'get /api/transplantTrendAnalysis': util.side({
|
|
|
+ tags: [`综合总览`],
|
|
|
+ summary: `移栽趋势分析`,
|
|
|
async action(req, res) {
|
|
|
- const { username } = req.body
|
|
|
- res.json({
|
|
|
- status: 200,
|
|
|
- message: `欢迎 ${username}, 登录成功`,
|
|
|
- token: `tokentoken`,
|
|
|
- })
|
|
|
+ res.json(
|
|
|
+ wrapApiData(
|
|
|
+ util.libObj.mockjs.mock({
|
|
|
+ 'data|31': [
|
|
|
+ {
|
|
|
+ '时间|+1': 1,
|
|
|
+ 名称: `@county`,
|
|
|
+ 今年: `@integer(0, 2000)`,
|
|
|
+ 去年: `@integer(0, 2000)`,
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ })
|
|
|
+ )
|
|
|
+ )
|
|
|
},
|
|
|
}),
|
|
|
// 当为基本数据类型时, 直接返回数据, 这个接口返回 {"msg":"ok"}
|