Example #1
0
        private ba_Archivo_Transferencia_Info Get_archivo(ro_Archivos_Bancos_Generacion_Info info_)
        {
            try
            {
                tb_Calendario_Bus  bus_calendario  = new tb_Calendario_Bus();
                tb_Calendario_Info info_calendario = new tb_Calendario_Info();
                info_calendario                  = bus_calendario.Get_Info_Calendario(Convert.ToDateTime(info_.pe_FechaIni));
                lista_archivo                    = new List <ba_Archivo_Transferencia_Det_Info>();
                info_archivo                     = new ba_Archivo_Transferencia_Info();
                info_archivo.IdEmpresa           = info_.IdEmpresa;
                info_archivo.IdArchivo           = 0;
                info_archivo.cod_archivo         = info_.cod_archivo;
                info_archivo.IdBanco             = Convert.ToInt32(info_.IdBanco);
                info_archivo.IdProceso_bancario  = info_.IdProceso_Bancario;
                info_archivo.Origen_Archivo      = "RRHH";
                info_archivo.Cod_Empresa         = info_.Cod_Empresa;
                info_archivo.Nom_Archivo         = info_.Nom_Archivo;
                info_archivo.Fecha               = Convert.ToDateTime(info_.Fecha_Genera);
                info_archivo.Archivo             = info_.Archivo;
                info_archivo.Estado              = true;
                info_archivo.IdEstadoArchivo_cat = "FIL_EMITID";
                info_archivo.IdMotivoArchivo_cat = "MTFI_TRNS";
                info_archivo.IdUsuario           = info_.UsuarioIngresa;
                info_archivo.Fecha_Transac       = DateTime.Now;

                info_archivo.Observacion = info_.Observacion + " de" + info_calendario.NombreMes.ToUpper();



                foreach (var item in info_.oListRo_archivos_bancos_generacion_x_empleado_Info)
                {
                    ba_Archivo_Transferencia_Det_Info info_det = new ba_Archivo_Transferencia_Det_Info();
                    info_det.IdEmpresa            = info_archivo.IdEmpresa;
                    info_det.IdProceso_bancario   = info_archivo.IdProceso_bancario;
                    info_det.IdEstadoRegistro_cat = "REG_EMITI";
                    info_det.Estado            = true;
                    info_det.Valor             = Convert.ToDecimal(item.Valor);
                    info_det.IdEmpresaNomina   = info_archivo.IdEmpresa;
                    info_det.IdNominaTipo      = info_.IdNomina;
                    info_det.IdNominaTipoLiqui = info_.IdNominaTipo;
                    info_det.IdPeriodo         = info_.IdPeriodo;
                    info_det.IdEmpleado        = Convert.ToInt32(item.IdEmpleado);
                    info_det.IdRubro           = "950";
                    info_det.IdRubro           = null;

                    lista_archivo.Add(info_det);
                }
                info_archivo.Lst_Archivo_Transferencia_Det = lista_archivo;
                return(info_archivo);
            }
            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("", "pu_GenerarArchivoBolivarianoSAT", ex.Message), ex)
                      {
                          EntityType = typeof(ro_Archivos_Bancos_Generacion_Bus)
                      };
            }
        }
        public List <ro_marcaciones_x_empleado_Info> Get_List_Marcaciones(List <ro_marcaciones_x_Jornada_Info> lista, int IdPeriodo)
        {
            try
            {
                int secuencia = 0;
                tb_Calendario_Info InfoCalendario = new tb_Calendario_Info();
                tb_Calendario_Bus  Bus_Calendario = new tb_Calendario_Bus();
                List <ro_marcaciones_x_empleado_Info> lista_marcaciones = new List <ro_marcaciones_x_empleado_Info>();
                foreach (var item in lista)
                {
                    InfoCalendario = Bus_Calendario.Get_Info_Calendario(Convert.ToDateTime(item.es_fechaRegistro));

                    ro_marcaciones_x_empleado_Info info;
                    if (((TimeSpan)item.es_Hora_ingreso_jornada1).Hours > 0)// ingreso primera jornada
                    {
                        secuencia                         = secuencia + 1;
                        info                              = new Info.Roles.ro_marcaciones_x_empleado_Info();
                        info.IdEmpresa                    = param.IdEmpresa;
                        info.IdNomina_Tipo                = item.Id_nomina_Tipo;
                        info.IdRegistro                   = "IN1-" + Convert.ToDateTime(item.es_fechaRegistro).Day.ToString() + "/" + Convert.ToDateTime(item.es_fechaRegistro).Month.ToString() + "/" + Convert.ToDateTime(item.es_fechaRegistro).Year.ToString();
                        info.IdEmpleado                   = item.IdEmpleado;
                        info.IdTipoMarcaciones            = "IN1";
                        info.secuencia                    = secuencia;
                        info.es_Hora                      = item.es_Hora_ingreso_jornada1;
                        info.es_fechaRegistro             = item.es_fechaRegistro;
                        info.es_anio                      = Convert.ToDateTime(item.es_fechaRegistro).Year;
                        info.es_mes                       = Convert.ToDateTime(item.es_fechaRegistro).Month;
                        info.es_semana                    = InfoCalendario.Semana_x_anio;
                        info.es_sdia                      = InfoCalendario.NombreDia;
                        info.es_idDia                     = (int)Convert.ToDateTime(item.es_fechaRegistro).DayOfWeek;
                        info.es_dia                       = (int)Convert.ToDateTime(item.es_fechaRegistro).DayOfWeek;
                        info.es_EsActualizacion           = "N";
                        info.IdTipoMarcaciones_Biometrico = "IN1";
                        info.Observacion                  = "Importadas por proceso del sistema";
                        info.Estado                       = "A";
                        info.IdUsuario                    = param.IdUsuario;
                        info.Fecha_Transac                = DateTime.Now;
                        info.IdPeriodo                    = IdPeriodo;
                        lista_marcaciones.Add(info);
                    }



                    if (((TimeSpan)item.es_Hora_salida_jornada1).Hours > 0)// ingreso primera jornada
                    {
                        secuencia                         = secuencia + 1;
                        info                              = new Info.Roles.ro_marcaciones_x_empleado_Info();
                        info.IdEmpresa                    = param.IdEmpresa;
                        info.IdNomina_Tipo                = item.Id_nomina_Tipo;
                        info.IdRegistro                   = "OUT1-" + Convert.ToDateTime(item.es_fechaRegistro).Day.ToString() + "/" + Convert.ToDateTime(item.es_fechaRegistro).Month.ToString() + "/" + Convert.ToDateTime(item.es_fechaRegistro).Year.ToString();
                        info.IdEmpleado                   = item.IdEmpleado;
                        info.IdTipoMarcaciones            = "OUT1";
                        info.secuencia                    = secuencia;
                        info.es_Hora                      = item.es_Hora_salida_jornada1;
                        info.es_fechaRegistro             = item.es_fechaRegistro;
                        info.es_anio                      = Convert.ToDateTime(item.es_fechaRegistro).Year;
                        info.es_mes                       = Convert.ToDateTime(item.es_fechaRegistro).Month;
                        info.es_semana                    = InfoCalendario.Semana_x_anio;
                        info.es_sdia                      = InfoCalendario.NombreDia;
                        info.es_idDia                     = (int)Convert.ToDateTime(item.es_fechaRegistro).DayOfWeek;
                        info.es_dia                       = (int)Convert.ToDateTime(item.es_fechaRegistro).DayOfWeek;
                        info.es_EsActualizacion           = "N";
                        info.IdTipoMarcaciones_Biometrico = "OUT1";
                        info.Observacion                  = "Importadas por proceso del sistema";
                        info.Estado                       = "A";
                        info.IdUsuario                    = param.IdUsuario;
                        info.Fecha_Transac                = DateTime.Now;
                        info.IdPeriodo                    = IdPeriodo;
                        lista_marcaciones.Add(info);
                    }



                    if (((TimeSpan)item.es_Hora_ingreso_jornada2).Hours > 0)// ingreso primera jornada
                    {
                        secuencia                         = secuencia + 1;
                        info                              = new Info.Roles.ro_marcaciones_x_empleado_Info();
                        info.IdEmpresa                    = param.IdEmpresa;
                        info.IdNomina_Tipo                = item.Id_nomina_Tipo;
                        info.IdRegistro                   = "IN2-" + Convert.ToDateTime(item.es_fechaRegistro).Day.ToString() + "/" + Convert.ToDateTime(item.es_fechaRegistro).Month.ToString() + "/" + Convert.ToDateTime(item.es_fechaRegistro).Year.ToString();
                        info.IdEmpleado                   = item.IdEmpleado;
                        info.IdTipoMarcaciones            = "IN2";
                        info.secuencia                    = secuencia;
                        info.es_Hora                      = item.es_Hora_ingreso_jornada2;
                        info.es_fechaRegistro             = item.es_fechaRegistro;
                        info.es_anio                      = Convert.ToDateTime(item.es_fechaRegistro).Year;
                        info.es_mes                       = Convert.ToDateTime(item.es_fechaRegistro).Month;
                        info.es_semana                    = InfoCalendario.Semana_x_anio;
                        info.es_sdia                      = InfoCalendario.NombreDia;
                        info.es_idDia                     = (int)Convert.ToDateTime(item.es_fechaRegistro).DayOfWeek;
                        info.es_dia                       = (int)Convert.ToDateTime(item.es_fechaRegistro).DayOfWeek;
                        info.es_EsActualizacion           = "N";
                        info.IdTipoMarcaciones_Biometrico = "IN2";
                        info.Observacion                  = "Importadas por proceso del sistema";
                        info.Estado                       = "A";
                        info.IdUsuario                    = param.IdUsuario;
                        info.Fecha_Transac                = DateTime.Now;
                        info.IdPeriodo                    = IdPeriodo;
                        lista_marcaciones.Add(info);
                    }



                    if (((TimeSpan)item.es_Hora_salida_jornada2).Hours > 0)  // ingreso primera jornada
                    {
                        secuencia                         = secuencia + 1;
                        info                              = new Info.Roles.ro_marcaciones_x_empleado_Info();
                        info.IdEmpresa                    = param.IdEmpresa;
                        info.IdNomina_Tipo                = item.Id_nomina_Tipo;
                        info.IdRegistro                   = "OUT2-" + Convert.ToDateTime(item.es_fechaRegistro).Day.ToString() + "/" + Convert.ToDateTime(item.es_fechaRegistro).Month.ToString() + "/" + Convert.ToDateTime(item.es_fechaRegistro).Year.ToString();
                        info.IdEmpleado                   = item.IdEmpleado;
                        info.IdTipoMarcaciones            = "OUT2";
                        info.secuencia                    = secuencia;
                        info.es_Hora                      = item.es_Hora_salida_jornada2;
                        info.es_fechaRegistro             = item.es_fechaRegistro;
                        info.es_anio                      = Convert.ToDateTime(item.es_fechaRegistro).Year;
                        info.es_mes                       = Convert.ToDateTime(item.es_fechaRegistro).Month;
                        info.es_semana                    = InfoCalendario.Semana_x_anio;
                        info.es_sdia                      = InfoCalendario.NombreDia;
                        info.es_idDia                     = (int)Convert.ToDateTime(item.es_fechaRegistro).DayOfWeek;
                        info.es_dia                       = (int)Convert.ToDateTime(item.es_fechaRegistro).DayOfWeek;
                        info.es_EsActualizacion           = "N";
                        info.IdTipoMarcaciones_Biometrico = "OUT2";
                        info.Observacion                  = "Importadas por proceso del sistema";
                        info.Estado                       = "A";
                        info.IdUsuario                    = param.IdUsuario;
                        info.Fecha_Transac                = DateTime.Now;
                        info.IdPeriodo                    = IdPeriodo;
                        lista_marcaciones.Add(info);
                    }
                }

                return(lista_marcaciones);
            }
            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("", "Get_List_Marcaciones", ex.Message), ex)
                      {
                          EntityType = typeof(ro_marcaciones_x_Jornada_Bus)
                      };
            }
        }