Esempio n. 1
0
        //Metodo carga un dataset y lo recorre y lo retorna en una
        //lista
        public List <ENT.Orden> obtenerOrdenId(ENT.Orden orden)
        {
            this.limpiarError();
            List <ENT.Orden> ordenes = new List <ENT.Orden>();
            DataSet          dsetOrden;
            string           sql = "SELECT o.id_orden as id_orden, o.fecha_ingreso as fecha_ingreso, o.fecha_salida as fecha_salida, o.fecha_facturacion as fecha_facturacion, o.estado as estado, o.costo_total as costo_total, o.fk_vehiculo as fk_vehiculo, o.pk_empleado as pk_empleado," +
                                   "v.id_vehiculo as id_vehiculo,v.anno as anno, v.placa as placa, v.cilindraje as cilindraje, v.numero_motor as numero_motor, v.numero_chazis as numero_chazis, v.combustible as combustible, v.estado as estado, v.fk_marca as fk_marca, v.fk_cliente as fk_cliente, fk_tipo as fk_tipo," +
                                   "e.id_empleado as id_empleado, e.nombre as nombre_empleado, e.apellido as apellido_empleado, e.direccion as direccion_empleado, e.telefono1 as telefono1_empleado, e.telefono2 as telefono2_empleado, e.trabajo as trabajo_empleado, e.permiso as permiso_empleado, e.contrasenna as contrasenna_empleado, e.usuario as usuario_empleado, " +
                                   "m.id_marca as id_marca, m.marca as marca, " +
                                   "t.id_tipo as id_tipo, t.tipo as tipo, " +
                                   "c.id_cliente as id_cliente, c.cedula as cedula, c.nombre as nombre, c.apellido as apellido, c.apellido2 as apellido2, c.telefono_casa as telefono_casa, c.telefono_oficina as telefono_oficina, c.telefono_celular as telefono_celular " +
                                   "from public.vehiculo v, public.marca m, public.tipo t, public.cliente c, public.empleado e, public.orden o " +
                                   "where v.fk_marca = m.id_marca and " +
                                   "v.fk_tipo = t.id_tipo and " +
                                   "v.fk_cliente = c.id_cliente and o.fk_vehiculo = v.id_vehiculo and o.pk_empleado = e.id_empleado and id_orden = " + orden.Id;

            dsetOrden = this.conexion.ejecutarConsultaSQL(sql);
            foreach (DataRow tupla in dsetOrden.Tables[0].Rows)
            {
                MarcaVehiculo oMarca    = new MarcaVehiculo(Int32.Parse(tupla["id_marca"].ToString()), tupla["marca"].ToString(), new ENT.Modelo());
                ENT.Empleado  OEmpleado = new ENT.Empleado(int.Parse(tupla["id_empleado"].ToString()), tupla["nombre_empleado"].ToString(), tupla["apellido_empleado"].ToString(), tupla["direccion_empleado"].ToString(), tupla["telefono1_empleado"].ToString(), tupla["telefono2_empleado"].ToString(), tupla["trabajo_empleado"].ToString(), tupla["permiso_empleado"].ToString(), tupla["usuario_empleado"].ToString(), tupla["contrasenna_empleado"].ToString());
                ENT.Cliente   oCliente  = new ENT.Cliente(int.Parse(tupla["id_cliente"].ToString()), tupla["cedula"].ToString(), tupla["nombre"].ToString(), tupla["apellido"].ToString(), tupla["apellido2"].ToString(), tupla["telefono_casa"].ToString(), tupla["telefono_celular"].ToString(), tupla["telefono_oficina"].ToString());
                TipoVehiculo  oTipo     = new TipoVehiculo(Int32.Parse(tupla["id_tipo"].ToString()), tupla["tipo"].ToString());
                ENT.Vehiculo  oVehiculo = new ENT.Vehiculo(int.Parse(tupla["id_vehiculo"].ToString()), tupla["placa"].ToString(), int.Parse(tupla["anno"].ToString()), int.Parse(tupla["cilindraje"].ToString()), int.Parse(tupla["numero_motor"].ToString()), int.Parse(tupla["numero_chazis"].ToString()), tupla["combustible"].ToString(), tupla["estado"].ToString(), oMarca, oCliente, oTipo);
                ENT.Orden     oOrden    = new ENT.Orden(int.Parse(tupla["id_orden"].ToString()), DateTime.Parse(tupla["fecha_ingreso"].ToString()), DateTime.Parse(tupla["fecha_salida"].ToString()), DateTime.Parse(tupla["fecha_facturacion"].ToString()), tupla["estado"].ToString(), double.Parse(tupla["costo_total"].ToString()), oVehiculo, OEmpleado);
                ordenes.Add(oOrden);
            }
            if (this.conexion.IsError)
            {
                this.error    = true;
                this.errorMsg = this.conexion.ErrorDescripcion;
            }
            return(ordenes);
        }
