コード例 #1
0
ファイル: DaPeriodos.cs プロジェクト: ecmc64/ProyQtaCat
        public BePeriodos GetPeriodoByAnioMes(BePeriodos pPeriodo)
        {
            var periodo = new BePeriodos();

            try
            {
                string comandoSql = string.Concat(CadenaSelect, @"FROM Periodos WHERE IdEmpresa=@pIdEmpresa AND Anio=@pAnio AND Mes=@pMes");
                var    db         = DatabaseFactory.CreateDatabase(HelperConsultas.CadenaConexion);
                var    cmd        = db.GetSqlStringCommand(comandoSql);

                cmd.Parameters.Add(HelperConsultas.CrearParametro(cmd, "@IdEmpresa", DbType.Guid, pPeriodo.Empresa.IdEmpresa));
                cmd.Parameters.Add(HelperConsultas.CrearParametro(cmd, "@pAnio", DbType.Int32, pPeriodo.Anio));
                cmd.Parameters.Add(HelperConsultas.CrearParametro(cmd, "@pMes", DbType.Int32, pPeriodo.Mes));

                var oReader = db.ExecuteReader(cmd);
                var fila    = 0;

                if (oReader.Read())
                {
                    periodo = CargarEntidad(oReader);
                    fila    = 1;
                }

                periodo.EstadoEntidad = HelperConsultas.SetEstadoEntidad(true, fila, null);
            }
            catch (Exception ex)
            {
                ErrorConsulta         = ex;
                periodo.EstadoEntidad = HelperConsultas.SetEstadoEntidad(false, 0, ex);
            }

            return(periodo);
        }
コード例 #2
0
ファイル: DaPeriodos.cs プロジェクト: ecmc64/ProyQtaCat
        private BePeriodos CargarEntidad(IDataReader pReader)
        {
            var periodo = new BePeriodos();

            try
            {
                periodo.IdPeriodo = HelperConsultas.GetValueSql <Guid>(pReader.GetValue(0));
                periodo.Empresa   = new BeMaestroEmpresa {
                    IdEmpresa = HelperConsultas.GetValueSql <Guid>(pReader.GetValue(1))
                };
                periodo.Anio               = HelperConsultas.GetValueSql <int>(pReader.GetValue(2));
                periodo.Activo             = HelperConsultas.GetValueSql <Boolean>(pReader.GetValue(3));
                periodo.UsuarioCreador     = HelperConsultas.GetValueSql <string>(pReader.GetValue(4));
                periodo.FechaCreacion      = HelperConsultas.GetValueSql <DateTime>(pReader.GetValue(5));
                periodo.UsuarioModificador = HelperConsultas.GetValueSql <string>(pReader.GetValue(6));
                periodo.FechaModificacion  = HelperConsultas.GetValueSql <DateTime>(pReader.GetValue(7));
                periodo.FechaInicio        = HelperConsultas.GetValueSql <DateTime>(pReader.GetValue(8));
                periodo.FechaFin           = HelperConsultas.GetValueSql <DateTime>(pReader.GetValue(9));
                periodo.SemanaInicio       = HelperConsultas.GetValueSql <int>(pReader.GetValue(10));
                periodo.SemanaFin          = HelperConsultas.GetValueSql <int>(pReader.GetValue(11));
                periodo.Mes = HelperConsultas.GetValueSql <int>(pReader.GetValue(12));
            }
            catch (Exception ex)
            {
                periodo       = null;
                ErrorConsulta = ex;
            }
            return(periodo);
        }
コード例 #3
0
ファイル: BlPeriodos.cs プロジェクト: ecmc64/ProyQtaCat
        public BePeriodos GrabarPeriodos(BePeriodos pPeriodo, bool pGrabar)
        {
            var oDaPeriodo = new DaPeriodos();

            pPeriodo   = pGrabar ? oDaPeriodo.InsPeriodos(pPeriodo) : oDaPeriodo.UpdPeriodos(pPeriodo);
            oDaPeriodo = null;
            return(pPeriodo);
        }
コード例 #4
0
ファイル: ServicioPlanilla.cs プロジェクト: ecmc64/ProyQtaCat
        public BePeriodos GrabarPeriodos(BePeriodos pPeriodo, bool pGrabar)
        {
            var oBlPeriodos = new BlPeriodos();

            pPeriodo    = oBlPeriodos.GrabarPeriodos(pPeriodo, pGrabar);
            oBlPeriodos = null;
            return(pPeriodo);
        }
