correction affichage facture

This commit is contained in:
2020-12-06 08:03:37 +01:00
parent ab0d4997eb
commit 879546e166
3 changed files with 61 additions and 27 deletions

View File

@@ -126,6 +126,38 @@ def get_devis_by_no(request,nodossier):
results = request.dbsession.execute(query, {'societe': societe, 'no_id': no_id}).first() results = request.dbsession.execute(query, {'societe': societe, 'no_id': no_id}).first()
return results return results
def get_facture_by_no(request,nodossier):
# lire facture
societe = nodossier[0:2]
no_id = nodossier[5:]
query = """
SELECT d.*, c.*, a.NOM as nom_cabinet, e.NOM as nom_expert FROM facture d
INNER JOIN clients c ON d.societe = c.societe and d.cd_cli = c.cd_cli
INNER JOIN p_cabinet a ON d.cabinet = a.code
INNER JOIN p_experts e ON d.cabinet = e.code_cab and d.expert = e.code_exp
WHERE d.societe = :societe and d.no_id=:no_id;"""
results = request.dbsession.execute(query, {'societe': societe, 'no_id': no_id}).first()
return results
def get_proforma_by_no(request,nodossier):
# lire facture
societe = nodossier[0:2]
no_id = nodossier[5:]
query = """
SELECT d.*, c.*, a.NOM as nom_cabinet, e.NOM as nom_expert FROM proforma d
INNER JOIN clients c ON d.societe = c.societe and d.cd_cli = c.cd_cli
INNER JOIN p_cabinet a ON d.cabinet = a.code
INNER JOIN p_experts e ON d.cabinet = e.code_cab and d.expert = e.code_exp
WHERE d.societe = :societe and d.no_id=:no_id;"""
results = request.dbsession.execute(query, {'societe': societe, 'no_id': no_id}).first()
return results
def update_devis_ligne(request, nodossier, nolig, new_values): def update_devis_ligne(request, nodossier, nolig, new_values):
societe = nodossier[0:2] societe = nodossier[0:2]
no_id = nodossier[5:] no_id = nodossier[5:]

View File

@@ -7,14 +7,14 @@
<div class="col-md-6"> <div class="col-md-6">
<table class="table table-condensed"> <table class="table table-condensed">
<tr> <tr>
<td><h4>CHANTIER</h4><h4 class="text-primary">${devis.societe}-${devis.nochantier}</h4> <td><h4>CHANTIER</h4><h4 class="text-primary">${entete.societe}-${entete.nochantier}</h4>
</td> </td>
<td> <td>
<h4>${devis.C_QUALITE} ${devis.C_NOM}</h4> <h4>${entete.C_QUALITE} ${entete.C_NOM}</h4>
${devis.C_ADR}<br /> ${entete.C_ADR}<br />
<span tal:condition="devis.C_ADR2">${devis.C_ADR2}<br /></span> <span tal:condition="entete.C_ADR2">${entete.C_ADR2}<br /></span>
${devis.C_CP} ${devis.C_VILLE}<br /> ${entete.C_CP} ${entete.C_VILLE}<br />
${devis.C_EMAIL} ${entete.C_EMAIL}
</td> </td>
</tr> </tr>
<tr> <tr>
@@ -24,9 +24,9 @@
Tél. mobile - fax Tél. mobile - fax
</td> </td>
<td> <td>
${devis.C_ETAGE} - ${devis.C_CODE}<br /> ${entete.C_ETAGE} - ${entete.C_CODE}<br />
${devis.C_TEL1} - ${devis.C_TEL2}<br /> ${entete.C_TEL1} - ${entete.C_TEL2}<br />
${devis.C_TELP} - ${devis.C_FAX} ${entete.C_TELP} - ${entete.C_FAX}
</td> </td>
</tr> </tr>
</table> </table>
@@ -38,10 +38,10 @@
<tr> <tr>
<td><h4>CLIENT</h4></td> <td><h4>CLIENT</h4></td>
<td> <td>
<h4>${devis.QUALITE} ${devis.NOM}</h4> <h4>${entete.QUALITE} ${entete.NOM}</h4>
${devis.ADRESSE}<br /> ${entete.ADRESSE}<br />
<span tal:condition="devis.ADRESSE2">${devis.ADRESSE2}<br /></span> <span tal:condition="entete.ADRESSE2">${entete.ADRESSE2}<br /></span>
${devis.CP} ${devis.VILLE}<br /> ${entete.CP} ${entete.VILLE}<br />
</td> </td>
</tr> </tr>
<tr> <tr>
@@ -51,16 +51,16 @@
Tél. mobile - fax Tél. mobile - fax
</td> </td>
<td> <td>
${devis.NOMRESP}<br /> ${entete.NOMRESP}<br />
${devis.TEL1} - ${devis.TEL2}<br /> ${entete.TEL1} - ${entete.TEL2}<br />
${devis.TELP} - ${devis.FAX} ${entete.TELP} - ${entete.FAX}
</td> </td>
</tr> </tr>
</table> </table>
</div> </div>
<h4>Statut : ${devis.STATUS}</h4> <h4>Statut : ${entete.STATUS}</h4>
</div> <!-- row --> </div> <!-- row -->
<!-- ENTETE DEVIS --> <!-- ENTETE entete -->
<table class="table table-bordered table-condensed"> <table class="table table-bordered table-condensed">
<tr class="well"> <tr class="well">
<th class="text-right">Total HT</th> <th class="text-right">Total HT</th>
@@ -69,10 +69,10 @@
<th class="text-right">TVA</th> <th class="text-right">TVA</th>
</tr> </tr>
<tr> <tr>
<td class="text-right">${layout.to_euro(devis.TOTALHT)}</td> <td class="text-right">${layout.to_euro(entete.TOTALHT)}</td>
<td class="text-right">${layout.to_euro(devis.TOTALTVA)}</td> <td class="text-right">${layout.to_euro(entete.TOTALTVA)}</td>
<td class="text-right">${layout.to_euro(devis.TOTALTTC)}</td> <td class="text-right">${layout.to_euro(entete.TOTALTTC)}</td>
<td class="text-right">${devis.TAUXTVA} %</td> <td class="text-right">${entete.TAUXTVA} %</td>
</tr> </tr>
</table> </table>

View File

@@ -75,16 +75,18 @@ def devis_view(request):
type_doc = nodevis[3:5] type_doc = nodevis[3:5]
if type_doc == 'DE': if type_doc == 'DE':
page_title = "Devis no : %s" % (nodevis) page_title = "Devis no : %s" % (nodevis)
entete = get_devis_by_no(request, nodevis)
elif type_doc == 'FA': elif type_doc == 'FA':
page_title = "Facture no : %s" % (nodevis) page_title = "Facture no : %s" % (nodevis)
entete = get_facture_by_no(request, nodevis)
else: else:
page_title = "Proforma no : %s" % (nodevis) page_title = "Proforma no : %s" % (nodevis)
entete = get_proforma_by_no(request, nodevis)
devis = get_devis_by_no(request, nodevis) if entete is None:
if devis is None:
request.session.flash(u"Le document no %s est introuvable" % (nodevis), 'danger') request.session.flash(u"Le document no %s est introuvable" % (nodevis), 'danger')
return HTTPFound(location=request.route_url("dossier_lookup")) return HTTPFound(location=request.route_url("dossier_lookup"))
# lire tous les lignes du devis # lire tous les lignes du doc
details = get_devis_lig_by_no(request, nodevis) details = get_devis_lig_by_no(request, nodevis)
# select background color according to society # select background color according to society
bg_color = "bg-%s" % societe bg_color = "bg-%s" % societe
@@ -92,7 +94,7 @@ def devis_view(request):
return { return {
'page_title': page_title, 'page_title': page_title,
'nodevis': nodevis, 'nodevis': nodevis,
'devis': devis, 'entete': entete,
'details': details, 'details': details,
'bg_color': bg_color, 'bg_color': bg_color,
} }