Пример #1
0
        public void EditRebate(int id, Rebate rebate)
        {
            using (SqlConnection con = new SqlConnection(conString))
            {
                con.Open();

                using (SqlCommand com = new SqlCommand())
                {
                    string query = String.Format("UPDATE Rebate SET Name='{0}', ProductId='{1}', Discount='{2}', ", rebate.Name, rebate.Product.Id, (decimal)rebate.Discount);


                    if (rebate.GetType() == typeof(VolumeBasedRebate))
                    {
                        VolumeBasedRebate r = (VolumeBasedRebate)rebate;
                        query += String.Format("Volume='{0}', StartDate='{1}', EndDate='{2}', RebateType='{3}' WHERE Id={4}", r.Volume, DateTime.Now.AddYears(-1).ToString(), DateTime.Now.AddYears(10).ToString(), "VOLUME", id);
                    }
                    else if (rebate.GetType() == typeof(SeasonalRebate))
                    {
                        SeasonalRebate r = (SeasonalRebate)rebate;
                        query += String.Format("Volume='{0}', StartDate='{1}', EndDate='{2}', RebateType='{3}' WHERE Id={4}", 1, r.Start, r.End, "SEASONAL", id);
                    }
                    else
                    {
                        SpecialRebate r = (SpecialRebate)rebate;
                        query += String.Format("Volume='{0}', StartDate='{1}', EndDate='{2}', RebateType='{3}' WHERE Id={4}", r.Volume, r.Start, r.End, "SPECIAL", id);
                    }

                    com.CommandText = query;
                    com.Connection  = con;
                    com.ExecuteNonQuery();
                }
            }
        }
Пример #2
0
 private void SetExistingRebateValues()
 {
     if (!IsNew() && cmbRebName.SelectedItem != null)
     {
         Rebate item = (Rebate)cmbRebName.SelectedItem;
         for (int i = 0; i < cmbRebProduct.Items.Count; i++)
         {
             Product p = (Product)cmbRebProduct.Items[i];
             if (p.Id == item.Product.Id)
             {
                 cmbRebProduct.SelectedIndex = i;
             }
         }
         txtRebDiscount.Text = item.Discount.ToString();
         if (item.GetType() == typeof(VolumeBasedRebate))
         {
             rdbRebVolume.Checked = true;
             VolumeBasedRebate r = (VolumeBasedRebate)item;
             txtRebVolQuantity.Text = r.Volume.ToString();
         }
         else if (item.GetType() == typeof(SeasonalRebate))
         {
             rdbRebSeasonal.Checked = true;
             SeasonalRebate r = (SeasonalRebate)item;
             dateRebSeasonalStart.Value = r.Start;
             dateRebSeasonalEnd.Value   = r.End;
         }
         else
         {
             rdbRebSpecial.Checked = true;
             SpecialRebate r = (SpecialRebate)item;
             txtRebSpecialQuantity.Text = r.Volume.ToString();
             dateRebSpecialStart.Value  = r.Start;
             dateRebSpecialEnd.Value    = r.End;
         }
     }
     else
     {
         cmbRebProduct.SelectedItem = null;
         txtRebDiscount.Text        = "";
         rdbRebVolume.Checked       = true;
         txtRebVolQuantity.Text     = "";
         dateRebSeasonalStart.Value = DateTime.Now;
         dateRebSeasonalEnd.Value   = DateTime.Now;
         txtRebSpecialQuantity.Text = "";
         dateRebSpecialStart.Value  = DateTime.Now;
         dateRebSpecialEnd.Value    = DateTime.Now;
     }
 }
Пример #3
0
        public void AddRebate(Rebate rebate)
        {
            using (SqlConnection con = new SqlConnection(conString))
            {
                con.Open();

                using (SqlCommand com = new SqlCommand("INSERT INTO Rebate(Name, ProductId, Discount, Volume, StartDate, EndDate, RebateType) VALUES(@Name, @ProductId, @Discount, @Volume, @StartDate, @EndDate, @RebateType)", con))
                {
                    com.Parameters.AddWithValue("@Name", rebate.Name);
                    com.Parameters.AddWithValue("@ProductId", rebate.Product.Id);
                    com.Parameters.AddWithValue("@Discount", (decimal)rebate.Discount);

                    if (rebate.GetType() == typeof(VolumeBasedRebate))
                    {
                        VolumeBasedRebate r = (VolumeBasedRebate)rebate;
                        com.Parameters.AddWithValue("@Volume", r.Volume);
                        com.Parameters.AddWithValue("@StartDate", DateTime.Now.AddYears(-1).ToString());
                        com.Parameters.AddWithValue("@EndDate", DateTime.Now.AddYears(10).ToString());
                        com.Parameters.AddWithValue("@RebateType", "VOLUME");
                    }
                    else if (rebate.GetType() == typeof(SeasonalRebate))
                    {
                        SeasonalRebate r = (SeasonalRebate)rebate;
                        com.Parameters.AddWithValue("@Volume", 1);
                        com.Parameters.AddWithValue("@StartDate", r.Start);
                        com.Parameters.AddWithValue("@EndDate", r.End);
                        com.Parameters.AddWithValue("@RebateType", "SEASONAL");
                    }
                    else
                    {
                        SpecialRebate r = (SpecialRebate)rebate;
                        com.Parameters.AddWithValue("@Volume", r.Volume);
                        com.Parameters.AddWithValue("@StartDate", r.Start);
                        com.Parameters.AddWithValue("@EndDate", r.End);
                        com.Parameters.AddWithValue("@RebateType", "SPECIAL");
                    }

                    com.ExecuteNonQuery();
                }
            }
        }