public void AttivaRichiestaAnticipi(decimal idAttivitaAnticipi) { using (ModelDBISE db = new ModelDBISE()) { db.Database.BeginTransaction(); try { var aa = db.ATTIVITAANTICIPI.Find(idAttivitaAnticipi); if (aa?.IDATTIVITAANTICIPI > 0) { if (aa.NOTIFICARICHIESTA == true) { aa.ATTIVARICHIESTA = true; aa.DATAATTIVARICHIESTA = DateTime.Now; aa.DATAAGGIORNAMENTO = DateTime.Now; int i = db.SaveChanges(); if (i <= 0) { throw new Exception("Errore: Impossibile completare l'attivazione anticipo."); } else { using (dtElaborazioni dte = new dtElaborazioni()) { dte.InviaAnticipoPrimaSistemazione(idAttivitaAnticipi, db); } Utility.SetLogAttivita(EnumAttivitaCrud.Modifica, "Attivazione anticipi.", "ATTIVITAANTICIPI", db, aa.PRIMASITEMAZIONE.TRASFERIMENTO.IDTRASFERIMENTO, aa.IDATTIVITAANTICIPI); using (dtCalendarioEventi dtce = new dtCalendarioEventi()) { dtce.ModificaInCompletatoCalendarioEvento(aa.PRIMASITEMAZIONE.TRASFERIMENTO.IDTRASFERIMENTO, EnumFunzioniEventi.RichiestaAnticipi, db); } //using (dtDipendenti dtd = new dtDipendenti()) //{ using (dtTrasferimento dtt = new dtTrasferimento()) { using (dtUffici dtu = new dtUffici()) { var t = dtt.GetTrasferimentoByIdPrimaSistemazione(aa.IDPRIMASISTEMAZIONE); if (t?.idTrasferimento > 0) { //var dip = dtd.GetDipendenteByID(t.idDipendente); var uff = dtu.GetUffici(t.idUfficio); EmailTrasferimento.EmailAttiva(aa.PRIMASITEMAZIONE.TRASFERIMENTO.IDTRASFERIMENTO, Resources.msgEmail.OggettoAttivaRichiestaAnticipi, string.Format(Resources.msgEmail.MessaggioAttivaRichiestaAnticipi, uff.descUfficio + " (" + uff.codiceUfficio + ")", t.dataPartenza.ToShortDateString()), db); } } } //} //this.EmailAttivaRichiestaAnticipi(aa.IDATTIVITAANTICIPI, db); } } } db.Database.CurrentTransaction.Commit(); } catch (Exception ex) { db.Database.CurrentTransaction.Rollback(); throw ex; } } }
public void AttivaRichiestaProvvidenzeScolastiche(decimal idAttivitaProvvidenzeScolastiche) { using (ModelDBISE db = new ModelDBISE()) { db.Database.BeginTransaction(); try { var atps = db.ATTIVAZIONIPROVSCOLASTICHE.Find(idAttivitaProvvidenzeScolastiche); if (atps?.IDPROVSCOLASTICHE > 0) { if (atps.NOTIFICARICHIESTA == true) { atps.ATTIVARICHIESTA = true; atps.DATAATTIVAZIONE = DateTime.Now; atps.DATAAGGIORNAMENTO = DateTime.Now; int i = db.SaveChanges(); if (i <= 0) { throw new Exception("Errore: Impossibile completare l'attivazione delle provvidenze scolastiche."); } else { #region ciclo attivazione documenti PS var ldte = atps.DOCUMENTI.Where(a => a.MODIFICATO == false && a.IDSTATORECORD == (decimal)EnumStatoRecord.Da_Attivare).ToList(); foreach (var dte in ldte) { dte.IDSTATORECORD = (decimal)EnumStatoRecord.Attivato; if (db.SaveChanges() <= 0) { throw new Exception("Errore durante il ciclo di attivazione provvidenze scolastiche (attiva documenti)"); } } #endregion Utility.SetLogAttivita(EnumAttivitaCrud.Modifica, "Attivazione provvidenze scolastiche.", "ATTIVAZIONIPROVSCOLASTICHE", db, atps.PROVVIDENZESCOLASTICHE.TRASFERIMENTO.IDTRASFERIMENTO, atps.IDPROVSCOLASTICHE); using (dtCalendarioEventi dtce = new dtCalendarioEventi()) { dtce.ModificaInCompletatoCalendarioEvento(atps.PROVVIDENZESCOLASTICHE.TRASFERIMENTO.IDTRASFERIMENTO, EnumFunzioniEventi.RichiestaProvvidenzeScolastiche, db); } var messaggioAttiva = Resources.msgEmail.MessaggioAttivazioneProvvidenzeScolastiche; var oggettoAttiva = Resources.msgEmail.OggettoAttivazioneProvvidenzeScolastiche; EmailTrasferimento.EmailAttiva(atps.PROVVIDENZESCOLASTICHE.TRASFERIMENTO.IDTRASFERIMENTO, oggettoAttiva, messaggioAttiva, db); } } } db.Database.CurrentTransaction.Commit(); } catch (Exception ex) { db.Database.CurrentTransaction.Rollback(); throw ex; } } }