コード例 #5
0
ファイル: BlPeriodos.cs プロジェクト: ecmc64/ProyQtaCat
        public bool ValidarImportacion(BePeriodos pPeriodo)
        {
            var oDaPeriodo = new DaPeriodos();

            var periodo = oDaPeriodo.GetPeriodoByAnioMes(pPeriodo);

            oDaPeriodo = null;
            return(true);
        }
コード例 #6
0
ファイル: DaPeriodos.cs プロジェクト: ecmc64/ProyQtaCat
 private void CargarParametros(DbCommand pCmd, BePeriodos pPeriodo)
 {
     pCmd.Parameters.Add(HelperConsultas.CrearParametro(pCmd, "@pIdPeriodo", DbType.Guid, pPeriodo.IdPeriodo));
     pCmd.Parameters.Add(HelperConsultas.CrearParametro(pCmd, "@IdEmpresa", DbType.Guid, pPeriodo.Empresa.IdEmpresa));
     pCmd.Parameters.Add(HelperConsultas.CrearParametro(pCmd, "@pAnio", DbType.Int32, pPeriodo.Anio));
     pCmd.Parameters.Add(HelperConsultas.CrearParametro(pCmd, "@pActivo", DbType.Boolean, pPeriodo.Activo));
     pCmd.Parameters.Add(HelperConsultas.CrearParametro(pCmd, "@pUsuarioCreador", DbType.String, pPeriodo.UsuarioCreador));
     pCmd.Parameters.Add(HelperConsultas.CrearParametro(pCmd, "@pFechaCreacion", DbType.DateTime, pPeriodo.FechaCreacion));
     pCmd.Parameters.Add(HelperConsultas.CrearParametro(pCmd, "@pUsuarioModificador", DbType.String, pPeriodo.UsuarioModificador));
     pCmd.Parameters.Add(HelperConsultas.CrearParametro(pCmd, "@pFechaModificacion", DbType.DateTime, pPeriodo.FechaModificacion));
     pCmd.Parameters.Add(HelperConsultas.CrearParametro(pCmd, "@pFechaInicio", DbType.DateTime, pPeriodo.FechaInicio));
     pCmd.Parameters.Add(HelperConsultas.CrearParametro(pCmd, "@pFechaFin", DbType.DateTime, pPeriodo.FechaFin));
     pCmd.Parameters.Add(HelperConsultas.CrearParametro(pCmd, "@pSemanaInicio", DbType.Int32, pPeriodo.SemanaInicio));
     pCmd.Parameters.Add(HelperConsultas.CrearParametro(pCmd, "@pSemanaFin", DbType.Int32, pPeriodo.SemanaFin));
     pCmd.Parameters.Add(HelperConsultas.CrearParametro(pCmd, "@pMes", DbType.Int32, pPeriodo.Mes));
 }
コード例 #7
0
ファイル: DaPeriodos.cs プロジェクト: ecmc64/ProyQtaCat
        public BePeriodos InsPeriodos(BePeriodos pPeriodo)
        {
            try
            {
                var comandoSql =
                    string.Concat(
                        "INSERT INTO dbo.Periodos ( IdPeriodo, IdEmpresa, Anio, Activo, UsuarioCreador, FechaCreacion, UsuarioModificador, FechaModificacion, FechaInicio, FechaFin,SemanaInicio, SemanaFin, Mes) ",
                        "VALUES  ( @pIdPeriodo, @IdEmpresa, @pAnio, @pActivo, @pUsuarioCreador, @pFechaCreacion, @pUsuarioModificador,@pFechaModificacion,@pFechaInicio, @pFechaFin, @pSemanaInicio, @pSemanaFin, @pMes)");

                var db  = DatabaseFactory.CreateDatabase(HelperConsultas.CadenaConexion);
                var cmd = db.GetSqlStringCommand(comandoSql);

                CargarParametros(cmd, pPeriodo);

                var filas = db.ExecuteNonQuery(cmd);
                pPeriodo.EstadoEntidad = HelperConsultas.SetEstadoEntidad(true, filas, null);
            }
            catch (Exception ex)
            {
                ErrorConsulta          = ex;
                pPeriodo.EstadoEntidad = HelperConsultas.SetEstadoEntidad(false, 0, ex);
            }
            return(pPeriodo);
        }
