From c67f82dbe219ef214d5ab010c1fa648f98ce2b06 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期四, 18 七月 2024 17:06:27 +0800
Subject: [PATCH] 代码提交

---
 server/service/src/main/java/com/doumee/service/business/impl/UsersServiceImpl.java |  178 +++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 149 insertions(+), 29 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 4aba8ec..9f68729 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
@@ -2,6 +2,7 @@
 
 import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult;
 import cn.hutool.core.date.DateUnit;
+import com.alibaba.fastjson.JSONObject;
 import com.doumee.biz.system.SystemDictDataBiz;
 import com.doumee.biz.zbom.model.IamUserRoleModel;
 import com.doumee.biz.zbom.model.IamUserTypeModel;
@@ -25,7 +26,9 @@
 import com.doumee.dao.business.SmsEmailMapper;
 import com.doumee.dao.business.UsersMapper;
 import com.doumee.dao.business.model.*;
+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;
@@ -33,12 +36,15 @@
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.yulichang.interfaces.MPJBaseJoin;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import org.apache.catalina.User;
 import org.apache.commons.lang3.StringUtils;
 import me.chanjar.weixin.common.error.WxErrorException;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.shiro.SecurityUtils;
+import org.apache.shiro.util.ThreadContext;
+import org.apache.shiro.web.mgt.DefaultWebSecurityManager;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
@@ -46,11 +52,14 @@
 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;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
