feat: locking group with bill request
This commit is contained in:
@@ -7,7 +7,7 @@ from starlette import status
|
|||||||
|
|
||||||
import models.deal
|
import models.deal
|
||||||
import models.secondary
|
import models.secondary
|
||||||
from models import User, Service, Client, DealProductService, deal_relations
|
from models import User, Service, Client, DealProductService, deal_relations, GroupBillRequest
|
||||||
from models.deal import *
|
from models.deal import *
|
||||||
from models.deal_group import DealGroup
|
from models.deal_group import DealGroup
|
||||||
from schemas.client import ClientDetailsSchema
|
from schemas.client import ClientDetailsSchema
|
||||||
@@ -1150,6 +1150,10 @@ class DealService(BaseService):
|
|||||||
|
|
||||||
async def add_to_group(self, user: User, request: DealAddToGroupRequest) -> DealAddToGroupResponse:
|
async def add_to_group(self, user: User, request: DealAddToGroupRequest) -> DealAddToGroupResponse:
|
||||||
try:
|
try:
|
||||||
|
group_bill_request = await self.session.get(GroupBillRequest, request.group_id)
|
||||||
|
if group_bill_request:
|
||||||
|
raise Exception("Нельзя добавить сделку, так как на группу выставлен счёт.")
|
||||||
|
|
||||||
# changing status if needed
|
# changing status if needed
|
||||||
deal_id = await self.session.scalar(
|
deal_id = await self.session.scalar(
|
||||||
select(deal_relations.c.deal_id)
|
select(deal_relations.c.deal_id)
|
||||||
|
|||||||
Reference in New Issue
Block a user