示例#1
0
        /// <summary>
        /// Encargado de recibir la cédula del cliente de los canales front de venta y llamar
        /// al metodo de negocio registrar casos especiales
        /// </summary>
        /// <param name="casos">Objeto de negocio Venta</param>
        /// <returns>ventas</returns>
        public long CasosEspeciales(CasosBE casos)
        {
            long    resp           = 0;
            VentaBL casosEspeciles = new VentaBL();

            resp = casosEspeciles.CasosEspeciales(casos);
            return(resp);
        }
示例#2
0
        public long CasosEspeciales(CasosBE casos)
        {
            VentaDL    ven = new VentaDL();
            CilindroDL cil = new CilindroDL();

            long respRegCaso;
            long respRegModV;
            long respRegModUbica;

            try
            {
                if (casos.Observaciones == "")
                {
                    casos.Observaciones = "0";
                }
                casos.EstadoCaso = "1";
                if (casos.Tipo_Caso.Nombre_Caso == "ESCAPE" || casos.Tipo_Caso.Nombre_Caso == "CODIGO ERRADO")
                {
                    respRegModV = ModificarVenta(casos.Detalle_Venta);
                }
                else
                {
                    CilindroBE objCil = new CilindroBE();
                    objCil.Codigo_Cilindro = casos.Detalle_Venta.Id_Cilindro_Entrada;
                    Tipo_UbicacionBE tipUbica = new Tipo_UbicacionBE();
                    tipUbica.Nombre_Ubicacion = "VEHICULO";
                    objCil.Tipo_Ubicacion     = tipUbica;
                    VehiculoBE veh = new VehiculoBE();
                    veh.Id_Vehiculo = casos.Detalle_Venta.Id_Vehiculo;
                    objCil.Vehiculo = veh;

                    respRegModUbica = cil.ModificarUbicacionCilindro(objCil);
                }
                respRegCaso = ven.RegistrarCasoEspecial(casos);
            }
            catch (Exception ex)
            {
                //guardar exepcion en el log de bd
                respRegCaso = -1;
            }
            return(respRegCaso);
        }
示例#3
0
        public List <CasosBE> ConsultarCaso(string id_Caso)
        {
            List <CasosBE> lstCaso = new List <CasosBE>();

            try
            {
                string    nameSP = "ConsultarCasos";
                BaseDatos db     = new BaseDatos();
                db.Conectar();
                db.CrearComandoSP(nameSP);
                DbParameter[] parametros = new DbParameter[3];
                parametros[0] = db.Comando.CreateParameter();
                parametros[0].ParameterName = "vrId_TipoCaso";
                parametros[0].Value         = id_Caso;
                parametros[0].Direction     = ParameterDirection.Input;
                db.Comando.Parameters.Add(parametros[0]);

                parametros[1] = db.Comando.CreateParameter();
                parametros[1].ParameterName = "vrCodResult";
                parametros[1].Value         = 0;
                parametros[1].Direction     = ParameterDirection.Output;
                db.Comando.Parameters.Add(parametros[1]);

                parametros[2] = db.Comando.CreateParameter();
                parametros[2].ParameterName = "vrDescResult";
                parametros[2].Value         = "";
                parametros[2].Direction     = ParameterDirection.Output;
                parametros[2].Size          = 200;
                parametros[2].DbType        = DbType.String;
                db.Comando.Parameters.Add(parametros[2]);

                DbDataReader datos = db.EjecutarConsulta();
                CasosBE      c     = null;
                while (datos.Read())
                {
                    try
                    {
                        c                                = new CasosBE();
                        c.Id_Casos                       = datos.GetValue(0).ToString();
                        c.Observaciones                  = datos.GetString(1);
                        c.Tipo_Caso.Id_Tipo_Caso         = datos.GetValue(2).ToString();
                        c.Detalle_Venta.Id_Detalle_Venta = datos.GetValue(3).ToString();
                        c.Fecha                          = datos.GetDateTime(4);
                        c.EstadoCaso                     = datos.GetString(5);
                        lstCaso.Add(c);
                    }
                    catch (InvalidCastException ex)
                    {
                        throw new Exception("Los tipos no coinciden.", ex);
                    }
                    catch (DataException ex)
                    {
                        throw new Exception("Error de ADO.NET.", ex);
                    }
                }
                datos.Close();
                db.Desconectar();
            }
            catch (Exception ex)
            {
                throw new Exception("Error al acceder a la base de datos para obtener los CasosBEs.");
            }
            return(lstCaso);
        }
