Exemplo n.º 1
0
        private void LoadGrid()
        {
            gridUsers.Rows.Clear();
            var users = _blackListRepository.GetBlackList();

            foreach (var user in users)
            {
                var row = new DataGridViewRow();
                row.Tag = user;
                for (int i = 0; i < 4; i++)
                {
                    row.Cells.Add(new DataGridViewTextBoxCell());
                }
                row.Cells[0].Value = user.Client;
                row.Cells[1].Value = user.Address;
                row.Cells[2].Value = user.Document;
                row.Cells[3].Value = user.Phone;
                gridUsers.Rows.Add(row);
            }
        }
Exemplo n.º 2
0
        private void btnSave_Click(object sender, System.EventArgs e)
        {
            #region Check

            if (string.IsNullOrEmpty(tbContractId.Text))
            {
                MessageBox.Show("Введите номер договора!", "Не все данные введены", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (string.IsNullOrEmpty(cbSeller.Text.ToString()))
            {
                MessageBox.Show("Введите имя продавца!", "Не все данные введены", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (string.IsNullOrEmpty(tbClient.Text))
            {
                MessageBox.Show("Введите имя клиента!", "Не все данные введены", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (string.IsNullOrEmpty(tbClientAdr.Text))
            {
                MessageBox.Show("Введите адрес клиента!", "Не все данные введены", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (string.IsNullOrEmpty(tbClientDoc.Text))
            {
                MessageBox.Show("Введите документ клиента!", "Не все данные введены", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (gridProducts.Rows.Count == 0)
            {
                MessageBox.Show("Заказ пуст!", "Не все данные введены", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (gridSchedule.Rows.Count == 0)
            {
                MessageBox.Show("Платежи по разписанию отсутствуют!", "Не все данные введены", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            var blackList = _blackListRepository.GetBlackList();
            foreach (var user in blackList)
            {
                if (user.Client == tbClient.Text && user.Address == tbClientAdr.Text && user.Document == tbClientDoc.Text && user.Phone == tbClientPhone.Text)
                {
                    if (MessageBox.Show("Внимание! Данный пользователь в чёрном списке. Вы точно желаете заключить с ним договор?",
                                        "Неблагонадёжный клиент", MessageBoxButtons.YesNo, MessageBoxIcon.Error) == DialogResult.No)
                    {
                        return;
                    }
                }
            }

            #endregion

            //credit
            if (CurrentCredit == null)
            {
                CurrentCredit    = new Credit();
                CurrentCredit.Id = -1;
            }
            else
            {
                _creditRepository.Delete(CurrentCredit, false);
            }
            CurrentCredit.Number       = string.IsNullOrEmpty(tbContractId.Text) ? 0 : Convert.ToInt32(tbContractId.Text);
            CurrentCredit.Term         = string.IsNullOrEmpty(tbMonths.Text) ? 0 : Convert.ToInt32(tbMonths.Text);
            CurrentCredit.DayPayment   = string.IsNullOrEmpty(cbPaymentDay.Text) ? 0 : Convert.ToInt32(cbPaymentDay.Text);
            CurrentCredit.Data         = dateContract.Value;
            CurrentCredit.Consult      = cbSeller.Text;
            CurrentCredit.ClientFIO    = tbClient.Text;
            CurrentCredit.ClientAdr    = tbClientAdr.Text;
            CurrentCredit.ClientDoc    = tbClientDoc.Text;
            CurrentCredit.ClientPhone  = tbClientPhone.Text;
            CurrentCredit.TotalClean   = string.IsNullOrEmpty(tbTotalSum.Text) ? 0 : Convert.ToDecimal(tbTotalSum.Text);
            CurrentCredit.DiscPercent  = string.IsNullOrEmpty(tbTotalDiscount.Text) ? 0 : Convert.ToDecimal(tbTotalDiscount.Text);
            CurrentCredit.AddPercent   = string.IsNullOrEmpty(tbTotalAdd.Text) ? 0 : Convert.ToDecimal(tbTotalAdd.Text);
            CurrentCredit.Total        = string.IsNullOrEmpty(tbTotalPrice.Text) ? 0 : Convert.ToDecimal(tbTotalPrice.Text);
            CurrentCredit.FirstPayment = string.IsNullOrEmpty(tbFirstPayment.Text) ? 0 : Convert.ToDecimal(tbFirstPayment.Text);
            CurrentCredit.PercentYear  = string.IsNullOrEmpty(tbPercentYear.Text) ? 0 : Convert.ToDecimal(tbPercentYear.Text);
            CurrentCredit.IsActive     = true;
            _creditRepository.AddOrUpdate(CurrentCredit);
            int id = 0;
            if (CurrentCredit.Id == -1)
            {
                id = _creditRepository.GetLastId();
            }
            else
            {
                id = CurrentCredit.Id;
            }
            //soldProducts
            List <SoldProduct> soldProducts = new List <SoldProduct>();
            foreach (DataGridViewRow row in gridProducts.Rows)
            {
                soldProducts.Add(row.Tag as SoldProduct);
            }
            soldProducts.ForEach(p =>
            {
                p.CreditId = id;
                _soldProductsRepository.AddOrUpdate(p);
            });
            //schedule
            List <Schedule> schedules = new List <Schedule>();
            foreach (DataGridViewRow row in gridSchedule.Rows)
            {
                schedules.Add(row.Tag as Schedule);
            }
            schedules.ForEach(s =>
            {
                s.CreditId = id;
                _scheduleRepository.AddOrUpdate(s);
            });

            Close();
        }