public async Task <AddBoardResponse> Handle(AddBoardRequest request, CancellationToken cancellationToken) { if (request.AuthenticatorRole == AppRole.Employee) { return(new AddBoardResponse() { Error = new ErrorModel(ErrorType.Unauthorized) }); } var query = new GetEmployeeQuery() { Id = request.EmployeeId }; var employee = await queryExecutor.Execute(query); if (employee == null) { return(new AddBoardResponse() { Error = new ErrorModel(ErrorType.NotFound) }); } if (employee.Board != null) { return(new AddBoardResponse() { Error = new ErrorModel(ErrorType.UnsupportedMethod) }); } var board = mapper.Map <Board>(request); var command = new AddBoardCommand() { Parameter = board }; var boardFromDb = await commandExecutor.Execute(command); return(new AddBoardResponse() { Data = mapper.Map <BoardDto>(boardFromDb) }); }
public async Task <PutBoardByIdResponse> Handle(PutBoardByIdRequest request, CancellationToken cancellationToken) { if (request.AuthenticatorRole == AppRole.Employee) { return(new PutBoardByIdResponse() { Error = new ErrorModel(ErrorType.Unauthorized) }); } var query = new GetBoardQuery() { Id = request.Id }; var query2 = new GetEmployeeQuery() { Id = request.EmployeeId }; var board = await queryExecutor.Execute(query); var employee = await queryExecutor.Execute(query2); if (board == null || employee == null) { return(new PutBoardByIdResponse() { Error = new ErrorModel(ErrorType.NotFound) }); } var updateBoard = mapper.Map <Board>(request); var command = new PutBoardCommand { Parameter = updateBoard }; var updatedBoard = await commandExecutor.Execute(command); var response = mapper.Map <BoardDto>(updatedBoard); return(new PutBoardByIdResponse { Data = response }); }
public async Task <GetEmployeeByIdResponse> Handle(GetEmployeeByIdRequest request, CancellationToken cancellationToken) { var query = new GetEmployeeQuery() { CompanyId = request.AuthenticatorCompanyId, Id = request.EmployeeId }; var employee = await queryExecutor.Execute(query); if (employee == null) { return(new GetEmployeeByIdResponse() { Error = new ErrorModel(ErrorType.NotFound) }); } var mappedEmployee = mapper.Map <EmployeeDto>(employee); return(new GetEmployeeByIdResponse { Data = mappedEmployee }); }
public async Task <DeleteEmployeeByIdResponse> Handle(DeleteEmployeeByIdRequest request, CancellationToken cancellationToken) { if (request.AuthenticatorRole == AppRole.Employee) { return(new DeleteEmployeeByIdResponse() { Error = new ErrorModel(ErrorType.Unauthorized) }); } var query = new GetEmployeeQuery() { Id = request.EmployeeId, CompanyId = request.AuthenticatorCompanyId }; var employee = await queryExecutor.Execute(query); if (employee == null) { return(new DeleteEmployeeByIdResponse() { Error = new ErrorModel(ErrorType.NotFound) }); } var command = new DeleteEmployeeCommand() { Parameter = employee }; var deletedEmployee = await commandExecutor.Execute(command); return(new DeleteEmployeeByIdResponse { Data = deletedEmployee }); }
public static Employee GetEmployee(int ID) { var query = new GetEmployeeQuery(ID); return(handleQuery(query)); }
public async Task <IActionResult> GetEmployee(int id) { var getEmployeeQuery = new GetEmployeeQuery(id); return(Ok(await Mediator.Send(getEmployeeQuery))); }
public EmployeeDto GetEmployee(Guid empId) { var query = new GetEmployeeQuery(empId); return(queryBus.Execute <GetEmployeeQuery, EmployeeDto>(query)); }
public async Task <IActionResult> Test() { var getEmployeeQuery = new GetEmployeeQuery(2); return(Ok(await Mediator.Send(getEmployeeQuery))); }