Example #1
0
 public void SetStatoSpese(UserInfo userinfo)
 {
     var windsorRep = new WindsorConfigRepository();
     try
     {
         windsorRep.BeginTransaction(userinfo);
         var repo = new SpesaRepository(userinfo, windsorRep);
         repo.SetStatoSpese(userinfo.Azienda);
         windsorRep.Commit();
     }
     catch (Exception ex)
     {
         _log.ErrorFormat("Errore nel calcolo dello stato della spesa - {0} - azienda:{1}", ex, Utility.GetMethodDescription(), userinfo.Azienda);
         windsorRep.Rollback();
         throw;
     }
 }
Example #2
0
 public string SetDetrazione(int idSpesa, int? detrazione, UserInfo userinfo)
 {
     var windsorRep = new WindsorConfigRepository();
     try
     {
         windsorRep.BeginTransaction(userinfo);
         var repo = new SpesaRepository(userinfo, windsorRep);
         string item = repo.SetDetrazioneSpesa(idSpesa, detrazione);
         windsorRep.Commit();
         return item;
     }
     catch (Exception ex)
     {
         _log.ErrorFormat("Errore nell'annullamento della detrazione per la spesa - {0} - spesa:{1} - azienda:{2}", ex, Utility.GetMethodDescription(), idSpesa, userinfo.Azienda);
         windsorRep.Rollback();
         throw;
     }
 }
Example #3
0
		public SpesaInfoDTO SalvaSpesa(SpesaDTO spesa, IDictionary<DettaglioSpesaDTO, RipartizioneSpeseDTO> listaRipartizioni, bool isMultiIva, UserInfo userinfo)
		{
            var retryCount = 10;
            var success = false;
            var windsorRep = new WindsorConfigRepository();
            var item = new SpesaInfoDTO { Id = 0, Message = "Un altro utente ha confermato un movimento.", StampaEtichettaArchiviazione = false, IdentificativoArchiviazione = null, NumeroProtocollo = 0 };
            while (retryCount >= 0 && !success)
            {
                try
                {
                    windsorRep.BeginTransaction(userinfo);
                    var repo = new SpesaRepository(userinfo, windsorRep);
                    item = repo.Salva(spesa, listaRipartizioni, isMultiIva);
                    windsorRep.Commit();
                    success = true;
                }
                catch (InvalidDataException ex)
                {
                    windsorRep.Rollback();
                    return new SpesaInfoDTO {Message = ex.Message};
                }
                catch (Exception ex)
                {
                    windsorRep.Rollback();
                    if (!isRetryException(ex))
                    {
                        _log.ErrorFormat("Errore nel salvataggio della spesa - TENTATIVO:{0} - {1} - id:{2} - azienda:{3} - number:{4}", ex, (11 - retryCount), Utility.GetMethodDescription(), spesa.ID, userinfo.Azienda, getExceptionId(ex));
                        throw;
                    }

                    // Add delay here if you wish. 
                    System.Threading.Thread.Sleep(1000 * (11 - retryCount));
                    retryCount--;
                    _log.ErrorFormat("Salvataggio della spesa - INIZIO TENTATIVO:{0} - {1} - id:{2} - azienda:{3}", (11 - retryCount), Utility.GetMethodDescription(), spesa.ID, userinfo.Azienda);
                }
            }

            if (!success)
                windsorRep.Rollback();

            return item;
		}
Example #4
0
		public void SetSpesaRiferimento(int idSpesa, int idSpesaRiferimento, UserInfo userinfo)
		{
			var windsorRep = new WindsorConfigRepository();
			try
			{
				windsorRep.BeginTransaction(userinfo);
				var repo = new SpesaRepository(userinfo, windsorRep);
				repo.SetSpesaRiferimento(idSpesa, idSpesaRiferimento);
				windsorRep.Commit();
			}
			catch (Exception ex)
			{
                _log.ErrorFormat("Errore nel salvataggio della spesa di riferimento - {0} - spesa:{1} - azienda:{2}", ex, Utility.GetMethodDescription(), idSpesa, userinfo.Azienda);
				windsorRep.Rollback();
				throw;
			}
		}
Example #5
0
		public SpesaDTO GetSpesaByPagamento(int idPagamento, UserInfo userinfo)
		{
			var windsorRep = new WindsorConfigRepository();
			try
			{
				windsorRep.BeginTransaction(userinfo);
				var pagamentoService = windsorRep.GetContainer(userinfo.Azienda).Resolve<IPagamentoService>();
				var repo = new SpesaRepository(userinfo, windsorRep);
				var item = repo.GetByDomainEntity(pagamentoService.GetSpesaFromPagamento(idPagamento));
				windsorRep.Commit();
				return item;
			}
			catch (Exception ex)
			{

				_log.Error("Errore nella lettura della Spesa per pagamento - " + Utility.GetMethodDescription() + " - idPagamento:" + idPagamento, ex);
				windsorRep.Rollback();
				throw;
			}
		}
