What

Το έργο αφορά την αυτοματοποίηση του υπολογισμού χρεώσεων για ενέργειες υποδομής (εγκαταστάσεις κεραιών) σε τηλεπικοινωνιακούς πύργους. Περιλαμβάνει την ανάγνωση αρχείων Excel με χιλιάδες εγγραφές, την επικύρωση και κανονικοποίηση δεδομένων, τον υπολογισμό χρεώσεων βάσει κατηγοριών τιμολόγησης, και την παραγωγή αρχείου εξόδου που διατηρεί πλήρως τη μορφοποίηση του αρχικού Excel.

Why

Η διαχείριση χρεώσεων υποδομής πύργων αποτελεί κρίσιμη λειτουργία για εταιρείες τηλεπικοινωνιακών υποδομών, καθώς απαιτεί σωρευτική τιμολόγηση με πλήρες ιστορικό ανά πύργο, διασταυρωμένους υπολογισμούς μεταξύ πολλαπλών κατηγοριών και διαχείριση αρχείων με δεκάδες χιλιάδες γραμμές. Οι χειροκίνητες διαδικασίες σε Excel οδηγούσαν σε σφάλματα υπολογισμού, καθυστερήσεις στην τιμολόγηση και αδυναμία επαλήθευσης σε ιστορικό επίπεδο. Με την αυτοματοποίηση, η επιχείρηση επιτυγχάνει ταχύτητα, ακρίβεια και πλήρη ελεγξιμότητα κάθε χρέωσης.

How

Το σύστημα αναπτύχθηκε με αρχιτεκτονική hexagonal (ports-and-adapters) σε Python, αξιοποιώντας εργαλεία υψηλής απόδοσης για την ανάγνωση και επεξεργασία μεγάλων αρχείων Excel. Η εφαρμογή διαβάζει το αρχείο εισόδου, κανονικοποιεί τα δεδομένα, εφαρμόζει φίλτρα ετοιμότητας και επιλεξιμότητας υπολογίζει σωρευτικές χρεώσεις για κάθε κατηγορία τιμολόγησης, και γράφει τα αποτελέσματα πίσω στο αρχείο διατηρώντας πλήρως τη μορφοποίηση. Η διεπαφή χρήστη επιτρέπει μεταφόρτωση αρχείων, παρακολούθηση προόδου σε πραγματικό χρόνο μέσω WebSocket, και λήψη του επεξεργασμένου αρχείου.

Προκλήσεις

Οι κύριες προκλήσεις του έργου ήταν:
  • Ανάμειξη ελληνικών και λατινικών χαρακτήρων στα δεδομένα εισόδου
  • Σωρευτική τιμολόγηση που απαιτεί πλήρη ανακατασκευή ιστορικού ανά πύργο, για να αποφευχθεί η διπλή χρέωση ήδη τιμολογημένων ορίων.
  • Αρνητικές εγγραφές
  • Διατήρηση πλήρους μορφοποίησης Excel
  • Κλιμάκωση της λύσης για αρχεία με δεκάδες χιλιάδες γραμμές, με ταχεία επεξεργασία και σταθερή κατανάλωση μνήμης.

 

Λύση

  • Αυτόματη κανονικοποίηση δεδομένων με αντιστοίχιση
  • Σύστημα επιλεξιμότητας βάσει tokens
  • Αρχιτεκτονική δύο σταδίων: polars για ταχεία επεξεργασία στη μνήμη, openpyxl για αντιγραφή και εγγραφή αποτελεσμάτων με πλήρη διατήρηση μορφοποίησης.
  • Διαδικτυακή εφαρμογή (FastAPI + React) με real-time streaming logs μέσω WebSocket για παρακολούθηση της επεξεργασίας σε πραγματικό χρόνο.
  • Παραμετροποιήσιμες τιμές μέσω αρχείου YAML, οι επιχειρηματικοί χρήστες μπορούν να τροποποιήσουν τιμοκαταλόγους χωρίς αλλαγές στον κώδικα.

Αποτελέσματα

  • Επεξεργασία δεκάδων χιλιάδων εγγραφών και υπολογισμός χρεώσεων για εκατοντάδες εγγραφές σε δευτερόλεπτα, αντί ωρών χειροκίνητης εργασίας.
  • Εξάλειψη σφαλμάτων υπολογισμού κατά 100% μέσω αυτοματοποιημένων κανόνων τιμολόγησης και εκατοντάδων αυτοματοποιημένων δοκιμών.
  • Πλήρης ελεγξιμότητα, κάθε χρέωση συνοδεύεται από σχόλια ελέγχου που εξηγούν τον υπολογισμό ή τον λόγο μηδενικής χρέωσης.
  • Ακρίβεια δεδομένων 100% στην κανονικοποίηση.
  • Άμεση αξιοποίηση του αρχείου εξόδου από το λογιστήριο, χάρη στην πλήρη διατήρηση μορφοποίησης Excel.
  • Μείωση του χρόνου ολοκλήρωσης κύκλου τιμολόγησης κατά 90%, ελευθερώνοντας πόρους για εργασίες υψηλότερης αξίας.
  • Επεκτάσιμη αρχιτεκτονική που υποστηρίζει προσθήκη νέων κατηγοριών τιμολόγησης και μελλοντικών φάσεων (σύγκριση αρχείων, εντοπισμός ωριμότητας, ιστορικό χρεώσεων) χωρίς ανασχεδιασμό.