|
@@ -3,6 +3,8 @@ package com.caimei.modules.svip.service;
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
|
|
|
|
|
+import com.caimei.modules.product.dao.ProductDao;
|
|
|
|
+import com.caimei.modules.product.entity.CmSku;
|
|
import com.caimei.modules.product.entity.Product;
|
|
import com.caimei.modules.product.entity.Product;
|
|
import com.caimei.modules.svip.entity.CmSvipProductAdsImage;
|
|
import com.caimei.modules.svip.entity.CmSvipProductAdsImage;
|
|
import com.caimei.utils.AppUtils;
|
|
import com.caimei.utils.AppUtils;
|
|
@@ -20,81 +22,102 @@ import javax.annotation.Resource;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 超级会员优惠商品Service
|
|
* 超级会员优惠商品Service
|
|
|
|
+ *
|
|
* @author Aslee
|
|
* @author Aslee
|
|
* @version 2021-09-23
|
|
* @version 2021-09-23
|
|
*/
|
|
*/
|
|
@Service
|
|
@Service
|
|
@Transactional(readOnly = true)
|
|
@Transactional(readOnly = true)
|
|
public class CmSvipProductService extends CrudService<CmSvipProductDao, CmSvipProduct> {
|
|
public class CmSvipProductService extends CrudService<CmSvipProductDao, CmSvipProduct> {
|
|
- @Resource
|
|
|
|
- private CmSvipProductDao cmSvipProductDao;
|
|
|
|
|
|
+ @Resource
|
|
|
|
+ private CmSvipProductDao cmSvipProductDao;
|
|
|
|
+ @Resource
|
|
|
|
+ private ProductDao productDao;
|
|
|
|
|
|
- public CmSvipProduct get(String id) {
|
|
|
|
- return super.get(id);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- public List<CmSvipProduct> findList(CmSvipProduct cmSvipProduct) {
|
|
|
|
- return super.findList(cmSvipProduct);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- public Page<CmSvipProduct> findPage(Page<CmSvipProduct> page, CmSvipProduct cmSvipProduct) {
|
|
|
|
- Page<CmSvipProduct> page1 = super.findPage(page, cmSvipProduct);
|
|
|
|
- List<CmSvipProduct> list = page1.getList();
|
|
|
|
- String wwwServer = Global.getConfig("wwwServer");
|
|
|
|
- list.forEach(product->{
|
|
|
|
- if (StringUtil.isNotBlank(product.getProductImage())) {
|
|
|
|
- product.setProductImage(AppUtils.getImageURL("product", product.getProductImage(), 0, wwwServer));
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
- return page1;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- @Transactional(readOnly = false)
|
|
|
|
- public void save(CmSvipProduct cmSvipProduct) {
|
|
|
|
- if (cmSvipProduct.getIsNewRecord()) {
|
|
|
|
- Integer priceType = null == cmSvipProduct.getDiscount() ? 2 : 1;
|
|
|
|
- cmSvipProduct.setPriceType(priceType);
|
|
|
|
- cmSvipProduct.setSort(1);
|
|
|
|
- }
|
|
|
|
- super.save(cmSvipProduct);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- @Transactional(readOnly = false)
|
|
|
|
- public void delete(CmSvipProduct cmSvipProduct) {
|
|
|
|
- super.delete(cmSvipProduct);
|
|
|
|
- }
|
|
|
|
|
|
+ public CmSvipProduct get(String id) {
|
|
|
|
+ CmSvipProduct cmSvipProduct = super.get(id);
|
|
|
|
+ CmSku sku = productDao.findSku(cmSvipProduct.getProductId());
|
|
|
|
+ cmSvipProduct.setPrice(BigDecimal.valueOf(sku.getPrice()));
|
|
|
|
+ cmSvipProduct.setCostCheckFlag(sku.getCostCheckFlag().toString());
|
|
|
|
+ if (1 == sku.getCostCheckFlag()) {
|
|
|
|
+ cmSvipProduct.setCostPrice(sku.getCostPrice().toString());
|
|
|
|
+ } else {
|
|
|
|
+ cmSvipProduct.setCostProportional(sku.getCostProportional().toString());
|
|
|
|
+ }
|
|
|
|
+ return cmSvipProduct;
|
|
|
|
+ }
|
|
|
|
|
|
|
|
+ public List<CmSvipProduct> findList(CmSvipProduct cmSvipProduct) {
|
|
|
|
+ List<CmSvipProduct> list = super.findList(cmSvipProduct);
|
|
|
|
+ list.forEach(product -> {
|
|
|
|
+ CmSku sku = productDao.findSku(product.getProductId());
|
|
|
|
+ product.setPrice(BigDecimal.valueOf(sku.getPrice()));
|
|
|
|
+ });
|
|
|
|
+ return list;
|
|
|
|
+ }
|
|
|
|
|
|
- @Transactional(readOnly = false)
|
|
|
|
- public Page<Product> findProductPage(Page<Product> productPage, Product product) {
|
|
|
|
- List<Integer> ids = cmSvipProductDao.findSvipProductIds();
|
|
|
|
- product.setIds(ids);
|
|
|
|
- product.setPage(productPage);
|
|
|
|
- List<Product> productList = cmSvipProductDao.findAllProduct(product);
|
|
|
|
- String wwwServer = Global.getConfig("wwwServer");
|
|
|
|
- productList.forEach(item -> {
|
|
|
|
- if (StringUtil.isNotBlank(item.getMainImage())) {
|
|
|
|
- item.setMainImage(AppUtils.getImageURL("product", item.getMainImage(), 0, wwwServer));
|
|
|
|
- }
|
|
|
|
- if (ids.contains(item.getProductID())) {
|
|
|
|
- item.setExistsFlag("1");
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
- productPage.setList(productList);
|
|
|
|
- return productPage;
|
|
|
|
- }
|
|
|
|
|
|
+ public Page<CmSvipProduct> findPage(Page<CmSvipProduct> page, CmSvipProduct cmSvipProduct) {
|
|
|
|
+ Page<CmSvipProduct> page1 = super.findPage(page, cmSvipProduct);
|
|
|
|
+ List<CmSvipProduct> list = page1.getList();
|
|
|
|
+ String wwwServer = Global.getConfig("wwwServer");
|
|
|
|
+ list.forEach(product -> {
|
|
|
|
+ CmSku sku = productDao.findSku(product.getProductId());
|
|
|
|
+ product.setPrice(BigDecimal.valueOf(sku.getPrice()));
|
|
|
|
+ if (StringUtil.isNotBlank(product.getProductImage())) {
|
|
|
|
+ product.setProductImage(AppUtils.getImageURL("product", product.getProductImage(), 0, wwwServer));
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ return page1;
|
|
|
|
+ }
|
|
|
|
|
|
- @Transactional(readOnly = false)
|
|
|
|
- public void saveSort(String sort, String id) {
|
|
|
|
- cmSvipProductDao.saveSort(sort, id);
|
|
|
|
- }
|
|
|
|
|
|
+ @Transactional(readOnly = false)
|
|
|
|
+ public void save(CmSvipProduct cmSvipProduct) {
|
|
|
|
+ if (cmSvipProduct.getIsNewRecord()) {
|
|
|
|
+ Integer priceType = null == cmSvipProduct.getDiscount() ? 2 : 1;
|
|
|
|
+ cmSvipProduct.setPriceType(priceType);
|
|
|
|
+ cmSvipProduct.setSort(1);
|
|
|
|
+ }
|
|
|
|
+ super.save(cmSvipProduct);
|
|
|
|
+ }
|
|
|
|
|
|
- public CmSvipProductAdsImage getAdsImage() {
|
|
|
|
- return cmSvipProductDao.getAdsImage();
|
|
|
|
- }
|
|
|
|
|
|
+ @Transactional(readOnly = false)
|
|
|
|
+ public void delete(CmSvipProduct cmSvipProduct) {
|
|
|
|
+ super.delete(cmSvipProduct);
|
|
|
|
+ }
|
|
|
|
|
|
- @Transactional(readOnly = false)
|
|
|
|
- public void saveAdsImage(CmSvipProductAdsImage adsImage) {
|
|
|
|
- cmSvipProductDao.saveAdsImage(adsImage);
|
|
|
|
- }
|
|
|
|
|
|
+
|
|
|
|
+ @Transactional(readOnly = false)
|
|
|
|
+ public Page<Product> findProductPage(Page<Product> productPage, Product product) {
|
|
|
|
+ List<Integer> ids = cmSvipProductDao.findSvipProductIds();
|
|
|
|
+ product.setIds(ids);
|
|
|
|
+ product.setPage(productPage);
|
|
|
|
+ List<Product> productList = cmSvipProductDao.findAllProduct(product);
|
|
|
|
+ String wwwServer = Global.getConfig("wwwServer");
|
|
|
|
+ productList.forEach(item -> {
|
|
|
|
+ CmSku sku = productDao.findSku(item.getProductID());
|
|
|
|
+ item.setPrice(sku.getPrice());
|
|
|
|
+ if (StringUtil.isNotBlank(item.getMainImage())) {
|
|
|
|
+ item.setMainImage(AppUtils.getImageURL("product", item.getMainImage(), 0, wwwServer));
|
|
|
|
+ }
|
|
|
|
+ if (ids.contains(item.getProductID())) {
|
|
|
|
+ item.setExistsFlag("1");
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ productPage.setList(productList);
|
|
|
|
+ return productPage;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Transactional(readOnly = false)
|
|
|
|
+ public void saveSort(String sort, String id) {
|
|
|
|
+ cmSvipProductDao.saveSort(sort, id);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public CmSvipProductAdsImage getAdsImage() {
|
|
|
|
+ return cmSvipProductDao.getAdsImage();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Transactional(readOnly = false)
|
|
|
|
+ public void saveAdsImage(CmSvipProductAdsImage adsImage) {
|
|
|
|
+ cmSvipProductDao.saveAdsImage(adsImage);
|
|
|
|
+ }
|
|
}
|
|
}
|