Esempio n. 1
0
        public Boolean GuardarDB(ro_turno_Info Item, ref decimal Id, ref string mensaje)
        {
            Boolean result = false;

            try
            {
                using (EntitiesRoles Context = new EntitiesRoles())
                {
                    ro_turno Turno = new ro_turno();
                    ro_turno_x_tb_dia_Data datadetalle = new ro_turno_x_tb_dia_Data();
                    Turno.IdEmpresa            = Item.IdEmpresa; Id = GetIdTurno(Item.IdEmpresa);
                    Turno.IdTurno              = Id;
                    Turno.Estado               = "A";
                    Turno.tu_descripcion       = Item.tu_descripcion;
                    Turno.Fecha_Transac        = DateTime.Now;
                    Turno.IdUsuario            = Item.IdUsuario;
                    Turno.es_jornada_desfasada = Item.es_jornada_desfasada;
                    Context.ro_turno.Add(Turno);
                    Context.SaveChanges();
                    result = datadetalle.GuardarDetalleTurno(Item.Detalle, Id, ref mensaje);
                }

                return(result);
            }
            catch (Exception ex)
            {
                string array = ToString();
                tb_sis_Log_Error_Vzen_Data oDataLog      = new tb_sis_Log_Error_Vzen_Data();
                tb_sis_Log_Error_Vzen_Info Log_Error_sis = new tb_sis_Log_Error_Vzen_Info(ex.ToString(), "", array, "", "", "", "", "", DateTime.Now);
                oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
                mensaje = ex.InnerException + " " + ex.Message;
                throw new Exception(ex.InnerException.ToString());
            }
        }
Esempio n. 2
0
 public ActionResult Modificar(ro_turno_Info info)
 {
     try
     {
         if (ModelState.IsValid)
         {
             if (!bus_cargo.modificarDB(info))
             {
                 return(View(info));
             }
             else
             {
                 return(RedirectToAction("Index"));
             }
         }
         else
         {
             return(View(info));
         }
     }
     catch (Exception)
     {
         throw;
     }
 }
Esempio n. 3
0
        public bool anularDB(ro_turno_Info info)
        {
            try
            {
                using (Entities_rrhh Context = new Entities_rrhh())
                {
                    ro_turno Entity = Context.ro_turno.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa && q.IdTurno == info.IdTurno);
                    if (Entity == null)
                    {
                        return(false);
                    }
                    Entity.Estado = info.Estado = "I";

                    Entity.IdUsuarioUltAnu = info.IdUsuarioUltAnu;
                    Entity.Fecha_UltAnu    = info.Fecha_UltAnu = DateTime.Now;
                    Context.SaveChanges();
                }

                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }
Esempio n. 4
0
 public ActionResult Nuevo(ro_turno_Info info)
 {
     try
     {
         if (ModelState.IsValid)
         {
             info.IdEmpresa = GetIdEmpresa();
             if (!bus_cargo.guardarDB(info))
             {
                 return(View(info));
             }
             else
             {
                 return(RedirectToAction("Index"));
             }
         }
         else
         {
             return(View(info));
         }
     }
     catch (Exception)
     {
         throw;
     }
 }
Esempio n. 5
0
        public Boolean AnularDB(ro_turno_Info Info, ref string msj)
        {
            try
            {
                using (EntitiesRoles context = new EntitiesRoles())
                {
                    var contact = context.ro_turno.First(var => var.IdEmpresa == Info.IdEmpresa && var.IdTurno == Info.IdTurno);

                    contact.Estado          = "I";
                    contact.Fecha_UltAnu    = DateTime.Now;
                    contact.MotiAnula       = Info.MotiAnula;
                    contact.IdUsuarioUltAnu = Info.IdUsuarioUltAnu;
                    context.SaveChanges();
                }
                return(true);
            }
            catch (Exception ex)
            {
                string array = ToString();
                tb_sis_Log_Error_Vzen_Data oDataLog      = new tb_sis_Log_Error_Vzen_Data();
                tb_sis_Log_Error_Vzen_Info Log_Error_sis = new tb_sis_Log_Error_Vzen_Info(ex.ToString(), "", array, "", "", "", "", "", DateTime.Now);
                oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
                mensaje = ex.InnerException + " " + ex.Message;
                throw new Exception(ex.InnerException.ToString());
            }
        }
