Example #1
0
        public AnteprimaStampaLettera(List<ReportPagamentoDTO> datiPagamento, LetteraBonificoReportParameters reportParameters)
        {
            InitializeComponent();
            inizializza();

            _datiPagamento = datiPagamento;
            _reportParameters = reportParameters;
        }
        private void btnFineClick(object sender, EventArgs e)
        {
            // Pagamento CBI
            if (_pagamentoCbi)
            {
                validationSummary1.Validate();

                if (validationSummary1.IsValid)
                {
                    var righeSelezionate = getRigheSelezionate();
                    var idCondomini = righeSelezionate.Select(item => item.IdCondominio).ToList();
                    var messageDataList = getMovimentoContabileService().IsAllowDataRegistrazione(idCondomini, null, DateTime.Today);

                    if (messageDataList.Count == 0)
                    {
                        var mittenteCondominio = mittente.Value.ToString() == "C";
                        var result = getPagamentoFatturaService().CreatePagamenti(righeSelezionate, descrizioneDisposizione.Text, directoryFileCbi.Text, getTipoBonifico(), stampaLettera.Checked, null, null, testataPerCondominio.Checked, mittenteCondominio);
                        if (string.IsNullOrEmpty(result.Message))
                        {
                            CommonMessages.DisplayComplete("I pagamenti sono stati correttamente eseguiti.");
                            btnFine.Visible = false;
                            disposizionePagamentoUILoad(this, EventArgs.Empty);
                            wizardDisposizionePagamento.Tabs[getConfermaTabKey()].Enabled = false;
                            wizardDisposizionePagamento.Tabs["scadenze"].Enabled = true;
                            wizardDisposizionePagamento.SelectedTab = wizardDisposizionePagamento.Tabs["scadenze"];
                        }
                        else
                            CommonMessages.DisplayWarning($"I pagamenti NON sono stati creati regolarmente:{Environment.NewLine}{result.Message}");
                    }
                    else
                    {
                        var messageData = $"La data di registrazione{DateTime.Today:d} non รจ ammessa:{Environment.NewLine}";
                        messageData = messageDataList.Aggregate(messageData, (current, mess) => current + (mess + Environment.NewLine));
                        CommonMessages.DisplayWarning(messageData);
                    }
                }
                else
                    validationSummary1.ShowErrorSummary();
            }
            // Pagamento Manuale
            else
            {
                validationSummary1.Validators.Add(customValidatorDataPagamento);
                validationSummary1.Validators.Add(sottocontoValidator);
                if (contoPatrimoniale.Value.ToString() == "B")
                    validationSummary1.Validators.Add(modelliLetteraValidator);
                validationSummary1.Validate();

                if (validationSummary1.IsValid)
                {
                    var pagamenti = getRigheSelezionate();
                    if (groupDatiPagamento.Visible)
                        pagamenti = (List<DisposizionePagamentoDTO>)assegniBindingSource.DataSource;

                    var result = getPagamentoFatturaService().CreatePagamenti(pagamenti, descrizioneDisposizione.Text, null, getTipoBonifico(), stampaLettera.Checked, contoPatrimoniale.Value.ToString(), (int?)modelliLettera.Value, testataPerCondominio.Checked, true);
                    if (string.IsNullOrEmpty(result.Message))
                    {
                        CommonMessages.DisplayComplete("I pagamenti sono stati correttamente eseguiti.");
                        if(stampaLettera.Checked)
                        {
                            var modelloLettera = (ModelloLetteraTestoDTO) modelliLettera.SelectedItem.ListObject;
                            var parameters = new LetteraBonificoReportParameters
                            {
                                DataPagamento = DateTime.Today,
                                OggettoLettera = modelloLettera.Oggetto
                            };
                            var anteprima = new AnteprimaStampaLettera(result.Pagamenti, parameters);
                            anteprima.ShowDialog();
                            anteprima.Dispose();
                        }
                    }
                    else
                        CommonMessages.DisplayWarning($"I pagamenti NON sono stati creati regolarmente:{Environment.NewLine}{result.Message}");

                    Reload();
                    descrizioneBonificoManuale.Text = string.Empty;
                    btnFine.Visible = false;
                    btnErrori.Visible = false;
                    wizardDisposizionePagamento.Tabs[getConfermaTabKey()].Enabled = false;
                    wizardDisposizionePagamento.Tabs["scadenze"].Enabled = true;
                    wizardDisposizionePagamento.SelectedTab = wizardDisposizionePagamento.Tabs["scadenze"];
                    wizardDisposizionePagamento.ActiveTab = wizardDisposizionePagamento.Tabs["scadenze"];
                    _avanzamento = AvanzamentoWizard.SceltaScadenze;
                }
                else
                    validationSummary1.ShowErrorSummary();

                validationSummary1.Validators.Remove(customValidatorDataPagamento);
                validationSummary1.Validators.Remove(sottocontoValidator);
                validationSummary1.Validators.Remove(modelliLetteraValidator);
            }
        }