|
@@ -0,0 +1,78 @@
|
|
|
+package com.qs.mp.quartz.task;
|
|
|
+
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
|
|
+import com.qs.mp.admin.domain.Goods;
|
|
|
+import com.qs.mp.admin.service.IGoodsService;
|
|
|
+import com.qs.mp.admin.service.impl.GoodsServiceImpl;
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.stereotype.Component;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
+
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 图片相关处理任务
|
|
|
+ *
|
|
|
+ * @author Cup
|
|
|
+ * @date 2022/4/18
|
|
|
+ */
|
|
|
+@Component("pictureTask")
|
|
|
+public class PictureTask {
|
|
|
+
|
|
|
+ protected final Logger logger = LoggerFactory.getLogger(this.getClass().getSimpleName());
|
|
|
+
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IGoodsService goodsService;
|
|
|
+
|
|
|
+
|
|
|
+ public void detailPictureReplace(Long goodsId) {
|
|
|
+ List<Goods> goodsList = new ArrayList<>();
|
|
|
+ Goods goods = goodsService.getById(goodsId);
|
|
|
+ if (goods != null) {
|
|
|
+ goodsList.add(goods);
|
|
|
+ pictureReplace(goodsList);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ public void detailPictureReplace() {
|
|
|
+ List<Goods> goodsList = goodsService.list();
|
|
|
+ if (CollectionUtils.isNotEmpty(goodsList)) {
|
|
|
+ pictureReplace(goodsList);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 商品详情图片处理方法
|
|
|
+ */
|
|
|
+ private void pictureReplace(List<Goods> goodsList) {
|
|
|
+ if (CollectionUtils.isNotEmpty(goodsList)) {
|
|
|
+ List<Goods> params = new ArrayList<>();
|
|
|
+ for (Goods goods : goodsList) {
|
|
|
+ String desc = goods.getDescription();
|
|
|
+ if (StringUtils.isBlank(desc)) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ // 将字符串中所有的.jpg和.png 替换为.jpg_s和.png_s
|
|
|
+ String result = desc.replaceAll(".jpg", ".jpg_s").replaceAll(".jpeg", ".jpeg_s").replaceAll(".png", ".png_s");
|
|
|
+ Goods param = new Goods();
|
|
|
+ param.setGoodsId(goods.getGoodsId());
|
|
|
+ param.setDescription(result);
|
|
|
+ params.add(param);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 批量修改商品详情图片
|
|
|
+ if (CollectionUtils.isNotEmpty(params)) {
|
|
|
+ goodsService.updateBatchById(params);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+}
|