|
@@ -2,321 +2,570 @@ import React from 'react';
|
|
|
import ReactDom from 'react-dom';
|
|
|
import ajax from 'jquery/src/ajax/xhr.js';
|
|
|
import $ from 'jquery/src/ajax';
|
|
|
-import { Form,Radio, Icon, Button, Input, Select, Spin, Table, Switch, message, DatePicker, Modal, Upload } from 'antd';
|
|
|
+import { Form, Radio, Icon, Button, Input, Select, AutoComplete, Spin, Table, Switch, message, DatePicker, Modal, Upload } from 'antd';
|
|
|
import Newuser from "./newUser.jsx"
|
|
|
import './userMangagement.less'
|
|
|
-import {techAuditStatusList, station,post } from '../../../dataDic.js';
|
|
|
+import { techAuditStatusList, station, post } from '../../../dataDic.js';
|
|
|
+import {getPost,getStation} from '../../../tools.js';
|
|
|
|
|
|
-const User=Form.create()(React.createClass({
|
|
|
+const User = Form.create()(React.createClass({
|
|
|
loadData(pageNo) {
|
|
|
- this.state.data = [];
|
|
|
- this.setState({
|
|
|
- loading: true
|
|
|
- });
|
|
|
- $.ajax({
|
|
|
- method: "get",
|
|
|
- dataType: "json",
|
|
|
- crossDomain: false,
|
|
|
- url: globalConfig.context + '/api/admin/supervise/adminLi',
|
|
|
- data: {
|
|
|
- pageNo: pageNo || 1,
|
|
|
- pageSize: this.state.pagination.pageSize,
|
|
|
- userName:this.state.userNameSearch,
|
|
|
- organization:this.state.organizationSearch,
|
|
|
- role:this.state.rolesSearch,
|
|
|
- post:this.state.postSearch,
|
|
|
- station:this.state.stationSearch,
|
|
|
- status:this.state.statusSeach,
|
|
|
- signName:this.state.signNameSearch,
|
|
|
- mobile:this.state.mobileSearch,
|
|
|
- proName:this.state.proNameSearch
|
|
|
- },
|
|
|
- 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,
|
|
|
- mobile: thisdata.mobile,
|
|
|
- name: thisdata.name,
|
|
|
- email: thisdata.email,
|
|
|
- createTime: thisdata.createTime,
|
|
|
- number: thisdata.number,
|
|
|
- province: thisdata.province,
|
|
|
- position: thisdata.position,
|
|
|
- superior: thisdata.superior,
|
|
|
- superiorId: thisdata.superiorId,
|
|
|
- createTimeFormattedDate: thisdata.createTimeFormattedDate
|
|
|
- });
|
|
|
- };
|
|
|
- this.state.pagination.current = data.data.pageNo?data.data.pageNo:'0';
|
|
|
- this.state.pagination.total = data.data.totalCount?data.data.totalCount:'0';
|
|
|
- };
|
|
|
- this.setState({
|
|
|
- dataSource: theArr,
|
|
|
- pagination: this.state.pagination
|
|
|
- });
|
|
|
- }.bind(this),
|
|
|
- }).always(function () {
|
|
|
- this.setState({
|
|
|
- loading: false
|
|
|
- });
|
|
|
- }.bind(this));
|
|
|
- },
|
|
|
- getInitialState() {
|
|
|
- return {
|
|
|
- datauser:{},
|
|
|
- searchMore: true,
|
|
|
- selectedRowKeys: [],
|
|
|
- selectedRows: [],
|
|
|
- loading: false,
|
|
|
- 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: 'key',
|
|
|
- key: 'key',
|
|
|
- }, {
|
|
|
- title: '登录用户名',
|
|
|
- dataIndex: 'name',
|
|
|
- key: 'name',
|
|
|
- }, {
|
|
|
- title: '角色',
|
|
|
- dataIndex: 'email',
|
|
|
- key: 'email',
|
|
|
- }, {
|
|
|
- title: '用户姓名',
|
|
|
- dataIndex: 'createTime',
|
|
|
- key: 'createTime',
|
|
|
- }, {
|
|
|
- title: '组织机构',
|
|
|
- dataIndex: 'number',
|
|
|
- key: 'number',
|
|
|
- }, {
|
|
|
- title: '职务',
|
|
|
- dataIndex: 'auditStatus',
|
|
|
- key: 'auditStatus',
|
|
|
- },
|
|
|
- {
|
|
|
- title: '岗位',
|
|
|
- dataIndex: 'boutique',
|
|
|
- key: 'boutique',
|
|
|
- },
|
|
|
-
|
|
|
- {
|
|
|
- title: '上级主管姓名',
|
|
|
- dataIndex: 'province',
|
|
|
- key: 'province',
|
|
|
- },
|
|
|
- {
|
|
|
- title: '状态',
|
|
|
- dataIndex: 'a',
|
|
|
- key: 'a',
|
|
|
- }
|
|
|
- ],
|
|
|
- dataSource: [],
|
|
|
- };
|
|
|
- },
|
|
|
- componentWillMount() {
|
|
|
- let organizationArr = [];
|
|
|
- techAuditStatusList.map(function (item) {
|
|
|
- organizationArr.push(
|
|
|
- <Select.Option value={item.value} key={item.key}>{item.key}</Select.Option>
|
|
|
- )
|
|
|
- });
|
|
|
- this.state.organizationList = organizationArr;
|
|
|
- this.loadData();
|
|
|
- },
|
|
|
- tableRowClick(record, index) {
|
|
|
- this.state.userDetaile=true;
|
|
|
- this.state.datauser = record;
|
|
|
- this.setState({
|
|
|
- showDesc: true
|
|
|
- });
|
|
|
- },
|
|
|
- //锁定
|
|
|
- locking() {
|
|
|
- let deletedIds = [];
|
|
|
- for (let idx = 0; idx < this.state.selectedRows.length; idx++) {
|
|
|
- let rowItem = this.state.selectedRows[idx];
|
|
|
- if (rowItem.id) {
|
|
|
- deletedIds.push(rowItem.id)
|
|
|
- };
|
|
|
- };
|
|
|
- this.setState({
|
|
|
- selectedRowKeys: [],
|
|
|
- loading: true
|
|
|
- });
|
|
|
- $.ajax({
|
|
|
- method: "POST",
|
|
|
- dataType: "json",
|
|
|
- crossDomain: false,
|
|
|
- url: globalConfig.context + "/api/admin/achievement/delete",
|
|
|
- data: {
|
|
|
- ids: deletedIds
|
|
|
- }
|
|
|
- }).done(function (data) {
|
|
|
- if (!data.error.length) {
|
|
|
- message.success('锁定成功!');
|
|
|
- this.setState({
|
|
|
- loading: false,
|
|
|
- });
|
|
|
- } else {
|
|
|
- message.warning(data.error[0].message);
|
|
|
- };
|
|
|
- this.loadData();
|
|
|
- }.bind(this));
|
|
|
- },
|
|
|
- //激活
|
|
|
- activation() {
|
|
|
- let deletedIds = [];
|
|
|
- for (let idx = 0; idx < this.state.selectedRows.length; idx++) {
|
|
|
- let rowItem = this.state.selectedRows[idx];
|
|
|
- if (rowItem.id) {
|
|
|
- deletedIds.push(rowItem.id)
|
|
|
- };
|
|
|
- };
|
|
|
- this.setState({
|
|
|
- selectedRowKeys: [],
|
|
|
- loading: true
|
|
|
- });
|
|
|
- $.ajax({
|
|
|
- method: "POST",
|
|
|
- dataType: "json",
|
|
|
- crossDomain: false,
|
|
|
- url: globalConfig.context + "/api/admin/achievement/delete",
|
|
|
- data: {
|
|
|
- ids: deletedIds
|
|
|
- }
|
|
|
- }).done(function (data) {
|
|
|
- if (!data.error.length) {
|
|
|
- message.success('激活成功!');
|
|
|
- this.setState({
|
|
|
- loading: false,
|
|
|
- });
|
|
|
- } else {
|
|
|
- message.warning(data.error[0].message);
|
|
|
- };
|
|
|
- this.loadData();
|
|
|
- }.bind(this));
|
|
|
- },
|
|
|
- //删除
|
|
|
- delectRow() {
|
|
|
- let deletedIds = [];
|
|
|
- for (let idx = 0; idx < this.state.selectedRows.length; idx++) {
|
|
|
- let rowItem = this.state.selectedRows[idx];
|
|
|
- if (rowItem.id) {
|
|
|
- deletedIds.push(rowItem.id)
|
|
|
- };
|
|
|
- };
|
|
|
- this.setState({
|
|
|
- selectedRowKeys: [],
|
|
|
- loading: true
|
|
|
- });
|
|
|
- $.ajax({
|
|
|
- method: "POST",
|
|
|
- dataType: "json",
|
|
|
- crossDomain: false,
|
|
|
- url: globalConfig.context + "/api/admin/achievement/delete",
|
|
|
- data: {
|
|
|
- ids: deletedIds
|
|
|
- }
|
|
|
- }).done(function (data) {
|
|
|
- if (!data.error.length) {
|
|
|
- message.success('删除成功!');
|
|
|
- this.setState({
|
|
|
- loading: false,
|
|
|
- });
|
|
|
- } else {
|
|
|
- message.warning(data.error[0].message);
|
|
|
- };
|
|
|
- this.loadData();
|
|
|
- }.bind(this));
|
|
|
- },
|
|
|
- addClick() {
|
|
|
- this.state.userDetaile=false;
|
|
|
- this.setState({
|
|
|
- showDesc: true
|
|
|
- });
|
|
|
- },
|
|
|
- closeDesc(e, s) {
|
|
|
- this.state.showDesc = e;
|
|
|
- if (s) {
|
|
|
- this.loadData();
|
|
|
- };
|
|
|
- },
|
|
|
- search() {
|
|
|
- this.loadData();
|
|
|
- },
|
|
|
- reset() {
|
|
|
- this.state.userNameSearch='';
|
|
|
- this.state.organizationSearch=undefined;
|
|
|
- this.state.rolesSearch=undefined;
|
|
|
- this.state.postSearch=undefined;
|
|
|
- this.state.stationSearch=undefined;
|
|
|
- this.state.statusSeach=undefined;
|
|
|
- this.state.signNameSearch='';
|
|
|
- this.state.mobileSearch='';
|
|
|
- this.state.proNameSearch='';
|
|
|
- this.loadData();
|
|
|
- },
|
|
|
- searchSwitch() {
|
|
|
- this.setState({
|
|
|
- searchMore: !this.state.searchMore
|
|
|
- });
|
|
|
- },
|
|
|
- render() {
|
|
|
- const rowSelection = {
|
|
|
- selectedRowKeys: this.state.selectedRowKeys,
|
|
|
- onChange: (selectedRowKeys, selectedRows) => {
|
|
|
- this.setState({
|
|
|
- selectedRows: selectedRows.slice(-1),
|
|
|
- selectedRowKeys: selectedRowKeys.slice(-1)
|
|
|
- });
|
|
|
- },
|
|
|
- onSelectAll: (selected, selectedRows, changeRows) => {
|
|
|
- this.setState({
|
|
|
- selectedRowKeys:[]
|
|
|
- })
|
|
|
+ this.state.data = [];
|
|
|
+ this.setState({
|
|
|
+ userDetaile:false,
|
|
|
+ loading: true
|
|
|
+ });
|
|
|
+ $.ajax({
|
|
|
+ method: "get",
|
|
|
+ dataType: "json",
|
|
|
+ crossDomain: false,
|
|
|
+ url: globalConfig.context + '/api/admin/superviser/adminList',
|
|
|
+ data: {
|
|
|
+ pageNo: pageNo || 1,
|
|
|
+ pageSize: this.state.pagination.pageSize,
|
|
|
+ name: this.state.userNameSearch,
|
|
|
+ departmentId: this.state.organizationSearch,
|
|
|
+ rid: this.state.rolesSearch,
|
|
|
+ duty: this.state.postSearch,
|
|
|
+ position: this.state.stationSearch,
|
|
|
+ status: this.state.statusSeach,
|
|
|
+ mobile: this.state.signNameSearch,
|
|
|
+ superiorId: this.state.theTypes
|
|
|
},
|
|
|
- };
|
|
|
- const hasSelected = this.state.selectedRowKeys.length > 0;
|
|
|
- const { RangePicker } = DatePicker;
|
|
|
- return (
|
|
|
- <div className="user-content" >
|
|
|
+ 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,
|
|
|
+ mobile: thisdata.mobile,
|
|
|
+ name: thisdata.name,
|
|
|
+ email: thisdata.email,
|
|
|
+ createTime: thisdata.createTime,
|
|
|
+ province: thisdata.province,
|
|
|
+ position: thisdata.position,
|
|
|
+ superior: thisdata.superior, //上级名称
|
|
|
+ superiorId: thisdata.superiorId, //上级Id
|
|
|
+ duty: thisdata.duty, //职务
|
|
|
+ status: thisdata.status,
|
|
|
+ userNo: thisdata.userNo,
|
|
|
+ departmentName: thisdata.departmentName, //部门名称
|
|
|
+ departmentId: thisdata.departmentId, //部门id
|
|
|
+ roles:thisdata.roles[0]
|
|
|
+ });
|
|
|
+ };
|
|
|
+ this.state.pagination.current = data.data.pageNo ? data.data.pageNo : '0';
|
|
|
+ this.state.pagination.total = data.data.totalCount ? data.data.totalCount : '0';
|
|
|
+ };
|
|
|
+ this.setState({
|
|
|
+ dataSource: theArr,
|
|
|
+ pagination: this.state.pagination
|
|
|
+ });
|
|
|
+ }.bind(this),
|
|
|
+ }).always(function() {
|
|
|
+ this.setState({
|
|
|
+ loading: false
|
|
|
+ });
|
|
|
+ }.bind(this));
|
|
|
+ },
|
|
|
+ getInitialState() {
|
|
|
+ return {
|
|
|
+ datauser: {},
|
|
|
+ searchMore: true,
|
|
|
+ selectedRowKeys: [],
|
|
|
+ selectedRows: [],
|
|
|
+ userDetaile: false,
|
|
|
+ departmentArr: [],
|
|
|
+ loading: false,
|
|
|
+ roleArr:[],
|
|
|
+ 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: 'userNo',
|
|
|
+ key: 'userNo',
|
|
|
+ }, {
|
|
|
+ title: '登录用户名',
|
|
|
+ dataIndex: 'mobile',
|
|
|
+ key: 'mobile',
|
|
|
+ }, {
|
|
|
+ title: '角色',
|
|
|
+ dataIndex: 'roles',
|
|
|
+ key: 'roles',
|
|
|
+ }, {
|
|
|
+ title: '用户姓名',
|
|
|
+ dataIndex: 'name',
|
|
|
+ key: 'name',
|
|
|
+ }, {
|
|
|
+ title: '部门',
|
|
|
+ dataIndex: 'departmentName',
|
|
|
+ key: 'departmentName',
|
|
|
+ }, {
|
|
|
+ title: '职务',
|
|
|
+ dataIndex: 'duty',
|
|
|
+ key: 'duty',
|
|
|
+ render: text => { return getPost(text) }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '岗位',
|
|
|
+ dataIndex: 'position',
|
|
|
+ key: 'position',
|
|
|
+ render: text => { return getStation(text) }
|
|
|
+ },
|
|
|
+
|
|
|
+ {
|
|
|
+ title: '上级主管姓名',
|
|
|
+ dataIndex: 'superior',
|
|
|
+ key: 'superior',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '状态',
|
|
|
+ dataIndex: 'status',
|
|
|
+ key: 'status',
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ dataSource: [],
|
|
|
+ };
|
|
|
+ },
|
|
|
+ componentWillMount() {
|
|
|
+ this.loadData();
|
|
|
+ this.departmentList();
|
|
|
+ this.rolesList();
|
|
|
+ },
|
|
|
+ tableRowClick(record, index) {
|
|
|
+ this.rolesArrS(record)
|
|
|
+ this.state.userDetaile = true;
|
|
|
+ this.state.datauser = record;
|
|
|
+ this.setState({
|
|
|
+ showDesc: true
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //新建获取id
|
|
|
+ addIdS() {
|
|
|
+ $.ajax({
|
|
|
+ method: "post",
|
|
|
+ dataType: "json",
|
|
|
+ crossDomain: false,
|
|
|
+ url: globalConfig.context + '/api/admin/superviser/newId',
|
|
|
+ data: {},
|
|
|
+ success: function(data) {
|
|
|
+ this.setState({
|
|
|
+ addId: data.data
|
|
|
+ });
|
|
|
+ }.bind(this),
|
|
|
+ }).always(function() {
|
|
|
+ this.setState({
|
|
|
+ loading: false
|
|
|
+ });
|
|
|
+ }.bind(this));
|
|
|
+ },
|
|
|
+ //部门
|
|
|
+ departmentList() {
|
|
|
+ this.setState({
|
|
|
+ loading: true
|
|
|
+ });
|
|
|
+ $.ajax({
|
|
|
+ method: "post",
|
|
|
+ dataType: "json",
|
|
|
+ crossDomain: false,
|
|
|
+ url: globalConfig.context + "/api/admin/organization/selectSuperId",
|
|
|
+ data: {
|
|
|
+
|
|
|
+ },
|
|
|
+ success: function(data) {
|
|
|
+ let thedata = data.data;
|
|
|
+ let theArr = [];
|
|
|
+ if(!thedata) {
|
|
|
+ if(data.error && data.error.length) {
|
|
|
+ message.warning(data.error[0].message);
|
|
|
+ };
|
|
|
+ thedata = {};
|
|
|
+ } else {
|
|
|
+ thedata.map(function(item, index) {
|
|
|
+ theArr.push({
|
|
|
+ key: index,
|
|
|
+ name: item.name,
|
|
|
+ id: item.id,
|
|
|
+ depNo: item.depNo
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }
|
|
|
+ this.setState({
|
|
|
+ departmentArr: theArr,
|
|
|
+ })
|
|
|
+ }.bind(this),
|
|
|
+ }).always(function() {
|
|
|
+ this.setState({
|
|
|
+ loading: false
|
|
|
+ });
|
|
|
+ }.bind(this));
|
|
|
+ },
|
|
|
+ //修改时获取角色数组
|
|
|
+ rolesArrS(e) {
|
|
|
+ $.ajax({
|
|
|
+ method: "get",
|
|
|
+ dataType: "json",
|
|
|
+ crossDomain: false,
|
|
|
+ url: globalConfig.context + "/api/admin/role",
|
|
|
+ data: {
|
|
|
+ uid:e.id
|
|
|
+ },
|
|
|
+ success: function(data) {
|
|
|
+ let thedata = data.data;
|
|
|
+ let theArr = [];
|
|
|
+ let theId=[]
|
|
|
+ if(!thedata) {
|
|
|
+ if(data.error && data.error.length) {
|
|
|
+ message.warning(data.error[0].message);
|
|
|
+ };
|
|
|
+ thedata = {};
|
|
|
+ } else {
|
|
|
+
|
|
|
+ }
|
|
|
+ this.setState({
|
|
|
+ role:thedata
|
|
|
+ })
|
|
|
+ }.bind(this),
|
|
|
+ }).always(function() {
|
|
|
+ }.bind(this));
|
|
|
+ },
|
|
|
+ //角色
|
|
|
+ rolesList() {
|
|
|
+ this.setState({
|
|
|
+ loading: true
|
|
|
+ });
|
|
|
+ $.ajax({
|
|
|
+ method: "get",
|
|
|
+ dataType: "json",
|
|
|
+ crossDomain: false,
|
|
|
+ url: globalConfig.context + "/api/roles",
|
|
|
+ data: {
|
|
|
+
|
|
|
+ },
|
|
|
+ success: function(data) {
|
|
|
+ let thedata = data.data;
|
|
|
+ let theArr = [];
|
|
|
+ if(!thedata) {
|
|
|
+ if(data.error && data.error.length) {
|
|
|
+ message.warning(data.error[0].message);
|
|
|
+ };
|
|
|
+ thedata = {};
|
|
|
+ } else {
|
|
|
+ thedata.map(function(item, index) {
|
|
|
+ theArr.push({
|
|
|
+ key: index,
|
|
|
+ roleName: item.roleName,
|
|
|
+ id: item.id,
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }
|
|
|
+ this.setState({
|
|
|
+ roleArr: theArr,
|
|
|
+ })
|
|
|
+ }.bind(this),
|
|
|
+ }).always(function() {
|
|
|
+ this.setState({
|
|
|
+ loading: false
|
|
|
+ });
|
|
|
+ }.bind(this));
|
|
|
+ },
|
|
|
+
|
|
|
+ //锁定
|
|
|
+ locking() {
|
|
|
+ let deletedIds;
|
|
|
+ let statust;
|
|
|
+ let mobiles;
|
|
|
+ let names;
|
|
|
+ for(let idx = 0; idx < this.state.selectedRows.length; idx++) {
|
|
|
+ let rowItem = this.state.selectedRows[idx];
|
|
|
+ if(rowItem.id) {
|
|
|
+ deletedIds=rowItem.id;
|
|
|
+ statust=rowItem.status;
|
|
|
+ names=rowItem.name;
|
|
|
+ mobiles=rowItem.mobile;
|
|
|
+ };
|
|
|
+ };
|
|
|
+ if(statust!='锁定'){
|
|
|
+ this.setState({
|
|
|
+ selectedRowKeys: [],
|
|
|
+ loading: true
|
|
|
+ });
|
|
|
+ $.ajax({
|
|
|
+ method: "POST",
|
|
|
+ dataType: "json",
|
|
|
+ crossDomain: false,
|
|
|
+ url: globalConfig.context + "/api/admin/superviser/updateAdmin",
|
|
|
+ data: {
|
|
|
+ data:JSON.stringify({
|
|
|
+ id: deletedIds,
|
|
|
+ status: '锁定',
|
|
|
+ name: names,
|
|
|
+ mobile: mobiles
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }).done(function(data) {
|
|
|
+ if(!data.error.length) {
|
|
|
+ message.success('锁定成功!');
|
|
|
+ this.setState({
|
|
|
+ loading: false,
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ message.warning(data.error[0].message);
|
|
|
+ };
|
|
|
+ this.loadData();
|
|
|
+ }.bind(this));
|
|
|
+ }else{
|
|
|
+ message.warning('已是锁定状态')
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //激活
|
|
|
+ activation() {
|
|
|
+ let deletedIds;
|
|
|
+ let statust;
|
|
|
+ let mobiles;
|
|
|
+ let names;
|
|
|
+ for(let idx = 0; idx < this.state.selectedRows.length; idx++) {
|
|
|
+ let rowItem = this.state.selectedRows[idx];
|
|
|
+ if(rowItem.id) {
|
|
|
+ deletedIds=rowItem.id;
|
|
|
+ statust=rowItem.status;
|
|
|
+ names=rowItem.name;
|
|
|
+ mobiles=rowItem.mobile;
|
|
|
+ };
|
|
|
+ };
|
|
|
+ if(statust!='正常'){
|
|
|
+ this.setState({
|
|
|
+ selectedRowKeys: [],
|
|
|
+ loading: true
|
|
|
+ });
|
|
|
+ $.ajax({
|
|
|
+ method: "POST",
|
|
|
+ dataType: "json",
|
|
|
+ crossDomain: false,
|
|
|
+ url: globalConfig.context + "/api/admin/superviser/updateAdmin",
|
|
|
+ data: {
|
|
|
+ data:JSON.stringify({
|
|
|
+ id: deletedIds,
|
|
|
+ status: '正常',
|
|
|
+ name: names,
|
|
|
+ mobile: mobiles
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }).done(function(data) {
|
|
|
+ if(!data.error.length) {
|
|
|
+ message.success('激活成功!');
|
|
|
+ this.setState({
|
|
|
+ loading: false,
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ message.warning(data.error[0].message);
|
|
|
+ };
|
|
|
+ this.loadData();
|
|
|
+ }.bind(this));
|
|
|
+ }else{
|
|
|
+ message.warning('已是激活状态')
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //删除
|
|
|
+ delectRow() {
|
|
|
+ let deletedIds;
|
|
|
+ let statust;
|
|
|
+ let mobiles;
|
|
|
+ let names;
|
|
|
+ for(let idx = 0; idx < this.state.selectedRows.length; idx++) {
|
|
|
+ let rowItem = this.state.selectedRows[idx];
|
|
|
+ if(rowItem.id) {
|
|
|
+ deletedIds=rowItem.id;
|
|
|
+ statust=rowItem.status;
|
|
|
+ names=rowItem.name;
|
|
|
+ mobiles=rowItem.mobile
|
|
|
+ };
|
|
|
+ };
|
|
|
+ this.setState({
|
|
|
+ selectedRowKeys: [],
|
|
|
+ loading: true
|
|
|
+ });
|
|
|
+ $.ajax({
|
|
|
+ method: "POST",
|
|
|
+ dataType: "json",
|
|
|
+ crossDomain: false,
|
|
|
+ url: globalConfig.context + "/api/admin/superviser/updateAdmin",
|
|
|
+ data: {
|
|
|
+ data:JSON.stringify({
|
|
|
+ id: deletedIds,
|
|
|
+ status:'注销',
|
|
|
+ name: names,
|
|
|
+ mobile: mobiles
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }).done(function(data) {
|
|
|
+ if(!data.error.length) {
|
|
|
+ message.success('删除成功!');
|
|
|
+ this.setState({
|
|
|
+ loading: false,
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ message.warning(data.error[0].message);
|
|
|
+ };
|
|
|
+ this.loadData();
|
|
|
+ }.bind(this));
|
|
|
+ },
|
|
|
+ addClick() {
|
|
|
+ this.addIdS()
|
|
|
+ this.state.userDetaile = false;
|
|
|
+ this.setState({
|
|
|
+ showDesc: true
|
|
|
+ });
|
|
|
+ },
|
|
|
+ closeDesc(e, s) {
|
|
|
+ this.state.showDesc = e;
|
|
|
+ if(s) {
|
|
|
+ this.loadData();
|
|
|
+ };
|
|
|
+ },
|
|
|
+ search() {
|
|
|
+ this.state.userDetaile = false
|
|
|
+ this.loadData();
|
|
|
+ },
|
|
|
+ reset() {
|
|
|
+ this.state.userNameSearch = '';
|
|
|
+ this.state.organizationSearch = undefined;
|
|
|
+ this.state.rolesSearch = undefined;
|
|
|
+ this.state.postSearch = undefined;
|
|
|
+ this.state.stationSearch = undefined;
|
|
|
+ this.state.statusSeach = undefined;
|
|
|
+ this.state.signNameSearch = '';
|
|
|
+ this.state.mobileSearch = '';
|
|
|
+ this.state.auto = '';
|
|
|
+ this.loadData();
|
|
|
+ },
|
|
|
+ searchSwitch() {
|
|
|
+ this.setState({
|
|
|
+ searchMore: !this.state.searchMore
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //主管初始加载(自动补全)
|
|
|
+ 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({
|
|
|
+ auto: value
|
|
|
+ })
|
|
|
+ },
|
|
|
+ blurChange(e) {
|
|
|
+ let theType = '';
|
|
|
+ let contactLists = this.state.customerArr || [];
|
|
|
+ if(e) {
|
|
|
+ contactLists.map(function(item) {
|
|
|
+ if(item.name == e.toString()) {
|
|
|
+ theType = item.id;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ this.setState({
|
|
|
+ theTypes: theType
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //值改变时请求客户名称
|
|
|
+ httpChange(e) {
|
|
|
+ if(e.length >= 1) {
|
|
|
+ this.supervisor(e);
|
|
|
+ }
|
|
|
+ this.setState({
|
|
|
+ auto: e
|
|
|
+ })
|
|
|
+ },
|
|
|
+ render() {
|
|
|
+ const rowSelection = {
|
|
|
+ selectedRowKeys: this.state.selectedRowKeys,
|
|
|
+ onChange: (selectedRowKeys, selectedRows) => {
|
|
|
+ this.setState({
|
|
|
+ selectedRows: selectedRows.slice(-1),
|
|
|
+ selectedRowKeys: selectedRowKeys.slice(-1)
|
|
|
+ });
|
|
|
+ },
|
|
|
+ onSelectAll: (selected, selectedRows, changeRows) => {
|
|
|
+ this.setState({
|
|
|
+ selectedRowKeys: []
|
|
|
+ })
|
|
|
+ },
|
|
|
+ };
|
|
|
+ const dataSources = this.state.customerArr || [];
|
|
|
+ const options = dataSources.map((group, index) =>
|
|
|
+ <Select.Option key={index} value={group.name}>{group.name}</Select.Option>
|
|
|
+ )
|
|
|
+ const hasSelected = this.state.selectedRowKeys.length > 0;
|
|
|
+ const { RangePicker } = DatePicker;
|
|
|
+ let departmentArr = this.state.departmentArr || [];
|
|
|
+ let roleArr = this.state.roleArr || [];
|
|
|
+ return(
|
|
|
+ <div className="user-content" >
|
|
|
<div className="content-title">
|
|
|
<div className="user-search">
|
|
|
<Input placeholder="用户姓名" style={{width:'150px'}}
|
|
|
value={this.state.userNameSearch}
|
|
|
onChange={(e) => { this.setState({ userNameSearch: e.target.value }); }} />
|
|
|
- <Select placeholder="组织机构"
|
|
|
+ <Select placeholder="部门"
|
|
|
style={{ width: 160 }}
|
|
|
value={this.state.organizationSearch}
|
|
|
onChange={(e) => { this.setState({ organizationSearch: e }) }}>
|
|
|
- {this.state.organizationList}
|
|
|
+ {
|
|
|
+ departmentArr.map(function (item) {
|
|
|
+ return <Select.Option key={item.id} >{item.name}</Select.Option>
|
|
|
+ })
|
|
|
+ }
|
|
|
</Select>
|
|
|
<Select placeholder="角色"
|
|
|
style={{ width: 160 }}
|
|
|
value={this.state.rolesSearch}
|
|
|
onChange={(e) => { this.setState({ rolesSearch: e }) }}>
|
|
|
- {this.state.organizationList}
|
|
|
+ {
|
|
|
+ roleArr.map(function (item) {
|
|
|
+ return <Select.Option key={item.id} >{item.roleName}</Select.Option>
|
|
|
+ })
|
|
|
+ }
|
|
|
</Select>
|
|
|
<Button type="primary" onClick={this.search}>搜索</Button>
|
|
|
<Button onClick={this.reset}>重置</Button>
|
|
@@ -357,14 +606,30 @@ const User=Form.create()(React.createClass({
|
|
|
style={{ width: 160 }}
|
|
|
value={this.state.statusSeach}
|
|
|
onChange={(e) => { this.setState({ statusSeach: e }) }}>
|
|
|
- {this.state.organizationList}
|
|
|
+ <Select.Option value="正常" >正常</Select.Option>
|
|
|
+ <Select.Option value="锁定" >锁定</Select.Option>
|
|
|
</Select>
|
|
|
<Input placeholder="登录用户名" style={{width:'150px'}}
|
|
|
value={this.state.signNameSearch}
|
|
|
onChange={(e) => { this.setState({ signNameSearch: e.target.value }); }} />
|
|
|
- <Input placeholder="上级主管名称" style={{width:'150px'}}
|
|
|
- value={this.state.proNameSearch}
|
|
|
- onChange={(e) => { this.setState({ proNameSearch: e.target.value }); }} />
|
|
|
+
|
|
|
+ <AutoComplete
|
|
|
+ className="certain-category-search"
|
|
|
+ dropdownClassName="certain-category-search-dropdown"
|
|
|
+ dropdownMatchSelectWidth={false}
|
|
|
+ dropdownStyle={{ width: 200 }}
|
|
|
+ size="large"
|
|
|
+ style={{ width: '150px',height:'28px' ,marginLeft:'10px'}}
|
|
|
+ dataSource={options}
|
|
|
+ placeholder="输入上级主管名字"
|
|
|
+ value={this.state.auto}
|
|
|
+ onChange={this.httpChange}
|
|
|
+ filterOption={true}
|
|
|
+ onBlur={this.blurChange}
|
|
|
+ onSelect={this.selectAuto}
|
|
|
+ >
|
|
|
+ <Input/>
|
|
|
+ </AutoComplete>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div className="patent-table">
|
|
@@ -377,14 +642,18 @@ const User=Form.create()(React.createClass({
|
|
|
</Spin>
|
|
|
</div>
|
|
|
<Newuser
|
|
|
+ role={this.state.role}
|
|
|
+ addId={this.state.addId}
|
|
|
+ roleArr={this.state.roleArr}
|
|
|
+ departmentArr={this.state.departmentArr}
|
|
|
userDetaile={this.state.userDetaile}
|
|
|
datauser={this.state.datauser}
|
|
|
showDesc={this.state.showDesc}
|
|
|
closeDesc={this.closeDesc} />
|
|
|
</div >
|
|
|
</div>
|
|
|
- );
|
|
|
- }
|
|
|
+ );
|
|
|
+ }
|
|
|
}));
|
|
|
|
|
|
-export default User;
|
|
|
+export default User;
|