Example #6
0
		public int GetSpesaVersion(int id, UserInfo userinfo)
		{
			var windsorRep = new WindsorConfigRepository();
			try
			{
				windsorRep.BeginTransaction(userinfo);
				var repo = new SpesaRepository(userinfo, windsorRep);
				int item = repo.GetVersion(id);
				windsorRep.Commit();
				return item;
			}
			catch (Exception ex)
			{

				_log.Error("Errore nel recupero della VERSION della spesa - " + Utility.GetMethodDescription() + " - id:" + id, ex);
				windsorRep.Rollback();
				throw;
			}
		}
Example #7
0
 public AltriDatiSpesaDTO GetAltriDatiSpesaById(int id, UserInfo userinfo)
 {
     var windsorRep = new WindsorConfigRepository();
     try
     {
         windsorRep.BeginTransaction(userinfo);
         var repo = new SpesaRepository(userinfo, windsorRep);
         var item = repo.GetAltriDatiById(id);
         windsorRep.Commit();
         return item;
     }
     catch (Exception ex)
     {
         
         _log.Error("Errore nella lettura della Fattura/Spesa - " + Utility.GetMethodDescription() + " - id:" + id, ex);
         windsorRep.Rollback();
         throw;
     }
 }
Example #8
0
 public string UpdateAltriDatiSpesaById(AltriDatiSpesaDTO altriDati, UserInfo userinfo)
 {
     var windsorRep = new WindsorConfigRepository();
     try
     {
         windsorRep.BeginTransaction(userinfo);
         var repo = new SpesaRepository(userinfo, windsorRep);
         var item = repo.UpdateAltriDati(altriDati);
         windsorRep.Commit();
         return item;
     }
     catch (Exception ex)
     {
         
         _log.Error("Errore nell'aggiornamento degli altri dati di una spesa - " + Utility.GetMethodDescription() + " - id:" + altriDati.Id, ex);
         windsorRep.Rollback();
         throw;
     }
 }
Example #9
0
		public SpesaDTO GetSpesaById(int id, UserInfo userinfo)
		{
            var retryCount = 5;
            var success = false;
            var windsorRep = new WindsorConfigRepository();
            SpesaDTO item = null;
            while (retryCount >= 0 && !success)
            {
                try
                {
                    windsorRep.BeginTransaction(userinfo);
                    var repo = new SpesaRepository(userinfo, windsorRep);
                    item = repo.GetById(id);
                    windsorRep.Commit();
                    success = true;
                }
                catch (Exception ex)
                {
                    _log.ErrorFormat("Errore nella lettura della Fattura/Spesa - TENTATIVO:{0} - {1} - id:{2}", ex, (6 - retryCount), Utility.GetMethodDescription(), id);

                    windsorRep.Rollback();
                    if (!isRetryException(ex))
                        throw;

                    // Add delay here if you wish. 
                    System.Threading.Thread.Sleep(1000 * (6 - retryCount));
                    retryCount--;
                    _log.InfoFormat("Lettura delle spese - INIZIO TENTATIVO:{0} - {1} - id:{2} - azienda:{3}", ex, (6 - retryCount), Utility.GetMethodDescription(), id, userinfo.Azienda);
                }
            }

            if (!success)
                windsorRep.Rollback();

            return item;
		}
Example #10
0
		public SpesaDTO[] GetSpeseAperteByEsercizio(int idEsercizio, UserInfo userinfo)
		{
			var windsorRep = new WindsorConfigRepository();
			try
			{
				windsorRep.BeginTransaction(userinfo);
				var repo = new SpesaRepository(userinfo, windsorRep);
				SpesaDTO[] item = repo.GetAllAperteByEsercizio(idEsercizio);
				windsorRep.Commit();
			return item;
			}
			catch (Exception ex)
			{
				_log.ErrorFormat("Errore nella lettura delle spese aperte per esericizio - {0} - esercizio:{1}", ex, Utility.GetMethodDescription(), idEsercizio);
				windsorRep.Rollback();
				throw;
			}
		
		}
