package com.oying.modules.pc.product.service.impl; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.oying.modules.pc.product.domain.Product; import com.oying.modules.pc.product.domain.dto.ProductMerchantCreateRequest; import com.oying.modules.pc.product.domain.dto.ProductMerchantUpdateRequest; import com.oying.modules.pc.product.service.ProductMerchantService; import com.oying.modules.pc.product.service.ProductService; import lombok.RequiredArgsConstructor; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; @Service @RequiredArgsConstructor public class ProductMerchantCreateServiceImpl implements ProductMerchantService { private final ProductService productService; @Override public void create(Long storeId, ProductMerchantCreateRequest request) { Product product = new Product(); BeanUtils.copyProperties(request, product); product.setStoreId(storeId); productService.create(product); } @Override public void update(Long productId, ProductMerchantUpdateRequest request) { Product product = new Product(); BeanUtils.copyProperties(request, product); product.setProductId(productId); productService.update(product); } @Transactional @Override public void batchDelete(List ids) { productService.deleteAll(ids); } @Override public void putOnShelf(Long productId) { LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper() .eq(Product::getProductId, productId) .set(Product::getStatus, 1001); productService.update(wrapper); } @Override public void takeOffShelf(Long productId) { LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper() .eq(Product::getProductId, productId) .set(Product::getStatus, 1002); productService.update(wrapper); } }