public ro_HorasProfesores_Info get_info(int IdEmpresa, decimal IdCarga)
        {
            try
            {
                ro_HorasProfesores_Info info = new ro_HorasProfesores_Info();

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

                    info = new ro_HorasProfesores_Info
                    {
                        IdEmpresa    = Entity.IdEmpresa,
                        IdCarga      = Entity.IdCarga,
                        FechaCarga   = Entity.FechaCarga,
                        Estado       = Entity.Estado,
                        Observacion  = Entity.Observacion,
                        IdNomina     = Entity.IdNomina,
                        IdNominaTipo = Entity.IdNominaTipo,
                    };
                }

                return(info);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public ActionResult Nuevo()
        {
            #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

            var lst_empleados = bus_empleado.get_list_profesores(Convert.ToInt32(SessionFixed.IdEmpresa));
            empleado_info_list.set_list(lst_empleados, Convert.ToDecimal(SessionFixed.IdTransaccionSession));

            ro_HorasProfesores_Info model = new ro_HorasProfesores_Info
            {
                IdTransaccionSession = Convert.ToDecimal(SessionFixed.IdTransaccionSession),
                IdEmpresa            = Convert.ToInt32(SessionFixed.IdEmpresa),
                FechaCarga           = DateTime.Now,
                IdNomina             = 1,
                IdNominaTipo         = 2,
            };

            var lst_rubros = bus_rubro.get_list(Convert.ToInt32(SessionFixed.IdEmpresa), false);
            ro_rubro_tipo_Info_list.set_list(lst_rubros, model.IdTransaccionSession);

            model.detalle = new List <ro_HorasProfesores_det_Info>();
            detalle.set_list(model.detalle);
            cargar_combos();
            return(View(model));
        }
        public ActionResult GridViewPartial_importacion_horas_det()
        {
            ro_HorasProfesores_Info modelReturn = new ro_HorasProfesores_Info();

            modelReturn.detalle = detalle.get_list();
            return(PartialView("_GridViewPartial_importacion_horas_det", modelReturn));
        }
        public ActionResult EditingDelete([ModelBinder(typeof(DevExpressEditorsBinder))] ro_HorasProfesores_det_Info info_det)
        {
            detalle.DeleteRow(info_det.Secuencia);
            ro_HorasProfesores_Info model = new ro_HorasProfesores_Info();

            model.detalle = detalle.get_list();
            return(PartialView("_GridViewPartial_importacion_horas_det", model));
        }
        public ActionResult EditingUpdate([ModelBinder(typeof(DevExpressEditorsBinder))] ro_HorasProfesores_det_Info info_det)
        {
            if (ModelState.IsValid)
            {
                detalle.UpdateRow(info_det);
            }
            ro_HorasProfesores_Info model = new ro_HorasProfesores_Info();

            model.detalle = detalle.get_list();
            return(PartialView("_GridViewPartial_importacion_horas_det", model));
        }
 public bool AnularDB(ro_HorasProfesores_Info info)
 {
     try
     {
         return(odata.AnularDB(info));
     }
     catch (Exception)
     {
         throw;
     }
 }
        public ActionResult Duplicar(ro_HorasProfesores_Info model)
        {
            model.detalle = detalle.get_list();

            model.IdEmpresa     = Convert.ToInt32(SessionFixed.IdEmpresa);
            model.IdUsuario     = SessionFixed.IdUsuario;
            model.Fecha_Transac = DateTime.Now;
            if (!bus_novedad.GuardarDB(model))
            {
                cargar_combos();
                return(View(model));
            }
            return(RedirectToAction("Index"));
        }
        public ActionResult Duplicar(decimal IdCarga)
        {
            int IdEmpresa = Convert.ToInt32(SessionFixed.IdEmpresa);
            ro_HorasProfesores_Info model = bus_novedad.get_info(IdEmpresa, IdCarga);

            if (model == null)
            {
                return(RedirectToAction("Index"));
            }
            model.detalle = bus_novedad_detalle_bus.get_list(IdEmpresa, IdCarga);
            detalle.set_list(model.detalle);
            cargar_combos();
            return(View(model));
        }
        public bool AnularDB(ro_HorasProfesores_Info info)
        {
            try
            {
                ro_HorasProfesores_det_Data oda_det = new ro_HorasProfesores_det_Data();
                var lista = oda_det.get_list(info.IdEmpresa, info.IdCarga);
                using (Entities_rrhh contex = new Entities_rrhh())
                {
                    foreach (var item in lista)
                    {
                        ro_empleado_Novedad entity_det = contex.ro_empleado_Novedad.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa && q.IdEmpleado == item.IdEmpleado && q.IdNovedad == item.IdNovedad);
                        if (entity_det != null)
                        {
                            string sql = "update ro_empleado_Novedad set Estado='I' where IdEmpresa='" + info.IdEmpresa + "' and IdEmpleado='" + item.IdEmpleado + "' and IdNovedad='" + item.IdNovedad + "'";
                            contex.Database.ExecuteSqlCommand(sql);
                            entity_det.Estado          = "I";
                            entity_det.IdUsuarioUltAnu = info.IdUsuarioUltAnu;
                            entity_det.Fecha_UltAnu    = DateTime.Now;
                            contex.SaveChanges();
                        }
                    }
                }

                using (Entities_rrhh contex = new Entities_rrhh())
                {
                    ro_HorasProfesores entity = contex.ro_HorasProfesores.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa && q.IdCarga == info.IdCarga);

                    if (entity == null)
                    {
                        return(false);
                    }
                    entity.Fecha_UltAnu    = info.Fecha_UltAnu = DateTime.Now;
                    entity.IdUsuarioUltAnu = info.IdUsuarioUltAnu;
                    entity.Estado          = false;
                    contex.SaveChanges();
                }
                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public ActionResult Nuevo(ro_HorasProfesores_Info model)
        {
            model.detalle = detalle.get_list();
            if (model.detalle == null || model.detalle.Count() == 0)
            {
                ViewBag.mensaje = "No existe detalle para la novedad";
                cargar_combos();
                return(View(model));
            }



            model.IdEmpresa = Convert.ToInt32(SessionFixed.IdEmpresa);
            model.IdUsuario = SessionFixed.IdUsuario;
            if (!bus_novedad.GuardarDB(model))
            {
                cargar_combos();
                return(View(model));
            }
            return(RedirectToAction("Index"));
        }
Exemplo n.º 11
0
        public ActionResult Nuevo()
        {
            var lst_rubros = bus_rubro.get_list(Convert.ToInt32(SessionFixed.IdEmpresa), false);

            ro_rubro_tipo_Info_list.set_list(lst_rubros);

            var lst_empleados = bus_empleado.get_list_profesores(Convert.ToInt32(SessionFixed.IdEmpresa));

            empleado_info_list.set_list(lst_empleados);

            ro_HorasProfesores_Info model = new ro_HorasProfesores_Info
            {
                IdEmpresa    = Convert.ToInt32(SessionFixed.IdEmpresa),
                FechaCarga   = DateTime.Now,
                IdNomina     = 1,
                IdNominaTipo = 2,
            };

            model.detalle = new List <ro_HorasProfesores_det_Info>();
            detalle.set_list(model.detalle);
            cargar_combos();
            return(View(model));
        }
        public ActionResult Anular(decimal IdCarga)
        {
            int IdEmpresa = Convert.ToInt32(SessionFixed.IdEmpresa);
            ro_HorasProfesores_Info model = bus_novedad.get_info(IdEmpresa, IdCarga);

            if (model == null)
            {
                return(RedirectToAction("Index"));
            }
            model.detalle = bus_novedad_detalle_bus.get_list(IdEmpresa, IdCarga);
            detalle.set_list(model.detalle);

            #region Validacion Periodo
            ViewBag.MostrarBoton = true;
            if (!bus_periodo.ValidarFechaTransaccion(IdEmpresa, model.FechaCarga, cl_enumeradores.eModulo.RRHH, 0, ref mensaje))
            {
                ViewBag.mensaje      = mensaje;
                ViewBag.MostrarBoton = false;
            }
            #endregion

            cargar_combos();
            return(View(model));
        }
        public bool GuardarDB(ro_HorasProfesores_Info info)
        {
            try
            {
                decimal IdNovedad = odata_novedad.get_id(info.IdEmpresa);


                using (Entities_rrhh Contex = new Entities_rrhh())
                {
                    ro_HorasProfesores entity = new ro_HorasProfesores
                    {
                        IdEmpresa     = info.IdEmpresa,
                        IdCarga       = info.IdCarga = Get_id(info.IdEmpresa),
                        FechaCarga    = info.FechaCarga.Date,
                        IdPeriodo     = info.IdPeriodo = Convert.ToInt32(info.FechaCarga.Year.ToString() + info.FechaCarga.Month.ToString().PadLeft(2, '0')),
                        Observacion   = info.Observacion,
                        IdNomina      = info.IdNomina,
                        IdNominaTipo  = info.IdNominaTipo,
                        IdUsuario     = info.IdUsuario,
                        Fecha_Transac = DateTime.Now,
                        Estado        = true
                    };
                    Contex.ro_HorasProfesores.Add(entity);

                    foreach (var item in info.detalle)
                    {
                        ro_empleado_Novedad Entity = new ro_empleado_Novedad
                        {
                            IdEmpresa          = info.IdEmpresa,
                            IdNovedad          = item.IdNovedad = IdNovedad,
                            IdNomina_Tipo      = info.IdNomina,
                            IdNomina_TipoLiqui = info.IdNominaTipo,
                            IdEmpleado         = item.IdEmpleado,
                            Fecha         = info.FechaCarga.Date,
                            IdSucursal    = item.IdSucursal,
                            Observacion   = item.ru_descripcion,
                            Estado        = "A",
                            IdUsuario     = info.IdUsuario,
                            Fecha_Transac = info.Fecha_Transac = DateTime.Now,
                            IdJornada     = item.IdJornada
                        };
                        Contex.ro_empleado_Novedad.Add(Entity);

                        ro_empleado_novedad_det Entity_det = new ro_empleado_novedad_det
                        {
                            IdEmpresa     = info.IdEmpresa,
                            IdNovedad     = item.IdNovedad,
                            FechaPago     = info.FechaCarga.Date,
                            IdRubro       = item.IdRubro,
                            Valor         = item.Valor,
                            Observacion   = item.Observacion + " del " + info.FechaCarga.Date.ToString().Substring(0, 10),
                            EstadoCobro   = "PEN",
                            CantidadHoras = item.NumHoras,
                            Secuencia     = 1
                        };

                        Contex.ro_empleado_novedad_det.Add(Entity_det);

                        ro_HorasProfesores_det Entity_det_ = new ro_HorasProfesores_det
                        {
                            IdEmpresa     = info.IdEmpresa,
                            IdCarga       = info.IdCarga,
                            IdNovedad     = item.IdNovedad,
                            IdRubro       = item.IdRubro,
                            IdEmpleado    = item.IdEmpleado,
                            Observacion   = item.Observacion,
                            Secuencia     = item.Secuencia,
                            IdEmpresa_nov = info.IdEmpresa,
                            ValorHora     = item.ValorHora,
                            NumHoras      = item.NumHoras,
                            IdSucursal    = item.IdSucursal
                        };
                        Contex.ro_HorasProfesores_det.Add(Entity_det_);
                        IdNovedad++;
                    }
                    Contex.SaveChanges();
                }
                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }