public void ManageRichiestaCodiceFiscale(int idCondominio, DateTime dataRichiesta, int? idReferente, int? idRappresentante, string codiceFiscale, TipoRichiestaEnum tipoRichiesta, DateTime? dataVariazioneDati, string allegati) { byte[] data = GetServiceClient().CreateModuloRichiestaCodiceFiscale(idCondominio, dataRichiesta, idReferente, idRappresentante, codiceFiscale, tipoRichiesta, dataVariazioneDati, allegati, GetUserInfo()); var docInfo = new DocumentInfo {Body = data, FileName = "_ModuloAA5.pdf"}; _manageDocumentService.Open(docInfo, "Modello richiesta Codice Fiscale", false, MergeFieldType.Default); CloseService(); }
private bool loadModulo(int idCondominio, DateTime dataRichiesta, int? idReferente, int idRappresentante, string codiceFiscale, TipoRichiestaEnum tipo, DateTime? dataVariazioneDatiCondominio) { getCompilazioneModuloService().ManageRichiestaCodiceFiscale(idCondominio, dataRichiesta, idReferente, idRappresentante, codiceFiscale, tipo, dataVariazioneDatiCondominio, allegati.Text); return true; }
public byte[] GetModulo(int idCondominio, DateTime dataRichiesta, int? idReferente, int? idRappresentante, string codiceFiscale, TipoRichiestaEnum tipoRichiesta, DateTime? dataVariazioneDati, string allegati) { try { var condominio = _daoFactory.GetCondominioDao().Find(idCondominio, false); if (condominio != null) { if (condominio.Azienda != null && condominio.Azienda.Amministratore != null && condominio.Azienda.Amministratore.PersonaRiferimento != null && condominio.Indirizzo != null && !string.IsNullOrEmpty(condominio.Indirizzo.Civico) && condominio.Indirizzo.Comune != null && condominio.Azienda.IndirizzoSede != null) { var attribuzioneCodice = string.Empty; var variazioneCodice = string.Empty; var codiceFiscaleCondominio = string.Empty; var dataVariazioneDatiCondominio = string.Empty; if (dataVariazioneDati != null) dataVariazioneDatiCondominio = dataVariazioneDati.GetValueOrDefault().ToShortDateString().Replace("/", string.Empty); if (tipoRichiesta == TipoRichiestaEnum.Nuovo) attribuzioneCodice = "1"; else if (tipoRichiesta == TipoRichiestaEnum.Variazione) { variazioneCodice = "1"; codiceFiscaleCondominio = codiceFiscale; } var allegati1 = string.Empty; var allegati2 = string.Empty; var allegati3 = string.Empty; var allegati4 = string.Empty; if (!string.IsNullOrEmpty(allegati)) { if (allegati.Length <= 60) allegati1 = allegati; else if (allegati.Length > 60 && allegati.Length <= 120) { allegati1 = allegati.Substring(0, 60); allegati2 = allegati.Substring(61); } else if (allegati.Length > 120 && allegati.Length <= 180) { allegati1 = allegati.Substring(0, 60); allegati2 = allegati.Substring(61, 60); allegati3 = allegati.Substring(121); } else if (allegati.Length > 180 && allegati.Length <= 240) { allegati1 = allegati.Substring(0, 60); allegati2 = allegati.Substring(61, 60); allegati3 = allegati.Substring(121, 60); allegati4 = allegati.Substring(181); } else if (allegati.Length > 240) { allegati1 = allegati.Substring(0, 60); allegati2 = allegati.Substring(61, 60); allegati3 = allegati.Substring(121, 60); allegati4 = allegati.Substring(181, 60); } } var datiRichiesta = new RichiestaCodiceFiscaleDTO { PrimaPagina = "01", SecondaPagina = "02", CodiceFiscaleCondominio = codiceFiscaleCondominio, DataVariazioneDati = dataVariazioneDatiCondominio, DataCompilazione = dataRichiesta.ToShortDateString(), NomeAmm = string.Empty, CognomeAmm = condominio.Azienda.Descrizione.ToUpper(), FlagAttribuzioneCodiceFiscale = attribuzioneCodice, FlagVariazioneDati = variazioneCodice, DenominazioneCondominio = condominio.Descrizione.ToUpper(), CodiceFiscaleAzienda = condominio.Azienda.CodiceFiscale, NaturaGiuridica = "51", CodiceCarica = "13", CodiceAttivita = "960909", Allegato1 = allegati1, Allegato2 = allegati2, Allegato3 = allegati3, Allegato4 = allegati4 }; if (tipoRichiesta == TipoRichiestaEnum.Nuovo) { datiRichiesta.DataCostituzione = datiRichiesta.DataVariazioneDati; datiRichiesta.DataVariazioneDati = string.Empty; } // ========================================================= // Dati condominio // ========================================================= if (condominio.Indirizzo != null) { datiRichiesta.CapCondominio = condominio.Indirizzo.Cap; datiRichiesta.CivicoCondominio = condominio.Indirizzo.Civico; datiRichiesta.IndirizzoCondominio = string.Format("{0} {1}", condominio.Indirizzo.Indirizzo.ToUpper(), condominio.Indirizzo.Civico); if (condominio.Indirizzo.Comune != null) { datiRichiesta.ComuneCondominio = condominio.Indirizzo.Comune.Descrizione.ToUpper(); datiRichiesta.ProvinciaCondominio = condominio.Indirizzo.Comune.ProvinciaAppartenenza.Codice.ToUpper(); } } // ========================================================= // Dati studio // ========================================================= if (condominio.Azienda.IndirizzoSede != null) { datiRichiesta.CapAzienda = condominio.Azienda.IndirizzoSede.Cap; datiRichiesta.CivicoAzienda = condominio.Azienda.IndirizzoSede.Civico.ToUpper(); datiRichiesta.IndirizzoAzienda = string.Format("{0} {1}", condominio.Azienda.IndirizzoSede.Indirizzo.ToUpper(), condominio.Azienda.IndirizzoSede.Civico.ToUpper()); if (condominio.Azienda.IndirizzoSede.Comune != null) { datiRichiesta.ComuneAzienda = condominio.Azienda.IndirizzoSede.Comune.Descrizione.ToUpper(); datiRichiesta.ProvinciaAzienda = condominio.Azienda.IndirizzoSede.Comune.ProvinciaAppartenenza.Codice.ToUpper(); } } // ========================================================= // Dati amministratore // ========================================================= Referente amministratore = null; if (idRappresentante != null) amministratore = _daoFactory.GetReferenteDao().Find(idRappresentante.GetValueOrDefault(), false); if (amministratore == null) amministratore = condominio.Azienda.Amministratore; if (amministratore != null && amministratore.PersonaRiferimento != null) { datiRichiesta.CodiceFiscaleAmm = amministratore.PersonaRiferimento.CodiceFiscale; if (!string.IsNullOrEmpty(amministratore.PersonaRiferimento.Nome)) datiRichiesta.NomeAmm = amministratore.PersonaRiferimento.Nome.ToUpper(); if (!string.IsNullOrEmpty(amministratore.PersonaRiferimento.Cognome)) datiRichiesta.CognomeAmm = amministratore.PersonaRiferimento.Cognome.ToUpper(); if (amministratore.PersonaRiferimento.Sesso != null && amministratore.PersonaRiferimento.Sesso.Value != SessoEnum.Undefined) datiRichiesta.SessoAmm = amministratore.PersonaRiferimento.Sesso.ToString().ToUpper().Substring(0, 1); if (amministratore.PersonaRiferimento.ComuneNascita != null) { datiRichiesta.ComuneNascitaAmministratore = amministratore.PersonaRiferimento.ComuneNascita.Descrizione; datiRichiesta.ProvinciaNascitaAmministratore = amministratore.PersonaRiferimento.ComuneNascita.ProvinciaAppartenenza.Codice; } if (amministratore.PersonaRiferimento.DataNascita != null) datiRichiesta.DataNascitaAmministratore = amministratore.PersonaRiferimento.DataNascita.Value.ToShortDateString().Replace("/", string.Empty); } // ========================================================= // Dati delegato // ========================================================= if (idReferente != null) { var delegato = _daoFactory.GetReferenteDao().Find(idReferente.Value, false); if (delegato != null && delegato.PersonaRiferimento != null) { datiRichiesta.NomeCompletoDelegato = delegato.DisplayName; if (delegato.PersonaRiferimento.DataNascita != null) datiRichiesta.DataNascitaDelegato = delegato.PersonaRiferimento.DataNascita.GetValueOrDefault().ToShortDateString(); if (delegato.PersonaRiferimento.ComuneNascita != null) datiRichiesta.ComuneNascitaDelegato = delegato.PersonaRiferimento.ComuneNascita.Descrizione; datiRichiesta.NomeCompletoDelegante = condominio.Azienda.Amministratore.DisplayName; datiRichiesta.DataDelega = datiRichiesta.DataCompilazione; } } var newFile = FillForm.Fill(datiRichiesta, CompilazioneModuliResources.ModelloA5, CompilazioneModuliResources.RichiestaCodiceFiscale_FieldMapping); var infile = new FileStream(newFile, FileMode.Open, FileAccess.Read, FileShare.Read); var buffer = new byte[infile.Length]; infile.Read(buffer, 0, buffer.Length); return buffer; } } return null; } catch (Exception ex) { _log.ErrorFormat("Errore inaspettato durante la compilazione del modulo per richiesta del codice fiscale - {0} - condominio:{1} - referente:{2} - dataRichiesta:{3} - tipoRichiesta:{4}", ex, Library.Utility.GetMethodDescription(), idCondominio, idReferente.GetValueOrDefault(), dataRichiesta, tipoRichiesta.ToString()); throw; } }
public byte[] CreateModuloRichiestaCodiceFiscale(int idCondominio, DateTime dataRichiesta, int? idReferente, int? idRappresentante, string codiceFiscale, TipoRichiestaEnum tipoRichiesta, DateTime? dataVariazioneDati, string allegati, UserInfo userinfo) { var windsorRep = new WindsorConfigRepository(); try { windsorRep.BeginTransaction(userinfo); var service = windsorRep.GetContainer(userinfo.Azienda).Resolve<IRichiestaCodiceFiscaleService>(); var item = service.GetModulo(idCondominio, dataRichiesta, idReferente, idRappresentante, codiceFiscale, tipoRichiesta, dataVariazioneDati, allegati); windsorRep.Commit(); return item; } catch (Exception ex) { _log.ErrorFormat("Errore nella creazione dei moduli per codice fiscale - {0} - azienda:{1}", ex, Utility.GetMethodDescription(), userinfo.Azienda); windsorRep.Rollback(); throw; } }