diff --git a/mondumas/models/dossier.py b/mondumas/models/dossier.py
index 0ece0e7..041f2a7 100644
--- a/mondumas/models/dossier.py
+++ b/mondumas/models/dossier.py
@@ -157,7 +157,7 @@ def update_dossier(request, nodossier, new_values):
s = "%s=:%s" % (param, param)
new_values['societe'] = societe
new_values['nochantier'] = nochantier
- query = u"UPDATE dem_devis SET %s WHERE societe=:societe AND no_id=:nochantier" % s
+ query = "UPDATE dem_devis SET %s WHERE societe=:societe AND no_id=:nochantier" % s
execute_query(request, query, new_values)
def insert_dossier_attaches(request, nodossier, filename, filesize, user):
@@ -169,27 +169,31 @@ def insert_dossier_attaches(request, nodossier, filename, filesize, user):
VALUES('DOCS_ATTACHES',:societe,:nochantier,:filename,:filesize,NOW(),:user);"""
execute_query(request, query, {'societe': societe, 'nochantier': nochantier, 'filename': filename, 'filesize': filesize, 'user': user})
-def get_rapport_by_no(request,nodossier):
+def get_rapport_by_no(request,nodossier,date_inter):
societe = nodossier[0:2]
nochantier = nodossier[3:]
- query = "SELECT * FROM dem_rdf where societe = :societe and nochantier = :nochantier;"
- results = request.dbsession.execute(query, {'societe': societe, 'nochantier': nochantier}).first()
+ if date_inter == '':
+ query = "SELECT * FROM dem_rdf WHERE societe = :societe AND nochantier = :nochantier;"
+ results = request.dbsession.execute(query, {'societe': societe, 'nochantier': nochantier}).fetchall()
+ else:
+ query = "SELECT * FROM dem_rdf WHERE societe = :societe AND nochantier = :nochantier AND date_inter=:date_inter;"
+ results = request.dbsession.execute(query, {'societe': societe, 'nochantier': nochantier, 'date_inter': date_inter}).first()
return results
def insert_rapport(request,nodossier,logged_in):
societe = nodossier[0:2]
nochantier = nodossier[3:]
- query = """INSERT INTO dem_rdf (societe, nochantier, cd_cli, nomcli, c_qualite, c_nom, c_adr, c_adr2, c_cp, c_ville, c_tel1, c_telp, nosin, usermaj)
- SELECT societe, no_id, cd_cli, nomcli, c_qualite, c_nom, c_adr, c_adr2, c_cp, c_ville, c_tel1, c_telp, nosin, :logged_in FROM dem_devis WHERE societe = :societe AND no_id = :nochantier;"""
- execute_query(request, query, {'societe': societe, 'nochantier': nochantier, 'logged_in': logged_in})
+ query = """REPLACE INTO dem_rdf (societe, nochantier, cd_cli, nomcli, c_qualite, c_nom, c_adr, c_adr2, c_cp, c_ville, c_tel1, c_telp, nosin, auteur_code)
+ SELECT societe, no_id, cd_cli, nomcli, c_qualite, c_nom, c_adr, c_adr2, c_cp, c_ville, c_tel1, c_telp, nosin, :auteur_code FROM dem_devis WHERE societe = :societe AND no_id = :nochantier;"""
+ execute_query(request, query, {'societe': societe, 'nochantier': nochantier, 'auteur_code': logged_in})
def get_rdf_causes(request, code):
query = "SELECT libelle FROM rdf_causes where code LIKE :code;"
results = request.dbsession.execute(query, {'code': code + '%'}).fetchall()
return results
-def update_rdf(request, nodossier, new_values):
+def update_rapport(request, nodossier, date_inter, new_values):
societe = nodossier[0:2]
nochantier = int(nodossier[3:])
@@ -201,6 +205,7 @@ def update_rdf(request, nodossier, new_values):
s = "%s=:%s" % (param, param)
new_values['societe'] = societe
new_values['nochantier'] = nochantier
- query = u"UPDATE dem_rdf SET %s WHERE societe=:societe AND nochantier=:nochantier" % s
+ new_values['date_inter'] = date_inter
+ query = "UPDATE dem_rdf SET %s WHERE societe=:societe AND nochantier=:nochantier AND date_inter=:date_inter;" % s
execute_query(request, query, new_values)
diff --git a/mondumas/routes.py b/mondumas/routes.py
index fe06cab..a994332 100644
--- a/mondumas/routes.py
+++ b/mondumas/routes.py
@@ -18,7 +18,7 @@ def includeme(config):
config.add_route('dossier_select', '/dossier_select/{date}')
config.add_route('dossier_selected', '/dossier_selected/{goto}/{date}/{nodossier}')
config.add_route('dossier_view', '/dossier_view/{nodossier}')
- config.add_route('rdf_edit','/rdf_edit/{nodossier}')
+ config.add_route('rdf_edit','/rdf_edit/{nodossier}/{date_inter}')
config.add_route('suivi_edit','/suivi_edit/{nodossier}/{nolig}')
config.add_route('upload_doc', '/upload_doc/{nodossier}')
# parametres
diff --git a/mondumas/templates/dossier/dossier_view.pt b/mondumas/templates/dossier/dossier_view.pt
index 5f4c5d1..d4d45ac 100644
--- a/mondumas/templates/dossier/dossier_view.pt
+++ b/mondumas/templates/dossier/dossier_view.pt
@@ -177,25 +177,27 @@
-
+
Nouvelle recherche
-
+
- | Numéro |
- Date |
+ Date Interv. |
+ Date Rapport |
Chantier |
No sinistre |
Modif le |
-
+
|
- ${rapport.nochantier}
- |
- ${rapport.DATE.strftime('%d-%m-%Y')} |
+
+ ${rapport.date_inter.strftime('%d-%m-%Y')}
+
+ ${rapport.date_rapport.strftime('%d-%m-%Y')} |
+ |
${rapport.C_QUALITE} ${rapport.C_NOM} |
${rapport.NOSIN} |
- ${rapport.modif_le.strftime('%d-%m-%Y')} |
+ ${rapport.modif_le.strftime('%d-%m-%Y')} - ${rapport.auteur_code} |
diff --git a/mondumas/templates/dossier/rdf_edit.pt b/mondumas/templates/dossier/rdf_edit.pt
index fa59fbb..2e73c6b 100644
--- a/mondumas/templates/dossier/rdf_edit.pt
+++ b/mondumas/templates/dossier/rdf_edit.pt
@@ -35,6 +35,24 @@
data-fv-icon-invalid="glyphicon glyphicon-remove"
data-fv-icon-validating="glyphicon glyphicon-refresh">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ RAPPORT
+
+
+
+
TRAVAUX relatifs à la DETECTION de la fuite
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Tests d'étanchéité :
+ Ecoute électro accoustique
+ Mise en eau
+ Fumigènes
+
+
+ Descriptif de la détection
+
+
TRAVAUX relatifs à la REPARATION de la fuite
-
- Descriptif réparation
-
-
+
+ La réparation est-elle réalisée dans le cadre de la 1ère visite ?
+
+ NON
+
+
+ OUI
+
+
+
+ Descriptif de la solution de réparation
+
+
+
+ Constation de situation de blocage
+
+ Impossibilité d'accès dans le local où la recherche doi être réalisée
+
+ NON
+
+
+ OUI
+
+
+
+ Nécessité de faire une recherchede fuite destructive dans le local du responsable différent de la victime
+
+ NON
+
+
+ OUI
+
+
+
+ Recherche de fuite infructueuse
+
+ NON
+
+
+ OUI
+
+
+
+ Pluralité de locaux sinistrés autre que le local à l'origine de la fuite
+
+ NON
+
+
+ OUI
+
+
+
PHOTOS
@@ -97,11 +273,14 @@
-
-
Dern. modif le
-
-
${rapport.modif_le.strftime('%d-%m-%Y %H:%M')} par ${rapport.USERMAJ}
-
+
+
+ Date du rapport : ${rapport.modif_le.strftime('%d-%m-%Y')}
+ Etabli par ${rapport.auteur_nom}
+
+
+
diff --git a/mondumas/views/dossier.py b/mondumas/views/dossier.py
index 5f18db7..5e119bc 100644
--- a/mondumas/views/dossier.py
+++ b/mondumas/views/dossier.py
@@ -44,11 +44,11 @@ def dossier_lookup(request):
goto_url = '/dossier_selected/dossier_view/%s/' % date.today().strftime('%Y-%m-%d')
url = request.route_url('dossier_lookup')
- message = u''
+ message = ''
societes = ['PE','ME','PL','PO','CD']
societe = 'PE'
liste=[]
- name = u''
+ name = ''
cb_tous = "non"
if 'form.submitted' in request.params:
@@ -62,7 +62,7 @@ def dossier_lookup(request):
cb_tous = "non"
chantiers = get_chantiers_byName(request, societe, name, False)
if len(chantiers) == 0:
- message = u"Chantier non trouvé : %s" % name
+ message = "Chantier non trouvé : %s" % name
# construire la liste
for item in chantiers:
d = ('%s-%s' % (societe, item.numero),item.date.strftime('%d-%m-%Y'), item.nomcli, item.chantier, to_euro(item.montant),
@@ -70,7 +70,7 @@ def dossier_lookup(request):
liste.append(d)
return {
- 'page_title': u"Rechercher un chantier",
+ 'page_title': "Rechercher un chantier",
'url': url,
'goto_url': goto_url,
'message': message,
@@ -103,9 +103,9 @@ def dossier_view(request):
docs_attaches = get_docs_attaches(request, 'DOCS_ATTACHES', nodossier)
if nodossier.startswith('PL'):
# lire rapport de rdf
- rapport = get_rapport_by_no(request, nodossier)
+ rapports = get_rapport_by_no(request, nodossier, '')
else:
- rapport = []
+ rapports = []
# select background color according to society
bg_color = "bg-%s" % societe
@@ -114,7 +114,7 @@ def dossier_view(request):
'nodossier': nodossier,
'dossier': dossier,
'details': details,
- 'rapport': rapport,
+ 'rapports': rapports,
'documents': documents,
'similaires': similaires,
'docs_attaches': docs_attaches,
@@ -325,19 +325,25 @@ def upload_doc(request):
def rdf_edit(request):
logged_in = request.authenticated_userid.upper()
nodossier = request.matchdict['nodossier']
- url = request.route_url('rdf_edit', nodossier=nodossier)
+ date_inter = request.matchdict['date_inter']
- # lire le rapport
- rapport = get_rapport_by_no(request, nodossier)
- if rapport == None:
- # si non trouvé, creer un nouveau rapport
+ if date_inter == 'new':
+ # creer un nouveau rapport
insert_rapport(request, nodossier, logged_in)
- # lire le rapport
- rapport = get_rapport_by_no(request, nodossier)
-
- caracteristiques = ["Maison individuelle", "Immeuble collectif", u"Copropriété", "Commerce", "Bureaux"]
+ date_inter = date.today().strftime('%Y-%m-%d')
+
+ url = request.route_url('rdf_edit', nodossier=nodossier, date_inter=date_inter)
+ # lire le rapport
+ rapport = get_rapport_by_no(request, nodossier, date_inter)
+
+ caracteristiques = ["Maison individuelle", "Immeuble collectif", "Copropriété", "Commerce", "Bureaux"]
equipements = get_rdf_causes(request, 'C01')
reseaux_int = get_rdf_causes(request, 'C02')
+ reseaux_ext = get_rdf_causes(request, 'C03')
+ reseaux_local = get_rdf_causes(request, 'C04')
+ elements_clos = get_rdf_causes(request, 'C05')
+ elements_couvert = get_rdf_causes(request, 'C06')
+ voisins = get_rdf_causes(request, 'C07')
if 'form.submitted' in request.params:
new_values = {}
@@ -346,12 +352,12 @@ def rdf_edit(request):
new_values[param] = request.params[param]
if new_values:
- update_rdf(request, nodossier, new_values)
+ update_rapport(request, nodossier, date_inter, new_values)
request.session.flash(u"Le dossier a été mis à jour avec succès.", 'success')
return HTTPFound(location=request.route_url('dossier_view', nodossier=nodossier))
return {
- 'page_title': u"Modifier le rapport de RDF : %s" % nodossier,
+ 'page_title': "Rapport de RDF : %s du %s" % (nodossier, rapport.date_inter.strftime('%d-%m-%Y')),
'url': url,
'logged_in': logged_in,
'rapport': rapport,
@@ -359,5 +365,10 @@ def rdf_edit(request):
'caracteristiques': caracteristiques,
'equipements': equipements,
'reseaux_int': reseaux_int,
+ 'reseaux_ext': reseaux_ext,
+ 'reseaux_local': reseaux_local,
+ 'elements_clos': elements_clos,
+ 'elements_couvert': elements_couvert,
+ 'voisins':voisins,
}