示例#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;
        }
        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");
                 }
        }
示例#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;
        }
示例#5
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;
        }