'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 tenderBuildCheck = app.middlewares.tenderBuildCheck(); const ledgerAuditCheck = app.middlewares.ledgerAuditCheck(); const reviseAuditCheck = app.middlewares.reviseAuditCheck(); const changeAuditCheck = app.middlewares.changeAuditCheck(); const changeProjectAuditCheck = app.middlewares.changeProjectAuditCheck(); const changeApplyAuditCheck = app.middlewares.changeApplyAuditCheck(); const changePlanAuditCheck = app.middlewares.changePlanAuditCheck(); const uncheckTenderCheck = app.middlewares.uncheckTenderCheck(); // 期读取中间件 const stageCheck = app.middlewares.stageCheck(); const settleCheck = app.middlewares.settleCheck(); const phasePayCheck = app.middlewares.phasePayCheck(); // 材料调差读取中间件 const materialCheck = app.middlewares.materialCheck(); // 第三方接口认证判断中间件 const api2otherCheck = app.middlewares.api2otherCheck(); // 项目管理接口认证中间件 const api3managementCheck = app.middlewares.api3managementCheck(); // 微信验证登录中间件 const wechatAuth = app.middlewares.wechatAuth(); // 企业微信验证登录中间件 const wxWorkAuth = app.middlewares.wxWorkAuth(); // 预付款中间件 const advanceCheck = app.middlewares.advanceCheck(); // 变更令中间件 const changeCheck = app.middlewares.changeCheck(); // 变更立项书中间件 const changeProjectCheck = app.middlewares.changeProjectCheck(); // 变更申请中间件 const changeApplyCheck = app.middlewares.changeApplyCheck(); // 变更方案中间件 const changePlanCheck = app.middlewares.changePlanCheck(); // 投资进度中间件 const scheduleCheck = app.middlewares.scheduleCheck(); // 修订 const reviseCheck = app.middlewares.reviseCheck(); const budgetCheck = app.middlewares.budgetCheck(); const subProjectCheck = app.middlewares.subProjectCheck(); // 支付审批中间件 const paymentTenderCheck = app.middlewares.paymentTenderCheck(); const paymentDetailCheck = app.middlewares.paymentDetailCheck(); // 施工日志中间件 const constructionCheck = app.middlewares.constructionCheck(); // 合同管理中间件 const contractCheck = app.middlewares.contractCheck(); // 资金监管中间件 const financialCheck = app.middlewares.financialCheck(); const financialPayCheck = app.middlewares.financialPayCheck(); const financialPayAuditCheck = app.middlewares.financialPayAuditCheck(); // 登入登出相关 app.get('/login', 'loginController.index'); app.get('/login/:code', 'loginController.index'); app.get('/login/port', api2otherCheck, 'loginController.port'); app.get('/', 'loginController.index'); app.get('/logout', 'loginController.logout'); app.post('/login', 'loginController.login'); app.post('/login/port', 'loginController.loginPort'); app.get('/login/management', api3managementCheck, 'loginController.management'); app.get('/project/name', 'loginController.projectName'); app.get('/sign', 'signController.index'); app.post('/sign/save', 'signController.save'); app.post('/reset/password', 'loginController.resetPassword'); // 项目管理对计量接口相关 app.get('/management/account', api3managementCheck, 'loginController.account'); app.get('/management/account/sync', api3managementCheck, 'loginController.syncProjectAccount'); app.get('/management/account/valid', api3managementCheck, 'loginController.syncValidAccount'); app.get('/management/project', api3managementCheck, 'loginController.project'); app.get('/management/proxy/project/vertify', sessionAuth, 'loginController.vertifyProject'); app.get('/management/proxy/project/add', sessionAuth, 'loginController.addProject'); // 用户信息初始化相关 app.get('/boot', sessionAuth, 'bootController.index'); app.post('/boot', sessionAuth, 'bootController.boot'); // 项目相关 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('/profile/info', sessionAuth, 'profileController.info'); app.get('/profile/cert', sessionAuth, 'profileController.cert'); app.post('/profile/cert/save', sessionAuth, 'profileController.certSave'); app.post('/profile/cert/upload', sessionAuth, 'profileController.certUpload'); app.get('/profile/sms', sessionAuth, 'profileController.sms'); app.post('/profile/sms/type', sessionAuth, 'profileController.smsType'); app.post('/profile/dsk/api', sessionAuth, 'profileController.dskApi'); app.get('/profile/sign', sessionAuth, 'profileController.sign'); app.get('/profile/sign/netca', sessionAuth, 'profileController.netcasign'); app.post('/profile/sign/save', sessionAuth, 'profileController.signSave'); // app.get('/profile/netcasign/delete', sessionAuth, 'profileController.netcasignDelete'); // app.get('/profile/netcasign/upload', sessionAuth, 'profileController.netcasignload'); app.post('/profile/sign/delete', sessionAuth, 'profileController.signDelete'); app.post('/profile/sign/upload', sessionAuth, 'profileController.signUpload'); app.post('/profile/stamp/upload', sessionAuth, 'profileController.stampUpload'); app.get('/profile/safe', sessionAuth, 'profileController.safe'); 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('/profile/qrCode', sessionAuth, 'profileController.qrCode'); app.get('/profile/wechat', sessionAuth, 'profileController.wechat'); app.post('/profile/wechat/remove', sessionAuth, 'profileController.removeWechat'); // ------------------------- 通用 ----------------------------- // 标准库相关 app.post('/std-lib/get-data', sessionAuth, 'standardLibController.getData'); // 查询 app.post('/search/user', sessionAuth, 'projectController.searchAccount'); // 示例 app.get('/template/:file', sessionAuth, 'templateController.download'); // ------------------------- 通用 ----------------------------- // ------------------------- 项目相关 ----------------------------- // **工作台 todo 暂时引用控制面板,待修改 app.get('/dashboard', sessionAuth, 'dashboardController.workspace'); app.post('/dashboard/load', sessionAuth, 'dashboardController.loadTenders'); app.get('/dashboard/msg', sessionAuth, 'dashboardController.msg'); app.get('/dashboard/msg/:id', sessionAuth, 'dashboardController.msg'); app.get('/dashboard/msg/add/:id', sessionAuth, 'dashboardController.msgAdd'); app.post('/dashboard/msg/set/:id', sessionAuth, datetimeFill, 'dashboardController.msgSet'); app.get('/dashboard/msg/del/:id', sessionAuth, 'dashboardController.msgDelete'); app.post('/dashboard/msg/:id/file/upload', sessionAuth, 'dashboardController.msgUploadFile'); app.post('/dashboard/msg/:id/file/del', sessionAuth, 'dashboardController.msgDeleteFile'); // **数据大屏 todo dataview // **项目列表 app.get('/subproj', sessionAuth, 'subProjController.index'); app.post('/subproj/addFolder', sessionAuth, projectManagerCheck, 'subProjController.addFolder'); app.post('/subproj/addProj', sessionAuth, projectManagerCheck, 'subProjController.addProj'); app.post('/subproj/dragTo', sessionAuth, projectManagerCheck, 'subProjController.dragTo'); app.post('/subproj/move', sessionAuth, projectManagerCheck, 'subProjController.move'); app.post('/subproj/del', sessionAuth, projectManagerCheck, 'subProjController.del'); app.post('/subproj/save', sessionAuth, projectManagerCheck, 'subProjController.save'); app.post('/subproj/refresh', sessionAuth, projectManagerCheck, 'subProjController.refresh'); app.post('/subproj/rela/save', sessionAuth, 'subProjController.saveRela'); app.post('/subproj/rela', sessionAuth, 'subProjController.rela'); app.post('/subproj/member', sessionAuth, projectManagerCheck, 'subProjController.member'); app.post('/subproj/memberSave', sessionAuth, projectManagerCheck, 'subProjController.memberSave'); app.get('/subproj/info', sessionAuth, 'subProjController.listInfo'); app.post('/subproj/col-set', sessionAuth, projectManagerCheck, 'subProjController.colSet'); app.post('/subproj/info/refreshCache', sessionAuth, 'subProjController.refreshInfoCache'); // **项目汇总 todo spgather // **平台设置 // 项目信息 app.get('/setting/info', sessionAuth, 'settingController.info'); app.post('/setting/updateinfo/:id', sessionAuth, 'settingController.updateinfo'); app.post('/setting/update/projectset', sessionAuth, 'settingController.updateProjectSet'); // 账号设置 app.get('/setting/user', sessionAuth, 'settingController.user'); app.get('/setting/user/permission/set', sessionAuth, 'settingController.userPermissionSet'); app.get('/setting/user/unit', sessionAuth, 'settingController.userUnit'); app.post('/setting/user/unit/add', sessionAuth, 'settingController.userUnitAdd'); app.post('/setting/user/unit/save', sessionAuth, 'settingController.userUnitSave'); app.post('/setting/user/unit/upload', sessionAuth, 'settingController.userUnitUpload'); // 账号停用和启用 app.post('/setting/user/switch', sessionAuth, 'settingController.userSwitch'); app.post('/setting/user/add', sessionAuth, datetimeFill, 'settingController.addUser'); app.post('/setting/user/update', sessionAuth, 'settingController.updateUser'); app.post('/setting/user/permission', sessionAuth, 'settingController.permission'); app.post('/setting/user/reset/password', sessionAuth, 'settingController.resetUserPassword'); app.post('/setting/user/exist', sessionAuth, 'settingController.accountExist'); app.post('/setting/user/unbind', sessionAuth, 'settingController.userUnbind'); // 接口设置 app.get('/setting/api', sessionAuth, 'settingController.s2b'); app.post('/setting/api/update', sessionAuth, 'settingController.s2bUpdate'); app.post('/setting/api/update-status', sessionAuth, 'settingController.s2bUpdateStatus'); // 显示设置 app.get('/setting/show', sessionAuth, 'settingController.show'); app.post('/setting/show/update', sessionAuth, 'settingController.showListUpdate'); app.post('/setting/show/update-sjs', sessionAuth, 'settingController.showSjsUpdate'); app.get('/setting/spread', sessionAuth, projectManagerCheck, 'settingController.spread'); app.post('/setting/spread/save', sessionAuth, projectManagerCheck, 'settingController.saveSpread'); app.post('/setting/spread/preview', sessionAuth, projectManagerCheck, 'settingController.previewSpread'); app.post('/setting/spread/reset', sessionAuth, projectManagerCheck, 'settingController.resetSpread'); // ------------------------- 项目相关 ----------------------------- // ------------------------- 项目内部相关 ----------------------------- // **项目设置 // 标段自定义类别 app.get('/sp/:id/setting/category', sessionAuth, subProjectCheck, 'subProjSettingController.category'); app.post('/sp/:id/setting/category/add', sessionAuth, subProjectCheck, 'subProjSettingController.addCategory'); app.post('/sp/:id/setting/category/del', sessionAuth, subProjectCheck, 'subProjSettingController.deleteCategory'); app.post('/sp/:id/setting/category/update', sessionAuth, subProjectCheck, 'subProjSettingController.updateCategory'); app.post('/sp/:id/setting/category/value', sessionAuth, subProjectCheck, 'subProjSettingController.setCategoryValue'); app.post('/sp/:id/setting/category/level', sessionAuth, subProjectCheck, 'subProjSettingController.resetCategoryLevel'); app.post('/sp/:id/setting/category/self-level', sessionAuth, subProjectCheck, 'subProjSettingController.selfCategoryLevel'); // 账号设置 app.get('/sp/:id/setting/user', sessionAuth, subProjectCheck, 'subProjSettingController.user'); app.get('/sp/:id/setting/user/permission', sessionAuth, subProjectCheck, 'subProjSettingController.permission'); app.post('/sp/:id/setting/user/permission/update', sessionAuth, subProjectCheck, 'subProjSettingController.permissionUpdate'); // 操作日志 app.get('/sp/:id/setting/logs', sessionAuth, subProjectCheck, 'subProjSettingController.logs'); app.get('/sp/:id/setting/logs/type/:type', sessionAuth, subProjectCheck, 'subProjSettingController.logs'); // 功能设置 app.get('/sp/:id/setting/fun', sessionAuth, subProjectCheck, 'subProjSettingController.fun'); app.post('/sp/:id/setting/fun/update', sessionAuth, subProjectCheck, 'subProjSettingController.updateFun'); // 决策大屏 app.get('/sp/:id/setting/datacollect', sessionAuth, subProjectCheck, 'subProjSettingController.dataCollect'); app.post('/sp/:id/setting/datacollect/save', sessionAuth, subProjectCheck, 'subProjSettingController.dataCollectSave'); // 标段管理 app.get('/sp/:id/setting/manage', sessionAuth, subProjectCheck, 'subProjSettingController.manage'); app.post('/sp/:id/setting/manage/tender/save', sessionAuth, subProjectCheck, 'subProjSettingController.manageTenderSave'); app.get('/sp/:id/nop/:block', sessionAuth, subProjectCheck, 'subProjController.noPermission'); // 项目列表跳转项目内部 todo 除标段内,均改为/sp/:id/xxx的链接形式 // **控制面板 app.get('/sp/:id/dashboard', sessionAuth, subProjectCheck, 'dashboardController.index'); app.get('/sp/:id/dashboard/msg', sessionAuth, subProjectCheck, 'dashboardController.msg'); app.get('/sp/:id/dashboard/msg/:mid', sessionAuth, subProjectCheck, 'dashboardController.msg'); app.get('/sp/:id/dashboard/msg/add/:mid', sessionAuth, subProjectCheck, 'dashboardController.msgAdd'); app.post('/sp/:id/dashboard/msg/set/:mid', sessionAuth, subProjectCheck, datetimeFill, 'dashboardController.msgSet'); app.get('/sp/:id/dashboard/msg/del/:mid', sessionAuth, subProjectCheck, 'dashboardController.msgDelete'); app.post('/dashboard/msg/:mid/file/upload', sessionAuth, 'dashboardController.msgUploadFile'); app.post('/dashboard/msg/:mid/file/del', sessionAuth, 'dashboardController.msgDeleteFile'); app.get('/wap/message/download/file/:fid', 'wapController.messageDownloadFile'); // 推送相关 // app.post('/dashboard/push', sessionAuth, 'dashboardController.pushSet'); // **决策大屏 app.get('/sp/:id/datacollect', sessionAuth, subProjectCheck, 'datacollectController.index'); app.get('/sp/:id/datacollect/index/:index', sessionAuth, subProjectCheck, 'datacollectController.index'); app.post('/sp/:id/datacollect/load', sessionAuth, subProjectCheck, 'datacollectController.loadData'); // **项目概况 // 项目信息 app.get('/sp/:id/info', sessionAuth, subProjectCheck, 'subProjController.info'); app.get('/sp/:id/data', sessionAuth, subProjectCheck, 'subProjController.dataIndex'); app.post('/sp/:id/info/save', sessionAuth, subProjectCheck, 'subProjController.saveInfo'); app.post('/sp/:id/load', sessionAuth, subProjectCheck, 'subProjController.load'); // 阶段进度 app.get('/sp/:id/progress', sessionAuth, subProjectCheck, 'subProjController.progress'); app.post('/sp/:id/progress/update', sessionAuth, subProjectCheck, 'subProjController.progressUpdate'); app.post('/sp/:id/progress/file/upload', sessionAuth, subProjectCheck, 'subProjController.uploadFile'); app.post('/sp/:id/progress/file/upload/big', sessionAuth, subProjectCheck, 'subProjController.uploadBigFile'); app.post('/sp/:id/progress/file/delete', sessionAuth, subProjectCheck, 'subProjController.deleteFile'); // 推进记录 app.get('/sp/:id/push', sessionAuth, subProjectCheck, 'subProjController.push'); app.post('/sp/:id/push/update', sessionAuth, subProjectCheck, 'subProjController.pushUpdate'); app.post('/sp/:id/push/file/upload', sessionAuth, subProjectCheck, 'subProjController.uploadFile'); app.post('/sp/:id/push/file/upload/big', sessionAuth, subProjectCheck, 'subProjController.uploadBigFile'); app.post('/sp/:id/push/file/delete', sessionAuth, subProjectCheck, 'subProjController.deleteFile'); // **标段管理 // 金额概况 app.get('/sp/:id/list', sessionAuth, subProjectCheck, 'tenderController.listDefault'); app.get('/sp/:id/list/finish', sessionAuth, subProjectCheck, 'tenderController.listDefaultFinish'); app.post('/sp/:id/list/load', sessionAuth, subProjectCheck, 'tenderController.listLoad'); app.post('/sp/:id/list/load2', sessionAuth, subProjectCheck, 'tenderController.listLoad2'); app.get('/sp/:id/list/info', sessionAuth, subProjectCheck, 'tenderController.listInfo'); app.get('/sp/:id/list/info/finish', sessionAuth, subProjectCheck, 'tenderController.listInfoFinish'); app.post('/sp/:id/list/info/col-set', sessionAuth, projectManagerCheck, subProjectCheck, 'subProjController.colSet'); // 计量进度 app.get('/sp/:id/list/progress', sessionAuth, subProjectCheck, 'tenderController.listProgress'); // 管理标段 app.get('/sp/:id/list/manage', sessionAuth, subProjectCheck, 'tenderController.listManage'); app.get('/sp/:id/list/manage/finish', sessionAuth, subProjectCheck, 'tenderController.listManageFinish'); app.post('/sp/:id/list/add', sessionAuth, subProjectCheck, 'tenderController.addTender'); app.post('/sp/:id/list/update', sessionAuth, subProjectCheck, 'tenderController.updateTender'); app.post('/sp/:id/list/del', sessionAuth, subProjectCheck, 'tenderController.deleteTender'); app.post('/sp/:id/list/batchUpdate', sessionAuth, subProjectCheck, 'tenderController.batchUpdate'); app.get('/sp/:id/list/refreshCache', sessionAuth, subProjectCheck, 'tenderController.refreshCache'); // 统计分析 app.get('/sp/:id/spss/info', sessionAuth, subProjectCheck, 'spssController.info'); app.get('/sp/:id/spss/gather/ledger', sessionAuth, subProjectCheck, 'spssController.gatherLedger'); app.get('/sp/:id/spss/gather/stage', sessionAuth, subProjectCheck, 'spssController.gatherStage'); app.get('/sp/:id/spss/gather/stage/extra', sessionAuth, subProjectCheck, 'spssController.gatherStageExtra'); app.get('/sp/:id/spss/compare/ledger', sessionAuth, subProjectCheck, 'spssController.compareLedger'); app.get('/sp/:id/spss/compare/stage', sessionAuth, subProjectCheck, 'spssController.compareStage'); app.post('/sp/:id/spss/load', sessionAuth, subProjectCheck, 'spssController.load'); // **标段合同管理 todo 接入项目内部 // app.get('/sp/:id/contract', sessionAuth, subProjectCheck, 'contractController.index'); app.get('/sp/:id/contract/tender', sessionAuth, subProjectCheck, 'contractController.tender'); app.post('/sp/:id/contract/tender/:tid/audit/save', sessionAuth, subProjectCheck, contractCheck, 'contractController.auditSave'); app.get('/sp/:id/contract/tender/:tid/detail', sessionAuth, subProjectCheck, contractCheck, 'contractController.detail'); app.get('/sp/:id/contract/tender/:tid/detail/:type', sessionAuth, subProjectCheck, contractCheck, 'contractController.detail'); app.get('/sp/:id/contract/tender/:tid/panel', sessionAuth, subProjectCheck, contractCheck, 'contractController.panel'); app.post('/sp/:id/contract/tender/:tid/detail/load', sessionAuth, subProjectCheck, contractCheck, 'contractController.loadDetail'); app.post('/sp/:id/contract/tender/:tid/detail/:type/load', sessionAuth, subProjectCheck, contractCheck, 'contractController.loadDetail'); app.post('/sp/:id/contract/tender/:tid/detail/update', sessionAuth, subProjectCheck, contractCheck, 'contractController.updateBills'); app.post('/sp/:id/contract/tender/:tid/detail/:type/update', sessionAuth, subProjectCheck, contractCheck, 'contractController.updateBills'); app.post('/sp/:id/contract/tender/:tid/detail/:type/:cid/file/upload', sessionAuth, subProjectCheck, contractCheck, 'contractController.uploadFile'); app.post('/sp/:id/contract/tender/:tid/detail/:type/:cid/file/delete', sessionAuth, subProjectCheck, contractCheck, 'contractController.deleteFile'); app.get('/sp/:id/contract/tender/:tid/detail/:type/:cid/file/:fid/download', sessionAuth, subProjectCheck, contractCheck, 'contractController.downloadFile'); app.post('/sp/:id/contract/tender/:tid/detail/:type/:cid/pay/:cpid/file/upload', sessionAuth, subProjectCheck, contractCheck, 'contractController.uploadFile'); app.post('/sp/:id/contract/tender/:tid/detail/:type/:cid/pay/:cpid/file/delete', sessionAuth, subProjectCheck, contractCheck, 'contractController.deleteFile'); app.get('/sp/:id/contract/tender/:tid/detail/:type/:cid/pay/:cpid/file/:fid/download', sessionAuth, subProjectCheck, contractCheck, 'contractController.downloadFile'); // 项目合同管理 app.get('/sp/:id/contract', sessionAuth, subProjectCheck, contractCheck, 'contractController.detail'); app.post('/sp/:id/contract/audit/save', sessionAuth, subProjectCheck, contractCheck, 'contractController.auditSave'); app.get('/sp/:id/contract/detail', sessionAuth, subProjectCheck, contractCheck, 'contractController.detail'); app.get('/sp/:id/contract/detail/:type', sessionAuth, subProjectCheck, contractCheck, 'contractController.detail'); app.get('/sp/:id/contract/panel', sessionAuth, subProjectCheck, contractCheck, 'contractController.panel'); app.post('/sp/:id/contract/load', sessionAuth, subProjectCheck, contractCheck, 'contractController.loadDetail'); app.post('/sp/:id/contract/detail/load', sessionAuth, subProjectCheck, contractCheck, 'contractController.loadDetail'); app.post('/sp/:id/contract/detail/:type/load', sessionAuth, subProjectCheck, contractCheck, 'contractController.loadDetail'); app.post('/sp/:id/contract/detail/update', sessionAuth, subProjectCheck, contractCheck, 'contractController.updateBills'); app.post('/sp/:id/contract/detail/:type/update', sessionAuth, subProjectCheck, contractCheck, 'contractController.updateBills'); app.post('/sp/:id/contract/detail/:type/:cid/file/upload', sessionAuth, subProjectCheck, contractCheck, 'contractController.uploadFile'); app.post('/sp/:id/contract/detail/:type/:cid/file/delete', sessionAuth, subProjectCheck, contractCheck, 'contractController.deleteFile'); app.get('/sp/:id/contract/detail/:type/:cid/file/:fid/download', sessionAuth, subProjectCheck, contractCheck, 'contractController.downloadFile'); app.post('/sp/:id/contract/detail/:type/:cid/pay/:cpid/file/upload', sessionAuth, subProjectCheck, contractCheck, 'contractController.uploadFile'); app.post('/sp/:id/contract/detail/:type/:cid/pay/:cpid/file/delete', sessionAuth, subProjectCheck, contractCheck, 'contractController.deleteFile'); app.get('/sp/:id/contract/detail/:type/:cid/pay/:cpid/file/:fid/download', sessionAuth, subProjectCheck, contractCheck, 'contractController.downloadFile'); // 资料归集-列表 app.get('/file', sessionAuth, 'fileController.index'); // 资料归集-模板 app.get('/file/template', sessionAuth, projectManagerCheck, 'fileController.template'); app.post('/file/template/save', sessionAuth, projectManagerCheck, 'fileController.saveTemplate'); app.post('/file/template/reset', sessionAuth, projectManagerCheck, 'fileController.resetTemplate'); app.post('/file/template/del', sessionAuth, projectManagerCheck, 'fileController.delTemplate'); app.get('/file/template/:id', sessionAuth, projectManagerCheck, 'fileController.templateDetail'); app.post('/file/template/:id/update', sessionAuth, projectManagerCheck, 'fileController.updateTemplate'); // 资料归集-文件 app.get('/sp/:id/file', sessionAuth, subProjectCheck, 'fileController.file'); app.post('/sp/:id/permission', sessionAuth, projectManagerCheck, subProjectCheck, 'fileController.getFilingTypePermission'); app.post('/sp/:id/permission/save', sessionAuth, projectManagerCheck, subProjectCheck, 'fileController.saveFilingTypePermission'); app.post('/sp/:id/filing/add', sessionAuth, subProjectCheck, 'fileController.addFiling'); app.post('/sp/:id/filing/save', sessionAuth, subProjectCheck, 'fileController.saveFiling'); app.post('/sp/:id/filing/del', sessionAuth, subProjectCheck, 'fileController.delFiling'); app.post('/sp/:id/filing/move', sessionAuth, subProjectCheck, 'fileController.moveFiling'); app.post('/sp/:id/file/load', sessionAuth, subProjectCheck, 'fileController.loadFile'); app.post('/sp/:id/file/check', sessionAuth, subProjectCheck, 'fileController.checkFiles'); app.post('/sp/:id/file/upload', sessionAuth, subProjectCheck, 'fileController.uploadFile'); app.post('/sp/:id/file/upload/big', sessionAuth, subProjectCheck, 'fileController.uploadBigFile'); app.post('/sp/:id/file/del', sessionAuth, subProjectCheck, 'fileController.delFile'); app.post('/sp/:id/file/save', sessionAuth, subProjectCheck, 'fileController.saveFile'); app.post('/sp/:id/file/move', sessionAuth, subProjectCheck, 'fileController.moveFile'); app.post('/sp/:id/file/rela', sessionAuth, subProjectCheck, 'fileController.relaFile'); app.post('/sp/:id/file/rela/tender', sessionAuth, subProjectCheck, 'fileController.loadValidRelaTender'); app.post('/sp/:id/file/rela/files', sessionAuth, subProjectCheck, 'fileController.loadRelaFiles'); app.post('/sp/:id/file/search', sessionAuth, subProjectCheck, 'fileController.search'); // 资料归集-管理员编辑 app.get('/sp/:id/fm', sessionAuth, projectManagerCheck, subProjectCheck, 'fileController.manage'); app.post('/sp/:id/lock-file', sessionAuth, projectManagerCheck, subProjectCheck, 'fileController.lockFiling'); app.post('/sp/:id/fm/update', sessionAuth, projectManagerCheck, subProjectCheck, 'fileController.manageUpdate'); // **施工日志 todo 接入项目内部 app.get('/sp/:id/construction', sessionAuth, subProjectCheck, 'constructionController.index'); app.post('/sp/:id/construction/:tid/audit/save', sessionAuth, subProjectCheck, 'constructionController.auditSave'); app.get('/sp/:id/construction/:tid/list', sessionAuth, subProjectCheck, constructionCheck, 'constructionController.list'); app.post('/sp/:id/construction/:tid/list/add', sessionAuth, subProjectCheck, constructionCheck, 'constructionController.addLog'); app.post('/sp/:id/construction/:tid/list/startmulti', sessionAuth, subProjectCheck, constructionCheck, 'constructionController.startMulti'); app.get('/sp/:id/construction/:tid/log/:lid', sessionAuth, subProjectCheck, constructionCheck, 'constructionController.logInfo'); app.post('/sp/:id/construction/:tid/log/:lid/delete', sessionAuth, subProjectCheck, constructionCheck, 'constructionController.deleteLog'); app.post('/sp/:id/construction/:tid/log/:lid/save', sessionAuth, subProjectCheck, constructionCheck, 'constructionController.logSave'); app.post('/sp/:id/construction/:tid/log/:lid/file/upload', sessionAuth, subProjectCheck, constructionCheck, 'constructionController.uploadFile'); app.post('/sp/:id/construction/:tid/log/:lid/file/delete', sessionAuth, subProjectCheck, constructionCheck, 'constructionController.deleteFile'); app.get('/sp/:id/construction/:tid/log/:lid/file/:fid/download', sessionAuth, subProjectCheck, constructionCheck, 'constructionController.downloadFile'); // **概算投资/动态投资 app.get('/sp/:id/budget', sessionAuth, subProjectCheck, budgetCheck, 'budgetController.budgetInfo'); app.get('/sp/:id/budget/compare', sessionAuth, subProjectCheck, budgetCheck, 'budgetController.compare'); app.post('/sp/:id/budget/compare/load', sessionAuth, subProjectCheck, budgetCheck, 'budgetController.compareLoad'); app.post('/sp/:id/budget/compare/final', sessionAuth, subProjectCheck, budgetCheck, 'budgetController.compareFinal'); app.get('/sp/:id/budget/:btype', sessionAuth, subProjectCheck, budgetCheck, 'budgetController.detail'); app.post('/sp/:id/budget/:btype/load', sessionAuth, subProjectCheck, budgetCheck, 'budgetController.detailLoad'); app.post('/sp/:id/budget/:btype/update', sessionAuth, subProjectCheck, budgetCheck, 'budgetController.detailUpdate'); app.post('/sp/:id/budget/:btype/upload-excel/:ueType', sessionAuth, subProjectCheck, budgetCheck, 'budgetController.detailUploadExcel'); app.post('/sp/:id/budget/decimal', sessionAuth, subProjectCheck, budgetCheck, 'budgetController.decimal'); // 支付审批 app.get('/sp/:id/payment', sessionAuth, subProjectCheck, 'paymentController.index'); app.get('/sp/:id/payment/setting', sessionAuth, subProjectCheck, 'paymentController.setting'); app.post('/sp/:id/payment/permission/save', sessionAuth, subProjectCheck, 'paymentController.permissionSave'); app.post('/sp/:id/payment/info/save', sessionAuth, subProjectCheck, 'paymentController.paymentInfoSave'); app.get('/sp/:id/payment/:pid/detail/:did', sessionAuth, subProjectCheck, paymentTenderCheck, paymentDetailCheck, 'paymentController.detail'); app.post('/sp/:id/payment/:pid/detail/:did/save', sessionAuth, subProjectCheck, paymentTenderCheck, paymentDetailCheck, 'paymentController.detailSave'); app.post('/sp/:id/payment/save', sessionAuth, subProjectCheck, 'paymentController.save'); app.post('/sp/:id/payment/list/load', sessionAuth, subProjectCheck, 'paymentController.listLoad'); app.get('/sp/:id/payment/:pid/process', sessionAuth, subProjectCheck, paymentTenderCheck, 'paymentController.process'); app.post('/sp/:id/payment/:pid/process/save', sessionAuth, subProjectCheck, paymentTenderCheck, 'paymentController.processSave'); app.get('/sp/:id/payment/:pid/list', sessionAuth, subProjectCheck, paymentTenderCheck, 'paymentController.rptList'); app.get('/sp/:id/payment/:pid/list/:trid', sessionAuth, subProjectCheck, paymentTenderCheck, 'paymentController.rptList'); app.post('/sp/:id/payment/:pid/list/:trid/save', sessionAuth, subProjectCheck, paymentTenderCheck, 'paymentController.rptSave'); app.post('/sp/:id/payment/:pid/list/:trid/delete', sessionAuth, subProjectCheck, paymentTenderCheck, 'paymentController.deleteDetail'); app.post('/sp/:id/payment/:pid/list/:trid/auditors', sessionAuth, subProjectCheck, paymentTenderCheck, 'paymentController.detailAuditors'); app.post('/sp/:id/payment/:pid/detail/:did/audit/start', sessionAuth, subProjectCheck, paymentTenderCheck, paymentDetailCheck, 'paymentController.startAudit'); app.post('/sp/:id/payment/:pid/detail/:did/audit/check', sessionAuth, subProjectCheck, paymentTenderCheck, paymentDetailCheck, 'paymentController.checkAudit'); // 附件 app.post('/sp/:id/payment/:pid/detail/:did/file/upload', sessionAuth, subProjectCheck, paymentTenderCheck, paymentDetailCheck, 'paymentController.uploadDetailFile'); app.post('/sp/:id/payment/:pid/detail/:did/file/delete', sessionAuth, subProjectCheck, paymentTenderCheck, paymentDetailCheck, 'paymentController.deleteDetailFile'); app.get('/sp/:id/payment/:pid/detail/:did/file/:fid/download', sessionAuth, subProjectCheck, paymentTenderCheck, paymentDetailCheck, 'paymentController.downloadDetailFile'); // 安全生产费 app.get('/sp/:id/payment/:pid/safe/:did/bills', sessionAuth, subProjectCheck, paymentTenderCheck, paymentDetailCheck, 'paymentController.safeBills'); app.get('/sp/:id/payment/:pid/safe/:did/compare', sessionAuth, subProjectCheck, paymentTenderCheck, paymentDetailCheck, 'paymentController.safeCompare'); app.post('/sp/:id/payment/:pid/safe/:did/load', sessionAuth, subProjectCheck, paymentTenderCheck, paymentDetailCheck, 'paymentController.safeLoad'); app.post('/sp/:id/payment/:pid/safe/:did/update', sessionAuth, subProjectCheck, paymentTenderCheck, paymentDetailCheck, 'paymentController.safeUpdate'); app.post('/sp/:id/payment/:pid/safe/:did/decimal', sessionAuth, subProjectCheck, paymentTenderCheck, paymentDetailCheck, 'paymentController.safeDecimal'); app.post('/sp/:id/payment/:pid/safe/:did/file/upload', sessionAuth, subProjectCheck, paymentTenderCheck, paymentDetailCheck, 'paymentController.uploadDetailFile'); app.post('/sp/:id/payment/:pid/safe/:did/file/delete', sessionAuth, subProjectCheck, paymentTenderCheck, paymentDetailCheck, 'paymentController.deleteDetailFile'); // **资金监管 todo 接入项目内部 // app.get('/financial', sessionAuth, 'financialController.index'); // app.post('/financial/audit/save', sessionAuth, financialCheck, 'financialController.auditSave'); app.get('/sp/:id/financial/transfer', sessionAuth, subProjectCheck, financialCheck, 'financialController.transfer'); app.post('/sp/:id/financial/transfer/add', sessionAuth, subProjectCheck, financialCheck, 'financialController.transferAdd'); app.post('/sp/:id/financial/transfer/update', sessionAuth, subProjectCheck, financialCheck, 'financialController.transferUpdate'); app.post('/sp/:id/financial/transfer/:trid/file/upload', sessionAuth, subProjectCheck, financialCheck, 'financialController.transferUploadFile'); app.post('/sp/:id/financial/transfer/:trid/file/delete', sessionAuth, subProjectCheck, financialCheck, 'financialController.transferDeleteFile'); app.get('/sp/:id/financial/transfer/:trid/file/:fid/download', sessionAuth, subProjectCheck, financialCheck, 'financialController.transferDownloadFile'); app.get('/sp/:id/financial/transfer/:trid/tender', sessionAuth, subProjectCheck, financialCheck, 'financialController.transferTender'); app.post('/sp/:id/financial/transfer/:trid/tender/update', sessionAuth, subProjectCheck, financialCheck, 'financialController.transferTenderUpdate'); app.post('/sp/:id/financial/transfer/:trid/tender/:ttid/file/upload', sessionAuth, subProjectCheck, financialCheck, 'financialController.transferTenderUploadFile'); app.post('/sp/:id/financial/transfer/:trid/tender/:ttid/file/delete', sessionAuth, subProjectCheck, financialCheck, 'financialController.transferTenderDeleteFile'); app.get('/sp/:id/financial/transfer/:trid/tender/:ttid/file/:fid/download', sessionAuth, subProjectCheck, financialCheck, 'financialController.transferTenderDownloadFile'); app.get('/sp/:id/financial/pay', sessionAuth, subProjectCheck, financialCheck, 'financialController.pay'); app.post('/sp/:id/financial/pay/save', sessionAuth, subProjectCheck, financialCheck, 'financialController.paySave'); app.get('/sp/:id/financial/pay/:fpid/detail', sessionAuth, subProjectCheck, financialCheck, financialPayCheck, financialPayAuditCheck, 'financialController.payDetail'); app.post('/sp/:id/financial/pay/:fpid/save', sessionAuth, subProjectCheck, financialCheck, financialPayCheck, 'financialController.payDetailSave'); app.post('/sp/:id/financial/pay/:fpid/file/upload', sessionAuth, subProjectCheck, financialCheck, financialPayCheck, 'financialController.payUploadFile'); app.post('/sp/:id/financial/pay/:fpid/file/delete', sessionAuth, subProjectCheck, financialCheck, financialPayCheck, 'financialController.payDeleteFile'); app.get('/sp/:id/financial/pay/:fpid/file/:fid/download', sessionAuth, subProjectCheck, financialCheck, financialPayCheck, 'financialController.payDownloadFile'); app.post('/sp/:id/financial/pay/:fpid/audit/start', sessionAuth, subProjectCheck, financialCheck, financialPayCheck, financialPayAuditCheck, 'financialController.startPayAudit'); app.post('/sp/:id/financial/pay/:fpid/audit/check', sessionAuth, subProjectCheck, financialCheck, financialPayCheck, 'financialController.checkPayAudit'); app.get('/sp/:id/financial/summary', sessionAuth, subProjectCheck, financialCheck, 'financialController.summary'); app.post('/sp/:id/financial/summary/load', sessionAuth, subProjectCheck, financialCheck, 'financialController.summaryLoad'); // ------------------------- 项目内部相关 ----------------------------- // ------------------------- 标段内部 ----------------------------- // 为了保持标段内部链接不变,须在tenderCheck后,进行subProjectCheck,使用tender.spid来获取所属的子项目,标段无所属子项目时则无法进入 // 标段概况 app.get('/tender/:id', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.tenderInfo'); app.get('/tender/:id/type', sessionAuth, 'tenderController.tenderType'); app.post('/tender/:id/save', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.saveTenderInfo'); app.post('/tender/:id/save2', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.saveTenderInfo2'); app.post('/tender/:id/build', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.saveBuildStatus'); app.post('/tender/rule', sessionAuth, 'tenderController.rule'); app.post('/tender/:id/rule/first', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.ruleFirst'); app.get('/tender/:id/shenpi', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.shenpiSet'); app.post('/tender/:id/shenpi/save', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.saveTenderInfoShenpi'); app.post('/tender/:id/shenpi/audit/save', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.saveShenpiAudit'); app.post('/tender/:id/shenpi/ass/load', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.loadAuditAss'); app.post('/tender/:id/shenpi/save-sign', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.saveCooperateSign'); app.post('/tender/:id/shenpi/union/load', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.loadUnionAudit'); app.post('/tender/:id/shenpi/union/save', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.saveUnionAudit'); app.post('/tender/:id/copy-setting', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.copyTender'); app.post('/tender/:id/tourist/audit/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'tenderController.saveTourist'); app.post('/tender/:id/map/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'tenderController.saveMap'); app.post('/tender/:id/map/upload', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'tenderController.uploadMap'); app.post('/tender/:id/load', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.loadData'); app.post('/tender/:id/saveRela', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.saveRelaData'); app.get('/tender/:id/cert', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.certSet'); app.post('/tender/:id/cert/save', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.saveCert'); app.get('/tender/:id/ctrl-price', sessionAuth, tenderCheck, subProjectCheck, 'ctrlPriceController.index'); app.post('/tender/:id/ctrl-price/load', sessionAuth, tenderCheck, subProjectCheck, 'ctrlPriceController.load'); app.post('/tender/:id/ctrl-price/update', sessionAuth, tenderCheck, subProjectCheck, 'ctrlPriceController.update'); app.post('/tender/:id/ctrl-price/upload-excel/:ueType', sessionAuth, tenderCheck, subProjectCheck, 'ctrlPriceController.uploadExcel'); app.post('/tender/:id/expr/save', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.saveExpr'); app.post('/tender/:id/expr/load', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.loadExpr'); // 预付款 app.get('/tender/:id/advance/:type', sessionAuth, tenderCheck, subProjectCheck, 'advanceController.index'); // app.get('/tender/:id/advance/material', sessionAuth, tenderCheck, subProjectCheck, 'advanceController.materialList'); app.post('/tender/:id/advance/:type/create', sessionAuth, tenderCheck, subProjectCheck, tenderBuildCheck, 'advanceController.create'); app.post('/tender/:id/advance/:type/delete', sessionAuth, tenderCheck, subProjectCheck, tenderBuildCheck, 'advanceController.delete'); app.get('/tender/:id/advance/:order/detail', sessionAuth, tenderCheck, subProjectCheck, advanceCheck, 'advanceController.detail'); app.post('/tender/:id/advance/:order/audit/add', sessionAuth, tenderCheck, subProjectCheck, advanceCheck, 'advanceController.addAudit'); app.post('/tender/:id/advance/:order/audit/delete', sessionAuth, tenderCheck, subProjectCheck, advanceCheck, 'advanceController.deleteAudit'); app.post('/tender/:id/advance/:order/audit/start', sessionAuth, tenderCheck, subProjectCheck, tenderBuildCheck, advanceCheck, 'advanceController.start'); app.post('/tender/:id/advance/:order/audit/check', sessionAuth, tenderCheck, subProjectCheck, tenderBuildCheck, advanceCheck, 'advanceController.checkAudit'); app.post('/tender/:id/advance/:order/update', sessionAuth, tenderCheck, subProjectCheck, advanceCheck, 'advanceController.update'); app.post('/tender/:id/advance/:order/file/upload', sessionAuth, tenderCheck, subProjectCheck, advanceCheck, 'advanceController.upload'); app.get('/tender/:id/advance/:order/file/:fid/download', sessionAuth, tenderCheck, subProjectCheck, 'advanceController.downloadFile'); app.post('/tender/:id/advance/:order/file/del', sessionAuth, tenderCheck, subProjectCheck, advanceCheck, 'advanceController.deleteFile'); app.post('/tender/:id/advance/:type/:order/auditors', sessionAuth, tenderCheck, subProjectCheck, advanceCheck, 'advanceController.getAuditors'); app.post('/tender/:id/advance/:order/check/again', sessionAuth, tenderCheck, subProjectCheck, tenderBuildCheck, advanceCheck, 'advanceController.checkAgain'); // 标段协作办公 app.get('/tender/:id/cooperation', sessionAuth, tenderCheck, subProjectCheck, 'tenderController.tenderCooperation'); // 台账管理相关 app.get('/tender/:id/ledger', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, ledgerAuditCheck, 'ledgerController.explode'); app.post('/tender/:id/ledger/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.loadExplodeData'); app.post('/tender/:id/ledger/get-children', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.getChildren'); app.post('/tender/:id/ledger/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.update'); app.post('/tender/:id/ledger/upload-excel/:ueType', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.uploadExcel'); app.post('/tender/:id/ledger/ybp', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.uploadYbp'); app.post('/tender/:id/ledger/dsk', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.importDsk'); app.get('/tender/:id/ledger/download/:file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.download'); app.post('/tender/:id/anc-gcl/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.ancGclUpdate'); app.post('/tender/:id/pos/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.posUpdate'); app.post('/tender/:id/pos/paste', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.posPaste'); app.post('/tender/:id/ledger/deal2sgfh', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.deal2sgfh'); app.post('/tender/:id/ledger/check', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.check'); app.post('/tender/:id/measure/ledger/auditors', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.ledgerAuditors'); // 台账附件 app.post('/tender/:id/ledger/upload/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.uploadFile'); app.get('/tender/:id/ledger/download/file/:fid', sessionAuth, 'ledgerController.downloadFile'); app.post('/tender/:id/ledger/delete/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.deleteFile'); app.post('/tender/:id/ledger/save/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.saveFile'); app.post('/tender/:id/ledger/check/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.checkFile'); app.post('/tender/:id/ledger/compresse/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.downloadZip'); // 台账审批相关 app.post('/tender/:id/ledger/audit/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerAuditController.add'); app.post('/tender/:id/ledger/audit/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerAuditController.remove'); app.post('/tender/:id/ledger/audit/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerAuditController.saveAudit'); app.post('/tender/:id/ledger/audit/start', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, ledgerAuditCheck, tenderBuildCheck, 'ledgerAuditController.start'); app.post('/tender/:id/ledger/audit/check', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'ledgerAuditController.check'); app.post('/tender/:id/ledger/audit/check/again', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'ledgerAuditController.checkAgain'); // 部位台账 app.get('/tender/:id/ledger/bwtz', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.bwtz'); app.post('/tender/:id/ledger/bwtz/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.loadBwtz'); // 台账对比 app.get('/tender/:id/ledger/gather', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.gather'); app.post('/tender/:id/ledger/gather/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'ledgerController.loadGatherData'); // 台账修订 app.get('/tender/:id/revise', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'reviseController.index'); app.post('/tender/:id/revise/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'reviseController.add'); app.post('/tender/:id/revise/cancel', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'reviseController.cancel'); app.post('/tender/:id/revise/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'reviseController.save'); app.post('/setting/revise/show-invalid', sessionAuth, 'reviseController.showInvalid'); // todo 在平台or在项目设置 // 台账修订页面 app.get('/tender/:id/revise/:rid/info', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, reviseAuditCheck, 'reviseController.info'); app.post('/tender/:id/revise/auditors', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'reviseController.reviseAuditors'); app.post('/tender/:id/revise/:rid/info/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'reviseController.loadInfoData'); app.post('/tender/:id/revise/:rid/info/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'reviseController.update'); app.post('/tender/:id/revise/:rid/info/upload-excel/:ueType', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'reviseController.uploadExcel'); app.post('/tender/:id/revise/:rid/info/check', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'reviseController.checkData'); app.post('/tender/:id/revise/:rid/info/deal2sgfh', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'reviseController.deal2sgfh'); app.post('/tender/:id/revise/:rid/file/upload', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'reviseController.uploadFile'); app.post('/tender/:id/revise/:rid/file/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'reviseController.deleteFile'); app.post('/tender/:id/revise/:rid/file/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'reviseController.saveFile'); app.get('/tender/:id/revise/:rid/compare', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, reviseAuditCheck, 'reviseController.compare'); app.get('/tender/:id/revise/:rid/gcl-compare', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, reviseAuditCheck, 'reviseController.gclCompare'); app.post('/tender/:id/revise/:rid/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, reviseAuditCheck, 'reviseController.loadData'); // 单价调整 app.get('/tender/:id/revise/:rid/price', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'reviseController.price'); app.post('/tender/:id/revise/:rid/price/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'reviseController.priceUpdate'); // 查看修订数据 app.get('/tender/:id/revise/history/:rid/info', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'reviseController.history'); app.post('/tender/:id/revise/history/:rid/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'reviseController.loadData'); app.get('/tender/:id/revise/history/:rid/gcl-compare', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'reviseController.gclCompare'); app.get('/tender/:id/revise/history/:rid/compare', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'reviseController.compare'); app.get('/tender/:id/revise/history/:rid/price', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'reviseController.price'); // 修订审批 app.post('/tender/:id/revise/audit/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'reviseController.addAuditor'); app.post('/tender/:id/revise/audit/remove', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'reviseController.removeAuditor'); app.post('/tender/:id/revise/audit/start', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, reviseAuditCheck, tenderBuildCheck, 'reviseController.start'); app.post('/tender/:id/revise/audit/check', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, tenderBuildCheck, 'reviseController.check'); // 签约清单 app.post('/tender/:id/deal/get-data', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'dealBillsController.getData'); app.post('/tender/:id/deal/upload-excel', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'dealBillsController.loadExcel'); app.get('/tender/:id/deal/download/:file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'dealBillsController.download'); app.post('/tender/:id/deal/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'dealBillsController.update'); // 计量台账 // 期计量 app.get('/tender/:id/measure/stage', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'measureController.stage'); app.post('/tender/:id/measure/stage/auditors', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'measureController.stageAuditors'); app.post('/tender/:id/measure/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'measureController.add'); app.post('/tender/:id/measure/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'measureController.save'); app.post('/tender/:id/measure/stage/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'measureController.delete'); // 计量台账 -- 清单汇总 app.get('/tender/:id/measure/gather', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'measureController.gather'); // 计量台账 -- 审核比较 app.get('/tender/:id/measure/compare', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'measureController.compare'); app.post('/tender/:id/measure/compare/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'measureController.loadCompareData'); // 期计量详细 // 本期计量台账 app.get('/tender/:id/measure/stage/:order', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.index'); app.get('/tender/:id/stage/:order', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.index');// 针对旧数据wap端跳转web问题 app.post('/tender/:id/measure/stage/:order/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.getStageData'); app.post('/tender/:id/measure/stage/:order/pos', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.getStagePosData'); app.post('/tender/:id/measure/stage/:order/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.updateStageData'); app.post('/tender/:id/measure/stage/:order/valid-change', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.searchValidChange'); app.post('/tender/:id/measure/stage/:order/use-change', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.useChange'); app.post('/tender/:id/measure/stage/:order/auto-use-change', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.autoUseChange'); app.post('/tender/:id/measure/stage/:order/check', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.check'); app.post('/tender/:id/measure/stage/:order/stageCheck', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.stageCheck'); app.post('/tender/:id/measure/stage/:order/save/cooperation', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.saveCooperationData'); app.post('/tender/:id/measure/stage/:order/im-file/upload', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.uploadImFile'); app.post('/tender/:id/measure/stage/:order/im-file/del', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.deleteImFile'); app.get('/tender/:id/measure/stage/:order/im-file/download', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.downloadImFile'); app.get('/tender/:id/measure/stage/:order/cpd', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.exportStageData'); app.post('/tender/:id/measure/stage/:order/cpd/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.importStageData'); // 暂存计量 app.post('/tender/:id/measure/stage/:order/stash/list', sessionAuth, tenderCheck, subProjectCheck, stageCheck, 'stageController.stashList'); app.post('/tender/:id/measure/stage/:order/stash/add', sessionAuth, tenderCheck, subProjectCheck, stageCheck, 'stageController.addStash'); app.post('/tender/:id/measure/stage/:order/stash/del', sessionAuth, tenderCheck, subProjectCheck, stageCheck, 'stageController.delStash'); app.post('/tender/:id/measure/stage/:order/stash/recover', sessionAuth, tenderCheck, subProjectCheck, stageCheck, 'stageController.recoverStash'); app.post('/tender/:id/measure/stage/:order/importStageSheet', sessionAuth, tenderCheck, subProjectCheck, stageCheck, 'stageController.importStageSheet'); // 计量附件 app.post('/tender/:id/measure/stage/:order/upload/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.uploadFile'); app.get('/tender/:id/measure/stage/:order/download/file/:fid', sessionAuth, 'stageController.downloadFile'); app.post('/tender/:id/measure/stage/:order/delete/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.deleteFile'); app.post('/tender/:id/measure/stage/:order/save/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.saveFile'); app.post('/tender/:id/measure/stage/:order/check/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.checkFile'); app.post('/tender/:id/measure/stage/:order/download/compresse-file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.downloadZip'); app.post('/tender/:id/measure/stage/:order/save/shoufang', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.saveShoufang'); app.post('/tender/:id/measure/stage/:order/shoufang/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.shoufangAtt'); // 中间计量 app.get('/tender/:id/measure/stage/:order/detail', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.detail'); app.post('/tender/:id/measure/stage/:order/detail/build', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.buildDetailData'); app.post('/tender/:id/measure/stage/:order/detail/adv', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.setAdvancedConfig'); app.post('/tender/:id/measure/stage/:order/detail/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.loadDetailRelaData'); app.post('/tender/:id/measure/stage/:order/detail/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.saveDetailData'); app.post('/tender/:id/measure/stage/:order/detail/add-img', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.addCalcImage'); app.post('/tender/:id/measure/stage/:order/detail/merge-img', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.mergeCalcImage'); // 合同支付 app.get('/tender/:id/measure/stage/:order/pay', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.pay'); app.post('/tender/:id/measure/stage/:order/pay/detail', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.chapterDetail'); app.post('/tender/:id/measure/stage/:order/pay/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.savePayData'); app.post('/tender/:id/measure/stage/:order/pay/upload/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.payUploadFile'); app.get('/tender/:id/measure/stage/:order/pay/download/file/:fid', sessionAuth, 'stageController.payDownloadFile'); app.post('/tender/:id/measure/stage/:order/pay/delete/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.payDeleteFile'); app.get('/tender/:id/pay', sessionAuth, tenderCheck, subProjectCheck, 'payController.index'); app.post('/tender/:id/pay/add', sessionAuth, tenderCheck, subProjectCheck, 'payController.add'); app.post('/tender/:id/pay/delete', sessionAuth, tenderCheck, subProjectCheck, 'payController.del'); app.post('/tender/:id/pay/save', sessionAuth, tenderCheck, subProjectCheck, 'payController.save'); app.post('/tender/:id/pay/auditors', sessionAuth, tenderCheck, subProjectCheck, 'payController.loadAuditors'); app.get('/tender/:id/pay/:order/detail', sessionAuth, tenderCheck, subProjectCheck, phasePayCheck, 'payController.detail'); app.post('/tender/:id/pay/:order/load', sessionAuth, tenderCheck, subProjectCheck, phasePayCheck, 'payController.detailLoad'); app.post('/tender/:id/pay/:order/update', sessionAuth, tenderCheck, subProjectCheck, phasePayCheck, 'payController.detailUpdate'); app.post('/tender/:id/pay/:order/file/upload', sessionAuth, tenderCheck, subProjectCheck, phasePayCheck, 'payController.uploadFile'); app.post('/tender/:id/pay/:order/file/delete', sessionAuth, tenderCheck, subProjectCheck, phasePayCheck, 'payController.deleteFile'); // 合同支付审批 app.post('/tender/:id/pay/:order/audit/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, phasePayCheck, 'payController.addAudit'); app.post('/tender/:id/pay/:order/audit/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, phasePayCheck, 'payController.deleteAudit'); app.post('/tender/:id/pay/:order/audit/start', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, phasePayCheck, 'payController.auditStart'); app.post('/tender/:id/pay/:order/audit/check', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, phasePayCheck, 'payController.auditCheck'); app.post('/tender/:id/pay/:order/audit/checkAgain', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, phasePayCheck, 'payController.auditCheckAgain'); app.post('/tender/:id/pay/:order/audit/checkCancel', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, phasePayCheck, 'payController.auditCheckCancel'); // 变更概况 app.get('/tender/:id/measure/stage/:order/change', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.change'); app.post('/tender/:id/measure/stage/:order/change/data', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.getChangeData'); app.post('/tender/:id/measure/stage/:order/change/iData', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.getImportChangeData'); app.post('/tender/:id/measure/stage/:order/change/detail', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.changeDetail'); // 审批 app.post('/tender/:id/measure/stage/:order/audit/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.addAudit'); app.post('/tender/:id/measure/stage/:order/audit/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.deleteAudit'); app.post('/tender/:id/measure/stage/:order/audit/start', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, tenderBuildCheck, 'stageController.startAudit'); app.post('/tender/:id/measure/stage/:order/audit/check', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, tenderBuildCheck, 'stageController.checkAudit'); app.get('/tender/:id/measure/stage/:order/audit/check/again', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, tenderBuildCheck, 'stageController.checkAuditAgain'); app.get('/tender/:id/measure/stage/:order/audit/check/cancel', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, tenderBuildCheck, 'stageController.checkAuditCancel'); app.post('/tender/:id/measure/stage/:order/audit/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.saveAudit'); // 部位台账 app.get('/tender/:id/measure/stage/:order/bwtz', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.bwtz'); app.post('/tender/:id/measure/stage/:order/bwtz/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.loadBwtz'); // 清单汇总 app.get('/tender/:id/measure/stage/:order/gather', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.gather'); // 审核比较 app.get('/tender/:id/measure/stage/:order/compare', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.compare'); app.post('/tender/:id/measure/stage/:order/compare/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.compareAuditor'); // 附加功能 // 甲供材料 app.get('/tender/:id/measure/stage/:order/extra/jgcl', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.jgcl'); app.post('/tender/:id/measure/stage/:order/extra/jgcl/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.loadJgcl'); app.post('/tender/:id/measure/stage/:order/extra/jgcl/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.updateJgcl'); // 永久材料 app.get('/tender/:id/measure/stage/:order/extra/yjcl', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.yjcl'); app.post('/tender/:id/measure/stage/:order/extra/yjcl/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.loadYjcl'); app.post('/tender/:id/measure/stage/:order/extra/yjcl/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.updateYjcl'); // 奖罚金 app.get('/tender/:id/measure/stage/:order/extra/bonus', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.bonus'); app.post('/tender/:id/measure/stage/:order/extra/bonus/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.loadBonus'); app.post('/tender/:id/measure/stage/:order/extra/bonus/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.updateBonus'); // 其他 app.get('/tender/:id/measure/stage/:order/extra/other', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.other'); app.post('/tender/:id/measure/stage/:order/extra/other/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.loadOther'); app.post('/tender/:id/measure/stage/:order/extra/other/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.updateOther'); app.post('/tender/:id/measure/stage/:order/extra/upload/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.uploadFile'); app.get('/tender/:id/measure/stage/:order/extra/download/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.downloadFile'); app.post('/tender/:id/measure/stage/:order/extra/delete/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.deleteFile'); // 安全生产 app.get('/tender/:id/measure/stage/:order/extra/safeProd', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.safeProd'); app.post('/tender/:id/measure/stage/:order/extra/safeProd/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.loadSafeProd'); app.post('/tender/:id/measure/stage/:order/extra/safeProd/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.updateSafeProd'); // 临时用地 app.get('/tender/:id/measure/stage/:order/extra/tempLand', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.tempLand'); app.post('/tender/:id/measure/stage/:order/extra/tempLand/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.loadTempLand'); app.post('/tender/:id/measure/stage/:order/extra/tempLand/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageExtraController.updateTempLand'); // 关联台账 app.get('/tender/:id/measure/stage/:order/rela', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageRelaController.index'); app.post('/tender/:id/measure/stage/:order/rela/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageRelaController.add'); app.post('/tender/:id/measure/stage/:order/rela/del', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageRelaController.del'); app.post('/tender/:id/measure/stage/:order/rela/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageRelaController.update'); app.get('/tender/:id/measure/stage/:order/rela/detail/:trid', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageRelaController.detail'); app.post('/tender/:id/measure/stage/:order/rela/detail/:trid/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageRelaController.load'); app.post('/tender/:id/measure/stage/:order/rela/detail/:trid/im-file/del', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageRelaController.deleteImFile'); app.post('/tender/:id/measure/stage/:order/rela/detail/:trid/im-file/upload', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageRelaController.uploadImFile'); app.get('/tender/:id/measure/stage/:order/rela/detail/:trid/im-file/download', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageRelaController.downloadImFile'); // 期审批管理 app.get('/tender/:id/measure/stage/:order/manager', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'stageController.manager'); app.post('/tender/:id/measure/stage/:order/manager/audit/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, tenderBuildCheck, 'stageController.managerAuditDelete'); // 过程结算 app.get('/tender/:id/settle', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'settleController.list'); app.post('/tender/:id/settle/auditors', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'settleController.loadAuditors'); app.post('/tender/:id/settle/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'settleController.add'); app.post('/tender/:id/settle/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'settleController.save'); app.post('/tender/:id/settle/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'settleController.delete'); // 结算汇总 app.get('/tender/:id/settle/gather', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'settleController.gather'); app.post('/tender/:id/settle/gather/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'settleController.loadGatherData'); // 结算期 app.get('/tender/:id/settle/:sorder', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, settleCheck, 'settleController.index'); app.get('/tender/:id/settle/:sorder/select', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, settleCheck, 'settleController.select'); app.get('/tender/:id/settle/:sorder/ledger', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, settleCheck, 'settleController.ledger'); app.post('/tender/:id/settle/:sorder/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, settleCheck, 'settleController.loadSettleData'); app.post('/tender/:id/settle/:sorder/select/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, settleCheck, 'settleController.updateSelect'); app.post('/tender/:id/settle/:sorder/file/upload', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, settleCheck, 'settleController.uploadFile'); app.post('/tender/:id/settle/:sorder/file/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, settleCheck, 'settleController.deleteFile'); app.post('/tender/:id/settle/:sorder/file/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, settleCheck, 'settleController.saveFile'); // 结算审批 app.post('/tender/:id/settle/:sorder/audit/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, settleCheck, 'settleController.addAudit'); app.post('/tender/:id/settle/:sorder/audit/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, settleCheck, 'settleController.deleteAudit'); app.post('/tender/:id/settle/:sorder/audit/start', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, settleCheck, 'settleController.auditStart'); app.post('/tender/:id/settle/:sorder/audit/check', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, settleCheck, 'settleController.auditCheck'); app.post('/tender/:id/settle/:sorder/audit/checkAgain', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, settleCheck, 'settleController.auditCheckAgain'); app.post('/tender/:id/settle/:sorder/audit/checkCancel', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, settleCheck, 'settleController.auditCheckCancel'); // 报表 app.get('/tender/:id/report', sessionAuth, tenderCheck, subProjectCheck, 'reportController.index'); app.get('/tender/:id/change/:cid/report', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'reportController.indexForChange'); app.get('/tender/:id/change/plan/:cplnid/report', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'reportController.indexForChangePlan'); app.get('/tender/:id/change/project/:cprjid/report', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'reportController.indexForChangeProject'); app.get('/tender/:id/change/apply/:caid/report', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'reportController.indexForChangeApply'); app.get('/tender/:id/measure/stage/:order/report', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'reportController.index'); app.get('/sp/:id/payment/:pid/safe/:did/report', sessionAuth, subProjectCheck, paymentTenderCheck, paymentDetailCheck, 'reportController.indexForPaymentSafe'); app.get('/budget/:id/report', sessionAuth, budgetCheck, 'reportController.indexForDynamicGrandTotal'); app.get('/tender/:id/archiveReport', sessionAuth, tenderCheck, subProjectCheck, 'reportArchiveController.index'); app.post('/tender/report_api/getReportArchive', sessionAuth, 'reportArchiveController.getReportArchive'); app.post('/tender/report_api/getReportArchive4bz', sessionAuth, 'reportArchiveController.getReportArchive4bz'); app.get('/getArchivedFileByUUID/:uuid/:rptName', sessionAuth, 'reportArchiveController.getArchivedFileByUUID'); app.get('/tender/:id/measure/stage/:order/archiveReport', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'reportArchiveController.index'); app.get('/archive/pdf/show', sessionAuth, 'reportArchiveController.pdfShow'); app.get('/printReport/:size', sessionAuth, 'reportController.showPrintPage'); app.get('/individualReport/:size', sessionAuth, 'reportController.showIndividualPage'); app.post('/tender/report_api/getReport', sessionAuth, subProjectCheck, 'reportController.getReport'); app.post('/report_api/getReport', sessionAuth, 'reportController.getReport'); app.post('/tender/report_api/getDirectReport', sessionAuth, 'reportController.createExcelFilesFromDirectData'); app.post('/tender/report_api/getMultiReports', sessionAuth, subProjectCheck, 'reportController.getMultiReportsEx'); app.post('/report_api/getMultiReports', sessionAuth, 'reportController.getMultiReportsEx'); app.post('/tender/report_api/getTestReport', sessionAuth, 'reportController.getTestReport'); app.post('/tender/report_api/createExcelFiles', sessionAuth, 'reportController.createExcelFilesEx'); app.post('/tender/report_api/createExcelFilesInOneBook', sessionAuth, 'reportController.createExcelFilesInOneBookEx'); // app.post('/tender/report_api/createExcelFiles', sessionAuth, 'reportController.createExcelFilesFromLocal'); // app.post('/tender/report_api/createExcelFilesInOneBook', sessionAuth, 'reportController.createExcelFilesFromLocal'); app.get('/getFileByUUID/:uuid/:rptName/:suffix', sessionAuth, 'reportController.getFileByUUID'); // rptRouter.get('/getFileByUUID/:uuid/:rptName/:suffix', reportController.getFileByUUID); app.post('/tender/report_api/createSignatureRole', sessionAuth, 'signatureController.createSignatureRole'); app.post('/tender/report_api/updateSignatureUsed', sessionAuth, datetimeFill, 'signatureController.updateSignatureUsed'); app.post('/tender/report_api/updateRoleRelationship', sessionAuth, 'signatureController.updateRoleRel'); app.post('/tender/report_api/updateMultiRoleRelationship', sessionAuth, 'signatureController.updateCrossTendersRoleRelationship'); app.post('/tender/report_api/updateMultiChangesRoleRelationship', sessionAuth, 'signatureController.updateMultiChangesRoleRelationship'); app.post('/tender/report_api/updateMultiOtherRoleRelationship', sessionAuth, 'signatureController.updateMultiOtherRoleRelationship'); app.post('/tender/report_api/getMultiRoleRelationships', sessionAuth, 'signatureController.getMultiRoleRptRels'); app.post('/tender/report_api/createRoleRelationship', sessionAuth, 'signatureController.createRoleRel'); app.post('/tender/report_api/updateCustNode', sessionAuth, 'reportController.updateCustNode'); app.post('/report/cDefine', sessionAuth, 'reportController.setCustomDefine'); app.post('/tender/report_api/addArchive/:prjId/:stgId/:bzId/:tdId/:rptId', sessionAuth, 'reportArchiveController.addReportArchive'); app.post('/tender/report_api/addParentChildrenArchive/:prjId/:stgId/:bzId/:tdId/:rptId/:splitInfo', sessionAuth, 'reportArchiveController.addParentChildrenArchiveReports'); app.post('/tender/report_api/updateArchive/:prjId/:stgId/:bzId/:tdId/:rptId/:orgName', sessionAuth, 'reportArchiveController.updateReportArchive'); app.post('/tender/report_api/removeArchive/:prjId/:stgId/:bzId/:rptId/:orgName', sessionAuth, 'reportArchiveController.removeReportArchive'); app.post('/tender/report_api/addArchiveEncryption', sessionAuth, 'reportArchiveController.addReportArchiveEncryption'); app.post('/tender/report_api/updateArchiveEncryption', sessionAuth, 'reportArchiveController.updateReportArchiveEncryption'); app.post('/tender/report_api/removeArchiveEncryption', sessionAuth, 'reportArchiveController.removeReportArchiveEncryption'); app.post('/tender/:id/sendReportFileMsg', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'reportArchiveController.sendFileMsg'); app.post('/tender/:id/measure/stage/:order/sendReportFileMsg', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'reportArchiveController.sendFileMsg'); app.post('/tender/:id/sendOtherReportFileMsg', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'reportArchiveController.sendOtherFileMsg'); // 电子签名 app.get('/tender/:id/signReport', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'reportArchiveController.signReport'); app.post('/tender/:id/signReport/post', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'reportArchiveController.signPost'); app.post('/tender/:id/signReport/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'reportArchiveController.signFile'); // 变更管理 app.get('/tender/:id/change', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.index'); app.get('/tender/:id/change/status/:status', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.status'); app.post('/tender/:id/change/auditors', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.changeAuditors'); app.post('/tender/:id/change/newCode', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.newCode'); app.post('/tender/:id/change/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'changeController.add'); app.post('/tender/:id/change/defaultBills', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.defaultBills'); app.post('/tender/:id/change/:cid/info/file/upload', sessionAuth, 'changeController.uploadFile'); app.get('/change/download/file/:id', sessionAuth, 'changeController.downloadFile'); app.post('/change/download/file/:id', sessionAuth, 'changeController.checkFile'); app.post('/tender/:id/change/:cid/info/file/delete', sessionAuth, 'changeController.deleteFile'); app.post('/tender/:id/change/:cid/download/compresse-file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.downloadZip'); app.post('/tender/:id/change/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'changeController.delete'); app.post('/tender/:id/change/bills', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.bills'); app.post('/tender/:id/change/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeAuditCheck, 'changeController.save'); app.post('/tender/:id/change/approval', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'changeController.approval'); app.post('/tender/:id/change/check/again', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, changeCheck, changeAuditCheck, 'changeController.checkAgain'); app.post('/tender/:id/change/check/revise', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, changeCheck, changeAuditCheck, 'changeController.checkRevise'); app.post('/tender/:id/change/cancel/revise', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, changeCheck, changeAuditCheck, 'changeController.cancelRevise'); app.post('/tender/:id/change/:cid/check/codeRepeat', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.checkCodeRepeat'); app.post('/tender/:id/change/:cid/info/copy', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.copyChange'); app.post('/tender/:id/change/batch/fun', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.batchChangeFun'); // 变更单位管理 app.post('/change/update/company', sessionAuth, 'changeController.updateCompany'); // 变更令 - 新版本 app.get('/tender/:id/change/:cid/information', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeCheck, changeAuditCheck, 'changeController.information'); app.get('/tender/:id/change/:cid/relation', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeCheck, 'changeController.relation'); app.post('/tender/:id/change/:cid/information/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeCheck, 'changeController.saveListsData'); app.post('/tender/:id/change/:cid/information/audit/start', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeCheck, changeAuditCheck, 'changeController.startAudit'); app.post('/tender/:id/change/:cid/information/file/upload', sessionAuth, 'changeController.uploadFile'); app.post('/tender/:id/change/:cid/information/file/delete', sessionAuth, 'changeController.deleteFile'); app.post('/tender/:id/change/:cid/information/copy', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.copyChange'); app.post('/tender/:id/change/:cid/information/audit/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeCheck, 'changeController.addAudit'); app.post('/tender/:id/change/:cid/information/audit/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeCheck, 'changeController.deleteAudit'); app.post('/tender/:id/change/:cid/information/audit/spgroup', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeCheck, 'changeController.changeSpGroup'); app.post('/tender/:id/change/cancel/audit', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeCheck, 'changeController.checkAuditCancel'); app.post('/tender/:id/change/:cid/information/audit/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeCheck, changeAuditCheck, 'changeController.saveAudit'); // 变更新增部位页(添加台账清单-台账模式) app.get('/tender/:id/change/:cid/information/revise', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeCheck, 'changeController.reviseInfo'); app.post('/tender/:id/change/:cid/information/revise/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeCheck, 'changeController.updateRevise'); // 添加台账清单-清单模式 app.get('/tender/:id/change/:cid/information/list', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeCheck, 'changeController.addListInfo'); // app.post('/tender/:id/change/:cid/information/list/update', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeCheck, 'changeController.updateRevise'); // 变更立项 app.get('/tender/:id/change/project', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.project'); app.get('/tender/:id/change/project/status/:status', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.projectStatus'); app.post('/tender/:id/change/project/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'changeController.projectAdd'); app.post('/tender/:id/change/project/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'changeController.projectDelete'); app.get('/tender/:id/change/project/:cpid/information', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeProjectCheck, changeProjectAuditCheck, 'changeController.projectInformation'); app.post('/tender/:id/change/project/:cpid/information/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeProjectCheck, 'changeController.projectInformationSave'); app.post('/tender/:id/change/project/:cpid/information/file/upload', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeProjectCheck, 'changeController.uploadProjectFile'); app.post('/tender/:id/change/project/:cpid/information/file/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeProjectCheck, 'changeController.deleteProjectFile'); app.get('/tender/:id/change/project/:cpid/information/file/:fid/download', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeProjectCheck, 'changeController.downloadProjectFile'); app.post('/tender/:id/change/project/:cpid/information/audit/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeProjectCheck, 'changeController.addProjectAudit'); app.post('/tender/:id/change/project/:cpid/information/audit/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeProjectCheck, 'changeController.deleteProjectAudit'); app.post('/tender/:id/change/project/:cpid/information/audit/start', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeProjectCheck, changeProjectAuditCheck, tenderBuildCheck, 'changeController.startProjectAudit'); app.post('/tender/:id/change/project/:cpid/information/audit/check', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeProjectCheck, tenderBuildCheck, 'changeController.checkProjectAudit'); app.post('/tender/:id/change/project/:cpid/information/xsaudit/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeProjectCheck, 'changeController.addProjectXsAudit'); app.post('/tender/:id/change/project/:cpid/information/xsaudit/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeProjectCheck, 'changeController.deleteProjectXsAudit'); app.post('/tender/:id/change/project/cancel/audit', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, changeProjectCheck, 'changeController.checkProjectAuditCancel'); app.post('/tender/:id/change/project/check/revise', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, changeProjectCheck, 'changeController.checkProjectRevise'); app.post('/tender/:id/change/project/cancel/revise', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, changeProjectCheck, 'changeController.cancelProjectRevise'); app.post('/tender/:id/change/project/check/again', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, changeProjectCheck, 'changeController.checkProjectAgain'); app.post('/tender/:id/change/project/:cpid/information/audit/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeProjectCheck, 'changeController.saveProjectAudit'); app.post('/tender/:id/change/project/:cpid/information/audit/spgroup', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeProjectCheck, 'changeController.changeProjectSpGroup'); app.post('/tender/:id/change/project/auditors', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.changeProjectAuditors'); // 变更申请 app.get('/tender/:id/change/apply', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.apply'); app.get('/tender/:id/change/apply/status/:status', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.applyStatus'); app.post('/tender/:id/change/apply/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'changeController.applyAdd'); app.post('/tender/:id/change/apply/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'changeController.applyDelete'); app.get('/tender/:id/change/apply/:caid/information', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeApplyCheck, changeApplyAuditCheck, 'changeController.applyInformation'); app.post('/tender/:id/change/apply/:caid/information/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeApplyCheck, 'changeController.applyInformationSave'); app.post('/tender/:id/change/apply/:caid/information/file/upload', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeApplyCheck, 'changeController.uploadApplyFile'); app.post('/tender/:id/change/apply/:caid/information/file/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeApplyCheck, 'changeController.deleteApplyFile'); app.get('/tender/:id/change/apply/:caid/information/file/:fid/download', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeApplyCheck, 'changeController.downloadApplyFile'); app.post('/tender/:id/change/apply/:caid/information/audit/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeApplyCheck, 'changeController.addApplyAudit'); app.post('/tender/:id/change/apply/:caid/information/audit/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeApplyCheck, 'changeController.deleteApplyAudit'); app.post('/tender/:id/change/apply/:caid/information/audit/start', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeApplyCheck, changeApplyAuditCheck, tenderBuildCheck, 'changeController.startApplyAudit'); app.post('/tender/:id/change/apply/:caid/information/audit/check', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeApplyCheck, tenderBuildCheck, 'changeController.checkApplyAudit'); app.get('/tender/:id/change/apply/:caid/information/notice', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeApplyCheck, 'changeController.applyInformationNotice'); app.post('/tender/:id/change/apply/:caid/information/list/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeApplyCheck, 'changeController.saveApplyListsData'); app.post('/tender/:id/change/apply/cancel/audit', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, changeApplyCheck, 'changeController.checkApplyAuditCancel'); app.post('/tender/:id/change/apply/check/revise', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, changeApplyCheck, 'changeController.checkApplyRevise'); app.post('/tender/:id/change/apply/cancel/revise', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, changeApplyCheck, 'changeController.cancelApplyRevise'); app.post('/tender/:id/change/apply/check/again', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, changeApplyCheck, 'changeController.checkApplyAgain'); app.post('/tender/:id/change/apply/:caid/information/audit/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeApplyCheck, 'changeController.saveApplyAudit'); app.post('/tender/:id/change/apply/:caid/information/audit/spgroup', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeApplyCheck, 'changeController.changeApplySpGroup'); app.post('/tender/:id/change/apply/auditors', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.changeApplyAuditors'); // 变更方案 app.get('/tender/:id/change/plan', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.plan'); app.get('/tender/:id/change/plan/status/:status', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.planStatus'); app.post('/tender/:id/change/plan/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'changeController.planAdd'); app.post('/tender/:id/change/plan/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'changeController.planDelete'); app.get('/tender/:id/change/plan/:cpid/info', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changePlanCheck, 'changeController.planInformation');// 针对旧数据wap端跳转web问题 app.get('/tender/:id/change/plan/:cpid/information', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changePlanCheck, changePlanAuditCheck, 'changeController.planInformation'); app.post('/tender/:id/change/plan/:cpid/information/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changePlanCheck, 'changeController.planInformationSave'); app.post('/tender/:id/change/plan/:cpid/information/file/upload', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changePlanCheck, 'changeController.uploadPlanFile'); app.post('/tender/:id/change/plan/:cpid/information/file/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changePlanCheck, 'changeController.deletePlanFile'); app.get('/tender/:id/change/plan/:cpid/information/file/:fid/download', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changePlanCheck, 'changeController.downloadPlanFile'); app.post('/tender/:id/change/plan/:cpid/information/audit/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changePlanCheck, 'changeController.addPlanAudit'); app.post('/tender/:id/change/plan/:cpid/information/audit/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changePlanCheck, 'changeController.deletePlanAudit'); app.post('/tender/:id/change/plan/:cpid/information/audit/start', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changePlanCheck, changePlanAuditCheck, tenderBuildCheck, 'changeController.startPlanAudit'); app.post('/tender/:id/change/plan/:cpid/information/audit/check', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changePlanCheck, tenderBuildCheck, 'changeController.checkPlanAudit'); app.post('/tender/:id/change/plan/:cpid/information/list/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changePlanCheck, 'changeController.savePlanListsData'); app.post('/tender/:id/change/plan/cancel/audit', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, changePlanCheck, 'changeController.checkPlanAuditCancel'); app.post('/tender/:id/change/plan/check/revise', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, changePlanCheck, 'changeController.checkPlanRevise'); app.post('/tender/:id/change/plan/cancel/revise', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, changePlanCheck, 'changeController.cancelPlanRevise'); app.post('/tender/:id/change/plan/check/again', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, changePlanCheck, 'changeController.checkPlanAgain'); app.post('/tender/:id/change/plan/:cpid/information/audit/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changePlanCheck, 'changeController.savePlanAudit'); app.post('/tender/:id/change/plan/:cpid/information/audit/spgroup', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changePlanCheck, 'changeController.changePlanSpGroup'); app.post('/tender/:id/change/plan/auditors', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'changeController.changePlanAuditors'); // 材料调差 app.get('/tender/:id/measure/material', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'materialController.index'); app.post('/tender/:id/measure/material/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'materialController.add'); app.post('/tender/:id/measure/material/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'materialController.delete'); app.post('/tender/:id/measure/material/auditors', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'materialController.materialAuditors'); app.post('/tender/:id/measure/material/:order/save/decimal', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.saveDecimal'); app.post('/tender/:id/measure/material/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'materialController.save'); app.post('/tender/:id/measure/material/save/data', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'materialController.saveData'); // 审批 app.post('/tender/:id/measure/material/:order/audit/add', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.addAudit'); app.post('/tender/:id/measure/material/:order/audit/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.deleteAudit'); app.post('/tender/:id/measure/material/:order/audit/start', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, tenderBuildCheck, 'materialController.startAudit'); app.post('/tender/:id/measure/material/:order/audit/check', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, tenderBuildCheck, 'materialController.checkAudit'); app.get('/tender/:id/measure/material/:order/audit/check/again', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.checkAuditAgain'); app.post('/tender/:id/measure/material/:order/audit/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.saveAudit'); // 调差工料 app.get('/tender/:id/measure/material/:order', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.info'); app.post('/tender/:id/measure/material/:order/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.saveBillsData'); // 月信息价 app.post('/tender/:id/measure/material/:order/month/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.saveMonth'); // 指数调差 app.get('/tender/:id/measure/material/:order/exponent', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.exponent'); app.post('/tender/:id/measure/material/:order/exponent/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.saveExponentData'); // 调差清单 app.get('/tender/:id/measure/material/:order/list', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.list'); app.post('/tender/:id/measure/material/:order/list/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.saveListsData'); app.post('/tender/:id/measure/material/:order/list/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.loadListsData'); // 调差清单设置页 app.get('/tender/:id/measure/material/:order/checklist', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.checklist'); app.post('/tender/:id/measure/material/:order/checklist/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.loadListsData'); app.post('/tender/:id/measure/material/:order/checklist/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.saveChecklistData'); // 附件 app.get('/tender/:id/measure/material/:order/file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.file'); app.post('/tender/:id/measure/material/:order/file/upload', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.upload'); app.get('/tender/:id/measure/material/:order/file/:fid/download', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'materialController.downloadFile'); app.post('/tender/:id/measure/material/:order/file/find', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.getCurMatericalFiles'); app.post('/tender/:id/measure/material/:order/file/delete', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, materialCheck, 'materialController.deleteFile'); app.post('/tender/:id/measure/material/:order/file/download/compresse-file', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'materialController.downloadZip'); // 调差新建期数据获取 app.post('/tender/:id/measure/material/gcl/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'materialController.loadGclData'); // 标段对比 app.get('/tools/check-tz', sessionAuth, 'spssController.checkTz'); app.post('/tools/load', sessionAuth, 'spssController.loadBaseData'); // wap页面 app.get('/wap', 'wapController.index'); app.get('/wap/login', 'wapController.index'); app.post('/wap/login', 'wapController.login'); app.get('/wap/logout', 'wapController.logout'); app.get('/wap/dashboard', sessionAuth, 'wapController.dashboard'); app.get('/wap/dashboard/msg/:id', sessionAuth, 'wapController.msg'); app.get('/wap/subproj', sessionAuth, 'wapController.subproj'); app.get('/wap/sp/:id/list', sessionAuth, subProjectCheck, 'wapController.list'); app.get('/wap/tender/:id', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'wapController.tender'); app.get('/wap/tender/:id/stage/:order', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'wapController.stage'); app.get('/wap/tender/:id/change/:cid/info', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeCheck, changeAuditCheck, 'wapController.change'); app.get('/wap/tender/:id/change/plan/:cpid/info', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'wapController.changePlan'); app.post('/wap/tender/:id/change/approval', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, tenderBuildCheck, 'wapController.changeApproval'); app.get('/wap/tender/:id/revise/:rid/info', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'wapController.revise'); app.get('/wap/tender/:id/advance', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'wapController.advance'); app.get('/wap/tender/:id/advance/:order/detail', sessionAuth, tenderCheck, subProjectCheck, advanceCheck, 'wapController.advanceDetail'); // 针对企业微信访问判断去掉wap就能直达web端 app.get('/wap/tender/:id/measure/stage/:order', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'wapController.stage'); app.get('/wap/tender/:id/change', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'wapController.changeIndex'); app.get('/wap/tender/:id/change/:cid/information', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeCheck, changeAuditCheck, 'wapController.change'); app.get('/wap/tender/:id/change/project/:cpid/information', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeProjectCheck, changeProjectAuditCheck, 'wapController.changeProject'); app.get('/wap/tender/:id/change/apply/:caid/information', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changeApplyCheck, changeApplyAuditCheck, 'wapController.changeApply'); app.get('/wap/tender/:id/change/plan/:cpid/information', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, changePlanCheck, changePlanAuditCheck, 'wapController.changePlan'); // 微信 app.get('/wx', 'wechatController.index'); app.post('/wx', 'wechatController.replyMessage'); app.get('/wx/oauth', 'wechatController.oauth'); app.get('/wx/bind', wechatAuth, 'wechatController.bind'); app.post('/wx/bindwx', wechatAuth, 'wechatController.bindwx'); app.get('/wx/url2wap', wechatAuth, 'wechatController.url2wap'); app.get('/wx/project', wechatAuth, 'wechatController.project'); app.get('/wx/test', 'wechatController.testwx'); app.get('/MP_verify_t3MkWAMqplVxPjmr.txt', 'wechatController.oauthTxt'); // 投资进度 app.get('/tender/:id/schedule', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, scheduleCheck, 'scheduleController.index'); app.get('/tender/:id/schedule/ledger', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, scheduleCheck, 'scheduleController.ledger'); app.post('/tender/:id/schedule/ledger/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'scheduleController.loadLedgerData'); app.post('/tender/:id/schedule/ledger/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'scheduleController.saveLedger'); app.get('/tender/:id/schedule/plan', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, scheduleCheck, 'scheduleController.plan'); app.post('/tender/:id/schedule/plan/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'scheduleController.savePlan'); app.get('/tender/:id/schedule/stage', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, scheduleCheck, 'scheduleController.stageTp'); app.get('/tender/:id/schedule/stage/order/:order', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, scheduleCheck, 'scheduleController.stageTp'); app.post('/tender/:id/schedule/stage/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'scheduleController.saveStageTp'); app.get('/tender/:id/schedule/stage/gcl', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, scheduleCheck, 'scheduleController.stageGcl'); app.post('/tender/:id/schedule/stage/gcl/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'scheduleController.saveStageGcl'); app.post('/tender/:id/schedule/stage/:order/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'scheduleController.loadTpLedgerData'); app.post('/tender/:id/schedule/stage/gcl/:order/load', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'scheduleController.loadGclLedgerData'); app.post('/tender/:id/schedule/audit/save', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'scheduleController.saveAudit'); // 书签 app.post('/tender/:id/ledger/tag', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'tenderController.billsTag'); app.post('/tender/:id/revise/:rid/info/tag', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'tenderController.billsTag'); app.post('/tender/:id/measure/stage/:order/tag', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'tenderController.billsTag'); app.post('/tender/:id/settle/:sorder/ledger/tag', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, settleCheck, 'tenderController.billsTag'); // 总分包 app.post('/tender/:id/ledger/sumLoad', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, 'tenderController.sumLoad'); app.post('/tender/:id/measure/stage/:order/sumLoad', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'tenderController.sumLoad'); app.post('/tender/:id/revise/:rid/info/sumLoad', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, reviseCheck, 'tenderController.sumLoad'); // 多人协同 app.post('/tender/:id/measure/stage/:order/ass', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'tenderController.auditAssist'); app.post('/tender/:id/measure/stage/:order/ass-confirm', sessionAuth, tenderCheck, subProjectCheck, uncheckTenderCheck, stageCheck, 'tenderController.auditAssistConfirm'); // 扫码登录 app.get('/wxAuth', 'loginController.wxAuth'); app.get('/wxproject', 'loginController.wxProject'); app.get('/wx/url2web', 'loginController.url2web'); // 收方单附件页,免session app.get('/wap/shoufang/upload', 'wapController.shoufangUpload'); app.post('/wap/shoufang/upfile', 'wapController.shoufangUpFile'); app.post('/wap/shoufang/delfile', 'wapController.shoufangDeleteFile'); app.post('/wap/shoufang/editfile', 'wapController.shoufangEditFile'); app.get('/wap/shoufang/download/file/:fid', 'wapController.shoufangDownloadFile'); // 企业微信回调 app.get('/wx/work/callback/command', 'wechatController.command'); app.post('/wx/work/callback/command', 'wechatController.postCommand'); app.get('/WW_verify_CZwGPbI7BRGOBUX1.txt', 'wechatController.oauthWxWorkTxt');// 可信域名配置 app.get('/wx/work/:corpid/oauth', 'wechatController.workOauth'); app.get('/wx/work/:corpid/bind', wxWorkAuth, 'wechatController.workBind'); app.post('/wx/work/bindwx', wxWorkAuth, 'wechatController.workBindwx'); app.get('/wx/work/:corpid/url2wap', wxWorkAuth, 'wechatController.url2wap4work'); app.get('/wx/work/:corpid/project', wxWorkAuth, 'wechatController.workProject'); app.get('/wx/work/:corpid/test', wxWorkAuth, 'wechatController.workTest'); app.get('/wx/tips', 'wechatController.tips'); };