13/12/2022 - 19h00

master
cherif 2022-12-13 19:13:00 +01:00
parent efb7260214
commit 7c9d2f0a0f
9 changed files with 1558 additions and 105 deletions

View File

@ -3,10 +3,13 @@
<component name="ChangeListManager">
<list default="true" id="1122d9e2-679f-46d6-8c4f-97e9ae4041b5" name="Changes" comment="26/11/22 - 23h30">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Inscription_mgt.py" beforeDir="false" afterPath="$PROJECT_DIR$/Inscription_mgt.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Emargement/test_emargement.pdf" beforeDir="false" afterPath="$PROJECT_DIR$/Emargement/test_emargement.pdf" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Log/log_file.log" beforeDir="false" afterPath="$PROJECT_DIR$/Log/log_file.log" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Session_Formation.py" beforeDir="false" afterPath="$PROJECT_DIR$/Session_Formation.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/main.py" beforeDir="false" afterPath="$PROJECT_DIR$/main.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/class_mgt.py" beforeDir="false" afterPath="$PROJECT_DIR$/class_mgt.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/data_indexees.csv" beforeDir="false" afterPath="$PROJECT_DIR$/data_indexees.csv" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ela_output_test_file_pandas_2.txt" beforeDir="false" afterPath="$PROJECT_DIR$/ela_output_test_file_pandas_2.txt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/emargement.py" beforeDir="false" afterPath="$PROJECT_DIR$/emargement.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/partners.py" beforeDir="false" afterPath="$PROJECT_DIR$/partners.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/prj_common.py" beforeDir="false" afterPath="$PROJECT_DIR$/prj_common.py" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />

View File

