public bool cancelarReservaAC(string idCarrito, string idTienda, string idUsuario, string userThinkretail, string passThinkretail, string idTerminal, string Tienda) { Dictionary <string, int> stockSolicitado = new Dictionary <string, int>(); string referencia; string talla; string idLineaCarrito; string idArticulo; string idPedido; string idTicket; //Obtenemos las lineas del carrito DataSet dsLineasCarrito = StockTiendaDAL.GetLineasCarrito(idCarrito); List <string> articulosSinStock = new List <string>(); ThinkRetailServiceWeb.wsThinkRetail wsThinkRetail = new ThinkRetailServiceWeb.wsThinkRetail(); wsThinkRetail.CookieContainer = new System.Net.CookieContainer(); if (wsThinkRetail.Login(userThinkretail, passThinkretail)) { foreach (DataRow row in dsLineasCarrito.Tables[0].Rows) { string estadoReserva = row["EstadoReservaThinkRetail"].ToString(); if (estadoReserva != null && estadoReserva.Equals("OK")) { referencia = StockTiendaDAL.GetReferencia(row["IdArticulo"].ToString()); talla = StockTiendaDAL.GetTallaLineaCarrito(row["IdPedido"].ToString()); idLineaCarrito = row["id_Carrito_Detalle"].ToString(); idPedido = row["IdPedido"].ToString(); idTicket = StockTiendaDAL.ObtieneUltimoTicketTR(Tienda, idTerminal); if (idTicket != "") { idTicket = idTicket + "/" + idTerminal + "/" + Tienda + "-" + idPedido; ThinkRetailServiceWeb.SalidaMsg respuesta = wsThinkRetail.CancelaReservaTR(idTicket, KEY_TIENDA_CENTRAL); try { string Descrip = ""; log.Error("Descripcion:" + respuesta.Descripcion); if (respuesta.Mensajes != null) { foreach (ThinkRetailServiceWeb.Mensaje msjs in respuesta.Mensajes) { Descrip = Descrip + msjs.Descripcion; } log.Error("Descripcion_Cancelacion_Carro: " + Descrip); } else { log.Error("respuesta.Mensajes devuelto es null "); } } catch (Exception ex) { log.Error(ex.Message.ToString()); } } else { log.Error("No se ha obtenido ticket"); } } } } return(true); }
public List <string> ComprobarStock(string idCarrito, string idTienda, string idUsuario, string userHermess, string passHermess, string siteHermes, string idTerminal, string Tienda) { Dictionary <string, int> stockSolicitado = new Dictionary <string, int>(); string referencia; string talla; string idLineaCarrito; string idArticulo; string idPedido; string precioArticulo; string idTicket; //Obtenemos las lineas del carrito DataSet dsLineasCarrito = StockTiendaDAL.GetLineasCarrito(idCarrito); List <string> articulosSinStock = new List <string>(); foreach (DataRow row in dsLineasCarrito.Tables[0].Rows) { int hayStock = 0; idArticulo = row["IdArticulo"].ToString(); referencia = StockTiendaDAL.GetReferencia(row["IdArticulo"].ToString()); talla = StockTiendaDAL.GetTallaLineaCarrito(row["IdPedido"].ToString()); idLineaCarrito = row["id_Carrito_Detalle"].ToString(); idPedido = row["IdPedido"].ToString(); precioArticulo = row["PVPACT"].ToString(); idTicket = StockTiendaDAL.ObtieneUltimoTicketTR(Tienda, idTerminal); if (idTicket != "") { idTicket = idTicket + "/" + idTerminal + "/" + Tienda + "-" + idPedido; } else { log.Error("No se ha obtenido ticket"); } HermesModaliaWebServiceReference.HermesImplClient wsStock = new HermesModaliaWebServiceReference.HermesImplClient(); //if (!string.IsNullOrEmpty(idTienda)) //{ string stock = wsStock.getStock(userHermess, passHermess, siteHermes, referencia, talla); hayStock = Convert.ToInt32(stock); //} //if (!hayStock) hayStock = StockThinkRetail(referencia, talla, idPedido, KEY_TIENDA_CENTRAL,KEY_TIENDA_EXTERNA, idUsuario, userThinkretail, passThinkretail,idTicket); //if (!hayStock) hayStock = StockThinkRetail(referencia, talla, idPedido, KEY_TIENDA_ECOMMERCE,KEY_TIENDA_EXTERNA, idUsuario, userThinkretail, passThinkretail,idTicket); //if (!hayStock) hayStock = StockEnTiendas(referencia, talla, null, idLineaCarrito, ref stockSolicitado); if (hayStock <= 0) { articulosSinStock.Add(idLineaCarrito + "#" + StockTiendaDAL.GetDescripcionArticulo(idArticulo) + "#" + precioArticulo); } } return(articulosSinStock); }