public CustomerServiceModel.Cost GetCost(ShippingModel shipping) { CustomerServiceModel.Cost costResponse = new CustomerServiceModel.Cost(); viewLiquidacion preLiquidacion = new viewLiquidacion(); double VL = shipping.content.Measures.Sum(c => c.VolumetricWeight); double VLW = shipping.content.Measures.Sum(c => c.Weight); try { var result = client.GetPreLiquidacion(ref eEncabezado, 2739, (decimal)shipping.content.Value, shipping.content.Quantity, (decimal)VLW, (decimal)VL, shipping.origin.Location.CityCode, shipping.receiver.Location.CityCode, ref preLiquidacion); costResponse.MainCost = (float)preLiquidacion.valorFlete; costResponse.VariableCost = (float)preLiquidacion.costoManejo; costResponse.TotalCost = (float)preLiquidacion.TotalFlete; } catch (Exception e) { costResponse.error.HasError = true; costResponse.error.Message = e.Message; } return(costResponse); }
public void GetCostTest() { CoordinadoraWebService svc = new CoordinadoraWebService(); CustomerServiceModel.Cost cst = svc.GetCost(GenerateShipping()); }
public CustomerServiceModel.Cost GetCost(ShippingModel shipping) { ServiceCotizadorManagement = new RpcServerSoapManagerService(); ServiceGuiaManagement = new JRpcServerSoapManagerService(); List <Cotizador_detalleEmpaques> empaque = new List <Cotizador_detalleEmpaques>(); CustomerServiceModel.Cost costResponse = new CustomerServiceModel.Cost(); Cotizador_cotizarIn CotizarIn = new Cotizador_cotizarIn { apikey = APIKEY, clave = Cont, cuenta = "1", nit = "", origen = Origen, producto = "0", nivel_servicio = new int[0], valoracion = shipping.content.Value.ToString().Replace(".", "").Replace(",", ""), destino = shipping.receiver.Location.CityCode, }; foreach (var measure in shipping.content.Measures) { empaque.Add(new Cotizador_detalleEmpaques() { alto = measure.Height.ToString(), ancho = measure.Width.ToString(), largo = measure.Length.ToString(), peso = measure.Weight.ToString(), ubl = "0", unidades = "1" }); } CotizarIn.detalle = empaque.ToArray(); try { var request = ServiceCotizadorManagement.Cotizador_cotizar(CotizarIn); costResponse.MainCost = request.flete_fijo; costResponse.VariableCost = request.flete_variable; costResponse.TotalCost = request.flete_total; } catch (Exception e) { costResponse.error.HasError = true; costResponse.error.Message = e.Message; } return(costResponse); }
public CustomerServiceModel.Cost GetCost(ShippingModel shipping) { CustomerServiceModel.Cost cost = new CustomerServiceModel.Cost(); try { var costRequest = Helpers.Utilities.doRequest <CustomerServiceModel.Cost>(CustomerServiceUrl, CustomerServiceModel.Resource.GETCOST, shipping, "POST", 50000); if (costRequest == null) { cost.error.HasError = true; cost.error.Message = "Hubo un error al consumir el servicio de costo"; return(cost); } cost = costRequest; } catch (Exception e) { cost.error.HasError = true; cost.error.Message = e.Message; } return(cost); }
public CustomerServiceModel.Cost GetCost(ShippingModel shipping) { CustomerServiceModel.Cost costResponse = new CustomerServiceModel.Cost(); BluWebService.viewLiquidacion liq = new BluWebService.viewLiquidacion(); BluWebService.EError Er = client.GetPreLiquidacion(ref enc, 2739, (decimal)shipping.content.Value, (decimal)shipping.content.Measures.Count, (decimal)shipping.content.Measures.Sum(item => item.Weight), (decimal)shipping.content.Measures.Sum(item => item.VolumetricWeight), shipping.origin.Location.CityCode, shipping.receiver.Location.CityCode, ref liq); if (Er.Codigo == 1) { costResponse.MainCost = (float)liq.valorFlete; costResponse.VariableCost = (float)liq.costoManejo; costResponse.TotalCost = (float)liq.TotalFlete; return(costResponse); } else { costResponse.error.HasError = true; costResponse.error.Message = Er.Descripcion; return(costResponse); } }
public CustomerServiceModel.Cost GetCost(ShippingModel shipping) { CustomerServiceModel.Cost costResponse = new CustomerServiceModel.Cost(); int unidad = ReturnUnidadDeNegocio(shipping); Liquidacion liquidacion = new Liquidacion { boomerang = "0", tipoenvio = "1", idciudadorigen = "05001000", idciudaddestino = shipping.receiver.Location.CityCode, valormercancia = shipping.content.Value.ToString().Replace(".", "").Replace(",", ""), cuenta = "", fecharemesa = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), idunidadestrategicanegocio = unidad.ToString(), }; co.com.tcc.clientes.liquidacion.unidad[] _unidades = new co.com.tcc.clientes.liquidacion.unidad[shipping.content.Measures.Count]; int i = 0; if (unidad == 1) { foreach (var measure in shipping.content.Measures) { measure.VolumetricWeight = measure.VolumetricWeight == 0 ? 1 : measure.VolumetricWeight; measure.Weight = measure.Weight == 0 ? 1 : measure.Weight; co.com.tcc.clientes.liquidacion.unidad x = new co.com.tcc.clientes.liquidacion.unidad { alto = measure.Height.ToString(), ancho = measure.Width.ToString(), largo = measure.Length.ToString(), numerounidades = "1", pesoreal = measure.Weight.ToString(), pesovolumen = measure.VolumetricWeight.ToString(), tipoempaque = "" }; _unidades[i] = x; i++; } } else { shipping.content.Measures[0].Weight = shipping.content.Measures[0].Weight == 0 ? 1 : shipping.content.Measures[0].Weight; shipping.content.Measures[0].VolumetricWeight = shipping.content.Measures[0].VolumetricWeight == 0 ? 1 : shipping.content.Measures[0].VolumetricWeight; _unidades[0] = new co.com.tcc.clientes.liquidacion.unidad { alto = shipping.content.Measures[0].Height.ToString(), ancho = shipping.content.Measures[0].Width.ToString(), largo = shipping.content.Measures[0].Length.ToString(), numerounidades = "1", pesoreal = shipping.content.Measures[0].Weight.ToString(), pesovolumen = shipping.content.Measures[0].VolumetricWeight.ToString(), tipoempaque = " ", }; //_unidades[0] = new co.com.tcc.clientes.liquidacion.unidad //{ // alto = shipping.content.Measures[0].Height.ToString(), // ancho = shipping.content.Measures[0].Width.ToString(), // largo = shipping.content.Measures[0].Length.ToString(), // dicecontener = shipping.content.Description, // kilosreales = shipping.content.Measures[0].Weight > shipping.content.Measures[0].VolumetricWeight ? shipping.content.Measures[0].Weight.ToString() : shipping.content.Measures[0].VolumetricWeight.ToString(), // valormercancia = shipping.content.Value.ToString(), // pesovolumen = "1", // tipoempaque = " ", // tipounidad = "TIPO_UND_PAQ", // claseempaque = "CLEM_CAJA", // codigobarras = " ", // numerobolsa = " ", // referencias = " " //}; } liquidacion.unidades = _unidades; try { string user = "******"; log.Debug(liquidacion); var request = _paymentService.consultarliquidacion(user, liquidacion); if (request.respuesta.codigo != "0") { costResponse.error.HasError = true; costResponse.error.Message = request.respuesta.mensaje + " | | " + request.respuesta.mensajeinterno + " usuario: " + user; return(costResponse); } costResponse.VariableCost = float.Parse(request.subtotales[0].valor, CultureInfo.InvariantCulture.NumberFormat); costResponse.MainCost = float.Parse(request.subtotales[1].valor, CultureInfo.InvariantCulture.NumberFormat); costResponse.TotalCost = float.Parse(request.total.totaldespacho); } catch (Exception e) { costResponse.error.HasError = true; costResponse.error.Message = e.Message; } return(costResponse); }