Browse Source

h5课程分享链接公众号登录调整(添加小黑屋配置)

caoliqin 1 month ago
parent
commit
b6eb0529c2

+ 11 - 1
fs-user-app/src/main/java/com/fs/app/controller/WxH5MpController.java

@@ -5,6 +5,8 @@ import com.fs.app.param.FsUserLoginByMpParam;
 import com.fs.app.utils.JwtUtils;
 import com.fs.common.core.domain.R;
 import com.fs.common.core.redis.RedisCache;
+import com.fs.company.domain.Company;
+import com.fs.company.service.ICompanyService;
 import com.fs.course.mapper.FsCourseSopLogsMapper;
 import com.fs.course.mapper.FsCourseWatchLogMapper;
 import com.fs.qw.mapper.QwExternalContactMapper;
@@ -52,6 +54,8 @@ public class WxH5MpController {
     FsCourseWatchLogMapper fsCourseWatchLogMapper;
     @Autowired
     QwExternalContactMapper qwExternalContactMapper;
+    @Autowired
+    ICompanyService companyService;
 
 
     @ApiOperation("课程分享链接公众号登录")
@@ -61,6 +65,12 @@ public class WxH5MpController {
             //获取微信用户信息
             WxOAuth2AccessToken wxMpOAuth2AccessToken = wxMpService.getOAuth2Service().getAccessToken(param.getCode());
             WxOAuth2UserInfo wxMpUser = wxMpService.getOAuth2Service().getUserInfo(wxMpOAuth2AccessToken, null);
+            //1、特殊(需求设计:需要根据公司是否开启黑名单来设置会员初始化的状态)
+            //2、获取公司信息
+            Company company = null;
+            if(param.getCompanyId() != null){
+                company = companyService.selectCompanyById(param.getCompanyId());
+            }
             FsUser user = userService.selectFsUserByUnionid(wxMpUser.getUnionId());
             if (user != null) {
                 //修改
@@ -75,7 +85,7 @@ public class WxH5MpController {
                 user = new FsUser();
                 user.setNickname(wxMpUser.getNickname());
                 user.setAvatar(wxMpUser.getHeadImgUrl());
-                user.setStatus(1);
+                user.setStatus((company != null ? company.getFsUserIsDefaultBlack() : 0) == 1 ? 0 : 1);
                 user.setMpOpenId(wxMpUser.getOpenid());
                 user.setUnionId(wxMpUser.getUnionId());
                 user.setCreateTime(new Date());