@ -40,7 +40,7 @@ endobj
<<
/Contents 11 0 R /MediaBox [ 0 0 595.2756 841.8898 ] /Parent 10 0 R /Resources <<
/Font 1 0 R /ProcSet [ /PDF /Text /ImageB /ImageC /ImageI ] /XObject <<
/FormXob.13be06d0b759aece522fd342e77f07c7 3 0 R
/FormXob.72b491439839fdac2ca0e33d4920d251 3 0 R
>>
>> /Rotate 0 /Trans <<
@ -55,7 +55,7 @@ endobj
endobj
9 0 obj
<<
/Author () /CreationDate (D:20221119110934-01'00') /Creator (\(unspecified\)) /Keywords () /ModDate (D:20221119110934-01'00') /Producer (xhtml2pdf <https://github.com/xhtml2pdf/xhtml2pdf/>)
/Author () /CreationDate (D:20221213173356-01'00') /Creator (\(unspecified\)) /Keywords () /ModDate (D:20221213173356-01'00') /Producer (xhtml2pdf <https://github.com/xhtml2pdf/xhtml2pdf/>)
/Subject () /Title () /Trapped /False
>>
endobj
@ -66,10 +66,10 @@ endobj
endobj
11 0 obj
<<
/Filter [ /ASCII85Decode /FlateDecode ] /Length 2135
/Filter [ /ASCII85Decode /FlateDecode ] /Length 2127
>>
stream
Gb!;h9lncS&A@sBbRKl<9]g[IDP;T_U;GKepqU;kq2hq[E3_IVUA4K;1QH'XI9><c6'tU[A\Ij7oo*3]M/4FNn0R,TeV^V5F*@C\19&oR_5-%Ec-P(4q<[G6"+89^ZmrRDc8aqo`P&\e\FFP5>2RPA,L5S+gHp1_"YW7eiD@K/0=I)j4-:KQf9pbdg%[\nHYZme.5!/6$]riHGO*eW]1XdLAL6->\Fd5BW3.VNeDaXN<I)=jrlVS!G>Np=Td;D-c(HGPg=4m^^%mPb&sNM5JI_"ooBY&Ck;Ms>L-oeVJt4`Y_d\"L/USC;&uU$6`5n+_Jf!;3>`].i.D`DmNYPeI08kFIQBr3eU^G+"1(onq3&oQ*=\:;>q:Kek'RPrp\puD/hl;3*Z#?eXYb8n!;r1XO]7>ArR2bktI!P`gZ0Q&Ql=,0?XfC-2hq7i_n9*m6-/5RZ\nY8d-hF?dKC="?&Rg1frj[9T]RGH\@3:9C>Z('t(cs6"p`%uidG`6bo!g/=E*'!T_!3ptS<\)Fdk:.<PY.7HK=laY!_)@@ZJ:[F)s.T?6JE[Oecm$PBsicoQX"A#cZ7^o5S:CnFtgkuiaI+Vb?hLGB@ZrDm,>8H!df7%Gc93[c!jOU4l"(p%6J8T0=:61VW@@#(U3omR4M.14B4_I#`LiO2i67.$gT3(lpG%Abtc/[eH8@\!Mn0=WVJZJoKG20\4-5/M%5U:l%,[a]SKJ+Q/$$>6M#?7!t@j+B8)!We%,D:DDbm$=f>.2DF0P:Y5d'RhMtdihLcJ$r=3=;n^<9B4s</Z+[!6uUu)q-keZI:h4-T(&)>$;S!$S2iU#HEFjJntYEue^/_-Oa@/Lj[b[DE@;-%@3%ue1?q7+)J]m0<jSPja=/NV6KS0Ghd+SU:I`#$sp4hs^]=(+5!c@1cF%>.TO#Qpt8HCRZCpZeAc]j.4cb*5p[0>:\Pc0.8g%cgS<DNtf^Oi7+qP[?qi`(!8>n[=O6ae;llE)@#s.Sj`/jVG;CG0H)q71"I(A<'>upXRsmlSmHN19&ash`lS1:6@m]rV>VpRNb8W69Rbt[tWbf)6WiiW.*_;dF]TtV-DZ]aHTFkQQcYi3oLK-h@Af_EjQhiO%'ZX7.r,@O9s0pY!FE,8\"m_N6MZAa3ceAO,d^e+F$kKQ[7q(KGa(>R*mSRg1*aQUhc"n)4b_q*,c)T!'/aCJk,6YJR<u$-chNi8QR!4)Pp\f*6@;roAb'WW9;4KFeIAKnG,*%j:>k;`OkcjPe79e)L),.F5b,grI+aoI_,%RJMD'.]`dQ1orYE'eM@E)e"QI0JOf-5\.;!sP=Z(5dHT$3C>"oYP%u*+q<VBI9-boO[DQm?B!5WJM=<uhr=*:o"=:!ifPT%&eV*Zp\8Ze-DZa,d5maP3G$D?4[4pC:E$&_2"'Hg8$*%ic>BE!Y"9X==pS\R7*<?aqF,d\Ei7k+a#,BZ/TuXuE5FI]i(nE:?RX@H`XH9+YeLmD]I"HpNOJ)g-/tJGYJq:"bT`imuSXb)?JZR4K&l^r7C@VZ8#U/Y8h2ugg-n%8KIJZj8e;/+((54FJG5+Um)DSDBU<p6,Y*fE-+Bl%hUh:ZQ3XO;$ZsnqbcSi@V&u^@p`>3NU9Og^CJHS@kDDUN[7[HT"[\GgDh3#TMF6als8nf><n-g.6k\sA'*qk]R))/);iD@s\/XXTsLXk]e.ETQ[:#q8Nl?0%ie7._jElMP\3`K!dO`_>JJ]$c\WKac!lXIcbUGnQ;"N2]ps&?7O-nu?D>bfP07sTlN`(5](NAcQ\>]e6/:I)9rRn?C.\ocpZ+Bl$EV'[$b3q3jpXk9M6;iE<!p_elgCf.0'7[HT"[];BPh,/]cS)7GR1:UmB,K;T%,\4E/pdg's(t[u5BK8Q69_8`].sAG0*2?.SH3U)Y4'YsLdA7L>"4;uH/htE!dYZf\U(uEf>)q",d@or)*6^#:ZFRl[rG;KCVESV<rM@mipX`)H0ue#PW<pNX8Q:8jBb74W`7.CYJ^eBFW6)s,8lUAkBb8?76e"_-J^qjFC8*Di0]C^5l1qu9s+cFs6^?LMnjE-qJ(d*Ah4T2A^A5nI`[Bejgc"'_IZW'V:u!JlUY8\:HWNGGfDHD8Z&VPXH.hBus8N/)g&K`aUd"~>endstream
Gb!;h9ofrJ&A@7.ppMa%Gl6B8DS'@\$*gO>aaq?9_Bb(l87j4e`8BIX1Mul!\gdiO0UdO?oj5>;qc,^t2j+LBOn&*f_q=F!G5Y#gWS%+nPD1#7J&D8QcQ6\:iE&33/'kVC`j*B2?>-A>)\7^rh;)ldj/ht0H;uXN\//JgTb[J"]YPlHPrsR=B%Cs5j86W!=R/;8ikiRE&9@a7I^aTPs+)!OK.3YEV:XhLjl0=s0#UBJV(%[3.P'2qHcX#2Td:hrcCcMPb1,2N^A3M_P"RAL#uk$'ShFUL"h13)1)scpkNo3l*!YG?/E-!3O>tLu'-fjg4njXn3Zp;Y;M&\d*:mF66@-sMb=`-E;?^J6)@8cB*#rd[/1$XZHn)^:MR>tk<Bui$Y>g<VZ#6]O@=a1aV[?qmD\)ku1jA<>S+Zc#`Kn9?2N-DIC9uVXrlXAq!3\1B%TtU:kbqY+S]ml&'n0N96k&tUc_o1FjREoM1OD&Kk'Y9D5B^(2co3ofU4\`Fi'Ma%"F"0t",!Lr)"0GuBbGXsVkGYO!I=Zr"+9@#ZJ:[F)cdf[KXO8#`r$]6B=3QE=,Ao\T&m7AI3MRKb[3'Oic0C]AM;]\DS:h9>d9d;mf)g8Xg[TYbD4F0gGl$<(*U(=Ub*)`T=nLFgqR5p?V>ODKMjNYc?<22C:5]&U+B[^iZK=T)$[*U4sDm,Q!-t;kOF3Y@[U$@P7Lp_n/C1*(e=(Q.!6NL;arAR?e%57TN$pj#s"k]q=ji"7&7,M_0\,7aID##g</f]<*^32UaXP7<UnLodXHgqrW;D%dn/FB*2p^;d+OpO;[qO!F\TtrW8Y5cG,me'CV=!965lpmKm79;Ke_a>`54O5?.CW(.cfF^DS(/kZ:h@5C6B(V&\Ej<d)CpW)WCqnBFSpK.o^1XXg;@ZF[P3==2J2KNG^+Bb$@0u+42ZO8tl-;jhlP(DCK4]WaHR7N9G=.<quQ>)/YIpG*L0%+n_">Q!du_%+g_^."UIm)Iu@l8>r8958Va;-C+I>^Y3,NaJ;/]njllNS4i..5Cl`P\_n+#2KH>S"HC]Gh7oWZJR-3%]?$4O.;P%pFjcR"B2Ud!$b>%"WXa'S'a0Lc%t#Ms)>hI-@OZ)S$"_Oc+Qj=t@Iq"]!ik*sW<EEa9(GkUrC)O]p5UTP;UumflD1OFcD5R!p2R5BVY_"e@cnkIjMapa'aVC%9W=>`qNt/.D>A/uV%\<;HEIUP>C]s`"cBttSY,HWIh;K7ma+U*EZ['eG5Ka8@FN!&(I5@bY2('OL2Ga:JBhA9I3$M&@k^"c=H=MJjj&R.+G-0n8hh0S%]mp@ALT.?em[1njNO#9Kb@KLkVd/+)VUGf@GBsU!LY-c&m.6Z2JL`W_S$X9m-gGq+B,(4!c&%s-EV"TL)2=UjI@bD;rgaVCE)(V*Odml!5[_ZXM\@7KEup,,]7AeD,E:t_pcSugVH`M)3\Pa4C&rWq1Qt[+bp\4]5XeA#m)kL%OJ?&iDetR"D!6,8mq&'aj.p7a:,IQ!c&$9FZr(k_;p$G8%aig$B.b]D]VN4.UnpC"X,^S,<?I5MAYMi60MWFk=c"Y+I]QhUjF)P3Y>>BBZ:gNmVR(26r4&])-b/q4H3(+#Z;e6Z&,9')4_[_g(*.nG=N-)c)l?hPYs`/_K3L@6O/7Lors/bSc_G"3Z*a$YmD('a'nd):l9>!GnW0X@JMr\MJKJB'0+$@q)V?8A!)$M\/'k]CI9Og`TG..Z\NJGUPKJVGkJ&1Gpjh6`&L7+K=:=_*=7iP`];`iWcQQJ'0ZSo);@ufHdSf+4p@YugJFo&dA[dC"elmh:pQ"aW=qH#U)@03Wfti0dAH:d%XE7T5fpq<esdZ7&sFQ[3BA:Y\W>rFJ/g;hd/hXBN6[jL3=sHf_:!^i:7^<'&C&kDdX7!KS_uL>c.KiFI>gmki3bg,@iJ)40fh2GZosA#hF3);G*n`ep2;YX+a`pL7]kI<1Bi[kA1`u0:e[#T'hFo7JEfTtXooJ1Sf3.E4A;m\'hFo7JF#$ZXooJASd_8Q$Bkj-Sd&!:ZekWk'*F">MrL6;gl)*+IG!AK4_%iKWkS1+r/kjf@s<U%154^WWUEia3p^.#s'#"G!b2t7;Y.1p1&h1U@'fk6ni`k0~>endstream
endobj
xref
0 12
@ -88,7 +88,7 @@ xref
trailer
<<
/ID
[<466199d207c1fa5cb7ca79a18ce36005><466199d207c1fa5cb7ca79a18ce36005>]
[<9e280ecb619b1263d6a1ec2c297c4a4e><9e280ecb619b1263d6a1ec2c297c4a4e>]
% ReportLab generated PDF document -- digest (http://www.reportlab.com)
/Info 9 0 R
@ -96,5 +96,5 @@ trailer
/Size 12
>>
startxref
10523
10515
%%EOF

File diff suppressed because one or more lines are too long

View File

@ -278,7 +278,7 @@ def add_class(diction):
if ("zone_diffusion" in diction.keys()):
if diction['zone_diffusion']:
if diction['zone_diffusion'] and str(diction['zone_diffusion']) > 0:
tmp_str2 = str(diction['zone_diffusion']).lower().replace(",", ";").replace("\r\n", "")
if (not tmp_str2.endswith(";")):
@ -334,7 +334,7 @@ def add_class(diction):
mydata['datelieu'] = ""
if ("date_lieu" in diction.keys()):
if diction['date_lieu']:
if diction['date_lieu'] and str(diction['date_lieu']) > 0 :
tmp_str2 = str(diction['date_lieu']).lower().replace(",", ";").replace("\r\n", "")
print(" ### tmp_str2 = "+str(tmp_str2))
@ -714,51 +714,55 @@ def update_class(diction):
mydata['domaine'] = diction['domaine']
if ("zone_diffusion" in diction.keys()):
tmp_str2 = str(diction['zone_diffusion']).lower().replace(",", ";").replace("\r\n", "")
if( not tmp_str2.endswith(";")):
tmp_str2 = tmp_str2+";"
if(len(str(diction['zone_diffusion'])) == 0 ):
mydata['zone_diffusion'] = {}
else:
tmp_str2 = str(diction['zone_diffusion']).lower().replace(",", ";").replace("\r\n", "")
#print("tmp_str2 = " + tmp_str2)
if( not tmp_str2.endswith(";")):
tmp_str2 = tmp_str2+";"
if (";" not in tmp_str2):
mycommon.myprint(str(inspect.stack()[0][3]) + " - la zone de diffusion de la formation 0: " + str(
my_external_code) + " est incorrecte")
return False, "La zone de diffusion de la formation " + str(my_external_code) + " est incorrecte"
#print("tmp_str2 = " + tmp_str2)
tmp_str = tmp_str2.split(";") #==> ce qui va donner un tableau de : Country_Code-City : ['fr-paris', 'fr-marseille', 'bn-cotonou']
cpt = 0
tab_country = []
tab_city = []
for val in tmp_str:
if (len(str(val)) <= 0):
continue
if( "-" not in str(val)):
mycommon.myprint(str(inspect.stack()[0][3]) + " - la zone de diffusion de la formation 1: " + str( my_external_code) + " est incorrecte")
if (";" not in tmp_str2):
mycommon.myprint(str(inspect.stack()[0][3]) + " - la zone de diffusion de la formation 0: " + str(
my_external_code) + " est incorrecte")
return False, "La zone de diffusion de la formation " + str(my_external_code) + " est incorrecte"
tab_val = len(val.split("-"))
if( len(val.split("-")) != 1 and len(val.split("-")) != 2 ):
mycommon.myprint( str(inspect.stack()[0][3]) + " - la zone de diffusion de la formation 2: " + str(my_external_code)+" est incorrecte")
return False, "La zone de diffusion de la formation " + str(my_external_code)+" est incorrecte"
tmp_str = tmp_str2.split(";") #==> ce qui va donner un tableau de : Country_Code-City : ['fr-paris', 'fr-marseille', 'bn-cotonou']
cpt = 0
tab_country = []
tab_city = []
for val in tmp_str:
if( val.split("-")[0]):
tab_country.append(val.split("-")[0])
else:
tab_country.append("")
if(val.split("-")[1]):
tab_city.append(val.split("-")[1])
else:
tab_city.append("")
if (len(str(val)) <= 0):
continue
mydata['zone_diffusion'] = {'country':tab_country, 'city':tab_city}
if( "-" not in str(val)):
mycommon.myprint(str(inspect.stack()[0][3]) + " - la zone de diffusion de la formation 1: " + str( my_external_code) + " est incorrecte")
return False, "La zone de diffusion de la formation " + str(my_external_code) + " est incorrecte"
tab_val = len(val.split("-"))
if( len(val.split("-")) != 1 and len(val.split("-")) != 2 ):
mycommon.myprint( str(inspect.stack()[0][3]) + " - la zone de diffusion de la formation 2: " + str(my_external_code)+" est incorrecte")
return False, "La zone de diffusion de la formation " + str(my_external_code)+" est incorrecte"
if( val.split("-")[0]):
tab_country.append(val.split("-")[0])
else:
tab_country.append("")
if(val.split("-")[1]):
tab_city.append(val.split("-")[1])
else:
tab_city.append("")
mydata['zone_diffusion'] = {'country':tab_country, 'city':tab_city}
'''
Traitement date_lieu.
@ -767,7 +771,10 @@ def update_class(diction):
'''
mydata['datelieu'] = ""
if ("date_lieu" in diction.keys()):
if diction['date_lieu']:
if(len(str(diction['date_lieu'])) == 0 ):
mydata['datelieu'] = {}
else:
tmp_str2 = str(diction['date_lieu']).lower().replace(",", ";").replace("\r\n", "")
if (not tmp_str2.endswith(";")):
@ -2482,23 +2489,23 @@ def add_class_mass(file=None, Folder=None, diction=None):
for n in x:
mydata = {}
mydata['external_code'] = str(df['external_code'].values[n])
mydata['title'] = str(df['titre'].values[n])
mydata['domaine'] = str(df['domaine'].values[n])
mydata['description'] = str(df['description'].values[n])
mydata['external_code'] = str(df['external_code'].values[n]).strip()
mydata['title'] = str(df['titre'].values[n]).strip()
mydata['domaine'] = str(df['domaine'].values[n]).strip()
mydata['description'] = str(df['description'].values[n]).strip()
formateur = ""
if ("formateur" in df.keys()):
if (str(df['formateur'].values[n])):
formateur = str(df['formateur'].values[n])
formateur = str(df['formateur'].values[n]).strip()
mydata['trainer'] = formateur
institut_formation = ""
if ("institut_formation" in df.keys()):
if (str(df['institut_formation'].values[n])):
institut_formation = str(df['institut_formation'].values[n])
institut_formation = str(df['institut_formation'].values[n]).strip()
mydata['institut_formation'] = institut_formation
@ -2507,109 +2514,129 @@ def add_class_mass(file=None, Folder=None, diction=None):
url = ""
if ("url" in df.keys()):
if (str(df['url'].values[n])):
url = str(df['url'].values[n])
url = str(df['url'].values[n]).strip()
mydata['url'] = url
duration = 0
duration = "0"
if ("duree" in df.keys()):
if (str(df['duree'].values[n])):
plus_produit = str(df['duree'].values[n])
plus_produit = str(df['duree'].values[n]).strip()
mydata['duration'] = duration
plus_produit = ""
if ("plus_produit" in df.keys()):
if (str(df['plus_produit'].values[n])):
plus_produit = str(df['plus_produit'].values[n])
plus_produit = str(df['plus_produit'].values[n]).strip()
mydata['plus_produit'] = plus_produit
mots_cle = ""
if ("mots_cle" in df.keys()):
if (str(df['mots_cle'].values[n])):
presentiel = str(df['mots_cle'].values[n])
presentiel = str(df['mots_cle'].values[n]).strip()
mydata['mots_cle'] = mots_cle
presentiel = "0"
if ("presentiel" in df.keys()):
if (str(df['presentiel'].values[n])):
presentiel = str(df['presentiel'].values[n])
presentiel = str(df['presentiel'].values[n]).strip()
mydata['presentiel'] = presentiel
distantiel = "0"
if ("distantiel" in df.keys()):
if (str(df['distantiel'].values[n])):
distantiel = str(df['distantiel'].values[n])
distantiel = str(df['distantiel'].values[n]).strip()
mydata['distantiel'] = distantiel
price = "0"
if ("prix" in df.keys()):
if (str(df['prix'].values[n])):
price = str(df['prix'].values[n])
price = str(df['prix'].values[n]).strip()
mydata['price'] = price
metier = "1"
if ("metier" in df.keys()):
if (str(df['metier'].values[n])):
metier = str(df['metier'].values[n])
metier = str(df['metier'].values[n]).strip()
mydata['metier'] = metier
published = "1"
if ("published" in df.keys()):
if (str(df['published'].values[n])):
published = str(df['published'].values[n])
published = str(df['published'].values[n]).strip()
mydata['published'] = published
mycpf = "0"
if ("cpf" in df.keys()):
if (str(df['cpf'].values[n])):
mydata['cpf'] = str(df['cpf'].values[n])
mycpf = str(df['cpf'].values[n]).strip()
mydata['cpf'] = mycpf
class_inscription_url = ""
if ("class_inscription_url" in df.keys()):
if (str(df['class_inscription_url'].values[n])):
mydata['class_inscription_url'] = str(df['class_inscription_url'].values[n])
class_inscription_url = str(df['class_inscription_url'].values[n]).strip()
mydata['class_inscription_url'] = class_inscription_url
certif = "0"
if ("certif" in df.keys()):
if (str(df['certif'].values[n])):
mydata['certif'] = str(df['certif'].values[n])
certif = str(df['certif'].values[n]).strip()
mydata['certif'] = certif
objectif = ""
if ("objectif" in df.keys()):
if (str(df['objectif'].values[n])):
mydata['objectif'] = str(df['objectif'].values[n])
objectif = str(df['objectif'].values[n]).strip()
mydata['objectif'] = objectif
note = ""
if ("note" in df.keys()):
if (str(df['note'].values[n])):
mydata['note'] = str(df['note'].values[n])
note = str(df['note'].values[n]).strip()
mydata['note'] = note
programme = ""
if ("programme" in df.keys()):
if (str(df['programme'].values[n])):
mydata['programme'] = str(df['programme'].values[n])
programme = str(df['programme'].values[n]).strip()
mydata['programme'] = programme
prerequis = ""
if ("prerequis" in df.keys()):
if (str(df['prerequis'].values[n])):
mydata['prerequis'] = str(df['prerequis'].values[n])
prerequis = str(df['prerequis'].values[n]).strip()
mydata['prerequis'] = prerequis
pourqui = ""
if ("pourqui" in df.keys()):
if (str(df['pourqui'].values[n])):
mydata['pourqui'] = str(df['pourqui'].values[n])
pourqui = str(df['pourqui'].values[n]).strip()
mydata['pourqui'] = pourqui
support = ""
if ("support" in df.keys()):
if (str(df['support'].values[n])):
mydata['support'] = str(df['support'].values[n])
support = str(df['support'].values[n]).strip()
mydata['support'] = support
img_banner_detail_class = ""
if ("img_banner_detail_class" in df.keys()):
if (str(df['img_banner_detail_class'].values[n])):
mydata['img_banner_detail_class'] = str(df['img_banner_detail_class'].values[n])
img_banner_detail_class = str(df['img_banner_detail_class'].values[n]).strip()
mydata['img_banner_detail_class'] = img_banner_detail_class
'''
Verification de l'image
'''
if ("img_url" in df.keys()):
mydata['img_url'] = str(df['img_url'].values[n])
mydata['img_url'] = str(df['img_url'].values[n]).strip()
if (str(df['img_url'].values[n]) == 'nan'):
mydata['img_url'] = ""
@ -2638,16 +2665,23 @@ def add_class_mass(file=None, Folder=None, diction=None):
'''
Traitement de la zone de diffusion
'''
zone_diffusion = ""
if ("zone_diffusion" in df.keys()):
if(str(df['zone_diffusion'].values[n])):
mydata['zone_diffusion'] =str(df['zone_diffusion'].values[n])
zone_diffusion =str(df['zone_diffusion'].values[n]).strip()
mydata['zone_diffusion'] = zone_diffusion
'''
Traitement des date et lieu de la formation
'''
date_lieu = ""
if ("date_lieu" in df.keys()):
if(str(df['date_lieu'].values[n])):
mydata['date_lieu'] =str(df['date_lieu'].values[n])
date_lieu =str(df['date_lieu'].values[n]).strip()
mydata['date_lieu'] = date_lieu
if ("token" in diction.keys()):
if diction['token']:

View File

@ -1,4 +1,7 @@
,index,mots,occurence,moyenne,id_formation,source_field
0,0,prise,1,0.33,3IL_10006,title
1,1,parole,1,0.33,3IL_10006,title
2,2,public,1,0.33,3IL_10006,title
0,0,intelligence,1,0.17,test_0002,title
1,1,professionnel,1,0.17,test_0002,title
2,2,entretien,1,0.17,test_0002,title
3,3,emotionnelle,1,0.17,test_0002,title
4,4,developper,1,0.17,test_0002,title
5,5,preparer,1,0.17,test_0002,title

1 index mots occurence moyenne id_formation source_field
2 0 0 prise intelligence 1 0.33 0.17 3IL_10006 test_0002 title
3 1 1 parole professionnel 1 0.33 0.17 3IL_10006 test_0002 title
4 2 2 public entretien 1 0.33 0.17 3IL_10006 test_0002 title
5 3 3 emotionnelle 1 0.17 test_0002 title
6 4 4 developper 1 0.17 test_0002 title
7 5 5 preparer 1 0.17 test_0002 title

View File

@ -1,3 +1,7 @@
Empty DataFrame
Columns: [mots, occurence, moyenne, id_formation, source_field]
Index: []
mots occurence moyenne id_formation source_field
0 intelligence 1 0.17 test_0002 title
1 professionnel 1 0.17 test_0002 title
2 entretien 1 0.17 test_0002 title
3 emotionnelle 1 0.17 test_0002 title
4 developper 1 0.17 test_0002 title
5 preparer 1 0.17 test_0002 title

View File

@ -94,17 +94,15 @@ def CreateTableauEmargement(diction):
ville = ""
code_postal = ""
adresse = ""
for tmp_val in MYSY_GV.dbname['myclass'].find({"internal_url":str(class_internal_url),
"datelieu.session_id": str(session_id)}):
for tmp_val in MYSY_GV.dbname['session_formation'].find({"class_internal_url":str(class_internal_url),
"formation_session_id": str(session_id)}):
tmp_date_lieu = tmp_val['datelieu']
for val in tmp_date_lieu:
if (val['session_id'] == str(session_id)):
date_du = val['date_du']
date_au = val['date_au']
ville = val['ville']
code_postal = val['code_postal']
code_postal = val['adresse']
date_du = str(tmp_val['date_debut'])[0:10]
date_au = str(tmp_val['date_fin'])[0:10]
ville = tmp_val['ville']
code_postal = tmp_val['code_postal']
adresse = tmp_val['adresse']
is_date_du = mycommon.CheckisDate(date_du)
is_date_au = mycommon.CheckisDate(date_au)
@ -117,14 +115,23 @@ def CreateTableauEmargement(diction):
date_emargement = datetime.strptime(str(date_du), '%d/%m/%Y')
i = 0 # compteur de securité
# On vide la collection emargement pour la session = str(session_id)
local_myquery = {"session_id": str(session_id)}
x = MYSY_GV.dbname['emargement'].delete_many(local_myquery)
mycommon.myprint(
str(inspect.stack()[0][
3]) + " - INFO : "+str(x.deleted_count)+" Documents supprimés de la collection : emargement : session = "+str(session_id) )
liste_date = []
print(" Date du = "+str(date_du)+" CMP Date au ="+str(date_au))
#print(" Date du = "+str(date_du)+" CMP Date au ="+str(date_au))
while( date_emargement < datetime.strptime(str(date_au), '%d/%m/%Y') and i < 360):
date_10 = str(date_emargement)
liste_date.append(date_10[0:10])
i = i + 1
date_emargement = date_emargement + timedelta(days=1)
##print(" ### date_emargement = "+str(date_emargement) + " < "+str(datetime.strptime(str(date_au), '%d/%m/%Y') ))
#print(" ### date_emargement = "+str(date_emargement) + " < "+str(datetime.strptime(str(date_au), '%d/%m/%Y') ))
#print("#### Liste Date = "+str(liste_date))

View File

@ -934,7 +934,7 @@ def partner_login(diction):
try:
# Dictionnaire des champs utilisables
field_list = ['email', 'pwd', 'secret']
field_list = ['email', 'pwd', ]
incom_keys = diction.keys()
'''
@ -952,7 +952,7 @@ def partner_login(diction):
Une fois qu'on a controlé que toutes les clés mise dans l'API sont correcte. etape precedente,
On controle que les champs obligatoires sont presents dans la liste
'''
field_list_obligatoire = ['email', 'pwd', 'secret']
field_list_obligatoire = ['email', 'pwd', ]
for val in field_list_obligatoire:
if str(val).lower() not in diction:
mycommon.myprint(str(inspect.stack()[0][3]) + " La valeur '" + val + "' n'est pas presente dans liste des champs")
@ -972,20 +972,17 @@ def partner_login(diction):
if diction['pwd']:
pwd = diction['pwd']
if ("secret" in diction.keys()):
if diction['secret']:
token = diction['secret']
mydata['token'] = diction['secret']
now = str(datetime.now())
mydata['valide'] = "1"
mydata['date_update'] = now
partner_key_secrete_key = ""
# Verification que les informations sont juste
coll_name = MYSY_GV.dbname['partnair_account']
ret_val = coll_name.find_one_and_update({'email': str(email), 'pwd': str(pwd), 'token': str(token), 'active': '1', 'locked':'0'},
ret_val = coll_name.find_one_and_update({'email': str(email), 'pwd': str(pwd), 'active': '1', 'locked':'0'},
{"$set": {'last_connexion':str(now)}},
upsert=False,
return_document=ReturnDocument.AFTER
@ -996,6 +993,7 @@ def partner_login(diction):
# Vu que les credentials sont ok, alors enregistrement de la connexion dans la table "partner token"
#print(" GRRRRRRRRRRRRRRRRRRR "+str(ret_val))
partner_key_secrete_key = str(ret_val['token'])
mydata['recid'] = str(ret_val['recid'])
token_collection = MYSY_GV.dbname['partner_token']
@ -1012,7 +1010,7 @@ def partner_login(diction):
return False, " Impossible de se connecter"
return True, " Partner Connexion : OK"
return True, partner_key_secrete_key
else:
mycommon.myprint(str(inspect.stack()[0][3]) + " Impossible de se connecter - Partner ")
return False, " Impossible de se connecter"
@ -1021,7 +1019,7 @@ def partner_login(diction):
except Exception as e:
exc_type, exc_obj, exc_tb = sys.exc_info()
mycommon.myprint(str(inspect.stack()[0][3]) + " -" + str(e) + " - ERRORRRR AT Line : " + str(exc_tb.tb_lineno))
return False, " Impossible de recuperer la formation"
return False, " Impossible de connecter le partenaire"
"""

View File

@ -1946,13 +1946,16 @@ def CreateInternalUrl(sentence=None):
my_internal_url = my_internal_url.replace("--", "-")
my_internal_url = my_internal_url.replace(" ", "-")
my_internal_url = my_internal_url.replace("/", "-")
if (my_internal_url.startswith('-')):
my_internal_url = my_internal_url[1:]
if (my_internal_url.endswith('-')):
my_internal_url = my_internal_url[:-1]
suffix = hashlib.md5(my_internal_url.encode()).hexdigest()
suffix = hashlib.md5(str(datetime.now()).encode()).hexdigest()
final_internal_url = str(my_internal_url) + "-" + str(suffix[-3:])
final_internal_url = final_internal_url.replace("--", "-")
internal_url = final_internal_url