示例#1
0
        private void agregarDetalleDescuentos(PartesBusquedaEnMovimientosView parte)
        {
            DataRow row;
            try
            {
                if (parte != null)
                {
                    row = dtDetalleDescuentos.NewRow();
                    row["ParteID"] = parte.ParteID;
                    row["MarcaParteID"] = parte.MarcaParteID;
                    row["Numero Parte"] = parte.NumeroParte;
                    row["Descripcion"] = parte.NombreParte;
                    row["Costo Inicial"] = 0;           //Valor Precio de Lista del grid inicial
                    row["Descuento Marca"] = 0;
                    row["Resultado Marca"] = 0;
                    row["Descuento Items"] = 0;
                    row["Resultado Items"] = 0;
                    row["Descuento Individual"] = 0;
                    row["Resultado Individual"] = 0;
                    row["Unitario"] = 0;                //=(Importe / UNS)
                    row["UNS"] = 0;                     //Valor UNS del grid incial
                    row["Importe"] = 0;                 //Valor Importe del grid inicial
                    row["CostoConDescuentoActual"] = parte.CostoConDescuento;
                    dtDetalleDescuentos.Rows.Add(row);
                }
            }
            catch
            {

            }
        }
示例#2
0
        private void agregarDetalleDiferencia(PartesBusquedaEnMovimientosView parte)
        {
            DataRow row;
            try
            {
                if (parte != null)
                {
                    row = dtDiferencia.NewRow();
                    row["ParteID"] = parte.ParteID;
                    row["MarcaParteID"] = parte.MarcaParteID;
                    row["Numero Parte"] = parte.NumeroParte;
                    row["Descripcion"] = parte.NombreParte;
                    row["Cantidad"] = 1M;
                    row["Costo Actual"] = parte.Costo;

                    //Obtener los valores de % de la tabla 'proveedorGanancia', de lo contrario de la tabla 'PartePrecio'
                    /* Método anterior
                    var ganancias = General.GetEntity<ProveedorGanancia>(p => p.ProveedorID.Equals(proveedor.ProveedorID)
                        && p.MarcaParteID.Equals(parte.MarcaParteID) && p.LineaID.Equals(parte.LineaID));
                    if (ganancias != null)
                    {
                        row["%1"] = ganancias.PorcentajeUno;
                        row["%2"] = ganancias.PorcentajeDos;
                        row["%3"] = ganancias.PorcentajeTres;
                        row["%4"] = ganancias.PorcentajeCuatro;
                        row["%5"] = ganancias.PorcentajeCinco;
                    }
                    else
                    {
                        row["%1"] = parte.PorcentajeUtilidadUno;
                        row["%2"] = parte.PorcentajeUtilidadDos;
                        row["%3"] = parte.PorcentajeUtilidadTres;
                        row["%4"] = parte.PorcentajeUtilidadCuatro;
                        row["%5"] = parte.PorcentajeUtilidadCinco;
                    }
                    */
                    var oParteGan = AdmonProc.ObtenerParteDescuentoGanancia(this.proveedor.ProveedorID, parte.MarcaParteID, parte.LineaID, parte.ParteID);
                    if (oParteGan != null)
                    {
                        row["%1"] = oParteGan.PorcentajeDeGanancia1;
                        row["%2"] = oParteGan.PorcentajeDeGanancia2;
                        row["%3"] = oParteGan.PorcentajeDeGanancia3;
                        row["%4"] = oParteGan.PorcentajeDeGanancia4;
                        row["%5"] = oParteGan.PorcentajeDeGanancia5;
                    }
                    // Si es 9500, se pone el precio ya establecido
                    if (Datos.Exists<Parte>(c => c.ParteID == parte.ParteID && c.Es9500 == true && c.Estatus))
                    {
                        var oReg9500 = Datos.GetEntity<Cotizaciones9500DetalleAvanzadoView>(c => c.ParteID == parte.ParteID
                            && c.Cotizacion9500EstatusID == Cat.EstatusGenericos.Pendiente);
                        if (oReg9500 != null)
                        {
                            decimal mPorcentaje = Math.Round(oReg9500.PrecioAlCliente / parte.Costo.Valor(), 2);
                            // Se verifica si el porcentaje del 9500 está dentro del rango preestablecido
                            if (mPorcentaje < Util.Decimal(row["%5"]) || mPorcentaje > Util.Decimal(row["%1"]))
                                row.SetColumnError("Precio 1", "El precio del 9500 no está dentro del rango de los precios pre-establecidos.");
                            row["%1"] = mPorcentaje;
                            row["%2"] = mPorcentaje;
                            row["%3"] = mPorcentaje;
                            row["%4"] = mPorcentaje;
                            row["%5"] = mPorcentaje;
                        }
                    }
                    else
                    {

                    }

                    //Columna Etiqueta
                    var rowIndex = UtilLocal.findRowIndex(this.dgvDetalleCaptura, "ParteID", parte.ParteID.ToString());
                    if (parte.Etiqueta != null)
                    {
                        if (Util.Logico(parte.Etiqueta) == true)
                            // if (parte.SoloUnaEtiqueta != null)
                                if (Util.Logico(parte.SoloUnaEtiqueta) == true)
                                    row["Etiqueta"] = 1;
                                else
                                    if (rowIndex >= 0)
                                        row["Etiqueta"] = Util.Entero(this.dgvDetalleCaptura.Rows[rowIndex].Cells["UNS"].Value);
                    }

                    dtDiferencia.Rows.Add(row);
                }
            }
            catch (Exception ex)
            {
                Util.MensajeError(ex.Message, GlobalClass.NombreApp);
            }
        }
示例#3
0
        private void agregarDetalleCaptura(PartesBusquedaEnMovimientosView parte)
        {
            DataRow row;
            try
            {
                if (parte != null)
                {
                    //var costo = General.GetEntity<PartePrecio>(p => p.ParteID == parte.ParteID);
                    row = dtDetalleConceptos.NewRow();
                    row["ParteID"] = parte.ParteID;
                    row["MarcaParteID"] = parte.MarcaParteID;
                    row["Numero Parte"] = parte.NumeroParte;
                    row["Descripcion"] = parte.NombreParte;
                    row["Costo Inicial"] = parte.Costo;
                    row["UNS"] = 1;
                    row["Importe"] = parte.Costo;
                    row["CostoConDescuento"] = parte.CostoConDescuento;

                    dtDetalleConceptos.Rows.Add(row);
                    if (this.dgvDetalleCaptura.Rows.Count > 0)
                    {
                        this.dgvDetalleCaptura.ClearSelection();
                        this.dgvDetalleCaptura.CurrentCell = this.dgvDetalleCaptura["Costo Inicial", this.dgvDetalleCaptura.Rows.Count - 1];
                        this.dgvDetalleCaptura.BeginEdit(true);
                    }
                }
            }
            catch
            {

            }
        }