X

Capital.ro Comunicate. Implementare sistem expirare comunicate

By

Traian

Blog IT, Email, Optimizare, PHP, Software, Wordpress

Un nou sistem de verificare a comunicatelor disponibile si aproape de expirare a fost dezvoltat de Sectorweb.ro pentru platforma Capital Comunicate (http://www.capital.ro/comunicate si http://www.capital.ro/magazin-comunicate/) pentru Editura Evenimentul si Capital.

Sistemul isi propune sa informeze utilizatorii platformei cu privire la perioada ramasa pana la expirarea comunicatelor achizitionate (durata de valabilitate a comunicatelor cumparate este de 6 luni de la efectuarea comenzii).

Informarea se face atat prin mesaje afisate in contul utilizatorului din magazinul de comunicate cat si prin mesaje de email.

Data lansarii acestui upgrade: 10.05.2018

Obiectivele functionale ale sistemului de expirare comunicate?

In platforma Capital.ro Comunicate, comunicatele cumparate pe o comanda expira in 6 luni de la data achizitiei.

Dorim sa:

  • Anulam comunicatele expirate dupa 6 luni (Comunicatele publicate raman publicate, dar comunicatele disponibile din comanda pentru care se atinge termenul de valabiulitate se vor anula).
  • Trimitem mesaj de email la anularea comunciatelor care si-au atins limita de valabilitate
  • Afisam mesaj in Contul utilizatorului timp de 10 zile pana la expirarea comunciatelor
  • Trimitem mesaje de email catre utilizator atunci cand din ziua respectiva mai sunt 10, 5, 3 respectiv 1 zi pana la expirarea comunciatelor din comenzile efectuate

Mesajele de email vor infroma utilizatorul despre situatia comunicatelor respective si indeamna userul sa le foloseasca in timp util.

Structura de date proiectata pentru acest sistem

Urmarirea expirarii comunicatelor este mai usor de realizat daca se pastreaza in datele meta ale utilizatorului toate informatiile relevante din comanda.

(In fapt, pentru  a nu ne lega de user, am creat un post unic asociat utilizatorului, caruia i-am atasat toate datele meta care ne intereseaza: total comunicate disponibile, comunicate trimise spre aprobare, comenzi efectuate, etc).

Comenzile efectuate sunt pastrate ca vectori multidimensionali (serializati) care contin:

  •  ID-ul comenzii
  • data efectuarii comenzii (Unix Time Stamp)
  • Numarul comunicatelor achizitionate pe comanda
  • Produsele, cantitatile, numarul de comunicate pe fiecare produs (daca exista promotii care il multiplica, etc)

Actualizarea datelor

Actualizarea datelor meta custom ale comenzilor se face la efectuarea unei comenzi, se adauga un astfel de vector

La publicarea unui comunicat se opereaza (decrementeaza cu 1) numarul total de comunciate disponibile si numarul de comunicate disponibile per comanda. intotdeauna, se opereaza comanda cea mai veche valabila care are inca un numar de comunicate disponibile.

Trimiterea mesajelor de email catre utilizatori

Un cron job ruleaza o data pe zi un script care verifica toti utilizatorii dpdv al comenzilor si daca exista comenzi care vor expira peste exact 10, 5, 3 sau 1 zile vor trimite mesaje de email personalizate utilizatorilor pentru a informare si indemn de a utiliza comunicatele in timp util.

Scriptul rulat incarca WordPress fara a incarca un anumit template. Sunt disponibile toate fisierele Worpdress, ale plugin-urilor (ne intereseaza WooCommerce in mod special) si tema (unde avem functiile care verifica starea comunciatelor si alerteaza utilizatorii)

 

 

 

 

 

 

 

 

 

Etichete

 

Comments are closed.