public async Task <ResponseModel> Handle(ProjectCreateRequest request, CancellationToken cancellationToken)
        {
            var project = _mapper.Map <Project>(request);

            _db.Projects.Add(project);
            await _db.SaveChangesAsync(cancellationToken);

            return(new ResponseModel()
            {
                StatusCode = System.Net.HttpStatusCode.OK,
                Message = HRAssistMessageConstants.PROJECT_CREATED_SUCCESSFULLY
            });
        }
        public async Task <ResponseModel> Handle(ProjectDeleteRequest request, CancellationToken cancellationToken)
        {
            var Project = await _db.Projects.FirstOrDefaultAsync(x => x.Id == request.Id);

            if (Project == null)
            {
                return(new ResponseModel()
                {
                    StatusCode = System.Net.HttpStatusCode.OK,
                    Message = HRAssistMessageConstants.PROJECT_DELETED_SUCCESSFULLY
                });
            }

            _db.Projects.Remove(Project);
            await _db.SaveChangesAsync(cancellationToken);

            return(new ResponseModel()
            {
                StatusCode = System.Net.HttpStatusCode.OK,
                Message = HRAssistMessageConstants.PROJECT_DELETED_SUCCESSFULLY
            });
        }
        public async Task <ResponseModel> Handle(ProjectEditRequest request, CancellationToken cancellationToken)
        {
            var project = await _db.Projects.FirstOrDefaultAsync(x => x.Id == request.Id);

            if (project == null)
            {
                return(new ResponseModel()
                {
                    StatusCode = System.Net.HttpStatusCode.NotFound,
                    Message = HRAssistMessageConstants.PROJECT_NOT_FOUND
                });
            }

            _mapper.Map(request, project);

            await _db.SaveChangesAsync(cancellationToken);

            return(new ResponseModel()
            {
                StatusCode = System.Net.HttpStatusCode.OK,
                Message = HRAssistMessageConstants.PROJECT_UPDATED_SUCCESSFULLY
            });
        }