import React from 'react'; import ReactDom from 'react-dom'; import ajax from 'jquery/src/ajax/xhr.js'; import $ from 'jquery/src/ajax'; import '../content.less'; import { citySelect } from '../../../NewDicProvinceList'; import { getNewDiccityArr, } from "@/tools.js"; import { Form,Radio, Icon, Button, Input, Select, Spin, Table, Switch, message, DatePicker, Modal, Upload,Popconfirm,AutoComplete,Tabs } from 'antd'; import {patternOrganization,conditionOrganization} from '../../../dataDic.js'; import {getPattern,getCondition} from '../../../tools.js'; import {ChooseList} from "../../order/orderNew/chooseList"; const confirm = Modal.confirm; const {TabPane} = Tabs const Organization=Form.create()(React.createClass({ loadData(pageNo) { this.state.data = []; this.setState({ loading: true, }); $.ajax({ method: "post", dataType: "json", crossDomain: false, url: globalConfig.context + '/api/admin/organization/listOrganizationManagement', data: { pageNo: pageNo || 1, pageSize: this.state.pagination.pageSize, name: this.state.name, //组织名称 superId:this.state.superId,//上级组织 type:this.state.type,//组织类型 depNo:this.state.depNo,//组织编号 }, success: function (data) { let theArr = []; if (!data.data || !data.data.list) { if (data.error && data.error.length) { message.warning(data.error[0].message); }; } else { for (let i = 0; i < data.data.list.length; i++) { let thisdata = data.data.list[i]; theArr.push({ key: i, id: thisdata.id,//每一条记录的ID depNo:thisdata.depNo,//组织编号 name:thisdata.name,//组织名称 type:thisdata.type,//组织类型 managerId:thisdata.managerName,//负责人 superId:thisdata.superName,//上级组织 status:thisdata.status,//组织状态 workingHoursName:thisdata.workingHoursName }); }; this.state.pagination.current = data.data.pageNo; this.state.pagination.total = data.data.totalCount; this.setState({ dataSource: theArr, page:data.data.pageNo, pagination: this.state.pagination }); }; }.bind(this), }).always(function () { this.setState({ loading: false }); }.bind(this)); }, getInitialState() { return { workingHoursType:0, searchMore: true, selectedRowKeys: [], selectedRows: [], loading: false, workTimeList:[], pagination: { defaultCurrent: 1, defaultPageSize: 10, showQuickJumper: true, pageSize: 10, onChange: function (page) { this.loadData(page); }.bind(this), showTotal: function (total) { return '共' + total + '条数据'; } }, columns: [ { title: '组织编号', dataIndex: 'depNo', key: 'depNo', }, { title: '组织名称', dataIndex: 'name', key: 'name', }, { title: '负责人', dataIndex: 'managerId', key: 'managerId', },{ title: '组织类型', dataIndex: 'type', key: 'type', render: text => { return getPattern(text) } }, { title: '上级组织', dataIndex: 'superId', key: 'superId', },{ title: '组织状态', dataIndex: 'status', key: 'status', render: text => { return getCondition(text) } },{ title: '作息时间类型', dataIndex: 'workingHoursName', key: 'workingHoursName', }, ], dataSource: [], searchTime: [,] }; }, componentWillMount() { this.selectSuperId(); this.getWorkTimeList(); }, //获取上级组织 selectSuperId() { this.state.data = [] $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/organization/selectSuperId", data:{ }, success: function (data) { let theArr = []; let theId=[];//用于保存上级组织的ID和名称 let thedata=data.data; if (!thedata) { if (data.error && data.error.length) { message.warning(data.error[0].message); }; thedata = {}; }; var contactIds=[]; for(var i=0;i{theData.name} ); theId.push( [theData.id,theData.name] ); }; this.setState({ SuperArr:thedata, contactsOption: theArr, theId: theId, orderStatusOptions:data.data, }); }.bind(this), }).always(function () { this.loadData(this.state.page); this.setState({ loading: false }); }.bind(this)); }, //获取作息时间 getWorkTimeList(){ $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/department/workingHours/list", data:{}, success: function (data) { if(data.error.length === 0){ this.setState({ workTimeList: data.data, }); }else{ message.warning(data.error[0].message); } }.bind(this), }).always(function () { this.setState({ loading: false }); }.bind(this)); }, //编辑部门,保存 edithandleSubmit(e){ e.preventDefault(); //上级组织字典 let nameText=this.state.SuperArr let superText=this.state.editSuperId; let upId=this.state.theId; let oldId=''; let superOne=this.state.editDataSource[0].editSuperId; if(superOne==superText){ for(let j=0;j 0 }); $.ajax({ method: "POST", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/organization/deleteById", data: { id: deletedIds } }).done(function (data) { if (!data.error.length) { message.success('删除成功!'); this.setState({ loading: false, }); } else { message.warning(data.error[0].message); }; this.selectSuperId(); }.bind(this)); }, //新增一个部门,保存 addhandleSubmit(e){ e.preventDefault(); // if(!this.state.theTypes){ // message.warning('请输入负责人姓名'); // return false; // } if(!this.state.typeOrganization){ message.warning('请选择组织类型'); return false; } if(!this.state.upOrganization){ message.warning('请选择上级组织'); return false; } this.props.form.validateFields((err, values) => { if (!err) { this.setState({ loading: true }); $.ajax({ method: "post", dataType: "json", crossDomain: false, url:globalConfig.context + '/api/admin/organization/addOrganization', data:{ name:this.state.nameOrganization,//组织名称 managerId:this.state.theTypes,//负责人ID type:this.state.typeOrganization, //组织类型 superId:this.state.upOrganization,//上级组织 remarks:this.state.remarksOrganization,//组织职能说明 workingHoursType:this.state.workingHoursType,//作息时间 } }).done(function (data) { this.setState({ loading: false }); if (!data.error.length) { message.success('保存成功!'); this.handleCancel(); this.selectSuperId(); } else { message.warning(data.error[0].message); } }.bind(this)); } }); }, //主管初始加载(自动补全) supervisor(e){ $.ajax({ method: "post", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/organization/selectName", data:{ name:e }, success: function (data) { let thedata=data.data; if (!thedata) { if (data.error && data.error.length) { message.warning(data.error[0].message); }; thedata = {}; }; this.setState({ customerArr:thedata, }); }.bind(this), }).always(function () { this.setState({ loading: false }); }.bind(this)); }, //上级主管输入框失去焦点是判断客户是否存在 selectAuto(value,options){ this.setState({ managerIdOrganization:value }) let theType=''; let contactLists=this.state.customerArr||[]; if (value) { contactLists.map(function (item) { if (item.name == value.toString()) { theType = item.id; } }); } this.setState({ theTypes:theType }) }, selectAuto2(value,options){ this.setState({ financeId:value }) let theType=''; let contactLists=this.state.customerArr||[]; if (value) { contactLists.map(function (item) { if (item.name == value.toString()) { theType = item.id; } }); } this.setState({ theTypes2:theType }) }, //失去焦点时 blurChange(e){ }, //值改变时请求客户名称 httpChange(e){ if(e.length>=1){ this.supervisor(e); } this.setState({ managerIdOrganization:e }) }, httpChange2(e){ if(e.length>=1){ this.supervisor(e); } this.setState({ financeName:e }) }, addClick() { this.state.theTypes=''; this.state.nameOrganization='';//组织名称清零 this.state.managerIdOrganization= '';//负责人ID清零 this.state.financeId = "";//负责人ID清零 this.state.financeName = "";//负责人ID清零 this.state.typeOrganization= undefined; //组织类型清零 this.state.upOrganization= undefined;//上级组织清零 this.state.remarksOrganization= '';//组织职能说明清零 this.state.RowData = {}; this.setState({ workingHoursType:0, visible: true }); this.selectSuperId(); }, editClick() { this.state.RowData = {}; this.setState({ editvisible: true }); }, handleCancel() { this.setState({ visible: false }) }, edithandleCancel() { this.loadData(this.state.page); this.setState({ editvisible: false }) }, search() { this.loadData(); }, //把搜索的部分置零 reset() { this.state.superId = undefined;//上级组织清零 this.state.name = '';//组织名称清零 this.state.type = undefined;//组织类型清零 this.state.depNo = '';//组织编号清零 this.loadData(); }, searchSwitch() { this.setState({ searchMore: !this.state.searchMore }); }, changeList(arr) { const newArr = []; this.state.columns.forEach(item => { arr.forEach(val => { if (val === item.title) { newArr.push(item); } }); }); this.setState({ changeList: newArr }); }, render() { const FormItem = Form.Item const rowSelection = { selectedRowKeys: this.state.selectedRowKeys, onChange: (selectedRowKeys, selectedRows) => { this.setState({ selectedRows: selectedRows.slice(-1), selectedRowKeys: selectedRowKeys.slice(-1) }); }, onSelect: (recordt, selected, selectedRows) => { this.setState({ recordt:recordt.id }) }, }; const formItemLayout = { labelCol: { span: 8 }, wrapperCol: { span: 14 }, }; const { getFieldDecorator } = this.props.form; const hasSelected = this.state.selectedRowKeys.length > 0; const { RangePicker } = DatePicker; const dataSources=this.state.customerArr || []; const options = dataSources.map((group,index) => ) const options2 = dataSources.map((group,index) => ) return (
{ this.setState({ name: e.target.value }); }} /> 更多搜索
{ this.setState({ depNo: e.target.value }); }} />
{this.setState({nameOrganization:e.target.value})}} required="required"/> *
{/***/}
*
*
{ this.setState({ remarksOrganization: e.target.value }) }} style={{width:'95%'}}/>
{this.setState({editName:e.target.value})}}/>
{/* * */}
{this.setState({abbreviation:e.target.value})}}/>
{/* * */}
{this.state.editDepNo}
{this.state.editCreateId}
{this.state.editTime}
{ this.setState({ editRemarks: e.target.value }) }}/>
); } })); export default Organization;