menu grant
This commit is contained in:
@@ -23,6 +23,7 @@ import {
|
||||
BusinessPropertyParams,
|
||||
BusinessPropertyResponse,
|
||||
LoginResponse,
|
||||
MenuGrantsItem,
|
||||
ShortcutUserParams,
|
||||
ShortcutUserResponse,
|
||||
UserFindAuthMethodParams
|
||||
@@ -257,7 +258,7 @@ export const SubLayout = () => {
|
||||
});
|
||||
callCodesSelect({ codeCl: '0325' });
|
||||
callCodesSelect({ codeCl: '0074' });
|
||||
|
||||
onSetGrant();
|
||||
}).catch((error: any) => {
|
||||
setLoginSuccess(false);
|
||||
});
|
||||
@@ -284,6 +285,50 @@ export const SubLayout = () => {
|
||||
});
|
||||
};
|
||||
|
||||
const onSetGrant = () => {
|
||||
let userInfo = useStore.getState().UserStore.userInfo;
|
||||
const menuGrants = userInfo.menuGrants;
|
||||
let grantObj: Record<string, Array<string>> = {};
|
||||
let grantKeys = [8, 4, 2, 1];
|
||||
if(!!menuGrants){
|
||||
for(let i=0;i<menuGrants.length;i++){
|
||||
let menuGrantItem = menuGrants[i];
|
||||
if(menuGrantItem){
|
||||
let menuId: number = menuGrantItem.menuId;
|
||||
let grant: number = menuGrantItem.grant;
|
||||
if(!grantObj.hasOwnProperty(''+menuId)){
|
||||
grantObj[''+menuId] = [];
|
||||
}
|
||||
for(let j=0;j<grantKeys.length;j++){
|
||||
let grantKey = grantKeys[j];
|
||||
if(!!grantKey){
|
||||
//grant = grant - grantKey;
|
||||
if((grant - grantKey) >= 0){
|
||||
grant = grant - grantKey;
|
||||
if(j === 0){
|
||||
grantObj[''+menuId]?.push('D');
|
||||
}
|
||||
else if(j === 1){
|
||||
grantObj[''+menuId]?.push('X');
|
||||
}
|
||||
else if(j === 2){
|
||||
grantObj[''+menuId]?.push('W');
|
||||
}
|
||||
else if(j === 3){
|
||||
grantObj[''+menuId]?.push('R');
|
||||
}
|
||||
}
|
||||
else{
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
useStore.getState().UserStore.setMenuGrantsByKey(grantObj);
|
||||
};
|
||||
|
||||
const onSetCommonCodes = ({
|
||||
data,
|
||||
codeCl,
|
||||
@@ -330,7 +375,6 @@ export const SubLayout = () => {
|
||||
updateUserData(token);
|
||||
};
|
||||
const alarmLink = (options: AlarmLinkOptions) => {
|
||||
console.log(options);
|
||||
if(options?.linkUrl){
|
||||
setAlarmRoutesOn(true);
|
||||
setAlarmOptions(options);
|
||||
|
||||
Reference in New Issue
Block a user