public string SolicitarRecoleccionCF() { GuiaDAO guiaDAO = new GuiaDAO(); Guia[] guias = { this._guia }; //var resultado = this._client.busquedaCodigoPostal(PIN, IDUSUARIO, guias); this._guia.fechaDocumentacion = DateTime.Now; this._guia.personaRecibio = "Printomatik"; this._guia.costoSeguro = this._guia.paquetes.Sum(x => x.peso); // Total en peso this._guia.costoSeguroSpecified = true; this._guia.referencia = null; this._guia.fechaSituacion = DateTime.Now; this._guia.fechaDocumentacionSpecified = true; this._guia.situacion = new IdDesc { id = 0, idSpecified = true }; //Numero de sobres a recolectar this._guia.tipoEntrega = new IdDesc { id = this._guia.paquetes.Count(), idSpecified = true }; //Numero de paquetes a recolectar this._guia.remitente.codigoPostal = 33332; this._guia.remitente.email = "DE 4 A 5 DE LA TARDE"; this._guia.moneda = "1x1x1"; this._guiaResponse = this._client.solicitudRecoleccionCF(PIN, IDUSUARIO, guias).FirstOrDefault(); this.verificaResultado(); string folioRecoleccion = this._guiaResponse.referencia; guiaDAO.AgregarFolioRecoleccion(this._guia.numeroDeGuia, folioRecoleccion); return(folioRecoleccion); }
public int Predocumentar() { Guia[] guias = { this._guia }; PaqueteDAO paqueteDAO = new PaqueteDAO(); GuiaDAO guiaDAO = new GuiaDAO(); List <byte[]> paginas = new List <byte[]>(); this._guiaResponse = this._client.predocumentacion(PIN, IDUSUARIO, guias).FirstOrDefault(); int res = this.verificaResultado(); if (res == 58) { return(res); } this._guiaResponse.paquetes.ToList().ForEach(x => paginas.Add(x.formatoEtiqueta)); byte[] archivoUnido = this.concatAndAddContent(paginas); PaqueteEnvio paqueteDTO = new PaqueteEnvio() { numero_guia = this._guia.numeroDeGuia, detalle_impresion = archivoUnido, numero_orden = this._guia.referencia, }; guiaDAO.MarcarGuiaAsignada(this._guia.numeroDeGuia); paqueteDAO.AgregarPaquete(paqueteDTO); return(0); }
static void Main(string[] args) { GuiaViewModel model = new GuiaViewModel(); ClienteDAO clienteDAO = new ClienteDAO(); OrdenDAO ordenDAO = new OrdenDAO(); GuiaDAO guiaDAO = new GuiaDAO(); Guia guia = new Guia(); model.numeroOrden = "400000255"; model.observaciones = "Cajas con contenido frágil"; var orden = ordenDAO.ObtenerPorID(model.numeroOrden); if (orden == null) { Console.WriteLine($"La orden {model.numeroOrden} no esta registrada"); return; } //if (ordenDAO.TieneGuiaAsignada(model.numeroOrden)) //{ // Console.WriteLine($"La orden {model.numeroOrden} se le asignó una guia anteriormente"); // return; //} model.paquetes = new List <PaqueteViewModel>() { new PaqueteViewModel() { peso = 1f }, new PaqueteViewModel() { peso = 1f }, new PaqueteViewModel() { peso = 1f }, new PaqueteViewModel() { peso = 1f }, new PaqueteViewModel() { peso = 1f }, new PaqueteViewModel() { peso = 1f }, new PaqueteViewModel() { peso = 1f }, new PaqueteViewModel() { peso = 1f } }; var cliente = clienteDAO.ObtenerPorID(orden.id_cliente); guia.referencia = model.numeroOrden; guia.observaciones = model.observaciones; List <Paquete> paquetes = new List <Paquete>(); int i = 1; model.paquetes.ToList().ForEach(item => { paquetes.Add(new Paquete() { alto = 1, ancho = 1, largo = 1, largoSpecified = true, altoSpecified = true, anchoSpecified = true, pesoSpecified = true, descripcion = "Paquete " + (i++), peso = item.peso, }); }); guia.paquetes = paquetes.ToArray(); guia.consignatario = new Direccion() { calle = $"{orden.calle.ToUpper()} {orden.estado.ToUpper()}", codigoPostal = int.Parse(orden.codigo_postal), codigoPostalSpecified = true, email = cliente.email.ToLower(), contacto = $"{cliente.nombre.ToUpper()} {cliente.apellidos.ToUpper()}", telefonos = new List <Telefono> { new Telefono { telefono = orden.telefono } }.ToArray() }; RedPack redpack = new RedPack(guia); guia.numeroDeGuia = guiaDAO.ObtenerGuiaDisponible(1); guia.tipoServicio = new IdDesc() { id = 1, idSpecified = true, descripcion = "EXPRESS", equivalencia = "EXPRESS" }; //guia.tipoServicio = new IdDesc() { id = 2, idSpecified = true, descripcion = "ECOEXPRESS", equivalencia = "ECOEXPRESS" }; //guia.numeroDeGuia = guiaDAO.ObtenerGuiaDisponible(2); //guia.tipoServicio = new IdDesc() { id = 2, idSpecified = true, descripcion = "ECOEXPRESS", equivalencia = "ECOEXPRESS" }; //int res= redpack.Predocumentar(); // Console.WriteLine(res); while (redpack.Predocumentar() == 58) { Console.WriteLine($"Consumiendo el numero de guia {guia.numeroDeGuia}"); guia.numeroDeGuia = guiaDAO.ObtenerGuiaDisponible(1); guiaDAO.MarcarGuiaAsignada(guia.numeroDeGuia); } string folioRecoleccion = redpack.SolicitarRecoleccionCF(); Console.WriteLine($"Generacion de Guia {guia.numeroDeGuia} con el folio { folioRecoleccion} para la orden {model.numeroOrden}"); Console.ReadLine(); }