如何使用外键 EF core 计算增值税

问题描述 投票:0回答:1

我在计算增值税时遇到问题,

我有产品型号

    public class Product
    {
        [Key]
        public int Id { get; set; }
        [Required]
        public string Title { get; set; }/*Product name english*/
        public string? TitleAr { get; set; }/*Product name english*/
        public string Description { get; set; }
        [Required]
        public string SKU   { get; set; } /*ISBN*/
        [Required]  
        public string SupplierName { get; set; } /*Productname*/
        [Required]
        [Display(Name ="List Price")]
        [Range(0,1000)]
        public double ListPrice { get; set; }

        [Required]
        [Display(Name = "Price for 1-50")]
        [Range(0, 1000)]
        public double Price { get; set; }
        [Required]
        [Display(Name = "Price for 50+")]
        [Range(0, 1000)]
        public double Price50 { get; set; }

        [Required]
        [Display(Name = "Price for 100+")]
        [Range(0, 1000)]
        public double Price100 { get; set; }

        public int CategoryId { get; set; }
        [ForeignKey("CategoryId")]
        [ValidateNever]
        public Category Category { get; set; }
        [ValidateNever]
         public List<ProductImage> ProductImages { get; set; }
    }

以及包含增值税的类别模型

 public class Category
 {
     [Key]
     public int Id { get; set; }
     [Required]
     [MaxLength(30)]
     [DisplayName("Category Name")]
     public string Name { get; set; } /*English name*/
     public string? NameAr { get; set; }
     [DisplayName("Display Order")]
     [Range(1,100)]
     public int Display Order { get; set; }
     public int Vat {  get; set; }
 }

我已经实现了订单详细信息表,其中包括订单总额,我将在插入命令之前计算增值税

我如何检索每个产品的增值税值,然后我将进行所需的计算?

问候

c# entity-framework-core model controller google-play
1个回答
0
投票

您可能需要在阅读/创建此订单的位置发布代码,并希望计算总数以获得特定示例/帮助。

一般来说,一旦您知道需要包含哪些产品,如果您需要获取这些产品和类别数据,您可以使用投影,例如:

_context.Products
    .Where(p => productIds.Contain(p.Id))
    .Select(p => new {p.Id, p.Price, p.Category.Vat })
    .ToList();

...其中“productIds”假定要包含在订单中的产品 ID 的集合。

您可能还想根据订单产品数量等添加 Price50/100。从那里您可以收集产品信息,包括相关类别的增值税,用于计算订单的总价。

© www.soinside.com 2019 - 2024. All rights reserved.