Ajout 5 PJ supplementaires par piece (marln)

Ajout du tri des objets de demande
This commit is contained in:
Etienne Loupias 2018-04-19 16:49:09 +02:00
parent d2818f3589
commit d94a1533cf
1 changed files with 23 additions and 2 deletions

View File

@ -301,7 +301,10 @@ class CartADS(BaseResource):
out_item['text'] = objet["Value"]
out.append(out_item)
return {'data': out}
def getKey(objet):
return objet['id']
return {'data': sorted(out, key=getKey)}
# TODO : parcourir la liste en json devrait etre plus simple qu'en suds, mais j'ai pas reussi pour l'instant
@ -342,7 +345,7 @@ class CartADS(BaseResource):
@endpoint(perm='can_access')
def write_wcs_files(self, request, type_dossier):
h = HTMLParser.HTMLParser() # h.unescape(string) decode le html qui vient du web service en unicode : http://fredericiana.com/2010/10/08/decoding-html-entities-to-text-in-python/
output_string = u"<!--#### A inserer apres field 'Un code de suivi de votre demande...' jusqu'a la fin des </fields> -->\n"
output_string = u"<!--#### A inserer a partir du field 'Pi&#232;ces &#224; joindre' jusqu'a la fin des </fields> -->\n"
dict_resp = self.get_objets_demande(request, type_dossier)
for objet in dict_resp['data']:
@ -429,6 +432,7 @@ class CartADS(BaseResource):
output_string += u"<field>\n"
output_string += u" <label>"+h.unescape(piece["Libelle"])+u"</label>\n"
output_string += u" <type>file</type>\n"
output_string += u" <extra_css_class>plus0</extra_css_class>\n"
output_string += u" <required>"+str(piece["Reglementaire"]).title().decode('utf8')+u"</required>\n"
hint = u""
if piece["Descriptif"]: hint = h.unescape(piece["Descriptif"])
@ -441,6 +445,23 @@ class CartADS(BaseResource):
output_string += u" <allow_portfolio_picking>True</allow_portfolio_picking>\n"
output_string += u" <id>"+str(id).decode('utf8')+u"</id>\n"
output_string += u"</field>\n"
#test : ajouter 5 PJ supplementaires par pièce
for i in range(5):
output_string += u" <field>\n"
output_string += u" <label>"+h.unescape(piece["Libelle"])+u"_"+str(i+1)+u"</label>\n"
output_string += u" <type>file</type>\n"
output_string += u" <extra_css_class>plus plus"+str(i+1)+u"</extra_css_class>\n"
output_string += u" <required>False</required>\n"
output_string += u" <varname>objet"+str(objet["id"]).decode('utf8')+u"_"+str(piece["IdPiece"]).decode('utf8')+u"_"+str(piece["CodePiece"]).decode('utf8')+u"_"+str(i+1)+u"</varname>\n"
output_string += u" <in_listing>False</in_listing>\n"
output_string += u" <prefill>\n"
output_string += u" <type>none</type>\n"
output_string += u" </prefill><max_file_size>50M</max_file_size>\n"
output_string += u" <allow_portfolio_picking>True</allow_portfolio_picking>\n"
output_string += u" <id>"+str(id).decode('utf8')+u"_"+str(i+1)+u"</id>\n"
output_string += u" </field>\n"
id += 1
output_string += u" </fields>\n"