// Обработка налогов, составление строки private string TaxHandlerStringPreparation() { string taxesString = ""; if (checkBoxTransportTax.Checked) // Транспортный налог { taxesString += checkBoxTransportTax.Text; // указываем налог taxesString += " за " + comboBoxTransportTaxYear.Text + " год"; // добавляем год taxesString += " в сумме " + HandlerTextControls.IntInRubAndCop(numericUpDownTransportTax.Value); // сумму налога переводим в 0 руб. 0 коп taxesString += ", пени в сумме " + HandlerTextControls.IntInRubAndCop(numericUpDownTransportTaxFine.Value) + ", "; // сумму пени переводим в 0 руб. 0 коп } if (checkBoxLandTax.Checked) // Транспортный налог { taxesString += checkBoxLandTax.Text; // указываем налог taxesString += " за " + comboBoxLandTaxYear.Text + " год"; // добавляем год taxesString += " в сумме " + HandlerTextControls.IntInRubAndCop(numericUpDownLandTax.Value); // сумму налога переводим в 0 руб. 0 коп taxesString += ", пени в сумме " + HandlerTextControls.IntInRubAndCop(numericUpDownLandTaxFine.Value) + ", "; // сумму пени переводим в 0 руб. 0 коп } if (checkBoxPropertyTax.Checked) // Транспортный налог { taxesString += checkBoxPropertyTax.Text; // указываем налог taxesString += " за " + comboBoxPropertyTaxYear.Text + " год"; // добавляем год taxesString += " в сумме " + HandlerTextControls.IntInRubAndCop(numericUpDownPropertyTax.Value); // сумму налога переводим в 0 руб. 0 коп taxesString += ", пени в сумме " + HandlerTextControls.IntInRubAndCop(numericUpDownPropertyTaxFine.Value) + ", "; // сумму пени переводим в 0 руб. 0 коп } return(taxesString); }
// Подсчет суммы всех налогов private string SumAllTaxes(out decimal taxesSum) { taxesSum = 0m; // Сумма всех налогов try { if (checkBoxTransportTax.Checked) { taxesSum += numericUpDownTransportTax.Value + numericUpDownTransportTaxFine.Value; } if (checkBoxLandTax.Checked) { taxesSum += numericUpDownLandTax.Value + numericUpDownLandTaxFine.Value; } if (checkBoxPropertyTax.Checked) { taxesSum += numericUpDownPropertyTax.Value + numericUpDownPropertyTaxFine.Value; } } catch { throw new Exception("Все поля с цифрами задолженности и пени должны быть заполнены хотя бы нулем"); } string taxesSumToString = HandlerTextControls.IntInRubAndCop(taxesSum); // сумму налога переводим в 0 руб. 0 коп taxesSumToString = "всего " + taxesSumToString; return(taxesSumToString); }
/// <summary> /// Заполняет автоматически дату вынесения решения /// </summary> public static void SetDateOfOrderDay(ref ComboBox Month, ref ComboBox Year) { DateTime dateTimeNow = DateTime.Now; string month = HandlerTextControls.MonthInString(dateTimeNow.Month); // месяц string year = dateTimeNow.Year.ToString(); // год Month.Text = month; Year.Text = year; }
/// <summary> /// Заполнение поля text контролов, имеющихся на всех (формах для генерирования word) /// </summary> /// <param name="nameForm">Имя формы совпадающее с названием класса</param> /// <param name="comboBoxLoad">Комбобокс с вариантами загрузки, как правило называется comboBoxLoad</param> /// <param name="comboBoxDateOfOrderMonth">месяц вынесения постановления, как правило называется comboBoxDateOfOrderMonth</param> /// <param name="comboBoxDateOfOrderYear">год вынесения постановления, как правило называется comboBoxDateOfOrderYear</param> public static void SetStandartParamsInControls (string nameForm, ref ComboBox comboBoxLoad, ref ComboBox comboBoxDateOfOrderMonth, ref ComboBox comboBoxDateOfOrderYear) { // заполнение вариантами сохранений SaveLoadForm.SetVariantsSaveInComboBox(nameForm, ref comboBoxLoad); // Заполнение даты вынесения решения текущими датами DateTime dateTimeNow = DateTime.Now; string month = HandlerTextControls.MonthInString(dateTimeNow.Month); // месяц string year = dateTimeNow.Year.ToString(); // год comboBoxDateOfOrderMonth.Text = month; comboBoxDateOfOrderYear.Text = year; }
// Считаем госпошлину, где taxesSum - сумма всех прочих налогов private string CountStateFee(decimal taxesSum) { decimal duty = 0m; string dutyToString = ""; if (taxesSum <= 20000) { duty = taxesSum / 100 * 2; if (duty < 200) { duty = 200; } } else if (taxesSum > 20000 && taxesSum <= 100000) { duty = (800 + (taxesSum - 20000) / 100 * 3) / 2; } else if (taxesSum > 100000 && taxesSum <= 200000) { duty = (3200 + (taxesSum - 100000) / 100 * 2) / 2; } else if (taxesSum > 200000 && taxesSum <= 1000000) { duty = (5200 + (taxesSum - 200000) / 100) / 2; } else if (taxesSum > 1000000) { duty = (13200 + (taxesSum - 1000000) / 100 / 2) / 2; if (duty > 60000) { duty = 60000; } } else { throw new Exception("Все поля с цифрами задолженности и пени должны быть заполнены хотя бы нулем"); } dutyToString = HandlerTextControls.IntInRubAndCop(Math.Round(duty, 2)); // сумму пошлины переводим в 0 руб. 0 коп return(dutyToString); }
// СГЕНЕРИРОВАТЬ WORD private void button1_Click(object sender, EventArgs e) { // Сделать стандратный массив значений полей для ввода с формы с ключами для autoit скрипта генерирующего word List <ValueControl> controlArrayToString = GeneratorWord.StandartListValueControl(Controls); // Изменение суммы госпошлины по принципу 0 руб. 0 коп. string Duty = HandlerTextControls.IntInRubAndCop(numericUpDownDuty.Value); if (Duty == null) { return; } GeneratorWord.AddValueControl(ref controlArrayToString, Duty, "#-1"); // в ручную добавляем новый ключ // Вставляем название в буфер обмена FormController.ClipPutNameWord(textBoxClipPutNum.Text, textBoxClipPutName.Text, this.Text); FormController.GenerateWord(controlArrayToString, "Возврат госпошлины"); }
/// <summary> Логика конкретно данной формы </summary> private List <ValueControl> LogicForm(List <ValueControl> controlArrayToString) { GeneratorWord.AddValueControl(ref controlArrayToString, FindFullDetailsCommunal(), "#-1"); GeneratorWord.AddValueControl(ref controlArrayToString, DebtorOrDebtord(), "#-2"); GeneratorWord.AddValueControl(ref controlArrayToString, SeverallyOrNot(), "#-3"); GeneratorWord.AddValueControl(ref controlArrayToString, FillingSecondDate(), "#-4"); GeneratorWord.AddValueControl(ref controlArrayToString, FromWhomCollectDebt(), "#-5"); GeneratorWord.AddValueControl(ref controlArrayToString, FromWhomCollectDebtFullDetails(), "#-6"); // В сумме руб коп string Summ = HandlerTextControls.IntInRubAndCop(numericUpDownCredit.Value); if (Summ == null) { throw new Exception("Некорректная сумма"); } GeneratorWord.AddValueControl(ref controlArrayToString, Summ, "#-7"); // в ручную добавляем новый ключ // Пени руб коп string Duty = HandlerTextControls.IntInRubAndCop(numericUpDownCreditFine.Value); if (Duty == null) { throw new Exception("Некорректное пени"); } GeneratorWord.AddValueControl(ref controlArrayToString, Duty, "#-8"); // в ручную добавляем новый ключ // Всего руб коп decimal summToPay = numericUpDownCredit.Value + numericUpDownCreditFine.Value; // сумма к оплате string ToPay = HandlerTextControls.IntInRubAndCop(summToPay); GeneratorWord.AddValueControl(ref controlArrayToString, ToPay, "#-9"); // в ручную добавляем новый ключ return(controlArrayToString); }
// СГЕНЕРИРОВАТЬ WORD private void button1_Click(object sender, EventArgs e) { // Сделать стандратный массив значений полей для ввода с формы с ключами для autoit скрипта генерирующего word List <ValueControl> controlArrayToString = GeneratorWord.StandartListValueControl(Controls); // Заполняем полные реквизиты банка string bankRequisites = FormController.GetBank(comboBoxBank.Text); // находим полные реквизиты банка if (bankRequisites == null) // банк не опознан { MessageBox.Show("Реквизиты банка не опознаны, после герации не забудьте их вписать"); bankRequisites = ""; } GeneratorWord.AddValueControl(ref controlArrayToString, bankRequisites, "#-1"); // в ручную добавляем новый ключ // Заполнение второй даты, выделено отдельно т.к. иначе в word-е будут лишние точки string dateTwo = ""; // дата вторая if (comboBoxPeriodTwoDay.Text != "" && comboBoxPeriodTwoDay.Text != null) { dateTwo = comboBoxPeriodTwoDay.Text + "." + comboBoxPeriodTwoMonth.Text + "." + comboBoxPeriodTwoYear.Text; dateTwo = " по " + dateTwo + " года"; } GeneratorWord.AddValueControl(ref controlArrayToString, dateTwo, "#-2"); // в ручную добавляем новый ключ // Изменение суммы задолженности по принципу 0 руб. 0 коп. string Debt = HandlerTextControls.IntInRubAndCop(numericUpDownCredit.Value); if (Debt == null) { return; } GeneratorWord.AddValueControl(ref controlArrayToString, Debt, "#-3"); // в ручную добавляем новый ключ // Изменение суммы государственной пошлины по принципу 0 руб. 0 коп. string Duty = HandlerTextControls.IntInRubAndCop(numericUpDownCreditFine.Value); if (Duty == null) { return; } GeneratorWord.AddValueControl(ref controlArrayToString, Duty, "#-4"); // в ручную добавляем новый ключ // Суммирование взыскиваемой суммы decimal summToPay = numericUpDownCredit.Value + numericUpDownCreditFine.Value; // сумма к оплате string ToPay = HandlerTextControls.IntInRubAndCop(summToPay); GeneratorWord.AddValueControl(ref controlArrayToString, ToPay, "#-5"); // в ручную добавляем новый ключ // Вставляем название в буфер обмена FormController.ClipPutNameWord(textBoxClipPutNum.Text, textBoxClipPutName.Text, this.Text); FormController.GenerateWord(controlArrayToString, "Приказ по банку или фин орг"); }