public static List<Supplier> GetAll(Supplier srchSupplier, string executedBy)
        {
            List<Supplier> cusList = null;

            try
            {
                Database db = DatabaseFactory.CreateDatabase(Constants.DBConnection);
                DbCommand cmd = db.GetStoredProcCommand(Constants.SP_Supplier_GetAll);

                db.AddInParameter(cmd, "IsActive", DbType.Boolean, srchSupplier.IsActive);
                db.AddInParameter(cmd, "SupplierName", DbType.String, srchSupplier.SupplierName);
                db.AddInParameter(cmd, "AddresssLine1", DbType.String, srchSupplier.AddresssLine1);

                DataSet ds = db.ExecuteDataSet(cmd);

                if (ds != null && ds.Tables.Count > 0 && ds.Tables[0] != null)
                {
                    cusList = Utility.DataTableToCollection<Supplier>(ds.Tables[0]);
                }
            }
            catch (Exception ex)
            {
                cusList = null;
            }

            return cusList;
        }
        //
        // GET: /Supplier/
        public ActionResult Index()
        {
            Supplier srchSupplier               = new Supplier() { SupplierName = "", AddresssLine1 = "", IsActive = true };
            List<Supplier> supList              = SupplierManager.GetAllSupplier(srchSupplier, "nirshan");
            List<SupplierModel> supplierList    = Utility.ConvetrToList<SupplierModel, Supplier>(supList);

            return View(supplierList);
        }
        public ActionResult Index(string SupplierName = "", string AddresssLine1 = "")
        {
            //get the non property checkbox value , find a more suitable way later
            bool bIsActive = Request.Form.GetValues("active") != null && Request.Form.GetValues("active")[0] != null ? true : false;

            Supplier srchSupplier = new Supplier() { SupplierName = SupplierName, AddresssLine1 = AddresssLine1, IsActive = bIsActive };
            List<Supplier> supList = SupplierManager.GetAllSupplier(srchSupplier, "nirshan");
            List<SupplierModel> supplierList = Utility.ConvetrToList<SupplierModel, Supplier>(supList);

            return View(supplierList);
        }
 public static bool UpdateSupplier(Supplier supplier, string executedBy)
 {
     return SupplierDAO.Update(supplier, executedBy);
 }
 public static List<Supplier> GetAllSupplier(Supplier srchSupplier, string executedBy)
 {
     return SupplierDAO.GetAll(srchSupplier, executedBy);
 }
 public static bool AddSupplier(Supplier supplier, string executedBy)
 {
     return SupplierDAO.Insert(supplier, executedBy);
 }
        public static bool Update(Supplier supplier, string executedBy)
        {
            bool rslt = false;

            try
            {
                Database db = DatabaseFactory.CreateDatabase(Constants.DBConnection);
                DbCommand cmd = db.GetStoredProcCommand(Constants.SP_Supplier_Update);

                db.AddInParameter(cmd, "SupplierID", DbType.String, supplier.SupplierID);
                db.AddInParameter(cmd, "SupplierName", DbType.String, supplier.SupplierName);
                db.AddInParameter(cmd, "AddresssLine1", DbType.String, supplier.AddresssLine1);
                db.AddInParameter(cmd, "AddresssLine2", DbType.String, supplier.AddresssLine2);
                db.AddInParameter(cmd, "AddresssLine3", DbType.String, supplier.AddresssLine3);
                db.AddInParameter(cmd, "Telephone", DbType.String, supplier.Telephone);
                db.AddInParameter(cmd, "Email", DbType.String, supplier.Email);
                db.AddInParameter(cmd, "IsActive", DbType.Boolean, supplier.IsActive);
                db.AddInParameter(cmd, "UpdatedBY", DbType.Int32, supplier.UpdatedBY);

                db.ExecuteNonQuery(cmd);

                rslt = true;
            }

            catch (Exception ex)
            {
                rslt = false;
            }

            return rslt;
        }
        public static bool Insert(Supplier supplier, string executedBy)
        {
            bool rslt = false;

            try
            {
                Database db = DatabaseFactory.CreateDatabase(Constants.DBConnection);
                DbCommand cmd = db.GetStoredProcCommand(Constants.SP_Supplier_Insert);

                db.AddInParameter(cmd, "SupplierName", DbType.String, supplier.SupplierName);
                db.AddInParameter(cmd, "AddresssLine1", DbType.String, supplier.AddresssLine1);
                db.AddInParameter(cmd, "AddresssLine2", DbType.String, supplier.AddresssLine2);
                db.AddInParameter(cmd, "AddresssLine3", DbType.String, supplier.AddresssLine3);
                db.AddInParameter(cmd, "Telephone", DbType.String, supplier.Telephone);
                db.AddInParameter(cmd, "Email", DbType.String, supplier.Email);
                db.AddInParameter(cmd, "IsActive", DbType.Boolean, supplier.IsActive);
                db.AddInParameter(cmd, "CreatedBy", DbType.Int32, 1);

                db.AddOutParameter(cmd, "NewID", DbType.Int32, 4);

                db.ExecuteNonQuery(cmd);

                int newID = 0;
                int.TryParse(db.GetParameterValue(cmd, "NewID").ToString(), out newID);

                if (newID > 0)
                    rslt = true;
            }

            catch (Exception ex)
            {
                rslt = false;
            }

            return rslt;
        }