From 20b11236b4364034f52df294b9240776f539ede1 Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期二, 16 七月 2024 14:49:01 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/zbomyoujia

---
 server/service/src/main/java/com/doumee/service/business/impl/UsersServiceImpl.java |  108 ++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 96 insertions(+), 12 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 dad6e61..509aafe 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
@@ -1,6 +1,7 @@
 package com.doumee.service.business.impl;
 
 import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult;
+import cn.hutool.core.date.DateUnit;
 import com.doumee.biz.system.SystemDictDataBiz;
 import com.doumee.biz.zbom.model.IamUserRoleModel;
 import com.doumee.biz.zbom.model.IamUserTypeModel;
@@ -13,17 +14,17 @@
 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.GeneratePicUtil;
 import com.doumee.core.utils.Utils;
+import com.doumee.core.utils.tyyun.TyyZosUtil;
 import com.doumee.dao.admin.request.ShopImport;
 import com.doumee.dao.admin.request.UserImport;
 import com.doumee.dao.business.ShopMapper;
 import com.doumee.core.wx.WxMiniConfig;
+import com.doumee.dao.business.SmsEmailMapper;
 import com.doumee.dao.business.UsersMapper;
-import com.doumee.dao.business.model.Multifile;
-import com.doumee.dao.business.model.News;
-import com.doumee.dao.business.model.Shop;
-import com.doumee.dao.business.model.Member;
-import com.doumee.dao.business.model.Users;
+import com.doumee.dao.business.model.*;
 import com.doumee.dao.system.model.SystemUser;
 import com.doumee.dao.web.response.AccountResponse;
 import com.doumee.service.business.UsersService;
@@ -44,10 +45,8 @@
 import org.springframework.util.CollectionUtils;
 import org.springframework.web.multipart.MultipartFile;
 
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Objects;
+import java.io.InputStream;
+import java.util.*;
 import java.util.concurrent.Callable;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
@@ -68,6 +67,8 @@
     private UsersMapper usersMapper;
     @Autowired
     private ShopMapper shopMapper;
+    @Autowired
+    private SmsEmailMapper smsEmailMapper;
     @Autowired
     private SystemDictDataBiz systemDictDataBiz;
 
@@ -293,6 +294,8 @@
     }
 
 
+
+
     @Override
     public AccountResponse phoneLogin(String phone,String code){
         if(StringUtils.isEmpty(phone)||StringUtils.isEmpty(code)){
@@ -308,10 +311,27 @@
         if(!StringUtils.equals(users.getStatus(),Constants.ZERO+"")){
             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"褰撳墠璐︽埛宸插仠鐢紝璇疯仈绯荤鐞嗗憳");
         }
-        //TODO 楠岃瘉鐭俊淇℃伅
-        if(!StringUtils.equals(code,"123456")){
-            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);
         //鍒涘缓token
         JwtPayLoad payLoad = new JwtPayLoad(users.getId(),Constants.ONE);
         String token = JwtTokenUtil.generateToken(payLoad);
@@ -582,5 +602,69 @@
         return null;
     }
 
+
+
+    @Override
+    public     String getUserCard(Users users){
+        String path = systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.RESOURCE_PATH).getCode();
+        String folder = systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.USERS_FILE).getCode();
+        String defualtHeader = systemDictDataBiz.queryByCode(Constants.WEIXIN_DEFAULT_IMGS, Constants.USER_CARD_HEADER_IMG).getCode();
+        String defualtPhone = systemDictDataBiz.queryByCode(Constants.WEIXIN_DEFAULT_IMGS, Constants.USER_CARD_PHONE_IMG).getCode();
+        String defualtAddr = systemDictDataBiz.queryByCode(Constants.WEIXIN_DEFAULT_IMGS, Constants.USER_CARD_ADDR_IMG).getCode();
+        String imgurl =StringUtils.isNotBlank(users.getImgurl())?path+users.getImgurl():defualtHeader;
+        String qrcode =StringUtils.isNotBlank(users.getQrcodeImg())?path+users.getQrcodeImg():null;
+        InputStream inputStream = GeneratePicUtil.generateUserCardImg(
+                imgurl
+                ,qrcode
+                ,StringUtils.defaultString(users.getName(),"-")
+                ,"瀵艰喘"
+                ,StringUtils.defaultString(users.getPhone(),"-")
+                ,StringUtils.defaultString(users.getShopAddress(),"-")
+                ,"ZBOM蹇楅偊瀹跺眳锝�"+ StringUtils.defaultString(users.getShopName(),"-")
+                ,defualtPhone
+                ,defualtAddr);
+        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 fileName =folder+ DateUtil.getNowShortDate()+"/"+UUID.randomUUID().toString() + ".jpg";
+        if (obs.uploadInputstreamObject(inputStream,systemDictDataBiz.queryByCode(Constants.OBJCET_STORAGE, Constants.BUCKETNAME).getCode(), fileName)) {
+            return  path+fileName;
+        }
+        return null;
+    }
+
+    @Override
+    public Users usersDetail(Long userId){
+        Users users = usersMapper.selectById(userId);
+        if(Objects.isNull(users)){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY);
+        }
+        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())){
+            users.setImgurlFull(prefix + users.getImgurl());
+        }
+        if(StringUtils.isNotBlank(users.getQrcodeImg())){
+            users.setQrcodeImgFull(prefix + users.getQrcodeImg());
+        }
+        if(StringUtils.isNotBlank(users.getCompanyQrcodeImg())){
+            users.setCompanyQrcodeImgFull(prefix + users.getCompanyQrcodeImg());
+        }
+        if(Objects.nonNull(users.getDepartmentId())){
+            Shop shop = shopMapper.selectById(users.getDepartmentId());
+            if(Objects.nonNull(shop)){
+                users.setShopName(shop.getName());
+                if(StringUtils.isNotBlank(shop.getAddress())){
+                    users.setShopAddress(shop.getAddress());
+                }else{
+                    users.setShopAddress(shop.getProvinceName()+shop.getCityName()+shop.getAreaName()+shop.getTown()+shop.getRegAddr());
+                }
+            }
+        }
+        return users;
+    }
+
+
+
 }
 

--
Gitblit v1.9.3