Skip to content
GitLab
Explorer
Connexion
Navigation principale
Rechercher ou aller à…
Projet
O
oacc_import_curves
Gestion
Activité
Membres
Labels
Programmation
Tickets
Tableaux des tickets
Jalons
Code
Requêtes de fusion
Dépôt
Branches
Validations
Étiquettes
Graphe du dépôt
Comparer les révisions
Analyse
Données d'analyse des chaînes de valeur
Analyse des contributeurs
Données d'analyse du dépôt
Aide
Aide
Support
Documentation de GitLab
Comparer les forfaits GitLab
Forum de la communauté GitLab
Contribuer à GitLab
Donner votre avis
Raccourcis clavier
?
Extraits de code
Groupes
Projets
Afficher davantage de fils d'Ariane
Le Filament
Opération Auto-Consommation Collective
oacc_import_curves
Validations
11488b6f
Valider
11488b6f
rédigé
Il y a 4 mois
par
Rémi - Le Filament
Parcourir les fichiers
Options
Téléchargements
Correctifs
Plain Diff
[ADD] debug logger for file import
parent
1ed8d9d1
Aucune branche associée trouvée
Aucune étiquette associée trouvée
1 requête de fusion
!2
Courbes agrégées
Modifications
1
Afficher les modifications d'espaces
En ligne
Côte à côte
Affichage de
1 fichier modifié
wizard/acc_operation_import_wizard.py
+37
-16
37 ajouts, 16 suppressions
wizard/acc_operation_import_wizard.py
avec
37 ajouts
et
16 suppressions
wizard/acc_operation_import_wizard.py
+
37
−
16
Voir le fichier @
11488b6f
...
@@ -3,6 +3,7 @@
...
@@ -3,6 +3,7 @@
import
base64
import
base64
import
csv
import
csv
import
io
import
io
import
logging
from
datetime
import
datetime
,
timedelta
from
datetime
import
datetime
,
timedelta
from
dateutil.relativedelta
import
relativedelta
from
dateutil.relativedelta
import
relativedelta
...
@@ -13,6 +14,8 @@ from odoo.osv import expression
...
@@ -13,6 +14,8 @@ from odoo.osv import expression
from
odoo.addons.api_connector.tools.date_utils
import
local_to_utc
from
odoo.addons.api_connector.tools.date_utils
import
local_to_utc
from
odoo.addons.oacc.models.acc_enedis_cdc_day
import
COMP_DATA_TYPE_MAP
from
odoo.addons.oacc.models.acc_enedis_cdc_day
import
COMP_DATA_TYPE_MAP
_logger
=
logging
.
getLogger
(
__name__
)
class
AccOperationImportWizard
(
models
.
TransientModel
):
class
AccOperationImportWizard
(
models
.
TransientModel
):
_name
=
"
acc.operation.import.wizard
"
_name
=
"
acc.operation.import.wizard
"
...
@@ -83,16 +86,26 @@ class AccOperationImportWizard(models.TransientModel):
...
@@ -83,16 +86,26 @@ class AccOperationImportWizard(models.TransientModel):
(
"
acc_operation_id
"
,
"
=
"
,
self
.
operation_id
.
id
),
(
"
acc_operation_id
"
,
"
=
"
,
self
.
operation_id
.
id
),
(
"
acc_counter_id
"
,
"
=
"
,
counter_id
),
(
"
acc_counter_id
"
,
"
=
"
,
counter_id
),
]
]
domain_cdc
=
expression
.
AND
([
domain_all
,
[
domain_cdc
=
expression
.
AND
(
[
domain_all
,
[
(
"
date_slot
"
,
"
>=
"
,
start_datetime
),
(
"
date_slot
"
,
"
>=
"
,
start_datetime
),
(
"
date_slot
"
,
"
<
"
,
end_datetime
),
(
"
date_slot
"
,
"
<
"
,
end_datetime
),
(
"
comp_data_type
"
,
"
=
"
,
computed_data_type
),
(
"
comp_data_type
"
,
"
=
"
,
computed_data_type
),
]])
],
domain_cdc_day
=
expression
.
AND
([
domain_all
,
[
]
)
domain_cdc_day
=
expression
.
AND
(
[
domain_all
,
[
(
"
date_slot
"
,
"
>=
"
,
date_begin_obj
.
date
()),
(
"
date_slot
"
,
"
>=
"
,
date_begin_obj
.
date
()),
(
"
date_slot
"
,
"
<
"
,
date_end_obj
.
date
()),
(
"
date_slot
"
,
"
<
"
,
date_end_obj
.
date
()),
(
"
comp_data_type
"
,
"
=
"
,
COMP_DATA_TYPE_MAP
[
computed_data_type
]),
(
"
comp_data_type
"
,
"
=
"
,
COMP_DATA_TYPE_MAP
[
computed_data_type
]),
]])
],
]
)
rec_ids
=
self
.
env
[
self
.
model
].
search
(
domain_cdc
)
rec_ids
=
self
.
env
[
self
.
model
].
search
(
domain_cdc
)
if
rec_ids
:
if
rec_ids
:
message
+=
"
Suppression des enregistrements existants de courbes ... <br/>
"
message
+=
"
Suppression des enregistrements existants de courbes ... <br/>
"
...
@@ -102,11 +115,15 @@ class AccOperationImportWizard(models.TransientModel):
...
@@ -102,11 +115,15 @@ class AccOperationImportWizard(models.TransientModel):
if
self
.
model
==
"
acc.enedis.cdc
"
:
if
self
.
model
==
"
acc.enedis.cdc
"
:
day_rec_ids
=
self
.
env
[
"
acc.enedis.cdc.day
"
].
search
(
domain_cdc_day
)
day_rec_ids
=
self
.
env
[
"
acc.enedis.cdc.day
"
].
search
(
domain_cdc_day
)
if
day_rec_ids
:
if
day_rec_ids
:
message
+=
"
Suppression des enregistrements existants de courbes
"
\
message
+=
(
"
Suppression des enregistrements existants de courbes
"
"
agrégées au jour ... <br/>
"
"
agrégées au jour ... <br/>
"
)
day_rec_ids
.
unlink
()
day_rec_ids
.
unlink
()
message
+=
"
Suppression des enregistrements existants de courbes
"
\
message
+=
(
"
Suppression des enregistrements existants de courbes
"
"
agrégées au jour OK <br/>
"
"
agrégées au jour OK <br/>
"
)
return
message
return
message
...
@@ -118,9 +135,9 @@ class AccOperationImportWizard(models.TransientModel):
...
@@ -118,9 +135,9 @@ class AccOperationImportWizard(models.TransientModel):
date_end_str
=
data_filename
[
2
]
date_end_str
=
data_filename
[
2
]
date_format
=
"
%d%m%Y
"
date_format
=
"
%d%m%Y
"
date_begin_obj
=
datetime
.
strptime
(
date_begin_str
,
date_format
).
date
()
date_begin_obj
=
datetime
.
strptime
(
date_begin_str
,
date_format
).
date
()
date_end_obj
=
datetime
.
strptime
(
date_end_str
,
date_format
)
+
relativedelta
(
date_end_obj
=
(
da
ys
=
1
da
tetime
.
strptime
(
date_end_str
,
date_format
)
+
relativedelta
(
days
=
1
).
date
()
)
.
date
()
)
# Update partner_id for retrieved cdc
# Update partner_id for retrieved cdc
domain
=
[
domain
=
[
(
"
acc_operation_id
"
,
"
=
"
,
self
.
operation_id
.
id
),
(
"
acc_operation_id
"
,
"
=
"
,
self
.
operation_id
.
id
),
...
@@ -150,6 +167,7 @@ class AccOperationImportWizard(models.TransientModel):
...
@@ -150,6 +167,7 @@ class AccOperationImportWizard(models.TransientModel):
)
)
for
file
in
self
.
attachment_ids
:
for
file
in
self
.
attachment_ids
:
_logger
.
debug
(
f
"
Processing file
{
file
.
name
}
- Start
"
)
message
+=
(
message
+=
(
"
<p><strong>Fichier
"
"
<p><strong>Fichier
"
+
file
.
name
+
file
.
name
...
@@ -215,11 +233,14 @@ class AccOperationImportWizard(models.TransientModel):
...
@@ -215,11 +233,14 @@ class AccOperationImportWizard(models.TransientModel):
}
}
)
)
_logger
.
debug
(
f
"
Processing file
{
file
.
name
}
- Curves creation
"
)
message
+=
"
Création des courbes<br/>
"
message
+=
"
Création des courbes<br/>
"
self
.
create_curve
(
curves_to_create
)
self
.
create_curve
(
curves_to_create
)
_logger
.
debug
(
f
"
Processing file
{
file
.
name
}
- Update partner_id on curves
"
)
message
+=
"
Mise à jour du contact associé aux courbes<br/>
"
message
+=
"
Mise à jour du contact associé aux courbes<br/>
"
self
.
_update_partner_id
(
data_filename
,
counter_id
)
self
.
_update_partner_id
(
data_filename
,
counter_id
)
_logger
.
debug
(
f
"
Processing file
{
file
.
name
}
- Generating daily curves
"
)
message
+=
"
Génération des données agrégées au jour<br/>
"
message
+=
"
Génération des données agrégées au jour<br/>
"
self
.
env
[
"
acc.enedis.cdc.day
"
].
generate
(
self
.
env
[
"
acc.enedis.cdc.day
"
].
generate
(
acc_operation_id
=
self
.
operation_id
.
id
,
acc_operation_id
=
self
.
operation_id
.
id
,
...
@@ -230,11 +251,11 @@ class AccOperationImportWizard(models.TransientModel):
...
@@ -230,11 +251,11 @@ class AccOperationImportWizard(models.TransientModel):
message
+=
"
Fin de l
'
import des données OK<br/>
"
message
+=
"
Fin de l
'
import des données OK<br/>
"
# Suppression du fichier après création des enregistrements
# Suppression du fichier après création des enregistrements
_logger
.
debug
(
f
"
Processing file
{
file
.
name
}
- Remove file
"
)
message
+=
"
Suppression du fichier
"
+
file
.
name
+
"
...<br/>
"
message
+=
"
Suppression du fichier
"
+
file
.
name
+
"
...<br/>
"
file
.
unlink
()
file
.
unlink
()
message
+=
"
Suppression OK </p>
"
message
+=
"
Suppression OK </p>
"
message
+=
"
<h1>Fin import manuel:
"
+
str
(
fields
.
Datetime
.
now
())
+
"
</h1>
"
message
+=
"
<h1>Fin import manuel:
"
+
str
(
fields
.
Datetime
.
now
())
+
"
</h1>
"
# Logs information logs
# Logs information logs
log_id
=
self
.
env
[
"
acc.logs
"
].
create
(
log_id
=
self
.
env
[
"
acc.logs
"
].
create
(
...
...
Ce diff est replié.
Cliquez pour l'agrandir.
Aperçu
0%
Chargement en cours
Veuillez réessayer
ou
joindre un nouveau fichier
.
Annuler
You are about to add
0
people
to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Enregistrer le commentaire
Annuler
Veuillez vous
inscrire
ou vous
se connecter
pour commenter