{"id":544,"date":"2025-08-02T18:05:45","date_gmt":"2025-08-02T16:05:45","guid":{"rendered":"https:\/\/www.luigitarpani.it\/?p=544"},"modified":"2025-08-02T18:09:13","modified_gmt":"2025-08-02T16:09:13","slug":"integrazione-easyevolver-xenion-comunicazione-tra-due-sistemi-diversi","status":"publish","type":"post","link":"https:\/\/www.luigitarpani.it\/index.php\/2025\/08\/02\/integrazione-easyevolver-xenion-comunicazione-tra-due-sistemi-diversi\/","title":{"rendered":"Integrazione EasyEvolver\u2013Xenion: Comunicazione tra due sistemi diversi."},"content":{"rendered":"\n<p>Continua la serie di argomenti su Flutter con un altro esempio pratico di una applicazione che abbiamo recentemente realizzato.<\/p>\n\n\n\n<p>Siamo stati contattati dalla struttura ricettiva <a href=\"https:\/\/www.domusvolumnia.it\/\"><strong>Domus Volumnia<\/strong><\/a> per risolvere un problema di gestione del flusso di lavoro:  La struttura utilizza due ottimi software, uno per la gestione delle sale del ristorante interno e un altro per la gestione della parte alberghiera. Ma questi i due software non comunicano tra di loro e non vogliono essere cambiati. <\/p>\n\n\n\n<p>Che cosa succede quando un cliente che soggiorna in Hotel va al ristorante e chiede di addebitare in camera ? <\/p>\n\n\n\n<p><em>EasyEvolver<\/em> di <strong><a href=\"https:\/\/www.systemretail.it\/\">System Retail<\/a><\/strong> gira nei computer e tablet delle sale del ristorante, mentre <em><a href=\"https:\/\/xenion.tobugroup.com\/\">Xenion<\/a> <\/em>di <strong><a href=\"https:\/\/tobugroup.com\/\">Tobu Group<\/a><\/strong> e&#8217; il punto di riferimento per chi lavora in reception.  <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Obbiettivo<\/h2>\n\n\n\n<p>Studiare il modo migliore per realizzare il passaggio di informazioni in maniera piu&#8217; trasparente possibile per gli operatori<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Soluzione<\/h2>\n\n\n\n<p>La soluzione proposta e&#8217; la realizzazione di un software di integrazione che si occupa dell\u2019addebito automatico in camera delle consumazioni effettuate dai clienti residenti in Hotel.<br>I dati provenienti dal sistema cassa <em>EasyEvolver <\/em>vengono trasmessi automaticamente al gestionale <em>Xenion <\/em>tramite le sue API, garantendo un&#8217;integrazione rapida, affidabile e trasparente agli operatori.<br><br>Al momento del pagamento del conto al ristorante, nel caso in cui il cliente scelga di addebitare alla sua camera, baster\u00e0 inserire il numero di camera ed il conto verr\u00e0 trasferito al gestionale <em>Xenion <\/em>che lo gestir\u00e0 come un servizio aggiuntivo usato dal cliente inserendolo nel giusto centro di costo e nel totale da corrispondere al momento del check-out.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Caratteristiche principali di funzionamento<\/h2>\n\n\n\n<p>E\u2019 una applicazione sviluppata in Flutter potenzialmente multipiattaforma. Una delle peculiarit\u00e0 di Flutter \u00e8 proprio la facilit\u00e0 di migrazione delle applicazioni realizzate sia se si utilizzano Pc Windows, Apple o Android.<\/p>\n\n\n\n<p>Il funzionamento si basa su tre moduli:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><a href=\"https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/Integrazione_tra_software_struttura_dei_moduli.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"320\" src=\"https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/Integrazione_tra_software_struttura_dei_moduli-1024x320.jpg\" alt=\"\" class=\"wp-image-547\" style=\"width:621px;height:auto\" srcset=\"https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/Integrazione_tra_software_struttura_dei_moduli-1024x320.jpg 1024w, https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/Integrazione_tra_software_struttura_dei_moduli-300x94.jpg 300w, https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/Integrazione_tra_software_struttura_dei_moduli-768x240.jpg 768w, https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/Integrazione_tra_software_struttura_dei_moduli.jpg 1227w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Modulo 1<\/h3>\n\n\n\n<p>Lettura informazioni dal software cassa <em>EasyEvolver <\/em><\/p>\n\n\n\n<p>Il Modulo 1 si adatta al tipo di esportazione e configurazione di <em>EasyEvolver<\/em>.<\/p>\n\n\n\n<p>Caso attuale <strong>Country House Domus Volumnia<\/strong> :<br> &#8211; Nella ristorazione si utilizza Easy-Evolver che in questo caso funziona centralizzato in un PC con windows 10.<br>&#8211; L\u2019applicazione di integrazione parte in automatico all\u2019avvio del PC e rimane attiva in background.<br>&#8211; Tutti i device presenti nei punti di ristorazione al momento di chiusura del conto (quando questo deve essere addebitato in una camera) inviano il file con le relative informazioni alla computer centrale.<br>&#8211; Il file viene letto.<\/p>\n\n\n\n<p>Questa applicazione di integrazione puo\u2019 essere adattata ad altri software di Ristorazione e\/o ad altre piattaforme modificando il Modulo 1 secondo le necessita\u2019<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Modulo 2<\/h3>\n\n\n\n<p>Elaborazione e visualizzazione informazioni<\/p>\n\n\n\n<p>Qui avviene la decodifica delle informazioni in arrivo dal software di ristorazione <em>EasyEvolver <\/em>e la successiva conversione in un formato adatto per l\u2019invio a <em>Xenion <\/em>(conversioni dei formati numerici e data, conversione degli ID delle camere, etc etc\u2026 ).<\/p>\n\n\n\n<p>Le impostazioni del software di integrazione sono impostabili dall\u2019utente attraverso un semplice file di testo di tipo Json. <br>Ad esempio:<br>&#8211; aggiunta\/modifica camere<br>&#8211; nomi e posizione dei file<br>&#8211; conversione degli ID delle camere in caso il software Ristorante e <em>Xenion <\/em>usino ID differenti (caso molto probabile)<br>&#8211; etc\u2026<\/p>\n\n\n\n<p>In caso di errori, questi vengo segnalati con un beep, e viene inviata una mail al responsabile.<\/p>\n\n\n\n<p>Gli errori si dividono in due categorie:<br>&#8211; Errori temporanei (ad esempio assenza di collegamento ad internet): In questo caso viene creato un file temporaneo e ritentata l\u2019elaborazione successivamente insieme al prossimo conto in arrivo.<br>&#8211; Errori definitivi (ad esempio se un cliente comunica una camera che non e\u2019 attualmente occupata): in questo caso viene creato un file di conto perso in cui viene memorizzata appunto questa tipologia di errori.<\/p>\n\n\n\n<p>Ogni azione viene corredata da un Time-Stamp.<\/p>\n\n\n\n<p>Ogni azione viene salvata in un file archivio locale ed in un file di backup locale insieme alle informazioni originali provenienti dal software di ristorazione.<\/p>\n\n\n\n<p>La finestra di visualizzazione \u00e8 la seguente:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/integrazione_tra_software_finestra_di_visualizzazione.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"441\" src=\"https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/integrazione_tra_software_finestra_di_visualizzazione-1024x441.jpg\" alt=\"\" class=\"wp-image-548\" srcset=\"https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/integrazione_tra_software_finestra_di_visualizzazione-1024x441.jpg 1024w, https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/integrazione_tra_software_finestra_di_visualizzazione-300x129.jpg 300w, https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/integrazione_tra_software_finestra_di_visualizzazione-768x331.jpg 768w, https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/integrazione_tra_software_finestra_di_visualizzazione.jpg 1051w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>Esempio di visualizzazione messaggi:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/integrazione_tra_software_esempio_messaggi.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1016\" height=\"470\" src=\"https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/integrazione_tra_software_esempio_messaggi.jpg\" alt=\"\" class=\"wp-image-550\" srcset=\"https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/integrazione_tra_software_esempio_messaggi.jpg 1016w, https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/integrazione_tra_software_esempio_messaggi-300x139.jpg 300w, https:\/\/www.luigitarpani.it\/wp-content\/uploads\/2025\/08\/integrazione_tra_software_esempio_messaggi-768x355.jpg 768w\" sizes=\"(max-width: 1016px) 100vw, 1016px\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Modulo 3<\/h3>\n\n\n\n<p>Comunicazione con Xenion<\/p>\n\n\n\n<p>La comunicazione con Xenion avviene attraverso le sue API ufficiali.<br>Ad ogni conto in arrivo dal software di ristorazione questo modulo si occupa di:<br>&#8211; Chiedere a Xenion le camere occupate in quel momento<br>&#8211; Mandare a Xenion il totale del conto da addebitare alla camera<\/p>\n\n\n\n<p>L\u2019addebito alla camera del  cliente avviene nella sezione dedicata, e al servizio scelto in modo da facilitare una futura analisi per centro di costo.<\/p>\n\n\n\n<p>L\u2019addebito viene corredato da una descrizione sintetica con indicato anche il giorno e ora dell\u2019operazione<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Continua la serie di argomenti su Flutter con un altro esempio pratico di una applicazione che abbiamo recentemente realizzato. Siamo stati contattati dalla struttura ricettiva Domus Volumnia per risolvere un problema di gestione del flusso di lavoro: La struttura utilizza due ottimi software, uno per la gestione delle sale del ristorante interno e un altro [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/www.luigitarpani.it\/index.php\/wp-json\/wp\/v2\/posts\/544"}],"collection":[{"href":"https:\/\/www.luigitarpani.it\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.luigitarpani.it\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.luigitarpani.it\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.luigitarpani.it\/index.php\/wp-json\/wp\/v2\/comments?post=544"}],"version-history":[{"count":6,"href":"https:\/\/www.luigitarpani.it\/index.php\/wp-json\/wp\/v2\/posts\/544\/revisions"}],"predecessor-version":[{"id":552,"href":"https:\/\/www.luigitarpani.it\/index.php\/wp-json\/wp\/v2\/posts\/544\/revisions\/552"}],"wp:attachment":[{"href":"https:\/\/www.luigitarpani.it\/index.php\/wp-json\/wp\/v2\/media?parent=544"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.luigitarpani.it\/index.php\/wp-json\/wp\/v2\/categories?post=544"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.luigitarpani.it\/index.php\/wp-json\/wp\/v2\/tags?post=544"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}