Esempio n. 2
0
 public FrmOrdenReparaciones(ENT.Orden orden)
 {
     InitializeComponent();
     EntOrdenServicio = new ENT.OrdenServicio();
     EntVehiculo      = new ENT.Vehiculo();
     EntOrden         = new ENT.Orden();
     EntRepuesto      = new ENT.RepuestoVehiculo();
     EntOrdenRepuesto = new ENT.OrdenRepuesto();
     EntEmpleado      = new ENT.Empleado();
     EntServicio      = new ENT.Servicio();
     BllVehiculo      = new BLL.Vehiculo();
     BllEmpleado      = new BLL.Empleado();
     BllOrden         = new BLL.Orden();
     BllRepesto       = new BLL.Repuesto();
     BllServicio      = new BLL.Servicio();
     BllOrdenRepuesto = new BLL.OrdenRepuesto();
     BllOrdenServicio = new BLL.OrdenServicio();
     repuestos        = new List <ENT.RepuestoVehiculo>();
     servicios        = new List <ENT.Servicio>();
     ordenRepuestos   = new List <ENT.OrdenRepuesto>();
     ordenServicios   = new List <ENT.OrdenServicio>();
     vehiculos        = new List <ENT.Vehiculo>();
     empleados        = new List <ENT.Empleado>();
     ordenes          = new List <ENT.Orden>();
     this.EntOrden    = orden;
     llenarComboEncargado();
     llenarComboVehiculo();
     cargarComponentesOrden(orden);
     cargarRepuestosOrden();
     cargarServicioOrden();
 }
Esempio n. 3
0
 public FrmOrdenReparaciones()
 {
     InitializeComponent();
     EntVehiculo            = new ENT.Vehiculo();
     EntOrdenServicio       = new ENT.OrdenServicio();
     EntOrden               = new ENT.Orden();
     EntRepuesto            = new ENT.RepuestoVehiculo();
     EntOrdenRepuesto       = new ENT.OrdenRepuesto();
     EntEmpleado            = new ENT.Empleado();
     EntServicio            = new ENT.Servicio();
     BllVehiculo            = new BLL.Vehiculo();
     BllEmpleado            = new BLL.Empleado();
     BllOrden               = new BLL.Orden();
     BllRepesto             = new BLL.Repuesto();
     BllServicio            = new BLL.Servicio();
     BllOrdenRepuesto       = new BLL.OrdenRepuesto();
     BllOrdenServicio       = new BLL.OrdenServicio();
     repuestos              = new List <ENT.RepuestoVehiculo>();
     servicios              = new List <ENT.Servicio>();
     ordenRepuestos         = new List <ENT.OrdenRepuesto>();
     ordenServicios         = new List <ENT.OrdenServicio>();
     vehiculos              = new List <ENT.Vehiculo>();
     empleados              = new List <ENT.Empleado>();
     vehiculos              = new List <ENT.Vehiculo>();
     ordenes                = new List <ENT.Orden>();
     cbEstado.Enabled       = false;
     tabComponentes.Enabled = false;
     llenarComboEncargado();
     llenarComboVehiculo();
 }
