25 lines
673 B
TypeScript
25 lines
673 B
TypeScript
import { BasePolicy } from '@ioc:Adonis/Addons/Bouncer'
|
|
import Employee from 'App/Models/Employee'
|
|
|
|
export default class EmployeesPolicy extends BasePolicy {
|
|
public async index(employee: Employee) {
|
|
return employee.isAdmin()
|
|
}
|
|
|
|
public async show(employee: Employee, query: Employee) {
|
|
return employee.isAdmin() || employee.id === query.id
|
|
}
|
|
|
|
public async store(employee: Employee) {
|
|
return employee.isAdmin()
|
|
}
|
|
|
|
public async update(employee: Employee, editContractHours: boolean, query: Employee) {
|
|
return employee.isAdmin() || (employee.id === query.id && !editContractHours)
|
|
}
|
|
|
|
public async destroy(employee: Employee) {
|
|
return employee.isAdmin()
|
|
}
|
|
}
|