public BonoConsulta(DataRow dr)
 {
     id = (int)dr["bco_id"];
     afiliado = new Afiliado(dr);
     fecha = (DateTime)dr["bco_fecha"];
     fechaCompra = (DateTime)dr["bco_fechaCompa"];
     compra = new Compra((int)dr["bfa_compra"]);
 }
 public BonoFarmacia(DataRow dr)
 {
     id = (int)dr["bfa_id"];
     atencion = (dr["bfa_atencion"] == DBNull.Value) ? -1 : (int)dr["bfa_atencion"];
     afiliado = (dr["bfa_afiliado"] == DBNull.Value) ? null : new Afiliado((int)dr["bfa_afiliado"]);
     fechaImpresion = (DateTime)dr["[bfa_fechaImpresion]"];
     fechaVencimiento = (DateTime)dr["bfa_fechaVencimiento"];
     compra = new Compra((int)dr["bfa_compra"]);
 }
        public BonoFarmacia(int _id)
        {
            //El habilitado funciona a su vez de consumido o no consumido
            DataTable dt = DB.ExecuteReader("SELECT * FROM " + DB.schema + "bonoFarmacia "+
                                                     "JOIN " + DB.schema + "compra ON cmp_id=bfa_compra " +
                                                     "JOIN " + DB.schema + "vAfiliado ON afi_id=cmp_afiliado WHERE bfa_habilitado=1 AND bfa_id=" + _id);

            if (dt.Rows.Count == 0) //Como es PK y FK tiene que existir, y solo 1
                throw new NoTrajoNadaExcep();
            DataRow dr = dt.Rows[0];

            id = (int)dr["bfa_id"];
            atencion = (dr["bfa_atencion"] == DBNull.Value) ? -1 : (int)dr["bfa_atencion"];
            afiliado = (dr["bfa_afiliado"] == DBNull.Value) ? null : new Afiliado((int)dr["bfa_afiliado"]);
            fechaImpresion = (DateTime)dr["bfa_fechaImpresion"];
            fechaVencimiento = (DateTime)dr["bfa_fechaVencimiento"];
            compra = new Compra(dr);
        }
示例#4
0
        public BonoConsulta(int codigo)
        {
            Id = codigo;
            List<SqlParameter> ListaParametros = new List<SqlParameter>();
            ListaParametros.Add(new SqlParameter("@codigo", codigo));

            SqlDataReader lector = Clases.BaseDeDatosSQL.ObtenerDataReader("SELECT * FROM mario_killers.BonoConsultaYcompra where codigo=@codigo", "T", ListaParametros);

            if (lector.HasRows)
            {
                lector.Read();
                Codigo_Plan = (int)(decimal)lector["plan_medico"];
                Codigo_Compra = (int)(decimal)lector["compra"];
                Compra unaCompra = new Compra(Codigo_Compra);
                Grupo_Flia = (int)(decimal)lector["grupo"];
                Activo = (bool)lector["activo"];
            }
        }
示例#5
0
        public BonoFarmacia(int codigo)
        {
            Id = codigo;
            List<SqlParameter> ListaParametros = new List<SqlParameter>();
            ListaParametros.Add(new SqlParameter("@codigo", codigo));

            SqlDataReader lector = Clases.BaseDeDatosSQL.ObtenerDataReader("SELECT * FROM mario_killers.BonoYcompra where codigo=@codigo", "T", ListaParametros);

            if (lector.HasRows)
            {
                lector.Read();
                Codigo_Plan = (int)(decimal)lector["plan_medico"];
                Codigo_Compra = (int)(decimal)lector["compra"];
                Precio = (int)(decimal)lector["precio_bono_farmacia"];
                Compra unaCompra = new Compra(Codigo_Compra);
                FechaVencimiento = unaCompra.Fecha.AddDays(60);
                Grupo_Flia = (int)(decimal)lector["grupo"];
                Detalle = "Bono Farmacia";
                Usado = (bool)lector["activo"];
            }
        }
        public BonoConsulta(int _id)
        {
            //El habilitado funciona a su vez de consumido o no consumido
            DataTable dt = DB.ExecuteReader("SELECT * FROM " + DB.schema + "bonoConsulta "+
                                                        "JOIN " + DB.schema + "compra ON cmp_id=bco_compra " +
                                                        "JOIN " + DB.schema + "vAfiliado ON afi_id=cmp_afiliado WHERE bco_habilitado=1 AND bco_id=" + _id);

            if (dt.Rows.Count == 0) //Como es PK y FK tiene que existir, y solo 1
                throw new NoTrajoNadaExcep();
            DataRow dr = dt.Rows[0];

            id = (int)dr["bco_id"];
            if(dr["bco_afiliado"] != DBNull.Value)
                afiliado = new Afiliado((int)dr["bco_afiliado"]);
            if (dr["cmp_afiliado"] != DBNull.Value)
                comprador = new Afiliado((int)dr["cmp_afiliado"]);
            if (dr["bco_fecha"] != DBNull.Value)
                fecha = (DateTime)dr["bco_fecha"];
            if (dr["bco_compra"] != DBNull.Value)
                compra = new Compra((int)dr["bco_compra"]);
        }
