content.jsx 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. import React, { Component } from 'react';
  2. import '../content.less';
  3. import './content.less';
  4. import LeftTab from '../leftTab';
  5. import {getMenu} from '../publicMenu.js'
  6. class Content extends Component {
  7. constructor() {
  8. super();
  9. this.state = {
  10. loading: false,
  11. component: <div></div>,
  12. };
  13. }
  14. componentWillMount () {
  15. var ids=window.location.href.indexOf('rid=');
  16. var idk=window.location.href.substr(ids+4);
  17. var rid=idk.split('#');
  18. let menu=getMenu(rid);
  19. let curry;
  20. if(menu[0].subMenus.length>0){
  21. curry=menu[0].subMenus[0].url.split('#');
  22. }else{
  23. curry=menu[0].url.split('#');
  24. };
  25. if (window.location.hash) {
  26. this.getKey(window.location.hash.substr(1));
  27. } else {
  28. this.getKey(curry[1]);
  29. };
  30. }
  31. getKey (key) {
  32. switch (key) {
  33. //科技服务订单
  34. case 'myService':
  35. require.ensure([], () => {
  36. const MyService = require('./myOrder/servicesOrder/myService').default;
  37. this.setState({
  38. component: <MyService />
  39. });
  40. });
  41. break;
  42. //开单与签单
  43. case 'billing':
  44. require.ensure([], () => {
  45. const Billing = require('./orderNew/billing').default;
  46. this.setState({
  47. component: <Billing />
  48. });
  49. });
  50. break;
  51. case 'orderStatistics':
  52. require.ensure([], () => {
  53. const OrderStatistics = require('./orderStatistics/orderStatistics').default;
  54. this.setState({
  55. component: <OrderStatistics />
  56. });
  57. });
  58. break;
  59. case 'serviceManage':
  60. require.ensure([], () => {
  61. const ServiceManage = require('./departmentOrder/servicesOrder/serviceManage').default;
  62. this.setState({
  63. component: <ServiceManage />
  64. });
  65. });
  66. break;
  67. case 'public':
  68. require.ensure([], () => {
  69. const PublicOrder = require('./orderManagement/publicOrder/publicOrder').default;
  70. this.setState({
  71. component: <PublicOrder />
  72. });
  73. });
  74. break;
  75. case 'approved':
  76. require.ensure([], () => {
  77. const ApproveOrder = require('./orderManagement/approveOrder/approveOrder').default;
  78. this.setState({
  79. component: <ApproveOrder />
  80. });
  81. });
  82. break;
  83. case 'mySettlement':
  84. require.ensure([], () => {
  85. const MySettlement = require('./settlementOrder/mySettlement/mySettlement').default;
  86. this.setState({
  87. component: <MySettlement />
  88. });
  89. });
  90. break;
  91. case 'settlementManage':
  92. require.ensure([], () => {
  93. const SettlementManage = require('./settlementOrder/settlementManage/settlementManagement').default;
  94. this.setState({
  95. component: <SettlementManage />
  96. });
  97. });
  98. break;
  99. case 'myBill':
  100. require.ensure([], () => {
  101. const MyBill = require('./flowSettlement/myBill/myBill.jsx').default;
  102. this.setState({
  103. component: <MyBill />
  104. });
  105. });
  106. break;
  107. case 'billManage':
  108. require.ensure([], () => {
  109. const MyBill = require('./flowSettlement/billManage/myBill.jsx').default;
  110. this.setState({
  111. component: <MyBill />
  112. });
  113. });
  114. break;
  115. case 'billQuery':
  116. require.ensure([], () => {
  117. const MyBill = require('./flowSettlement/billQuery/myBill.jsx').default;
  118. this.setState({
  119. component: <MyBill />
  120. });
  121. });
  122. break;
  123. case 'billManagement':
  124. require.ensure([], () => {
  125. const MyBill = require('./flowSettlement/billManagement/myBill.jsx').default;
  126. this.setState({
  127. component: <MyBill />
  128. });
  129. });
  130. break;
  131. //订单新增空白
  132. default:
  133. require.ensure([], () => {
  134. const Module = require('../module').default;
  135. this.setState({
  136. component:<Module />
  137. });
  138. });
  139. };
  140. window.location.hash = key;
  141. }
  142. render () {
  143. return (
  144. <div className="manage-content">
  145. <LeftTab handlekey={this.getKey.bind(this)} />
  146. <div className="content-right">
  147. {this.state.component}
  148. </div>
  149. </div>
  150. )
  151. }
  152. }
  153. export default Content;