protected void ImgAgregar_Click(object sender, ImageClickEventArgs e)
    {
        char[]   r      = { '_' };
        string[] Codigo = this.drpDescripcionParte.SelectedValue.ToString().Split(r);

        string Cod_Parte = Codigo[0];

        string Cod_Sub_Parte = Codigo[1];

        DañosVehiculo Daños = new DañosVehiculo();

        if (ExisteDaño(Cod_Parte, Cod_Sub_Parte))
        {
            Daños.CodParte     = Cod_Parte;
            Daños.CodSubParte  = Cod_Sub_Parte;
            Daños.NomPartesVeh = this.drpDescripcionParte.SelectedItem.ToString();
            Daños.CodDaño      = this.drpDaños.SelectedValue.ToString();
            Daños.NomDaño      = this.drpDaños.SelectedItem.ToString();
            Daños.Observacion  = this.txtObservacion.Text.ToString();

            AgregaDaño(Daños);

            this.txtObservacion.Text               = "";
            this.drpDaños.SelectedIndex            = 0;
            this.drpDescripcionParte.SelectedIndex = 0;
        }
    }
    protected void ImgGuardar_Click(object sender, ImageClickEventArgs e)
    {
        string datos_daños      = "";
        string datos_accesorios = "";

        ArrayList ArrAccesorios = AccesoriosVehiculo.CargaAccesorio();

        for (int i = 0; i < ArrAccesorios.Count; i++)
        {
            datos_accesorios = datos_accesorios + ((AccesoriosVehiculo)ArrAccesorios[i]).NomAccesorio.ToString() + "|";
            datos_accesorios = datos_accesorios + ((AccesoriosVehiculo)ArrAccesorios[i]).Observacion.ToString() + "||";
            datos_accesorios = datos_accesorios + ((AccesoriosVehiculo)ArrAccesorios[i]).CodAccesorio + "|";
        }


        ArrayList ArrDaños = DañosVehiculo.CargaDaño();

        for (int i = 0; i < ArrDaños.Count; i++)
        {
            datos_daños = datos_daños + ((DañosVehiculo)ArrDaños[i]).NomPartesVeh.ToString() + "|";
            datos_daños = datos_daños + ((DañosVehiculo)ArrDaños[i]).Observacion.ToString() + "|";
            datos_daños = datos_daños + ((DañosVehiculo)ArrDaños[i]).CodDaño.ToString() + "|";
            datos_daños = datos_daños + ((DañosVehiculo)ArrDaños[i]).CodParte.ToString() + "|";
            datos_daños = datos_daños + ((DañosVehiculo)ArrDaños[i]).CodSubParte.ToString() + "|";
        }

        Poliza PolVeh;

        if (Session["PolVeh"] != null)
        {
            PolVeh = (Poliza)Session["PolVeh"];
        }
        else
        {
            PolVeh            = new Poliza();
            Session["PolVeh"] = PolVeh;

            Response.Redirect("SessionTerminada.aspx", false);
        }

        string resultado = Vehiculo.GuardaDatosInspeccion(PolVeh.NumCotizacion, "", "", datos_daños, datos_accesorios);

        if (resultado == "OK")
        {
            Session["InspeccionExpress"] = "OK";

            UtilesWeb.EjecutaJs(this, "alert('Los datos de la inspeccion han sido almacenados exitosamente.');");
            UtilesWeb.EjecutaJs(this, "window.close();");
        }
        else
        {
            Session["InspeccionExpress"] = "NO";

            UtilesWeb.EnviaCorreoAcusete(resultado, "Cot. Veh. Livianos - Emision.asxp - Inspeccion Express");
            UtilesWeb.EjecutaJs(this, "alert('Se registro un error al momento de generar la inspeccion, intentalo de nuevo mas tarde.');");
            return;
        }
    }
    public void AgregaDaño(DañosVehiculo Daños)
    {
        ArrayList ArrDaños = DañosVehiculo.CargaDaño();

        ArrDaños.Add(Daños);

        for (int i = ArrDaños.Count; i > 1; i--)
        {
            tblDaños.Rows.Remove(tblDaños.Rows[i - 1]);
        }

        EscribeDaños();
    }
    public bool ExisteDaño(string cod_parte, string cod_sub_parte)
    {
        ArrayList ArrDaños = DañosVehiculo.CargaDaño();

        for (int i = 0; i < ArrDaños.Count; i++)
        {
            if (((DañosVehiculo)ArrDaños[i]).CodParte.ToString() == cod_parte && ((DañosVehiculo)ArrDaños[i]).CodSubParte.ToString() == cod_sub_parte)
            {
                UtilesWeb.EjecutaJs(this, "alert('No es posible ingresar el daño porque este ya se encuentra registrado.');");
                return(false);
            }
        }

        return(true);
    }
    public void EscribeDaños()
    {
        ArrayList ArrDaños = DañosVehiculo.CargaDaño();

        for (int i = 0; i < ArrDaños.Count; i++)
        {
            TableRow    rowTotal    = new TableRow();
            ImageButton imgEliminar = new ImageButton();
            ImageButton Original    = this.imgEliminarOriginal;

            imgEliminar.ID       = "imgEliminar" + i;
            imgEliminar.ImageUrl = Original.ImageUrl;
            imgEliminar.Click   += imgEliminar_Click;

            TableCell cellEliminar = new TableCell();
            cellEliminar.CssClass = "CeldaEliminar";
            cellEliminar.Controls.Add(imgEliminar);
            rowTotal.Cells.Add(cellEliminar);

            TableCell cellDesc = new TableCell();
            cellDesc.CssClass = "CeldaDesc";
            cellDesc.Controls.Add(new LiteralControl(((DañosVehiculo)ArrDaños[i]).NomPartesVeh));
            rowTotal.Cells.Add(cellDesc);

            TableCell cellDaño = new TableCell();
            cellDaño.CssClass = "CeldaDaño";
            cellDaño.Controls.Add(new LiteralControl(((DañosVehiculo)ArrDaños[i]).NomDaño));
            rowTotal.Cells.Add(cellDaño);

            TableCell cellObs = new TableCell();
            cellObs.CssClass = "CeldaObs";
            cellObs.Controls.Add(new LiteralControl(((DañosVehiculo)ArrDaños[i]).Observacion));
            rowTotal.Cells.Add(cellObs);

            tblDaños.Rows.Add(rowTotal);
        }
    }