joining table allocation to actifs

This commit is contained in:
2023-01-29 18:11:40 +01:00
parent 4a55f94551
commit f8023701a4
14 changed files with 111 additions and 272 deletions

View File

@@ -1,6 +1,6 @@
import sqlalchemy as sa
from sqlalchemy import func
from ..models.portfolio import Actifs, Allocation, Classes, Histo
from ..models.portfolio import Actifs, Allocation, Histo
class PFService(object):
@@ -8,7 +8,7 @@ class PFService(object):
@classmethod
def get_actifs(cls, request, no_id):
if no_id == '0':
items = request.dbsession.query(Actifs).order_by(Actifs.classe, Actifs.libelle).all()
items = request.dbsession.query(Actifs, Allocation).join(Allocation).order_by(Allocation.ordre, Actifs.libelle).all()
else:
# lire une allocation par le no_id
items = request.dbsession.query(Actifs).filter(Actifs.no_id == no_id).first()
@@ -17,22 +17,13 @@ class PFService(object):
@classmethod
def get_allocation(cls, request, no_cat):
if no_cat == '0':
query = request.dbsession.query(Allocation).join(Classes).filter(Classes.classe == Allocation.classe_id)
query = query.order_by(sa.asc(Allocation.classe_id)).all()
query = request.dbsession.query(Allocation)
query = query.order_by(sa.asc(Allocation.ordre)).all()
else:
# lire une allocation par le no_id
query = request.dbsession.query(Allocation).filter(Allocation.no_cat == no_cat).first()
return query
@classmethod
def get_classes(cls, request, classe):
if classe == '0':
items = request.dbsession.query(Classes).order_by(sa.asc(Classes.ordre)).all()
else:
# lire une allocation par le no_id
items = request.dbsession.query(Classes).filter(Classes.classe == classe).first()
return items
@classmethod
def get_histo(cls, request, no_id):
if no_id == '0':