fix: applied timezone to default values, removed value nesting

This commit is contained in:
2025-10-28 11:43:42 +04:00
parent c1196497d4
commit 9b109a7270
7 changed files with 80 additions and 62 deletions

View File

@ -1,5 +1,5 @@
from models import Attribute, AttributeValue, AttributeLabel
from repositories import AttributeRepository
from repositories import AttributeRepository, DealRepository
from schemas.attribute import *
from services.mixins import *
@ -43,7 +43,7 @@ class AttributeService(
attribute_id=attr.id,
label=attr_label.label if attr_label else attr.label,
original_label=attr.label,
value=attr_value.value if attr_value else attr.default_value,
value=attr_value.value if attr_value else None,
type=AttributeTypeSchema.model_validate(attr.type),
default_value=attr.default_value,
description=attr.description,
@ -57,7 +57,15 @@ class AttributeService(
async def update_deal_module_attributes(
self, deal_id: int, module_id: int, request: UpdateDealModuleAttributesRequest
) -> UpdateDealModuleAttributesResponse:
await self.repository.update_or_create_deal_attribute_values(
deal_id, module_id, request.attributes
deal_repo = DealRepository(self.repository.session)
deal = await deal_repo.get_by_id(deal_id)
if deal.group_id:
deals = await deal_repo.get_by_group_id(deal.group_id)
else:
deals = [deal]
group_deal_ids = [d.id for d in deals]
await self.repository.update_or_create_deals_attribute_values(
deal_id, group_deal_ids, module_id, request.attributes
)
return UpdateDealModuleAttributesResponse(message="Успешно сохранено")

View File

@ -1,5 +1,4 @@
from lexorank import lexorank
import lexorank
from models import DealGroup, Deal
from repositories import DealGroupRepository, DealRepository, DealTagRepository
from schemas.deal_group import *