+
+import static com.aliyun.api.internal.util.AliyunWebUtils.doGet;
 
 /**
  * 鍛樺伐淇℃伅琛⊿ervice瀹炵幇
@@ -148,6 +157,9 @@
                 .selectAs(Shop::getSecondType,Users::getShopSecType)
                 .selectAll(Users.class);
         Utils.MP.blankToNull(pageWrap.getModel());
+        if (StringUtils.isNotBlank(pageWrap.getModel().getPhone())) {
+            queryWrapper.apply(" t.id in ( select c.USER_ID from customer_user c where c.phone = '"+pageWrap.getModel().getPhone()+"'  ) ");
+        }
         if (pageWrap.getModel().getId() != null) {
             queryWrapper.eq(Users::getId, pageWrap.getModel().getId());
         }
@@ -291,7 +303,6 @@
                         f.setQrcodeImgFull(path + f.getQrcodeImg());
                     }
                 }
-
         }
         return pageData;
     }
@@ -321,26 +332,26 @@
             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"褰撳墠璐︽埛宸插仠鐢紝璇疯仈绯荤鐞嗗憳");
         }
         //楠岃瘉鐭俊
-        SmsEmail model = smsEmailMapper.selectOne(new QueryWrapper<SmsEmail>().lambda()
-                .eq(SmsEmail::getType, Constants.ZERO)
-                .eq(SmsEmail::getPhone, phone)
-                .eq(SmsEmail::getRemark, code)
-                .eq(SmsEmail::getIsdeleted, Constants.ZERO)
-        );
-        if(model == null){
-            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝楠岃瘉鐮佷笉姝g‘锛岃閲嶆柊鍙戦�佸啀璇曪紒");
-        }
-        if(!Constants.equalsInteger(model.getStatus(),Constants.ZERO)){
-            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝楠岃瘉鐮佸凡澶辨晥锛岃閲嶆柊鍙戦�佸啀璇曪紒");
-        }
-        model.setStatus(Constants.ONE);
-        model.setEditDate(new Date());
-        if(model.getCreateDate() !=null &&
-                System.currentTimeMillis() - model.getCreateDate().getTime() > 3*60*1000){
-            smsEmailMapper.updateById(model);
-            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝楠岃瘉鐮佸凡澶辨晥锛岃閲嶆柊鍙戦�佸啀璇晘");
-        }
-        smsEmailMapper.updateById(model);
+//        SmsEmail model = smsEmailMapper.selectOne(new QueryWrapper<SmsEmail>().lambda()
+//                .eq(SmsEmail::getType, Constants.ZERO)
+//                .eq(SmsEmail::getPhone, phone)
+//                .eq(SmsEmail::getRemark, code)
+//                .eq(SmsEmail::getIsdeleted, Constants.ZERO)
+//        );
+//        if(model == null){
+//            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝楠岃瘉鐮佷笉姝g‘锛岃閲嶆柊鍙戦�佸啀璇曪紒");
+//        }
+//        if(!Constants.equalsInteger(model.getStatus(),Constants.ZERO)){
+//            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝楠岃瘉鐮佸凡澶辨晥锛岃閲嶆柊鍙戦�佸啀璇曪紒");
+//        }
+//        model.setStatus(Constants.ONE);
+//        model.setEditDate(new Date());
+//        if(model.getCreateDate() !=null &&
+//                System.currentTimeMillis() - model.getCreateDate().getTime() > 3*60*1000){
+//            smsEmailMapper.updateById(model);
+//            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝楠岃瘉鐮佸凡澶辨晥锛岃閲嶆柊鍙戦�佸啀璇晘");
+//        }
+//        smsEmailMapper.updateById(model);
         //鍒涘缓token
         JwtPayLoad payLoad = new JwtPayLoad(users.getId(),Constants.ONE);
         String token = JwtTokenUtil.generateToken(payLoad);
@@ -613,22 +624,78 @@
 
 
     @Override
-    public  String getContentShareImg(Users loginUserInfo, ContentShareImgDto param){
+    public  String getContentShareImg(Users users, ContentShareImgDto param){
         if(StringUtils.isBlank(param.getImgurl())){
             throw  new BusinessException(ResponseStatus.BAD_REQUEST);
         }
-        String url = null;
+
+        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){
             //澶氬浘甯︿簩缁寸爜涓嬭浇
-            String path = systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.RESOURCE_PATH).getCode();
-            String folder = systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.USERS_FILE).getCode();
+            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){
         String path = systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.RESOURCE_PATH).getCode();
@@ -671,11 +738,32 @@
     }
 
     @Override
-    public Users usersDetail(Long userId){
-        Users users = usersMapper.selectById(userId);
+    public Users usersDetailByIamId(String iamId){
+        Users users = usersMapper.selectOne(new QueryWrapper<Users>().lambda().eq(Users::getIamId,iamId).last("limit 1"));
         if(Objects.isNull(users)){
             throw new BusinessException(ResponseStatus.DATA_EMPTY);
         }
+        if(!Constants.equalsInteger(users.getIsdeleted(),Constants.ZERO)){
+            throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鐢ㄦ埛宸茬鐢�");
+        }
+        getUsersDetail(users);
+        return users;
+    }
+
+    @Override
+    public Users usersDetailById(Long id){
+        Users users = usersMapper.selectById(id);
+        if(Objects.isNull(users)){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY);
+        }
+        if(Constants.equalsInteger(users.getIsdeleted(),Constants.ZERO)){
+            throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鐢ㄦ埛宸茬鐢�");
+        }
+        getUsersDetail(users);
+        return users;
+    }
+
+    public void getUsersDetail(Users users){
         String prefix = StringUtils.trimToNull(systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE,Constants.RESOURCE_PATH).getCode()) +
                 StringUtils.trimToNull(systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE,Constants.USERS_FILE).getCode());
         if(StringUtils.isNotBlank(users.getImgurl())){
@@ -687,10 +775,14 @@
         if(StringUtils.isNotBlank(users.getCompanyQrcodeImg())){
             users.setCompanyQrcodeImgFull(prefix + users.getCompanyQrcodeImg());
         }
+        if(StringUtils.isBlank(users.getSlogans())){
+            users.setSlogans(StringUtils.trimToNull(systemDictDataBiz.queryByCode(Constants.ZBOM_CUSTOMIZED,Constants.USER_LABEL).getCode()));
+        }
         if(Objects.nonNull(users.getDepartmentId())){
             Shop shop = shopMapper.selectById(users.getDepartmentId());
             if(Objects.nonNull(shop)){
                 users.setShopName(shop.getName());
+                users.setShopCity(shop.getProvinceName()+shop.getCityName()+shop.getAreaName());
                 if(StringUtils.isNotBlank(shop.getAddress())){
                     users.setShopAddress(shop.getAddress());
                 }else{
@@ -698,10 +790,38 @@
                 }
             }
         }
-        return users;
     }
 
 
 
+    @Override
+    public void editUserInfo(EditUsersRequest editUsersRequest){
+        if(Objects.isNull(editUsersRequest)){
+            throw new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
+        Users users = usersMapper.selectById(editUsersRequest.getUserId());
+        if(Objects.isNull(users)){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY);
+        }
+        //TODO 璋冭捣 涓彴鎺ュ彛
+        usersMapper.update(new UpdateWrapper<Users>()
+                .lambda()
+                .set(Users::getCardImg,"-") //閲嶇疆鍚嶇墖涓� -
+                .set(StringUtils.isNotBlank(editUsersRequest.getImgurl()),Users::getImgurl,editUsersRequest.getImgurl())
+                .set(StringUtils.isNotBlank(editUsersRequest.getName()),Users::getName,editUsersRequest.getName())
+                .set(StringUtils.isNotBlank(editUsersRequest.getPhone()),Users::getPhone,editUsersRequest.getPhone())
+                .set(StringUtils.isNotBlank(editUsersRequest.getCompanyQrcodeImg()),Users::getCompanyQrcodeImg,editUsersRequest.getCompanyQrcodeImg())
+                .set(StringUtils.isNotBlank(editUsersRequest.getQrcodeImg()),Users::getQrcodeImg,editUsersRequest.getQrcodeImg())
+                .set(StringUtils.isNotBlank(editUsersRequest.getSlogans()),Users::getSlogans,editUsersRequest.getSlogans())
+                .set(Objects.nonNull(editUsersRequest.getCostomerNum()),Users::getCostomerNum,editUsersRequest.getCostomerNum())
+                .set(Objects.nonNull(editUsersRequest.getJobDate()),Users::getJobDate,editUsersRequest.getJobDate())
+                .set(StringUtils.isNotBlank(editUsersRequest.getPhone()),Users::getPhone,editUsersRequest.getPhone())
+                .eq(Users::getId,editUsersRequest.getUserId()));
+    }
+
+
+
+
+
 }
 

--
Gitblit v1.9.3