|
1
2
3
|
export default (initialState: API.UserInfo) => {
// 在这里按照初始化数据定义项目中的权限,统一管理
// 参考文档 https://umijs.org/docs/max/access
|
曾国涛
authored
|
4
|
const { username, roles } = initialState;
|
|
5
|
|
曾国涛
authored
|
6
|
const canReadAdmin = roles?.includes('ADMIN');
|
|
7
|
const canReadProcure =
|
曾国涛
authored
|
8
9
|
roles?.includes('PROCURE') || roles?.includes('PROCURE_MANAGER');
const canReadFinance = roles?.includes('FINANCE');
|
曾国涛
authored
|
10
|
const canReadWarehouseKeeper = roles?.includes('WAREHOUSE_KEEPER');
|
|
11
|
const canReadSales =
|
曾国涛
authored
|
12
13
|
roles?.includes('SALES_MANAGER') || roles?.includes('SALES_REPRESENTATIVE');
const canReadSalesManager = roles?.includes('SALES_MANAGER');
|
|
14
|
return {
|
|
15
|
canReadAdmin: canReadAdmin,
|
|
16
|
canReadProcure: canReadProcure || canReadAdmin,
|
|
17
|
canReadLinda: username === 'Linda',
|
|
18
19
20
21
|
canReadAdminAndFinance: canReadFinance || canReadAdmin,
canReadSales: canReadSales,
canReadAdminAndFinanceAndSales:
canReadFinance || canReadAdmin || canReadSales,
|
|
22
|
canReadAdminAndSales: canReadAdmin || canReadSales,
|
曾国涛
authored
|
23
24
|
canReadAdminAndWarehouseKeeperAndProcure:
canReadWarehouseKeeper || canReadAdmin || canReadProcure,
|
曾国涛
authored
|
25
|
canReadAdminAndSalesManager: canReadAdmin || canReadSalesManager,
|
|
26
27
|
};
};
|