| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 | 'use strict';module.exports = app => {    // session验证中间件    const sessionAuth = app.middlewares.sessionAuth();    // 创建时间自动填充中间件    const datetimeFill = app.middlewares.datetimeFill();    // 项目管理员判断中间件    const projectManagerCheck = app.middlewares.projectManagerCheck();    // 标段读取中间件    const tenderCheck = app.middlewares.tenderCheck();    const tenderSelect = app.middlewares.tenderSelect();    // 登入登出相关    app.get('/login', 'loginController.index');    app.get('/', 'loginController.index');    app.get('/logout', 'loginController.logout');    app.post('/login', 'loginController.login');    // 用户信息初始化相关    app.get('/boot', sessionAuth, 'bootController.index');    app.post('/boot', sessionAuth, 'bootController.boot');    // 控制面板相关    app.get('/dashboard', sessionAuth, 'dashboardController.index');    /**     * 项目设置     */    // 项目信息    app.get('/setting/info', sessionAuth, 'settingController.info');    app.post('/setting/updateinfo/:id', sessionAuth, 'settingController.updateinfo');    // 账号设置    app.get('/setting/user', sessionAuth, 'settingController.user');    // 标段自定义类别    app.get('/setting/category', sessionAuth, 'settingController.category');    app.post('/api/setting/category/add', sessionAuth, 'settingController.addCategory');    app.post('/api/setting/category/del', sessionAuth, 'settingController.deleteCategory');    app.post('/api/setting/category/update', sessionAuth, 'settingController.updateCategory');    app.post('/api/setting/category/value', sessionAuth, 'settingController.setCategoryValue');    app.post('/api/setting/category/level', sessionAuth, 'settingController.resetCategoryLevel');    // 项目相关    app.get('/project/info', sessionAuth, 'projectController.info');    app.get('/project/account', sessionAuth, projectManagerCheck, 'accountController.index');    app.post('/project/account/permission/:accountId', sessionAuth, projectManagerCheck, 'accountController.savePermission');    app.get('/project/account/enable/:accountId', sessionAuth, projectManagerCheck, 'accountController.enable');    app.get('/project/account/disable/:accountId', sessionAuth, projectManagerCheck, 'accountController.enable');    app.get('/project/switch/:projectId', sessionAuth, projectManagerCheck, 'projectController.switchProject');    app.post('/project/info', sessionAuth, 'projectController.saveInfo');    /**     * 标段管理     */    // 金额概况    app.get('/list', sessionAuth, 'tenderController.listInfo');    // 计量进度    app.get('/list/progress', sessionAuth, 'tenderController.listProgress');    // 管理标段    app.get('/list/manage', sessionAuth, 'tenderController.listManage');    app.post('/api/list/add', sessionAuth, 'tenderController.addTender');    app.post('/api/list/update', sessionAuth, 'tenderController.updateTender');    app.post('/api/list/del', sessionAuth, 'tenderController.deleteTender');    // 标段概况    app.get('/tender/:id', sessionAuth, tenderCheck, 'tenderController.tenderInfo');    app.get('/tender/:id/:type', sessionAuth, 'tenderController.tenderType');    app.post('/api/tender/:id/save', sessionAuth, tenderCheck, 'tenderController.saveTenderInfo');    app.post('/tender/rule', sessionAuth, 'tenderController.rule');    // 台账管理相关    app.get('/tender/:id/ledger/explode', sessionAuth, tenderCheck, 'ledgerController.explode');    app.post('/api/tender/:id/ledger/get-children', sessionAuth, tenderCheck, 'ledgerController.getChildren');    app.post('/api/tender/:id/ledger/base-operation', sessionAuth, tenderCheck, 'ledgerController.baseOperation');    app.post('/api/tender/:id/ledger/update', sessionAuth, tenderCheck, 'ledgerController.update');    app.post('/api/tender/:id/ledger/update-info', sessionAuth, tenderCheck, 'ledgerController.updateInfo');    app.post('/api/tender/:id/ledger/paste-block', sessionAuth, tenderCheck, 'ledgerController.pasteBlock');    app.post('/api/tender/:id/ledger/add-by-std', sessionAuth, tenderCheck, 'ledgerController.addFromStandardLib');    app.post('/api/tender/:id/ledger/batch-insert', sessionAuth, tenderCheck, 'ledgerController.batchInsert');    app.post('/api/tender/:id/pos', sessionAuth, tenderCheck, 'ledgerController.pos');    app.post('/api/tender/:id/pos/update', sessionAuth, tenderCheck, 'ledgerController.posUpdate');    app.get('/tender/:id/ledger/change', sessionAuth, tenderCheck, 'ledgerController.change');    app.get('/tender/:id/ledger/index', sessionAuth, 'ledgerController.index');    // 台账审批相关    app.get('/tender/:id/ledger/audit', sessionAuth, tenderCheck, 'ledgerAuditController.index');    app.post('/api/tender/:id/ledger/audit/add', sessionAuth, tenderCheck, 'ledgerAuditController.add');    app.post('/api/tender/:id/ledger/audit/delete', sessionAuth, tenderCheck, 'ledgerAuditController.remove');    app.post('/tender/:id/ledger/audit/start', sessionAuth, tenderCheck, 'ledgerAuditController.start');    app.post('/tender/:id/ledger/audit/check', sessionAuth, tenderCheck, 'ledgerAuditController.check');    // 签约清单    app.post('/api/tender/:id/deal/get-data', sessionAuth, tenderCheck, 'dealBillsController.getData');    app.post('/api/tender/:id/deal/upload-excel', sessionAuth, tenderCheck, 'dealBillsController.loadExcel');    app.get('/api/tender/:id/deal/download/:file', sessionAuth, tenderCheck, 'dealBillsController.download');    // 变更管理    app.get('/tender/:id/change', sessionAuth, 'changeController.index');    app.get('/tender/:id/change/status/:status', sessionAuth, 'changeController.status');    app.post('/tender/:id/change/newCode', sessionAuth, 'changeController.newCode');    app.post('/tender/:id/change/add', sessionAuth, 'changeController.add');    app.get('/tender/:id/change/:cid/info', sessionAuth, 'changeController.info');    app.get('/tender/:id/change/:cid/bills', sessionAuth, 'changeController.bills');    app.get('/tender/:id/change/:cid/file', sessionAuth, 'changeController.file');    // 变更单位管理    app.post('/change/update/company', sessionAuth, 'changeController.updateCompany');    // 个人账号相关    app.get('/profile/info', sessionAuth, 'profileController.info');    app.post('/profile/save', sessionAuth, 'profileController.saveBase');    app.post('/profile/password', sessionAuth, 'profileController.modifyPassword');    app.post('/profile/code', sessionAuth, 'profileController.getCode');    app.post('/profile/bind', sessionAuth, 'profileController.bindMobile');    // 中间计量 - 计量编制相关    app.get('/measure/wlist', sessionAuth, tenderSelect, 'measureController.list');    app.get('/measure/work/:mid', sessionAuth, tenderSelect, 'measureController.work');    app.post('/measure/newCode', sessionAuth, 'measureController.newCode');    app.post('/measure/add', sessionAuth, 'measureController.addMeasure');    app.post('/measure/delete', sessionAuth, 'measureController.deleteMeasure');    app.post('/measure/search', sessionAuth, 'measureController.search');    app.post('/measure/pos', sessionAuth, 'measureController.pos');    app.post('/measure/bills', sessionAuth, 'measureController.bills');    app.post('/measure/detail', sessionAuth, 'measureController.measureDetail');    app.post('/measure/billsUpdate', sessionAuth, 'measureController.billsUpdate');    // 中间计量 - 计量审批相关    app.get('/measure/alist', sessionAuth, tenderSelect, 'measureAuditController.list');    app.get('/measure/audit/:mid', sessionAuth, 'measureAuditController.index');    app.post('/measure/audit/add', sessionAuth, 'measureAuditController.add');    app.post('/measure/audit/remove', sessionAuth, 'measureAuditController.remove');    app.post('/measure/audit/start', sessionAuth, 'measureAuditController.start');    app.post('/measure/audit/check', sessionAuth, 'measureAuditController.check');    // 期计量管理相关    app.get('/tender/:id/measure/stage', sessionAuth, tenderCheck, 'stageController.index');    app.post('/tender/:id/stage/add', sessionAuth, tenderCheck, 'stageController.add');    app.get('/tender/:id/stage/:order/measure', sessionAuth, tenderSelect, 'stageController.stageMeasure');    app.get('/tender/:id/stage/:order/deal', sessionAuth, tenderSelect, 'stageController.stageDeal');    app.get('/tender/:id/stage/:order/report', sessionAuth, tenderSelect, 'stageController.stageReport');    //标准库相关    app.post('/api/std/bills/get-data', sessionAuth, 'stdBillsController.getData');    app.post('/api/std/bills/get-children', sessionAuth, 'stdBillsController.getChildren');    app.post('/api/std/chapter/get-data', sessionAuth, 'stdChapterController.getData');    app.post('/api/std/chapter/get-children', sessionAuth, 'stdChapterController.getChildren');    // 查询    app.post('/api/search/user', sessionAuth, 'projectController.searchAccount');};
 |