Example #1
0
        private void dgvDolgi_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            var grid = sender as DataGridView;

            if (grid.Columns[e.ColumnIndex] is DataGridViewButtonColumn && e.RowIndex >= 0)
            {
                tbxFilter.Focus();

                DataSetTpos.debtRow debRow = DBclass.DS.debt.NewdebtRow();
                debRow.expenseId = Convert.ToInt32(grid.Rows[e.RowIndex].Cells["expenseId"].Value);
                debRow.payDate   = DateTime.Now;
                debRow.terminal  = 0;

                //debRow.
                DataRow[] drs = DBclass.DS.expense.Select("expenseId = " + grid.Rows[e.RowIndex].Cells["expenseId"].Value.ToString());
                if (drs.Length != 0)
                {
                    drs[0]["terminal"] = Convert.ToInt32(grid.Rows[e.RowIndex].Cells["terminal"].Value);
                    drs[0]["status"]   = 0;
                }
                DBclass.DS.debt.AdddebtRow(debRow);

                DataSetTposTableAdapters.debtTableAdapter daDebt = new DataSetTposTableAdapters.debtTableAdapter();
                daDebt.Update(debRow);
                DataSetTposTableAdapters.expenseTableAdapter daExp = new DataSetTposTableAdapters.expenseTableAdapter();
                daExp.Update(drs);
                //dgvDolgi.Refresh();
            }
            //else
            //if (e.RowIndex >= 0)
            //{
            //    dgvDolgi.CurrentCell = dgvDolgi.Rows[e.RowIndex].Cells["terminal"];
            //    dgvDolgi.BeginEdit(true);
            //}
        }
Example #2
0
        private void btnPay_Click(object sender, EventArgs e)
        {
            string str = "";

            if (!string.IsNullOrEmpty(txbPay.Text))
            {
                if (rbtnCash.Checked ||
                    rbtnTerminal.Checked ||
                    rbtnTransfer.Checked)
                {
                    DataSetTpos.transferRow trRow = Classes.DB.DBclass.DS.transfer.NewtransferRow();

                    trRow.summ = Convert.ToInt32(txbPay.Text);
                    switch ((selectedRbt).Name)
                    {
                    case "rbtnCash":
                        trRow.transferType = 1;
                        break;

                    case "rbtnTerminal":
                        trRow.transferType = 2;
                        break;

                    case "rbtnTransfer":
                        trRow.transferType = 3;
                        break;
                    }
                    trRow.contragentId = contragId;
                    //trRow.comment = "Оплата за товары";
                    int sum = Convert.ToInt32(txbPay.Text) + lastPverflow;


                    trRow.dataTransfer = DateTime.Now.Date;

                    Classes.DB.DBclass.DS.transfer.AddtransferRow(trRow);
                    DataSetTposTableAdapters.transferTableAdapter trTA = new DataSetTposTableAdapters.transferTableAdapter();
                    trTA.Update(Classes.DB.DBclass.DS.transfer);
                    trTA.Fill(Classes.DB.DBclass.DS.transfer);

                    DataSetTposTableAdapters.expenseTableAdapter expenseDa = new DataSetTposTableAdapters.expenseTableAdapter();
                    expenseDa.FillByContragent(DBclass.DS.expense, contragId);
                    DataSetTposTableAdapters.transferexpenseTableAdapter trexDa = new DataSetTposTableAdapters.transferexpenseTableAdapter();
                    int lastIndexTransfer = (int)trTA.GetLast();
                    foreach (DataRow row in dataTable.Select("expType = 1"))
                    {
                        sum += Convert.ToInt32(row["expSum"]);
                    }
                    foreach (DataRow row in dataTable.Rows)
                    {
                        DataSetTpos.expenseRow expRow = DBclass.DS.expense.FindByexpenseId(Convert.ToInt32(row["expenseId"]));


                        if (expRow.expType != 1)
                        {
                            int debt     = Convert.ToInt32(row["debt"]);
                            int payedSum = 0;
                            if (sum > 0 && expRow != null)
                            {
                                if (debt <= sum)
                                {
                                    sum      = sum - debt;
                                    payedSum = debt;

                                    debt          = 0;
                                    expRow.status = 0;
                                }
                                else if (debt > sum)
                                {
                                    debt     = debt - sum;
                                    payedSum = sum;
                                    sum      = 0;
                                }
                                DataSetTpos.transferexpenseRow trexpRow = DBclass.DS.transferexpense.NewtransferexpenseRow();
                                trexpRow.expenseId  = expRow.expenseId;
                                trexpRow.transferId = lastIndexTransfer;
                                DBclass.DS.transferexpense.AddtransferexpenseRow(trexpRow);
                            }

                            switch ((selectedRbt).Name)
                            {
                            case "rbtnCash":
                                expRow.inCash += payedSum;
                                break;

                            case "rbtnTerminal":
                                expRow.terminal += payedSum;
                                break;

                            case "rbtnTransfer":
                                expRow.transfer += payedSum;
                                break;
                            }
                            expRow.debt = debt;
                        }
                        else
                        {
                            //sum = sum + expRow.expSum;
                            expRow.status = 0;
                        }
                        expenseDa.Update(expRow);
                    }
                    trexDa.Update(DBclass.DS.transferexpense);
                    DataSetTpos.transferRow trRow1 = Classes.DB.DBclass.DS.transfer.Last <DataSetTpos.transferRow>();
                    if (sum > 0)
                    {
                        trRow1.overflow = sum;
                    }
                    else
                    {
                        trRow1.overflow = 0;
                    }
                    trTA.Update(trRow1);
                }
                else
                {
                    lblError.Text    = "Выберите вид оплаты!";
                    lblError.Visible = true;
                }
            }
            else
            {
                lblError.Text    = "Введите сумму оплаты!";
                lblError.Visible = true;
            }
        }