/// <summary> /// Insert/Update current customer in database. /// </summary> /// <param name="cust">Customer to update.</param> public void UpdateCustomer(Customer customer) { ITransaction tx = null; try { if (!session.IsConnected) { session.Reconnect(); } tx = session.BeginTransaction(); session.Merge(customer); session.Flush(); tx.Commit(); Console.WriteLine("\nCustomer with ID: " + customer.CustomerID + " succefully updated into database"); } catch (Exception ex) { tx.Rollback(); session.Clear(); session.Disconnect(); throw ex.InnerException; // handle exception } }
/// <summary> /// Display customer orders /// </summary> /// <param name="customer"></param> static void PrintCustomerOrders(Customer customer) { if (customer != null) { Console.WriteLine(customer.ContactName + "'s Orders"); Console.WriteLine("------------------------"); if (customer.Orders != null) { Console.WriteLine(" {0,-10} {1,-25} {2,-20}", "Order ID", "Order Date", "Ship Name"); Console.WriteLine(" {0,-10} {1,-25} {2,-20}", "--------", "----------e", "---------"); foreach (Order order in customer.Orders) { PrintOrderDetail(order); } } } else { Console.WriteLine("No such customer exist."); } }
/// <summary> /// Adds or updates Customer record /// </summary> /// <param name="bAddUser">True for adding new record. False in case of update.</param> /// <returns></returns> static Customer AddCustomer(bool bAddUser) { bool validID = false; string userInput = ""; Customer customer = new Customer(); while (!validID) { Console.Write("\nEnter Customer ID (maximum length = 5): "); customer.CustomerID = Console.ReadLine().ToUpper(); if (customer.CustomerID.Length > 5 || customer.CustomerID == "") { Console.WriteLine("Exception: CustomerID cannot accept string of length > 5"); } else validID = true; } if (!bAddUser) { if (cf.GetCustomer(customer.CustomerID) == null) { Console.WriteLine("No such customer exist."); return null; } } Console.Write("\nEnter Customer Name: "); userInput = Console.ReadLine(); customer.ContactName = (userInput == "") ? " " : userInput; Console.Write("\nEnter Customer Company Name: "); userInput = Console.ReadLine(); customer.CompanyName = (userInput == "") ? " " : userInput; Console.Write("\nEnter Country Name: "); userInput = Console.ReadLine(); customer.Country = (userInput == "") ? " " : userInput; Console.Write("\nEnter City: "); userInput = Console.ReadLine(); customer.City = (userInput == "") ? " " : userInput; Console.Write("\nEnter Address: "); userInput = Console.ReadLine(); customer.Address = (userInput == "") ? " " : userInput; return customer; }
/// <summary> /// Display customer details /// </summary> /// <param name="customer"></param> private static void PrintCustomerDetail(Customer customer) { if (customer != null) { Console.WriteLine("Customer's Detail"); Console.WriteLine("-----------------"); Console.WriteLine("Customer ID : " + customer.CustomerID); Console.WriteLine("Name : " + customer.ContactName); Console.WriteLine("Company : " + customer.CompanyName); Console.WriteLine("Address : " + customer.Address); } else { Console.WriteLine("No such customer exist."); } }