示例#4
0
        public long RegistrarCasoEspecial(CasosBE caso)
        {
            long      codigo = 0;
            BaseDatos db     = new BaseDatos();

            try
            {
                db.Conectar();
                db.ComenzarTransaccion();
                string nameSP = "CrearRegistroCasosEspeciales";
                db.CrearComandoSP(nameSP);

                DbParameter[] parametros = new DbParameter[6];

                parametros[0] = db.Comando.CreateParameter();
                parametros[0].ParameterName = "vrIdTipoCasos";
                parametros[0].Value         = caso.Tipo_Caso.Id_Tipo_Caso;
                parametros[0].Direction     = ParameterDirection.Input;
                parametros[0].Size          = 18;
                db.Comando.Parameters.Add(parametros[0]);

                parametros[1] = db.Comando.CreateParameter();
                parametros[1].ParameterName = "vrIdDetalleVenta";
                parametros[1].Value         = caso.Detalle_Venta.Id_Detalle_Venta;
                parametros[1].Direction     = ParameterDirection.Input;
                parametros[1].Size          = 12;
                db.Comando.Parameters.Add(parametros[1]);

                parametros[2] = db.Comando.CreateParameter();
                parametros[2].ParameterName = "vrObservaciones";
                parametros[2].Value         = caso.Observaciones;
                parametros[2].Direction     = ParameterDirection.Input;
                parametros[2].Size          = 100;
                db.Comando.Parameters.Add(parametros[2]);

                parametros[3] = db.Comando.CreateParameter();
                parametros[3].ParameterName = "vrEstado";
                parametros[3].Value         = caso.EstadoCaso;
                parametros[3].Direction     = ParameterDirection.Input;
                parametros[3].Size          = 1;
                db.Comando.Parameters.Add(parametros[3]);

                parametros[4] = db.Comando.CreateParameter();
                parametros[4].ParameterName = "vrCodResult";
                parametros[4].Value         = 0;
                parametros[4].Direction     = ParameterDirection.Output;
                db.Comando.Parameters.Add(parametros[4]);

                parametros[5] = db.Comando.CreateParameter();
                parametros[5].ParameterName = "vrDescResult";
                parametros[5].Value         = "";
                parametros[5].Direction     = ParameterDirection.Output;
                parametros[5].Size          = 200;
                parametros[5].DbType        = DbType.String;
                db.Comando.Parameters.Add(parametros[5]);

                db.EjecutarComando();
                codigo = long.Parse(db.Comando.Parameters[4].Value.ToString());
                db.ConfirmarTransaccion();
            }
            catch (Exception ex)
            {
                db.CancelarTransaccion();
                throw new Exception("Error al crear el CasoBE.", ex);
            }

            finally
            {
                db.Desconectar();
            }
            return(codigo);
        }
        protected void btnGuardar_Click(object sender, EventArgs e)
        {
            VentaServiceClient    serVenta = new VentaServiceClient();
            CilindroServiceClient servCil  = new CilindroServiceClient();
            CasosBE casos = new CasosBE();

            long resp;

            try
            {
                casos.Id_Cliente = lblIdCliente.Text;
                Tipo_CasoBE tipCaso = new Tipo_CasoBE();
                tipCaso.Id_Tipo_Caso = lstCaso.SelectedValue;
                tipCaso.Nombre_Caso  = lstCaso.SelectedItem.Text;
                casos.Tipo_Caso      = tipCaso;
                casos.Observaciones  = txtObserva.Text;
                Detalle_VentaBE detVenta = new Detalle_VentaBE();
                detVenta.Id_Detalle_Venta = lblIdDetalleV.Text;
                detVenta.Id_Vehiculo      = lblIdVehiculo.Text;
                detVenta.Id_Ubicacion     = lblIdUbica.Text;

                if (lstCaso.SelectedItem.Text == Tipo_Casos.ESCAPE.ToString())
                {
                    detVenta.Id_Cilindro_Salida  = lstCilEntrega.SelectedValue;
                    detVenta.Id_Cilindro_Entrada = lblMsn.Text;
                    casos.Detalle_Venta          = detVenta;
                    resp = serVenta.CasosEspeciales(casos);
                    MessageBox.Show("El caso especial fue registrado satisfactoriamente", "Casos Especiales");
                }

                if (lstCaso.SelectedItem.Text == Tipo_Casos.CODIGO + " " + Tipo_Casos.ERRADO)
                {
                    if (txtCodigoVerific.Text == "")
                    {
                        MessageBox.Show("El código del cilindro es obligatorio", "Casos Especiales");
                    }
                    else
                    {
                        detVenta.Id_Cilindro_Salida  = txtCodigoVerific.Text;
                        detVenta.Id_Cilindro_Entrada = lblMsn.Text;
                        casos.Detalle_Venta          = detVenta;
                        resp = serVenta.CasosEspeciales(casos);
                        MessageBox.Show("El caso especial fue registrado con satisfacción", "Casos Especiales");
                    }
                }

                else
                {
                    CilindroBE cilindro = new CilindroBE();
                    cilindro.Codigo_Cilindro = lblMsn.Text;
                    Tipo_UbicacionBE tipoUbi = new Tipo_UbicacionBE();
                    tipoUbi.Nombre_Ubicacion = Ubicacion.VEHICULO.ToString();
                    cilindro.Tipo_Ubicacion  = tipoUbi;

                    if (tipoUbi.Nombre_Ubicacion == Ubicacion.VEHICULO.ToString())
                    {
                        VehiculoBE veh = new VehiculoBE();
                        veh.Id_Vehiculo   = lblIdVehiculo.Text;
                        cilindro.Vehiculo = veh;
                    }

                    resp = servCil.ModificarUbicaCilindro(cilindro);
                }
                //falta adicionar al cargue del vehiculo el cilindro que devuelve en terminacion del contrato
            }
            catch (Exception ex)
            {
                Response.Redirect("~/About.aspx");
            }
            finally
            {
                serVenta.Close();
                Response.Redirect("~/Ventas/frmCasosEspeciales.aspx");
            }
        }