Browse Source

修改文件

master
jy_lwh 1 year ago
parent
commit
e26ad10d4e
12 changed files with 178 additions and 92 deletions
  1. +3
    -4
      han-hai-job/src/main/java/org/jeecg/job/controller/DiffuseAppletController.java
  2. +11
    -5
      han-hai-job/src/main/java/org/jeecg/job/controller/HouseAppletController.java
  3. +0
    -44
      han-hai-job/src/main/java/org/jeecg/job/controller/JobLoginController.java
  4. +67
    -0
      han-hai-job/src/main/java/org/jeecg/job/controller/JobOfficialController.java
  5. +2
    -5
      han-hai-job/src/main/java/org/jeecg/job/req/OfficialLoginBean.java
  6. +9
    -0
      han-hai-job/src/main/java/org/jeecg/job/service/HouseAppletService.java
  7. +0
    -20
      han-hai-job/src/main/java/org/jeecg/job/service/JobLoginService.java
  8. +30
    -0
      han-hai-job/src/main/java/org/jeecg/job/service/JobOfficialService.java
  9. +18
    -1
      han-hai-job/src/main/java/org/jeecg/job/service/impl/HouseAppletServiceImpl.java
  10. +14
    -9
      han-hai-job/src/main/java/org/jeecg/job/service/impl/JobOfficialServiceImpl.java
  11. +23
    -4
      han-hai-module-common/src/main/java/org/jeecg/modules/common/login/impl/ApiLoginServiceImpl.java
  12. +1
    -0
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java

+ 3
- 4
han-hai-job/src/main/java/org/jeecg/job/controller/DiffuseAppletController.java View File

