public decimal EditRichiamo(RichiamoModel ric, decimal idCoeffIndRichiamo, decimal idCoeffMaggRichiamo, decimal idPercentualeFKM, DateTime DataRientro, decimal idRichiamo, ModelDBISE db) { decimal tmp = 0; if (idCoeffIndRichiamo == 0 || idPercentualeFKM == 0 || idCoeffMaggRichiamo == 0) { return(0); } try { var rich = db.RICHIAMO.Find(idRichiamo); rich.ANNULLATO = true; rich.DATAAGGIORNAMENTO = DateTime.Now; db.SaveChanges(); RICHIAMO riNew = new RICHIAMO() { IDTRASFERIMENTO = ric.idTrasferimento, DATARICHIAMO = ric.DataRichiamo, DATAAGGIORNAMENTO = DateTime.Now, ANNULLATO = false }; db.RICHIAMO.Add(riNew); int i = db.SaveChanges(); tmp = riNew.IDRICHIAMO; var t = db.TRASFERIMENTO.Find(ric.idTrasferimento); t.IDSTATOTRASFERIMENTO = (decimal)EnumStatoTraferimento.Terminato; t.DATARIENTRO = DataRientro;// ric.DataRichiamo.AddDays(-1); t.DATAAGGIORNAMENTO = DateTime.Now; db.SaveChanges(); //DataRientro = ric.DataRichiamo.AddDays(-1); using (dtRichiamo dtr = new dtRichiamo()) { RimuoviAsscoiazioni_Richiamo_CoeffIndRichiamo(idRichiamo, db); RimuoviAsscoiazioni_Richiamo_PercentualeFKM(idRichiamo, db); RimuoviAssociazioni_Richiamo_CoeffMagRichiamo(idRichiamo, db); dtr.Associa_Richiamo_CoeffIndRichiamo(tmp, idCoeffIndRichiamo, db); dtr.Associa_Richiamo_CoeffIndRichiamo(tmp, idCoeffMaggRichiamo, db); dtr.Associa_Richiamo_PercentualeFKM(tmp, idPercentualeFKM, db); } if (i > 0) { Utility.SetLogAttivita(EnumAttivitaCrud.Modifica, "Modifica richiamo.", "Richiamo", db, rich.IDTRASFERIMENTO, rich.IDTRASFERIMENTO); } } catch (Exception ex) { throw ex; } return(tmp); }
public decimal SetRichiamo(RichiamoModel ric, decimal idCoeffIndRichiamo, decimal idPercentualeFKM, decimal idCoeffMagIndRichiamo, DateTime DataRientro, ModelDBISE db) { decimal tmp = 0; if (idCoeffIndRichiamo == 0 || idPercentualeFKM == 0 || idCoeffMagIndRichiamo == 0) { return(0); } try { RICHIAMO ri = new RICHIAMO() { IDTRASFERIMENTO = ric.idTrasferimento, DATARICHIAMO = ric.DataRichiamo, DATAAGGIORNAMENTO = DateTime.Now, ANNULLATO = ric.annullato }; db.RICHIAMO.Add(ri); int i = db.SaveChanges(); tmp = ri.IDRICHIAMO; var t = db.TRASFERIMENTO.Find(ric.idTrasferimento); t.IDSTATOTRASFERIMENTO = (decimal)EnumStatoTraferimento.Terminato; t.DATARIENTRO = DataRientro;// ric.DataRichiamo.AddDays(-1); t.DATAAGGIORNAMENTO = DateTime.Now; db.SaveChanges(); //DataRientro = ;// ric.DataRichiamo.AddDays(-1); using (dtRichiamo dtr = new dtRichiamo()) { dtr.Associa_Richiamo_CoeffIndRichiamo(ri.IDRICHIAMO, idCoeffIndRichiamo, db); dtr.Associa_Richiamo_CoeffIndRichiamo(ri.IDRICHIAMO, idCoeffMagIndRichiamo, db); dtr.Associa_Richiamo_PercentualeFKM(ri.IDRICHIAMO, idPercentualeFKM, db); } if (i > 0) { ric.idTrasferimento = ri.IDTRASFERIMENTO; Utility.SetLogAttivita(EnumAttivitaCrud.Inserimento, "Inserimento di un nuovo richiamo.", "Richiamo", db, ric.idTrasferimento, ri.IDTRASFERIMENTO); } } catch (Exception ex) { throw ex; } return(tmp); }