From c5e43660a6b89b7d0c8e8ae73471053c5e3fa322 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 08 九月 2023 16:01:53 +0800
Subject: [PATCH] 代码生成

---
 server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java |   52 +++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 49 insertions(+), 3 deletions(-)

diff --git a/server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java
index c0d4df7..bacf9a0 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java
@@ -1,12 +1,16 @@
 package com.doumee.service.business.impl;
 
+import com.doumee.biz.system.SystemDictDataBiz;
 import com.doumee.core.model.PageData;
 import com.doumee.core.model.PageWrap;
 import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.DateUtil;
 import com.doumee.core.utils.PinYinUtil;
 import com.doumee.core.utils.Utils;
+import com.doumee.core.utils.aliyun.ALiYunUtil;
 import com.doumee.dao.business.*;
 import com.doumee.dao.business.model.*;
+import com.doumee.dao.business.model.dto.OssModel;
 import com.doumee.service.business.BaseDataService;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -14,6 +18,7 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
@@ -21,6 +26,7 @@
 import java.lang.reflect.Method;
 import java.util.Date;
 import java.util.List;
+import java.util.UUID;
 
 /**
  * 鍟嗗搧婧愭暟鎹俊鎭〃Service瀹炵幇
@@ -32,6 +38,9 @@
 
     @Autowired
     private BaseDataMapper baseDataMapper;
+    @Autowired
+    @Lazy
+    private SystemDictDataBiz systemDictDataBiz;
     @Autowired
     private BaseGoodsMapper baseGoodsMapper;
     @Autowired
@@ -310,6 +319,8 @@
             p.setIsdeleted(Constants.ZERO);
             //鏌ヨ鍏ㄩ儴绫诲埆灞炴�т俊鎭�
             List<BaseCateParam> paramList = baseCateParamMapper.selectList(new QueryWrapper<>(p));
+
+            OssModel ossModel = initOssModel();
             Date date = new Date();
             for(BaseData data : allLis){
                 BaseGoods goods = new BaseGoods();
@@ -330,7 +341,7 @@
                     goods.setBrandId(bModel.getId());
                 }
                 //澶勭悊鍒楄〃鏁版嵁
-                BaseCategory cModel = getCateModelFromList(data.getBrand(),data.getCategoryImg(), cateList);
+                BaseCategory cModel = getCateModelFromList(data.getBrand(),ossModel,data.getCategoryImg(), cateList);
                 if(bModel!= null){
                     goods.setBrandId(bModel.getId());
                 }
@@ -339,6 +350,7 @@
                 baseGoodsMapper.insert(goods);
                 //澶勭悊鍒嗙被灞炴��
                 dealCateParamAll(cModel.getId(),goods.getId(),data,paramList);
+
                 data.setEditDate(new Date());
                 data.setStatus(Constants.ONE);
                 //鏇存柊鏁版嵁澶勭悊鐘舵��
@@ -349,7 +361,19 @@
         }finally {
             IS_RUNNING = false;
         }
+    }
 
+    private OssModel initOssModel() {
+        OssModel model = new OssModel();
+        model.setUrl(systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode());
+        model.setEndpoint(systemDictDataBiz.queryByCode(Constants.OSS, Constants.ENDPOINT).getCode());
+        model.setAccessId(systemDictDataBiz.queryByCode(Constants.OSS, Constants.ACCESS_ID).getCode());
+        model.setAccessKey(systemDictDataBiz.queryByCode(Constants.OSS, Constants.ACCESS_KEY).getCode());
+        model.setBucket(systemDictDataBiz.queryByCode(Constants.OSS, Constants.BUCKETNAME).getCode());
+        model.setCateFolder(systemDictDataBiz.queryByCode(Constants.OSS, Constants.CATEGORY_IMG).getCode());
+        model.setAccessKey(systemDictDataBiz.queryByCode(Constants.OSS, Constants.GOODS_IMG).getCode());
+
+        return model;
     }
 
 
@@ -485,7 +509,7 @@
      * @return
      */
 
-    private BaseCategory getCateModelFromList(String name, String img,List<BaseCategory> list) {
+    private BaseCategory getCateModelFromList(String name,OssModel ossModel, String img,List<BaseCategory> list) {
         if(list!=null && list.size()>0){
             for(BaseCategory p : list){
                 if(StringUtils.equals(name,p.getName())){
@@ -497,11 +521,33 @@
         model.setCreateDate(new Date());
         model.setName(name);
         model.setIsdeleted(Constants.ZERO);
-        model.setImgurl(img);
+        model.setImgurl(getOssImgurl(ossModel,img));
         //鎻掑叆鏂扮殑鍝佺墝淇℃伅
         baseCategoryMapper.insert(model);
         //鍔犲叆闆嗗悎涓�
         list.add(model);
         return model;
     }
+
+    private String getOssImgurl(OssModel ossModel, String img) {
+        if(StringUtils.isBlank(img)){
+            return null;
+        }
+        try {
+            String nowDate = DateUtil.getNowShortDate();// 褰撳墠鏃堕棿锛堝勾鏈堟棩锛�
+            String nfix  = img.lastIndexOf(".")>0?img.substring(img.lastIndexOf(".")):null;
+            nfix = StringUtils.defaultString(nfix,".jpg");
+            String fileName = UUID.randomUUID() + nfix;
+            String tempFileName = nowDate + "/" + fileName;
+            String key = ossModel.getCateFolder() + tempFileName;// 鏂囦欢鍚�
+
+            ALiYunUtil obs = new ALiYunUtil(ossModel.getEndpoint(), ossModel.getAccessId(), ossModel.getAccessKey());
+            if (obs.uploadOnlineObject(img,ossModel.getBucket(), key,null)) {
+                    return  tempFileName;
+            }
+        }catch (Exception e){
+
+        }
+        return  null;
+    }
 }

--
Gitblit v1.9.3