This commit is contained in:
2024-03-05 04:58:26 +03:00
parent bf24c791fc
commit f5b7420fac
6 changed files with 81 additions and 23 deletions

View File

@@ -1,3 +1,6 @@
import datetime
from typing import Union
from sqlalchemy import select
from models import Client
@@ -6,6 +9,17 @@ from schemas.client import *
class ClientService(BaseService):
async def get_by_name(self, name: str) -> Union[Client, None]:
client = await self.session.scalar(select(Client).where(Client.name == name))
return client
async def create_client_raw(self, name: str, address: str) -> Client:
client = Client(name=name, address=address, created_at=datetime.datetime.now())
self.session.add(client)
await self.session.flush()
return client
async def search_clients(self, request: ClientSearchRequest) -> ClientSearchResponse:
query = await self.session.scalars(select(Client)
.where(Client.name.ilike(f'%{request.name}%')))