Convert string dates to datetime and display with short format.
This commit is contained in:
parent
3a796ed892
commit
0f4fd66992
|
@ -0,0 +1,76 @@
|
|||
from datetime import datetime
|
||||
|
||||
from django.conf import settings
|
||||
|
||||
|
||||
def parse_date_ddmmyyyy(str_date):
|
||||
fmt = '%d%m%Y'
|
||||
return datetime.strptime(str_date, fmt)
|
||||
|
||||
def parse_date_yymmdd(str_date):
|
||||
fmt = '%y%m%d'
|
||||
return datetime.strptime(str_date, fmt)
|
||||
|
||||
def setter_date_ddmmyyyy(field):
|
||||
try:
|
||||
return parse_date_ddmmyyyy(str(field))
|
||||
except:
|
||||
pass
|
||||
|
||||
def setter_date_yymmdd(field):
|
||||
try:
|
||||
return parse_date_yymmdd(str(field))
|
||||
except:
|
||||
pass
|
||||
|
||||
def setter_periode(start, end):
|
||||
try:
|
||||
return parse_date_ddmmyyyy(str(start)), parse_date_ddmmyyyy(str(end))
|
||||
except:
|
||||
pass
|
||||
|
||||
if settings.CV2PARSER:
|
||||
from cv2parser import cvitale
|
||||
|
||||
def parse(filename):
|
||||
cv = cvitale.parse(filename)
|
||||
for beneficiaire in cv.listeBenef.get_element():
|
||||
"""
|
||||
ident
|
||||
"""
|
||||
beneficiaire.ident.naissance.date = \
|
||||
setter_date_ddmmyyyy(beneficiaire.ident.naissance.date)
|
||||
beneficiaire.ident.naissance.dateEnCarte = \
|
||||
setter_date_yymmdd(beneficiaire.ident.naissance.dateEnCarte)
|
||||
beneficiaire.ident.dateCertification = \
|
||||
setter_date_ddmmyyyy(beneficiaire.ident.dateCertification)
|
||||
"""
|
||||
amo
|
||||
"""
|
||||
if beneficiaire.amo.listePeriodesDroits:
|
||||
for p in beneficiaire.amo.listePeriodesDroits.get_element():
|
||||
p.debut, p.fin = setter_periode(p.debut, p.fin)
|
||||
if beneficiaire.amo.service and \
|
||||
beneficiaire.amo.service.periodeService:
|
||||
p = beneficiaire.amo.service.periodeService
|
||||
p.debut, p.fin = setter_periode(p.debut, p.fin)
|
||||
"""
|
||||
mutuelle
|
||||
"""
|
||||
if beneficiaire.mutuelle and beneficiaire.mutuelle.listePeriodes:
|
||||
for p in beneficiaire.mutuelle.listePeriodes.get_element():
|
||||
p.debut, p.fin = setter_periode(p.debut, p.fin)
|
||||
"""
|
||||
amc
|
||||
"""
|
||||
if beneficiaire.amc and beneficiaire.amc.validiteDonnees:
|
||||
p = beneficiaire.amc.validiteDonnees
|
||||
p.debut, p.fin = setter_periode(p.debut, p.fin)
|
||||
"""
|
||||
cmu
|
||||
"""
|
||||
if beneficiaire.cmu and beneficiaire.cmu.periode:
|
||||
p = beneficiaire.cmu.periode
|
||||
p.debut, p.fin = setter_periode(p.debut, p.fin)
|
||||
|
||||
return cv
|
|
@ -13,14 +13,18 @@
|
|||
<li><label>Nom usuel :</label> {{ beneficiaire.ident.nomUsuel }}</li>
|
||||
{% if beneficiaire.ident.nomPatronymique %}<li><label>Nom usuel :</label> {{ beneficiaire.ident.nomPatronymique }}</li>{% endif %}
|
||||
<li><label>Prénom usuel :</label> {{ beneficiaire.ident.prenomUsuel }}</li>
|
||||
<li><label>Date de naissance :</label> {% if beneficiaire.ident.naissance.dateEnCarte %}{{ beneficiaire.ident.naissance.dateEnCarte }}{% else %}{{ beneficiaire.ident.naissance.date }}{% endif %}</li>
|
||||
<li><label>Date de naissance :</label> {% if beneficiaire.ident.naissance.dateEnCarte %}{{ beneficiaire.ident.naissance.dateEnCarte|date:"SHORT_DATE_FORMAT" }}{% else %}{{ beneficiaire.ident.naissance.date|date:"SHORT_DATE_FORMAT" }}{% endif %}</li>
|
||||
<li><label>Numéro d'Identification au Répertoire (NIR) :</label> {{ beneficiaire.ident.nir }}</li>
|
||||
{% if beneficiaire.ident.adresse %}<li><label>Adresse :</label><ul>
|
||||
{% if beneficiaire.ident.adresse.ligne1 %}<li><label>Ligne 1 :</label> {{ beneficiaire.ident.adresse.ligne1 }}</li>{% endif %}
|
||||
{% if beneficiaire.ident.adresse.ligne2 %}<li><label>Ligne 2 :</label> {{ beneficiaire.ident.adresse.ligne2 }}</li>{% endif %}
|
||||
{% if beneficiaire.ident.adresse.ligne3 %}<li><label>Ligne 3 :</label> {{ beneficiaire.ident.adresse.ligne3 }}</li>{% endif %}
|
||||
{% if beneficiaire.ident.adresse.ligne4 %}<li><label>Ligne 4 :</label> {{ beneficiaire.ident.adresse.ligne4 }}</li>{% endif %}
|
||||
{% if beneficiaire.ident.adresse.ligne5 %}<li><label>Ligne 5 :</label> {{ beneficiaire.ident.adresse.ligne5 }}</li>{% endif %}
|
||||
</ul></li>{% endif %}
|
||||
<li><label>Rang de naissance :</label> {{ beneficiaire.ident.rangDeNaissance }}</li>
|
||||
{% if beneficiaire.ident.nirCertifie %}<li><label>NIR certifié :</label> {{ beneficiaire.ident.nirCertifie }}</li>{% endif %}
|
||||
{% if beneficiaire.ident.dateCertification %}<li><label>Date de certification :</label> {{ beneficiaire.ident.dateCertification }}</li>{% endif %}
|
||||
{% if beneficiaire.ident.dateCertification %}<li><label>Date de certification :</label> {{ beneficiaire.ident.dateCertification|date:"SHORT_DATE_FORMAT" }}</li>{% endif %}
|
||||
{% else %}
|
||||
Problème de lecture du bloc identification.
|
||||
{% endif %}
|
||||
|
@ -37,10 +41,10 @@
|
|||
{% if beneficiaire.amo.infoCompl %}<li><label>Informations supplémentaires :</label> {{ beneficiaire.amo.infoCompl }}</li>{% endif %}
|
||||
<li><label>Centre d'émission de la carte :</label> {{ beneficiaire.amo.centreCarte }}</li>
|
||||
{% if beneficiaire.amo.listePeriodesDroits %}<li><label>Liste des périodes de droits :</label><ul>
|
||||
{% for element in beneficiaire.amo.listePeriodesDroits.get_element %}<li>{{ element.debut }} - {{ element.fin }}</li>{% endfor %}
|
||||
{% for element in beneficiaire.amo.listePeriodesDroits.get_element %}<li>{{ element.debut|date:"SHORT_DATE_FORMAT" }} - {{ element.fin|date:"SHORT_DATE_FORMAT" }}</li>{% endfor %}
|
||||
</ul></li>{% endif %}
|
||||
<li><label>Medecin traitant :</label> {{ beneficiaire.amo.medecinTraitant }}</li>
|
||||
{% if beneficiaire.amo.service %}<li><label>Service :</label> {{ beneficiaire.amo.codeService }} - {{ beneficiaire.amo.periodeService.debut }} - {{ beneficiaire.amo.periodeService.fin }}</li>{% endif %}
|
||||
{% if beneficiaire.amo.service %}<li><label>Service :</label> {{ beneficiaire.amo.codeService }} - {{ beneficiaire.amo.periodeService.debut|date:"SHORT_DATE_FORMAT" }} - {{ beneficiaire.amo.periodeService.fin|date:"SHORT_DATE_FORMAT" }}</li>{% endif %}
|
||||
{% else %}
|
||||
Problème de lecture du bloc amo.
|
||||
{% endif %}
|
||||
|
@ -54,7 +58,7 @@
|
|||
{% if beneficiaire.mutuelle.numIdent %}<li><label>Numéro d'identification :</label> {{ beneficiaire.mutuelle.numIdent }}</li>{% endif %}
|
||||
{% if beneficiaire.mutuelle.services %}<li><label>Services :</label> {{ beneficiaire.mutuelle.services.typeService }} - {{ beneficiaire.mutuelle.services.servicesAssocies }}</li>{% endif %}
|
||||
{% if beneficiaire.mutuelle.listePeriodes %}<li><label>Liste des périodes de droits :</label><ul>
|
||||
{% for element in beneficiaire.mutuelle.listePeriodes.get_element %}<li>{{ element.debut }} - {{ element.fin }}</li>{% endfor %}
|
||||
{% for element in beneficiaire.mutuelle.listePeriodes.get_element %}<li>{{ element.debut|date:"SHORT_DATE_FORMAT" }} - {{ element.fin|date:"SHORT_DATE_FORMAT" }}</li>{% endfor %}
|
||||
</ul></li>{% endif %}
|
||||
{% if beneficiaire.mutuelle.indicTraitement %}<li><label>Indicateur de Traitement :</label> {{ beneficiaire.mutuelle.indicTraitement }}</li>{% endif %}
|
||||
{% if beneficiaire.mutuelle.codeSTS %}<li><label>Code STS (STructure de Soin) :</label> {{ beneficiaire.mutuelle.codeSTS }}</li>{% endif %}
|
||||
|
@ -68,7 +72,7 @@
|
|||
{% if beneficiaire.amc.numComplEDI %}<li><label>Numéro EDI :</label> {{ beneficiaire.amc.numCompleEDI }}</li>{% endif %}
|
||||
{% if beneficiaire.amc.numAdherent %}<li><label>Numéro d'adhérent :</label> {{ beneficiaire.amc.numAdherent }}</li>{% endif %}
|
||||
{% if beneficiaire.amc.indicTraitement %}<li><label>Indicateur de Traitement :</label> {{ beneficiaire.amc.indicTraitement }}</li>{% endif %}
|
||||
{% if beneficiaire.amc.validiteDonnees %}<li><label>Validité des données :</label> {{ beneficiaire.amc.validiteDonnees.debut }} - {{ beneficiaire.amc.validiteDonnees.fin }}</li>{% endif %}
|
||||
{% if beneficiaire.amc.validiteDonnees %}<li><label>Validité des données :</label> {{ beneficiaire.amc.validiteDonnees.debut|date:"SHORT_DATE_FORMAT" }} - {{ beneficiaire.amc.validiteDonnees.fin|date:"SHORT_DATE_FORMAT" }}</li>{% endif %}
|
||||
{% if beneficiaire.amc.codeRoutageFlux %}<li><label>Code de routage des flux :</label> {{ beneficiaire.amc.codeRoutageFlux }}</li>{% endif %}
|
||||
{% if beneficiaire.amc.identHote %}<li><label>Identification de l'hôte :</label> {{ beneficiaire.amc.identHote }}</li>{% endif %}
|
||||
{% if beneficiaire.amc.nomDomaine %}<li><label>Nom de domaine :</label> {{ beneficiaire.amc.nomDomaine }}</li>{% endif %}
|
||||
|
@ -81,7 +85,7 @@
|
|||
{% if beneficiaire.cmu %}
|
||||
<strong>Couverture Maladie Universelle</strong>
|
||||
{% if beneficiaire.cmu.typeCMU %}<li><label>Type CMU :</label> {{ beneficiaire.cmu.typeCMU }}</li>{% endif %}
|
||||
{% if beneficiaire.cmu.periode %}<li><label>Période :</label> {{ beneficiaire.cmu.periode.debut }} - {{ beneficiaire.cmu.periode.fin }}</li>{% endif %}
|
||||
{% if beneficiaire.cmu.periode %}<li><label>Période :</label> {{ beneficiaire.cmu.periode.debut|date:"SHORT_DATE_FORMAT" }} - {{ beneficiaire.cmu.periode.fin|date:"SHORT_DATE_FORMAT" }}</li>{% endif %}
|
||||
<br/>
|
||||
{% endif %}
|
||||
|
||||
|
|
|
@ -37,13 +37,12 @@ from calebasse.facturation.invoice_header import render_to_pdf_file
|
|||
|
||||
from calebasse.decorators import validator_only
|
||||
|
||||
from calebasse import cv2helper
|
||||
|
||||
from ..utils import get_service_setting, is_validator, get_last_file
|
||||
|
||||
logger = logging.getLogger('calebasse.dossiers')
|
||||
|
||||
if settings.CV2PARSER:
|
||||
from cv2parser import cvitale
|
||||
|
||||
class NewPatientRecordView(cbv.FormView, cbv.ServiceViewMixin):
|
||||
form_class = forms.NewPatientRecordForm
|
||||
template_name = 'dossiers/patientrecord_new.html'
|
||||
|
@ -378,7 +377,7 @@ class ReadCV2View(cbv.FormView):
|
|||
prefix=reader_identifier, suffix='.xml')
|
||||
ctx['cv'] = None
|
||||
try:
|
||||
ctx['cv'] = cvitale.parse(filename)
|
||||
ctx['cv'] = cv2helper.parse(filename)
|
||||
except Exception, e:
|
||||
logger.warning("%s" % str(e))
|
||||
try:
|
||||
|
|
Reference in New Issue