Ejemplo n.º 1
0
        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;
            }
        }
Ejemplo n.º 2
0
 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;
 }
Ejemplo n.º 3
0
        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;
        }
Ejemplo n.º 4
0
        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;
			}
		}