router.js 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396
  1. 'use strict';
  2. module.exports = app => {
  3. // session验证中间件
  4. const sessionAuth = app.middlewares.sessionAuth();
  5. // 创建时间自动填充中间件
  6. const datetimeFill = app.middlewares.datetimeFill();
  7. // 项目管理员判断中间件
  8. const projectManagerCheck = app.middlewares.projectManagerCheck();
  9. // 标段读取中间件
  10. const tenderCheck = app.middlewares.tenderCheck();
  11. // 期读取中间件
  12. const stageCheck = app.middlewares.stageCheck();
  13. // 材料调差读取中间件
  14. const materialCheck = app.middlewares.materialCheck();
  15. // 第三方接口认证判断中间件
  16. const api2otherCheck = app.middlewares.api2otherCheck();
  17. // 微信验证登录中间件
  18. const wechatAuth = app.middlewares.wechatAuth();
  19. // 预付款中间件
  20. const advanceCheck = app.middlewares.advanceCheck();
  21. // 登入登出相关
  22. app.get('/login', 'loginController.index');
  23. app.get('/login/port', api2otherCheck, 'loginController.port');
  24. app.get('/', 'loginController.index');
  25. app.get('/logout', 'loginController.logout');
  26. app.post('/login', 'loginController.login');
  27. app.post('/login/port', 'loginController.loginPort');
  28. app.get('/project/name', 'loginController.projectName');
  29. app.get('/sign', 'signController.index');
  30. app.post('/sign/save', 'signController.save');
  31. app.post('/reset/password', 'loginController.resetPassword');
  32. // 用户信息初始化相关
  33. app.get('/boot', sessionAuth, 'bootController.index');
  34. app.post('/boot', sessionAuth, 'bootController.boot');
  35. // 控制面板相关
  36. app.get('/dashboard', sessionAuth, 'dashboardController.index');
  37. app.get('/dashboard/msg/list', sessionAuth, 'dashboardController.msgList');
  38. app.get('/dashboard/msg/add/:id', sessionAuth, 'dashboardController.msgAdd');
  39. app.post('/dashboard/msg/set/:id', sessionAuth, datetimeFill, 'dashboardController.msgSet');
  40. app.get('/dashboard/msg/del/:id', sessionAuth, 'dashboardController.msgDelete');
  41. // 推送相关
  42. // app.post('/dashboard/push', sessionAuth, 'dashboardController.pushSet');
  43. /**
  44. * 项目设置
  45. */
  46. // 项目信息
  47. app.get('/setting/info', sessionAuth, 'settingController.info');
  48. app.post('/setting/updateinfo/:id', sessionAuth, 'settingController.updateinfo');
  49. // 账号设置
  50. app.get('/setting/user', sessionAuth, 'settingController.user');
  51. app.get('/setting/user/permission/set', sessionAuth, 'settingController.userPermissionSet');
  52. // 账号停用和启用
  53. app.post('/setting/user/switch', sessionAuth, 'settingController.userSwitch');
  54. app.post('/setting/user/add', sessionAuth, datetimeFill, 'settingController.addUser');
  55. app.post('/setting/user/update', sessionAuth, 'settingController.updateUser');
  56. app.post('/setting/user/permission', sessionAuth, 'settingController.permission');
  57. app.post('/setting/user/reset/password', sessionAuth, 'settingController.resetUserPassword');
  58. app.post('/setting/user/exist', sessionAuth, 'settingController.accountExist');
  59. app.post('/setting/user/unbind', sessionAuth, 'settingController.userUnbind');
  60. // 显示设置
  61. app.get('/setting/show', sessionAuth, 'settingController.show');
  62. app.post('/setting/show/update', sessionAuth, 'settingController.showListUpdate');
  63. // 标段自定义类别
  64. app.get('/setting/category', sessionAuth, 'settingController.category');
  65. app.post('/setting/category/add', sessionAuth, 'settingController.addCategory');
  66. app.post('/setting/category/del', sessionAuth, 'settingController.deleteCategory');
  67. app.post('/setting/category/update', sessionAuth, 'settingController.updateCategory');
  68. app.post('/setting/category/value', sessionAuth, 'settingController.setCategoryValue');
  69. app.post('/setting/category/level', sessionAuth, 'settingController.resetCategoryLevel');
  70. // 项目相关
  71. app.get('/project/info', sessionAuth, 'projectController.info');
  72. app.get('/project/account', sessionAuth, projectManagerCheck, 'accountController.index');
  73. app.post('/project/account/permission/:accountId', sessionAuth, projectManagerCheck, 'accountController.savePermission');
  74. app.get('/project/account/enable/:accountId', sessionAuth, projectManagerCheck, 'accountController.enable');
  75. app.get('/project/account/disable/:accountId', sessionAuth, projectManagerCheck, 'accountController.enable');
  76. app.get('/project/switch/:projectId', sessionAuth, projectManagerCheck, 'projectController.switchProject');
  77. app.post('/project/info', sessionAuth, 'projectController.saveInfo');
  78. /**
  79. * 标段管理
  80. */
  81. // 金额概况
  82. app.get('/list', sessionAuth, 'tenderController.listDefault');
  83. app.get('/list/info', sessionAuth, 'tenderController.listInfo');
  84. // 计量进度
  85. app.get('/list/progress', sessionAuth, 'tenderController.listProgress');
  86. // 管理标段
  87. app.get('/list/manage', sessionAuth, 'tenderController.listManage');
  88. app.post('/list/add', sessionAuth, 'tenderController.addTender');
  89. app.post('/list/update', sessionAuth, 'tenderController.updateTender');
  90. app.post('/list/del', sessionAuth, 'tenderController.deleteTender');
  91. // 标段概况
  92. app.get('/tender/:id', sessionAuth, tenderCheck, 'tenderController.tenderInfo');
  93. app.get('/tender/:id/type', sessionAuth, 'tenderController.tenderType');
  94. app.post('/tender/:id/save', sessionAuth, tenderCheck, 'tenderController.saveTenderInfo');
  95. app.post('/tender/rule', sessionAuth, 'tenderController.rule');
  96. app.post('/tender/:id/rule/first', sessionAuth, tenderCheck, 'tenderController.ruleFirst');
  97. // 预付款
  98. app.get('/tender/:id/advance', sessionAuth, tenderCheck, 'advanceController.index');
  99. app.get('/tender/:id/advance/material', sessionAuth, tenderCheck, 'advanceController.materialList');
  100. app.post('/tender/:id/advance/create', sessionAuth, tenderCheck, 'advanceController.create');
  101. app.get('/tender/:id/advance/:order/detail', sessionAuth, tenderCheck, advanceCheck, 'advanceController.detail');
  102. app.post('/tender/:id/advance/:type/create', sessionAuth, tenderCheck, 'advanceController.create');
  103. app.post('/tender/:id/advance/:order/audit/add', sessionAuth, tenderCheck, advanceCheck, 'advanceController.addAudit');
  104. app.post('/tender/:id/advance/:order/audit/delete', sessionAuth, tenderCheck, advanceCheck, 'advanceController.deleteAudit');
  105. app.post('/tender/:id/advance/:order/audit/start', sessionAuth, tenderCheck, advanceCheck, 'advanceController.start');
  106. app.post('/tender/:id/advance/:order/audit/check', sessionAuth, tenderCheck, advanceCheck, 'advanceController.checkAudit');
  107. app.post('/tender/:id/advance/:order/update', sessionAuth, tenderCheck, advanceCheck, 'advanceController.update');
  108. app.post('/tender/:id/advance/:order/file/upload', sessionAuth, tenderCheck, advanceCheck, 'advanceController.upload');
  109. app.post('/tender/:id/advance/:order/file/del', sessionAuth, tenderCheck, advanceCheck, 'advanceController.deleteFile');
  110. // 标段协作办公
  111. app.get('/tender/:id/cooperation', sessionAuth, tenderCheck, 'tenderController.tenderCooperation');
  112. // 台账管理相关
  113. app.get('/tender/:id/ledger', sessionAuth, tenderCheck, 'ledgerController.explode');
  114. app.post('/tender/:id/ledger/load', sessionAuth, tenderCheck, 'ledgerController.loadExplodeData');
  115. app.post('/tender/:id/ledger/get-children', sessionAuth, tenderCheck, 'ledgerController.getChildren');
  116. app.post('/tender/:id/ledger/update', sessionAuth, tenderCheck, 'ledgerController.update');
  117. app.post('/tender/:id/ledger/upload-excel/:ueType', sessionAuth, tenderCheck, 'ledgerController.uploadExcel');
  118. app.get('/tender/:id/ledger/download/:file', sessionAuth, tenderCheck, 'ledgerController.download');
  119. app.post('/tender/:id/pos/update', sessionAuth, tenderCheck, 'ledgerController.posUpdate');
  120. app.post('/tender/:id/pos/paste', sessionAuth, tenderCheck, 'ledgerController.posPaste');
  121. app.post('/tender/:id/ledger/deal2sgfh', sessionAuth, tenderCheck, 'ledgerController.deal2sgfh');
  122. app.post('/tender/:id/ledger/check', sessionAuth, tenderCheck, 'ledgerController.check');
  123. // 台账审批相关
  124. app.get('/tender/:id/ledger/audit', sessionAuth, tenderCheck, 'ledgerAuditController.index');
  125. app.post('/tender/:id/ledger/audit/add', sessionAuth, tenderCheck, 'ledgerAuditController.add');
  126. app.post('/tender/:id/ledger/audit/delete', sessionAuth, tenderCheck, 'ledgerAuditController.remove');
  127. app.post('/tender/:id/ledger/audit/start', sessionAuth, tenderCheck, 'ledgerAuditController.start');
  128. app.post('/tender/:id/ledger/audit/check', sessionAuth, tenderCheck, 'ledgerAuditController.check');
  129. // 部位台账
  130. app.get('/tender/:id/ledger/bwtz', sessionAuth, tenderCheck, 'ledgerController.bwtz');
  131. app.post('/tender/:id/ledger/bwtz/load', sessionAuth, tenderCheck, 'ledgerController.loadBwtz');
  132. // 台账对比
  133. app.get('/tender/:id/ledger/gather', sessionAuth, tenderCheck, 'ledgerController.gather');
  134. app.post('/tender/:id/ledger/gather/load', sessionAuth, tenderCheck, 'ledgerController.loadGatherData');
  135. // 台账修订
  136. app.get('/tender/:id/revise', sessionAuth, tenderCheck, 'reviseController.index');
  137. app.post('/tender/:id/revise/add', sessionAuth, tenderCheck, 'reviseController.add');
  138. app.post('/tender/:id/revise/cancel', sessionAuth, tenderCheck, 'reviseController.cancel');
  139. app.post('/tender/:id/revise/save', sessionAuth, tenderCheck, 'reviseController.save');
  140. // app.post('/tender/:id/revise/deal2sgfh', sessionAuth, tenderCheck, 'reviseController.deal2sgfh');
  141. // 台账修订页面
  142. app.get('/tender/:id/revise/info', sessionAuth, tenderCheck, 'reviseController.info');
  143. app.post('/tender/:id/revise/auditors', sessionAuth, tenderCheck, 'reviseController.reviseAuditors');
  144. app.post('/tender/:id/revise/info/load', sessionAuth, tenderCheck, 'reviseController.loadInfoData');
  145. app.post('/tender/:id/revise/info/update', sessionAuth, tenderCheck, 'reviseController.update');
  146. app.post('/tender/:id/revise/info/upload-excel/:ueType', sessionAuth, tenderCheck, 'reviseController.uploadExcel');
  147. app.post('/tender/:id/revise/info/check', sessionAuth, tenderCheck, 'reviseController.checkData');
  148. // 查看修订数据
  149. app.get('/tender/:id/revise/history', sessionAuth, tenderCheck, 'reviseController.history');
  150. app.post('/tender/:id/revise/history/load', sessionAuth, tenderCheck, 'reviseController.loadHistoryData');
  151. app.post('/tender/:id/revise/history/info', sessionAuth, tenderCheck, 'reviseController.historyInfo');
  152. // 修订审批
  153. app.post('/tender/:id/revise/audit/add', sessionAuth, tenderCheck, 'reviseController.addAuditor');
  154. app.post('/tender/:id/revise/audit/remove', sessionAuth, tenderCheck, 'reviseController.removeAuditor');
  155. app.post('/tender/:id/revise/audit/start', sessionAuth, tenderCheck, 'reviseController.start');
  156. app.post('/tender/:id/revise/audit/check', sessionAuth, tenderCheck, 'reviseController.check');
  157. // 签约清单
  158. app.post('/tender/:id/deal/get-data', sessionAuth, tenderCheck, 'dealBillsController.getData');
  159. app.post('/tender/:id/deal/upload-excel', sessionAuth, tenderCheck, 'dealBillsController.loadExcel');
  160. app.get('/tender/:id/deal/download/:file', sessionAuth, tenderCheck, 'dealBillsController.download');
  161. // 计量台账
  162. // 期计量
  163. app.get('/tender/:id/measure/stage', sessionAuth, tenderCheck, 'measureController.stage');
  164. app.post('/tender/:id/measure/stage/auditors', sessionAuth, tenderCheck, 'measureController.stageAuditors');
  165. app.post('/tender/:id/measure/add', sessionAuth, tenderCheck, 'measureController.add');
  166. app.post('/tender/:id/measure/save', sessionAuth, tenderCheck, 'measureController.save');
  167. app.post('/tender/:id/measure/stage/delete', sessionAuth, tenderCheck, 'measureController.delete');
  168. // 计量台账 -- 清单汇总
  169. app.get('/tender/:id/measure/gather', sessionAuth, tenderCheck, 'measureController.gather');
  170. // 计量台账 -- 审核比较
  171. app.get('/tender/:id/measure/compare', sessionAuth, tenderCheck, 'measureController.compare');
  172. app.post('/tender/:id/measure/compare/load', sessionAuth, tenderCheck, 'measureController.loadCompareData');
  173. // 期计量详细
  174. // 本期计量台账
  175. app.get('/tender/:id/measure/stage/:order', sessionAuth, tenderCheck, stageCheck, 'stageController.index');
  176. app.post('/tender/:id/measure/stage/:order/load', sessionAuth, tenderCheck, stageCheck, 'stageController.getStageData');
  177. app.post('/tender/:id/measure/stage/:order/pos', sessionAuth, tenderCheck, stageCheck, 'stageController.getStagePosData');
  178. app.post('/tender/:id/measure/stage/:order/update', sessionAuth, tenderCheck, stageCheck, 'stageController.updateStageData');
  179. app.post('/tender/:id/measure/stage/:order/valid-change', sessionAuth, tenderCheck, stageCheck, 'stageController.searchValidChange');
  180. app.post('/tender/:id/measure/stage/:order/use-change', sessionAuth, tenderCheck, stageCheck, 'stageController.useChange');
  181. app.post('/tender/:id/measure/stage/:order/check', sessionAuth, tenderCheck, stageCheck, 'stageController.check');
  182. // 计量附件
  183. app.post('/tender/:id/measure/stage/:order/upload/file', sessionAuth, tenderCheck, stageCheck, 'stageController.uploadFile');
  184. app.get('/tender/:id/measure/stage/:order/download/file/:fid', sessionAuth, 'stageController.downloadFile');
  185. app.post('/tender/:id/measure/stage/:order/delete/file', sessionAuth, tenderCheck, stageCheck, 'stageController.deleteFile');
  186. app.post('/tender/:id/measure/stage/:order/save/file', sessionAuth, tenderCheck, stageCheck, 'stageController.saveFile');
  187. app.post('/tender/:id/measure/stage/:order/check/file', sessionAuth, tenderCheck, stageCheck, 'stageController.checkFile');
  188. // 中间计量
  189. app.get('/tender/:id/measure/stage/:order/detail', sessionAuth, tenderCheck, stageCheck, 'stageController.detail');
  190. app.post('/tender/:id/measure/stage/:order/detail/build', sessionAuth, tenderCheck, stageCheck, 'stageController.buildDetailData');
  191. app.post('/tender/:id/measure/stage/:order/detail/adv', sessionAuth, tenderCheck, stageCheck, 'stageController.setAdvancedConfig');
  192. app.post('/tender/:id/measure/stage/:order/detail/load', sessionAuth, tenderCheck, stageCheck, 'stageController.loadDetailRelaData');
  193. app.post('/tender/:id/measure/stage/:order/detail/save', sessionAuth, tenderCheck, stageCheck, 'stageController.saveDetailData');
  194. app.post('/tender/:id/measure/stage/:order/detail/add-img', sessionAuth, tenderCheck, stageCheck, 'stageController.addCalcImage');
  195. app.post('/tender/:id/measure/stage/:order/detail/merge-img', sessionAuth, tenderCheck, stageCheck, 'stageController.mergeCalcImage');
  196. // 合同支付
  197. app.get('/tender/:id/measure/stage/:order/pay', sessionAuth, tenderCheck, stageCheck, 'stageController.pay');
  198. app.post('/tender/:id/measure/stage/:order/pay/detail', sessionAuth, tenderCheck, stageCheck, 'stageController.chapterDetail');
  199. app.post('/tender/:id/measure/stage/:order/pay/save', sessionAuth, tenderCheck, stageCheck, 'stageController.savePayData');
  200. app.post('/tender/:id/measure/stage/:order/pay/upload/file', sessionAuth, tenderCheck, stageCheck, 'stageController.payUploadFile');
  201. app.get('/tender/:id/measure/stage/:order/pay/download/file/:pid/:index', sessionAuth, 'stageController.payDownloadFile');
  202. app.post('/tender/:id/measure/stage/:order/pay/delete/file', sessionAuth, tenderCheck, stageCheck, 'stageController.payDeleteFile');
  203. // 变更概况
  204. app.get('/tender/:id/measure/stage/:order/change', sessionAuth, tenderCheck, stageCheck, 'stageController.change');
  205. app.post('/tender/:id/measure/stage/:order/change/data', sessionAuth, tenderCheck, stageCheck, 'stageController.getChangeData');
  206. app.post('/tender/:id/measure/stage/:order/change/detail', sessionAuth, tenderCheck, stageCheck, 'stageController.changeDetail');
  207. // 审批
  208. app.post('/tender/:id/measure/stage/:order/audit/add', sessionAuth, tenderCheck, stageCheck, 'stageController.addAudit');
  209. app.post('/tender/:id/measure/stage/:order/audit/delete', sessionAuth, tenderCheck, stageCheck, 'stageController.deleteAudit');
  210. app.post('/tender/:id/measure/stage/:order/audit/start', sessionAuth, tenderCheck, stageCheck, 'stageController.startAudit');
  211. app.post('/tender/:id/measure/stage/:order/audit/check', sessionAuth, tenderCheck, stageCheck, 'stageController.checkAudit');
  212. app.get('/tender/:id/measure/stage/:order/audit/check/again', sessionAuth, tenderCheck, stageCheck, 'stageController.checkAuditAgain');
  213. // 部位台账
  214. app.get('/tender/:id/measure/stage/:order/bwtz', sessionAuth, tenderCheck, stageCheck, 'stageController.bwtz');
  215. app.post('/tender/:id/measure/stage/:order/bwtz/load', sessionAuth, tenderCheck, stageCheck, 'stageController.loadBwtz');
  216. // 清单汇总
  217. app.get('/tender/:id/measure/stage/:order/gather', sessionAuth, tenderCheck, stageCheck, 'stageController.gather');
  218. // 审核比较
  219. app.get('/tender/:id/measure/stage/:order/compare', sessionAuth, tenderCheck, stageCheck, 'stageController.compare');
  220. app.post('/tender/:id/measure/stage/:order/compare/load', sessionAuth, tenderCheck, stageCheck, 'stageController.compareAuditor');
  221. // 附加功能
  222. app.get('/tender/:id/measure/stage/:order/extra/jgcl', sessionAuth, tenderCheck, stageCheck, 'stageExtraController.jgcl');
  223. app.post('/tender/:id/measure/stage/:order/extra/jgcl/load', sessionAuth, tenderCheck, stageCheck, 'stageExtraController.loadJgcl');
  224. app.post('/tender/:id/measure/stage/:order/extra/jgcl/update', sessionAuth, tenderCheck, stageCheck, 'stageExtraController.updateJgcl');
  225. app.get('/tender/:id/measure/stage/:order/extra/bonus', sessionAuth, tenderCheck, stageCheck, 'stageExtraController.bonus');
  226. app.post('/tender/:id/measure/stage/:order/extra/bonus/load', sessionAuth, tenderCheck, stageCheck, 'stageExtraController.loadBonus');
  227. app.post('/tender/:id/measure/stage/:order/extra/bonus/update', sessionAuth, tenderCheck, stageCheck, 'stageExtraController.updateBonus');
  228. app.get('/tender/:id/measure/stage/:order/extra/other', sessionAuth, tenderCheck, stageCheck, 'stageExtraController.other');
  229. app.post('/tender/:id/measure/stage/:order/extra/other/load', sessionAuth, tenderCheck, stageCheck, 'stageExtraController.loadOther');
  230. app.post('/tender/:id/measure/stage/:order/extra/other/update', sessionAuth, tenderCheck, stageCheck, 'stageExtraController.updateOther');
  231. app.post('/tender/:id/measure/stage/:order/extra/upload/file', sessionAuth, tenderCheck, stageCheck, 'stageExtraController.uploadFile');
  232. app.get('/tender/:id/measure/stage/:order/extra/download/file', sessionAuth, tenderCheck, stageCheck, 'stageExtraController.downloadFile');
  233. app.post('/tender/:id/measure/stage/:order/extra/delete/file', sessionAuth, tenderCheck, stageCheck, 'stageExtraController.deleteFile');
  234. // 期审批管理
  235. app.get('/tender/:id/measure/stage/:order/manager', sessionAuth, tenderCheck, stageCheck, 'stageController.manager');
  236. app.post('/tender/:id/measure/stage/:order/manager/audit/delete', sessionAuth, tenderCheck, stageCheck, 'stageController.managerAuditDelete');
  237. // 报表
  238. app.get('/tender/:id/report', sessionAuth, tenderCheck, 'reportController.index');
  239. app.get('/tender/:id/measure/stage/:order/report', sessionAuth, tenderCheck, stageCheck, 'reportController.index');
  240. app.get('/printReport/:size', sessionAuth, 'reportController.showPrintPage');
  241. app.post('/tender/report_api/getReport', sessionAuth, 'reportController.getReport');
  242. app.post('/tender/report_api/getMultiReports', sessionAuth, 'reportController.getMultiReportsEx');
  243. app.post('/tender/report_api/createExcelFiles', sessionAuth, 'reportController.createExcelFilesEx');
  244. app.post('/tender/report_api/createExcelFilesInOneBook', sessionAuth, 'reportController.createExcelFilesInOneBookEx');
  245. app.get('/getFileByUUID/:uuid/:rptName/:suffix', sessionAuth, 'reportController.getFileByUUID');
  246. // rptRouter.get('/getFileByUUID/:uuid/:rptName/:suffix', reportController.getFileByUUID);
  247. app.post('/tender/report_api/createSignatureRole', sessionAuth, 'signatureController.createSignatureRole');
  248. app.post('/tender/report_api/updateSignatureUsed', sessionAuth, datetimeFill, 'signatureController.updateSignatureUsed');
  249. app.post('/tender/report_api/updateRoleRelationship', sessionAuth, 'signatureController.updateRoleRel');
  250. app.post('/tender/report_api/createRoleRelationship', sessionAuth, 'signatureController.createRoleRel');
  251. app.post('/tender/report_api/updateCustNode', sessionAuth, 'reportController.updateCustNode');
  252. app.post('/report/cDefine', sessionAuth, 'reportController.setCustomDefine');
  253. // 变更管理
  254. app.get('/tender/:id/change', sessionAuth, tenderCheck, 'changeController.index');
  255. app.get('/tender/:id/change/status/:status', sessionAuth, tenderCheck, 'changeController.status');
  256. app.post('/tender/:id/change/newCode', sessionAuth, tenderCheck, 'changeController.newCode');
  257. app.post('/tender/:id/change/add', sessionAuth, tenderCheck, 'changeController.add');
  258. app.post('/tender/:id/change/defaultBills', sessionAuth, tenderCheck, 'changeController.defaultBills');
  259. app.get('/tender/:id/change/:cid/info', sessionAuth, tenderCheck, 'changeController.info');
  260. app.post('/change/upload/file', sessionAuth, 'changeController.uploadFile');
  261. app.get('/change/download/file/:id', sessionAuth, 'changeController.downloadFile');
  262. app.post('/change/delete/file', sessionAuth, 'changeController.deleteFile');
  263. app.post('/tender/:id/change/delete', sessionAuth, tenderCheck, 'changeController.delete');
  264. app.post('/tender/:id/change/bills', sessionAuth, tenderCheck, 'changeController.bills');
  265. app.post('/tender/:id/change/save', sessionAuth, tenderCheck, 'changeController.save');
  266. app.post('/tender/:id/change/approval', sessionAuth, tenderCheck, 'changeController.approval');
  267. app.post('/tender/:id/change/check/again', sessionAuth, tenderCheck, 'changeController.checkAgain');
  268. app.post('/tender/:id/change/:cid/check/codeRepeat', sessionAuth, tenderCheck, 'changeController.checkCodeRepeat');
  269. // 变更单位管理
  270. app.post('/change/update/company', sessionAuth, 'changeController.updateCompany');
  271. // 材料调差
  272. app.get('/tender/:id/measure/material', sessionAuth, tenderCheck, 'materialController.index');
  273. app.post('/tender/:id/measure/material/add', sessionAuth, tenderCheck, 'materialController.add');
  274. app.post('/tender/:id/measure/material/delete', sessionAuth, tenderCheck, 'materialController.delete');
  275. app.post('/tender/:id/measure/material/auditors', sessionAuth, tenderCheck, 'materialController.materialAuditors');
  276. // 审批
  277. app.post('/tender/:id/measure/material/:order/audit/add', sessionAuth, tenderCheck, materialCheck, 'materialController.addAudit');
  278. app.post('/tender/:id/measure/material/:order/audit/delete', sessionAuth, tenderCheck, materialCheck, 'materialController.deleteAudit');
  279. app.post('/tender/:id/measure/material/:order/audit/start', sessionAuth, tenderCheck, materialCheck, 'materialController.startAudit');
  280. app.post('/tender/:id/measure/material/:order/audit/check', sessionAuth, tenderCheck, materialCheck, 'materialController.checkAudit');
  281. // 调差工料
  282. app.get('/tender/:id/measure/material/:order', sessionAuth, tenderCheck, materialCheck, 'materialController.info');
  283. app.post('/tender/:id/measure/material/:order/save', sessionAuth, tenderCheck, materialCheck, 'materialController.saveBillsData');
  284. // 调差清单
  285. app.get('/tender/:id/measure/material/:order/list', sessionAuth, tenderCheck, materialCheck, 'materialController.list');
  286. app.post('/tender/:id/measure/material/:order/list/save', sessionAuth, tenderCheck, materialCheck, 'materialController.saveListsData');
  287. // 附件
  288. app.get('/tender/:id/measure/material/:order/file', sessionAuth, tenderCheck, materialCheck, 'materialController.file');
  289. app.post('/tender/:id/measure/material/:order/file/upload', sessionAuth, tenderCheck, materialCheck, 'materialController.upload');
  290. app.post('/tender/:id/measure/material/:order/file/find', sessionAuth, tenderCheck, materialCheck, 'materialController.getCurMatericalFiles');
  291. app.post('/tender/measure/material/file/delete', sessionAuth, 'materialController.deleteFile');
  292. // 个人账号相关
  293. app.get('/profile/info', sessionAuth, 'profileController.info');
  294. app.get('/profile/sms', sessionAuth, 'profileController.sms');
  295. app.post('/profile/sms/type', sessionAuth, 'profileController.smsType');
  296. app.get('/profile/sign', sessionAuth, 'profileController.sign');
  297. app.post('/profile/sign/delete', sessionAuth, 'profileController.signDelete');
  298. app.post('/profile/sign/upload', sessionAuth, 'profileController.signUpload');
  299. app.get('/profile/safe', sessionAuth, 'profileController.safe');
  300. app.post('/profile/save', sessionAuth, 'profileController.saveBase');
  301. app.post('/profile/password', sessionAuth, 'profileController.modifyPassword');
  302. app.post('/profile/code', sessionAuth, 'profileController.getCode');
  303. app.post('/profile/bind', sessionAuth, 'profileController.bindMobile');
  304. app.get('/profile/qrCode', sessionAuth, 'profileController.qrCode');
  305. app.get('/profile/wechat', sessionAuth, 'profileController.wechat');
  306. app.post('/profile/wechat/remove', sessionAuth, 'profileController.removeWechat');
  307. // 标准库相关
  308. app.post('/std-lib/get-data', sessionAuth, 'standardLibController.getData');
  309. // 查询
  310. app.post('/search/user', sessionAuth, 'projectController.searchAccount');
  311. // 示例
  312. app.get('/template/:file', sessionAuth, 'templateController.download');
  313. // 标段对比
  314. app.get('/compare/tz', sessionAuth, 'spssController.compareTz');
  315. app.post('/compare/tz/load', sessionAuth, 'spssController.loadCompareTz');
  316. app.get('/compare/stage', sessionAuth, 'spssController.compareStage');
  317. app.post('/compare/stage/load', sessionAuth, 'spssController.loadCompareStage');
  318. app.get('/gather/tz', sessionAuth, 'spssController.gatherTz');
  319. app.post('/gather/tz/load', sessionAuth, 'spssController.loadGatherTz');
  320. app.get('/gather/stage', sessionAuth, 'spssController.gatherStage');
  321. app.post('/gather/stage/load', sessionAuth, 'spssController.loadGatherStage');
  322. app.get('/tools/check-tz', sessionAuth, 'spssController.checkTz');
  323. app.post('/tools/load', sessionAuth, 'spssController.loadBaseData');
  324. // wap页面
  325. app.get('/wap', 'wapController.index');
  326. app.get('/wap/login', 'wapController.index');
  327. app.post('/wap/login', 'wapController.login');
  328. app.get('/wap/logout', 'wapController.logout');
  329. app.get('/wap/dashboard', sessionAuth, 'wapController.dashboard');
  330. app.get('/wap/list', sessionAuth, 'wapController.list');
  331. app.get('/wap/tender/:id', sessionAuth, tenderCheck, 'wapController.tender');
  332. app.get('/wap/tender/:id/stage/:order', sessionAuth, tenderCheck, 'wapController.stage');
  333. app.get('/wap/tender/:id/change/:cid/info', sessionAuth, tenderCheck, 'wapController.change');
  334. app.post('/wap/tender/:id/change/approval', sessionAuth, tenderCheck, 'wapController.changeApproval');
  335. // 微信
  336. app.get('/wx', 'wechatController.index');
  337. app.get('/wx/oauth', 'wechatController.oauth');
  338. app.get('/wx/bind', wechatAuth, 'wechatController.bind');
  339. app.post('/wx/bindwx', wechatAuth, 'wechatController.bindwx');
  340. app.get('/wx/url2wap', wechatAuth, 'wechatController.url2wap');
  341. app.get('/wx/project', wechatAuth, 'wechatController.project');
  342. app.get('/wx/test', 'wechatController.testwx');
  343. app.get('/MP_verify_t3MkWAMqplVxPjmr.txt', 'wechatController.oauthTxt');
  344. };