@ -3,21 +3,20 @@ package org.jeecg.job.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.api.vo.Result;
import org.jeecg.job.service.JobLoginService;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
/**
* 兼扩列小程序相关接口信息
*/
@Api(tags="兼兼街--交友扩列小程序对应接口")
@RestController
@RequestMapping("/diffuse/applet")
public class DiffuseAppletController {
//获取登录接口调用
@Resource
private JobLoginService loginService;
@ApiOperation(value = "用户/微信小程序授权登录接口",notes = "用户/微信小程序授权登录接口")


+ 11
- 5
han-hai-job/src/main/java/org/jeecg/job/controller/HouseAppletController.java View File

@ -10,12 +10,15 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
/**
* 租房小程序相关接口信息
*/
@Api(tags="兼兼街--租房小程序对应接口")
@RestController
@RequestMapping("/house/applet")
public class HouseAppletController {
//调用租房小程序相关接口信息
@Resource
private HouseAppletService houseAppletService;
@ -31,12 +34,15 @@ public class HouseAppletController {
return houseAppletService.wxHouseAppletLogin(bean);
}
/**
* 微信小程序获取banner
* @param state
* @return
*/
@ApiOperation(value = "用户/banner的接口",notes = "用户/banner的接口")
@GetMapping("/banner")
public Result<?> wxHouseBanner(){
return null;
public Result<?> wxHouseBanner(String state){
return houseAppletService.wxHouseBanner(state);
}


+ 0
- 44
han-hai-job/src/main/java/org/jeecg/job/controller/JobLoginController.java View File

@ -1,44 +0,0 @@
package org.jeecg.job.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.job.req.BinYuanAccountLoginBean;
import org.jeecg.job.req.BinYuanWxLoginBean;
import org.jeecg.job.service.JobLoginService;
import org.jeecg.common.api.vo.Result;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
@Api(tags="兼兼街--登录接口")
@RestController
@RequestMapping("/binYuan/login")
public class JobLoginController {
/**
* 登录实现类方法
*/
@Resource
private JobLoginService loginService;
/**
* 用户端/微信公众号授权登录
* @param bean
* @return
*/
@ApiOperation(value = "用户/微信公众号授权登录",notes = "用户/微信公众号授权登录")
@PostMapping("/wxLogin")
public Result<?> wxLogin(BinYuanWxLoginBean bean){
return loginService.wxLogin(bean);
}
}

+ 67
- 0
han-hai-job/src/main/java/org/jeecg/job/controller/JobOfficialController.java View File

@ -0,0 +1,67 @@
package org.jeecg.job.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.api.vo.Result;
import org.jeecg.job.req.OfficialLoginBean;
import org.jeecg.job.service.JobOfficialService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
/**
* 兼职公众号相关接口信息
*/
@Api(tags="兼兼街--兼职信息公众号接口")
@RestController
@RequestMapping("/job/official")
public class JobOfficialController {
//兼职公众号相关接口信息
@Resource
private JobOfficialService officialService;
/**
* 用户端/微信公众号授权登录
* @param bean
* @return
*/
@ApiOperation(value = "用户/微信公众号授权登录",notes = "用户/微信公众号授权登录")
@PostMapping("/wxLogin")
public Result<?> wxLogin(OfficialLoginBean bean){
return officialService.wxOfficialLogin(bean);
}
/**
* 查看用户协议与隐私政策
* @param state 0 兼职公众号 1租房小程序 2扩列小程序
* @return
*/
@ApiOperation(value="查看用户协议与隐私政策", notes="查看用户协议与隐私政策")
@GetMapping(value = "/findAgree")
public Result<?> findAgree(String state){
return officialService.findAgree(state);
}
/**
* 查询平台banner
* @param state 0 兼职公众号主banner ,1兼职公众号附banner ,2租房小程序banner ,3租房小程序附banner
* @return
*/
@ApiOperation(value="查询平台banner", notes="查询平台banner")
@GetMapping(value = "/bannerList")
public Result<?> bannerList(String state){
return officialService.bannerList(state);
}
}

han-hai-job/src/main/java/org/jeecg/job/req/BinYuanWxLoginBean.java → han-hai-job/src/main/java/org/jeecg/job/req/OfficialLoginBean.java View File

@ -3,12 +3,8 @@ package org.jeecg.job.req;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author lzx
* @Date 2022-10-07 16:17
**/
@Data
public class BinYuanWxLoginBean {
public class OfficialLoginBean {
/**
@ -55,4 +51,5 @@ public class BinYuanWxLoginBean {
*/
@ApiModelProperty(value = "解密")
private String encryptedData;
}

+ 9
- 0
han-hai-job/src/main/java/org/jeecg/job/service/HouseAppletService.java View File

@ -16,5 +16,14 @@ public interface HouseAppletService {
*/
Result<?> wxHouseAppletLogin(HouseAppletLoginBean bean);
/**
* 微信小程序获取banner
* @param state
* @return
*/
Result<?> wxHouseBanner(String state);
}

+ 0
- 20
han-hai-job/src/main/java/org/jeecg/job/service/JobLoginService.java View File

@ -1,20 +0,0 @@
package org.jeecg.job.service;
import org.jeecg.job.req.BinYuanAccountLoginBean;
import org.jeecg.job.req.BinYuanWxLoginBean;
import org.jeecg.common.api.vo.Result;
/**
* @Author lzx
* @Date 2022-10-07 16:14
**/
public interface JobLoginService {
/**
* 微信授权登录
* @param bean
* @return
*/
Result<?> wxLogin(BinYuanWxLoginBean bean);
}

+ 30
- 0
han-hai-job/src/main/java/org/jeecg/job/service/JobOfficialService.java View File

@ -0,0 +1,30 @@
package org.jeecg.job.service;
import org.jeecg.common.api.vo.Result;
import org.jeecg.job.req.OfficialLoginBean;
public interface JobOfficialService {
/**
* 微信公众号授权登录
* @param bean
* @return
*/
Result<?> wxOfficialLogin(OfficialLoginBean bean);
/**
* 查看用户协议与隐私政策
* @param state 0 兼职公众号 1租房小程序 2扩列小程序
* @return
*/
Result<?> findAgree(String state);
Result<?> bannerList(String state);
}

+ 18
- 1
han-hai-job/src/main/java/org/jeecg/job/service/impl/HouseAppletServiceImpl.java View File

@ -1,6 +1,7 @@
package org.jeecg.job.service.impl;
import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.constant.CommonConstant;
@ -17,9 +18,11 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
@Slf4j
@Service
public class HouseAppletServiceImpl implements HouseAppletService {
@ -67,6 +70,7 @@ public class HouseAppletServiceImpl implements HouseAppletService {
String loginUrl = "https://api.weixin.qq.com/sns/jscode2session?appid=" + mpAppId + "&secret=" + mpAppSecret+ "&js_code=" + bean.getCode() + "&grant_type=authorization_code";
//使用工具类
JSONObject json_test = httpConf.getJSONObject(loginUrl);
String wxUnionId = json_test.getString("unionid");
String wxOpenid = json_test.getString("openid");
String sessionKey = json_test.getString("session_key");
if (StringUtils.isBlank(wxOpenid)) {
@ -82,6 +86,8 @@ public class HouseAppletServiceImpl implements HouseAppletService {
member.setAppletOpenid(wxOpenid);
member.setNickName(bean.getNickName());
member.setHeadImage(bean.getHeadimgurl());
member.setWxUnionid(wxUnionId);
member.setCreateTime(new Date());
//上级邀请人
HanHaiMember pid = memberService.lambdaQuery().eq(HanHaiMember::getShareId, bean.getShareId()).one();
if(pid != null){
@ -94,7 +100,7 @@ public class HouseAppletServiceImpl implements HouseAppletService {
member.setToken(token);
// 设置超时时间
redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + token, JwtUtil.EXPIRE_TIME / 100);
memberService.saveOrUpdate(member);
} else {
// 生成token返回给小程序端
token = JwtUtil.sign(member.getAppletOpenid(), wxOpenid);
@ -103,6 +109,7 @@ public class HouseAppletServiceImpl implements HouseAppletService {
redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + token, JwtUtil.EXPIRE_TIME / 100);
member.setNickName(bean.getNickName());
member.setHeadImage(bean.getHeadimgurl());
member.setWxUnionid(wxUnionId);
member.setToken(token);
memberService.saveOrUpdate(member);
}
@ -115,4 +122,14 @@ public class HouseAppletServiceImpl implements HouseAppletService {
}
/**
* 微信小程序获取banner
* @param state
* @return
*/
@Override
public Result<?> wxHouseBanner(String state){
return null;
}
}

han-hai-job/src/main/java/org/jeecg/job/service/impl/JobLoginServiceImpl.java → han-hai-job/src/main/java/org/jeecg/job/service/impl/JobOfficialServiceImpl.java View File

@ -1,20 +1,18 @@
package org.jeecg.job.service.impl;
import org.jeecg.job.req.BinYuanWxLoginBean;
import org.jeecg.job.service.JobLoginService;
import org.jeecg.common.api.vo.Result;
import org.jeecg.job.req.OfficialLoginBean;
import org.jeecg.job.service.JobOfficialService;
import org.jeecg.modules.common.login.ApiLoginService;
import org.jeecg.modules.common.login.LoginReq;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
/**
* @Author lzx
* @Date 2022-10-07 16:15
**/
@Service
public class JobLoginServiceImpl implements JobLoginService {
public class JobOfficialServiceImpl implements JobOfficialService {
/**
* 公共用户表数据
*/
@ -27,7 +25,7 @@ public class JobLoginServiceImpl implements JobLoginService {
* @return
*/
@Override
public Result<?> wxLogin(BinYuanWxLoginBean bean){
public Result<?> wxOfficialLogin(OfficialLoginBean bean){
LoginReq req = new LoginReq();
req.setCode(bean.getCode());
req.setHeadimgurl(bean.getHeadimgurl());
@ -39,9 +37,16 @@ public class JobLoginServiceImpl implements JobLoginService {
public Result<?> wxAppletLogin(){
/**
* 用户协议隐私政策
* @param state
* @return
*/
@Override
public Result<?> findAgree(String state){
return null;
}
}

+ 23
- 4
han-hai-module-common/src/main/java/org/jeecg/modules/common/login/impl/ApiLoginServiceImpl.java View File

@ -67,17 +67,35 @@ public class ApiLoginServiceImpl implements ApiLoginService {
JSONObject json_test = httpConf.getJSONObject(loginUrl);
log.info("{} {} -- {}", mpAppId, mpAppSecret, json_test);
String wxOpenid = json_test.getString("openid");
String wxUnionId = json_test.getString("unionid");
String access_token = json_test.getString("access_token");
if (StringUtils.isBlank(wxOpenid)) {
throw new JeecgBootException("未获取到openid");
}
HanHaiMember member = hanHaiMemberService.lambdaQuery().eq(HanHaiMember::getOfficialOpenid,wxOpenid).one();
if(member!=null){
if (StringUtils.isBlank(member.getVid())){
member.setVid(loginReq.getVid());
member.setVtime(new Date());
hanHaiMemberService.updateById(member);
// if (StringUtils.isBlank(member.getVid())){
// member.setVid(loginReq.getVid());
// member.setVtime(new Date());
// hanHaiMemberService.updateById(member);
// }
//开始获取用户信息
String memberUrl = "https://api.weixin.qq.com/sns/userinfo?access_token="+access_token+"&openid="+wxOpenid+"&lang=zh_CN";
//使用工具类
JSONObject json_member = httpConf.getJSONObject(memberUrl);
String nickname = json_member.getString("nickname");
String headimgurl = json_member.getString("headimgurl");
try {
nickname = new String(nickname.getBytes("ISO-8859-1"),"UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
member.setNickName(nickname);
member.setHeadImage(headimgurl);
member.setWxUnionid(wxUnionId);
hanHaiMemberService.updateById(member);
// 生成token返回
String token = JwtUtil.sign(member.getAccount(), member.getAccount());
redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + token, token);
@ -104,6 +122,7 @@ public class ApiLoginServiceImpl implements ApiLoginService {
save.setVtime(new Date());
save.setNickName(nickname);
save.setHeadImage(headimgurl);
save.setWxUnionid(wxUnionId);
//销售邀请者标识
save.setShareId(loginReq.getShareId());


+ 1
- 0
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/config/shiro/ShiroConfig.java View File

@ -73,6 +73,7 @@ public class ShiroConfig {
}
filterChainDefinitionMap.put("/house/applet/**", "anon");
filterChainDefinitionMap.put("/job/index/**", "anon");
filterChainDefinitionMap.put("/job/pay/notify", "anon");


Loading…
Cancel
Save