Example #1
0
        private bool ValidateUpdateCategoryRequest(AddOrUpdateCategoryRequest request)
        {
            var isValidData = ValidateAddCategoryRequest(request);
            var isValidKey  = request.Id == Guid.Empty;

            return(isValidData && isValidKey);
        }
Example #2
0
        public ServiceResult <CourseServiceResultCode> UpdateCategory(AddOrUpdateCategoryRequest request)
        {
            var isValidArgs = ValidateUpdateCategoryRequest(request);

            if (!isValidArgs)
            {
                return(ArgumentErrorResult(CourseServiceResultCode.ArgumentError));
            }

            try
            {
                var category = _categoryRepo.Get(request.Id);
                if (category == null)
                {
                    return(DataErrorResult(CourseServiceResultCode.DataNotExist));
                }
                if (request.Name == category.Name && request.Icon == request.Icon)
                {
                    return(BuildResult(true, CourseServiceResultCode.Success, resultObj: category));
                }
                category.Name = request.Name;
                category.Icon = request.Icon;
                _categoryRepo.Update(category);
                _categoryRepo.SaveChanges();
                return(BuildResult(true, CourseServiceResultCode.Success, resultObj: category));
            }
            catch (Exception ex)
            {
                _systemErrorsRepo.AddLog(ex);
                return(InternalErrorResult(CourseServiceResultCode.BackendException));
            }
        }
Example #3
0
        public ServiceResult <CourseServiceResultCode> AddCategory(AddOrUpdateCategoryRequest request)
        {
            var isValidArgs = ValidateAddCategoryRequest(request);

            if (!isValidArgs)
            {
                return(ArgumentErrorResult(CourseServiceResultCode.ArgumentError));
            }

            var category = new Category {
                Id = Guid.NewGuid(), Name = request.Name, Icon = request.Icon
            };

            try
            {
                if (_categoryRepo.IsExistedName(request.Name))
                {
                    return(DataErrorResult(CourseServiceResultCode.DataDuplicated));
                }
                _categoryRepo.Add(category);
                _categoryRepo.SaveChanges();
                return(BuildResult(true, CourseServiceResultCode.Success, resultObj: category));
            }
            catch (Exception ex)
            {
                _systemErrorsRepo.AddLog(ex);
                return(InternalErrorResult(CourseServiceResultCode.BackendException));
            }
        }
Example #4
0
        private bool ValidateAddCategoryRequest(AddOrUpdateCategoryRequest request)
        {
            if (request == null)
            {
                return(false);
            }
            if (string.IsNullOrWhiteSpace(request.Name))
            {
                return(false);
            }
            if (string.IsNullOrWhiteSpace(request.Icon))
            {
                return(false);
            }

            return(true);
        }
 public async Task <IHttpActionResult> Update(AddOrUpdateCategoryRequest request)
 {
     request.TenantUniqueId = Request.GetTenantUniqueId();
     return(Ok(await _mediator.Send(request)));
 }
Example #6
0
 public IActionResult CreateNewCategory(AddOrUpdateCategoryRequest request) => GetResult(() => _courseService.AddCategory(request));