bool AplicarLibras() { foreach (var dr in dg.Rows) { int bltNumero = Convert.ToInt32(((System.Windows.Forms.DataGridViewRow)(dr)).Cells[0].Value); //blt_numero decimal bltPeso = Convert.ToDecimal(((System.Windows.Forms.DataGridViewRow)(dr)).Cells[3].Value); //blt_peso string bltCodigobarra = ((System.Windows.Forms.DataGridViewRow)(dr)).Cells[1].Value.ToString(); //codigo de barra int bltLibrasGratis = Convert.ToInt32(((System.Windows.Forms.DataGridViewRow)(dr)).Cells[5].Value); //Libras a aplicar if (bltPeso < 1) { bltPeso = 1; } if (bltLibrasGratis > 0 && bltLibrasGratis <= bltPeso) { string sMensaje = ""; BO.BO.CalculoTafiras oFact = new BO.BO.CalculoTafiras(); if (oFact.AplicarLibrasGratis(bltNumero, bltLibrasGratis, liCteId, Parametros.Parametros.UsuarioId, ref sMensaje) == false) { MessageBox.Show("Error aplicando libras \n" + sMensaje, "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Error); break; } ; } } return(false); }
void InsertaCargos(BO.Models.EquivalenciaBultos pEquivalencia) { ds.Tables["BULTOS_VALORES"].DefaultView.RowFilter = "BLT_NUMERO = " + pEquivalencia.BLT_NUMERO_SDQ.ToString(); DataView dv = ds.Tables["BULTOS_VALORES"].DefaultView; var vQryBultos = unitOfWork.BultosRepository.GetByID(pEquivalencia.BLT_NUMERO_LOCAL); BO.BO.CalculoTafiras oTar = new BO.BO.CalculoTafiras(); //RDE_REMITENTE //RDE_DESTINATARIO for (int i = 0; i < dv.Count; i++) { string sCarCodigo = dv[i]["CAR_CODIGO"].ToString().TrimEnd(); decimal dMontoAplicar = Convert.ToDecimal(dv[i]["BVA_MONTO"]); //filter: s => s.PROD_ID == iProductoId && s.Cargos.CAR_BASE_ID == 29 && s.Cargos.CAR_ESTADO == true var sQueryCargos = unitOfWork.CargosProductoRepository.Get(filter: s => s.Cargos.CAR_CODIGO == sCarCodigo && s.Cargos.CAR_BASE_ID == 29 && s.PROD_ID == vQryBultos.PROD_ID && s.Cargos.CAR_ESTADO == true).FirstOrDefault(); if (sQueryCargos != null) { var vBultosValores = unitOfWork.BultosValoresRepository.Get(filter: s => s.BLT_NUMERO == pEquivalencia.BLT_NUMERO_LOCAL && s.CargosProducto.Cargos.CAR_CODIGO == sCarCodigo).FirstOrDefault(); if (vBultosValores != null) { unitOfWork.BultosValoresRepository.Delete(vBultosValores); } var cargosExits = unitOfWork.CargosProductoRepository.Get(filter: s => s.PROD_ID == vQryBultos.PROD_ID && s.Cargos.CAR_BASE_ID == 29 && s.Cargos.CAR_ESTADO == true && s.Cargos.CAR_CODIGO == sCarCodigo).FirstOrDefault(); /*tipo cargos*/ BO.Models.BultosValores oBultosVal = new BO.Models.BultosValores(); oBultosVal.BLT_NUMERO = vQryBultos.BLT_NUMERO; oBultosVal.CARGO_PROD_ID = cargosExits.CARGO_PROD_ID; oBultosVal.BVA_TASA = cargosExits.TasaCambio.FACTOR_CONV; oBultosVal.BVA_MONTO = dMontoAplicar; if (cargosExits.Cargos.CAR_DIRECTO_TABLA == "D") { oBultosVal.BVA_MONTO_APLICAR = dMontoAplicar; } else { oBultosVal.BVA_MONTO_APLICAR = oTar.BuscarMontoAplicar(cargosExits.CARGO_PROD_ID, dMontoAplicar, vQryBultos.CTE_ID); } if (oBultosVal.BVA_MONTO_APLICAR < cargosExits.Cargos.CAR_MINIMO_FACTURAR) { oBultosVal.BVA_MONTO_APLICAR = cargosExits.Cargos.CAR_MINIMO_FACTURAR; } if (cargosExits.Cargos.CAR_FIJO_MULTIPLICAR == "F") { oBultosVal.BVA_MONTO_LOCAL = oBultosVal.BVA_MONTO_APLICAR * cargosExits.TasaCambio.FACTOR_CONV; } else { oBultosVal.BVA_MONTO_LOCAL = dMontoAplicar * oBultosVal.BVA_MONTO_APLICAR * cargosExits.TasaCambio.FACTOR_CONV; } unitOfWork.BultosValoresRepository.Insert(oBultosVal); } unitOfWork.Save(); } }
void RegistraCorrespondencia(decimal pdPeso, int piPiezas) { List <BO.Models.BultosValores> oBultosValores = new List <BO.Models.BultosValores>(); DataRow dr = oTableCorr.NewRow(); dr["Producto"] = Parametros.Parametros.NomProdCorrespondencia; dr["ProdId"] = Parametros.Parametros.ProdCorrespondencia; dr["Piezas"] = piPiezas; dr["Peso"] = pdPeso; dr["Monto"] = 0; BO.BO.CalculoTafiras oTar = new BO.BO.CalculoTafiras(); oBultosValores = oTar.CalcularCorrespondencia(Parametros.Parametros.ProdCorrespondencia, pdPeso, piPiezas, oCliente.CTE_ID); foreach (BO.Models.BultosValores oVal in oBultosValores) { dr["Monto"] = Math.Round((decimal)dr["Monto"] + oVal.BVA_MONTO_LOCAL, 2); } oTableCorr.Rows.Add(dr); }