private void CreateClaim() // Создание заявки и отправка { BClaim claim = new BClaim(); User user = new User(); #region Claim while (true) { claim.Id = BClaim.GenerateID(6); if (!BaseDataLite.CheckLoanID(claim.Id)) { break; } } claim.SumLoan = Convert.ToInt32(textBoxSumLoan.Text); claim.Days = Convert.ToInt32(textBoxDays.Text); claim.FirstDate = DateTime.Parse(maskedTextBoxFirstDay.Text); if (radioButtonCard.Checked) { claim.CardNumber = maskedCardNumber.Text; } else { claim.CardNumber = "-"; } claim.SumPaid = Convert.ToInt32(labelPaidSum.Text); claim.LastDate = claim.FirstDate.AddDays(claim.Days); claim.Fine = 0; claim.PaidOut = 0; if (radioButtonCard.Checked) { claim.type = "карта"; } else { claim.type = "наличка"; } claim.status = "открыто"; #endregion #region User if (!BaseDataLite.CheckUserExist(textBoxUserPassport.Text)) { while (true) { user.Id = BClaim.GenerateID(4); if (!BaseDataLite.CheckUsersID(user.Id)) { break; } } user.Name = textBoxUserName.Text; user.SecoundName = textBoxUserSecName.Text; user.MiddleName = textBoxUserMidName.Text; user.BirthDay = DateTime.Parse(maskedUserBirthDay.Text); user.Phone = maskedUserPhone.Text; user.Email = maskedEmail.Text; user.Passport = textBoxUserPassport.Text; LoadingScreen(true); BaseDataLite.CreateNewUser(user.Id, user.Name, user.SecoundName, user.MiddleName, user.BirthDay, user.Phone, user.Email, user.Passport); LoadingScreen(false); } else { user.Id = BaseDataLite.GetUserID(textBoxUserPassport.Text); BaseDataLite.SendUserDataUpdate(user.Id, maskedEmail.Text, maskedUserPhone.Text); } #endregion #region Docs int docid; while (true) { docid = BClaim.GenerateID(5); if (!BaseDataLite.CheckDocID(claim.Id)) { break; } } #endregion if (!BaseDataLite.CheckSeveralLoan(user.Id)) { try { LoadingScreen(true); BaseDataLite.SendClaim(claim.Id, claim.SumPaid / claim.Days, claim.SumLoan, claim.Days, claim.FirstDate, user.Id, docid, claim.CardNumber, claim.SumPaid, claim.Fine, claim.PaidOut, claim.type, claim.status); BaseDataLite.SendFile(FileAddres, docid); GeneralMessages.SendEmailNewLoan(user.Email, $"{user.Name} {user.SecoundName} {user.MiddleName} ", claim); LoadingScreen(false); NotificationWindow f = new NotificationWindow($"{claim.Id}", claim.SumLoan, claim.Days, $"{claim.SumPaid}"); DialogResult result = f.ShowDialog(); if (result == DialogResult.OK) { if (panelCreateClaim.Visible == true) { panelMain.Visible = false; panelCheckClaim.Visible = true; panelCreateClaim.Visible = false; panelAbout.Visible = false; } else { panelMain.Visible = false; panelCheckClaim.Visible = true; panelAbout.Visible = false; } } } catch (Exception) { LoadingScreen(false); MessageBox.Show("Ой, что-то пошло не так ;(", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show($"Похоже что у вас уже есть принятые или новые заявки.\nЗавершите предыдущий займ, для того чтобы взять новый.", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); } }