From 1be9f9fdb13f7c5cdcf29494cb72ced35cd7af10 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 16 七月 2024 22:18:04 +0800
Subject: [PATCH] 提交

---
 server/service/src/main/java/com/doumee/service/business/impl/UsersServiceImpl.java |   90 +++++++++++++++++++++++++++++++++++++-------
 1 files changed, 75 insertions(+), 15 deletions(-)

diff --git a/server/service/src/main/java/com/doumee/service/business/impl/UsersServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/UsersServiceImpl.java
index a4a01e9..9ae75bf 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/UsersServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/UsersServiceImpl.java
@@ -29,6 +29,7 @@
 import com.doumee.dao.system.model.SystemDictData;
 import com.doumee.dao.system.model.SystemUser;
 import com.doumee.dao.web.reqeust.EditUsersRequest;
+import com.doumee.dao.web.reqeust.ContentShareImgDto;
 import com.doumee.dao.web.response.AccountResponse;
 import com.doumee.service.business.UsersService;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -51,6 +52,7 @@
 import org.springframework.util.CollectionUtils;
 import org.springframework.web.multipart.MultipartFile;
 
+import java.awt.image.BufferedImage;
 import java.io.InputStream;
 import java.util.*;
 import java.util.concurrent.Callable;
@@ -621,6 +623,78 @@
     }
 
 
+    @Override
+    public  String getContentShareImg(Users users, ContentShareImgDto param){
+        if(StringUtils.isBlank(param.getImgurl())){
+            throw  new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
+
+        String shareFolder = systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.SHARES_FILE).getCode();
+        String path = systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.RESOURCE_PATH).getCode();
+        if(param.getType() == 1){
+            //澶氬浘甯︿簩缁寸爜涓嬭浇
+            return dealShareImgWithUser(param,users,shareFolder,path);
+        }else{
+          return dealShareImgNoUser(param,users,shareFolder,path);
+        }
+    }
+
+    private String dealShareImgWithUser(ContentShareImgDto param, Users users, String shareFolder, String path) {
+        BufferedImage img1 =GeneratePicUtil.getImgIO(param.getImgurl());
+        if(img1 ==null){
+            return param.getImgurl();
+        }
+      /*  if(img1.getWidth() <200 && img1.getHeight()<100){
+            return  param.getImgurl();
+        }
+*/
+        String defualtHeader = systemDictDataBiz.queryByCode(Constants.WEIXIN_DEFAULT_IMGS, Constants.USER_CARD_HEADER_IMG).getCode();
+        String imgurl =StringUtils.isNotBlank(users.getImgurl())?path+(systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.USERS_FILE).getCode())+users.getImgurl():defualtHeader;
+        String url =null;
+        //鍐呭鍒嗕韩娴锋姤鍥剧墖
+        InputStream mpCode =  Constants.generateWxMiniImgStream(systemDictDataBiz.queryByCode(Constants.WX_MINI_CONFIG, Constants.WX_TOKEN_CUSTOMER).getCode(),
+                "userId="+users.getId()+"&articleId="+param.getArticleId(),
+                param.getPageUrl());//灏忕▼搴�
+
+        InputStream inputStream = GeneratePicUtil.generateShareWithUserImg(
+                img1
+                ,mpCode
+                ,imgurl
+        ,StringUtils.defaultString(users.getName(),"-"));
+        TyyZosUtil obs = new TyyZosUtil( systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.ENDPOINT).getCode(),
+                systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.ACCESS_ID).getCode(),
+                systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.ACCESS_KEY).getCode());
+        String key = DateUtil.getNowShortDate()+"/"+UUID.randomUUID().toString() + ".jpg";
+        String fileName =shareFolder+ key;
+        if (obs.uploadInputstreamObject(inputStream,systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.BUCKETNAME).getCode(), fileName)) {
+            url =  path+fileName;
+        }
+        return  url;
+
+    }
+
+    private String dealShareImgNoUser(ContentShareImgDto param, Users users, String shareFolder, String path) {
+       String url =null;
+        //鍐呭鍒嗕韩娴锋姤鍥剧墖
+        InputStream mpCode =  Constants.generateWxMiniImgStream(systemDictDataBiz.queryByCode(Constants.WX_MINI_CONFIG, Constants.WX_TOKEN_CUSTOMER).getCode(),
+                "userId="+users.getId()+"&articleId="+param.getArticleId(),
+                param.getPageUrl());//灏忕▼搴�
+
+        String title = systemDictDataBiz.queryByCode(Constants.WEIXIN_DEFAULT_IMGS, Constants.SHARE_HAIBAO_HEADER_TITLE).getCode();
+        InputStream inputStream = GeneratePicUtil.generateShareImg(
+                param.getImgurl()
+                ,mpCode
+                ,title);
+        TyyZosUtil obs = new TyyZosUtil( systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.ENDPOINT).getCode(),
+                systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.ACCESS_ID).getCode(),
+                systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.ACCESS_KEY).getCode());
+        String key = DateUtil.getNowShortDate()+"/"+UUID.randomUUID().toString() + ".jpg";
+        String fileName =shareFolder+ key;
+        if (obs.uploadInputstreamObject(inputStream,systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.BUCKETNAME).getCode(), fileName)) {
+            url =  path+fileName;
+        }
+        return  url;
+    }
 
     @Override
     public     String getUserCard(Users users){
@@ -727,21 +801,7 @@
 
 
 
-    @Override
-    public void updWxMiniToken(){
-        DefaultWebSecurityManager manager = new DefaultWebSecurityManager();
-        ThreadContext.bind(manager);
-        String appId = systemDictDataBiz.queryByCode(Constants.WX_MINI_CONFIG,Constants.WX_APPID_PERSONNEL).getCode();
-        String appSecret = systemDictDataBiz.queryByCode(Constants.WX_MINI_CONFIG,Constants.WX_SECRET_PERSONNEL).getCode();
-        //鐢熸垚寰俊token
-        String url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid="+appId+"&secret="+appSecret;
-        String response = Constants.doGet(url,null);
-        JSONObject json = JSONObject.parseObject(response);
-        SystemDictData systemDictData = systemDictDataBiz.queryByCode(Constants.WX_MINI_CONFIG,Constants.WX_TOKEN_PERSONNEL);
-        systemDictData.setCode(json.getString("access_token"));
-        systemDictData.setUpdateTime(new Date());
-        systemDictDataBiz.updateByIdNew(systemDictData);
-    }
+
 
 }
 

--
Gitblit v1.9.3