/// <summary>
 /// Retrieve the Supplier information according to the Supplier Parameter 
 /// </summary>
 /// <param name="supplier"></param>
 /// <returns></returns>
 public Supplier GetSupplier(Supplier supplier)
 {
     supplierObj = inventory.Suppliers.Where(iObj => iObj.Id == supplier.Id).First();
     if (!supplierObj.Equals(null))
         return supplierObj;
     return null;
 }
        /// <summary>
        /// Update Supplier data to the Supplier Table according to the Supplier Parameter
        ///  Return Constants.DB_STATUS
        /// </summary>
        /// <param name="supplier"></param>
        /// <returns></returns>
        public Constants.DB_STATUS Update(Supplier supplier)
        {
            Constants.DB_STATUS status = Constants.DB_STATUS.UNKNOWN;

            try
            {
                supplierObj = inventory.Suppliers.Where(iObj => iObj.Id == supplier.Id).First();
                if (!supplierObj.Equals(null))
                {
                    Employee createdBy = inventory.Employees.Where(e => e.Id == supplier.CreatedBy.Id).First();
                    supplierObj.Id = supplier.Id;
                    supplierObj.Name = supplier.Name;
                    supplierObj.Priority = supplier.Priority;
                    supplierObj.ContactName = supplier.ContactName;
                    supplierObj.PhoneNumber = supplier.PhoneNumber;
                    supplierObj.FaxNumber = supplier.FaxNumber;
                    supplierObj.Address = supplier.Address;
                    supplierObj.GstRegistrationNumber = supplier.GstRegistrationNumber;
                    supplierObj.CreatedDate = supplier.CreatedDate;
                    supplierObj.CreatedBy = createdBy;

                    inventory.SaveChanges();
                    status = Constants.DB_STATUS.SUCCESSFULL;
                }
            }
            catch (Exception e)
            {
                status = Constants.DB_STATUS.FAILED;
            }

            return status;
        }