Les meilleurs développeurs informatique freelances sont sur Codeur.com
Fermé · 500 € à 1 000 € · 10 offres · 965 vues · 12 interactions
Bonjour,
Je travaille à comprendre les logs d'un logiciel de caisse. J'ai une caisse qui écrit dans un fichier de log chaque opération qui est réalisé sur la caisse.
J'ai un historique de fichiers de logs quotidien pour trois restaurants.
J'ai une bonne connaissance du fonctionnement de la caisse et de la manière dont sont nommées différentes choses. Il y a encore des points qui m'échappent. J'ai le contact du fournisseur qui répond parfois à des questions, d'autre fois la réponse est "nous sommes trop occupés désolé".
J'ai besoin de modéliser les actions d'une journée, de partir d'un fichier de logs. Je suis ouvert à des propositions. Pour le moment j'imagine une base de données avec les colonnes : id_action (uuid), date (datetime), label_actions(varchar) , valeurs (json)
Pour comprendre l'extrait fourni ci-dessous :
- toutes les actions sont contenues dans des balises ejf
- track bill="..." signifie (je crois), qu'on créé une note qui contiendra des produits commandés (et je ne sais pas comment lier un produit commandé à une note)
- clerkopen signifie qu'un vendeur s'est loggé et num=20" signifie que c'est le serveur d'id 20, un autre fichier permet d'avoir les informations à propos des serveurs pour un id donné
- free_text signifie qu'un serveur ajoute un message personnalisé à une commande
- plu signifie qu'on command eun produit, le code c'est en fait l'id du produit (décrit dans un autre fichier), la quantité est multipliée par 1000 à cause d'éventuels produits qui se vendent avec des décimales (ex : 0,5L), price c'est le prix du produit, amt c'est le montant total prix*qte ...
Voici un extrait d'un fichier de logs :
<?xml version="1.0" encoding="UTF-8"?>
<ejf_data version="1.19" system="HX-6500-03" sys_ver="6.02">
<identity pos="2" posname="Bar Festif Lounge" branch="1" mac="00-0f-c2-00-ca-ce"/>
<ejf_info dp="0" date="[Téléphone visible pour les membres Pro]T23:34:16+11:00"/>
<stored_block>
</stored_block>
<closed_block>
<ejf num="1" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:09+11:00" zejf="0">
<track bill="[Téléphone visible pour les membres Pro]" table="1114" server="0" person="0 0" senior="0" location="0" inv_num="1" cust="" parent="0" reopen="0" waste="0"/>
</ejf>
<ejf num="2" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:09+11:00" zejf="0">
<clerkopen num="20" subtotal="0"/>
</ejf>
<ejf num="3" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:09+11:00" zejf="0">
<free_text msg=" Commande à table "/>
</ejf>
<ejf num="4" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:09+11:00" zejf="0">
<plu code="[Téléphone visible pour les membres Pro]" qty="1000" price="1500" amt="1500" upqty="1000">
<group num="7"/>
<mgroup num="1"/>
<tax num="5"/>
<cat num="1"/>
<stype num="1"/>
<kp file="1" level="1"/>
</plu>
</ejf>
<ejf num="5" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:09+11:00" zejf="0">
<store amt="1500"/>
</ejf>
<ejf num="6" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:19+11:00" zejf="0">
<subtotal amt="1500"/>
</ejf>
<ejf num="7" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:19+11:00" zejf="0">
<media num="20" dp="0" foreign="0" rate="0" subtotal="1500" count="1" amt="1500">
<tender amt="1500"/>
<sales amt="1500"/>
</media>
</ejf>
<ejf num="8" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:19+11:00" zejf="0">
<taxable num="5" amt="1230" addon="0" exempt="0"/>
</ejf>
<ejf num="9" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:19+11:00" zejf="0">
<tax num="5" amt="270" addon="0" exempt="0"/>
</ejf>
<ejf num="10" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:19+11:00" zejf="0">
<lastline receipt="6"/>
</ejf>
<ejf num="11" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:44+11:00" zejf="0">
<track bill="[Téléphone visible pour les membres Pro]" table="1114" server="0" person="0 0" senior="0" location="0" inv_num="2" cust="" parent="0" reopen="0" waste="0"/>
</ejf>
<ejf num="12" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:44+11:00" zejf="0">
<clerkopen num="20" subtotal="0"/>
</ejf>
<ejf num="13" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:44+11:00" zejf="0">
<free_text msg=" Commande à table "/>
</ejf>
<ejf num="14" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:44+11:00" zejf="0">
<plu code="[Téléphone visible pour les membres Pro]" qty="1000" price="1000" amt="1000" upqty="1000">
<group num="5"/>
<mgroup num="1"/>
<tax num="4"/>
<cat num="1"/>
<stype num="1"/>
<kp file="1" level="1"/>
</plu>
</ejf>
<ejf num="15" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:44+11:00" zejf="0">
<store amt="1000"/>
</ejf>
<ejf num="16" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:54+11:00" zejf="0">
<subtotal amt="1000"/>
</ejf>
<ejf num="17" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:54+11:00" zejf="0">
<media num="20" dp="0" foreign="0" rate="0" subtotal="1000" count="1" amt="1000">
<tender amt="1000"/>
<sales amt="1000"/>
</media>
</ejf>
<ejf num="18" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:54+11:00" zejf="0">
<taxable num="4" amt="901" addon="0" exempt="0"/>
</ejf>
<ejf num="19" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:54+11:00" zejf="0">
<tax num="4" amt="99" addon="0" exempt="0"/>
</ejf>
<ejf num="20" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:37:54+11:00" zejf="0">
<lastline receipt="7"/>
</ejf>
<ejf num="21" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:46:19+11:00" zejf="0">
<track bill="[Téléphone visible pour les membres Pro]" table="1131" server="0" person="0 0" senior="0" location="0" inv_num="3" cust="" parent="0" reopen="0" waste="0"/>
</ejf>
<ejf num="22" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:46:19+11:00" zejf="0">
<clerkopen num="20" subtotal="0"/>
</ejf>
<ejf num="23" pos="2" clerk="20" train="0" vd="0" rf="0" cr="0" pcr="0" tvd="0" tin="0" tout="0" date="[Téléphone visible pour les membres Pro]T16:46:19+11:00" zejf="0">
<free_text msg=" Commande à table "/>
</ejf>
...
Merci pour votre lecture, dans l'attente de votre réponse,
Erwan
Budget indicatif : 500 € à 1 000 €
Publication : 07 juin 2025 à 05h01
Profils recherchés : Développeur spécifique freelance , Intégrateur web freelance , Expert BDD freelance
10 freelances ont répondu à ce projet
7 propositions de devis en moins de 2h
Montant moyen des devis proposés : 600 €
Estimation du délai : 5 jours