Esempio n. 4
0
 private void toolStripButton4_Click(object sender, EventArgs e)
 {
     try
     {
         if (verificarVehiculo())
         {
             MessageBox.Show("El vehículo ya esta registrado en otra orden");
             return;
         }
         seleccionComboEmpleado();
         EntOrden.FechaIngreso = dtIngreso.Value;
         EntOrden.FechaSalida  = dtFechaSalida.Value;
         EntOrden.Empleado     = EntEmpleado;
         EntOrden.Vehiculo     = EntVehiculo;
         EntOrden.Estado       = "Dañado";
         limpiarDatos();
         int consecutivo = BllOrden.consecutivogAregarOrden(EntOrden);
         txtCodigo.Text = consecutivo + "";
         if (consecutivo > 0)
         {
             List <ENT.Orden> ordenes = BllOrden.cargarIntOrden(consecutivo, "id_orden");
             EntOrden = ordenes[0];
             cargarComponentesOrden(EntOrden);
         }
         tabComponentes.Enabled = true;
         cargarRepuestosOrden();
         cargarServicioOrden();
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Error de transacción", MessageBoxButtons.OK,
                         MessageBoxIcon.Information);
     }
 }
Esempio n. 5
0
 public FrmPrincipal()
 {
     InitializeComponent();
     EntOrden = new ENT.Orden();
     BllOrden = new BLL.Orden();
     ordenes  = new List <ENT.Orden>();
     cargarOrden();
 }
Esempio n. 6
0
 public FrmPrincipal(ENT.Empleado empleado)
 {
     InitializeComponent();
     this.EntEmpleado = empleado;
     EntOrden         = new ENT.Orden();
     BllOrden         = new BLL.Orden();
     ordenes          = new List <ENT.Orden>();
     txtUsuario.Text  = empleado.Usuario;
     cargarOrden();
 }
Esempio n. 7
0
        //Metodo actualiza las ordenes por los nuevos
        //parametros que recibe por parametro
        public void actualizarTotal(ENT.Orden orden)
        {
            limpiarError();
            string    sql = "UPDATE " + this.conexion.Schema + "orden SET costo_total = @costo_total WHERE id_orden = @id_orden;";
            Parametro prm = new Parametro();

            prm.agregarParametro("@costo_total", NpgsqlDbType.Double, orden.CostoTotal);
            prm.agregarParametro("@id_orden", NpgsqlDbType.Integer, orden.Id);
            this.conexion.ejecutarSQL(sql, prm.obtenerParametros());
            if (this.conexion.IsError)
            {
                this.error    = true;
                this.errorMsg = this.conexion.ErrorDescripcion;
            }
        }
Esempio n. 8
0
        //Metodo actualiza el estado de una orden
        //por los valores que recibe por parametro
        public void actualizarEstadoOrden(ENT.Orden orden, DateTime date)
        {
            limpiarError();
            string    sql = "UPDATE " + this.conexion.Schema + "orden SET estado = @estado, fecha_facturacion = @fecha_facturacion WHERE  id_orden = @id_orden";
            Parametro prm = new Parametro();

            prm.agregarParametro("@estado", NpgsqlDbType.Varchar, orden.Estado);
            prm.agregarParametro("@id_orden", NpgsqlDbType.Integer, orden.Id);
            prm.agregarParametro("@fecha_facturacion", NpgsqlDbType.Date, date);
            this.conexion.ejecutarSQL(sql, prm.obtenerParametros());
            if (conexion.IsError)
            {
                this.errorMsg = this.conexion.ErrorDescripcion;
                this.error    = true;
            }
        }
