From 0d4ff0b2396e202a028a6f952b088d19b5545550 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期四, 25 七月 2024 17:13:47 +0800
Subject: [PATCH] 代码提交

---
 server/service/src/main/java/com/doumee/service/business/impl/UsersServiceImpl.java |   53 ++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 50 insertions(+), 3 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 0c991ed..40bc7c6 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
@@ -35,6 +35,7 @@
 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.reqeust.GenerateQRCodeRequest;
 import com.doumee.dao.web.reqeust.WxPhoneRequest;
 import com.doumee.dao.web.response.AccountResponse;
 import com.doumee.service.business.UsersService;
@@ -44,6 +45,7 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.yulichang.interfaces.MPJBaseJoin;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
+import okhttp3.Response;
 import org.apache.catalina.User;
 import org.apache.commons.lang3.StringUtils;
 import me.chanjar.weixin.common.error.WxErrorException;
@@ -58,7 +60,10 @@
 import org.springframework.util.CollectionUtils;
 import org.springframework.web.multipart.MultipartFile;
 
+import javax.imageio.ImageIO;
 import java.awt.image.BufferedImage;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
 import java.io.InputStream;
 import java.util.*;
 import java.util.concurrent.Callable;
@@ -671,6 +676,8 @@
 
     @Override
     public  String getContentShareImg(Users users, ContentShareImgDto param){
+        users = usersMapper.selectById(users.getId());
+        this.getUsersDetail(users);
         if(StringUtils.isBlank(param.getImgurl())){
             throw  new BusinessException(ResponseStatus.BAD_REQUEST);
         }
@@ -700,7 +707,7 @@
         //鍐呭鍒嗕韩娴锋姤鍥剧墖
         InputStream mpCode =  Constants.generateWxMiniImgStream(systemDictDataBiz.queryByCode(Constants.WX_MINI_CONFIG, Constants.WX_TOKEN_CUSTOMER).getCode(),
                 //"userId="+users.getId()+"&articleId="+param.getArticleId(),
-                 param.getArticleId()+"&"+users.getId(),
+                 param.getArticleId()+"_"+users.getId(),
                 param.getPageUrl());//灏忕▼搴�
 
         InputStream inputStream = GeneratePicUtil.generateShareWithUserImg(
@@ -724,7 +731,7 @@
        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.getArticleId()+"_"+users.getId(),
                 param.getPageUrl());//灏忕▼搴�
 
         String title = systemDictDataBiz.queryByCode(Constants.WEIXIN_DEFAULT_IMGS, Constants.SHARE_HAIBAO_HEADER_TITLE).getCode();
@@ -745,6 +752,8 @@
 
     @Override
     public     String getUserCard(Users users){
+        users = usersMapper.selectById(users.getId());
+        this.getUsersDetail(users);
         String path = systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.RESOURCE_PATH).getCode();
         String folder = systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.USERS_FILE).getCode();
         if(StringUtils.isNotBlank(users.getCardImg()) && !StringUtils.equals(users.getCardImg(),"-")){
@@ -829,7 +838,9 @@
             Shop shop = shopMapper.selectById(users.getDepartmentId());
             if(Objects.nonNull(shop)){
                 users.setShopName(shop.getName());
-                users.setShopCity(shop.getProvinceName()+shop.getCityName()+shop.getAreaName());
+                if(!(StringUtils.isBlank(shop.getProvinceName())||StringUtils.isBlank(shop.getCityName())||StringUtils.isBlank(shop.getAreaName()))){
+                    users.setShopCity(shop.getProvinceName()+shop.getCityName()+shop.getAreaName());
+                }
                 if(StringUtils.isNotBlank(shop.getAddress())){
                     users.setShopAddress(shop.getAddress());
                 }else{
@@ -890,5 +901,41 @@
         return ztBaseRequst;
     }
 
+
+
+    @Override
+    public InputStream getQrCode(GenerateQRCodeRequest generateQRCodeRequest){
+        if(Objects.isNull(generateQRCodeRequest)
+            ||StringUtils.isBlank(generateQRCodeRequest.getIamId())
+            || StringUtils.isBlank(generateQRCodeRequest.getBusinessId())
+            || Objects.isNull(generateQRCodeRequest.getBusinessType())){
+            throw new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
+        if(generateQRCodeRequest.getBusinessType()<Constants.ZERO || generateQRCodeRequest.getBusinessType() > Constants.THREE){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"涓氬姟绫诲瀷閿欒");
+        }
+        Users users = usersMapper.selectOne(new QueryWrapper<Users>().lambda().eq(Users::getIamId,
+                generateQRCodeRequest.getIamId()).last("limit 1"));
+        if(Objects.isNull(users)){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鍛樺伐淇℃伅");
+        }
+        InputStream inputStream =  Constants.generateWxMiniImgStream(
+                systemDictDataBiz.queryByCode(Constants.WX_MINI_CONFIG, Constants.WX_TOKEN_CUSTOMER).getCode(),
+                generateQRCodeRequest.getBusinessId()+"_"+generateQRCodeRequest.getBusinessType()+"_"+users.getId(),
+                null);//灏忕▼搴�
+        return inputStream;
+//        try {
+//               ByteArrayOutputStream baos = new ByteArrayOutputStream();
+//                    byte[] buffer = new byte[1024];
+//                    int len = -1;
+//                    while ((len = inputStream.read(buffer)) != -1) {
+//                        baos.write(buffer, 0, len);
+//                    }
+//                    return "data:mediatype;base64," + Base64.getEncoder().encodeToString(baos.toByteArray());
+//        } catch (Exception e) {
+//            e.printStackTrace();
+//        }
+//        throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"浜岀淮鐮佺敓鎴愬け璐�");
+    }
 }
 

--
Gitblit v1.9.3