123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429
  1. const routes = [
  2. /**********************************
  3. * Tab 页面
  4. *********************************/
  5. {
  6. name: '首页',
  7. page: 'pages/index/index',
  8. pkg: 'main',
  9. isTab: true,
  10. type: 'main',
  11. shortcut: {
  12. chat: false,
  13. consultant: true,
  14. },
  15. // auth: ['phone', 'avatar']
  16. },
  17. {
  18. name: '视频',
  19. page: 'pages/video/index',
  20. pkg: 'main',
  21. isTab: true,
  22. type: 'other',
  23. },
  24. {
  25. name: '消息',
  26. page: 'pages/chat/index',
  27. pkg: 'main',
  28. isTab: true,
  29. type: 'other',
  30. },
  31. {
  32. name: '我是',
  33. page: 'pages/mine/index',
  34. pkg: 'main',
  35. isTab: true,
  36. type: 'center',
  37. },
  38. // 聊天
  39. {
  40. name: '聊天',
  41. page: 'pages/chat/chatDetail/index',
  42. pkg: 'main',
  43. type: 'other',
  44. auth: ['phone', 'avatar'],
  45. },
  46. // /********************************
  47. // * 项目相关
  48. // *******************************/
  49. {
  50. name: '房贷计算',
  51. page: 'pages/index/mortgageCalculation/index',
  52. pkg: 'main',
  53. type: 'building',
  54. },
  55. {
  56. name: '定位',
  57. page: 'pages/index/location/index',
  58. pkg: 'main',
  59. type: 'other',
  60. },
  61. {
  62. name: '帮我找房',
  63. page: 'pages/index/helpToFindHouse/index',
  64. pkg: 'main',
  65. type: 'building',
  66. },
  67. {
  68. name: '地图找房',
  69. page: 'pages/index/findHouseFromMap/index',
  70. pkg: 'main',
  71. type: 'building',
  72. },
  73. {
  74. name: '楼盘搜索',
  75. page: 'pages/index/buildingSearch/index',
  76. pkg: 'main',
  77. type: 'building',
  78. },
  79. {
  80. name: '楼盘列表',
  81. page: 'pages/index/buildingList/index',
  82. pkg: 'main',
  83. type: 'building',
  84. },
  85. {
  86. name: '楼盘详情',
  87. page: 'pages/index/buildingDetail/index',
  88. pkg: 'main',
  89. type: 'building',
  90. auth: ['phone', 'avatar'],
  91. shortcut: {
  92. chat: false,
  93. consultant: true,
  94. },
  95. },
  96. {
  97. name: '全景看房',
  98. page: 'pages/index/panoramaChecking/index',
  99. pkg: 'main',
  100. type: 'building',
  101. },
  102. {
  103. name: '楼盘信息',
  104. page: 'pages/index/buildingInfo/index',
  105. pkg: 'main',
  106. type: 'building',
  107. },
  108. {
  109. name: '围观记录',
  110. page: 'pages/index/buildingViewsRecords/index',
  111. pkg: 'main',
  112. type: 'building',
  113. },
  114. {
  115. name: '置业顾问',
  116. page: 'pages/index/buildingPropertyConsultant/index',
  117. pkg: 'main',
  118. type: 'building',
  119. },
  120. {
  121. name: '相册图片',
  122. page: 'pages/index/buildingPictures/index',
  123. pkg: 'main',
  124. type: 'building',
  125. },
  126. {
  127. name: '报备规则',
  128. page: 'pages/index/buildingRules/index',
  129. pkg: 'main',
  130. type: 'building',
  131. },
  132. {
  133. name: '一键带看',
  134. page: 'pages/index/buildingTakeLook/index',
  135. pkg: 'main',
  136. type: 'building',
  137. auth: ['phone', 'avatar'],
  138. },
  139. {
  140. name: '项目动态',
  141. page: 'pages/index/buildingDynamic/index',
  142. pkg: 'main',
  143. type: 'building',
  144. },
  145. {
  146. name: '周边设施',
  147. page: 'pages/index/buildingAround/index',
  148. pkg: 'main',
  149. type: 'building',
  150. },
  151. {
  152. name: '品牌列表',
  153. page: 'pages/index/brandList/index',
  154. pkg: 'main',
  155. type: 'building',
  156. },
  157. {
  158. name: '品牌专题',
  159. page: 'pages/index/brandDetail/index',
  160. pkg: 'main',
  161. type: 'building',
  162. },
  163. {
  164. name: '增值服务',
  165. page: 'pages/index/addedValueService/index',
  166. pkg: 'main',
  167. type: 'building',
  168. },
  169. {
  170. name: '活动列表',
  171. page: 'pages/index/activityList/index',
  172. pkg: 'main',
  173. type: 'activity',
  174. },
  175. {
  176. name: '活动详情',
  177. page: 'pages/index/activityDetail/index',
  178. pkg: 'main',
  179. type: 'activity',
  180. auth: ['phone', 'avatar'],
  181. },
  182. {
  183. name: '特价房',
  184. page: 'pages/index/specialPriceHouse/index',
  185. pkg: 'main',
  186. type: 'building',
  187. },
  188. {
  189. name: '免责声明',
  190. page: 'pages/index/disclaimer/index',
  191. pkg: 'main',
  192. type: 'building',
  193. },
  194. {
  195. name: '康养',
  196. page: 'pages/index/recovered/index',
  197. pkg: 'main',
  198. type: 'building',
  199. },
  200. {
  201. name: '文旅商办',
  202. page: 'pages/index/culturalAndBusiness/index',
  203. pkg: 'main',
  204. type: 'building',
  205. },
  206. {
  207. name: '新闻资讯',
  208. page: 'pages/index/newsList/index',
  209. pkg: 'main',
  210. type: 'news',
  211. },
  212. {
  213. name: '资讯详情',
  214. page: 'pages/index/newsDetail/index',
  215. pkg: 'main',
  216. type: 'news',
  217. },
  218. {
  219. name: '购房百科',
  220. page: 'pages/index/encyclopediasOfBuyHouse/index',
  221. pkg: 'main',
  222. type: 'building',
  223. },
  224. {
  225. name: '百科详情',
  226. page: 'pages/index/encyDetail/index',
  227. pkg: 'main',
  228. type: 'building',
  229. },
  230. {
  231. name: '课程详情',
  232. page: 'pages/index/courseDetail/index',
  233. pkg: 'main',
  234. type: 'mine',
  235. },
  236. //视频
  237. {
  238. name: '直播活动',
  239. page: 'pages/video/liveDetail/index',
  240. pkg: 'main',
  241. type: 'video',
  242. },
  243. {
  244. name: '视频详情',
  245. page: 'pages/video/videoDetail/index',
  246. pkg: 'main',
  247. type: 'video',
  248. },
  249. // 我的
  250. {
  251. name: '房贷计算器',
  252. page: 'pages/mine/mortgageCalc/index',
  253. pkg: 'main',
  254. type: 'mine',
  255. },
  256. {
  257. name: '基本信息',
  258. page: 'pages/mine/userInfo/index',
  259. pkg: 'main',
  260. type: 'mine',
  261. },
  262. {
  263. name: '成为驻场管理',
  264. page: 'pages/mine/toBeManager/index',
  265. pkg: 'main',
  266. type: 'mine',
  267. },
  268. {
  269. name: '成为经纪人',
  270. page: 'pages/mine/toBeAgent/index',
  271. pkg: 'main',
  272. type: 'mine',
  273. },
  274. {
  275. name: '推荐客户',
  276. page: 'pages/mine/recommendUser/index',
  277. pkg: 'main',
  278. type: 'mine',
  279. },
  280. {
  281. name: '报备客户',
  282. page: 'pages/mine/reportUser/index',
  283. pkg: 'main',
  284. type: 'mine',
  285. },
  286. {
  287. name: '我的分享',
  288. page: 'pages/mine/myShare/index',
  289. pkg: 'main',
  290. type: 'mine',
  291. },
  292. {
  293. name: '我的课堂',
  294. page: 'pages/mine/myCourse/index',
  295. pkg: 'main',
  296. type: 'mine',
  297. },
  298. {
  299. name: '我的活动',
  300. page: 'pages/mine/myActivity/index',
  301. pkg: 'main',
  302. type: 'mine',
  303. },
  304. {
  305. name: '我的客户',
  306. page: 'pages/mine/myCustomer/index',
  307. pkg: 'main',
  308. type: 'mine',
  309. },
  310. {
  311. name: '客户详情',
  312. page: 'pages/mine/myCustomerDetail/index',
  313. pkg: 'main',
  314. type: 'mine',
  315. },
  316. {
  317. name: '我的收藏',
  318. page: 'pages/mine/myCollect/index',
  319. pkg: 'main',
  320. type: 'mine',
  321. },
  322. {
  323. name: '合作渠道',
  324. page: 'pages/mine/partnerChannel/index',
  325. pkg: 'main',
  326. type: 'mine',
  327. },
  328. {
  329. name: '添加客户',
  330. page: 'pages/mine/addCustomer/index',
  331. pkg: 'main',
  332. type: 'mine',
  333. },
  334. {
  335. name: '驻场管理',
  336. page: 'pages/mine/residentManager/index',
  337. pkg: 'main',
  338. type: 'mine',
  339. },
  340. {
  341. name: '确认到访',
  342. page: 'pages/mine/sureVisit/index',
  343. pkg: 'main',
  344. type: 'mine',
  345. },
  346. {
  347. name: '变更交易节点',
  348. page: 'pages/mine/changeVisit/index',
  349. pkg: 'main',
  350. type: 'mine',
  351. },
  352. {
  353. name: '盘客工具',
  354. page: 'pages/mine/statCustomer/index',
  355. pkg: 'main',
  356. type: 'mine',
  357. },
  358. {
  359. name: '客户信息',
  360. page: 'pages/mine/customerDetail/index',
  361. pkg: 'main',
  362. type: 'mine',
  363. },
  364. {
  365. name: '客户分析',
  366. page: 'pages/mine/customerAnalyse/index',
  367. pkg: 'main',
  368. type: 'mine',
  369. },
  370. {
  371. name: '个人主页',
  372. page: 'pages/mine/myHomepage/index',
  373. pkg: 'main',
  374. type: 'mine',
  375. },
  376. {
  377. name: '意见反馈',
  378. page: 'pages/mine/feedBack/index',
  379. pkg: 'main',
  380. type: 'mine',
  381. },
  382. {
  383. name: '全景图',
  384. page: 'pages/index/webview/index',
  385. pkg: 'main',
  386. type: 'other',
  387. },
  388. ]
  389. /**
  390. * 获取 app pages 列表
  391. */
  392. function getPages() {
  393. const grp = routes.reduce((g, r) => {
  394. const { pkg, page } = r
  395. const pg = g[pkg] || []
  396. return Object.assign(g, {
  397. [`${pkg}`]: pg.concat(page),
  398. })
  399. }, {});
  400. const pages = grp.main;
  401. const subPackages = Object.keys(grp).filter(x => x !== 'main').reduce(((pkg, key) => {
  402. return pkg.concat({
  403. root: key,
  404. pages: grp[key],
  405. })
  406. }),[])
  407. return {
  408. pages,
  409. subPackages,
  410. }
  411. }
  412. // eslint-disable-next-line import/no-commonjs
  413. module.exports = {
  414. routes,
  415. getPages,
  416. };