コード例 #8
0
ファイル: DaPeriodos.cs プロジェクト: ecmc64/ProyQtaCat
        public BePeriodos UpdPeriodos(BePeriodos pPeriodo)
        {
            try
            {
                var comandoSql =
                    string.Concat(
                        "UPDATE dbo.Periodos ",
                        "SET Anio=@pAnio, ",
                        "   Activo=@pActivo, ",
                        "	UsuarioCreador=@pUsuarioCreador, ",
                        "	FechaCreacion=@pFechaCreacion, ",
                        "	UsuarioModificador=@pUsuarioModificador, ",
                        "	FechaModificacion=@pFechaModificacion, ",
                        "   FechaInicio=@pFechaInicio, ",
                        "	FechaFin=@pFechaFin, ",
                        "	SemanaInicio=@pSemanaInicio, ",
                        "	SemanaFin=@pSemanaFin, ",
                        "	Mes=@pMes ",
                        "WHERE IdPeriodo=@pIdPeriodo ",
                        "   AND IdEmpresa=@pIdEmpresa ");

                var db  = DatabaseFactory.CreateDatabase(HelperConsultas.CadenaConexion);
                var cmd = db.GetSqlStringCommand(comandoSql);

                CargarParametros(cmd, pPeriodo);

                var filas = db.ExecuteNonQuery(cmd);
                pPeriodo.EstadoEntidad = HelperConsultas.SetEstadoEntidad(true, filas, null);
            }
            catch (Exception ex)
            {
                ErrorConsulta          = ex;
                pPeriodo.EstadoEntidad = HelperConsultas.SetEstadoEntidad(false, 0, ex);
            }
            return(pPeriodo);
        }
