protected void rptServices_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.DataItem is CostType)
            {
                CostType type    = (CostType)e.Item.DataItem;
                Literal  litName = e.Item.FindControl("litName") as Literal;
                if (litName != null)
                {
                    litName.Text = type.Name;
                }
                HiddenField hiddenType = e.Item.FindControl("hiddenType") as HiddenField;
                if (hiddenType != null)
                {
                    hiddenType.Value = type.Id.ToString();
                }
            }

            if (e.Item.DataItem is DailyCost)
            {
                DailyCost   cost     = (DailyCost)e.Item.DataItem;
                HiddenField hiddenId = (HiddenField)e.Item.FindControl("hiddenId");
                hiddenId.Value = cost.Id.ToString();
                Literal litName = e.Item.FindControl("litName") as Literal;
                if (litName != null)
                {
                    litName.Text = cost.Type.Name;
                }
                HiddenField hiddenType = e.Item.FindControl("hiddenType") as HiddenField;
                if (hiddenType != null)
                {
                    hiddenType.Value = (cost.Type.Id).ToString();
                }

                TextBox txtAdult = (TextBox)e.Item.FindControl("txtAdult");

                txtAdult.Text = cost.Cost.ToString("0");
            }
        }
        protected void btnSave_Click(object sender, EventArgs e)
        {
            ActiveTable.ValidFrom = DateTime.ParseExact(txtValidFrom.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture);
            Module.SaveOrUpdate(ActiveTable);

            foreach (RepeaterItem item in rptServices.Items)
            {
                HiddenField hiddenType = (HiddenField)item.FindControl("hiddenType");
                HiddenField hiddenId   = (HiddenField)item.FindControl("hiddenId");
                DailyCost   cost;
                if (!string.IsNullOrEmpty(hiddenId.Value) && Convert.ToInt32(hiddenId.Value) > 0)
                {
                    cost = Module.DailyCostGetById(Convert.ToInt32(hiddenId.Value));
                }
                else
                {
                    cost = new DailyCost();
                }
                TextBox txtAdult = (TextBox)item.FindControl("txtAdult");

                cost.Cost = Convert.ToDouble(txtAdult.Text);

                foreach (CostType type in CostingList)
                {
                    if (type.Id == Convert.ToInt32(hiddenType.Value))
                    {
                        cost.Type = type;
                    }
                }

                cost.Table = ActiveTable;
                Module.SaveOrUpdate(cost);
            }

            PageRedirect(string.Format("DailyExpenseConfig.aspx?NodeId={0}&SectionId={1}&TableId={2}", Node.Id,
                                       Section.Id, ActiveTable.Id));
        }
Esempio n. 3
0
        private async void btnSubmit_Click(object sender, EventArgs e)
        {
            try
            {
                loader.Hide();

                decimal cost;
                string  description  = txtboxDescription.Text.Trim();
                var     canParseCost = decimal.TryParse(txtboxCost.Text.Trim(), out cost);

                if (string.IsNullOrWhiteSpace(description))
                {
                    MessageBox.Show("يجب ادخال الوصف بطريقه صحيحه", "خطأ", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                if (!canParseCost || cost < 0)
                {
                    MessageBox.Show("يجب ادخال التكلفه بطريقه صحيحه", "خطأ", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                loader.Show();
                DailyCost dailyCost = null;

                if (IsAdd)
                {
                    dailyCost = new DailyCost()
                    {
                        Description = description,
                        Cost        = cost,
                        InsertTime  = DateTime.Now,
                    };

                    btnSubmit.Enabled = false;
                    await Task.Run(() => {
                        using (var db = new MarketDbContext())
                        {
                            db.DailyCosts.Add(dailyCost);
                            db.SaveChanges();
                        }
                    });

                    btnSubmit.Enabled = true;
                    loader.Hide();

                    dailyCostGrid.myDataTable.Rows.Add(false, dailyCost.DailyCostId, dailyCost.Description, dailyCost.Cost, dailyCost.InsertTime.ToString("dd/MM/yyyy"));
                    MessageBox.Show("تم الاضافه بنجاح", "تم", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                else
                {
                    var id = int.Parse(selectedRow.Cells[1].Value.ToString());
                    using (var db = new MarketDbContext())
                    {
                        var rowToEdit = db.DailyCosts.FirstOrDefault(x => x.DailyCostId == id);

                        rowToEdit.Description = description;
                        rowToEdit.Cost        = cost;

                        btnSubmit.Enabled = false;
                        await Task.Run(() =>
                        {
                            db.SaveChanges();
                        });
                    }
                    btnSubmit.Enabled = true;
                    loader.Hide();

                    this.dailyCostGrid.myDataTable.Columns[2].ReadOnly = false;
                    this.dailyCostGrid.myDataTable.Columns[3].ReadOnly = false;

                    selectedRow.Cells[2].Value = description;
                    selectedRow.Cells[3].Value = cost;

                    this.dailyCostGrid.myDataTable.Columns[2].ReadOnly = true;
                    this.dailyCostGrid.myDataTable.Columns[3].ReadOnly = true;

                    MessageBox.Show("تم التعديل بنجاح", "تم", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }

                this.dailyCostGrid.refresh();
                this.dailyCostGrid.calcToltalDailyCost();
                this.Close();
            }
            catch (Exception exp)
            {
                MessageBox.Show("عذرا حدث خطأ ما", "خطأ", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }