Browse Source

feat: 综合总览接口

wll8 5 months ago
parent
commit
9436e17108
1 changed files with 129 additions and 19 deletions
  1. 129 19
      mm/mm.config.js

+ 129 - 19
mm/mm.config.js

@@ -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"}