package com.ecep.contract.controller.permission;

import com.ecep.contract.controller.tab.AbstEntityBasedTabSkin;
import com.ecep.contract.model.EmployeeRole;
import com.ecep.contract.service.EmployeeRoleService;
import com.ecep.contract.service.FunctionService;
import com.ecep.contract.service.PermissionService;
import com.ecep.contract.vm.EmployeeRoleViewModel;

public abstract class AbstEmployeeRoleBasedTabSkin
        extends AbstEntityBasedTabSkin<EmployeeRoleWindowController, EmployeeRole, EmployeeRoleViewModel> {

    public AbstEmployeeRoleBasedTabSkin(EmployeeRoleWindowController controller) {
        super(controller);
        viewModel = controller.getViewModel();
    }

    EmployeeRoleService getRoleService() {
        return getCachedBean(EmployeeRoleService.class);
    }

    FunctionService getFunctionService() {
        return getCachedBean(FunctionService.class);
    }

    public PermissionService getPermissionService() {
        return controller.permissionService;
    }

}
