feat: adding services kit to deal
This commit is contained in:
@ -1,8 +1,12 @@
|
||||
from sqlalchemy.ext.asyncio import AsyncSession
|
||||
|
||||
from modules.fulfillment_base.models import DealService
|
||||
from modules.fulfillment_base.repositories import DealServiceRepository
|
||||
from modules.fulfillment_base.repositories import (
|
||||
DealServiceRepository,
|
||||
ServicesKitRepository,
|
||||
)
|
||||
from modules.fulfillment_base.schemas.deal_service import *
|
||||
from repositories import DealRepository
|
||||
from services.mixins import ServiceGetAllMixin
|
||||
|
||||
|
||||
@ -35,3 +39,15 @@ class DealServiceService(ServiceGetAllMixin[DealService, DealServiceSchema]):
|
||||
entity = await self.repository.get_by_id(deal_id, service_id)
|
||||
await self.repository.delete(entity)
|
||||
return DeleteDealServiceResponse(message="Услуга удалена из сделки")
|
||||
|
||||
async def add_services_kit(self, request: DealAddKitRequest) -> DealAddKitResponse:
|
||||
services_kit_repo = ServicesKitRepository(self.repository.session)
|
||||
services_kit = await services_kit_repo.get_by_id(request.kit_id)
|
||||
|
||||
deal_repo = DealRepository(self.repository.session)
|
||||
deal = await deal_repo.get_by_id(request.deal_id)
|
||||
|
||||
await self.repository.delete_deal_services(request.deal_id)
|
||||
await self.repository.add_services_kit(deal, services_kit)
|
||||
|
||||
return DealAddKitResponse(message="Комплект добавлен в сделку")
|
||||
|
||||
Reference in New Issue
Block a user