feat: disabling accounting for deals and groups
This commit is contained in:
@@ -352,7 +352,14 @@ class DealService(BaseService):
|
||||
|
||||
async def update_general_info(self, request: DealUpdateGeneralInfoRequest) -> DealUpdateGeneralInfoResponse:
|
||||
try:
|
||||
deal: Deal = await self.session.scalar(select(Deal).where(Deal.id == request.deal_id))
|
||||
deal: Deal = await self.session.scalar(
|
||||
select(Deal)
|
||||
.options(
|
||||
selectinload(Deal.group)
|
||||
.selectinload(DealGroup.deals)
|
||||
)
|
||||
.where(Deal.id == request.deal_id)
|
||||
)
|
||||
if not deal:
|
||||
raise HTTPException(status_code=404, detail="Сделка не найдена")
|
||||
deal.name = request.data.name
|
||||
@@ -362,6 +369,12 @@ class DealService(BaseService):
|
||||
deal.delivery_date = request.data.delivery_date
|
||||
deal.receiving_slot_date = request.data.receiving_slot_date
|
||||
|
||||
if deal.group:
|
||||
for deal in deal.group.deals:
|
||||
deal.is_accounted = request.data.is_accounted
|
||||
else:
|
||||
deal.is_accounted = request.data.is_accounted
|
||||
|
||||
# Updating shipping warehouse
|
||||
shipping_warehouse_service = ShippingWarehouseService(self.session)
|
||||
shipping_warehouse = await shipping_warehouse_service.get_by_name(request.data.shipping_warehouse)
|
||||
|
||||
Reference in New Issue
Block a user