Esempio n. 6
0
        public Boolean ModificarDB(ro_turno_Info Info, string msj)
        {
            try
            {
                using (EntitiesRoles context = new EntitiesRoles())
                {
                    var contact = context.ro_turno.First(var => var.IdEmpresa == Info.IdEmpresa && var.IdTurno == Info.IdTurno);

                    contact.tu_descripcion  = Info.tu_descripcion;
                    contact.Lunes           = Info.Lunes;
                    contact.Martes          = Info.Martes;
                    contact.Miercoles       = Info.Miercoles;
                    contact.Jueves          = Info.Jueves;
                    contact.Viernes         = Info.Viernes;
                    contact.Sabado          = Info.Sabado;
                    contact.Domingo         = Info.Domingo;
                    contact.Estado          = Info.Estado;
                    contact.IdUsuarioUltAnu = Info.IdUsuarioUltAnu;
                    contact.Fecha_UltMod    = Info.Fecha_UltMod;
                    contact.MotiAnula       = "";
                    context.SaveChanges();
                }
                return(true);
            }
            catch (Exception ex)
            {
                string array = ToString();
                tb_sis_Log_Error_Vzen_Data oDataLog      = new tb_sis_Log_Error_Vzen_Data();
                tb_sis_Log_Error_Vzen_Info Log_Error_sis = new tb_sis_Log_Error_Vzen_Info(ex.ToString(), "", array, "", "", "", "", "", DateTime.Now);
                oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
                mensaje = ex.InnerException + " " + ex.Message;
                throw new Exception(ex.InnerException.ToString());
            }
        }
Esempio n. 7
0
        public void SetInfo(ro_turno_Info info)
        {
            try
            {
                ItemGrabar         = info;
                txtDia.Text        = info.IdTurno.ToString();
                txt_descTurno.Text = info.tu_descripcion;
                info.Detalle       = busDetalle.ConsultaDetallexTurno(param.IdEmpresa, info.IdTurno);
                if (info.Estado == "A")
                {
                    lblEstado.Visible   = false;
                    checkEstado.Checked = true;
                }
                else
                {
                    lblEstado.Visible   = true;
                    checkEstado.Checked = false;
                }

                if (info.es_jornada_desfasada != null)
                {
                    chek_jornada_desfasada.Checked = Convert.ToBoolean(info.es_jornada_desfasada);
                }

                BindListDetTurno = new BindingList <ro_turno_x_tb_dia_Info>(info.Detalle);
                gridControlDetalleTurno.DataSource = BindListDetTurno;
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString());
            }
        }
Esempio n. 8
0
 public bool guardarDB(ro_turno_Info info)
 {
     try
     {
         using (Entities_rrhh Context = new Entities_rrhh())
         {
             ro_turno Entity = new ro_turno
             {
                 IdEmpresa      = info.IdEmpresa,
                 IdTurno        = info.IdTurno = get_id(info.IdEmpresa),
                 tu_descripcion = info.tu_descripcion,
                 Lunes          = info.Lunes,
                 Martes         = info.Martes,
                 Miercoles      = info.Miercoles,
                 Jueves         = info.Jueves,
                 Viernes        = info.Viernes,
                 Sabado         = info.Sabado,
                 Domingo        = info.Domingo,
                 Estado         = info.Estado = "A",
                 IdUsuario      = info.IdUsuario,
                 Fecha_Transac  = info.Fecha_Transac = DateTime.Now
             };
             Context.ro_turno.Add(Entity);
             Context.SaveChanges();
         }
         return(true);
     }
     catch (Exception)
     {
         throw;
     }
 }
Esempio n. 9
0
        public bool modificarDB(ro_turno_Info info)
        {
            try
            {
                using (Entities_rrhh Context = new Entities_rrhh())
                {
                    ro_turno Entity = Context.ro_turno.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa && q.IdTurno == info.IdTurno);
                    if (Entity == null)
                    {
                        return(false);
                    }
                    Entity.tu_descripcion  = info.tu_descripcion;
                    Entity.Lunes           = info.Lunes;
                    Entity.Martes          = info.Martes;
                    Entity.Miercoles       = info.Miercoles;
                    Entity.Jueves          = info.Jueves;
                    Entity.Viernes         = info.Viernes;
                    Entity.Sabado          = info.Sabado;
                    Entity.Domingo         = info.Domingo;
                    Entity.IdUsuarioUltMod = info.IdUsuarioUltMod;
                    Entity.Fecha_UltMod    = info.Fecha_UltMod = DateTime.Now;
                    Context.SaveChanges();
                }

                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }
Esempio n. 10
0
 public bool anularDB(ro_turno_Info info)
 {
     try
     {
         return(odata.anularDB(info));
     }
     catch (Exception)
     {
         throw;
     }
 }
Esempio n. 11
0
 public bool modificarDB(ro_turno_Info info)
 {
     try
     {
         return(odata.modificarDB(info));
     }
     catch (Exception)
     {
         throw;
     }
 }
Esempio n. 12
0
 public ActionResult Nuevo()
 {
     try
     {
         ro_turno_Info info = new ro_turno_Info();
         return(View(info));
     }
     catch (Exception)
     {
         throw;
     }
 }
Esempio n. 13
0
 public ActionResult Nuevo()
 {
     try
     {
         ro_turno_Info info = new ro_turno_Info();
         info.IdEmpresa = Convert.ToInt32(SessionFixed.IdEmpresa);
         return(View(info));
     }
     catch (Exception)
     {
         throw;
     }
 }
Esempio n. 14
0
 private void gridViewCons_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
 {
     try
     {
         Info = new ro_turno_Info();
         Info = this.gridViewCons.GetFocusedRow() as ro_turno_Info;
     }
     catch (Exception ex)
     {
         Log_Error_bus.Log_Error(ex.ToString());
         MessageBox.Show(ex.ToString());
     }
 }
Esempio n. 15
0
 public Boolean GuardarTurno(ro_turno_Info Item, ref decimal Id, ref string mensaje)
 {
     try
     {
         return(data.GuardarDB(Item, ref Id, ref mensaje));
     }
     catch (Exception ex)
     {
         Core.Erp.Info.Log_Exception.LoggingManager.Logger.Log(Core.Erp.Info.Log_Exception.LoggingCategory.Error, ex.Message);
         throw new Core.Erp.Info.Log_Exception.DalException(string.Format("", "GuardarTurno", ex.Message), ex)
               {
                   EntityType = typeof(ro_turno_Bus)
               };
     }
 }
Esempio n. 16
0
 public Boolean AnularTurno(ro_turno_Info Info, ref string msj)
 {
     try
     {
         return(data.AnularDB(Info, ref msj));
     }
     catch (Exception ex)
     {
         Core.Erp.Info.Log_Exception.LoggingManager.Logger.Log(Core.Erp.Info.Log_Exception.LoggingCategory.Error, ex.Message);
         throw new Core.Erp.Info.Log_Exception.DalException(string.Format("", "AnularTurno", ex.Message), ex)
               {
                   EntityType = typeof(ro_turno_Bus)
               };
     }
 }
Esempio n. 17
0
 public ActionResult Anular(ro_turno_Info info)
 {
     try
     {
         if (!bus_cargo.anularDB(info))
         {
             return(View(info));
         }
         else
         {
             return(RedirectToAction("Index"));
         }
     }
     catch (Exception)
     {
         throw;
     }
 }
Esempio n. 18
0
 public void SetInfo(ro_turno_Info info)
 {
     try
     {
         ItemGrabar             = info;
         txtDia.Text            = info.IdTurno.ToString();
         txt_descTurno.Text     = info.tu_descripcion;
         checklunes.Checked     = info.Lunes;
         checkmartes.Checked    = info.Martes;
         checkmiercoles.Checked = info.Miercoles;
         checkjueves.Checked    = info.Jueves;
         checkjueves.Checked    = info.Viernes;
         checksabado.Checked    = info.Sabado;
         checkdomingo.Checked   = info.Domingo;
     }
     catch (Exception ex)
     {
         Log_Error_bus.Log_Error(ex.ToString());
         MessageBox.Show(ex.ToString());
     }
 }
