content.jsx 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. import React, { Component } from 'react';
  2. import '../content.less';
  3. import LeftTab from '../leftTab';
  4. import {getMenu} from '../publicMenu.jsx'
  5. class Content extends Component {
  6. constructor() {
  7. super();
  8. this.state = {
  9. loading: false,
  10. component: <div></div>,
  11. };
  12. }
  13. componentWillMount() {
  14. var ids=window.location.href.indexOf('rid=');
  15. var idk=window.location.href.substr(ids+4);
  16. var rid=idk.split('#');
  17. let menu=getMenu(rid);
  18. let curry;
  19. if(menu[0].subMenus.length>0){
  20. curry=menu[0].subMenus[0].url.split('#');
  21. }else{
  22. curry=menu[0].url.split('#');
  23. };
  24. if (window.location.hash) {
  25. this.getKey(window.location.hash.substr(1));
  26. } else {
  27. this.getKey(curry[1]);
  28. };
  29. }
  30. getKey(key) {
  31. switch (key) {
  32. case 'myOrganization':
  33. require.ensure([], () => {
  34. const MyClient = require('./customerData/myClient').default;
  35. this.setState({
  36. component: <MyClient />
  37. });
  38. });
  39. break;
  40. case 'organizationQuery':
  41. require.ensure([], () => {
  42. const CompanyCustomer = require('./customerData/companyCustomer').default;
  43. this.setState({
  44. component:<CompanyCustomer />,
  45. });
  46. });
  47. break;
  48. case 'myPersonal':
  49. require.ensure([], () => {
  50. const IndividualCustomer = require('./individualCustomer/individualCustomer').default;
  51. this.setState({
  52. component: <IndividualCustomer />
  53. });
  54. });
  55. break;
  56. case 'personalQuery':
  57. require.ensure([], () => {
  58. const QueryCustomer = require('./individualCustomer/queryCustomer').default;
  59. this.setState({
  60. component:<QueryCustomer />,
  61. });
  62. });
  63. break;
  64. case 'personalManage':
  65. require.ensure([], () => {
  66. const PersonalManage = require('./customerManagement/personalManages').default;
  67. this.setState({
  68. component:<PersonalManage />,
  69. });
  70. });
  71. break;
  72. case 'publicManage':
  73. require.ensure([], () => {
  74. const PublicManages = require('./customerManagement/publicManages').default;
  75. this.setState({
  76. component:<PublicManages />,
  77. });
  78. });
  79. break;
  80. case 'organizationManage':
  81. require.ensure([], () => {
  82. const OrganizationManage = require('./customerManagement/organizationManages').default;
  83. this.setState({
  84. component:<OrganizationManage />,
  85. });
  86. });
  87. break;
  88. case 'myBusiness':
  89. require.ensure([], () => {
  90. const MyBusiness = require('./customerService/myBusiness').default;
  91. this.setState({
  92. component:<MyBusiness />,
  93. });
  94. });
  95. break;
  96. case 'businessMange':
  97. require.ensure([], () => {
  98. const BusinessMange = require('./customerService/businessManges').default;
  99. this.setState({
  100. component:<BusinessMange />,
  101. });
  102. });
  103. break;
  104. case 'businessQuery':
  105. require.ensure([], () => {
  106. const ServiceQuery = require('./customerService/serviceQuery').default;
  107. this.setState({
  108. component:<ServiceQuery />,
  109. });
  110. });
  111. break;
  112. case 'visitStatistics':
  113. require.ensure([], () => {
  114. const VisitStatistics = require('./statistics/visitStatistics').default;
  115. this.setState({
  116. component:<VisitStatistics />,
  117. });
  118. });
  119. break;
  120. case 'statusStatistics':
  121. require.ensure([], () => {
  122. const StatusStatistics = require('./statistics/statusStatistics').default;
  123. this.setState({
  124. component:<StatusStatistics />,
  125. });
  126. });
  127. break;
  128. case 'followStatistics':
  129. require.ensure([], () => {
  130. const FollowStatistics = require('./statistics/followStatistics').default;
  131. this.setState({
  132. component:<FollowStatistics />,
  133. });
  134. });
  135. break;
  136. default:
  137. require.ensure([], () => {
  138. const Module = require('../module').default;
  139. this.setState({
  140. component:<Module />
  141. });
  142. });
  143. };
  144. window.location.hash = key;
  145. }
  146. render() {
  147. return (
  148. <div className="manage-content">
  149. <LeftTab handlekey={this.getKey.bind(this)} />
  150. <div className="content-right">
  151. {this.state.component}
  152. </div>
  153. </div>
  154. )
  155. }
  156. }
  157. export default Content;