授权管理中心
This commit is contained in:
parent
877d0d339f
commit
fb799f5313
@ -898,31 +898,52 @@ const BasicLayout: React.FC<BasicLayoutProps> = (props) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
subMenuItemRender={(menuItemProps) => {
|
subMenuItemRender={(menuItemProps) => {
|
||||||
if (menuItemProps.icon && typeof menuItemProps.icon === 'string') {
|
const itemDom = menuItemProps.icon && typeof menuItemProps.icon === 'string' ? (
|
||||||
const ele = React.createElement(Icon[menuItemProps.icon])
|
<div className="ant-pro-menu-item">
|
||||||
return <div className="ant-pro-menu-item">
|
<span style={{ marginRight: 10 }} className="ant-pro-menu-item">
|
||||||
<span style={{ marginRight: 10 }} className="ant-pro-menu-item">{ele}</span>
|
{React.createElement(Icon[menuItemProps.icon])}
|
||||||
|
</span>
|
||||||
<span className='ant-pro-menu-item-title'>{menuItemProps.name}</span>
|
<span className='ant-pro-menu-item-title'>{menuItemProps.name}</span>
|
||||||
</div>;
|
</div>
|
||||||
|
) : (
|
||||||
|
<div>{menuItemProps.name}</div>
|
||||||
|
);
|
||||||
|
|
||||||
|
if (menuItemProps.name && menuItemProps.name.length > 9) {
|
||||||
|
return (
|
||||||
|
<Tooltip title={menuItemProps.name} placement="right">
|
||||||
|
{itemDom}
|
||||||
|
</Tooltip>
|
||||||
|
);
|
||||||
}
|
}
|
||||||
return <div>
|
return itemDom;
|
||||||
{menuItemProps.name}
|
|
||||||
</div>;
|
|
||||||
}}
|
}}
|
||||||
menuItemRender={(menuItemProps, defaultDom) => {
|
menuItemRender={(menuItemProps, defaultDom) => {
|
||||||
|
let linkDom;
|
||||||
if (
|
if (
|
||||||
menuItemProps.isUrl ||
|
menuItemProps.isUrl ||
|
||||||
!menuItemProps.path ||
|
!menuItemProps.path ||
|
||||||
location.pathname === menuItemProps.path
|
location.pathname === menuItemProps.path
|
||||||
) {
|
) {
|
||||||
return defaultDom;
|
linkDom = defaultDom;
|
||||||
|
} else {
|
||||||
|
linkDom = (
|
||||||
|
<Link to={menuItemProps.path || '/'} onClick={() => {
|
||||||
|
setIsFromMenu(true) // 左侧菜单点击,启用动画
|
||||||
|
}}>
|
||||||
|
{defaultDom}
|
||||||
|
</Link>
|
||||||
|
);
|
||||||
}
|
}
|
||||||
return <Link to={menuItemProps.path || '/'} onClick={() => {
|
|
||||||
setIsFromMenu(true) // 左侧菜单点击,启用动画
|
if (menuItemProps.name && menuItemProps.name.length > 9) {
|
||||||
}}>
|
return (
|
||||||
{defaultDom}
|
<Tooltip title={menuItemProps.name} placement="right">
|
||||||
{/* {menuItemProps.name} */}
|
{linkDom}
|
||||||
</Link>;
|
</Tooltip>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
return linkDom;
|
||||||
}}
|
}}
|
||||||
breadcrumbRender={false}
|
breadcrumbRender={false}
|
||||||
// breadcrumbRender={(routers = []) => {
|
// breadcrumbRender={(routers = []) => {
|
||||||
|
|||||||
@ -11,7 +11,7 @@ import type { UserModel } from "../data";
|
|||||||
import type { CurrentUser } from '@/models/user';
|
import type { CurrentUser } from '@/models/user';
|
||||||
|
|
||||||
import { getMerchantTree, getMerchantTreeNosessoin, getOnwer } from "@/services/options";
|
import { getMerchantTree, getMerchantTreeNosessoin, getOnwer } from "@/services/options";
|
||||||
import { getUserDetail, getUserTypeTree, getServerpartTree, updataUser, modifyUserPassword, getMerchantShopTree, getWeiChatPush, handleGetServiceList, handleDeleteUSER, handleSynchroBEHAVIORRECORD, handleResetPassword } from "../service";
|
import { getUserDetail, getUserTypeTree, getServerpartTree, updataUser, modifyUserPassword, getMerchantShopTree, getWeiChatPush, handleGetServiceList, handleDeleteUSER, handleSynchroBEHAVIORRECORD, handleResetPassword, handleGetWareHouseList, handleGetRTSELLERPASSPORTList, handleSynchroRTSELLERPASSPORT } from "../service";
|
||||||
import { getRoleList, getSystemMenuTree, handleAnalysisPermission, handleSupplierList } from "../../Roles/service";
|
import { getRoleList, getSystemMenuTree, handleAnalysisPermission, handleSupplierList } from "../../Roles/service";
|
||||||
import BusinessManDrawer from "@/pages/basicManage/businessMan/components/businessManDrawer";
|
import BusinessManDrawer from "@/pages/basicManage/businessMan/components/businessManDrawer";
|
||||||
import session from "@/utils/session";
|
import session from "@/utils/session";
|
||||||
@ -76,6 +76,11 @@ const Edit = ({ tableTab, openType, detail, reloadTable, currentUser, selectTab,
|
|||||||
// const [supplierList,setSupplierList] = useState<any>()// 供应商列表
|
// const [supplierList,setSupplierList] = useState<any>()// 供应商列表
|
||||||
// 查询角色树
|
// 查询角色树
|
||||||
const [roleTree, setRoleTree] = useState<any>() // 角色树列表
|
const [roleTree, setRoleTree] = useState<any>() // 角色树列表
|
||||||
|
// 当前选择的用户的管理中心
|
||||||
|
const [checkManageerCenterList, setCheckManageerCenterList] = useState<any>()
|
||||||
|
// 当前这个用户实际的管理中心权限
|
||||||
|
const [currentUserInfoManager, setCurrentUserInfoManager] = useState<any>()
|
||||||
|
|
||||||
// const { data: roleTree } = useRequest(async () => {
|
// const { data: roleTree } = useRequest(async () => {
|
||||||
// if (currentUser?.UserPattern===9000){
|
// if (currentUser?.UserPattern===9000){
|
||||||
// const req = {
|
// const req = {
|
||||||
@ -124,10 +129,25 @@ const Edit = ({ tableTab, openType, detail, reloadTable, currentUser, selectTab,
|
|||||||
const { data: serverpartTree } = useRequest(async () => {
|
const { data: serverpartTree } = useRequest(async () => {
|
||||||
const data = await getServerpartTree()
|
const data = await getServerpartTree()
|
||||||
console.log('all', data);
|
console.log('all', data);
|
||||||
|
|
||||||
|
|
||||||
return data.map(n => n.children ? n : { ...n, children: [] })
|
return data.map(n => n.children ? n : { ...n, children: [] })
|
||||||
})
|
})
|
||||||
|
// 查询可配置的管理中心
|
||||||
|
const { data: wareHouseList } = useRequest(async () => {
|
||||||
|
let req: any = {
|
||||||
|
SearchParameter: {
|
||||||
|
// PROVINCE_CODE: detail?.USER_PROVINCE || "",
|
||||||
|
WAREHOUSE_STATE: 1
|
||||||
|
},
|
||||||
|
SortStr: "SELLER_ID,WAREHOUSE_TYPE,WAREHOUSE_ID",
|
||||||
|
PageIndex: 1,
|
||||||
|
PageSize: 999999
|
||||||
|
}
|
||||||
|
const data = await handleGetWareHouseList(req)
|
||||||
|
console.log('wareHouseListwareHouseList', data);
|
||||||
|
return data
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
// 查询可选商家
|
// 查询可选商家
|
||||||
// const { run: getMerchantTree, data: merchantTree } = useRequest(async () => {
|
// const { run: getMerchantTree, data: merchantTree } = useRequest(async () => {
|
||||||
// return await getMerchantTree()
|
// return await getMerchantTree()
|
||||||
@ -293,6 +313,16 @@ const Edit = ({ tableTab, openType, detail, reloadTable, currentUser, selectTab,
|
|||||||
handleSynchroBEHAVIORRECORD(req)
|
handleSynchroBEHAVIORRECORD(req)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 同步管理中心
|
||||||
|
const handleUpdateCurrentMangaer = async () => {
|
||||||
|
const req: any = {
|
||||||
|
...currentUserInfoManager,
|
||||||
|
WAREHOUSE_ID: checkManageerCenterList.toString()
|
||||||
|
}
|
||||||
|
const data = await handleSynchroRTSELLERPASSPORT(req)
|
||||||
|
console.log('data321wfDSFSDFSFS', data);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// 判断账号的正则
|
// 判断账号的正则
|
||||||
// 1表示全数字 0 表示 默认
|
// 1表示全数字 0 表示 默认
|
||||||
@ -392,6 +422,27 @@ const Edit = ({ tableTab, openType, detail, reloadTable, currentUser, selectTab,
|
|||||||
setShowWeChatFlag(initDetail.PushPermission)
|
setShowWeChatFlag(initDetail.PushPermission)
|
||||||
|
|
||||||
|
|
||||||
|
// 拿到当前用户拥有的 管理中心权限
|
||||||
|
const req: any = {
|
||||||
|
SearchParameter: {
|
||||||
|
USER_ID: initDetail.USER_ID
|
||||||
|
},
|
||||||
|
PageIndex: 1,
|
||||||
|
PageSize: 999999
|
||||||
|
}
|
||||||
|
const data = await handleGetRTSELLERPASSPORTList(req)
|
||||||
|
console.log('dsakdjaskldhaslfhousdhfosadhvosbgv', data);
|
||||||
|
// 说明查到了这个用户
|
||||||
|
if (data && data.length > 0) {
|
||||||
|
let currentUserInfo = data[0]
|
||||||
|
setCurrentUserInfoManager(currentUserInfo)
|
||||||
|
let list: any = currentUserInfo.WAREHOUSE_ID ? currentUserInfo.WAREHOUSE_ID.split(',') : []
|
||||||
|
list = list.map((item: any) => Number(item))
|
||||||
|
console.log('list', list);
|
||||||
|
|
||||||
|
setCheckManageerCenterList(list)
|
||||||
|
}
|
||||||
|
|
||||||
// 请求获取该账户绑定的角色拥有的模块权限
|
// 请求获取该账户绑定的角色拥有的模块权限
|
||||||
if (initDetail.SystemRoleList.length > 0) {
|
if (initDetail.SystemRoleList.length > 0) {
|
||||||
getRoleMenu(initDetail.SystemRoleList.toString())
|
getRoleMenu(initDetail.SystemRoleList.toString())
|
||||||
@ -464,7 +515,8 @@ const Edit = ({ tableTab, openType, detail, reloadTable, currentUser, selectTab,
|
|||||||
console.log('newData', newData);
|
console.log('newData', newData);
|
||||||
console.log('copyData', copyData);
|
console.log('copyData', copyData);
|
||||||
|
|
||||||
|
// 同步管理中心的权限
|
||||||
|
handleUpdateCurrentMangaer()
|
||||||
|
|
||||||
if (success) {
|
if (success) {
|
||||||
// 比较开始数据 如果和开始数据不一样 就调用接口
|
// 比较开始数据 如果和开始数据不一样 就调用接口
|
||||||
@ -1203,6 +1255,46 @@ const Edit = ({ tableTab, openType, detail, reloadTable, currentUser, selectTab,
|
|||||||
</Col>}
|
</Col>}
|
||||||
</Row>
|
</Row>
|
||||||
</Card>
|
</Card>
|
||||||
|
|
||||||
|
{
|
||||||
|
initialDetail.USER_PATTERN === 1000 || initialDetail.USER_PATTERN === 4000 ?
|
||||||
|
<Card title="授权管理中心" style={{ marginTop: 24 }} bordered={false} size="default">
|
||||||
|
<Row gutter={24}>
|
||||||
|
<Col span={8}>
|
||||||
|
{
|
||||||
|
wareHouseList &&
|
||||||
|
<Card
|
||||||
|
style={{ borderColor: "#97D6FE", height: 424 }}
|
||||||
|
size="small"
|
||||||
|
title="管理中心权限" headStyle={{ backgroundColor: '#E7F7FF' }}
|
||||||
|
extra={<a onClick={() => {
|
||||||
|
setCheckManageerCenterList([])
|
||||||
|
|
||||||
|
}}>取消选择</a>}>
|
||||||
|
<Form.Item name="ServerpartList" style={{ marginBottom: 0 }}>
|
||||||
|
<Tree
|
||||||
|
checkedKeys={checkManageerCenterList}
|
||||||
|
defaultCheckedKeys={checkManageerCenterList}
|
||||||
|
treeData={wareHouseList}
|
||||||
|
height={360}
|
||||||
|
checkable
|
||||||
|
fieldNames={{
|
||||||
|
title: 'WAREHOUSE_NAME',
|
||||||
|
key: 'WAREHOUSE_ID'
|
||||||
|
}}
|
||||||
|
onCheck={(checkedKeys: React.Key[] | any) => {
|
||||||
|
setCheckManageerCenterList(checkedKeys)
|
||||||
|
return checkedKeys
|
||||||
|
}}
|
||||||
|
></Tree>
|
||||||
|
</Form.Item>
|
||||||
|
</Card>
|
||||||
|
}
|
||||||
|
</Col>
|
||||||
|
</Row>
|
||||||
|
</Card> : ""
|
||||||
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
companyList && companyList.length > 0 ?
|
companyList && companyList.length > 0 ?
|
||||||
<Card title="推送权限" style={{ marginTop: 24 }}>
|
<Card title="推送权限" style={{ marginTop: 24 }}>
|
||||||
|
|||||||
@ -65,6 +65,48 @@ export async function getServerpartTree(params?: any) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// 获取管理中心
|
||||||
|
export async function handleGetWareHouseList(params?: any) {
|
||||||
|
const data = await request('/Seller/GetWAREHOUSEList', {
|
||||||
|
method: 'POST',
|
||||||
|
data: params
|
||||||
|
})
|
||||||
|
|
||||||
|
if (data.Result_Code !== 100) {
|
||||||
|
return data
|
||||||
|
}
|
||||||
|
|
||||||
|
return data.Result_Data.List
|
||||||
|
}
|
||||||
|
|
||||||
|
// 拿到当前用户的管理中心权限
|
||||||
|
export async function handleGetRTSELLERPASSPORTList(params?: any) {
|
||||||
|
const data = await request('/Seller/GetRTSELLERPASSPORTList', {
|
||||||
|
method: 'POST',
|
||||||
|
data: params
|
||||||
|
})
|
||||||
|
|
||||||
|
if (data.Result_Code !== 100) {
|
||||||
|
return data
|
||||||
|
}
|
||||||
|
|
||||||
|
return data.Result_Data.List
|
||||||
|
}
|
||||||
|
|
||||||
|
// 同步当前用户的管理中心权限
|
||||||
|
export async function handleSynchroRTSELLERPASSPORT(params?: any) {
|
||||||
|
const data = await request('/Seller/SynchroRTSELLERPASSPORT', {
|
||||||
|
method: 'POST',
|
||||||
|
data: params
|
||||||
|
})
|
||||||
|
|
||||||
|
if (data.Result_Code !== 100) {
|
||||||
|
return data
|
||||||
|
}
|
||||||
|
|
||||||
|
return data
|
||||||
|
}
|
||||||
|
|
||||||
// 获取账号分类树
|
// 获取账号分类树
|
||||||
export async function getUserTypeTree(params?: any) {
|
export async function getUserTypeTree(params?: any) {
|
||||||
const data = await request('/FrameWork/GetUserTypeTree', {
|
const data = await request('/FrameWork/GetUserTypeTree', {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user