feat: line item adjustments (#1319)

* add: crud services + model + totals

* fix: enforce unique constraint on line item adjustment model and update service (#1241)

* add: unique constraint on model + fix service

* fix: unique constraint

* fix: add cascade on delete + fix discount relation

* fix: remove optional unique prop

* add: tests for ensuring line item adjustment db constraints (#1279)

* add: tests for ensuring db constraints

* fix: use given when then

* feat: adjust cart to include line item adjustments (#1242)

* fix: cart service + cart tests

* fix: remaining tests

* fix: swap tests

* fix: add relationship + fix oas

* refactor: applyDiscount

* fix: refactor applyDiscount and fix + add unit tests

* fix: plugins tests

* feat: line item adjustments draft orders (#1243)

* fix: draft order tests

* fix: constraint

* fix: wrong variable name

* fix: unique constraint

* progress: add tests

* fix: add cascade on delete + fix discount relation

* fix: remove optional unique prop

* fix: cart removeLineItem + tests

* fix: cart unit tests

* fix: update snapshot

* remove: verbose option

* rename arg

Co-authored-by: Sebastian Rindom <skrindom@gmail.com>

* add: create adjustments for swap additional_items

* add: create adjustments for return lines

* fix: unit test for creating adjustment for additional_items

* fix: create adjustments only for non return items + no deletion when item is a return item

* add: integration tests

* refactor: use refreshAdjustments method

* refactor test

Co-authored-by: Sebastian Rindom <skrindom@gmail.com>

Co-authored-by: Sebastian Rindom <skrindom@gmail.com>

Co-authored-by: Sebastian Rindom <skrindom@gmail.com>
This commit is contained in:
Zakaria El Asri
2022-04-12 15:49:31 +02:00
committed by GitHub
co-authored by Sebastian Rindom
parent 607a382b4e
commit 1cfeb5dbd8
45 changed files with 3290 additions and 581 deletions
@@ -46,11 +46,17 @@ export default (app) => {
return app
}
export const defaultAdminDraftOrdersRelations = ["order", "cart"]
export const defaultAdminDraftOrdersRelations = [
"order",
"cart",
"cart.items",
"cart.items.adjustments",
]
export const defaultAdminDraftOrdersCartRelations = [
"region",
"items",
"items.adjustments",
"payment",
"shipping_address",
"billing_address",
@@ -5,12 +5,15 @@ import { SwapServiceMock } from "../../../../../services/__mocks__/swap"
const defaultRelations = [
"order",
"additional_items",
"additional_items.adjustments",
"return_order",
"fulfillments",
"payment",
"shipping_address",
"shipping_methods",
"cart",
"cart.items",
"cart.items.adjustments",
]
const defaultFields = [
@@ -24,12 +24,15 @@ export default (app) => {
export const defaultAdminSwapRelations = [
"order",
"additional_items",
"additional_items.adjustments",
"return_order",
"fulfillments",
"payment",
"shipping_address",
"shipping_methods",
"cart",
"cart.items",
"cart.items.adjustments",
]
export const defaultAdminSwapFields = [
@@ -115,6 +115,7 @@ export const defaultStoreCartRelations = [
"gift_cards",
"region",
"items",
"items.adjustments",
"payment",
"shipping_address",
"billing_address",