zoukankan      html  css  js  c++  java
  • 领域驱动设计案例之业务实现2

    这篇文章主要介绍如何创建产品信息。ModifyCount主要的作用是订单项成功后,相应的产品库存应该减少,库存减少由Product进行维护。

    public partial class Product:AggreateRoot
        {
            private IRepository<Product> irepository;
            public Product(IRepository<Product> irepository)
            {
                this.irepository = irepository;
            }
            public Product()
            { }
    
            public void CreateProduct(string name,string color,string size,int count,
                decimal unitprice,string categoryname,string description)
            {
                var product = new Product();
                product.Id = base.Id;
                product.ProductName = name;
                product.Color = color;
                product.Size = size;
                product.Count = count;
                product.UnitPrice = unitprice;
                var productcategory = new ProductCategory(categoryname,description);
                product.ProductCategory = productcategory;
                irepository.Create(product);
    
            }
    
            public void ModifyCount(Product p,int amount,IRepository<Product> irepository)
            {
                p.Count = this.Count - amount;
                irepository.Update(p);
            }
    
            public Product GetProducyByName(string productname)
            {
                return irepository.GetByCondition(p => p.ProductName == productname)
                    .FirstOrDefault();
            }
        }
     public partial class ProductCategory:ValueObject
        {
            public ProductCategory(string categoryname,string description)
            {
                this.Id = base.Id;
                this.CategoryName = categoryname;
                this.Description = description;
            }
        }

     欢迎加入QQ讨论群:309287205

  • 相关阅读:
    Swagger配置和使用
    请求SpringMVC接口如何传参数
    ssm搭建配置文件
    永久关闭windows10更新
    VSCode搭建java开发环境
    idea全局设置
    mybatis-plus查询指定字段
    mybayis-plus条件构造器
    Java日期时间操作的一些方法
    C#编写聊天软件客户端
  • 原文地址:https://www.cnblogs.com/malaoko/p/5050116.html
Copyright © 2011-2022 走看看