public Bill GetBill(int billNo) { var bill = Bills.First(b => b.BillId == billNo); bill.Shop = Customers.Single(c => c.CustomerId == bill.ShopCustomerId); return(bill); }
public BillDetails Edit(BillDetails bill) { var entity = Bills.First(x => x.Id == bill.Id); entity.Created = bill.Created ?? DateTime.Now; entity.Partner = bill.Partner is null ? null: Partners.Single(x => x.Id == bill.Partner.Id); entity.Condominium = bill.Condominium is null ? null: Condominiums.Single(x => x.Id == bill.Condominium.Id); entity.Description = bill.Description; entity.Serial = bill.Serial; entity.PaymentDeadline = bill.PaymentDeadline; entity.Done = bill.Done; DbContext.RemoveRange(BillItems.Where(x => x.Bill == entity)); entity.Items = bill.Items .Select(x => new Entities.BillItem() { Description = x.Description, Price = x.Price }) .ToList(); DbContext.AddRange(entity.Items); DbContext.RemoveRange(DbContext.BillTags.Where(x => x.Bill == entity)); entity.Tags = bill.Tags .Select(x => new BillTag() { Label = x.Label, Ratio = x.Rate }) .ToList(); DbContext.AddRange(entity.Tags); DbContext.SaveChanges(); return(entity.ToModelWithItems()); }