menu.js 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581
  1. 'use strict';
  2. /**
  3. * 前台菜单配置
  4. *
  5. * @author CaiAoLin
  6. * @date 2017/11/29
  7. * @version
  8. */
  9. const projectMenu = {
  10. dashboard: {
  11. name: '工作台',
  12. icon: 'fa-check-square-o',
  13. display: true,
  14. url: '/dashboard',
  15. children: null,
  16. caption: '工作台',
  17. controller: 'dashboard',
  18. },
  19. dataview: {
  20. name: '数据大屏',
  21. icon: 'fa-th-large',
  22. display: false,
  23. url: '/dataview',
  24. children: null,
  25. caption: '数据大屏',
  26. controller: 'dataview',
  27. },
  28. subproj: {
  29. name: '项目列表',
  30. icon: 'fa-cubes',
  31. display: true,
  32. url: '/subproj',
  33. children: null,
  34. caption: '项目列表',
  35. controller: 'subproj',
  36. },
  37. spgather: {
  38. name: '项目汇总',
  39. icon: 'fa-sitemap',
  40. display: false,
  41. url: '/spgather',
  42. children: null,
  43. caption: '项目汇总',
  44. controller: 'spgather',
  45. },
  46. management: {
  47. name: '项目管理系统',
  48. icon: 'fa-cubes',
  49. display: false,
  50. caption: 'PMSS',
  51. children: null,
  52. },
  53. };
  54. const menu = {
  55. back: {
  56. name: '项目列表',
  57. icon: 'fa-mail-reply-all',
  58. display: true,
  59. url: '/subproj',
  60. children: null,
  61. caption: '项目列表',
  62. controller: 'subproj',
  63. },
  64. dashboard: {
  65. name: '待办事项',
  66. icon: 'fa-check-square-o',
  67. display: true,
  68. children: null,
  69. caption: '待办事项',
  70. controller: 'dashboard',
  71. },
  72. datacollect: {
  73. name: '决策大屏',
  74. icon: 'fa-th-large',
  75. display: true,
  76. children: null,
  77. caption: '决策大屏',
  78. controller: 'datacollect',
  79. },
  80. info: {
  81. name: '项目概况',
  82. icon: 'fa-tags',
  83. display: true,
  84. children: null,
  85. caption: '项目概况',
  86. controller: 'info',
  87. controllers: ['info', 'progress', 'data', 'push'],
  88. },
  89. tender: {
  90. name: '计量管理',
  91. icon: 'fa-list-ul',
  92. display: true,
  93. children: null,
  94. caption: '计量管理',
  95. controller: 'list',
  96. controllers: ['list', 'tender', 'construction', 'spss'],
  97. // includedUrl: { contract: ['/contract/tender'] },
  98. },
  99. contract: {
  100. name: '合同管理',
  101. icon: 'fa-file-text-o',
  102. display: true,
  103. // url: '/contract/detail',
  104. children: [
  105. {
  106. msg: 'subproj',
  107. name: '项目合同',
  108. caption: '项目合同',
  109. controller: 'contract',
  110. display: true,
  111. notIncludedUrl: ['/contract/tender'],
  112. },
  113. {
  114. msg: 'tender',
  115. name: '标段合同',
  116. caption: '标段合同',
  117. controllers: ['contract'],
  118. display: true,
  119. includedUrl: { contract: ['/contract/tender'] },
  120. },
  121. ],
  122. caption: '合同管理',
  123. },
  124. quality: {
  125. name: '质量管理',
  126. icon: 'fa-balance-scale',
  127. display: true,
  128. caption: '质量管理',
  129. // controller: 'quality',
  130. // notIncludedUrl: ['/inspection'],
  131. children: [
  132. {
  133. msg: 'quality',
  134. name: '工程资料',
  135. caption: '工程资料',
  136. controller: 'quality',
  137. display: true,
  138. notIncludedUrl: ['/inspection'],
  139. },
  140. {
  141. msg: 'inspection',
  142. name: '质量巡检',
  143. caption: '质量巡检',
  144. display: true,
  145. controllers: ['quality'],
  146. includedUrl: { quality: ['/inspection'] },
  147. },
  148. ],
  149. },
  150. // inspection: {
  151. // name: '质量巡检',
  152. // icon: 'fa-newspaper-o',
  153. // display: true,
  154. // children: null,
  155. // caption: '质量巡检',
  156. // controllers: ['quality'],
  157. // includedUrl: { quality: ['/inspection'] },
  158. // },
  159. safe: {
  160. name: '安全管理',
  161. icon: 'fa-shield',
  162. display: true,
  163. // url: '/contract/detail',
  164. children: [
  165. {
  166. msg: 'payment',
  167. name: '安全计量',
  168. caption: '安全计量',
  169. controller: 'safe',
  170. display: true,
  171. notIncludedUrl: ['/inspection'],
  172. },
  173. {
  174. msg: 'inspection',
  175. name: '安全巡检',
  176. caption: '安全巡检',
  177. controllers: ['safe'],
  178. display: true,
  179. includedUrl: { safe: ['/inspection'] },
  180. },
  181. ],
  182. caption: '安全管理',
  183. },
  184. file: {
  185. name: '资料管理',
  186. icon: 'fa-file-zip-o',
  187. display: true,
  188. children: null,
  189. caption: '资料管理',
  190. controller: 'file',
  191. controllers: ['file', 'fm'],
  192. },
  193. budget: {
  194. name: '进度管理',
  195. icon: 'fa-pie-chart',
  196. display: true,
  197. children: [
  198. {
  199. msg: 'budget',
  200. name: '项目进度',
  201. caption: '项目进度',
  202. controller: 'budget',
  203. display: true,
  204. // notIncludedUrl: ['/inspection'],
  205. },
  206. {
  207. msg: 'schedule',
  208. name: '标段进度',
  209. caption: '标段进度',
  210. controller: 'schedule',
  211. display: true,
  212. // includedUrl: { safe: ['/inspection'] },
  213. },
  214. ],
  215. caption: '进度管理',
  216. controller: 'budget',
  217. },
  218. payment: {
  219. name: '支付审批',
  220. icon: 'fa-handshake-o',
  221. display: true,
  222. // url: '/payment',
  223. caption: '支付审批',
  224. children: null,
  225. controller: 'payment',
  226. },
  227. financial: {
  228. name: '资金监管',
  229. icon: 'fa-cny',
  230. display: true,
  231. // url: '/financial',
  232. caption: '资金监管',
  233. children: null,
  234. controller: 'financial',
  235. },
  236. cost: {
  237. name: '成本管理',
  238. icon: 'fa-calculator',
  239. display: true,
  240. caption: '成本管理',
  241. children: null,
  242. controller: 'cost',
  243. },
  244. // sum: {
  245. // name: '总分包',
  246. // icon: 'fa-sitemap',
  247. // display: true,
  248. // url: '/sum',
  249. // children: null,
  250. // caption: '总分包',
  251. // },
  252. };
  253. const tenderMenu = {
  254. info: {
  255. name: '标段概况',
  256. display: false,
  257. children: [
  258. {
  259. name: '标段概况',
  260. icon: '<i class="fa fa-pie-chart"></i> ',
  261. display: true,
  262. url: '',
  263. },
  264. ],
  265. },
  266. ledger: {
  267. name: '0号台账',
  268. icon: '<i class="fa fa-list-alt"></i> ',
  269. display: true,
  270. children: [
  271. {
  272. name: '台账分解',
  273. display: true,
  274. url: '/ledger/explode',
  275. }, {
  276. name: '台账修订',
  277. display: true,
  278. url: '/revise',
  279. },
  280. ],
  281. },
  282. measure: {
  283. name: '计量台账',
  284. icon: '<i class="fa fa-calendar-check-o"></i> ',
  285. display: true,
  286. children: [
  287. {
  288. name: '期列表',
  289. display: true,
  290. url: '/measure/stage',
  291. // }, {
  292. // name: '清单汇总',
  293. // display: true,
  294. // url: '/measure/gather',
  295. }, {
  296. name: '多期比较',
  297. display: true,
  298. url: '/measure/compare',
  299. },
  300. ],
  301. },
  302. change: {
  303. name: '工程变更',
  304. display: false,
  305. children: [
  306. {
  307. name: '工程变更',
  308. icon: '<i class="fa fa-retweet"></i> ',
  309. display: true,
  310. url: '/change',
  311. },
  312. ],
  313. },
  314. report: {
  315. name: '输出报表',
  316. display: false,
  317. children: [
  318. {
  319. name: '输出报表',
  320. icon: '<i class="fa fa-file-text-o"></i> ',
  321. display: true,
  322. url: '/report',
  323. },
  324. ],
  325. },
  326. };
  327. const stageMenu = {
  328. back: {
  329. name: '返回',
  330. display: false,
  331. children: [
  332. {
  333. name: '返回',
  334. icon: '<i class="fa fa-chevron-left "></i> ',
  335. display: true,
  336. url: '/measure/stage',
  337. fixedUrl: true,
  338. },
  339. ],
  340. },
  341. ledger: {
  342. name: '本期计量台账',
  343. display: false,
  344. children: [
  345. {
  346. name: '本期计量台账',
  347. icon: '',
  348. display: true,
  349. url: '',
  350. class: ' class="ml-3"',
  351. },
  352. ],
  353. },
  354. detail: {
  355. name: '中间计量',
  356. display: false,
  357. children: [
  358. {
  359. name: '中间计量',
  360. icon: '',
  361. display: true,
  362. url: '/detail',
  363. class: ' class="ml-3"',
  364. },
  365. ],
  366. },
  367. pay: {
  368. name: '合同支付',
  369. display: false,
  370. children: [
  371. {
  372. name: '合同支付',
  373. icon: '',
  374. display: true,
  375. url: '/pay',
  376. class: ' class="ml-3"',
  377. },
  378. ],
  379. },
  380. change: {
  381. name: '变更令',
  382. display: false,
  383. children: [
  384. {
  385. name: '变更令',
  386. icon: '',
  387. display: true,
  388. url: '/change',
  389. class: ' class="ml-3"',
  390. },
  391. ],
  392. },
  393. gather: {
  394. name: '清单汇总',
  395. display: false,
  396. children: [
  397. {
  398. name: '清单汇总',
  399. icon: '',
  400. display: true,
  401. url: '/gather',
  402. class: ' class="ml-3"',
  403. },
  404. ],
  405. },
  406. compare: {
  407. name: '审核比较',
  408. display: false,
  409. children: [
  410. {
  411. name: '审核比较',
  412. icon: '',
  413. display: true,
  414. url: '/compare',
  415. class: ' class="ml-3"',
  416. },
  417. ],
  418. },
  419. report: {
  420. name: '输出报表',
  421. display: false,
  422. children: [
  423. {
  424. name: '输出报表',
  425. icon: '<i class="fa fa-file-text-o"></i> ',
  426. display: true,
  427. url: '/report',
  428. class: '',
  429. },
  430. ],
  431. },
  432. };
  433. const sumMenu = {
  434. info: {
  435. name: '总包概况',
  436. display: false,
  437. children: [
  438. {
  439. name: '总包概况',
  440. icon: '<i class="fa fa-pie-chart"></i> ',
  441. display: true,
  442. url: '/sum',
  443. },
  444. ],
  445. },
  446. stage: {
  447. name: '上报期',
  448. display: false,
  449. children: [
  450. {
  451. name: '上报期',
  452. icon: '<i class="fa fa-calendar-check-o"></i> ',
  453. display: true,
  454. url: '/sum/stage',
  455. },
  456. ],
  457. },
  458. };
  459. const settingMenu = {
  460. info: {
  461. name: '平台信息',
  462. display: true,
  463. url: '/setting/info',
  464. caption: '平台信息',
  465. },
  466. user: {
  467. name: '账号设置',
  468. display: true,
  469. url: '/setting/user',
  470. caption: '账号设置',
  471. },
  472. s2b: {
  473. name: '接口设置',
  474. display: false,
  475. url: '/setting/api',
  476. caption: '接口设置',
  477. },
  478. show: {
  479. name: '显示设置',
  480. display: true,
  481. url: '/setting/show',
  482. caption: '显示设置',
  483. },
  484. manage: {
  485. name: '计量管理',
  486. display: false,
  487. url: '/setting/manage',
  488. caption: '计量管理',
  489. },
  490. };
  491. const projectSettingMenu = {
  492. category: {
  493. name: '标段自定义类别',
  494. display: true,
  495. url: '/setting/category',
  496. caption: '标段自定义类别',
  497. },
  498. user: {
  499. name: '账号设置',
  500. display: true,
  501. url: '/setting/user',
  502. caption: '账号设置',
  503. },
  504. fun: {
  505. name: '功能设置',
  506. display: true,
  507. url: '/setting/fun',
  508. caption: '功能设置',
  509. },
  510. log: {
  511. name: '操作日志',
  512. display: true,
  513. url: '/setting/logs',
  514. caption: '操作日志',
  515. },
  516. datacollect: {
  517. name: '决策大屏',
  518. display: true,
  519. url: '/setting/datacollect',
  520. caption: '决策大屏',
  521. },
  522. manage: {
  523. name: '标段设置',
  524. display: true,
  525. url: '/setting/manage',
  526. caption: '标段设置',
  527. },
  528. };
  529. const profileMenu = {
  530. info: {
  531. name: '账号资料',
  532. display: false,
  533. url: '/profile/info',
  534. },
  535. sms: {
  536. name: '认证手机',
  537. display: false,
  538. url: '/profile/sms',
  539. },
  540. wechat: {
  541. name: '微信通知',
  542. display: false,
  543. url: '/profile/wechat',
  544. },
  545. sign: {
  546. name: '签字/签章管理',
  547. display: false,
  548. url: '/profile/sign',
  549. },
  550. safe: {
  551. name: '账号安全',
  552. display: false,
  553. url: '/profile/safe',
  554. },
  555. // help: {
  556. // name: '帮助中心',
  557. // display: false,
  558. // url: '/',
  559. // },
  560. };
  561. module.exports = {
  562. projectMenu,
  563. menu,
  564. tenderMenu,
  565. stageMenu,
  566. sumMenu,
  567. settingMenu,
  568. projectSettingMenu,
  569. profileMenu,
  570. };