Пример #1
0
        public async Task <CategoryUpdateModel> Update(CategoryUpdateModel model)
        {
            if (!_isAuthorized)
            {
                throw _eNotFound <CategoryUpdateModel>("Category not found");
            }

            Category entity = null;

            if (string.IsNullOrWhiteSpace(model.Id))
            {
                entity = _mapper.Map <Category>(model);
            }
            else
            {
                entity = (await _repositoryCategory.GetFirst(x => x.Id == model.Id && x.State == MRApiCommon.Infrastructure.Enum.MREntityState.Active)
                          ?? throw _eNotFound <CategoryUpdateModel>("Category not found"));
                entity = _mapper.Map(model, entity);
            }

            entity = string.IsNullOrWhiteSpace(entity.Id)
                ? await _repositoryCategory.Insert(entity)
                : await _repositoryCategory.Replace(entity);

            return(_mapper.Map <CategoryUpdateModel>(entity));
        }