Example #11
0
        public List<SpesaDetrazioneDTO> GetSpeseByAnnoDetrazione(int idCondominio, int anno, int detrazione, UserInfo userinfo)
        {
            var retryCount = 5;
            var success = false;
            var windsorRep = new WindsorConfigRepository();
            List<SpesaDetrazioneDTO> item = null;
            while (retryCount >= 0 && !success)
            {
                try
                {
                    windsorRep.BeginTransaction(userinfo);
                    var repo = new SpesaRepository(userinfo, windsorRep);
                    item = repo.GetByAnnoDetrazione(idCondominio, anno, detrazione);
                    windsorRep.Commit();
                    success = true;
                }
                catch (Exception ex)
                {
                    _log.ErrorFormat("Errore nella lettura delle spese per anno e detrazione - TENTATIVO:{0} - {1} - condominio:{2} - anno:{3} - azienda:{4} - number:{5}", ex, (6 - retryCount), Utility.GetMethodDescription(), idCondominio, anno, userinfo.Azienda, getExceptionId(ex));
                    windsorRep.Rollback();
                    if (!isRetryException(ex))
                        throw;

                    // Add delay here if you wish. 
                    System.Threading.Thread.Sleep(1000 * (6 - retryCount));
                    retryCount--;
                    _log.InfoFormat("Lettura delle spese per anno e detrazionee - INIZIO TENTATIVO:{0} - {1} - condominio:{2} - anno:{3} - azienda:{12}", (6 - retryCount), Utility.GetMethodDescription(), idCondominio, anno, userinfo.Azienda);
                }
            }

            if (!success)
                windsorRep.Rollback();

            return item;
        }
Example #12
0
		public List<SpesaDTO> GetSpeseByFilter(SpesaFilter filter, UserInfo userinfo)
		{
            var retryCount = 5;
            var success = false;
            var windsorRep = new WindsorConfigRepository();
            List<SpesaDTO> item = null;
            while (retryCount >= 0 && !success)
            {
                try
                {
                    windsorRep.BeginTransaction(userinfo);
                    var repo = new SpesaRepository(userinfo, windsorRep);
                    item = repo.GetAllByFilter(filter);
                    windsorRep.Commit();
                    success = true;
                }
                catch (Exception ex)
                {
                    _log.ErrorFormat("Errore nella lettura delle spese - TENTATIVO:{0} - {1} - condominio:{2} - esercizio:{3} - fornitore:{4} - numero documento:{5} - data inizio:{6} - data fine:{7} - protocollo:{8} - importo inizio:{9} - importo fine:{10} - tipo documento:{11} - azienda:{12} - number:{13}", ex, (6 - retryCount), Utility.GetMethodDescription(), filter.CodiceCondominio, filter.CodiceEsercizio, filter.CodiceFornitore, filter.NumeroDocumento, filter.DataDocumentoInizio.GetValueOrDefault(), filter.DataDocumentoFine.GetValueOrDefault(), filter.Protocollo, filter.ImportoInizio.GetValueOrDefault(), filter.ImportoFine.GetValueOrDefault(), filter.TipoDocumento, userinfo.Azienda, getExceptionId(ex));
                    windsorRep.Rollback();
                    if (!isRetryException(ex))
                        throw;

                    // Add delay here if you wish. 
                    System.Threading.Thread.Sleep(1000 * (6 - retryCount));
                    retryCount--;
                    _log.InfoFormat("Lettura delle spese - INIZIO TENTATIVO:{0} - {1} - condominio:{2} - esercizio:{3} - fornitore:{4} - numero documento:{5} - data inizio:{6} - data fine:{7} - protocollo:{8} - importo inizio:{9} - importo fine:{10} - tipo documento:{11} - azienda:{12}", (6 - retryCount), Utility.GetMethodDescription(), filter.CodiceCondominio, filter.CodiceEsercizio, filter.CodiceFornitore, filter.NumeroDocumento, filter.DataDocumentoInizio.GetValueOrDefault(), filter.DataDocumentoFine.GetValueOrDefault(), filter.Protocollo, filter.ImportoInizio.GetValueOrDefault(), filter.ImportoFine.GetValueOrDefault(), filter.TipoDocumento, userinfo.Azienda);
                }
            }

            if (!success)
                windsorRep.Rollback();

            return item;
		}
Example #13
0
		public IList<SpesaDTO> GetSpeseDaArchiviareByAzienda(UserInfo userinfo, IList<int> idCondomini)
		{
			var windsorRep = new WindsorConfigRepository();
			try
			{
				windsorRep.BeginTransaction(userinfo);
				var rep = new SpesaRepository(userinfo, windsorRep);
                var item = rep.GetAllDaArchiviareByAzienda(userinfo.Azienda, idCondomini);
				windsorRep.Commit();
				return item;
			}
			catch (Exception ex)
			{
                _log.ErrorFormat("Errore inaspettato durante la lettura dei documenti da archiviare - {0} - azienda:{1} - condomini:{2}", ex, Utility.GetMethodDescription(), userinfo.Azienda, idCondomini.Aggregate(string.Empty, (current, id) => current + (id + ", ")));
                windsorRep.Rollback();
				throw;
			}
		}