public ResultDocumento SalvaDocumento(int idContratto, TipoContrattoEnum tipoContratto, string descrizione, int idFascicolo, DateTime? data, int? idFornitore, bool visibileCondomino) { try { Contratto contratto = null; switch (tipoContratto) { case TipoContrattoEnum.ContrattoAppalto: contratto = _daoFactory.GetContrattoAppaltoDao().GetById(idContratto, false); break; case TipoContrattoEnum.ContrattoAssicurativo: contratto = _daoFactory.GetAssicurazioneContrattoDao().GetById(idContratto, false); break; } if (contratto != null) { var documento = _fascicoloService.SaveDocument(idFascicolo, contratto.CondominioRiferimento.ID, descrizione, data, idFornitore, visibileCondomino); if(documento.Documento != null) documento.Documento.ContrattoRiferimento = contratto; return documento; } return new ResultDocumento { Documento = null, Message = "Il contratto non è valido."}; } catch (Exception ex) { _log.Fatal("Errore inaspettato durante il salvataggio di un documento relativo ad un contratto: " + Library.Utility.GetMethodDescription() + " - descrizione:" + descrizione + " - idContratto:" + idContratto, ex); throw; } }
public ResultDocumentoDTO SaveConArchiviazione(ContrattoDTO contratto, TipoContrattoEnum tipoContratto, string descrizione, FascicoloImmobiliareDTO tipoDocumento, DateTime? data, FornitoreDTO fornitore, bool visibileCondomino) { int? idFornitore = null; if (fornitore != null) idFornitore = fornitore.ID; var result = GetServiceClient().SetDocumentoConArchiviazione(contratto.ID, tipoContratto, descrizione, tipoDocumento.ID, data, idFornitore, visibileCondomino, GetUserInfo()); CloseService(); return result; }
public ResultDocumentoDTO SalvaDocumento(int idContratto, TipoContrattoEnum tipoContratto, string descrizione, int idFascicolo, DateTime? data, int? idFornitore, bool visibileCondomino) { var contrattoService = _windsorRepository.GetContainer(_info.Azienda).Resolve<IContrattoService>(); var result = contrattoService.SalvaDocumento(idContratto, tipoContratto, descrizione, idFascicolo, data, idFornitore, visibileCondomino); ResultDocumentoDTO item; if (result.Documento != null) { var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda); var impostazioni = daoFactory.GetImpostazioniAziendaDao().GetByAzienda(_info.Azienda); if (impostazioni == null) { impostazioni = new ImpostazioniAzienda(daoFactory.GetAziendaDao().GetById(_info.Azienda, false)); daoFactory.GetImpostazioniAziendaDao().SaveOrUpdate(impostazioni); } Contratto contratto = null; switch (tipoContratto) { case TipoContrattoEnum.ContrattoAppalto: contratto = daoFactory.GetContrattoAppaltoDao().GetById(idContratto, false); break; case TipoContrattoEnum.ContrattoAssicurativo: contratto = daoFactory.GetAssicurazioneContrattoDao().GetById(idContratto, false); break; } var stampaEtichette = impostazioni.UtilizzoEtichettatriceArchiviazioneOtticaContratti && contratto != null && contratto.CondominioRiferimento.IsAbilitataArchiviazioneOtticaContratti.GetValueOrDefault(); var tipoEtichetta = impostazioni.TipoEtichettaArchiviazioneOttica; var etichettatrice = impostazioni.EtichettatriceArchiviazioneOttica; var trayEtichettatriceAttivazioneOttica = impostazioni.TrayEtichettatriceAttivazioneOttica; item = new ResultDocumentoDTO(GetByDomainEntity(result.Documento), result.Message, stampaEtichette, etichettatrice, tipoEtichetta, trayEtichettatriceAttivazioneOttica); } else item = new ResultDocumentoDTO(null, result.Message, false, string.Empty, "Testo", null); return item; }
public ResultDocumentoDTO SetDocumentoConArchiviazione(int idContratto, TipoContrattoEnum tipoContratto, string descrizione, int idFascicolo, DateTime? data, int? idFornitore, bool visibileCondomino, UserInfo userinfo) { var windsorRep = new WindsorConfigRepository(); try { windsorRep.BeginTransaction(userinfo); var rep = new DocumentoRepository(userinfo, windsorRep); var item = rep.SalvaDocumento(idContratto, tipoContratto, descrizione, idFascicolo, data, idFornitore, visibileCondomino); windsorRep.Commit(); return item; } catch (InvalidDataException ex) { windsorRep.Rollback(); return new ResultDocumentoDTO(null, ex.Message, false, null, null, null); } catch (Exception ex) { _log.ErrorFormat("Errore durante il salvataggio del documento - ARCHIVIAZIONE - {0} - id:{1} - azienda:{2}", ex, Utility.GetMethodDescription(), idContratto, userinfo.Azienda); windsorRep.Rollback(); throw; } }