use develop line-item service

This commit is contained in:
Vilfred Sikker committed 2021-08-27 11:19:04 +02:00
1 parent af59095d85
commit ab5704208b
1 file changed
+10 -15
+10 -15
View File
@@ -90,16 +90,11 @@ class LineItemService extends BaseService {
}
async generate(variantId, regionId, quantity, config = {}) {
return this.atomicPhase_(async (manager) => {
const variant = await this.productVariantService_
.withTransaction(manager)
.retrieve(variantId, {
const variant = await this.productVariantService_.retrieve(variantId, {
relations: ["product"],
})
const region = await this.regionService_
.withTransaction(manager)
.retrieve(regionId)
const region = await this.regionService_.retrieve(regionId)
let price
let shouldMerge = true
@@ -114,9 +109,10 @@ class LineItemService extends BaseService {
price = config.unit_price
}
} else {
price = await this.productVariantService_
.withTransaction(manager)
.getRegionPrice(variant.id, region.id)
price = await this.productVariantService_.getRegionPrice(
variant.id,
region.id
)
}
const toCreate = {
@@ -126,14 +122,13 @@ class LineItemService extends BaseService {
thumbnail: variant.product.thumbnail,
variant_id: variant.id,
quantity: quantity || 1,
allow_discounts: variant.product.discountable,
allow_discounts: !variant.product.is_giftcard,
is_giftcard: variant.product.is_giftcard,
metadata: config?.metadata || {},
should_merge: shouldMerge,
}
return toCreate
})
}
/**
@@ -142,7 +137,7 @@ class LineItemService extends BaseService {
* @return {LineItem} the created line item
*/
async create(lineItem) {
return this.atomicPhase_(async (manager) => {
return this.atomicPhase_(async manager => {
const lineItemRepository = manager.getCustomRepository(
this.lineItemRepository_
)
@@ -160,7 +155,7 @@ class LineItemService extends BaseService {
* @return {LineItem} the update line item
*/
async update(id, update) {
return this.atomicPhase_(async (manager) => {
return this.atomicPhase_(async manager => {
const lineItemRepository = manager.getCustomRepository(
this.lineItemRepository_
)
@@ -188,7 +183,7 @@ class LineItemService extends BaseService {
* @return {Promise} the result of the delete operation
*/
async delete(id) {
return this.atomicPhase_(async (manager) => {
return this.atomicPhase_(async manager => {
const lineItemRepository = manager.getCustomRepository(
this.lineItemRepository_
)