public AnteprimaStampaSituazionePersona(CondominioDTO condominio, IList<SituazioneCondominoContabileDTO> datiSituazioneContabile, IList<PersonaContattoDTO> persone, SituazioneContabilePersonaReportParameters reportParameters)
        {
            InitializeComponent();
            inizializza();

            _datiSituazioneContabile = datiSituazioneContabile;
            _condominio = condominio;
            _persone = persone;
            _reportParameters = reportParameters;
        }
예제 #2
0
        private void btnConfermaClick(object sender, EventArgs e)
        {
            validationSummary1.Validate();

            if (validationSummary1.IsValid)
            {
                // ====================================================================
                // Descrizione del condominio
                // ====================================================================
                var righeCondominio = sceltaCondominioCombo1.CondominioSelected.IndirizzoCompleto.Split('&');
                var righeDaPubblicare = new string[4];

                if(righeCondominio.Length > 0)
                    righeDaPubblicare[0] = righeCondominio[0];
                for (var i = 1; i < 4; i++)
                {
                    if (righeCondominio.Length > i)
                    {
                        if (!string.IsNullOrEmpty(righeDaPubblicare[1]))
                            righeDaPubblicare[1] += " - ";
                        righeDaPubblicare[1] += righeCondominio[i];
                    }
                    if(i > 1)
                        righeDaPubblicare[i] = string.Empty;
                }

                // ====================================================================
                // Recupero l'intestazione dello studio
                // ====================================================================
                var azienda = getAziendaService().GetAzienda();
                var viaStudio = string.Empty;
                var capStudio = string.Empty;
                var localitaStudio = string.Empty;
                if (azienda.IndirizzoSede != null)
                {
                    viaStudio = azienda.IndirizzoSede.Indirizzo + " n. " + azienda.IndirizzoSede.Civico;
                    capStudio = azienda.IndirizzoSede.Cap;
                    localitaStudio = azienda.IndirizzoSede.DescrizioneComune + " " + azienda.IndirizzoSede.CodiceProvincia;

                    // Collasso diverse informazioni nel campo viaStudio
                    viaStudio += " - " + capStudio + " " + localitaStudio;
                }

                var intestazione = "Situazione Personale - Esercizio " + _esercizio.DisplayName;

                var reportParameters =
                    new SituazioneContabilePersonaReportParameters
                        (
                        righeDaPubblicare,
                        string.Empty,
                        intestazione,
                        viaStudio,
                        capStudio,
                        localitaStudio,
                        _condominio.DisplayName
                        );

                var condominiSelezionati = Windows.Forms.Library.InfragisticsHelperMethods.DataGridHelper.GetRigheSelezionate<PersonaContattoDTO>(listaPersone, true);
                var idCondomini = new List<int>(condominiSelezionati.Count);
                idCondomini.AddRange(condominiSelezionati.Select(item => item.ID));

                var form = new ExecuteLoadDataObjectAsync<ResultSituazioneCondominoContabileDTO>("E' in corso il caricamento dei dati ....." + Environment.NewLine + "Si prega di attendere.");
                Func<ResultSituazioneCondominoContabileDTO> loadDati = () => getBilancioService().GetSituazioneContabileCondomino(_esercizio, idCondomini, spesePersonali.Checked);
                form.LoadData(loadDati);
                form.ShowDialog();

                if (form.DataSourceObject.SituazioneContabile != null)
                {
                    IList<SituazioneCondominoContabileDTO> datiSituazioneContabile = form.DataSourceObject.SituazioneContabile;
                    var anteprima = new AnteprimaStampaSituazionePersona(_condominio, datiSituazioneContabile, condominiSelezionati, reportParameters);
                    anteprima.ShowDialog();
                    anteprima.Dispose();
                }

                if (!string.IsNullOrEmpty(form.DataSourceObject.FatalMessage))
                    CommonMessages.DisplayWarning($"Si sono verificati dei problemi nel calcolo della situazione contabile del condomino:{Environment.NewLine}{form.DataSourceObject.FatalMessage}");

                form.Dispose();

            }
            else
                validationSummary1.ShowErrorSummary();
        }