public string IsAllowPagamenti(IList<int> idScadenze, TipoBonificoEnum tipoBonifico) { var result = GetServiceClient().IsAllowPagamenti(new List<int>(idScadenze), tipoBonifico, GetUserInfo()); CloseService(); return result; }
public string IsAllowPagamenti(IList<int> idScadenze, TipoBonificoEnum tipoBonifico, UserInfo userinfo) { var windsorRep = new WindsorConfigRepository(); try { windsorRep.BeginTransaction(userinfo); var service = tipoBonifico != TipoBonificoEnum.Undefined ? windsorRep.GetContainer(userinfo.Azienda).Resolve<IPagamentoService>($"pagamentoService.{tipoBonifico}") : windsorRep.GetContainer(userinfo.Azienda).Resolve<IPagamentoService>(); var item = service.IsAllowPagamento(idScadenze); windsorRep.Commit(); return item; } catch (Exception ex) { _log.ErrorFormat("Errore nel controllo nel controllo di autorizzazione dai pagamenti - {0} - azienda:{1}", ex, Utility.GetMethodDescription(), userinfo.Azienda); windsorRep.Rollback(); throw; } }
public ResultPagamento CreatePagamenti(List<DisposizionePagamentoDTO> pagamenti, string descrizione, string folderPath, TipoBonificoEnum tipoBonifico, bool invio, string tipoConto, int? idModello, bool testataPerCondominio, bool mittenteCondominio) { try { var result = GetServiceClient().CreatePagamenti(pagamenti, descrizione, tipoBonifico, invio, tipoConto, idModello, testataPerCondominio, mittenteCondominio, GetUserInfo()); if (result.DocumentInfo.Body != null) { var documentInfo = result.DocumentInfo; if (!string.IsNullOrEmpty(folderPath)) { if (!string.IsNullOrEmpty(result.DocumentInfo.FileName)) documentInfo.FileName = $"{folderPath}/{result.DocumentInfo.FileName}{result.DocumentInfo.FileExtension}"; else { documentInfo.FileName = $"{folderPath}/Bonifico_{Guid.NewGuid()}.txt"; _log.ErrorFormat("Il nome del file non è presente - {0} - descrizione:{1} - tipoBonifico:{2} - folderPath:{3} - azienda:{4}", Utility.GetMethodDescription(), descrizione, tipoBonifico, folderPath, Login.Instance.CurrentLogin().Azienda); } } if (tipoBonifico == TipoBonificoEnum.CBI || tipoBonifico == TipoBonificoEnum.SEPA) _manageDocumentService.Save(documentInfo); else _manageDocumentService.Open(documentInfo, "Lettera Bonifico", false, MergeFieldType.Default); } return result; } catch (Exception ex) { var log = LogManager.GetLogger("Sfera"); log.ErrorFormat("Errore nella elaborazione dei pagamenti - {0} - descrizione:{1} - azienda:{2}", ex, Utility.GetMethodDescription(), descrizione, Login.Instance.CurrentLogin().Azienda); return new ResultPagamento {Message = ex.Message}; } }
public ResultPagamento CreatePagamenti(BindingList<DisposizionePagamentoDTO> pagamenti, string descrizione, TipoBonificoEnum tipoBonifico, bool invio, string tipoConto, int? idModello, bool testataPerCondominio, bool mittenteCondominio, UserInfo userinfo) { var retryCount = 5; var success = false; var windsorRep = new WindsorConfigRepository(); var item = new ResultPagamento(); while (retryCount >= 0 && !success) { try { windsorRep.BeginTransaction(userinfo); IPagamentoService pagamentoService = null; TipoPagamentoFatturaEnum tipo = TipoPagamentoFatturaEnum.Undefined; if (tipoBonifico == TipoBonificoEnum.CBI) { pagamentoService = windsorRep.GetContainer(userinfo.Azienda).Resolve<IPagamentoService>("pagamentoService.CBI"); tipo = TipoPagamentoFatturaEnum.CBI; tipoConto = "B"; invio = true; } else if (tipoBonifico == TipoBonificoEnum.SEPA) { pagamentoService = windsorRep.GetContainer(userinfo.Azienda).Resolve<IPagamentoService>("pagamentoService.SEPA"); tipo = TipoPagamentoFatturaEnum.SEPA; tipoConto = "B"; invio = true; } else if (tipoBonifico == TipoBonificoEnum.Manuale) { pagamentoService = windsorRep.GetContainer(userinfo.Azienda).Resolve<IPagamentoService>("pagamentoService.Manuale"); tipo = TipoPagamentoFatturaEnum.Manuale; } if (pagamentoService != null) { item = pagamentoService.CreatePagamenti(pagamenti, descrizione, tipo, invio, tipoConto, idModello, testataPerCondominio, mittenteCondominio, userinfo.Azienda); windsorRep.Commit(); } success = true; } catch (Exception ex) { _log.ErrorFormat("Errore nella creazione dei pagamenti - TENTATIVO:{0} - {1} - descrizione:{2} - azienda:{3}", ex, (6 - retryCount), Utility.GetMethodDescription(), descrizione, userinfo.Azienda + " - number:" + getExceptionId(ex), ex); windsorRep.Rollback(); if (!isRetryException(ex)) throw; // Add delay here if you wish. System.Threading.Thread.Sleep(1000 * (6 - retryCount)); retryCount--; _log.InfoFormat("Creazione dei pagamenti - INIZIO TENTATIVO:{0} - {1} - descrizione:{2} - azienda:{3}", (6 - retryCount), Utility.GetMethodDescription(), descrizione, userinfo.Azienda); } } if (!success) windsorRep.Rollback(); return item; }