Esempio n. 9
0
 public FrmOrden()
 {
     InitializeComponent();
     cliente     = new ENT.Cliente();
     BllCliente  = new BLL.Cliente();
     vehiculo    = new ENT.Vehiculo();
     BllVehiculo = new BLL.Vehiculo();
     empleado    = new ENT.Empleado();
     BllEmpleado = new BLL.Empleado();
     BllOrden    = new BLL.Orden();
     orden       = new ENT.Orden();
     clientes    = new List <ENT.Cliente>();
     vehiculos   = new List <ENT.Vehiculo>();
     empleados   = new List <ENT.Empleado>();
     ordenes     = new List <ENT.Orden>();
     cargarCombos();
     anadirItemsEstado();
 }
Esempio n. 10
0
        //Metodo agrega los datos de la orden proveniente
        //desde la base de datos a los componentes de la interfaz
        private void cargarComponentesOrden(ENT.Orden orden)
        {
            tabComponentes.Enabled = true;
            string valor = orden.FechaFacturacion.ToShortDateString().ToString();

            txtCodigo.Text      = orden.Id + "";
            dtIngreso.Value     = orden.FechaIngreso;
            dtFechaSalida.Value = orden.FechaSalida;
            if (valor.Equals("1/1/0001"))
            {
                txtFechaFacturacion.Text = "Orden sin facturar";
            }
            else
            {
                txtFechaFacturacion.Text = orden.FechaFacturacion.ToShortDateString();
            }

            for (int j = 0; j < cbEncargado.Items.Count; j++)
            {
                if (cbEncargado.Items[j].ToString() == orden.Empleado.ToString())
                {
                    cbEncargado.SelectedIndex = j;
                    break;
                }
            }
            for (int j = 0; j < cbVehiculo.Items.Count; j++)
            {
                if (cbVehiculo.Items[j].ToString() == orden.Vehiculo.ToString())
                {
                    cbVehiculo.SelectedIndex = j;
                    break;
                }
            }
            for (int j = 0; j < cbEstado.Items.Count; j++)
            {
                if (cbEstado.Items[j].ToString() == orden.Estado)
                {
                    cbEstado.SelectedIndex = j;
                    break;
                }
            }
        }
Esempio n. 11
0
        //Metodo actualiza la orden por los nuevos valores que recibe
        //por parametro
        public void actualizarOrden(ENT.Orden orden)
        {
            limpiarError();
            string    sql = "UPDATE public.orden SET fecha_ingreso = @fecha_ingreso, fecha_salida = @fecha_salida, fecha_facturacion = @fecha_facturacion, estado = @estado, costo_total = @costo_total, fk_vehiculo = @fk_vehiculo, pk_empleado = @pk_empleado WHERE  id_orden = " + orden.Id;
            Parametro prm = new Parametro();

            prm.agregarParametro("@fecha_ingreso", NpgsqlDbType.Date, orden.FechaIngreso);
            prm.agregarParametro("@fecha_salida", NpgsqlDbType.Date, orden.FechaSalida);
            prm.agregarParametro("@fecha_facturacion", NpgsqlDbType.Date, orden.FechaFacturacion);
            prm.agregarParametro("@estado", NpgsqlDbType.Varchar, orden.Estado);
            prm.agregarParametro("@costo_total", NpgsqlDbType.Double, orden.CostoTotal);
            prm.agregarParametro("@fk_vehiculo", NpgsqlDbType.Integer, orden.Vehiculo.Id);
            prm.agregarParametro("@pk_empleado", NpgsqlDbType.Integer, orden.Empleado.Id);
            this.conexion.ejecutarSQL(sql, prm.obtenerParametros());
            if (conexion.IsError)
            {
                this.errorMsg = this.conexion.ErrorDescripcion;
                this.error    = true;
            }
        }
Esempio n. 12
0
        public List <ENT.OrdenServicio> buscarOrdenServicioPorID(int valor)
        {
            this.limpiarError();
            List <ENT.OrdenServicio> ordenServicios = new List <ENT.OrdenServicio>();

            this.limpiarError();
            List <ENT.OrdenRepuesto> ordenRepuestos = new List <ENT.OrdenRepuesto>();
            Parametro prm = new Parametro();

            prm.agregarParametro("@fk_orden", NpgsqlDbType.Integer, valor);
            string sql = "SELECT orp.id_orden_servicio AS id_orden_servicio, orp.cantidad AS cantidad, orp.costo AS costo, " +
                         "e.id_empleado AS id_empleado, e.nombre AS nombre_empleado, e.apellido AS apellido_empleado, e.direccion AS direccion_empleado, e.telefono1 AS telefono1_empleado, e.telefono2 AS telefono2_empleado, e.trabajo AS trabajo_empleado, e.permiso AS permiso_empleado, " +
                         "e.contrasenna AS contrasenna_empleado, e.usuario AS usuario_empleado, o.id_orden AS id_orden, o.fecha_ingreso AS fecha_ingreso, o.fecha_salida AS fecha_salida, o.fecha_facturacion AS fecha_facturacion, " +
                         "o.estado AS estado, o.costo_total AS costo_total, o.fk_vehiculo AS fk_vehiculo, o.pk_empleado AS pk_empleado, s.id_servicio AS id_servicioS, s.servcio AS servicioS, " +
                         "s.precio AS precioS, s.impuesto AS impuestoS, s.descripcion as descripcion, s.horas_promedio as horas_promedio " +
                         " FROM   " + this.conexion.Schema + "orden_servicio orp, " + this.conexion.Schema + "empleado e, " + this.conexion.Schema + "orden o, " + this.conexion.Schema + "servicio s " +
                         "WHERE orp.fk_empleado = e.id_empleado AND orp.fk_orden = o.id_orden AND orp.fk_Servicio = s.id_servicio AND orp.fk_orden = @fk_orden";
            DataSet dset = this.conexion.ejecutarConsultaSQL(sql, "orden_servicio", prm.obtenerParametros());

            if (!this.conexion.IsError)
            {
                if (dset.Tables[0].Rows.Count > 0)
                {
                    foreach (DataRow tupla in dset.Tables[0].Rows)
                    {
                        ENT.Servicio      Oservicio     = new ENT.Servicio(int.Parse(tupla["id_servicioS"].ToString()), tupla["servicioS"].ToString(), double.Parse(tupla["precioS"].ToString()), double.Parse(tupla["impuestoS"].ToString()), tupla["descripcion"].ToString(), Int32.Parse(tupla["horas_promedio"].ToString()));
                        ENT.Orden         oOrden        = new ENT.Orden(int.Parse(tupla["id_orden"].ToString()), DateTime.Parse(tupla["fecha_ingreso"].ToString()), DateTime.Parse(tupla["fecha_salida"].ToString()), DateTime.Parse(tupla["fecha_facturacion"].ToString()), tupla["estado"].ToString(), double.Parse(tupla["costo_total"].ToString()), new ENT.Vehiculo(), new ENT.Empleado());
                        ENT.Empleado      OEmpleado     = new ENT.Empleado(int.Parse(tupla["id_empleado"].ToString()), tupla["nombre_empleado"].ToString(), tupla["apellido_empleado"].ToString(), tupla["direccion_empleado"].ToString(), tupla["telefono1_empleado"].ToString(), tupla["telefono2_empleado"].ToString(), tupla["trabajo_empleado"].ToString(), tupla["permiso_empleado"].ToString(), tupla["usuario_empleado"].ToString(), tupla["contrasenna_empleado"].ToString());
                        ENT.OrdenServicio ordenServicio = new ENT.OrdenServicio(int.Parse(tupla["id_orden_servicio"].ToString()), int.Parse(tupla["cantidad"].ToString()), double.Parse(tupla["costo"].ToString()), OEmpleado, Oservicio, oOrden);
                        ordenServicios.Add(ordenServicio);
                    }
                }
            }
            else
            {
                this.error    = true;
                this.errorMsg = this.conexion.ErrorDescripcion;
            }
            return(ordenServicios);
        }
Esempio n. 13
0
        //Metodo busca por id una orden y lo retorna en un dataset
        //lo recorre y lo convierte en una lista
        public ENT.Orden obtenerOrdenConsecutivo(int consecutivo)
        {
            this.limpiarError();
            ENT.Orden orden = new ENT.Orden();
            Parametro prm   = new Parametro();

            prm.agregarParametro("@id_orden", NpgsqlDbType.Integer, consecutivo);
            DataSet dsetOrden;
            string  sql = "SELECT o.id_orden as id_orden, o.fecha_ingreso as fecha_ingreso, o.fecha_salida as fecha_salida, o.fecha_facturacion as fecha_facturacion, o.estado as estado, o.costo_total as costo_total, o.fk_vehiculo as fk_vehiculo, o.pk_empleado as pk_empleado," +
                          "v.id_vehiculo as id_vehiculo,v.anno as anno, v.placa as placa, v.cilindraje as cilindraje, v.numero_motor as numero_motor, v.numero_chazis as numero_chazis, v.combustible as combustible, v.estado as estado, v.fk_marca as fk_marca, v.fk_cliente as fk_cliente, fk_tipo as fk_tipo," +
                          "e.id_empleado as id_empleado, e.nombre as nombre_empleado, e.apellido as apellido_empleado, e.direccion as direccion_empleado, e.telefono1 as telefono1_empleado, e.telefono2 as telefono2_empleado, e.trabajo as trabajo_empleado, e.permiso as permiso_empleado, e.contrasenna as contrasenna_empleado, e.usuario as usuario_empleado, " +
                          "m.id_marca as id_marca, m.marca as marca, " +
                          "t.id_tipo as id_tipo, t.tipo as tipo, " +
                          "c.id_cliente as id_cliente, c.cedula as cedula, c.nombre as nombre, c.apellido as apellido, c.apellido2 as apellido2, c.telefono_casa as telefono_casa, c.telefono_oficina as telefono_oficina, c.telefono_celular as telefono_celular " +
                          "from " + this.conexion.Schema + "vehiculo v, " + this.conexion.Schema + "marca m, " + this.conexion.Schema + "tipo t, " + this.conexion.Schema + "cliente c, " + this.conexion.Schema + "empleado e, " + this.conexion.Schema + "orden o " +
                          "where v.fk_marca = m.id_marca and " +
                          "v.fk_tipo = t.id_tipo and " +
                          "v.fk_cliente = c.id_cliente and o.fk_vehiculo = v.id_vehiculo and o.pk_empleado = e.id_empleado ";

            dsetOrden = this.conexion.ejecutarConsultaSQL(sql, "orden", prm.obtenerParametros());
            if (!this.conexion.IsError)
            {
                if (dsetOrden.Tables[0].Rows.Count > 0)
                {
                    MarcaVehiculo oMarca    = new MarcaVehiculo(Int32.Parse(dsetOrden.Tables["id_marca"].ToString()), dsetOrden.Tables["marca"].ToString(), new ENT.Modelo());
                    ENT.Empleado  OEmpleado = new ENT.Empleado(int.Parse(dsetOrden.Tables["id_empleado"].ToString()), dsetOrden.Tables["nombre_empleado"].ToString(), dsetOrden.Tables["apellido_empleado"].ToString(), dsetOrden.Tables["direccion_empleado"].ToString(), dsetOrden.Tables["telefono1_empleado"].ToString(), dsetOrden.Tables["telefono2_empleado"].ToString(), dsetOrden.Tables["trabajo_empleado"].ToString(), dsetOrden.Tables["permiso_empleado"].ToString(), dsetOrden.Tables["usuario_empleado"].ToString(), dsetOrden.Tables["contrasenna_empleado"].ToString());
                    ENT.Cliente   oCliente  = new ENT.Cliente(int.Parse(dsetOrden.Tables["id_cliente"].ToString()), dsetOrden.Tables["cedula"].ToString(), dsetOrden.Tables["nombre"].ToString(), dsetOrden.Tables["apellido"].ToString(), dsetOrden.Tables["apellido2"].ToString(), dsetOrden.Tables["telefono_casa"].ToString(), dsetOrden.Tables["telefono_celular"].ToString(), dsetOrden.Tables["telefono_oficina"].ToString());
                    TipoVehiculo  oTipo     = new TipoVehiculo(Int32.Parse(dsetOrden.Tables["id_tipo"].ToString()), dsetOrden.Tables["tipo"].ToString());
                    ENT.Vehiculo  oVehiculo = new ENT.Vehiculo(int.Parse(dsetOrden.Tables["id_vehiculo"].ToString()), dsetOrden.Tables["placa"].ToString(), int.Parse(dsetOrden.Tables["anno"].ToString()), int.Parse(dsetOrden.Tables["cilindraje"].ToString()), int.Parse(dsetOrden.Tables["numero_motor"].ToString()), int.Parse(dsetOrden.Tables["numero_chazis"].ToString()), dsetOrden.Tables["combustible"].ToString(), dsetOrden.Tables["estado"].ToString(), oMarca, oCliente, oTipo);
                    ENT.Orden     oOrden    = new ENT.Orden(int.Parse(dsetOrden.Tables["id_orden"].ToString()), DateTime.Parse(dsetOrden.Tables["fecha_ingreso"].ToString()), DateTime.Parse(dsetOrden.Tables["fecha_salida"].ToString()), DateTime.Parse(dsetOrden.Tables["fecha_facturacion"].ToString()), dsetOrden.Tables["estado"].ToString(), double.Parse(dsetOrden.Tables["costo_total"].ToString()), oVehiculo, OEmpleado);
                }
            }
            else
            {
                this.error    = true;
                this.errorMsg = this.conexion.ErrorDescripcion;
            }
            return(orden);
        }
Esempio n. 14
0
        //Metodo agrega los valores que recibe por parametro y retorna
        //y id_de esa orden
        public int agregarOrden(ENT.Orden orden)
        {
            limpiarError();
            string id_orden = "0";
            string sql      = "INSERT INTO " + this.conexion.Schema + "orden(fecha_ingreso, fecha_salida, fecha_facturacion, estado, costo_total, fk_vehiculo, pk_empleado) "
                              + "VALUES (@fecha_ingreso, @fecha_salida, @fecha_facturacion, @estado, @costo_total, @fk_vehiculo, @pk_empleado) returning id_orden";
            Parametro prm = new Parametro();

            prm.agregarParametro("@fecha_ingreso", NpgsqlDbType.Date, orden.FechaIngreso);
            prm.agregarParametro("@fecha_salida", NpgsqlDbType.Date, orden.FechaSalida);
            prm.agregarParametro("@fecha_facturacion", NpgsqlDbType.Date, orden.FechaFacturacion);
            prm.agregarParametro("@estado", NpgsqlDbType.Varchar, orden.Estado);
            prm.agregarParametro("@costo_total", NpgsqlDbType.Double, orden.CostoTotal);
            prm.agregarParametro("@fk_vehiculo", NpgsqlDbType.Integer, orden.Vehiculo.Id);
            prm.agregarParametro("@pk_empleado", NpgsqlDbType.Integer, orden.Empleado.Id);
            this.conexion.ejecutarSQL(sql, prm.obtenerParametros(), ref id_orden);
            if (this.conexion.IsError)
            {
                this.error    = true;
                this.errorMsg = this.conexion.ErrorDescripcion;
            }
            return(Int32.Parse(id_orden));
        }