VIP Person Batch query
This commit is contained in:
@@ -1,10 +1,10 @@
|
||||
from typing import Any, List
|
||||
from typing import Any, List, Dict
|
||||
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from personal_info.db.models import Person, Address, Document, Contact
|
||||
from personal_info.db.schemas import PersonCreate, PersonBase
|
||||
|
||||
from personal_info.db import models
|
||||
from personal_info.services.base import BaseService
|
||||
|
||||
class PersonService(BaseService[Person, PersonCreate, Any]):
|
||||
@@ -19,8 +19,6 @@ class PersonService(BaseService[Person, PersonCreate, Any]):
|
||||
return objs
|
||||
|
||||
def create(self, obj: PersonCreate) -> Person:
|
||||
print('= raw' * 3 )
|
||||
print(obj)
|
||||
person_obj = PersonBase(**obj.dict())
|
||||
person = super(PersonService, self).create(person_obj)
|
||||
|
||||
@@ -44,3 +42,11 @@ class PersonService(BaseService[Person, PersonCreate, Any]):
|
||||
|
||||
return person
|
||||
|
||||
def batch_get(self, request: Dict) -> List[models.Person]:
|
||||
|
||||
if request["ids"] is None:
|
||||
HTTPException(status_code=404, detail='ids required')
|
||||
|
||||
objs: List[models.Person] = self.db_session.query(models.Person).filter(models.Person.id.in_(request["ids"])).all()
|
||||
|
||||
return objs
|
||||
Reference in New Issue
Block a user