Esempio n. 19
0
        public Boolean ModificarDB(ro_turno_Info Info, string msj)
        {
            Boolean result = false;

            try
            {
                ro_turno_x_tb_dia_Data datadetalle = new ro_turno_x_tb_dia_Data();

                using (EntitiesRoles context = new EntitiesRoles())
                {
                    var contact = context.ro_turno.First(var => var.IdEmpresa == Info.IdEmpresa && var.IdTurno == Info.IdTurno);

                    contact.tu_descripcion       = Info.tu_descripcion;
                    contact.es_jornada_desfasada = Info.es_jornada_desfasada;
                    contact.Estado          = Info.Estado;
                    contact.IdUsuarioUltAnu = Info.IdUsuarioUltAnu;
                    contact.Fecha_UltMod    = Info.Fecha_UltMod;
                    contact.MotiAnula       = "";
                    context.SaveChanges();

                    if (datadetalle.EliminarDetalleTurno(Info.IdEmpresa, Info.IdTurno, ref msj))
                    {
                        if (datadetalle.GuardarDetalleTurno(Info.Detalle, Info.IdTurno, ref msj))
                        {
                            result = true;
                        }
                    }
                }
                return(result);
            }
            catch (Exception ex)
            {
                string array = ToString();
                tb_sis_Log_Error_Vzen_Data oDataLog      = new tb_sis_Log_Error_Vzen_Data();
                tb_sis_Log_Error_Vzen_Info Log_Error_sis = new tb_sis_Log_Error_Vzen_Info(ex.ToString(), "", array, "", "", "", "", "", DateTime.Now);
                oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
                mensaje = ex.InnerException + " " + ex.Message;
                throw new Exception(ex.InnerException.ToString());
            }
        }
Esempio n. 20
0
        public ActionResult Index()
        {
            #region Validar Session
            if (string.IsNullOrEmpty(SessionFixed.IdTransaccionSession))
            {
                return(RedirectToAction("Login", new { Area = "", Controller = "Account" }));
            }
            SessionFixed.IdTransaccionSession       = (Convert.ToDecimal(SessionFixed.IdTransaccionSession) + 1).ToString();
            SessionFixed.IdTransaccionSessionActual = SessionFixed.IdTransaccionSession;
            #endregion

            ro_turno_Info model = new ro_turno_Info
            {
                IdEmpresa            = Convert.ToInt32(SessionFixed.IdEmpresa),
                IdTransaccionSession = Convert.ToDecimal(SessionFixed.IdTransaccionSession)
            };

            List <ro_turno_Info> lista = bus_cargo.get_list(model.IdEmpresa, true);
            Lista_Turno.set_list(lista, Convert.ToDecimal(SessionFixed.IdTransaccionSession));

            return(View(model));
        }
Esempio n. 21
0
        public Boolean GuardarDB(ro_turno_Info Item, ref decimal Id, ref string mensaje)
        {
            try
            {
                using (EntitiesRoles Context = new EntitiesRoles())
                {
                    ro_turno Turno = new ro_turno();
                    Turno.IdEmpresa = Item.IdEmpresa;
                    Id                   = GetIdTurno(Item.IdEmpresa);
                    Turno.IdTurno        = Id;
                    Turno.Lunes          = Item.Lunes;
                    Turno.Martes         = Item.Martes;
                    Turno.Miercoles      = Item.Miercoles;
                    Turno.Jueves         = Item.Jueves;
                    Turno.Viernes        = Item.Viernes;
                    Turno.Sabado         = Item.Sabado;
                    Turno.Domingo        = Item.Domingo;
                    Turno.Estado         = "A";
                    Turno.tu_descripcion = Item.tu_descripcion;
                    Turno.Fecha_Transac  = DateTime.Now;
                    Turno.IdUsuario      = Item.IdUsuario;
                    Context.ro_turno.Add(Turno);
                    Context.SaveChanges();
                }

                return(true);
            }
            catch (Exception ex)
            {
                string array = ToString();
                tb_sis_Log_Error_Vzen_Data oDataLog      = new tb_sis_Log_Error_Vzen_Data();
                tb_sis_Log_Error_Vzen_Info Log_Error_sis = new tb_sis_Log_Error_Vzen_Info(ex.ToString(), "", array, "", "", "", "", "", DateTime.Now);
                oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
                mensaje = ex.InnerException + " " + ex.Message;
                throw new Exception(ex.InnerException.ToString());
            }
        }
