public UfficiModel GetUffici(decimal idUfficio, ModelDBISE db) { UfficiModel lm = new UfficiModel(); try { var liv = db.UFFICI.Find(idUfficio); if (liv != null && liv.IDUFFICIO > 0) { lm = new UfficiModel() { idUfficio = liv.IDUFFICIO, codiceUfficio = liv.CODICEUFFICIO, descUfficio = liv.DESCRIZIONEUFFICIO, pagatoValutaUfficio = liv.PAGATOVALUTAUFFICIO, }; } return(lm); } catch (Exception ex) { throw ex; } }
public TFRModel GetTFRValido(decimal idUfficio, DateTime dt, ModelDBISE db) { TFRModel tfrm = new TFRModel(); using (dtUffici dtu = new dtUffici()) { UfficiModel ufm = dtu.GetUffici(idUfficio, db); ValuteModel vm = new ValuteModel(); if (ufm.pagatoValutaUfficio == false) { using (dtValute dtv = new dtValute()) { vm = dtv.GetValutaUfficiale(db); if (vm.HasValue()) { var ltfr = db.TFR.Where(a => a.ANNULLATO == false && a.IDVALUTA == vm.idValuta && dt >= a.DATAINIZIOVALIDITA && dt <= a.DATAFINEVALIDITA) .OrderByDescending(a => a.DATAINIZIOVALIDITA) .ToList(); if (ltfr != null && ltfr.Count > 0) { var tfr = ltfr.First(); tfrm = new TFRModel() { idTFR = tfr.IDTFR, idValuta = tfr.IDVALUTA, dataInizioValidita = tfr.DATAINIZIOVALIDITA, dataFineValidita = tfr.DATAFINEVALIDITA == Utility.DataFineStop() ? new DateTime?() : tfr.DATAFINEVALIDITA, dataAggiornamento = tfr.DATAAGGIORNAMENTO, tassoCambio = tfr.TASSOCAMBIO, Annullato = tfr.ANNULLATO }; } } else { throw new Exception("La valuta ufficiale non risulta registrata, provvedere prima di procedere."); } } } } return(tfrm); }