コード例 #1
0
        public IHttpActionResult Add([FromBody] CategoryApiModel categoryApiModel)
        {
            var categoryModel = _mapper.Map <CategoryModel>(categoryApiModel);

            _categoryService.Add(categoryModel);
            return(Ok());
        }
コード例 #2
0
        public static TModel FromArticle <TModel>(Article article) where
        TModel : ArticleApiModel, new()
        {
            var model = new TModel();

            model.Id = article.Id;

            model.AuthorId = article.AuthorId;

            model.Slug = article.Slug;

            model.FeaturedImageUrl = article.FeaturedImageUrl;

            model.Title = article.Title;

            model.HtmlContent = article.HtmlContent;

            model.Published = article.Published;

            model.IsPublished = article.IsPublished;

            model.Author = AuthorApiModel.FromAuthor(article.Author);

            model.Tags = article.Tags.Select(t => TagApiModel.FromTag(t)).ToList();

            model.Categories = article.Categories.Select(c => CategoryApiModel.FromCategory(c)).ToList();

            return(model);
        }
コード例 #3
0
        public async Task <IActionResult> Name(string name)
        {
            try
            {
                var category = _context.Categories.Where(c => c.Name == name).FirstOrDefault();
                if (category == null)
                {
                    return(BadRequest());
                }
                var apiCategory = new CategoryApiModel();
                apiCategory.Name        = category.Name;
                apiCategory.Description = category.Description;

                var specs = _context.CategorySpecs.Where(cs => cs.CategoryId == category.Id).ToList();

                apiCategory.Specifications = new List <string>();
                foreach (var spec in specs)
                {
                    apiCategory.Specifications.Add(spec.Name);
                }
                return(Ok(apiCategory));
            }
            catch
            {
                return(BadRequest());
            }
        }
コード例 #4
0
        public async Task <IActionResult> all()
        {
            try
            {
                var categories    = _context.Categories.ToList();
                var apiCategories = new List <CategoryApiModel>();

                foreach (var category in categories)
                {
                    var apiCategory = new CategoryApiModel();
                    apiCategory.Name        = category.Name;
                    apiCategory.Description = category.Description;

                    var specs = _context.CategorySpecs.Where(cs => cs.CategoryId == category.Id).ToList();

                    apiCategory.Specifications = new List <string>();
                    foreach (var spec in specs)
                    {
                        apiCategory.Specifications.Add(spec.Name);
                    }

                    apiCategories.Add(apiCategory);
                }
                return(Ok(apiCategories));
            }
            catch
            {
                return(BadRequest());
            }
        }
コード例 #5
0
        public IHttpActionResult Put([FromBody] CategoryApiModel authorApiModel)
        {
            var categoryModel = _mapper.Map <CategoryModel>(authorApiModel);

            _categoryService.Update(categoryModel);

            return(Ok());
        }
コード例 #6
0
        public async Task <CategoryApiModel> AddCategoryAsync(CategoryApiModel categoryApiModel, CancellationToken ct = default)
        {
            var category = _mapper.Map <Category>(categoryApiModel);

            category = await _categoryRepository.AddAsync(category, ct);

            return(_mapper.Map <CategoryApiModel>(category));
        }
コード例 #7
0
        //[AsmAuthorization(ModuleCode.Category, AccessType.Create)]
        public async Task <ActionResult <ProductApiModel> > Post([FromBody] CategoryApiModel categoryApiModel)
        {
            _logger.LogInformationExtension($"Post Category - Name: {categoryApiModel.Name}");

            var userId = Convert.ToInt32(User.Claims.FirstOrDefault(a => a.Type == "sub")?.Value);

            categoryApiModel.CreatedBy     = userId;
            categoryApiModel.Created       = DateTime.Now;
            categoryApiModel.LastUpdatedBy = userId;
            categoryApiModel.LastUpdated   = DateTime.Now;

            var newCategory = await _categoryService.Create(_mapper.Map <CategoryModel>(categoryApiModel));

            return(Ok(new Response <CategoryApiModel>(_mapper.Map <CategoryApiModel>(newCategory))));
        }
コード例 #8
0
        public async Task <bool> SaveAllProductsAsync(IEnumerable <ProductApiModel> products, CancellationToken ct = default)
        {
            foreach (var product in products)
            {
                CategoryApiModel categoryApiModel = await GetCategoryByIdAsync(product.CategoryId, ct);

                if (categoryApiModel == null)
                {
                    await AddCategoryAsync(product.Category, ct);
                }

                await AddOrUpdateProductAsync(product, ct);
            }

            return(true);
        }
コード例 #9
0
 internal ApiResultCategoryApiModel(CategoryApiModel data)
 {
     Data = data;
 }