Advertisement
Guest User

Helper

a guest
Jun 28th, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.16 KB | None | 0 0
  1.  public static string CountData(string table)
  2.     {
  3.         using (SqlConnection con = new SqlConnection(GetCon()))
  4.         {
  5.             con.Open();
  6.             string query = @"SELECT COUNT(*) FROM " + table;
  7.             using (SqlCommand cmd = new SqlCommand(query, con))
  8.             {
  9.                 return ((int)cmd.ExecuteScalar()).ToString();
  10.             }
  11.         }
  12.     }
  13.  
  14.     public static bool IsExisting(string ProductID)
  15.     {
  16.         using (SqlConnection con = new SqlConnection(GetCon()))
  17.         {
  18.             con.Open();
  19.             string query = @"SELECT ProductID FROM OrderDetails
  20.                WHERE OrderNo=0 AND ProductID=@ProductID AND UserID=@UserID";
  21.             using (SqlCommand cmd = new SqlCommand(query, con))
  22.             {
  23.                 cmd.Parameters.AddWithValue("@UserID", "1");
  24.                 cmd.Parameters.AddWithValue("@ProductID", ProductID);
  25.                 return cmd.ExecuteScalar() == null ? false : true;
  26.             }
  27.         }
  28.     }
  29.     public static bool IsExisting2(string ProductID)
  30.     {
  31.         using (SqlConnection con = new SqlConnection(GetCon()))
  32.         {
  33.             con.Open();
  34.             string query = @"SELECT ProductID FROM InquiryDetails
  35.                WHERE ProductID=@ProductID";
  36.             using (SqlCommand cmd = new SqlCommand(query, con))
  37.             {
  38.                 cmd.Parameters.AddWithValue("@ProductID", ProductID);
  39.                 return cmd.ExecuteScalar() == null ? false : true;
  40.             }
  41.         }
  42.     }
  43.  
  44.     public static double GetPrice(string ProductID)
  45.     {
  46.         using (SqlConnection con = new SqlConnection(GetCon()))
  47.         {
  48.             con.Open();
  49.             string query = @"SELECT UnitPrice FROM Product
  50.                WHERE ProductID=@ProductID";
  51.             using (SqlCommand cmd = new SqlCommand(query, con))
  52.             {
  53.                 cmd.Parameters.AddWithValue("@ProductID", ProductID);
  54.                 return Convert.ToDouble((decimal)cmd.ExecuteScalar());
  55.             }
  56.         }
  57.     }
  58.  
  59.     public static bool AvailableDiscount(string productID)
  60.     {
  61.         using (SqlConnection con = new SqlConnection(Helper.GetCon()))
  62.         {
  63.             con.Open();
  64.             string query = @"SELECT * FROM DiscountBrands db
  65.                INNER JOIN Product p ON db.BrandID = p.BrandID
  66.                WHERE p.ProductID=@ProductID";
  67.             using (SqlCommand cmd = new SqlCommand(query, con))
  68.             {
  69.                 cmd.Parameters.AddWithValue("@ProductID", productID);
  70.                 return cmd.ExecuteScalar() == null ? false : true;
  71.             }
  72.         }
  73.     }
  74.  
  75.    public static double GetDiscount(string productID)
  76.     {
  77.         using (SqlConnection con = new SqlConnection(Helper.GetCon()))
  78.         {
  79.             con.Open();
  80.             string query = @"SELECT d.Percentage FROM DiscountBrands db
  81.                INNER JOIN Discounts d ON db.DiscountNo = d.DiscountNo
  82.                INNER JOIN Product p ON db.BrandID = p.BrandID
  83.                WHERE p.ProductID=@ProductID AND d.Status=@Status";
  84.             using (SqlCommand cmd = new SqlCommand(query, con))
  85.             {
  86.                 cmd.Parameters.AddWithValue("@ProductID", productID);
  87.                 cmd.Parameters.AddWithValue("@Status", "Active");
  88.                 return cmd.ExecuteScalar() == null ? 0 : (int)cmd.ExecuteScalar();
  89.             }
  90.         }
  91.     }
  92.  
  93.     public static void AddToCart(string ProductID, string Quantity)
  94.     {
  95.         using (SqlConnection con = new SqlConnection(GetCon()))
  96.         {
  97.             bool existingProduct = IsExisting(ProductID);
  98.             int qty = int.Parse(Quantity);
  99.             double price = GetPrice(ProductID);
  100.             double discount = GetDiscount(ProductID) / 100;
  101.             double discountedPrice = price * (1 - discount);
  102.  
  103.             con.Open();
  104.             string query = "";
  105.  
  106.             if (existingProduct)
  107.             {
  108.                 query = @"UPDATE OrderDetails SET Quantity=Quantity + @Quantity,
  109.                    Amount=Amount + @Amount
  110.                    WHERE OrderNo=@OrderNo AND ProductID=@ProductID";
  111.             }
  112.             else
  113.             {
  114.                 query = @"INSERT INTO OrderDetails VALUES
  115.                    (@OrderNo, @UserID, @ProductID, @Quantity, @Price,
  116.                    @Amount)";
  117.             }
  118.             using (SqlCommand cmd = new SqlCommand(query, con))
  119.             {
  120.                 cmd.Parameters.AddWithValue("@UserID", "1");
  121.                 cmd.Parameters.AddWithValue("@Quantity", Quantity);
  122.                 cmd.Parameters.AddWithValue("@ProductID", ProductID);
  123.                 cmd.Parameters.AddWithValue("@OrderNo", 0);
  124.                 if (AvailableDiscount(ProductID))
  125.                     cmd.Parameters.AddWithValue("@Price", discountedPrice);
  126.                 else
  127.                     cmd.Parameters.AddWithValue("@Price", price);
  128.                 if (AvailableDiscount(ProductID))
  129.                     cmd.Parameters.AddWithValue("@Amount", discountedPrice * qty);
  130.                 else
  131.                     cmd.Parameters.AddWithValue("@Amount", price * qty);
  132.  
  133.                 cmd.ExecuteNonQuery();
  134.             }
  135.         }
  136.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement