Ejemplo n.º 1
0
        public static DateTime ValidarParametrosFecha(DateTime fechaConsulta)
        {
            DateTime fechaArreglo = fechaConsulta;

            if (UtilitarioPlanning.GetWeekDayNumber(fechaConsulta.DayOfWeek) == 7 || DBFunctions.RecordExist("SELECT pdf_secuencia FROM pdiafestivo WHERE pdf_fech='" + fechaConsulta.ToString("yyyy-MM-dd") + "'"))
            {
                fechaArreglo = fechaArreglo.AddDays(1);
            }
            return(fechaArreglo);
        }
Ejemplo n.º 2
0
        private string ConstruirTextoCumplidas(DataRow[] draOperacionesCumplidas)
        {
            string salida = "<table class='tablewhite2' cellSpacing='0' cellPadding='1' width='100%' border='0'>";

            for (int i = 0; i < draOperacionesCumplidas.Length; i++)
            {
                salida += "<tr><td><span style='cursor:pointer' onclick=\"ConsOT('" + draOperacionesCumplidas[i][0] + "'," + draOperacionesCumplidas[i][1] + ");\">" + draOperacionesCumplidas[i][2] + " - " + draOperacionesCumplidas[i][3] + "</span></td><td><span style='color:#" + UtilitarioPlanning.ReturnRGBParalizado(draOperacionesCumplidas[i][5].ToString()) + ";font-weight:bold'>" + draOperacionesCumplidas[i][6] + "</span></td></tr>";
            }
            salida += "</table>";
            return(salida);
        }
Ejemplo n.º 3
0
 protected void Button1_Click(object sender, System.EventArgs e)
 {
     Label1.Text = UtilitarioPlanning.GetWeekDayNumber(CalendarPopup1.SelectedDate.DayOfWeek).ToString();
 }
Ejemplo n.º 4
0
        //FUNCION PARA GRABAR LA ORDEN
        protected void Grabar_Orden(Object Sender, EventArgs e)
        {
            grabar.Enabled = false;
            Utils.MostrarAlerta(Response, "Grabación de la Orden. Acepte, espere e imprima los formatos !!!");

            ////////////////////////////////////////////////////////////////////////////////////////////////////////////////
            //A continuacion cargamos los controles que contienen los datos necesarios para grabar la orden de trabajo en la base de datos
            Control controlDatosOrden       = datosOrigen.Controls[0];
            Control controlDatosVehiculo    = datosVehiculo.Controls[0];
            Control controlDatosPropietario = datosPropietario.Controls[0];
            Control controlKitsCombos       = kitsCombos.Controls[0];
            Control controlPeritaje         = operacionesPeritaje.Controls[0];

            //Aun falta por revisar si hubo cambio de PROPIETARIO, cuando hay cambio de dueño debemos actualizar mcatalogovehiculo
            string nit         = ((TextBox)controlDatosPropietario.FindControl("datos")).Text;
            string contacto    = ((TextBox)controlDatosPropietario.FindControl("contacto")).Text;
            string vin         = ((TextBox)controlDatosVehiculo.FindControl("identificacion")).Text;
            string tipoUsuario = DBFunctions.SingleData("SELECT tpro_codigo FROM tpropietariotaller WHERE tpro_nombre='" + ((RadioButtonList)controlDatosPropietario.FindControl("tipoCliente")).SelectedItem.ToString().Trim() + "'");

            if (DBFunctions.SingleData("SELECT mnit_nit FROM mcatalogovehiculo WHERE mcat_vin='" + vin + "'") != nit && tipoUsuario == "P")
            {
                DBFunctions.NonQuery("UPDATE mcatalogovehiculo SET mnit_nit='" + nit + "' WHERE mcat_vin='" + vin + "'");
            }

            //Ahora vamos a revisar si la orden de trabajo viene por parte de un seguro, o por cualquiera de los dos tipos de garantia
            string cargo = ((DropDownList)controlDatosOrden.FindControl("cargo")).SelectedValue;

            //
            if (cargo == "S")
            {
                cargoGrabar = new ArrayList();
                cargoGrabar.Add("seguro");
                cargoGrabar.Add(((TextBox)controlDatosVehiculo.FindControl("nitAseguradora")).Text);
                cargoGrabar.Add(((TextBox)controlDatosVehiculo.FindControl("siniestro")).Text);
                cargoGrabar.Add(Convert.ToDouble(((TextBox)controlDatosVehiculo.FindControl("porcentajeDeducible")).Text.Trim()).ToString());
                cargoGrabar.Add(Convert.ToDouble(((TextBox)controlDatosVehiculo.FindControl("valorMinDeducible")).Text.Trim()).ToString());
                cargoGrabar.Add(((TextBox)controlDatosVehiculo.FindControl("numeroAutorizacionAsegura")).Text);
            }
            else if (cargo == "G")
            {
                cargoGrabar = new ArrayList();
                cargoGrabar.Add("garantia");
                cargoGrabar.Add(((TextBox)controlDatosVehiculo.FindControl("nitCompania")).Text);
                cargoGrabar.Add(((TextBox)controlDatosVehiculo.FindControl("numeroAutorizacionGarant")).Text);
            }
            else
            {
                cargoGrabar = null;
            }
            //////////////////////////////////////////////////////////////////////////////////////////////////////////I
            //////////////////////////////////////////////////////////////////////////////////////////////////////////
            // Fin de revision de los cargos de la orden
            // Se llenan los datables que van a ser enviados a la clase de Orden en el contructor
            if (!Distribuir_Tablas(((DataGrid)controlKitsCombos.FindControl("kitsOperaciones")), DBFunctions.SingleData("SELECT pdoc_codigo FROM pdocumento WHERE pdoc_nombre='" + ((DropDownList)controlDatosOrden.FindControl("tipoDocumento")).SelectedItem.ToString() + "'"), ((TextBox)controlDatosOrden.FindControl("numOrden")).Text.Trim()) && (!Distribuir_Tablas_Repuestos()))
            {
                Orden      miOrden      = null;
                Cotizacion miCotizacion = new Cotizacion();
                //string tipoTrabajo = DBFunctions.SingleData("SELECT ttra_codigo FROM ttrabajoorden WHERE ttra_nombre='" + ((DropDownList)controlDatosOrden.FindControl("servicio")).SelectedItem.ToString().Trim() + "'");
                string tipoTrabajo = ((DropDownList)controlDatosOrden.FindControl("servicio")).SelectedValue;
                if (tipoTrabajo == "P" || tipoTrabajo == "C")
                {
                    int         cantidadGrillas = System.Convert.ToInt32(Session["cantidadGrillas"]);
                    DataTable[] tablasAsociadas;
                    tablasAsociadas = new DataTable[cantidadGrillas];
                    for (int i = 0; i < cantidadGrillas; i++)
                    {
                        tablasAsociadas[i] = ((DataTable[])Session["tablasAsociadas"])[i].Copy();
                    }
                    Distribuir_Tabla_Peritaje(((PlaceHolder)controlPeritaje.FindControl("gruposPeritaje")),
                                              tablasAsociadas,
                                              ((ArrayList)Session["codigosGruposPeritaje"]),
                                              cantidadGrillas,
                                              DBFunctions.SingleData("SELECT pdoc_codigo FROM pdocumento WHERE pdoc_nombre='" + ((DropDownList)controlDatosOrden.FindControl("tipoDocumento")).SelectedItem.ToString() + "'"),
                                              ((TextBox)controlDatosOrden.FindControl("numOrden")).Text.Trim());

                    bool grabarTransferencias = tipoTrabajo == "P"; // cuando es peritaje si, cuando es cotización no

                    if (tipoTrabajo == "P")
                    {
                        miOrden = new Orden(operacionesGrabar, accesoriosGrabar, operacionesPeritajeGrabar, cargoGrabar, grabarTransferencias);
                    }
                    else
                    {
                        miOrden = new Orden(operacionesGrabar, accesoriosGrabar, operacionesPeritajeGrabar, cargoGrabar, repuestosGrabar, grabarTransferencias);
                    }
                }
                else
                {
                    miOrden = new Orden(operacionesGrabar, accesoriosGrabar, repuestosGrabar, cargoGrabar);
                }
                //En caso que sea una orden de trabajo la grabamos aqui
                miOrden.CodigoPrefijo            = DBFunctions.SingleData("SELECT pdoc_codigo FROM pdocumento WHERE pdoc_nombre='" + ((DropDownList)controlDatosOrden.FindControl("tipoDocumento")).SelectedItem.ToString() + "'");
                miOrden.NumeroOrden              = ((TextBox)controlDatosOrden.FindControl("numOrden")).Text.Trim();
                miOrden.Catalogo                 = ((DropDownList)controlDatosVehiculo.FindControl("modelo")).SelectedValue;
                miOrden.VinIdentificacion        = ((TextBox)controlDatosVehiculo.FindControl("identificacion")).Text;
                miOrden.NitPropietario           = ((TextBox)controlDatosPropietario.FindControl("datos")).Text;
                miOrden.TipoUsuario              = tipoUsuario;
                miOrden.EstadoOrden              = "E";
                miOrden.Cargo                    = ((DropDownList)controlDatosOrden.FindControl("cargo")).SelectedValue;
                miOrden.TipoTrabajo              = tipoTrabajo;
                miOrden.FechaEntrada             = ((TextBox)controlDatosOrden.FindControl("fecha")).Text.Trim();
                miOrden.HoraEntrada              = ((TextBox)controlDatosOrden.FindControl("hora")).Text.Trim() + ":" + ((TextBox)controlDatosOrden.FindControl("minutos")).Text.Trim();
                miOrden.FechaHoraCreacion        = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                miOrden.FechaEntrega             = UtilitarioPlanning.ValidarParametrosFecha(Convert.ToDateTime(((TextBox)controlKitsCombos.FindControl("fechaEstimada")).Text)).ToString("yyyy-MM-dd");
                miOrden.HoraEntrega              = ((TextBox)controlKitsCombos.FindControl("horaEstimada")).Text;
                miOrden.Salida                   = "NULL";
                miOrden.NumeroEntrada            = "1";
                miOrden.Kilometraje              = System.Convert.ToDouble(((TextBox)controlDatosVehiculo.FindControl("kilometraje")).Text.Trim()).ToString();
                miOrden.Recepcionista            = DBFunctions.SingleData("SELECT pven_codigo FROM pvendedor WHERE pven_nombre='" + ((DropDownList)controlDatosOrden.FindControl("codigoRecep")).SelectedItem.ToString().Trim() + "'");
                miOrden.Taller                   = DBFunctions.SingleData("SELECT palm_almacen FROM palmacen WHERE tvig_vigencia='V' and palm_descripcion='" + ((DropDownList)controlDatosOrden.FindControl("almacen")).SelectedItem.ToString().Trim() + "'");
                miOrden.EstadoPrecios            = "A";
                miOrden.NumeroLocker             = "1";
                miOrden.EstadoLiquidacion        = "L";
                miOrden.NivelCombustible         = "1";
                miOrden.ObsrCliente              = ((TextBox)controlDatosOrden.FindControl("obsrCliente")).Text;
                miOrden.ObsrRecepcionista        = ((TextBox)controlDatosOrden.FindControl("obsrRecep")).Text;
                miOrden.ListaPrecios             = DBFunctions.SingleData("SELECT ppreta_codigo FROM ppreciotaller WHERE ppreta_nombre='" + ((DropDownList)controlDatosOrden.FindControl("listaPrecios")).SelectedItem.ToString().Trim() + "'");
                miOrden.TipoPago                 = DBFunctions.SingleData("SELECT ttip_codigo FROM ttipopago WHERE ttip_nombre='" + ((DropDownList)controlDatosPropietario.FindControl("tipoPago")).SelectedItem.ToString() + "'");
                miOrden.CodigoEstadoCita         = ((Label)controlDatosOrden.FindControl("lbEstCita")).Text.Trim();
                miOrden.NitTransferencia         = DBFunctions.SingleData("SELECT pnital_nittaller FROM pnittaller WHERE palm_almacen='" + miOrden.Taller + "' fetch first row only");
                miOrden.TipoTransferencia        = ((DropDownList)controlDatosOrden.FindControl("tipoPedido")).SelectedValue;
                miOrden.PrefijoTransferencia     = DBFunctions.SingleData("SELECT pdoc_codigo FROM pdocumento WHERE tdoc_tipodocu='TT' fetch first row only"); // debería parametrizarse en el web.config
                miOrden.TotalTransferencia       = this.Calcular_Total_Transferencia();
                miOrden.TotalTransferenciaSinIVA = this.Calcular_Total_Transferencia_SinIVA();
                miOrden.AlmacenTransferencia     = DBFunctions.SingleData("SELECT palm_almacen FROM palmacen WHERE tvig_vigencia='V' and pcen_centinv is not null fetch first row only"); // debería parametrizarse en el web.config
                miOrden.KitsAplicados            = (ArrayList)Session["escogidos2"];
                miOrden.Contacto                 = contacto;
                miOrden.AceptaEncuesta           = true;
                miOrden.RevisionElevador         = true;
                miOrden.EntregoPresupuesto       = true;

                if (grabar.Text == "Guardar Modificación")
                {
                    if (miOrden.Actualizar_Orden_Trabajo(true))
                    {
                        Utils.MostrarAlerta(Response, "La orden ha sido actualizada");
                    }
                    else
                    {
                        lb.Text = miOrden.ProcessMsg;
                    }
                }
                else if (grabar.Text == "Guardar Orden Preliquidada")
                {
                    if (miOrden.Actualizar_Orden_Trabajo(false))
                    {
                        lb.Text = miOrden.ProcessMsg;
                    }
                    else
                    {
                        lb.Text = miOrden.ProcessMsg;
                    }
                }

                else if (miOrden.CommitValues())
                {
                    string numPedido        = DBFunctions.SingleData("Select MPED_NUMERO from DBXSCHEMA.MPEDIDOTRANSFERENCIA where MORD_NUMEORDE=" + miOrden.NumeroOrden + " AND PPED_CODIGO='" + miOrden.TipoTransferencia + "';");
                    string numTransferencia = DBFunctions.SingleData("Select MFAC_NUMERO from DBXSCHEMA.MORDENTRANSFERENCIA where MORD_NUMEORDE=" + miOrden.NumeroOrden + " AND PDOC_FACTURA='" + miOrden.PrefijoTransferencia + "';");
                    string presupuesto      = miOrden.EntregoPresupuesto ? "S" : "N";
                    lb.Text = "<br>BIEN : " + miOrden.ProcessMsg;
                    Session.Clear();
                    Response.Redirect("" + indexPage + "?process=Automotriz.OrdenTrabajoCotizaciones&prefOT=" + miOrden.CodigoPrefijo + "&numOT=" + miOrden.NumeroOrden + "&prefTRA=" + miOrden.PrefijoTransferencia + "&numTRA=" + numTransferencia + "&tipoPED=" + miOrden.TipoTransferencia + "&numPED=" + numPedido + "&pres=" + presupuesto);
                }
                else
                {
                    lb.Text += "<br>MAL :" + miOrden.ProcessMsg;
                }
            }
            else
            {
                Utils.MostrarAlerta(Response, "Existe Algun Elemento Repetido, Por Favor Verifique las Tablas");
            }
        }