%DE_PKGPATH%-auth-service-base.ts.ftl 1.4 KB
Newer Older
tony001's avatar
tony001 committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
<#ibiztemplate>
TARGET=PSAPPDATAENTITY
</#ibiztemplate>
import AuthService from '../auth-service';

/**
 * ${de.getLogicName()}权限服务对象基类
 *
 * @export
 * @class ${srfclassname('${item.getCodeName()}')}AuthServiceBase
 * @extends {AuthService}
 */
export default class ${srfclassname('${item.getCodeName()}')}AuthServiceBase extends AuthService {

    /**
     * Creates an instance of  ${srfclassname('${item.getCodeName()}')}AuthServiceBase.
     * 
     * @param {*} [opts={}]
     * @memberof  ${srfclassname('${item.getCodeName()}')}AuthServiceBase
     */
    constructor(opts: any = {}) {
        super(opts);
    }

tony001's avatar
tony001 committed
25 26 27
    /**
     * 根据当前数据获取实体操作标识
     *
28
     * @param {*} mainSateOPPrivs 传入数据操作标识
tony001's avatar
tony001 committed
29
     * @returns {any}
tony001's avatar
tony001 committed
30 31
     * @memberof ${srfclassname('${item.getCodeName()}')}AuthServiceBase
     */
32
    public getOPPrivs(mainSateOPPrivs:any):any{
33
        let curDefaultOPPrivs:any = this.getSysOPPrivs();
34
        let copyDefaultOPPrivs:any = JSON.parse(JSON.stringify(curDefaultOPPrivs));
tony001's avatar
tony001 committed
35 36 37
        if(mainSateOPPrivs){
            Object.assign(curDefaultOPPrivs,mainSateOPPrivs);
        }
38 39 40 41 42 43
        // 统一资源优先
        Object.keys(curDefaultOPPrivs).forEach((name:string) => {
            if(this.sysOPPrivsMap.get(name) && copyDefaultOPPrivs[name] === 0){
                curDefaultOPPrivs[name] = copyDefaultOPPrivs[name];
            }
        });
tony001's avatar
tony001 committed
44
        return curDefaultOPPrivs;
tony001's avatar
tony001 committed
45 46
    }

tony001's avatar
tony001 committed
47
}