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)
            });
        }
Ejemplo n.º 2
0
        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
            });
        }
Ejemplo n.º 5
0
        public static Employee GetEmployee(int ID)
        {
            var query = new GetEmployeeQuery(ID);

            return(handleQuery(query));
        }
Ejemplo n.º 6
0
        public async Task <IActionResult> GetEmployee(int id)
        {
            var getEmployeeQuery = new GetEmployeeQuery(id);

            return(Ok(await Mediator.Send(getEmployeeQuery)));
        }
Ejemplo n.º 7
0
        public EmployeeDto GetEmployee(Guid empId)
        {
            var query = new GetEmployeeQuery(empId);

            return(queryBus.Execute <GetEmployeeQuery, EmployeeDto>(query));
        }
Ejemplo n.º 8
0
        public async Task <IActionResult> Test()
        {
            var getEmployeeQuery = new GetEmployeeQuery(2);

            return(Ok(await Mediator.Send(getEmployeeQuery)));
        }