Size: a a a

2021 May 12

SB

Sergei Baikin in PHP
агрегат с cartId + ProductId прекрасно зазитит
Нафига в корзину тазить и обекты линковать?
источник

AV

Alexey Vetrov in PHP
про сумму я, наверное, зря написал - сглупил
источник

SB

Sergei Baikin in PHP
ну это задача оплаты проверить а не корзины
ПОльзователб в UI показывается JS валдация суммы и все
источник

AV

Alexey Vetrov in PHP
так а как нас это защищает от дубликатов продуктов в корзине?
источник

VC

Vladimir Chernyshev in PHP
пользователь может и отключить валидацию )
источник

SB

Sergei Baikin in PHP
тем что мы не можем создать более одного агрегата с комбинацией cartId+ProductId
источник

AV

Alexey Vetrov in PHP
а кем это контроллируется?
источник

SB

Sergei Baikin in PHP
ага пожтому ия и написал иванриант в оплате должен быть чтобы не дать ему заплатить
источник

SB

Sergei Baikin in PHP
как настроите
обычно уникальными ключами в базе или примари ключами
источник

AV

Alexey Vetrov in PHP
а почему база должна регулировать бизнес правила?
источник

SB

Sergei Baikin in PHP
потому что юолше некому проверить уникальность
Но если не база то надо писать компенсационные транзакции
источник

AV

Alexey Vetrov in PHP
хорошо. вот пример с додо пиццей, что был выше
пицца + модификаторы
источник

AV

Alexey Vetrov in PHP
кто в данном случае сможет это сделать, кроме корзины?
источник

SB

Sergei Baikin in PHP
что это?
правила то какие?
источник

VC

Vladimir Chernyshev in PHP
в общем корзина сложная штука, часто изменяющаяся, со сложным поведением сильно зависящим от того, что в ней и сколько. Если моделировать по DDD или типа того, то без CartItem сложно будет, и, скорее всего, это VO должен быть
источник

AV

Alexey Vetrov in PHP
товар не может дублироваться в корзине. в данном случае товар это (пицца + модификаторы). Модификаторов может и не быть вовсе.
Добавляя пиццу №1 + сыр дважды не должно быть 2 позиции, должна быть одна с количеством 2
источник

VC

Vladimir Chernyshev in PHP
например, пицца не может быть одновременно тонкая и с сырным бортиком ))
источник

AV

Alexey Vetrov in PHP
ну это должен регулировать уже сам CartItem, как по мне
источник

AV

Alexey Vetrov in PHP
Тут же вопрос стоит, как я понял от @GDXbsv в целесообразности корзины как таковой
источник

SB

Sergei Baikin in PHP
Там вопрос в кохижене стоит.

Тоесть CartUniqueItemы аггрегат  звучит логично для такого случая
источник