trunk/pc4mobx/organization/index.js

146 lines
4.8 KiB
JavaScript

import React from "react";
import Route from "react-router/lib/Route";
import { WeaLocaleProvider } from "ecCom";
import Home from "./components/Home";
import SimpleOrg from "./components/tree/index";
import StandardOrg from "./components/tree/standard_org";
import RankScheme from "./components/postionrank/RankScheme";
import JobLevel from "./components/postionrank/JobLevel";
import JobGrade from "./components/postionrank/JobGrade";
import Sequence from "./components/sequence/Sequence";
import Group from "./components/group/Group";
import OfficeManage from "./components/office/officeManage";
import CompanyExtend from "./components/company/CompanyExtend";
import BranchNumSetting from "./components/numberSetting/branchNumSetting";
import DeptNumberSet from "./components/numberSetting/deptNumberSet";
import PostNumberSet from "./components/numberSetting/postNumberSet";
import ResourceNumberSet from "./components/numberSetting/resourceNumberSet";
import Company from "./components/company/company";
import StaffScheme from "./components/staff/StaffScheme";
import Staff from "./components/staff/Staff";
import Job from "./components/job/Job";
import JobExtend from "./components/job/JobExtend";
import Department from "./components/department/department";
import DepartmentExtendStore from "./components/department/departmentExtend";
import FieldDefined from "./components/fieldDefinedSet/FieldDefined";
import stores from "./stores";
import "./style/index";
// 读取系统多语言配置
let getLocaleLabel = WeaLocaleProvider.getLocaleLabel.bind(
this,
"organization"
);
// 不需要读取系统多语言
getLocaleLabel = function (nextState, replace, callback) {
callback();
};
//const Home = (props) => props.children;
const Routes = (
<Route
key="organization"
path="organization"
onEnter={getLocaleLabel}
component={Home}>
<Route key="index" path="index" component={SimpleOrg} />
<Route key="standard" path="standard" component={StandardOrg} />
<Route key="rankscheme" path="rankscheme" component={RankScheme} />
<Route key="joblevel" path="joblevel" component={JobLevel} />
<Route key="jobgrade" path="jobgrade" component={JobGrade} />
<Route key="sequence" path="sequence" component={Sequence} />
<Route key="group" path="group" component={Group} />
<Route key="officeManage" path="officeManage" component={OfficeManage} />
<Route key="companyExtend" path="companyExtend/:id" component={CompanyExtend} />
<Route
key="branchNumSetting"
path="branchNumSetting"
component={BranchNumSetting}
/>
<Route key="deptNumberSet" path="deptNumberSet" component={DeptNumberSet} />
<Route key="postNumberSet" path="postNumberSet" component={PostNumberSet} />
<Route
key="resourceNumberSet"
path="resourceNumberSet"
component={ResourceNumberSet}
/>
<Route key="company" path="company" component={Company} />
<Route key="department" path="department" component={Department} />
<Route
key="departmentExtend"
path="departmentExtend/:id"
component={DepartmentExtendStore}
/>
<Route key="staffscheme" path="staffscheme" component={StaffScheme} />
<Route key="staff" path="staff" component={Staff} />
<Route key="job" path="job" component={Job} />
<Route key="jobExtend" path="jobExtend/:id" component={JobExtend} />
<Route name="fieldDef" path="fieldDef/:type" component={FieldDefined} />
</Route>
);
const OutSignAppSettingProvider = (props) => (
<Provider
ecId={`${(this && this.props && this.props.ecId) || ""}_Provider@tqobex`}
outSignAppSetting={stores.outSignAppSetting}>
<OutSignAppSetting
ecId={`${
(this && this.props && this.props.ecId) || ""
}_OutSignAppSetting@cli4xv`}
{...props}
/>
</Provider>
);
class NetworkStrategy extends React.Component {
constructor(props) {
super(props);
this.state = {
reRender: false,
};
}
componentDidMount() {
// 多语言加载之后,已经 mount 的组件,需要重新 render 一次,刷新多语言配置。
// getLocaleLabelByCode('hrm').then(() => this.setState({
// reRender: true
// }));
}
render = () => (
<Provider
ecId={`${(this && this.props && this.props.ecId) || ""}_Provider@is207z`}
{...stores}>
<Home
ecId={`${(this && this.props && this.props.ecId) || ""}_Home@6rat5p`}>
<SecuritySetting
ecId={`${
(this && this.props && this.props.ecId) || ""
}_SecuritySetting@d7jz8e`}
single="1"
type="network"
{...this.props}
/>
</Home>
</Provider>
);
}
module.exports = {
Route: Routes,
store: stores,
com: {
OutSignAppSettingProvider: OutSignAppSettingProvider,
NetworkStrategy,
},
};
// module.exports = {
// Route: Routes,
// store: stores,
// };