示例#7
0
        public bool ComprarBonos(Compra unaCompra)
        {
            try
            {
                List<SqlParameter> ListaParametros = new List<SqlParameter>();
                ListaParametros.Add(new SqlParameter("@persona", Codigo_Persona));
                ListaParametros.Add(new SqlParameter("@fecha", unaCompra.Fecha));
                ListaParametros.Add(new SqlParameter("@plan_medico", unaCompra.Codigo_Plan));
                SqlParameter paramRet = new SqlParameter("@ret", System.Data.SqlDbType.Decimal);
                paramRet.Direction = System.Data.ParameterDirection.Output;
                ListaParametros.Add(paramRet);

                //INSERTA LA COMPRA Y TOMA EL ID QUE ACABA DE INSERTAR
                int ret = (int)Clases.BaseDeDatosSQL.ExecStoredProcedure("mario_killers.hacerCompra", ListaParametros);

                if (ret != -1)
                {
                    if (unaCompra.BonosConsulta.Count != 0)
                    {
                        foreach (BonoConsulta unBono in unaCompra.BonosConsulta)
                        {
                            AgregarBonoConsultaEnCompra(ret, unBono);
                        }
                    }
                    if (unaCompra.BonosFarmacia.Count != 0)
                    {
                        foreach (BonoFarmacia unBono in unaCompra.BonosFarmacia)
                        {
                            AgregarBonoFarmaciaEnCompra(ret, unBono);
                        }
                    }
                    return true;
                }
                else { return false; }
            }
            catch { return false; }
        }
示例#8
0
        private void RealizarCompra()
        {
            Compra unaCompra = new Compra(afiliado);
            List<BonoConsulta> bonosConsulta = new List<BonoConsulta>();
            List<BonoFarmacia> bonosFarmacia = new List<BonoFarmacia>();
            if (PuedeRealizarCompra())
            {
                foreach (TipoCompraParaMostrar unRegistro in ListaAMostrar)
                {
                    if (unRegistro.TipoBono == "Bono Farmacia")
                    {
                        for (int i = 0; i < unRegistro.Cantidad; i++)
                        {
                            BonoFarmacia unBono = new BonoFarmacia(afiliado);
                            bonosFarmacia.Add(unBono);
                        }
                    }
                    else
                    {
                        for (int i = 0; i < unRegistro.Cantidad; i++)
                        {
                            BonoConsulta unBono = new BonoConsulta(afiliado);
                            bonosConsulta.Add(unBono);
                        }
                    }
                }
                unaCompra.BonosFarmacia = bonosFarmacia;
                unaCompra.BonosConsulta = bonosConsulta;

                if (afiliado.ComprarBonos(unaCompra))
                {
                    MessageBox.Show("La compra se ha realizado con éxito", "EnhoraBuena!", MessageBoxButtons.OK);
                }
                else { MessageBox.Show("No se pudo realizar la compra", "Error!", MessageBoxButtons.OK); }
            }
            else { MessageBox.Show("El usuario no puede realizar la compra, se encuentra inhabilitado", "Error!", MessageBoxButtons.OK); }
            LimpiarGrilla();
        }