fix: applied timezone to default values, removed value nesting
This commit is contained in:
@ -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="Успешно сохранено")
|
||||
|
||||
Reference in New Issue
Block a user