记得上下班打卡 | git大法好,push需谨慎

Commit 0d35a8bd authored by 张国柄's avatar 张国柄

+feign api:判断是否会员;

token添加mobile、nickname;
parent 4b915827
......@@ -8,6 +8,8 @@ import java.util.Map;
public class CurrentUtil {
public static final String uTag = "u-tag";
public static final String uToken = "u-token";
public static final String CLI_SOURCE = "source";
public static final String CLI_VERSION = "version";
public static String getToken() {
String authToken = ServletUtils.getRequest().getHeader(uToken);
......@@ -23,4 +25,12 @@ public class CurrentUtil {
// TODO: 2021/5/14 dev联调API未启用token默认使用1
return CollectionUtils.isEmpty(tokenClaims) ? "1" : (String) tokenClaims.get("uid");
}
public static String getCliSource() {
return ServletUtils.getRequest().getHeader(CLI_SOURCE);
}
public static String getCliVersion() {
return ServletUtils.getRequest().getHeader(CLI_SOURCE);
}
}
......@@ -198,10 +198,13 @@ public abstract class DateUtil {
/**
* 使用参数Format将字符串转为Date
*/
public static Date parse(String strDate, String pattern)
throws ParseException {
return StringUtils.isBlank(strDate) ? null : new SimpleDateFormat(
pattern).parse(strDate);
public static Date parse(String strDate, String pattern) {
try {
return StringUtils.isBlank(strDate) ? null : new SimpleDateFormat(
pattern).parse(strDate);
} catch (ParseException e) {
return null;
}
}
public static Date asDate(LocalDate localDate) {
......@@ -256,12 +259,8 @@ public abstract class DateUtil {
* 比较日期
*/
public static int compareDay(Date date1, Date date2) {
try {
date1 = parse(format(date1, Formatter.yyyyMMdd), Formatter.yyyyMMdd.toString());
date2 = parse(format(date2, Formatter.yyyyMMdd), Formatter.yyyyMMdd.toString());
} catch (ParseException e) {
e.printStackTrace();
}
date1 = parse(format(date1, Formatter.yyyyMMdd), Formatter.yyyyMMdd.toString());
date2 = parse(format(date2, Formatter.yyyyMMdd), Formatter.yyyyMMdd.toString());
return date1.compareTo(date2);
}
......@@ -481,12 +480,8 @@ public abstract class DateUtil {
// System.out.println(new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(
// DateUtil.getBeforeDayEnd(calendarEnd,-1)));
try {
long dayNum = DateUtil.intervalHours(DateUtil.parse("2016-08-31 18:02:00", "yyyy-MM-dd HH:mm:ss"), new Date());
System.out.print("dayNum=======" + dayNum);
} catch (ParseException e) {
e.printStackTrace();
}
// long dayNum = DateUtil.intervalHours(DateUtil.parse("2016-08-31 18:02:00", "yyyy-MM-dd HH:mm:ss"), new Date());
// System.out.print("dayNum=======" + dayNum);
// Set<String> holidays = new HashSet<>();
// holidays.add("20160416");
......
......@@ -6,6 +6,7 @@ import com.liquidnet.service.base.ResponseDto;
import feign.hystrix.FallbackFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
......@@ -23,4 +24,13 @@ public interface FeignAdamBaseClient {
@PostMapping("addr/query/{id}")
ResponseDto<AdamAddressesVo> queryAddresses(@PathVariable(name = "id") String addrId,
@RequestParam(name = "uid", required = false) String uid);
/**
* 判断是否会员
*
* @param uid 用户ID
* @return 是否会员:true-是
*/
@GetMapping("member/check/{uid}")
ResponseDto<Boolean> isMember(@PathVariable String uid);
}
package com.liquidnet.service.adam.dto.vo;
import com.liquidnet.service.adam.entity.AdamUserMember;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
@ApiModel(value = "AdamUserMemberVo", description = "会员用户信息")
@Data
......
......@@ -131,6 +131,9 @@ public class AdamLoginController {
Map<String, Object> claimsMap = new HashMap<>();
claimsMap.put("uid", userInfoVo.getUid());
// TODO: 2021/5/25 修改手机号更新TOKEN
claimsMap.put("mobile", userInfoVo.getMobile());
claimsMap.put("nickname", userInfoVo.getNickname());
loginInfoVo.setToken(this.ssoProcess(claimsMap));
return ResponseDto.success(loginInfoVo);
}
......@@ -161,6 +164,8 @@ public class AdamLoginController {
Map<String, Object> claimsMap = new HashMap<>();
claimsMap.put("uid", userInfoVo.getUid());
claimsMap.put("mobile", userInfoVo.getMobile());
claimsMap.put("nickname", userInfoVo.getNickname());
loginInfoVo.setToken(this.ssoProcess(claimsMap));
return ResponseDto.success(AdamLoginInfoVo.getNew());
}
......@@ -190,6 +195,8 @@ public class AdamLoginController {
Map<String, Object> claimsMap = new HashMap<>();
claimsMap.put("uid", loginInfoVo.getUserInfo().getUid());
claimsMap.put("mobile", loginInfoVo.getUserInfo().getMobile());
claimsMap.put("nickname", loginInfoVo.getUserInfo().getNickname());
loginInfoVo.setToken(this.ssoProcess(claimsMap));
return ResponseDto.success(loginInfoVo);
}
......
......@@ -2,17 +2,23 @@ package com.liquidnet.service.adam.controller;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.service.adam.dto.vo.AdamUserMemberVo;
import com.liquidnet.service.adam.service.IAdamMemberOrderService;
import com.liquidnet.service.adam.service.IAdamUserMemberService;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.adam.dto.vo.AdamMemberVo;
import com.liquidnet.service.adam.service.IAdamMemberService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.Date;
@ApiSupport(order = 10030)
@Api(tags = "会员信息")
......@@ -25,6 +31,8 @@ public class AdamMemberController {
IAdamMemberService adamMemberService;
@Autowired
IAdamMemberOrderService adamMemberOrderService;
@Autowired
IAdamUserMemberService adamUserMemberService;
@ApiOperationSupport(order = 0)
@ApiOperation(value = "会员信息")
......@@ -33,4 +41,26 @@ public class AdamMemberController {
AdamMemberVo info = adamMemberService.queryMemberInfo();
return ResponseDto.success(info);
}
@ApiOperationSupport(order = 1)
@ApiOperation(value = "判断是否会员")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "uid", value = "用户ID[64]", example = "1"),
})
@GetMapping("check/{uid}")
public ResponseDto<Boolean> isMember(@PathVariable String uid) {
if (StringUtils.isBlank(uid)) return ResponseDto.success(false);
AdamUserMemberVo userMemberInfo = adamUserMemberService.getUserMemberInfo(uid);
if (null != userMemberInfo) {
Integer state = userMemberInfo.getState();
if (null != state && state == 1) {
// TODO: 2021/5/25 时间界定
Date expiryAtDate = DateUtil.parse(userMemberInfo.getExpiryAt(), DateUtil.DATE_SMALL_STR);
return ResponseDto.success(null != expiryAtDate && expiryAtDate.after(DateUtil.now()));
}
}
return ResponseDto.success(false);
}
}
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