/// <summary> /// /// </summary> /// <param name="cost"></param> /// <param name="itemType"></param> /// <param name="remark"></param> /// <param name="billId"></param> public BillItem(BillItemTypeEnum itemType, decimal cost, string remark, string billId) { Id = SnowflakeId.Default().NextId().ToString(); Cost = cost; BillItemTypeEnum = itemType; Remark = remark; BillId = billId; }
/// <summary> /// 为账单添加一个账单项 /// </summary> /// <param name="cost"></param> /// <param name="itemType"></param> /// <param name="remark"></param> public void AddBillItem(BillItemTypeEnum itemType, decimal cost, string remark) { if (this.BillItems == null) { this.BillItems = new List <BillItem>(); } BillItem item = new BillItem(itemType, cost, remark, this.Id); this.BillItems.Add(item); this.TotalCost += item.Cost; }
/// <summary> /// 修改一个订单项的信息 /// </summary> /// <param name="itemId"></param> /// <param name="cost"></param> /// <param name="itemType"></param> /// <param name="remark"></param> public void UpDateBillItem(string itemId, decimal cost, BillItemTypeEnum itemType, string remark) { if (this.BillItems == null || this.BillItems.Count == 0) { throw new Exception("该账单没有账单项可以修改"); } var item = this.BillItems.FirstOrDefault(c => c.Id == itemId); if (item == null) { throw new Exception("要修改的账单项不存在"); } this.TotalCost -= item.Cost; item.UpdateBillItem(itemType, cost, remark); this.TotalCost += item.Cost; }
/// <summary> /// /// </summary> /// <param name="itemType"></param> /// <param name="cost"></param> /// <param name="remark"></param> public void UpdateBillItem(BillItemTypeEnum itemType, decimal cost, string remark) { Cost = cost; BillItemTypeEnum = itemType; Remark = remark; }