コード例 #9
0
        void ImportarPagos()
        {
            _rutaArchivo = txtRuta.Text.Trim();

            using (var proxy = new  ProxyWeb.ServicioPlanillaClient(GlobalVars.PuertoWcf))
            {
                var listadoObras = proxy.ConsultarObrasLista(GlobalVars.Empresa);
                //var listadoObreros = proxy.ConsultarCategoriaObreroLista(GlobalVars.Empresa);
                var listadoPeriodosSistema = proxy.ConsultarPeriodoLista(GlobalVars.Empresa);
                var objPeriodo             = new BePeriodos();

                foreach (var obra in listadoObras) //Por cada obra
                {
                    if (ExisteArchivo(obra.CodigoAntiguo))
                    {
                        var objLeerMdb             = new Clases.LeerMdb(string.Concat(_rutaArchivo, "WPAG", obra.CodigoAntiguo));
                        var listaSemanasTrabajadas = objLeerMdb.ListarPeriodos(obra.CodigoAntiguo);

                        foreach (var periodo in listaSemanasTrabajadas) //Por cada registro de semanas definidas por cada mes
                        {
                            if (!SincronizarPeriodoSistema(periodo, listadoPeriodosSistema, objPeriodo))
                            {
                                objPeriodo = proxy.GrabarPeriodos(objPeriodo, true);  //Sincroniza periodos del sistema en la importacion
                                listadoPeriodosSistema.Add(objPeriodo);
                            }

                            for (var semana = objPeriodo.SemanaInicio; semana <= objPeriodo.SemanaFin; semana++) // Recorrido de inicio a fin del mes por semanas
                            {
                                var listaCodigoTrabajadorSemana = objLeerMdb.ListarCodigoSemanaDelObrero(semana.ToString("00"), objPeriodo.Anio.ToString("####"));
                                var listaPagoTrabajadoresSemana = objLeerMdb.ListarPagoObreroSemana(semana.ToString("00"), objPeriodo.Anio.ToString("####"));

                                foreach (var codigoEquivalencia in listaCodigoTrabajadorSemana) //Recorriendo tabla de equivalencias de codigo y trabajadores para importar
                                {
                                    var objTrabSemana =
                                        listaPagoTrabajadoresSemana.Find(
                                            x => x.CodigoObra == codigoEquivalencia.CodigoSemana);

                                    var objPeriodosDeObra = new BePeriodosDeObras
                                    {
                                        Empresa = GlobalVars.Empresa,
                                        Obra    = obra,
                                        Periodo = objPeriodo
                                    };
                                    objPeriodosDeObra.UsuarioCreador = objPeriodosDeObra.UsuarioModificador = GlobalVars.Usuario;
                                    objPeriodosDeObra.FechaCreacion  = objPeriodosDeObra.FechaModificacion = DateTime.Now;

                                    objPeriodosDeObra.Obrero = new BeMaestroObrero
                                    {
                                        CodigoAlterno = codigoEquivalencia.Codigo,
                                        Empresa       = GlobalVars.Empresa
                                    };
                                    objPeriodosDeObra.Jornal         = objTrabSemana.Jornal;
                                    objPeriodosDeObra.Dominical      = objTrabSemana.Dominical;
                                    objPeriodosDeObra.DescansoMedico = objTrabSemana.DescansoMedico;
                                    objPeriodosDeObra.Feriado        = objTrabSemana.Feriado;
                                    objPeriodosDeObra.Buc            = objTrabSemana.Buc;
                                    objPeriodosDeObra.Altura         = objTrabSemana.Altura;
                                    objPeriodosDeObra.Agua           = objTrabSemana.Agua;
                                    objPeriodosDeObra.Pasaje         = objTrabSemana.Pasaje;
                                    objPeriodosDeObra.Escolar        = objTrabSemana.Escolar;
                                    objPeriodosDeObra.Movilidad      = objTrabSemana.Movilidad;
                                    objPeriodosDeObra.HoraExtra      = objTrabSemana.HoraExtra;
                                    objPeriodosDeObra.Reintegro      = objTrabSemana.Reintegro;
                                    objPeriodosDeObra.Vacaciones     = objTrabSemana.Vacaciones;
                                    objPeriodosDeObra.Gratificacion  = objTrabSemana.Gratificacion;
                                    objPeriodosDeObra.Viatico        = objTrabSemana.Viatico;
                                    objPeriodosDeObra.Sepelio        = objTrabSemana.Sepelio;
                                    objPeriodosDeObra.Altitud        = objTrabSemana.Altitud;
                                    objPeriodosDeObra.Ley29351       = objTrabSemana.Ley29351;


                                    //objPeriodosDeObra = proxy.ImportarPagosDeObras(objPeriodosDeObra);

                                    //Evaluar si existe error
                                }
                            }
                        }
                    }
                    else
                    {
                        MessageBox.Show(string.Format("No existe archivo para {0}", obra.DireccionObra), @"Buscar Archivo Obra", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
            }
        }
コード例 #10
0
        private bool SincronizarPeriodoSistema(BeImpPeriodos pPeriodoImportado, List <BePeriodos> pListaPeriodosSistema, BePeriodos pObjPeriodo)
        {
            var insUpdPeriodo = pListaPeriodosSistema.Exists(
                x =>
                x.Anio == pPeriodoImportado.Anio && x.Mes == pPeriodoImportado.Mes &&
                x.SemanaInicio == pPeriodoImportado.SemanaInicio);

            if (insUpdPeriodo)
            {
                pObjPeriodo = pListaPeriodosSistema.Find(x =>
                                                         x.Anio == pPeriodoImportado.Anio && x.Mes == pPeriodoImportado.Mes &&
                                                         x.SemanaInicio == pPeriodoImportado.SemanaInicio);
            }
            else
            {
                pObjPeriodo.IdPeriodo         = new Guid();
                pObjPeriodo.Empresa           = GlobalVars.Empresa;
                pObjPeriodo.Activo            = true;
                pObjPeriodo.Anio              = pPeriodoImportado.Anio;
                pObjPeriodo.FechaCreacion     = DateTime.Now;
                pObjPeriodo.FechaModificacion = DateTime.Now;
                pObjPeriodo.Mes                = pPeriodoImportado.Mes;
                pObjPeriodo.UsuarioCreador     = GlobalVars.Usuario;
                pObjPeriodo.UsuarioModificador = GlobalVars.Usuario;
                pObjPeriodo.SemanaInicio       = pPeriodoImportado.SemanaInicio;
                pObjPeriodo.SemanaFin          = pPeriodoImportado.SemanaFin;
            }
            return(insUpdPeriodo);
        }