Bill.cs
- using System;
- using System.Collections.Generic;
- using System.Text;
- namespace ConsoleApp2
- {
- public class Bill
- {
- public int BillNumber { get; set; }
- public DateTime BillDate { get; set; }
- public List LineItems { get; set; } = new List();
- public void AddBillLine(BillLine billLine)
- {
- LineItems.Add(billLine);
- }
- public void RemoveBillLine(int SOMEID)
- {
- throw new NotImplementedException();
- }
- ///
- /// GetTotal should return the sum of (Cost * Quantity) for each line item
- ///
- public decimal GetTotal()
- {
- throw new NotImplementedException();
- }
- ///
- /// MergeBill appends the items from the sourceBill to the current bill
- ///
- /// Bill to merge from
- public void MergeBill(Bill sourceBill)
- {
- throw new NotImplementedException();
- }
- ///
- /// Creates a deep clone of the current bill (all fields and properties)
- ///
- public Bill Clone()
- {
- throw new NotImplementedException();
- }
- ///
- /// Outputs string containing the following (replace [] with actual values):
- /// Bill Number: [BillNumber], BillDate: [dd/MM/yyyy], LineItemCount: [Number of items in LineItems]
- ///
- public override string ToString()
- {
- throw new NotImplementedException();
- }
- }
- }
- BillLine.cs
- namespace ConsoleApp2
- {
- public class BillLine
- {
- public int BillLineId { get; set; }
- public string Description { get; set; }
- public int Quantity { get; set; }
- public double Cost { get; set; }
- }
- }
- Program.cs
- using System;
- using System.Collections.Generic;
- namespace ConsoleApp2
- {
- public class Program
- {
- static void Main(string[] args)
- {
- Console.WriteLine("Billing app started....");
- CreateBillWithOneItem();
- CreateBillWithMultipleItemsAndQuantities();
- RemoveItem();
- MergeBill();
- CloneBill();
- BillToString();
- }
- private static void CreateBillWithOneItem()
- {
- var bill = new Bill();
- bill.AddBillLine(new BillLine()
- {
- BillLineId = 1,
- Cost = 6.99,
- Quantity = 1,
- Description = "Apple"
- });
- Console.WriteLine(bill.GetTotal());
- }
- private static void CreateBillWithMultipleItemsAndQuantities()
- {
- var bill = new Bill();
- bill.AddBillLine(new BillLine()
- {
- BillLineId = 1,
- Cost = 10.21,
- Quantity = 4,
- Description = "Banana"
- });
- bill.AddBillLine(new BillLine()
- {
- BillLineId = 2,
- Cost = 5.21,
- Quantity = 1,
- Description = "Orange"
- });
- bill.AddBillLine(new BillLine()
- {
- BillLineId = 3,
- Cost = 5.21,
- Quantity = 5,
- Description = "Pineapple"
- });
- Console.WriteLine(bill.GetTotal());
- }
- private static void RemoveItem()
- {
- var bill = new Bill();
- bill.AddBillLine(new BillLine()
- {
- BillLineId = 1,
- Cost = 5.21,
- Quantity = 1,
- Description = "Orange"
- });
- bill.AddBillLine(new BillLine()
- {
- BillLineId = 2,
- Cost = 10.99,
- Quantity = 4,
- Description = "Banana"
- });
- bill.RemoveBillLine(1);
- Console.WriteLine(bill.GetTotal());
- }
- private static void MergeBill()
- {
- var bill1 = new Bill();
- bill1.AddBillLine(new BillLine()
- {
- BillLineId = 1,
- Cost = 10.33,
- Quantity = 4,
- Description = "Banana"
- });
- var bill2 = new Bill();
- bill2.AddBillLine(new BillLine()
- {
- BillLineId = 2,
- Cost = 5.22,
- Quantity = 1,
- Description = "Orange"
- });
- bill2.AddBillLine(new BillLine()
- {
- BillLineId = 3,
- Cost = 6.27,
- Quantity = 3,
- Description = "Blueberries"
- });
- bill1.MergeBill(bill2);
- Console.WriteLine(bill1.GetTotal());
- }
- private static void CloneBill()
- {
- var bill = new Bill();
- bill.AddBillLine(new BillLine()
- {
- BillLineId = 1,
- Cost = 6.99,
- Quantity = 1,
- Description = "Apple"
- });
- bill.AddBillLine(new BillLine()
- {
- BillLineId = 2,
- Cost = 6.27,
- Quantity = 3,
- Description = "Blueberries"
- });
- var clonedBill = bill.Clone();
- Console.WriteLine(clonedBill.GetTotal());
- }
- private static void BillToString()
- {
- var bill = new Bill()
- {
- BillDate = DateTime.Now,
- BillNumber = 1000,
- LineItems = new List()
- {
- new BillLine()
- {
- BillLineId = 1,
- Cost = 6.99,
- Quantity = 1,
- Description = "Apple"
- }
- }
- };
- Console.WriteLine(bill.ToString());
- }
- }
- }
Can anyone please help on this I want to know how I can create bill for one item, create bill with multiple items and quantities, remove item, merge bill, clone bill.
Jenith ThakkarPosted Jul 17, 2020, 1:37 AM
Change this line
to
h davePosted Jul 16, 2020, 1:28 AM
Jenith ThakkarPosted Jul 16, 2020, 1:23 AM