08/06/22 - 14h30

master
ChérifBALDE 2022-06-09 14:56:33 +02:00 committed by cherif
parent af55e303ba
commit 077f0da37c
6 changed files with 189 additions and 100 deletions

View File

@ -97,7 +97,7 @@ QUERY_LIMIT_ROW = 50
'''
Cette variable definit le nombre max
retour à faire sur page d'acceuil '''
MAINPAGE_QUERY_LIMIT_ROW = 500
MAINPAGE_QUERY_LIMIT_ROW = 110
'''

View File

@ -1,65 +1,104 @@
,index,mots,occurence,moyenne,id_formation,source_field
0,0,optimiser,1,0.01,9065,default
1,1,objectif,1,0.01,9065,default
2,2,reassurance,1,0.01,9065,default
3,3,mobile,1,0.01,9065,default
4,4,moteur,1,0.01,9065,default
5,5,fidelisation,1,0.01,9065,default
6,6,accueil,1,0.01,9065,default
7,7,commerciale,1,0.01,9065,default
8,8,tunnel,1,0.01,9065,default
9,9,produit,1,0.01,9065,default
10,10,marchand,1,0.01,9065,default
11,11,denouer,1,0.01,9065,default
12,12,commande,1,0.01,9065,default
13,13,ligne,3,0.04,9065,default
14,14,e,4,0.05,9065,default
15,15,moyen,1,0.01,9065,default
16,16,different,1,0.01,9065,default
17,17,sell,2,0.03,9065,default
18,18,vitrine,1,0.01,9065,default
19,19,personnalisation,1,0.01,9065,default
20,20,renforcement,1,0.01,9065,default
21,21,site,2,0.03,9065,default
22,22,suivre,1,0.01,9065,default
23,23,semaine,2,0.03,9065,default
24,24,friction,1,0.01,9065,default
25,25,autodiagnostic,1,0.01,9065,default
26,26,pratique,1,0.01,9065,default
27,27,page,1,0.01,9065,default
28,28,cros,1,0.01,9065,default
29,29,navigation,2,0.03,9065,default
30,30,parcour,1,0.01,9065,default
31,31,panier,1,0.01,9065,default
32,32,marketing,1,0.01,9065,default
33,33,moment,1,0.01,9065,default
34,34,etape,1,0.01,9065,default
35,35,bonne,1,0.01,9065,default
36,36,merchandising,4,0.05,9065,default
37,37,kpi,1,0.01,9065,default
38,38,analyser,1,0.01,9065,default
39,39,vente,1,0.01,9065,default
40,40,liste,1,0.01,9065,default
41,41,offre,1,0.01,9065,default
42,42,strategie,1,0.01,9065,default
43,43,package,1,0.01,9065,default
44,44,defi,1,0.01,9065,default
45,45,calendrier,1,0.01,9065,default
46,46,mesurer,1,0.01,9065,default
47,47,programme,1,0.01,9065,default
48,48,off,1,0.01,9065,default
49,49,element,1,0.01,9065,default
50,50,version,1,0.01,9065,default
51,51,boutique,1,0.01,9065,default
52,52,developper,1,0.01,9065,default
53,53,promotion,1,0.01,9065,default
54,54,achat,1,0.01,9065,default
55,55,plan,1,0.01,9065,default
56,56,interne,1,0.01,9065,default
57,57,animation,1,0.01,9065,default
58,58,gerer,1,0.01,9065,default
59,59,type,1,0.01,9065,default
60,60,barre,1,0.01,9065,default
61,61,espace,1,0.01,9065,default
62,62,fiche,1,0.01,9065,default
63,63,recherche,1,0.01,9065,default
0,0,mehrabian,1,0.01,240,default
1,1,reformuler,2,0.01,240,default
2,2,critere,1,0.01,240,default
3,3,hierarchiser,1,0.01,240,default
4,4,integrer,1,0.01,240,default
5,5,progre,1,0.01,240,default
6,6,cadrage,1,0.01,240,default
7,7,compte,2,0.01,240,default
8,8,creuser,2,0.01,240,default
9,9,varier,1,0.01,240,default
10,10,utiliser,1,0.01,240,default
11,11,identifier,5,0.03,240,default
12,12,fil,1,0.01,240,default
13,13,defi,1,0.01,240,default
14,14,canau,1,0.01,240,default
15,15,cnil,1,0.01,240,default
16,16,recrutement,6,0.04,240,default
17,17,demain,1,0.01,240,default
18,18,structure,1,0.01,240,default
19,19,entrainement,1,0.01,240,default
20,20,debrief,1,0.01,240,default
21,21,recruteur,2,0.01,240,default
22,22,reussite,1,0.01,240,default
23,23,pratique,1,0.01,240,default
24,24,public,1,0.01,240,default
25,25,cle,1,0.01,240,default
26,26,grille,1,0.01,240,default
27,27,doter,1,0.01,240,default
28,28,pratiquer,2,0.01,240,default
29,29,competence,4,0.03,240,default
30,30,decision,1,0.01,240,default
31,31,rediger,1,0.01,240,default
32,32,active,1,0.01,240,default
33,33,premier,1,0.01,240,default
34,34,expliciter,2,0.01,240,default
35,35,rechercher,1,0.01,240,default
36,36,star,1,0.01,240,default
37,37,objectif,1,0.01,240,default
38,38,type,3,0.02,240,default
39,39,candidat,4,0.03,240,default
40,40,module,1,0.01,240,default
41,41,poser,1,0.01,240,default
42,42,psychologique,1,0.01,240,default
43,43,outil,2,0.01,240,default
44,44,plan,1,0.01,240,default
45,45,besoin,2,0.01,240,default
46,46,percu,1,0.01,240,default
47,47,adapter,1,0.01,240,default
48,48,digital,1,0.01,240,default
49,49,retour,1,0.01,240,default
50,50,ecoute,2,0.01,240,default
51,51,constructif,1,0.01,240,default
52,52,observer,1,0.01,240,default
53,53,legal,1,0.01,240,default
54,54,condition,1,0.01,240,default
55,55,situation,1,0.01,240,default
56,56,bonne,2,0.01,240,default
57,57,biai,1,0.01,240,default
58,58,rendu,1,0.01,240,default
59,59,valider,1,0.01,240,default
60,60,definir,1,0.01,240,default
61,61,diagnostic,1,0.01,240,default
62,62,methode,1,0.01,240,default
63,63,discrimination,1,0.01,240,default
64,64,enjeu,1,0.01,240,default
65,65,note,1,0.01,240,default
66,66,recruter,1,0.01,240,default
67,67,realiser,1,0.01,240,default
68,68,cible,1,0.01,240,default
69,69,suivre,1,0.01,240,default
70,70,video,2,0.01,240,default
71,71,technique,1,0.01,240,default
72,72,semaine,2,0.01,240,default
73,73,rgpd,1,0.01,240,default
74,74,specificite,1,0.01,240,default
75,75,batir,1,0.01,240,default
76,76,cadre,1,0.01,240,default
77,77,attitude,1,0.01,240,default
78,78,preparer,1,0.01,240,default
79,79,evolution,1,0.01,240,default
80,80,auto,1,0.01,240,default
81,81,etape,1,0.01,240,default
82,82,risque,1,0.01,240,default
83,83,prendre,2,0.01,240,default
84,84,engageant,1,0.01,240,default
85,85,renforcement,1,0.01,240,default
86,86,profil,2,0.01,240,default
87,87,poste,2,0.01,240,default
88,88,question,3,0.02,240,default
89,89,entretien,5,0.03,240,default
90,90,decrire,1,0.01,240,default
91,91,recherche,1,0.01,240,default
92,92,motivation,2,0.01,240,default
93,93,action,1,0.01,240,default
94,94,connaitre,2,0.01,240,default
95,95,mise,1,0.01,240,default
96,96,programme,1,0.01,240,default
97,97,implicite,2,0.01,240,default
98,98,questionnement,1,0.01,240,default
99,99,communication,1,0.01,240,default
100,100,obsolescence,1,0.01,240,default
101,101,synthese,1,0.01,240,default
102,102,different,3,0.02,240,default

1 index mots occurence moyenne id_formation source_field
2 0 0 optimiser mehrabian 1 0.01 9065 240 default
3 1 1 objectif reformuler 1 2 0.01 9065 240 default
4 2 2 reassurance critere 1 0.01 9065 240 default
5 3 3 mobile hierarchiser 1 0.01 9065 240 default
6 4 4 moteur integrer 1 0.01 9065 240 default
7 5 5 fidelisation progre 1 0.01 9065 240 default
8 6 6 accueil cadrage 1 0.01 9065 240 default
9 7 7 commerciale compte 1 2 0.01 9065 240 default
10 8 8 tunnel creuser 1 2 0.01 9065 240 default
11 9 9 produit varier 1 0.01 9065 240 default
12 10 10 marchand utiliser 1 0.01 9065 240 default
13 11 11 denouer identifier 1 5 0.01 0.03 9065 240 default
14 12 12 commande fil 1 0.01 9065 240 default
15 13 13 ligne defi 3 1 0.04 0.01 9065 240 default
16 14 14 e canau 4 1 0.05 0.01 9065 240 default
17 15 15 moyen cnil 1 0.01 9065 240 default
18 16 16 different recrutement 1 6 0.01 0.04 9065 240 default
19 17 17 sell demain 2 1 0.03 0.01 9065 240 default
20 18 18 vitrine structure 1 0.01 9065 240 default
21 19 19 personnalisation entrainement 1 0.01 9065 240 default
22 20 20 renforcement debrief 1 0.01 9065 240 default
23 21 21 site recruteur 2 0.03 0.01 9065 240 default
24 22 22 suivre reussite 1 0.01 9065 240 default
25 23 23 semaine pratique 2 1 0.03 0.01 9065 240 default
26 24 24 friction public 1 0.01 9065 240 default
27 25 25 autodiagnostic cle 1 0.01 9065 240 default
28 26 26 pratique grille 1 0.01 9065 240 default
29 27 27 page doter 1 0.01 9065 240 default
30 28 28 cros pratiquer 1 2 0.01 9065 240 default
31 29 29 navigation competence 2 4 0.03 9065 240 default
32 30 30 parcour decision 1 0.01 9065 240 default
33 31 31 panier rediger 1 0.01 9065 240 default
34 32 32 marketing active 1 0.01 9065 240 default
35 33 33 moment premier 1 0.01 9065 240 default
36 34 34 etape expliciter 1 2 0.01 9065 240 default
37 35 35 bonne rechercher 1 0.01 9065 240 default
38 36 36 merchandising star 4 1 0.05 0.01 9065 240 default
39 37 37 kpi objectif 1 0.01 9065 240 default
40 38 38 analyser type 1 3 0.01 0.02 9065 240 default
41 39 39 vente candidat 1 4 0.01 0.03 9065 240 default
42 40 40 liste module 1 0.01 9065 240 default
43 41 41 offre poser 1 0.01 9065 240 default
44 42 42 strategie psychologique 1 0.01 9065 240 default
45 43 43 package outil 1 2 0.01 9065 240 default
46 44 44 defi plan 1 0.01 9065 240 default
47 45 45 calendrier besoin 1 2 0.01 9065 240 default
48 46 46 mesurer percu 1 0.01 9065 240 default
49 47 47 programme adapter 1 0.01 9065 240 default
50 48 48 off digital 1 0.01 9065 240 default
51 49 49 element retour 1 0.01 9065 240 default
52 50 50 version ecoute 1 2 0.01 9065 240 default
53 51 51 boutique constructif 1 0.01 9065 240 default
54 52 52 developper observer 1 0.01 9065 240 default
55 53 53 promotion legal 1 0.01 9065 240 default
56 54 54 achat condition 1 0.01 9065 240 default
57 55 55 plan situation 1 0.01 9065 240 default
58 56 56 interne bonne 1 2 0.01 9065 240 default
59 57 57 animation biai 1 0.01 9065 240 default
60 58 58 gerer rendu 1 0.01 9065 240 default
61 59 59 type valider 1 0.01 9065 240 default
62 60 60 barre definir 1 0.01 9065 240 default
63 61 61 espace diagnostic 1 0.01 9065 240 default
64 62 62 fiche methode 1 0.01 9065 240 default
65 63 63 recherche discrimination 1 0.01 9065 240 default
66 64 64 enjeu 1 0.01 240 default
67 65 65 note 1 0.01 240 default
68 66 66 recruter 1 0.01 240 default
69 67 67 realiser 1 0.01 240 default
70 68 68 cible 1 0.01 240 default
71 69 69 suivre 1 0.01 240 default
72 70 70 video 2 0.01 240 default
73 71 71 technique 1 0.01 240 default
74 72 72 semaine 2 0.01 240 default
75 73 73 rgpd 1 0.01 240 default
76 74 74 specificite 1 0.01 240 default
77 75 75 batir 1 0.01 240 default
78 76 76 cadre 1 0.01 240 default
79 77 77 attitude 1 0.01 240 default
80 78 78 preparer 1 0.01 240 default
81 79 79 evolution 1 0.01 240 default
82 80 80 auto 1 0.01 240 default
83 81 81 etape 1 0.01 240 default
84 82 82 risque 1 0.01 240 default
85 83 83 prendre 2 0.01 240 default
86 84 84 engageant 1 0.01 240 default
87 85 85 renforcement 1 0.01 240 default
88 86 86 profil 2 0.01 240 default
89 87 87 poste 2 0.01 240 default
90 88 88 question 3 0.02 240 default
91 89 89 entretien 5 0.03 240 default
92 90 90 decrire 1 0.01 240 default
93 91 91 recherche 1 0.01 240 default
94 92 92 motivation 2 0.01 240 default
95 93 93 action 1 0.01 240 default
96 94 94 connaitre 2 0.01 240 default
97 95 95 mise 1 0.01 240 default
98 96 96 programme 1 0.01 240 default
99 97 97 implicite 2 0.01 240 default
100 98 98 questionnement 1 0.01 240 default
101 99 99 communication 1 0.01 240 default
102 100 100 obsolescence 1 0.01 240 default
103 101 101 synthese 1 0.01 240 default
104 102 102 different 3 0.02 240 default

View File

@ -1,14 +1,14 @@
mots occurence moyenne id_formation source_field
0 optimiser 1 0.01 9065 default
1 objectif 1 0.01 9065 default
2 reassurance 1 0.01 9065 default
3 mobile 1 0.01 9065 default
4 moteur 1 0.01 9065 default
.. ... ... ... ... ...
59 type 1 0.01 9065 default
60 barre 1 0.01 9065 default
61 espace 1 0.01 9065 default
62 fiche 1 0.01 9065 default
63 recherche 1 0.01 9065 default
mots occurence moyenne id_formation source_field
0 mehrabian 1 0.01 240 default
1 reformuler 2 0.01 240 default
2 critere 1 0.01 240 default
3 hierarchiser 1 0.01 240 default
4 integrer 1 0.01 240 default
.. ... ... ... ... ...
98 questionnement 1 0.01 240 default
99 communication 1 0.01 240 default
100 obsolescence 1 0.01 240 default
101 synthese 1 0.01 240 default
102 different 3 0.02 240 default
[64 rows x 5 columns]
[103 rows x 5 columns]

View File

@ -36,7 +36,7 @@ def send_user_account_mail(message, account_mail):
msg = MIMEMultipart("alternative")
msg['Subject'] = 'MySy Training : Activez votre compte '
msg['From'] = 'billardman01@hotmail.com'
msg['From'] = 'contact@mysy-training.com'
msg['To'] = str(account_mail)
@ -57,7 +57,7 @@ def send_user_account_mail(message, account_mail):
<div style="padding:20px 0px;text-align:center;font-family:Georgia, 'Times New Roman', Times, serif;color#454349;font-size:1.2rem;">
Votre adresse e-mail a bien été enregistrée sur le site <font color="green">MySy-Training</font>. <br>
Pour valider votre compte, veuillez cliquer sur le lien <font color="green">ci-dessous :</font>
Pour valider votre compte, veuillez cliquer sur le lien ci-dessous :
<br/>
<br/>
<div style="background-color:#1962AB;width:20%;text-align:center;margin-left:auto; margin-right:auto;">
@ -73,7 +73,9 @@ def send_user_account_mail(message, account_mail):
<p>Cordialement<br>
L'equipe informatique de MySy
MySy Training Technology<br>
Contact : +337 69 20 39 45<br>
Email : contact@mysy-training.com<br>
</p>
</p>
</div>
@ -93,7 +95,7 @@ def send_user_account_mail(message, account_mail):
print("html_mime ="+str(html))
toaddr = str(account_mail)
cc = ['billardman01@hotmail.com']
cc = ['contact@mysy-training.com']
toaddrs = [toaddr] + cc
# msg.attach(MIMEText(open(filename).read()))
@ -131,7 +133,7 @@ def send_partner_account_mail(message, account_mail):
msg = MIMEMultipart("alternative")
msg['Subject'] = 'MySy : test email activation compte '
msg['From'] = 'billardman01@hotmail.com'
msg['From'] = 'contact@mysy-training.com'
msg['To'] = str(toaddrs)
msg['Cc'] = 'cbalde@mysy-training.com'
@ -179,6 +181,7 @@ def send_partner_account_mail(message, account_mail):
server.sendmail(sender, toaddrs, msg.as_string())
print("mail successfully sent")
return True
except Exception as e:
exc_type, exc_obj, exc_tb = sys.exc_info()
@ -201,7 +204,7 @@ def send_user_init_pwd_mail(token, account_mail):
msg = MIMEMultipart("alternative")
msg['Subject'] = '[MySy Training Technology] : Reinitialisez votre mot de passe'
msg['From'] = 'billardman01@hotmail.com'
msg['From'] = 'contact@mysy-training.com'
msg['To'] = str(account_mail)
html = '''
@ -233,14 +236,12 @@ def send_user_init_pwd_mail(token, account_mail):
</div>
</font>
<br/>
<b>
<a href="http://localhost:3010/ResetUserPwd/{objId}" target="_blank" style="font-size:0.5rem;" >
CLIQUEZ ICI ==> LOCALHOST
</b>
</a>
<p>Cordialement<br>
L'equipe informatique de MySy
MySy Training Technology<br>
Contact : +337 69 20 39 45<br>
Email : contact@mysy-training.com<br>
</p>
</p>
</div>
@ -259,7 +260,7 @@ def send_user_init_pwd_mail(token, account_mail):
print("html_mime =" + str(html))
toaddr = str(account_mail)
cc = ['billardman01@hotmail.com']
cc = ['contact@mysy-training.com']
toaddrs = [toaddr] + cc
# msg.attach(MIMEText(open(filename).read()))
@ -290,7 +291,7 @@ def send_user_delete_account(token, account_mail):
msg = MIMEMultipart("alternative")
msg['Subject'] = '[MySy Training Technology] : Suppression de votre'
msg['From'] = 'billardman01@hotmail.com'
msg['From'] = 'contact@mysy-training.com'
msg['To'] = str(account_mail)
html = '''
@ -324,14 +325,11 @@ Le échéant, vous pouvez finaliser la suppression de votre compte en cliquant s
</div>
</font>
<br/>
<b>
<a href="http://localhost:3010/DeleteUserAccount/{objId}" target="_blank" style="font-size:0.5rem;" >
CLIQUEZ ICI ==> LOCALHOST
</b>
</a>
<p>Cordialement<br>
L'equipe informatique de MySy
MySy Training Technology<br>
Contact : +337 69 20 39 45<br>
Email : contact@mysy-training.com<br>
</p>
</p>
</div>
@ -350,7 +348,7 @@ Le échéant, vous pouvez finaliser la suppression de votre compte en cliquant s
print("html_mime =" + str(html))
toaddr = str(account_mail)
cc = ['billardman01@hotmail.com']
cc = ['contact@mysy-training.com']
toaddrs = [toaddr] + cc
# msg.attach(MIMEText(open(filename).read()))

13
main.py
View File

@ -1086,6 +1086,19 @@ def get_class_coup_de_coeur():
return jsonify(status=status, message=result)
"""
Cette API clean la collecion "elaindex"
"""
@app.route('/myclass/api/clean_ElaIndex/', methods=['GET','POST'])
@crossdomain(origin='*')
def clean_ElaIndex():
# On recupere le corps (payload) de la requete
payload = request.form.to_dict()
print(" ### payload = ", payload)
status, result = mycommon.clean_ElaIndex()
return jsonify(status=status, message=result)
if __name__ == '__main__':

View File

@ -1034,3 +1034,42 @@ def Migration_mooc_title():
exc_type, exc_obj, exc_tb = sys.exc_info()
print(str(inspect.stack()[0][3]) + " -" + str(e) + " - ERRORRRR AT Line : " + str(exc_tb.tb_lineno))
return False, "KO"
''' Cette fonction clean la collection "elaindex"
comme elle est tres lourd que les mise à jour des data
font que certains formations ne sont plus valident, alors on doit supprimer
dans la collection "elaindex" toutes les lignes correspondant à des formations
inexistante dans la collection "myclass"
'''
def clean_ElaIndex():
try:
index_coll = MYSY_GV.dbname["elaindex"]
class_coll = MYSY_GV.dbname["myclass"]
list_to_delete = []
i = 0
for val in index_coll.find({}, {"id_formation":1}):
tmp_count = class_coll.count_documents({'external_code': str(val["id_formation"])})
#print(" val = "+str(val))
if (tmp_count <= 0 and str(val["id_formation"]) not in list_to_delete):
list_to_delete.append(str(val["id_formation"]))
i = i +1
# Operation de suppression :
#print(" lancement suppression de "+str(list_to_delete))
nb_avant_delete = index_coll.count_documents({})
#print(" AVANT SUPPRESSION ON A "+str(nb_avant_delete)+" LIGNE DANS la collection index")
query = {"id_formation": {"$in": list_to_delete}}
d = index_coll.delete_many(query)
print(d.deleted_count, " documents deleted !!")
return True, "clean index OK"
except Exception as e:
exc_type, exc_obj, exc_tb = sys.exc_info()
print(str(inspect.stack()[0][3]) + " -" + str(e) + " - ERRORRRR AT Line : " + str(exc_tb.tb_lineno))
return False, "clean index KO"