"use strict";
|
import { Application } from "egg";
|
const pathToRegExp = require("path-to-regexp");
|
import { EggShell } from "egg-shell-decorators";
|
// const fs = require("fs");
|
// const path = require("path");
|
|
export default (app: Application) => {
|
const { controller, router } = app;
|
EggShell(app, { prefix: "/api", quickStart: true });
|
|
router.get("/", controller.home.index);
|
router.post("/open/GetRouterList2_KuaiDi100", controller.api.open.getRouterList);
|
router.post("/open/GetRouterList", controller.api.open.getRouterList);
|
router.post("/open/RouterList", controller.api.open.getRouterList);
|
|
// // 通用路由
|
// router.get("/api/auth/GetToken", controller.auth.getToken);
|
// router.get("/api/auth/GetValidateCode", controller.auth.getValidateCode);
|
// router.post("/api/auth/login", controller.auth.login);
|
// router.post("/api/auth/hasSaasAuth", controller.auth.hasSaasAuth);
|
// router.post("/api/auth/getAuth", controller.auth.getAuth);
|
|
// router.post("/api/common/loadDropDown", controller.common.loadDropDown);
|
// router.post("/api/common/loadDataList", controller.common.loadDataList);
|
// router.post("/api/common/loadEditData", controller.common.loadEditData);
|
// router.post("/api/common/loadTreeNode", controller.common.loadTreeNode);
|
// router.post("/api/common/saveEditData", controller.common.saveEditData);
|
// router.post("/api/common/deleteData", controller.common.deleteData);
|
|
// router.post("/api/common/createBaseVue", controller.common.createBaseVue);
|
// router.post("/api/sysMvc/createModel", controller.sys.sysMvc.createModel);
|
// router.post("/api/sysMvc/createMenuTree", controller.sys.sysMvc.createMenuTree);
|
|
// // 基础信息路由
|
// router.post("/api/position/getStorageList", controller.position.getStorageList);
|
// router.post("/api/baseconsignor/getConsignorList", controller.basicInfo.consignor.BaseConsignor.getConsignorList);
|
|
// // auod数据库路由
|
// router.post("/api/o_waybill_trace/getTrackList", controller.auod.oWaybillTrace.getTrackList);
|
// router.get("/api/waybill/info", controller.auod.oWaybillTrace.getWayBillInfo);
|
|
// // 对外开放接口
|
// router.post("/api/open/wayBillAdd", controller.api.open.wayBillAdd);
|
// // router.post("/api/open/GetRouterList2", controller.api.open.getRouterList2);
|
// router.post("/api/open/GetRouterList2_KuaiDi100", controller.api.open.getRouterList2);
|
// router.post("/api/open/GetRouterList", controller.api.open.getRouterList2);
|
// router.post("/api/open/RouterList", controller.api.open.getRouterList2);
|
// router.post("/api/open/productAdd", controller.api.open.productAdd);
|
// router.post("/api/open/productSearch", controller.api.open.productSearch);
|
// router.post("/api/open/IdcardAdd", controller.api.open.idcardAdd);
|
|
// 路由不区分大小写
|
router.stack.forEach(route => {
|
route.opts.sensitive = false;
|
route.regexp = pathToRegExp(route.path, route.paramNames, route.opts);
|
});
|
|
// const controllerPath = path.join(process.cwd(), "/app", "/controller"); // 这个地方应该去做递归把所有js文件遍历出来
|
// const files = fs.readdirSync(controllerPath);
|
// let reqPath;
|
// let cObj;
|
// files.forEach(function(file) {
|
// let controllerName = file.replace(".ts", "");
|
// reqPath = controllerPath + "/" + file.replace(".ts", "");
|
// /**
|
// *reqPath,用来通过controller中的路径作为请求路径
|
// *例如:文件路径:/app/controller/sys/user.js 那么得到就是/sys/user
|
// */
|
// reqPath = reqPath
|
// .substr(reqPath.indexOf("controller") + 10)
|
// .replace(/\\/, "/");
|
// cObj = controller[controllerName];
|
// _initAction(reqPath, cObj, router, controller);
|
// });
|
};
|
|
// const _initAction = function(reqPath, obj, router, controller) {
|
// const keys = Object.getOwnPropertyNames(obj);
|
// let c = controller;
|
// const l = reqPath.split("/");
|
// l.splice(0, 1);
|
// l.forEach(v => {
|
// // 循环获取到对应的路由控制器对象
|
// c = c[v];
|
// });
|
// keys.forEach(function(key) {
|
// if (key !== "constructor") {
|
// // 去除掉构造函数
|
// const controllerMethod = c[key];
|
// if (controllerMethod) {
|
// // 在eggjs中,得到的keys会多出pathName,fullPath,所以过滤下
|
// ["get", "post"].forEach(function(m) {
|
// // 定义路由的get,post,也可以扩展put,delete等
|
// router[m](`${reqPath}/${key}`, controllerMethod);
|
// });
|
// }
|
// }
|
// });
|
// // 这个地方,挂在restful api,但是没有验证,是否会和上面action绑定有没有冲突,理论上命名不冲突,就不会有问题
|
// router.resources(l[l.length - 1], `${reqPath}`, c);
|
// };
|