/// <summary> /// Guarda/Actualiza los Dias libres de un Personnel /// </summary> /// <param name="action">true para actualizar| false para agregar</param> /// <returns>0- Registro no guardado | 1- Registro Guardado /// <history>[ECANUL] 10-03-2016 Created</history> /// <history>[ECANUL] 11-03-2016 Modificated</history> public static int SavePersonnelDayOff(Model.DayOff personnelDaysOf) { int nRes = 0; using (var dbContext = new IMEntities(ConnectionHelper.ConnectionString())) { ///Uso en try Catch porque al momento de revisar si el usuario existe o no ///al coinicidir un ususario existente el manejador me dice que el "Registro esta en uso y no me permite modificarlo" try {//Intenta Actualizar dbContext.Entry(personnelDaysOf).State = System.Data.Entity.EntityState.Modified; nRes = dbContext.SaveChanges(); } catch {///Si no pudo actualizar entonces guarda dbContext.DaysOffs.Add(personnelDaysOf); nRes = dbContext.SaveChanges(); } /* //Revisa si el Personnel ya esiste en la tabla DaysOff * DayOff persoDayOff = dbContext.DaysOffs.Where(c => c.dope == personnelDaysOf.dope).FirstOrDefault(); * if(persoDayOff != null) * {//Si es diferente de nulo modifica * //persoDayOff = personnelDaysOf; * //dbContext.Entry(personnelDaysOf).State = System.Data.Entity.EntityState.Modified; * dbContext.Entry(personnelDaysOf).State = System.Data.Entity.EntityState.Modified; * nRes = dbContext.SaveChanges(); * } * else * { * //Si es nulo Agrega * dbContext.DaysOffs.Add(personnelDaysOf); * nRes = dbContext.SaveChanges(); * } */ } return(nRes); }
private void btnSave_Click(object sender, RoutedEventArgs e) { int nRes = 0; if (CheksValidate()) { StaStart("Guardando Datos..."); Model.DayOff daysOff = new Model.DayOff(); daysOff.dope = txtDope.Text; daysOff.doMonday = chkMonday.IsChecked.Value; daysOff.doTuesday = chkTuestday.IsChecked.Value; daysOff.doWednesday = chkWednesday.IsChecked.Value; daysOff.doThursday = chkThursday.IsChecked.Value; daysOff.doFriday = chkFriday.IsChecked.Value; daysOff.doSaturday = chkSaturday.IsChecked.Value; daysOff.doSunday = chkSunday.IsChecked.Value; nRes = BRPersonnelDayOff.SavePersonnelDayOff(daysOff); CleanControls(); LoadGrid(); EnableControls(0); StaEnd(); } }