import React, { Component } from "react"; import { Button, Modal, Form, AutoComplete, TreeSelect, Input, message, Spin, Select, Tabs, Table, } from "antd"; import $ from "jquery/src/ajax"; import { ShowModal, getBarLevel } from "@/tools"; import './index.less' import ShowModalDiv from "@/showModal.jsx"; import { ChooseList } from "../../order/orderNew/chooseList"; import Operation from "./operation" const { TabPane } = Tabs; const FormItem = Form.Item; const confirm = Modal.confirm; class Source extends Component { constructor(props) { super(props); this.state = { visible: '', // 弹窗控制 level1Data: [], // 体系数据 searchValues: {}, // 列表筛选条件 lvl: 5, // 层级 pagination: { defaultCurrent: 1, defaultPageSize: 10, showQuickJumper: true, pageSize: 10, onChange: function (page) { this.loadData(page); }.bind(this), showTotal: function (total) { return "共" + total + "条数据"; }, }, loading: false, //加载动画 changeList: undefined, // 更改后的表格显示数据 dataSource: [], // 列表数据 selectedRowKeys: [], // 选中列表数据 selectedRows: [], // 选中列表数据 columns: [ { title: "名称", dataIndex: "name", key: "name", width: "8%", render: (text, record) => {text + (getBarLevel(record.ancestorsNames)[4] != "" ? ("(" + getBarLevel(record.ancestorsNames)[4] + ")") : "")} }, { title: "巴主", dataIndex: "leaderName", key: "leaderName", width: "8%", }, { title: "各战区&区事业部", dataIndex: "name4", key: "name4", width: "8%", render: (text, record) => {getBarLevel(record.ancestorsNames)[3]} }, { title: "各事业部&区经管开综", dataIndex: "name3", key: "name3", width: "8%", render: (text, record) => {getBarLevel(record.ancestorsNames)[2]} }, { title: "各大区管理中心&集团经开综", dataIndex: "name2", key: "name2", render: (text, record) => {getBarLevel(record.ancestorsNames)[1]} }, { title: "管理中心", dataIndex: "name1", key: "name1", width: "8%", render: (text, record) => {getBarLevel(record.ancestorsNames)[0]} }, { title: "财务", dataIndex: "financeName", key: "financeName", width: "8%", }, { title: "会计", dataIndex: "accountantName", key: "accountantName", width: "8%", }, { title: "状态", dataIndex: "status", key: "status", render: (text) => {text == 0 ? "正常" : text == 1 ? "停用" : "-"} }, { title: "创建时间", dataIndex: "createTimes", key: "createTimes", }, { title: "操作", dataIndex: "opt", key: "opt", render: (text, record) =>
}, ], }; this.supervisor = this.supervisor.bind(this); this.httpChange = this.httpChange.bind(this); this.blurChange = this.blurChange.bind(this); this.selectAuto = this.selectAuto.bind(this); this.handleCancel = this.handleCancel.bind(this); this.handleCancel = this.handleCancel.bind(this); } // 修改状态 editStatus(id, num) { this.setState({ loading: true }) let data = { id, status: num } $.ajax({ method: "POST", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/amb/update", data, success: function (data) { if (data.error.length === 0) { message.success("操作成功!"); this.loadData(); } else { message.warning(data.error[0].message); } this.setState({ loading: false, }); }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); } // 根据id获取子集 getSubset(id, list, key = "id", valus = "list") { let newList = []; if (!list) { return newList } list.forEach((item) => { if (item[key] == id) { newList = item[valus] } }) return newList } // 筛选数据 getList() { this.setState({ loading: true, }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/amb/selectAll", success: function (data) { this.setState({ loading: false, }); if (data.error && data.error.length === 0) { let menuList = data.data this.setState({ level1Data: menuList ? this.handleTreeData(menuList) : [] }); } else { message.warning(data.error[0].message); } }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); } // 树状默认数据处理 handleTreeData(treeData) { let nodeDta = []; treeData.map(item => { let treeObj = {}; treeObj.key = item.id treeObj.id = item.id treeObj.value = item.id treeObj.label = item.name treeObj.title = item.name treeObj.lvl = item.lvl treeObj.parentId = item.parentId item.list ? treeObj.children = this.handleTreeData(item.list) : null; nodeDta.push(treeObj) }) return nodeDta } // 更改表格显示数据 changeList(arr) { const newArr = []; this.state.columns.forEach((item) => { arr.forEach((val) => { if (val === item.title) { newArr.push(item); } }); }); this.setState({ changeList: newArr, }); } // 重置 resetAll() { this.setState( { auto: "", searchValues: JSON.parse(JSON.stringify({})), lvl: 5, selectedRowKeys: [], selectedRows: [], }, () => { this.loadData(); } ); } // 搜索 submit() { this.setState({ params: this.state.searchValues }) this.loadData() } // 列表接口 loadData(pageNo) { const { searchValues, pagination, lvl } = this.state; this.setState({ loading: true, }); let datas = Object.assign(searchValues, { pageNo: pageNo || 1, pageSize: pagination.pageSize, lvl, }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/amb/select", data: datas, success: function (data) { ShowModal(this); this.setState({ loading: false, }); if (data.error && data.error.length === 0) { if (data.data.list) { pagination.current = data.data.pageNo; pagination.total = data.data.totalCount; if (data.data && data.data.list && !data.data.list.length) { pagination.current = 0; pagination.total = 0; } this.setState({ dataSource: data.data.list, pagination: this.state.pagination, pageNo: data.data.pageNo, }); } else { this.setState({ dataSource: data.data, pagination: false, }); } } else { message.warning(data.error[0].message); } }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); } // 查询用户 supervisor(e) { $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/customer/listAdminByName", data: { adminName: 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 () { }.bind(this) ); } // 输入触发 httpChange(e) { if (e.length >= 1) { this.supervisor(e); } this.setState({ auto: e, }); } // 选中 selectAuto(value, options) { const { searchValues } = this.state let contactLists = this.state.customerArr || []; if (value) { contactLists.map(function (item) { if (item.name == value.toString()) { searchValues["leader"] = item.id; } }); } this.setState({ auto: value, searchValues: searchValues, }); } // 失去焦点 blurChange(e) { const { searchValues } = this.state let contactLists = this.state.customerArr || []; if (e) { contactLists.map(function (item) { if (item.name == e.toString()) { searchValues["leader"] = item.id; } }); } this.setState({ searchValues: searchValues, }); } // 选择行 onSelectChange(selectedRowKeys, selectedRows) { this.setState({ selectedRowKeys, selectedRows }); } // 删除巴 delete(id) { this.setState({ loading: true, }) $.ajax({ method: "post", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/amb/delete", data: { id }, success: function (data) { if (data.error.length) { if (data.error && data.error.length) { message.warning(data.error[0].message) } } else { message.success('删除成功'); this.getList(); this.loadData(); this.setState({ selectedRowKeys: [], selectedRows: [], }); } }.bind(this), }).always( function () { this.setState({ loading: false, }) }.bind(this) ); } // 关闭弹窗 handleCancel() { this.setState({ visible: "", id: "", }, () => { this.getList(); this.loadData(); }) } componentWillMount() { this.getList(); this.loadData(); } render() { const { searchValues, columns, selectedRowKeys, selectedRows, changeList, level1Data } = this.state; const rowSelection = { selectedRowKeys, onChange: this.onSelectChange.bind(this), hideDefaultSelections: true, type: "radio", }; const dataSources = this.state.customerArr || []; const options = dataSources.map((group) => ( {group.name} )); return (
{ this.setState({ showModal: false }) }} />
阿米巴管理
{ }}>
{ searchValues["name"] = e.target.value; this.setState({ searchValues: searchValues, }); }} /> { searchValues["ancestors"] = e; this.setState({ searchValues: searchValues, }); }} />
{/*
*/}
{ // 新建/编辑巴 this.state.visible != "" && } ); } } export default Source;