private void setDatiBancari(CabDTO cabDto) { abi.Value = cabDto.Abi; cab.Value = cabDto.Cab; descrizioneAbi.Text = cabDto.DescrizioneAbi; descrizioneCab.Text = cabDto.DescrizioneCab; Fornitore.PersonaRiferimento.Abi = cabDto.Abi; Fornitore.PersonaRiferimento.Cab = cabDto.Cab; var coord = new CoordinateBancarie {Abi = cabDto.Abi, Cab = cabDto.Cab, ContoCorrente = contoCorrente.Text}; iban.Text = coord.CalcolaIBAN(); Fornitore.PersonaRiferimento.Iban = iban.Text; cin.Text = coord.CalcolaCin(); Fornitore.PersonaRiferimento.Cin = cin.Text; }
private void contoCorrenteLeave(object sender, EventArgs e) { if (abi.Value != null && cab.Value != null && contoCorrente.Value != null) { iban.Leave -= ibanLeave; var coord = new CoordinateBancarie { Abi = abi.Value.ToString(), Cab = cab.Value.ToString(), ContoCorrente = contoCorrente.Value.ToString() }; if (contoCorrente.Value.ToString().Length < 12) Fornitore.PersonaRiferimento.ContoCorrente = coord.NormalizzaContoCorrente(contoCorrente.Value.ToString()); Fornitore.PersonaRiferimento.Cin = coord.CalcolaCin(); Fornitore.PersonaRiferimento.Iban = coord.CalcolaIBAN(); iban.Leave += ibanLeave; } }
private bool insert(DatiBancariDTO dto, out DatiBancariCondomini item) { var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda); bool result; try { var abiCab = daoFactory.GetAbiCabDao().GetByAbiCab(dto.Abi, dto.Cab); if (abiCab != null) { item = new DatiBancariCondomini(dto.Iban, daoFactory.GetCondominioDao().GetById(dto.IdCondominio, false)) { Abi = dto.Abi, Cab = dto.Cab, Cin = dto.Cin, ContoCorrente = dto.ContoCorrente.Truncate(50), DataValidita = dto.DataValidita, Iban = dto.Iban.Truncate(27), Note = dto.Note.Truncate(50), Principale = dto.Principale }; if (string.IsNullOrEmpty(item.Iban) && !string.IsNullOrEmpty(item.Abi) && !string.IsNullOrEmpty(item.Cab) && !string.IsNullOrEmpty(item.ContoCorrente)) { var coord = new CoordinateBancarie(); try { coord.Abi = item.Abi; coord.Cab = item.Cab; coord.ContoCorrente = item.ContoCorrente; item.Iban = coord.CalcolaIBAN(); item.ContoCorrente = coord.ContoCorrente; } catch (Exception ex) { _log.WarnFormat("Errore inaspettato nel calcolo dell'IBAN - {0} - id:{1} - abi:{2} - cab:{3} - c/c:{4}", ex, Utility.GetMethodDescription(), dto.ID, dto.Abi, dto.Cab, dto.ContoCorrente); } if (string.IsNullOrEmpty(item.Cin)) { try { item.Cin = coord.CalcolaCin(); } catch (Exception ex) { _log.WarnFormat("Errore inaspettato nel calcolo del CIN - {0} - id:{1} - abi:{2} - cab:{3} - c/c:{4}", ex, Utility.GetMethodDescription(), dto.ID, dto.Abi, dto.Cab, dto.ContoCorrente); } } } daoFactory.GetDatiBancariCondominiDao().SaveOrUpdate(item); // Aggiungo ABI e CAB tra i preferiti try { if (item.CondominioRiferimento != null && item.CondominioRiferimento.Azienda != null) { var abicabPref = daoFactory.GetAbiCabPreferitoDao().GetByAbiCab(item.Abi, item.Cab, item.CondominioRiferimento.Azienda.ID); if (abicabPref == null) { var abicab = daoFactory.GetAbiCabDao().Find(new AbiCabId(item.Abi, item.Cab), false); if (abicab != null) { abicabPref = new AbiCabPreferito(abicab, item.CondominioRiferimento.Azienda); daoFactory.GetAbiCabPreferitoDao().SaveOrUpdate(abicabPref); } } } } catch (Exception ex) { _log.WarnFormat("Errore nell'inserimento di ABI e CAB preferito - {0} - id:{1} - abi:{2} - cab:{3} - c/c:{4}", ex, Utility.GetMethodDescription(), dto.ID, dto.Abi, dto.Cab, dto.ContoCorrente); } } else { _log.ErrorFormat("Non trovato ABI CAB - {0} - abi:{1} - cab:{2}", Utility.GetMethodDescription(), dto.Abi, dto.Cab); item = null; return false; } result = true; } catch (Exception ex) { _log.ErrorFormat("Errore nell'inserimento dei dati bancari - {0} - id:{1} - abi:{2} - cab:{3} - c/c:{4}", ex, Utility.GetMethodDescription(), dto.ID, dto.Abi, dto.Cab, dto.ContoCorrente); throw; } return result; }
private void listaBancheAfterCellUpdate(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e) { if (getAbiCabService().IsValidableIBAN()) { var datiBancariDTO = (DatiBancariDTO)e.Cell.Row.ListObject; if (datiBancariDTO != null) { // ---------------------------------------------------------- // Decodifica ABI // ---------------------------------------------------------- if (e.Cell.Value != null && e.Cell.Column.Key == "DescrizioneAbi") { if (Utility.IsInteger(e.Cell.Value.ToString())) { string abi = e.Cell.Value.ToString().PadLeft(5, '0'); if (!string.IsNullOrEmpty(abi)) { var abiDTO = getAbiCabService().GetAbiByCodice(abi); if (abiDTO != null) { datiBancariDTO.Abi = abi; datiBancariDTO.DescrizioneAbi = abiDTO.Codice + " - " + abiDTO.Descrizione; } if (!string.IsNullOrEmpty(datiBancariDTO.Cab)) { var cabDTO = getAbiCabService().GetCabByCodice(datiBancariDTO.Abi, datiBancariDTO.Cab); if (cabDTO != null) { datiBancariDTO.Cab = datiBancariDTO.Cab; datiBancariDTO.DescrizioneCab = cabDTO.DescrizioneCabCompleta; } } } } else return; } // ---------------------------------------------------------- // Decodifica CAB // ---------------------------------------------------------- if (e.Cell.Column.Key == "DescrizioneCab") { if (e.Cell.Value != null && Utility.IsInteger(e.Cell.Value.ToString())) { var cab = e.Cell.Value.ToString().PadLeft(5, '0'); if (!string.IsNullOrEmpty(cab)) { var cabDTO = getAbiCabService().GetCabByCodice(datiBancariDTO.Abi, cab); if (cabDTO != null) { datiBancariDTO.Cab = cab; datiBancariDTO.DescrizioneCab = cabDTO.DescrizioneCabCompleta; } } } else return; } // ---------------------------------------------------------- // Calcolo IBAN e CIN // ---------------------------------------------------------- if (e.Cell.Column.Key == "DescrizioneAbi" || e.Cell.Column.Key == "DescrizioneCab" || e.Cell.Column.Key == "ContoCorrente") { if (!string.IsNullOrEmpty(datiBancariDTO.Abi) && !string.IsNullOrEmpty(datiBancariDTO.Cab) && !string.IsNullOrEmpty(datiBancariDTO.ContoCorrente)) { var coor = new CoordinateBancarie { Abi = datiBancariDTO.Abi, Cab = datiBancariDTO.Cab, ContoCorrente = datiBancariDTO.ContoCorrente }; coor.Cin = coor.CalcolaCin(); datiBancariDTO.Cin = coor.Cin; datiBancariDTO.Iban = coor.CalcolaIBAN(); } } // ---------------------------------------------------------- // Calcolo ABI, CAB, ContoCorrente e CIN // ---------------------------------------------------------- if (e.Cell.Column.Key == "Iban") { if (!string.IsNullOrEmpty(datiBancariDTO.Iban)) { var coor = new CoordinateBancarie(); coor.SetIBAN(datiBancariDTO.Iban); datiBancariDTO.Abi = coor.Abi; datiBancariDTO.Cab = coor.Cab; datiBancariDTO.ContoCorrente = coor.ContoCorrente; datiBancariDTO.Cin = coor.Cin; var cabDTO = getAbiCabService().GetCabByCodice(datiBancariDTO.Abi, datiBancariDTO.Cab); if (cabDTO != null) { datiBancariDTO.DescrizioneAbi = cabDTO.DescrizioneAbiCompleta; datiBancariDTO.DescrizioneCab = cabDTO.DescrizioneCabCompleta; } } } } } }
// Coordinate ordinante private void writeMovimento16(RataSoggetto rata, DatiBancariCondomini banca, StreamWriter sw, int numeroDisposizione) { try { var sb = new StringBuilder(120); // Tipo Record sb.Append(" 16"); // Numero Disposizione sb.Append(numeroDisposizione.ToString().PadLeft(7, '0')); // -------------------------------------------------------------------- // Coordinate banca ordinante (banca del condominio) // -------------------------------------------------------------------- var coord = new CoordinateBancarie { Abi = banca.Abi, Cab = banca.Cab, ContoCorrente = banca.ContoCorrente }; // Codice Paese sb.Append("IT"); // CheckDigit IBAN sb.Append(coord.CalcolaCheckIBAN()); // CIN sb.Append(coord.CalcolaCin()); // ABI sb.Append(coord.Abi); // CAB sb.Append(coord.Cab); // Conto Corrente sb.Append(coord.ContoCorrente); // filler sb.Append(string.Empty.PadLeft(83)); sw.WriteLine(sb.ToString()); } catch (Exception ex) { _log.ErrorFormat("Errore inaspettato durante la creazione di una singola riga di MAV - {0} - condominio:{1} - azienda:{2}", ex, Utility.GetMethodDescription(), banca.CondominioRiferimento.ID, banca.CondominioRiferimento.Azienda.ID); throw; } }