Esempio n. 22
0
        public ro_turno_Info get_info(int IdEmpresa, int IdTurno)
        {
            try
            {
                ro_turno_Info info = new ro_turno_Info();

                using (Entities_rrhh Context = new Entities_rrhh())
                {
                    ro_turno Entity = Context.ro_turno.FirstOrDefault(q => q.IdEmpresa == IdEmpresa && q.IdTurno == IdTurno);
                    if (Entity == null)
                    {
                        return(null);
                    }

                    info = new ro_turno_Info
                    {
                        IdEmpresa      = Entity.IdEmpresa,
                        IdTurno        = Entity.IdTurno,
                        tu_descripcion = Entity.tu_descripcion,
                        Lunes          = Entity.Lunes,
                        Martes         = Entity.Martes,
                        Miercoles      = Entity.Miercoles,
                        Jueves         = Entity.Jueves,
                        Viernes        = Entity.Viernes,
                        Sabado         = Entity.Sabado,
                        Domingo        = Entity.Domingo,
                        Estado         = Entity.Estado,
                    };
                }

                return(info);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public bool calcular_horas_extras(int IdEmpresa, int IdNomina, int IdNominaTipo, int IdPeriodo)
        {
            try
            {
                int             IdHorasExtras = 0;
                ro_horario_Info horarioActual = null;
                ro_turno_Info   info_turno    = null;
                lst_horaio = odata_horario.get_list(IdEmpresa, false);
                lsr_turnos = odata_turno.get_list(IdEmpresa, false);
                lst_nomina_horas_extras = odata.get_lis_calcular_horas_extras(IdEmpresa, IdNomina, IdNominaTipo, IdPeriodo);
                bool banderaHorario = false;
                foreach (var item in lst_nomina_horas_extras)
                {
                    horaExtra25  = 0;
                    horaExtra50  = 0;
                    horaExtra100 = 0;
                    double minutos_lunch = 0;
                    IdHorasExtras = item.IdHorasExtras;
                    // obteniendo el horario por empleado y por idcalendario
                    horarioActual = lst_horaio.Where(v => v.IdHorario == item.IdHorario).FirstOrDefault();
                    // obteniendo el turno por empleado y por idcalendario
                    info_turno = lsr_turnos.Where(v => v.IdTurno == item.IdTurno).FirstOrDefault();
                    if (horarioActual != null && info_turno != null)
                    {
                        #region calculo horas tabajadas
                        //CALCULA LAS HORAS TRABAJADAS
                        if (item.time_salida1 >= item.time_entrada1)
                        {
                            if (item.time_salida1 > item.time_entrada1 && item.time_salida1 < item.time_entrada1)
                            {
                                horaTrabajada = ((TimeSpan)(item.time_salida1 - item.time_entrada1)).TotalHours + ((TimeSpan)(item.time_salida2 - item.time_entrada2)).TotalHours;
                            }
                            else
                            {
                                horaTrabajada = ((TimeSpan)(item.time_salida1 - item.time_entrada1)).TotalHours;
                            }
                        }
                        else
                        {
                            if (item.time_salida1 > item.time_entrada1 && item.time_salida1 < item.time_entrada1)
                            {
                                horaTrabajada = ((TimeSpan)(item.time_salida1 - item.time_entrada1)).TotalHours + ((TimeSpan)(unDia - item.time_entrada1)).TotalHours + ((TimeSpan)item.time_salida2).TotalHours;
                            }
                            else
                            {
                                horaTrabajada = ((TimeSpan)(unDia - item.time_entrada1)).TotalHours + ((TimeSpan)item.time_salida1).TotalHours;
                            }
                        }
                        #endregion
                        #region variables de calculos
                        item.hora_trabajada = horaTrabajada;
                        minutos_lunch       = ((TimeSpan)((TimeSpan)horarioActual.RegLunch) - horarioActual.SalLunch).TotalHours; // obtengo los minutos de descanso
                        //VERIFICAR HORARIO DEL MISMO DIA VS. HORARIO DEL DIA SIGUIENTE
                        if (horarioActual.HoraIni <= horarioActual.HoraFin)                                                       //CORRESPONDE AL MISMO DIA
                        {
                            banderaHorario = false;
                        }
                        else
                        {
                            //CORRESPONDE A PARTE DEL MISMO DIA, Y PARTE DEL DIA SIGUIENTE
                            banderaHorario = true;
                        }
                        int dia_semana = Convert.ToInt32(item.FechaRegistro.DayOfWeek);
                        #endregion
                        #region turno diurno
                        if (banderaHorario == false)//TURNO DIURNO
                        {
                            if ((dia_semana == 7 | dia_semana == 6) && (info_turno.Domingo == false | info_turno.Sabado == false))
                            {
                                item.hora_trabajada = ((TimeSpan)(item.time_salida1 - item.time_entrada1)).TotalHours - ((TimeSpan)(horarioActual.RegLunch - horarioActual.SalLunch)).TotalHours;
                                item.hora_extra100  = item.hora_trabajada;
                            }
                            else
                            {
                                if (item.hora_trabajada > 8)
                                {
                                    //VERIFICA QUE LA SALIDA CORRESPONDA A HORAS EXTRAS DEL MISMO DIA
                                    if (item.time_salida1 > (TimeSpan)horarioActual.HoraFin && item.time_salida1 > item.time_entrada1)
                                    {
                                        //VERIFICA SI TIENE HORAS EXTRAS 100
                                        if (item.time_salida1 > inicioHora100 && item.time_salida1 <= finalHora100)
                                        {
                                            horaExtra100 = ((TimeSpan)(item.time_salida1 - finalHora100)).TotalHours; //TOTAL DE HORAS EXTRAS 100
                                        }
                                        else
                                        {
                                            //VERIFICA SI TIENE HORAS EXTRAS 50%
                                            if (item.time_salida1 > inicioHora50 && item.time_salida1 < finalHora50)
                                            {
                                                horaExtra50       = ((TimeSpan)(item.time_salida1 - (TimeSpan)horarioActual.HoraFin)).TotalHours; //TOTAL DE HORAS EXTRAS 50%
                                                horaExtra50       = horaExtra50 - minutos_lunch;
                                                item.hora_extra50 = horaExtra50;
                                            }
                                        }
                                    }
                                    else
                                    {
                                        if (item.time_salida1 < (TimeSpan)horarioActual.HoraIni)
                                        {
                                            horaExtra50  = (finalHora50 - (TimeSpan)horarioActual.HoraFin).TotalHours; //TOTAL DE HORAS EXTRAS 50%
                                            horaExtra100 = ((TimeSpan)(item.time_salida1 - inicioHora100)).TotalHours; //TOTAL DE HORAS EXTRAS 100
                                        }
                                    }
                                }
                            }
                        }
                        #endregion
                        #region turno nocturno
                        else
                        {
                            //VERIFICA SI ES JORNADA NOCTURNA
                            if (item.time_entrada1 >= inicioHora25 && item.time_entrada1 <= (unDia + finalHora25) && banderaHorario)
                            {
                                horaExtra25 = ((TimeSpan)((unDia + item.time_salida2) - item.time_entrada1)).TotalHours; //TOTAL DE HORAS DE JORNADA NOCTURNA
                            }
                            //CALCULO DE HORAS EXTRAS
                            if (item.time_salida2 > item.time_entrada1 && item.time_salida2 < finalHora50)
                            {
                                horaTrabajada = (((TimeSpan)item.time_salida2).TotalHours - ((TimeSpan)item.time_entrada1).TotalHours);
                            }
                            else
                            {
                                if (item.time_salida1 > inicioHora100)
                                {
                                    horaTrabajada = ((TimeSpan)(unDia + item.time_salida1)).TotalHours - ((TimeSpan)item.time_entrada1).TotalHours;

                                    if (item.time_salida1 > (TimeSpan)horarioActual.HoraFin && item.time_salida1 <= finalHora100)
                                    {
                                        horaExtra100 = ((TimeSpan)(item.time_salida1 - (TimeSpan)horarioActual.HoraFin)).TotalHours;
                                    }
                                    else
                                    {
                                        if (item.time_salida1 > (TimeSpan)horarioActual.HoraFin && item.time_salida1 > inicioHora50 && item.time_salida1 <= finalHora50)
                                        {
                                            horaExtra100 = (inicioHora50 - (TimeSpan)horarioActual.HoraFin).TotalHours;
                                            horaExtra50  = ((TimeSpan)(item.time_salida2 - inicioHora50)).TotalHours;
                                        }
                                    }
                                }
                            }
                        }
                        #endregion
                    }

                    item.hora_trabajada = horaTrabajada - minutos_lunch;
                    item.hora_extra25   = horaExtra25;
                    item.hora_extra50   = horaExtra50;
                    item.hora_extra100  = horaExtra100;

                    item.Valor25  = ((item.Sueldo_base / 240) * 1.25) * horaExtra25;
                    item.Valor50  = ((item.Sueldo_base / 240) * 1.5) * horaExtra50;
                    item.Valor100 = ((item.Sueldo_base / 240) * 2) * horaExtra100;
                }
                return(odata.guardarDB(IdEmpresa, IdHorasExtras, lst_nomina_horas_extras));
            }
            catch (Exception)
            {
                throw;
            }
        }