import React, { useCallback, useState } from "react"; import { Button, Card, ConfigProvider, Divider, Input, message, Popconfirm, Select, Table } from "antd"; import { PageHeaderWrapper } from "@ant-design/pro-layout"; import zhCN from "antd/lib/locale-provider/zh_CN"; import usePagination from "@/hooks/usePagination"; import useInitial from "@/hooks/useInitail"; import { PlusOutlined } from "@ant-design/icons"; import AddModel from './components/AddModel'; import RolesModel from './components/RolesModel'; import Filter from './components/Filter'; import * as API from './api'; import _ from "lodash"; import moment from 'moment'; import st from "./style.less"; const { Column } = Table; function AuthorizationSetting() { const [visible, setVisible] = useState(false); const [searchValue, setSearchValue] = useState({}); const [rolesVisible, setRolesVisible] = useState(false); const [row, setRow] = useState(); const [roles, setRoles] = useState(); const {data: roleList} = useInitial(API.getAllRoleCodeApi, [], {}); const { list: authList, paginationConfig, loading, innerParams, setParams, } = usePagination(API.getContractAuthPage, {current: 1, pageSize: 10}); const { list: contractTypesList, } = usePagination(API.getContractTypes, {current: 1, pageSize: 999}); /** * @description: 删除 * @param {*} * @return {*} * */ const _delete = (row:API.Item) => { const {id} =row; API.delContractAuth({contractAuthId: id}) .then((res) => { message.success("操作成功"); setParams({ ...innerParams }, true); }) .catch((e) => { message.error(e.message); }); }; /** * @description: 编辑 * @param {API} row * @return {*} */ const edit = async (row:API.Item) => { await setRow(row); setVisible(true); }; /** * @description: 禁用启用 * @param {API} row * @return {*} */ const handleDisable = (row:API.Item) => { const { id, enabled } = row; API.disableContractAuth({contractAuthId: id, enabled: !enabled}) .then((res) => { message.success("操作成功"); setParams({ ...innerParams }, true); }) .catch((err) => { message.error(err.message); }); }; const showRoles = async (row:API.Item) => { const {roles} = row; try { await setRoles(roles); } finally { setRolesVisible(true); } }; return (
`${item.id}`} onChange={(_pagination) => setParams({ ..._pagination }, true)} > t || "-"} /> ( )} /> (t?'启用':'禁用')} /> {/* (t ? moment(t).format('YYYY-MM-DD HH:mm') : "-")} /> (t ? moment(t).format('YYYY-MM-DD HH:mm') : "-")} /> */} ( handleDisable(row)} okText="确定" cancelText="取消"> { e.preventDefault(); }} style={{ color: "#FAAD14" }} > {`${row.enabled ? '禁用' :'启用'}`} edit(row)} okText="确定" cancelText="取消"> { e.preventDefault(); }} style={{ color: "#FAAD14" }} > 编辑 _delete(row)} okText="确定" cancelText="取消"> { e.preventDefault(); }} style={{ color: "red" }} > 删除 )} />
{ setVisible(false); setRow(undefined); }} onRefresh={() => setParams({ ...innerParams }, true)} /> { setRolesVisible(false); setRoles(undefined); }} onRefresh={() => setParams({ ...innerParams }, true)} />
); } export default AuthorizationSetting;