Commit 69fec016 authored by 周健威's avatar 周健威

Merge remote-tracking branch 'origin/base-modify' into base-modify

parents 36a48804 9f9e259a
...@@ -38,6 +38,10 @@ ...@@ -38,6 +38,10 @@
<artifactId>spring-cloud-sleuth-zipkin</artifactId> <artifactId>spring-cloud-sleuth-zipkin</artifactId>
<version>2.1.0.RELEASE</version> <version>2.1.0.RELEASE</version>
</dependency> </dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId> <artifactId>spring-boot-starter-aop</artifactId>
......
...@@ -33,6 +33,8 @@ import java.util.stream.Collectors; ...@@ -33,6 +33,8 @@ import java.util.stream.Collectors;
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> { public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> {
private static final String WX_TYPE="wx";
private static final String QQ_TYPE="q";
@Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED) @Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED)
@Override @Override
...@@ -224,4 +226,36 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> { ...@@ -224,4 +226,36 @@ public class AppUserLoginBiz extends BaseBiz<AppUserLoginMapper, AppUserLogin> {
public List<Integer> findAllExistUserIds(){ public List<Integer> findAllExistUserIds(){
return mapper.selectAllExistUserIds(); return mapper.selectAllExistUserIds();
} }
/**
* 检查第三方是否绑定
* @param wxOpenId
* @param wxUnionId
* @param openId
* @return
*/
public boolean checkThirdPartyBindingState(String wxOpenId, String wxUnionId, String openId) {
AppUserLogin appUserLogin = new AppUserLogin();
appUserLogin.setWxOpenid(wxOpenId);
appUserLogin.setUnionid(wxUnionId);
appUserLogin.setOpenid(openId);
return mapper.selectOne(appUserLogin) != null;
}
@CacheClear(pre = "user{2}")
public void unBindThirdPartyByType(String type,String username,Integer userId) {
AppUserLogin appUserLogin = new AppUserLogin();
appUserLogin.setId(userId);
//微信解绑
if (WX_TYPE.equals(type)){
appUserLogin.setWxOpenid("");
appUserLogin.setUnionid("");
mapper.updateByPrimaryKeySelective(appUserLogin);
}
//qq解绑
if (QQ_TYPE.equals(type)){
appUserLogin.setOpenid("");
mapper.updateByPrimaryKeySelective(appUserLogin);
}
}
} }
...@@ -9,6 +9,8 @@ import com.github.wxiaoqi.security.admin.vo.AppUserVo; ...@@ -9,6 +9,8 @@ import com.github.wxiaoqi.security.admin.vo.AppUserVo;
import com.github.wxiaoqi.security.admin.vo.UserMemberVo; import com.github.wxiaoqi.security.admin.vo.UserMemberVo;
import com.github.wxiaoqi.security.auth.client.config.UserAuthConfig; import com.github.wxiaoqi.security.auth.client.config.UserAuthConfig;
import com.github.wxiaoqi.security.auth.client.jwt.UserAuthUtil; import com.github.wxiaoqi.security.auth.client.jwt.UserAuthUtil;
import com.github.wxiaoqi.security.auth.common.util.jwt.IJWTInfo;
import com.github.wxiaoqi.security.common.exception.BaseException;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.msg.TableResultResponse; import com.github.wxiaoqi.security.common.msg.TableResultResponse;
import com.github.wxiaoqi.security.common.rest.CommonBaseController; import com.github.wxiaoqi.security.common.rest.CommonBaseController;
...@@ -18,8 +20,10 @@ import io.swagger.annotations.ApiOperation; ...@@ -18,8 +20,10 @@ import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.beanutils.BeanUtils; import org.apache.commons.beanutils.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import javax.ws.rs.GET; import javax.ws.rs.GET;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -59,6 +63,8 @@ public class AppUserController extends CommonBaseController { ...@@ -59,6 +63,8 @@ public class AppUserController extends CommonBaseController {
@Autowired @Autowired
private MyWaterBiz myWaterBiz; private MyWaterBiz myWaterBiz;
@GetMapping("page") @GetMapping("page")
public TableResultResponse list(@RequestParam Map<String, Object> params) { public TableResultResponse list(@RequestParam Map<String, Object> params) {
Query query = new Query(params); Query query = new Query(params);
...@@ -187,6 +193,58 @@ public class AppUserController extends CommonBaseController { ...@@ -187,6 +193,58 @@ public class AppUserController extends CommonBaseController {
return ObjectRestResponse.succ(); return ObjectRestResponse.succ();
} }
/**
* 第三方登录绑定
* @param wxOpenId
* @param wxUnionId
* @param openId
* @param request
* @return
*/
@PutMapping("/third_party_binding")
public ObjectRestResponse bindingThirdParty(@RequestParam(value = "wxOpenId",required = false) String wxOpenId,
@RequestParam(value="wxUnionId",required = false) String wxUnionId,
@RequestParam(value = "openId",required = false) String openId,
HttpServletRequest request){
try {
IJWTInfo infoFromToken = userAuthUtil.getInfoFromToken(userAuthConfig.getToken(request));
String userId = infoFromToken.getId();
boolean isBinding = appUserLoginBiz.checkThirdPartyBindingState(wxOpenId,wxUnionId,openId);
if (isBinding){
return ObjectRestResponse.createFailedResult(400,"该微信已经绑定过");
}else {
AppUserLogin appUserLogin = new AppUserLogin();
appUserLogin.setId(Integer.valueOf(userId));
appUserLogin.setWxOpenid(wxOpenId);
appUserLogin.setUnionid(wxUnionId);
appUserLogin.setOpenid(openId);
appUserLoginBiz.bindOpenid(appUserLogin);
}
} catch (Exception e) {
throw new BaseException(e);
}
return ObjectRestResponse.succ();
}
/**
* 第三方登录解绑
* @param request
* @return
*/
@PutMapping("third_party_unbind")
public ObjectRestResponse unBindingThirdParty(@RequestParam("type") String type , HttpServletRequest request){
try {
IJWTInfo infoFromToken = userAuthUtil.getInfoFromToken(userAuthConfig.getToken(request));
appUserLoginBiz.unBindThirdPartyByType(type,infoFromToken.getUniqueName(),Integer.valueOf(infoFromToken.getId()));
} catch (Exception e) {
throw new BaseException(e);
}
return ObjectRestResponse.succ();
}
/** /**
* 更新用户信息 * 更新用户信息
* @param username * @param username
......
...@@ -138,6 +138,6 @@ public class IntegralRule{ ...@@ -138,6 +138,6 @@ public class IntegralRule{
private String btnWord; private String btnWord;
@Transient @Transient
private Boolean integralStatus; private Boolean integralStatus = false;
} }
\ No newline at end of file
...@@ -6,6 +6,7 @@ import com.github.wxiaoqi.security.common.biz.BaseBiz; ...@@ -6,6 +6,7 @@ import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.xxfc.platform.activity.entity.IntegralUserStatus; import com.xxfc.platform.activity.entity.IntegralUserStatus;
import com.xxfc.platform.activity.mapper.IntegralUserStatusMapper; import com.xxfc.platform.activity.mapper.IntegralUserStatusMapper;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
...@@ -14,6 +15,7 @@ import java.util.TimeZone; ...@@ -14,6 +15,7 @@ import java.util.TimeZone;
@Service @Service
@Transactional @Transactional
@Slf4j
public class IntegralUserStatusBiz extends BaseBiz<IntegralUserStatusMapper, IntegralUserStatus> { public class IntegralUserStatusBiz extends BaseBiz<IntegralUserStatusMapper, IntegralUserStatus> {
public ObjectRestResponse save(IntegralUserStatus integralUserStatus) { public ObjectRestResponse save(IntegralUserStatus integralUserStatus) {
...@@ -32,11 +34,13 @@ public class IntegralUserStatusBiz extends BaseBiz<IntegralUserStatusMapper, Int ...@@ -32,11 +34,13 @@ public class IntegralUserStatusBiz extends BaseBiz<IntegralUserStatusMapper, Int
if(!StringUtils.isAllBlank(code, userId + "")) { if(!StringUtils.isAllBlank(code, userId + "")) {
long current = System.currentTimeMillis(); long current = System.currentTimeMillis();
long startTime = current / (1000 * 3600 * 24) * (1000 * 3600 * 24) - TimeZone.getDefault().getRawOffset(); long startTime = current / (1000 * 3600 * 24) * (1000 * 3600 * 24) - TimeZone.getDefault().getRawOffset();
IntegralUserStatus integralUserStatus = new IntegralUserStatus(); IntegralUserStatus integralUserStatus = new IntegralUserStatus();
integralUserStatus.setIntegralRuleCode(code); integralUserStatus.setIntegralRuleCode(code);
integralUserStatus.setUserId(userId); integralUserStatus.setUserId(userId);
integralUserStatus.setStartTime(startTime); integralUserStatus.setStartTime(startTime);
integralUserStatus.setEndTime(startTime + 24 * 60 * 60 * 1000 - 1); integralUserStatus.setEndTime(startTime + 24 * 60 * 60 * 1000 - 1);
log.info("获取用户积分状态:" + integralUserStatus.toString());
return mapper.selectByUserAndCode(integralUserStatus); return mapper.selectByUserAndCode(integralUserStatus);
} }
return null; return null;
......
package com.xxfc.platform.order.rest; package com.xxfc.platform.order.rest;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.github.wxiaoqi.security.admin.feign.dto.UserDTO; import com.github.wxiaoqi.security.admin.feign.dto.UserDTO;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.xxfc.platform.activity.user.UserInfoBiz; import com.xxfc.platform.activity.user.UserInfoBiz;
...@@ -49,8 +50,9 @@ public class OrderVehicleCrosstownController { ...@@ -49,8 +50,9 @@ public class OrderVehicleCrosstownController {
@ApiOperation(value = "根据订单Id获取所有记录信息") @ApiOperation(value = "根据订单Id获取所有记录信息")
public ObjectRestResponse<List<OrderVehicleCrosstownDto>> getByOrderId(OrderVehicleCrosstownDto orderVehicleCrosstownDto) { public ObjectRestResponse<List<OrderVehicleCrosstownDto>> getByOrderId(OrderVehicleCrosstownDto orderVehicleCrosstownDto) {
UserDTO userDTO = userInfoBiz.getAdminUserInfo(); UserDTO userDTO = userInfoBiz.getAdminUserInfo();
if (userDTO == null) { AppUserDTO appUserDTO = userInfoBiz.getUserInfo();
return ObjectRestResponse.createFailedResult(508, "token is null or invalid"); if (userDTO == null && appUserDTO == null) {
return ObjectRestResponse.createFailedResult(508, "token is null or invalid");
} }
if (orderVehicleCrosstownDto == null) { if (orderVehicleCrosstownDto == null) {
return ObjectRestResponse.createFailedResult(500, "参数orderId为空"); return ObjectRestResponse.createFailedResult(500, "参数orderId为空");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment