示例#1
0
        public List <ROL_002_Info> get_list(int IdEmpresa, int IdNomina, int IdNominaTipo, int IdPeriodo, int IdSucursal, decimal Idempleado)
        {
            try
            {
                ro_rubros_calculados_Data calculados_data = new ro_rubros_calculados_Data();
                var info_rubros_calcu = calculados_data.get_info(IdEmpresa);
                List <ROL_002_Info> Lista;
                string mes_nom_ = mes(IdPeriodo);

                using (Entities_reportes Context = new Entities_reportes())
                {
                    //  Context.SPROL_002(IdEmpresa, IdNomina, IdNominaTipo, IdPeriodo);
                    Lista = (from q in Context.VWROL_002
                             where (q.IdSucursal == 0 ? 1 == 1 : q.IdSucursal == IdSucursal &&
                                    q.IdEmpresa == IdEmpresa &&
                                    q.IdNominaTipo == IdNomina &&
                                    q.IdNominaTipoLiqui == IdNominaTipo &&
                                    q.IdPeriodo == IdPeriodo &&
                                    q.IdEmpleado == Idempleado &&
                                    q.IdRubro != info_rubros_calcu.IdRubro_tot_pagar)
                             orderby q.NombreCompleto
                             select new ROL_002_Info
                    {
                        IdEmpresa = q.IdEmpresa,
                        IdEmpleado = q.IdEmpleado,
                        IdNominaTipoLiqui = q.IdNominaTipoLiqui,
                        IdPeriodo = q.IdPeriodo,
                        Ruc = q.Ruc,
                        em_ruc = "RUC #" + q.em_ruc,
                        ru_orden = q.ru_orden,
                        NombreCompleto = q.pe_apellido + " " + q.pe_nombre,
                        RubroDescripcion = q.RubroDescripcion,
                        Cargo = q.Cargo,
                        Valor = q.Valor,
                        pe_FechaIni = q.pe_FechaIni,
                        pe_FechaFin = q.pe_FechaFin,
                        IdNominaTipo = q.IdNominaTipo,
                        mes_nom = mes_nom_,
                        Area = q.Area,
                        de_descripcion = q.de_descripcion,
                        em_codigo = q.em_codigo,
                        em_status = q.em_status,
                        Grupo = q.Grupo,
                        IdSucursal = q.IdSucursal,
                        pe_apellido = q.pe_apellido,
                        pe_nombre = q.pe_nombre,
                        ru_tipo = q.ru_tipo,
                        IdRubro = q.IdRubro,
                        NomNomina = q.NomNomina,
                        NomNominaTipo = q.NomNominaTipo
                    }).ToList();
                }

                return(Lista);
            }
            catch (Exception)
            {
                throw;
            }
        }
示例#2
0
 public ro_rubros_calculados_Info get_info(int IdEmpresa)
 {
     try
     {
         return(odata.get_info(IdEmpresa));
     }
     catch (Exception)
     {
         throw;
     }
 }
示例#3
0
        public List <ROL_022_Info> get_list(int IdEmpresa, int IdNomina, int IdNominaTipo, int IdPeriodo,
                                            int IdSucursal, int IdDivision, int IdArea)
        {
            try
            {
                ro_rubros_calculados_Data oda_rubro_calculados = new ro_rubros_calculados_Data();
                var info_rub_calculados = oda_rubro_calculados.get_info(IdEmpresa);
                int IdSucursalInicio    = IdSucursal;
                int IdSucursalFin       = IdSucursal == 0 ? 9999 : IdSucursal;

                int IdAreaInicio = IdArea;
                int IdAreaFin    = IdArea == 0 ? 9999 : IdArea;

                int IdDivisionInicio = IdDivision;
                int IdDivisionFin    = IdDivision == 0 ? 9999 : IdDivision;

                List <ROL_022_Info> Lista = new List <ROL_022_Info>();
                using (Entities_reportes Context = new Entities_reportes())

                {
                    Lista = (from q in Context.SPROL_022(IdEmpresa, IdNomina, IdNominaTipo, IdPeriodo)
                             where q.IdEmpresa == IdEmpresa &&
                             q.IdDivision >= IdDivisionInicio &&
                             q.IdDivision <= IdDivisionFin &&
                             q.IdArea >= IdAreaInicio &&
                             q.IdArea <= IdAreaFin &&
                             q.IdSucursal >= IdSucursalInicio &&
                             q.IdSucursal <= IdSucursalFin &&
                             q.IdNomina_Tipo == IdNomina &&
                             q.IdNomina_TipoLiqui == IdNominaTipo &&
                             q.IdPeriodo == IdPeriodo &&
                             q.Valor > 0
                             //&& q.IdRubro==info_rub_calculados.IdRubro_tot_pagar
                             select new ROL_022_Info
                    {
                        IdEmpresa = q.IdEmpresa,
                        IdDivision = q.IdDivision,
                        IdArea = q.IdArea,
                        IdEmpleado = q.IdEmpleado,
                        IdJornada = q.IdJornada,
                        IdNomina_Tipo = q.IdNomina_Tipo,
                        IdPeriodo = q.IdPeriodo,
                        Descripcion = q.Descripcion,
                        ca_descripcion = q.ca_descripcion,
                        ru_descripcion = q.ru_descripcion,
                        empleado = q.empleado,
                        ru_orden = q.ru_orden,
                        Valor = q.Valor,
                        ru_tipo = q.ru_tipo,
                        Su_Descripcion = q.Su_Descripcion,
                        FechaIni = q.FechaIni,
                        FechaFin = q.FechaFin,
                        NomArea = q.NomArea,
                        NomDivision = q.NomDivision,
                        NomNomina = q.NomNomina,
                        NomNominaTipo = q.NomNominaTipo,
                        IdRubro = q.IdRubro
                    }).ToList();
                }

                return(Lista);
            }
            catch (Exception)
            {
                throw;
            }
        }
示例#4
0
        public Boolean GuardarDB(ro_permiso_x_empleado_Info info, ref decimal id, ref string msg)
        {
            try
            {
                var calculado = odata_calculados.get_info(info.IdEmpresa);
                if (calculado == null)
                {
                    return(false);
                }

                ro_Empleado_TipoNomina_Data odata_emp_nomi = new ro_Empleado_TipoNomina_Data();
                var info_emp_nom = odata_emp_nomi.Get_Info_Empleado_TipoNomina(info.IdEmpresa, info.IdEmpleado);
                if (info_emp_nom == null)
                {
                    return(false);
                }
                info.IdNomina_Tipo = info_emp_nom.IdNomina_Tipo;

                using (EntitiesRoles db = new EntitiesRoles())
                {
                    ro_permiso_x_empleado data = new ro_permiso_x_empleado();
                    data.IdPermiso         = info.IdPermiso = GetId(info.IdEmpresa);
                    data.IdEmpresa         = info.IdEmpresa;
                    data.IdNomina_Tipo     = info.IdNomina_Tipo;
                    data.Fecha             = Convert.ToDateTime(info.Fecha);
                    data.IdEmpleado        = info.IdEmpleado;
                    data.MotivoAusencia    = info.MotivoAusencia;
                    data.TiempoAusencia    = info.TiempoAusencia;
                    info.FormaRecuperacion = (info.FormaRecuperacion == null) ? "" : info.FormaRecuperacion;
                    data.IdEmpleado_Soli   = info.IdEmpleado_Soli;
                    data.IdEstadoAprob     = info.IdEstadoAprob = "APRO";
                    data.IdEmpleado_Apro   = info.IdEmpleado_Apro;
                    data.MotivoAproba      = info.MotivoAproba;
                    data.Observacion       = info.Observacion;
                    data.IdTipoLicencia    = info.IdTipoLicencia;
                    data.EsLicencia        = info.EsLicencia;
                    data.EsPermiso         = info.EsPermiso;
                    data.FechaEntrada      = Convert.ToDateTime(Convert.ToDateTime(info.FechaEntrada).ToShortDateString());
                    data.FechaSalida       = Convert.ToDateTime(Convert.ToDateTime(info.FechaSalida).ToShortDateString());
                    data.HoraSalida        = info.HoraSalida;
                    data.HoraRegreso       = info.HoraRegreso;
                    data.Estado            = info.Estado;
                    data.IdUsuario         = info.IdUsuario;
                    data.Fecha_Transac     = info.Fecha_Transac;
                    data.ip = info.ip;
                    data.Id_Forma_descuento_permiso_Cat = info.Id_Forma_descuento_permiso_Cat;
                    data.FormaRecuperacion = info.FormaRecuperacion = "";
                    db.ro_permiso_x_empleado.Add(data);
                    id = info.IdPermiso;

                    #region novedad
                    if (info.lst_novedad != null)
                    {
                        if (info.lst_novedad.Count > 0)
                        {
                            decimal IdNovedad = odata_novedad.GetIdNovedad(info.IdEmpresa, info.IdEmpleado);

                            foreach (var item in info.lst_novedad)
                            {
                                db.ro_empleado_Novedad.Add(new ro_empleado_Novedad
                                {
                                    IdEmpresa          = info.IdEmpresa,
                                    IdEmpleado         = info.IdEmpleado,
                                    IdNovedad          = IdNovedad,
                                    TotalValor         = info.lst_novedad.Sum(v => v.Valor),
                                    Fecha              = Convert.ToDateTime(info.FechaSalida),
                                    IdNomina_Tipo      = info.IdNomina_Tipo,
                                    IdNomina_TipoLiqui = item.IdNominaLiqui,
                                    IdUsuario          = info.IdUsuario,
                                    Fecha_Transac      = DateTime.Now,
                                    nom_pc             = info.nom_pc,
                                    ip     = info.ip,
                                    Estado = info.Estado,
                                });


                                db.ro_empleado_novedad_det.Add(new ro_empleado_novedad_det
                                {
                                    IdEmpresa         = info.IdEmpresa,
                                    IdNovedad         = IdNovedad,
                                    IdEmpleado        = info.IdEmpleado,
                                    Secuencia         = item.Secuencia = 1,
                                    FechaPago         = item.FechaPago,
                                    Valor             = item.Valor,
                                    EstadoCobro       = "PEN",
                                    Estado            = "A",
                                    Observacion       = item.Observacion,
                                    IdRubro           = calculado.IdRubro_descuento_permiso,
                                    IdCalendario      = item.IdCalendario,
                                    Num_Horas         = item.NumHoras,
                                    IdNomina_tipo     = info.IdNomina_Tipo,
                                    IdNomina_Tipo_Liq = item.IdNominaLiqui,
                                });
                                db.ro_permiso_x_empleado_x_novedad.Add(new ro_permiso_x_empleado_x_novedad
                                {
                                    IdEmpresa      = info.IdEmpresa,
                                    IdEmpleado     = info.IdEmpleado,
                                    IdPermiso      = info.IdPermiso,
                                    IdEmpresa_nov  = info.IdEmpresa,
                                    IdEmpleado_nov = info.IdEmpleado,
                                    IdNomina_Tipo  = info.IdNomina_Tipo,

                                    IdNovedad   = IdNovedad,
                                    Observacion = info.Observacion,
                                });
                                IdNovedad++;
                            }
                        }
                    }
                    #endregion
                    db.SaveChanges();

                    string sql = "update Fj_servindustrias.ro_marcaciones_x_empleado_x_incidentes_falt_Perm set id_catalogo_Cat='PER' where IdEmpresa='" + info.IdEmpresa + "' and IdEmpleado='" + info.IdEmpleado + "' and es_fecha_registro between '" + Convert.ToDateTime(info.FechaSalida).ToString("dd-MM-yyyy") + "' and '" + Convert.ToDateTime(info.FechaEntrada).ToString("dd-MM-yyyy") + "'";

                    db.Database.ExecuteSqlCommand(sql);
                }



                return(true);
            }
            catch (DbEntityValidationException 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());
            }
        }
示例#5
0
        public List <ROL_021_Info> get_list(int IdEmpresa, int IdNomina, int IdNominaTipo, int IdPeriodo,
                                            int IdSucursal, int IdDivision, int IdArea, string tipoRubro)
        {
            try
            {
                ro_rubros_calculados_Data oda_rubro_calculados = new ro_rubros_calculados_Data();
                var info_rub_calculados = oda_rubro_calculados.get_info(IdEmpresa);
                info_rub_calculados.IdRubro_bono_x_antiguedad = "70";
                int IdSucursalInicio = IdSucursal;
                int IdSucursalFin    = IdSucursal == 0 ? 9999 : IdSucursal;

                int IdAreaInicio = IdArea;
                int IdAreaFin    = IdArea == 0 ? 9999 : IdArea;

                int IdDivisionInicio = IdDivision;
                int IdDivisionFin    = IdDivision == 0 ? 9999 : IdDivision;

                List <ROL_021_Info> Lista = new List <ROL_021_Info>();
                using (Entities_reportes Context = new Entities_reportes())

                {
                    if (tipoRubro == "E")
                    {
                        Lista = (from q in Context.VWROL_021
                                 where q.IdEmpresa == IdEmpresa &&
                                 q.IdPeriodo == IdPeriodo &&
                                 q.IdDivisionEmpleado >= IdDivisionInicio &&
                                 q.IdDivisionEmpleado <= IdDivisionFin &&
                                 q.IdAreaEmpleado >= IdAreaInicio &&
                                 q.IdAreaEmpleado <= IdAreaFin &&
                                 IdSucursalInicio <= q.IdSucursal && q.IdSucursal <= IdSucursalFin &&
                                 q.IdNominaTipo == IdNomina &&
                                 q.IdNominaTipoLiqui == IdNominaTipo &&
                                 (q.Valor > 0 ||
                                  q.IdRubro == info_rub_calculados.IdRubro_DIII ||
                                  q.IdRubro == info_rub_calculados.IdRubro_DIV ||
                                  q.IdRubro == info_rub_calculados.IdRubro_fondo_reserva) &&
                                 (q.IdRubro == info_rub_calculados.IdRubro_anticipo || q.IdRubro == info_rub_calculados.IdRubro_tot_egr || q.ru_tipo == "E")
                                 select new ROL_021_Info
                        {
                            IdEmpresa = q.IdEmpresa,
                            IdRol = q.IdRol,
                            IdSucursal = q.IdSucursal,
                            IdNominaTipo = q.IdNominaTipo,
                            IdNominaTipoLiqui = q.IdNominaTipoLiqui,
                            IdPeriodo = q.IdPeriodo,
                            IdRubro = q.IdRubro,
                            Orden = q.Orden,
                            Valor = q.Valor,
                            rub_visible_reporte = q.rub_visible_reporte,
                            Observacion = q.Observacion,
                            ru_descripcion = q.ru_descripcion,
                            pe_FechaFin = q.pe_FechaFin,
                            pe_FechaIni = q.pe_FechaIni,
                            ru_tipo = q.ru_tipo,
                            rub_codigo = q.rub_codigo,
                            ru_codRolGen = q.ru_codRolGen,
                            ca_descripcion = q.ca_descripcion,
                            em_codigo = q.em_codigo,
                            IdEmpleado = q.IdEmpleado,
                            pe_cedulaRuc = q.pe_cedulaRuc,
                            pe_nombreCompleto = q.pe_nombreCompleto,
                            IdArea = q.IdArea,
                            IdDivisionEmpleado = q.IdDivisionEmpleado,
                            Descripcion = q.Descripcion,
                            rub_grupo = q.rub_grupo,
                            Dias = q.Dias,
                            AreaEmpleado = q.AreaEmpleado,
                            Division = q.Division,
                            su_Descripcion = q.Su_Descripcion,
                            IdAreaEmpleado = q.IdAreaEmpleado,
                            IDividion = q.IDividion,
                            NominaTipoLiqui = q.NominaTipoLiqui,
                            Porcentaje = q.Porcentaje,
                            se_distribuye = q.se_distribuye,
                            NominaTipo = q.NominaTipo,
                        }).ToList();
                    }
                    else if (tipoRubro == "I")
                    {
                        Lista = (from q in Context.VWROL_021
                                 where q.IdEmpresa == IdEmpresa &&
                                 q.IdPeriodo == IdPeriodo &&
                                 q.IdDivisionEmpleado >= IdDivisionInicio &&
                                 q.IdDivisionEmpleado <= IdDivisionFin &&
                                 q.IdAreaEmpleado >= IdAreaInicio &&
                                 q.IdAreaEmpleado <= IdAreaFin &&
                                 IdSucursalInicio <= q.IdSucursal && q.IdSucursal <= IdSucursalFin &&
                                 q.IdNominaTipo == IdNomina &&
                                 q.IdNominaTipoLiqui == IdNominaTipo &&
                                 (q.Valor > 0 ||
                                  q.IdRubro == info_rub_calculados.IdRubro_DIII ||
                                  q.IdRubro == info_rub_calculados.IdRubro_DIV ||
                                  q.IdRubro == info_rub_calculados.IdRubro_fondo_reserva
                                 ) &&
                                 (q.ru_tipo == "I"
                                  //|| q.IdRubro == info_rub_calculados.IdRubro_tot_ing
                                 ) &&
                                 q.IdRubro != info_rub_calculados.IdRubro_tot_ing
                                 select new ROL_021_Info
                        {
                            IdEmpresa = q.IdEmpresa,
                            IdRol = q.IdRol,
                            IdSucursal = q.IdSucursal,
                            IdNominaTipo = q.IdNominaTipo,
                            IdNominaTipoLiqui = q.IdNominaTipoLiqui,
                            IdPeriodo = q.IdPeriodo,
                            IdRubro = q.IdRubro,
                            Orden = q.Orden,
                            Valor = q.Valor,
                            rub_visible_reporte = q.rub_visible_reporte,
                            Observacion = q.Observacion,
                            ru_descripcion = q.ru_descripcion,
                            pe_FechaFin = q.pe_FechaFin,
                            pe_FechaIni = q.pe_FechaIni,
                            ru_tipo = q.ru_tipo,
                            rub_codigo = q.rub_codigo,
                            ru_codRolGen = q.ru_codRolGen,
                            ca_descripcion = q.ca_descripcion,
                            em_codigo = q.em_codigo,
                            IdEmpleado = q.IdEmpleado,
                            pe_cedulaRuc = q.pe_cedulaRuc,
                            pe_nombreCompleto = q.pe_nombreCompleto,
                            IdArea = q.IdArea,
                            IdDivisionEmpleado = q.IdDivisionEmpleado,
                            Descripcion = q.Descripcion,
                            rub_grupo = q.rub_grupo,
                            Dias = q.Dias,
                            AreaEmpleado = q.AreaEmpleado,
                            Division = q.Division,
                            su_Descripcion = q.Su_Descripcion,
                            IdAreaEmpleado = q.IdAreaEmpleado,
                            IDividion = q.IDividion,
                            NominaTipoLiqui = q.NominaTipoLiqui,
                            Porcentaje = q.Porcentaje,
                            se_distribuye = q.se_distribuye,
                            NominaTipo = q.NominaTipo,
                        }).ToList();
                    }
                    else
                    {
                        Lista = (from q in Context.VWROL_021
                                 where q.IdEmpresa == IdEmpresa &&
                                 q.IdPeriodo == IdPeriodo &&
                                 q.IdDivisionEmpleado >= IdDivisionInicio &&
                                 q.IdDivisionEmpleado <= IdDivisionFin &&
                                 q.IdAreaEmpleado >= IdAreaInicio &&
                                 q.IdAreaEmpleado <= IdAreaFin &&
                                 IdSucursalInicio <= q.IdSucursal && q.IdSucursal <= IdSucursalFin &&
                                 q.IdNominaTipo == IdNomina &&
                                 q.IdNominaTipoLiqui == IdNominaTipo &&
                                 (q.Valor > 0 ||
                                  q.IdRubro == info_rub_calculados.IdRubro_DIII ||
                                  q.IdRubro == info_rub_calculados.IdRubro_DIV ||
                                  q.IdRubro == info_rub_calculados.IdRubro_fondo_reserva) &&
                                 (
                                     (
                                         q.IdRubro == info_rub_calculados.IdRubro_tot_pagar ||
                                         q.IdRubro == info_rub_calculados.IdRubro_tot_ing ||
                                         q.IdRubro == info_rub_calculados.IdRubro_tot_egr
                                     ) ||
                                     (q.ru_tipo == "I" || q.ru_tipo == "E")
                                 )
                                 select new ROL_021_Info
                        {
                            IdEmpresa = q.IdEmpresa,
                            IdRol = q.IdRol,
                            IdSucursal = q.IdSucursal,
                            IdNominaTipo = q.IdNominaTipo,
                            IdNominaTipoLiqui = q.IdNominaTipoLiqui,
                            IdPeriodo = q.IdPeriodo,
                            IdRubro = q.IdRubro,
                            Orden = q.Orden,
                            Valor = q.Valor,
                            rub_visible_reporte = q.rub_visible_reporte,
                            Observacion = q.Observacion,
                            ru_descripcion = q.ru_descripcion,
                            pe_FechaFin = q.pe_FechaFin,
                            pe_FechaIni = q.pe_FechaIni,
                            ru_tipo = q.ru_tipo,
                            rub_codigo = q.rub_codigo,
                            ru_codRolGen = q.ru_codRolGen,
                            ca_descripcion = q.ca_descripcion,
                            em_codigo = q.em_codigo,
                            IdEmpleado = q.IdEmpleado,
                            pe_cedulaRuc = q.pe_cedulaRuc,
                            pe_nombreCompleto = q.pe_nombreCompleto,
                            IdArea = q.IdArea,
                            IdDivisionEmpleado = q.IdDivisionEmpleado,
                            Descripcion = q.Descripcion,
                            rub_grupo = q.rub_grupo,
                            Dias = q.Dias,
                            AreaEmpleado = q.AreaEmpleado,
                            Division = q.Division,
                            su_Descripcion = q.Su_Descripcion,
                            IdAreaEmpleado = q.IdAreaEmpleado,
                            IDividion = q.IDividion,
                            NominaTipoLiqui = q.NominaTipoLiqui,
                            Porcentaje = q.Porcentaje,
                            se_distribuye = q.se_distribuye,
                            NominaTipo = q.NominaTipo,
                        }).ToList();
                    }
                }
                return(Lista);
            }
            catch (Exception)
            {
                throw;
            }
        }