export default (initialState: API.UserInfo) => { // 在这里按照初始化数据定义项目中的权限,统一管理 // 参考文档 https://umijs.org/docs/max/access const { username, roles } = initialState; const canReadAdmin = roles?.includes('ADMIN'); const canReadProcure = roles?.includes('PROCURE') || roles?.includes('PROCURE_MANAGER'); const canReadFinance = roles?.includes('FINANCE'); const canReadWarehouseKeeper = roles.includes('WAREHOUSE_KEEPER'); const canReadSales = roles.includes('SALES_MANAGER') || roles.includes('SALES_REPRESENTATIVE'); const canReadSalesManager = roles.includes('SALES_MANAGER'); return { canReadAdmin: canReadAdmin, canReadProcure: canReadProcure || canReadAdmin, canReadLinda: username === 'Linda', canReadAdminAndFinance: canReadFinance || canReadAdmin, canReadSales: canReadSales, canReadAdminAndFinanceAndSales: canReadFinance || canReadAdmin || canReadSales, canReadAdminAndSales: canReadAdmin || canReadSales, canReadAdminAndWarehouseKeeperAndProcure: canReadWarehouseKeeper || canReadAdmin || canReadProcure, canReadAdminAndSalesManager: canReadAdmin || canReadSalesManager, }; };