Fixed EmployeesController.show: Now fetches Employee + User when there is a user regardles of parameter type.

This commit is contained in:
Sockenklaus
2021-10-29 23:29:52 +02:00
parent 411db6759e
commit c81da2bbb5

View File

@@ -85,16 +85,15 @@ export default class EmployeesController {
user: {} user: {}
} }
let emp let emp
let user
if(params.id === 'me' && auth.isLoggedIn && auth.user !== undefined){ if(params.id === 'me' && auth.isLoggedIn && auth.user !== undefined){
result.employee.hasUser = true user = auth.user
result.user.username = auth.user.username
result.user.id = auth.user.id
emp = (await auth.user.related('employeeProfile').query().limit(1))[0] emp = (await auth.user.related('employeeProfile').query().limit(1))[0]
} }
else { else {
emp = await Employee.findOrFail(params.id) emp = await Employee.findOrFail(params.id)
user = (await User.find(emp.userId)) ?? undefined
} }
if(emp !== undefined){ if(emp !== undefined){
@@ -106,6 +105,11 @@ export default class EmployeesController {
result.employee.email = emp.email result.employee.email = emp.email
result.employee.contractHours = emp.contractHours result.employee.contractHours = emp.contractHours
} }
if(user !== undefined){
result.employee.hasUser = true
result.user.username = user.username
result.user.id = user.id
}
await bouncer.authorize('employees.show', emp) await bouncer.authorize('employees.show', emp)