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

Commit f82a4e16 authored by 张国柄's avatar 张国柄

fix param valid for adam;

parent c172557b
......@@ -5,9 +5,7 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;
import javax.validation.constraints.*;
@ApiModel(value = "AdamAddressesParam", description = "添加/编辑收获地址入参")
@Data
......@@ -16,7 +14,7 @@ public class AdamAddressesParam implements java.io.Serializable {
@ApiModelProperty(position = 10, required = false, value = "收获地址ID,编辑时必传[64]")
private String addressesId;
@ApiModelProperty(position = 11, required = true, value = "姓名[50]", example = "Swagger")
@Size(min = 1, max = 30, message = "姓名长度限制1~30位字符")
@Size(min = 1, max = 30)
private String name;
@ApiModelProperty(position = 12, required = true, value = "手机号[11]", example = "13111111111")
@Pattern(regexp = "\\d{11}", message = "手机号格式有误")
......@@ -25,13 +23,13 @@ public class AdamAddressesParam implements java.io.Serializable {
@Pattern(regexp = LnsRegex.Valid.CHINESE_PCD, message = "省份必须为2~30位汉字")
private String province;
@ApiModelProperty(position = 14, required = true, value = "城市[30]", example = "北京城区")
@NotNull(message = "城市不能为空")
@NotNull()
@Pattern(regexp = LnsRegex.Valid.CHINESE_PCD, message = "城市必须为2~30位汉字")
private String city;
@ApiModelProperty(position = 15, required = true, value = "区县[30]", example = "朝阳区")
@Pattern(regexp = LnsRegex.Valid.CHINESE_PCD, message = "区县必须为2~30位汉字")
private String county;
@ApiModelProperty(position = 16, required = true, value = "详细地址[100]", example = "广渠路1号创1958园区")
@Size(max = 100, message = "详细地址长度最长100位")
@Size(max = 100)
private String address;
}
......@@ -5,8 +5,7 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.Pattern;
import javax.validation.constraints.Size;
import javax.validation.constraints.*;
@ApiModel(value = "AdamEntersParam", description = "添加/编辑入场人入参")
@Data
......@@ -21,7 +20,7 @@ public class AdamEntersParam implements java.io.Serializable {
@Pattern(regexp = "\\d{11}", message = "手机号格式有误")
private String mobile;
@ApiModelProperty(position = 13, required = true, value = "证件类型:1-大陆身份证,2-港澳通行证,3-台胞证,4-护照,5-军官证", allowableValues = "1,2,3,4,5")
@Pattern(regexp = "\\b(1,2,3,4,5)\\b", message = "证件类型无效")
@NotNull @Min(1) @Max(5)
private Integer type;
@ApiModelProperty(position = 14, required = true, value = "入场人证件号[11]", example = "110101110001010111")
@Pattern(regexp = LnsRegex.Valid.CHINESE_ID_CARD, message = "身份证号格式有误")
......
......@@ -11,9 +11,9 @@ import java.util.List;
@Data
public class AdamMemberParam implements Serializable {
private static final long serialVersionUID = -7411934614249221021L;
@ApiModelProperty(position = 0, required = false, value = "会员ID[50]", example = "62960077673504768")
@ApiModelProperty(position = 0, required = false, value = "会员ID[50]")
private String memberId;
@ApiModelProperty(position = 1, required = false, value = "会员名称[50]", example = "摩登天空会员卡")
@ApiModelProperty(position = 1, required = true, value = "会员名称[50]", example = "摩登天空会员卡")
private String name;
@ApiModelProperty(position = 2, required = true, value = "会员标题[50]", example = "摩登天空会员卡")
private String title;
......@@ -21,7 +21,7 @@ public class AdamMemberParam implements Serializable {
private String subTitle;
@ApiModelProperty(position = 4, required = true, value = "icon图标[200]", example = "https://img.zhengzai.tv/files/2020/08/28/5f490418d30b4.png")
private String icon;
@ApiModelProperty(position = 5, required = true, value = "会员头像[200]", example = "https://img.zhengzai.tv/files/2020/08/31/5f4c75095e9bc.pngv")
@ApiModelProperty(position = 5, required = true, value = "会员头像[200]", example = "https://img.zhengzai.tv/files/2020/08/31/5f4c75095e9bc.png")
private String avatar;
@ApiModelProperty(position = 6, required = true, value = "权益详情[200]", example = "加入摩登天空会员您可享受到.....")
private String interestsDetail;
......
......@@ -16,52 +16,20 @@ public class AdamMemberPriceParam implements Serializable {
private static final long serialVersionUID = -6432796310264973696L;
@ApiModelProperty(position = 0, required = false, value = "价格id")
private Integer mid;
/**
* 会员价格ID
*/
@ApiModelProperty(position = 1, required = false, value = "会员价格ID")
private String memberPriceId;
/**
* 会员类型ID
*/
@ApiModelProperty(position = 2, required = false, value = "会员类型ID")
private String memberId;
/**
* 状态 0 不可用 1上线中 2已下线
*/
@ApiModelProperty(position = 3, required = false, value = "状态0 不可用 1上线中 2已下线", allowableValues = "0,1,2")
private Integer status;
/**
* 会员包名称
*/
@ApiModelProperty(position = 4, required = false, value = "会员价格包名称", example = "年卡")
private String name;
/**
* 原价
*/
@ApiModelProperty(position = 5, required = false, value = "原价", example = "199")
private BigDecimal price;
/**
* 折扣价
*/
@ApiModelProperty(position = 6, required = false, value = "折扣价", example = "199")
private BigDecimal priceFixed;
/**
* 会员包有效天数
*/
@ApiModelProperty(position = 7, required = false, value = "会员包有效天数", example = "365")
private Integer days;
/**
* 会员包须知
*/
@ApiModelProperty(position = 8, required = false, value = "会员包须知", example = "会员包须知")
private String detail;
}
......@@ -17,13 +17,13 @@ public class AdamThirdPartParam implements Serializable {
@ApiModelProperty(position = 11, required = true, value = "第三方OPENID[64]")
private String openId;
@ApiModelProperty(position = 12, required = true, value = "昵称[64]", example = "Swagger")
@Size(min = 2, max = 64, message = "昵称字符长度限制2~64位")
@Size(min = 2, max = 64)
private String nickname;
@ApiModelProperty(position = 13, required = true, value = "头像[255]", example = "http://pic.zhengzai.tv/default/avatar.png")
@Size(max = 255, message = "头像字符长度大于255位")
@Size(max = 255)
private String avatar;
@ApiModelProperty(position = 14, required = true, value = "平台类型[255]", allowableValues = "WEIBO,WECHAT,QQ")
@Pattern(regexp = "\\b(WEIBO,WECHAT,QQ)\\b", message = "平台类型无效")
//@Pattern(regexp = "\\b(WEIBO,WECHAT,QQ)\\b", message = "平台类型无效")
private String platform;
@ApiModelProperty(position = 15, required = false, value = "手机号[新账号时必传]", example = "13111111111")
private String mobile;
......
......@@ -18,27 +18,27 @@ import java.util.List;
public class AdamUserInfoParam implements java.io.Serializable {
private static final long serialVersionUID = -1084524066864012398L;
@ApiModelProperty(position = 11, required = true, value = "头像[255]", example = "http://pic.zhengzai.tv/default/avatar.png")
@Size(max = 255, message = "头像字符长度大于255位")
@Size(max = 255)
private String avatar;
@ApiModelProperty(position = 12, required = true, value = "背景[255]", example = "https://img.zhengzai.tv/files/2021/01/13/5ffeab3584b7d.png")
@Size(max = 255, message = "背景字符长度大于255位")
@Size(max = 255)
private String background;
@ApiModelProperty(position = 13, required = true, value = "昵称[32]", example = "Swagger")
@Size(min = 2, max = 64, message = "昵称字符长度限制2~64位")
@Size(min = 2, max = 64)
private String nickname;
@ApiModelProperty(position = 14, required = true, value = "性别[32]", example = "{\"val\":\"MS00\",\"desc\":\"其他性别\"}")
@NotNull(message = "性别标签不能为空")
@NotNull
private AdamTagVo sex;
@ApiModelProperty(position = 15, required = true, value = "生日[YYYY-MM-DD]", example = "2021-05-17")
@Pattern(regexp = LnsRegex.Valid.DATETIME_YMD, message = "时间格式有误")
private String birthday;
@ApiModelProperty(position = 16, required = true, value = "常住地/区域[100]", example = "北京 北京市 朝阳区")
@NotBlank(message = "常住地/区域不能为空")
@NotBlank
private String area;
@ApiModelProperty(position = 17, required = true, value = "签名[255]", example = "...................")
@Size(max = 255, message = "签名过长")
@Size(max = 255)
private String signature;
@ApiModelProperty(position = 18, required = true, value = "标签[500]", example = "[{\"val\":\"MMS01\",\"desc\":\"民歌\",\"tagVos\":[{\"val\":\"MMS0101\",\"desc\":\"A\"},{\"val\":\"MMS0102\",\"desc\":\"B\"}]},{\"val\":\"MMS02\",\"desc\":\"house\",\"tagVos\":[{\"val\":\"MMS0201\",\"desc\":\"C\"}]}]")
@NotNull(message = "风格标签不能为空")
@NotNull
private List<AdamTagParentVo> tagMe;
}
......@@ -63,6 +63,8 @@ public interface IAdamRdmService {
AdamMemberSimpleVo getMemberSimpleVo();
String getMemberAgreement();
boolean setTagsForSex(List<AdamTagVo> voList);
List<AdamTagVo> getTagsForSex();
......
......@@ -11,14 +11,15 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.FieldError;
import org.springframework.web.bind.MethodArgumentNotValidException;
import org.springframework.web.bind.MissingServletRequestParameterException;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.context.request.WebRequest;
import javax.servlet.http.HttpServletRequest;
import javax.validation.ConstraintViolation;
import javax.validation.ConstraintViolationException;
......@@ -37,24 +38,25 @@ public class RestControllerAdviceHandler {
@ExceptionHandler(value = Exception.class)
@ResponseBody
public ResponseEntity<Error> serviceExceptionHandler(Exception rex, WebRequest request) {
logger.error("serviceExceptionHandler request:{},param:{}", request.getContextPath(), JSON.toJSONString(request.getParameterMap()));
if (rex instanceof ConstraintViolationException) {
ConstraintViolationException ygex = ((ConstraintViolationException) rex);
String message = ((ConstraintViolation) ygex.getConstraintViolations().toArray()[0]).getMessage();
logger.error("ConstraintViolationException code:{},msg:{}", ErrorCode.HTTP_PARAM_ERROR.getCode(), message);
return new ResponseEntity<Error>(new Error(ErrorCode.HTTP_PARAM_ERROR.getCode(), message), HttpStatus.OK);
}
public ResponseEntity<Error> serviceExceptionHandler(Exception rex, HttpServletRequest req) {
logger.error("Handler.RestControllerEx:{},ex:{},request:{},param:{}",
rex.getClass().getSimpleName(), rex.getLocalizedMessage(), req.getRequestURI(), JSON.toJSONString(req.getParameterMap()));
if (rex instanceof MissingServletRequestParameterException) {
MissingServletRequestParameterException ygex = ((MissingServletRequestParameterException) rex);
String message = ygex.getMessage();
logger.error("ConstraintViolationException code:{},msg:{}", ErrorCode.HTTP_PARAM_ERROR.getCode(), message);
return new ResponseEntity<Error>(new Error(ErrorCode.HTTP_PARAM_ERROR.getCode(), message), HttpStatus.OK);
}
if (rex instanceof ConstraintViolationException) {
ConstraintViolationException ygex = ((ConstraintViolationException) rex);
ConstraintViolation violation = (ConstraintViolation) ygex.getConstraintViolations().toArray()[0];
String violationNode = violation.getPropertyPath().toString();
String message = violationNode.substring(violationNode.indexOf(".") + 1) + violation.getMessage();
return new ResponseEntity<Error>(new Error(ErrorCode.HTTP_PARAM_ERROR.getCode(), message), HttpStatus.OK);
}
if (rex instanceof MethodArgumentNotValidException) {
MethodArgumentNotValidException ygex = ((MethodArgumentNotValidException) rex);
String message = ygex.getBindingResult().getFieldErrors().get(0).getDefaultMessage();
logger.error("ConstraintViolationException code:{},msg:{}", ErrorCode.HTTP_PARAM_ERROR.getCode(), message);
FieldError fieldError = ygex.getBindingResult().getFieldErrors().get(0);
String message = fieldError.getField() + fieldError.getDefaultMessage();
return new ResponseEntity<Error>(new Error(ErrorCode.HTTP_PARAM_ERROR.getCode(), message), HttpStatus.OK);
}
if (rex instanceof LiquidnetFeignException) {
......@@ -62,7 +64,6 @@ public class RestControllerAdviceHandler {
String errorCode = ygex.errorCode().getCode();
String message = ygex.getMessage();
message = message == null ? ygex.errorCode().getMessage() : message;
logger.error("LiquidnetFeignException code:{},msg:{}", errorCode, ygex.getMessage());
return new ResponseEntity<Error>(new Error(errorCode, message), HttpStatus.OK);
}
if (rex instanceof LiquidnetServiceException) {
......@@ -70,10 +71,8 @@ public class RestControllerAdviceHandler {
String errorCode = ygex.errorCode().getCode();
String message = ygex.getMessage();
message = message == null ? ygex.errorCode().getMessage() : message;
logger.error("LiquidnetServiceException code:{},msg:{}", errorCode, ygex.getMessage());
return new ResponseEntity<Error>(new Error(errorCode, message), HttpStatus.OK);
} else {
logger.error("serviceExceptionHandler unknown exception", rex);
return new ResponseEntity<Error>(new Error(ErrorCode.HTTP_SYSTEM_ERROR.getCode(), ErrorCode.HTTP_SYSTEM_ERROR.getMessage()), HttpStatus.OK);
}
}
......
......@@ -20,7 +20,8 @@ public class AdamRedisConst {
public static final String INFO_TAGS_SEX = INFO.concat("tags:sex");
public static final String INFO_TAGS_MUSIC = INFO.concat("tags:sex");
public static final String INFO_MEMBER_SIMPLE = INFO.concat("member_simple");
public static final String INFO_MEMBER_SIMPLE = INFO.concat("member:simple");
public static final String INFO_MEMBER_AGREEMENT = INFO.concat("member:agreement");
public static final String INFO_MEMBERS = ADAM.concat(":list:members");
public static final String INFO_MEMBERS_INFO = ADAM.concat(":list:members:info:");
......
......@@ -81,7 +81,7 @@ public class AdamAddressesController {
@ApiOperationSupport(order = 3)
@ApiOperation(value = "设置默认收货地址")
@PostMapping("def/{addrId}")
public ResponseDto<Object> def(@NotBlank(message = "收货地址ID不能为空") @PathVariable String addrId) {
public ResponseDto<Object> def(@NotBlank @PathVariable String addrId) {
String currentUid = CurrentUtil.getCurrentUid();
AdamAddresses addresses = adamRdmService.getAddressesByUidAddressesId(currentUid, addrId);
......@@ -115,7 +115,7 @@ public class AdamAddressesController {
@ApiOperationSupport(order = 5)
@ApiOperation(value = "删除收获地址")
@PostMapping("del/{addrId}")
public ResponseDto<Object> del(@NotBlank(message = "收货地址ID不能为空") @PathVariable String addrId) {
public ResponseDto<Object> del(@NotBlank @PathVariable String addrId) {
String currentUid = CurrentUtil.getCurrentUid();
......@@ -129,8 +129,8 @@ public class AdamAddressesController {
@ApiOperationSupport(order = 6)
@ApiOperation(value = "收货地址详情")
@PostMapping("query/{id}")
public ResponseDto<AdamAddressesVo> query(@NotBlank(message = "收货地址ID不能为空") @PathVariable(name = "id") String addrId,
@NotBlank(message = "用户ID不能为空") @RequestParam(required = false) String uid) {
public ResponseDto<AdamAddressesVo> query(@NotBlank @PathVariable(name = "id") String addrId,
@NotBlank @RequestParam(required = false) String uid) {
AdamAddresses addresses = adamRdmService.getAddressesByUidAddressesId(StringUtils.isBlank(uid) ? CurrentUtil.getCurrentUid() : uid, addrId);
return null == addresses ? ResponseDto.failure(ErrorMapping.get(10105)) : ResponseDto.success(AdamAddressesVo.getNew().copy(addresses));
......
......@@ -44,9 +44,9 @@ public class AdamCollectionController {
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "contentId", value = "内容ID[1,64]"),
})
@PostMapping("add")
public ResponseDto<Object> add(@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "收藏类型无效")
public ResponseDto<Object> add(//@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "收藏类型无效")
@RequestParam String type,
@Size(min = 1, max = 64, message = "内容ID长度限制为1~64位字符")
@Size(min = 1, max = 64)
@RequestParam String contentId) {
String currentUid = CurrentUtil.getCurrentUid();
......@@ -69,9 +69,9 @@ public class AdamCollectionController {
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "contentIds", value = "内容ID[多个ID用','分隔]"),
})
@PostMapping("del")
public ResponseDto<Object> del(@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "收藏类型无效")
public ResponseDto<Object> del(//@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "收藏类型无效")
@RequestParam String type,
@NotBlank(message = "内容Id不能为空") @RequestParam String contentIds) {
@NotBlank @RequestParam String contentIds) {
adamCollectionService.del(CurrentUtil.getCurrentUid(), type, contentIds.split(","));
return ResponseDto.success();
......@@ -85,7 +85,7 @@ public class AdamCollectionController {
@ApiImplicitParam(type = "form", required = false, dataType = "Integer", name = "pageSize", value = "页展示条数", example = "5"),
})
@PostMapping("list")
public ResponseDto<PageInfo<AdamCollectVo>> list(@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "收藏类型无效")
public ResponseDto<PageInfo<AdamCollectVo>> list(//@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "收藏类型无效")
@RequestParam String type,
@RequestParam(defaultValue = "1", required = false) int pageNo,
@RequestParam(defaultValue = "5", required = false) int pageSize) {
......@@ -117,9 +117,9 @@ public class AdamCollectionController {
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "contentId", value = "内容ID[64]"),
})
@GetMapping("state")
public ResponseDto<Boolean> state(@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "收藏类型无效")
public ResponseDto<Boolean> state(//@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "收藏类型无效")
@RequestParam String type,
@Size(min = 1, max = 64, message = "内容ID长度限制为1~64位字符")
@Size(min = 1, max = 64)
@RequestParam String contentId) {
return ResponseDto.success(adamCollectionService.queryState(CurrentUtil.getCurrentUid(), type, contentId));
}
......
......@@ -45,9 +45,9 @@ public class AdamDisposedController {
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "contentId", value = "内容ID[1,64]"),
})
@PostMapping("add")
public ResponseDto<Object> add(@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "想去类型无效")
public ResponseDto<Object> add(//@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "想去类型无效")
@RequestParam String type,
@Size(min = 1, max = 64, message = "内容ID长度限制为1~64位字符")
@Size(min = 1, max = 64)
@RequestParam String contentId) {
String currentUid = CurrentUtil.getCurrentUid();
......@@ -71,9 +71,9 @@ public class AdamDisposedController {
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "contentIds", value = "内容ID[多个ID用','分隔]"),
})
@PostMapping("del")
public ResponseDto<Object> del(@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "想去类型无效")
public ResponseDto<Object> del(//@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "想去类型无效")
@RequestParam String type,
@NotBlank(message = "内容Id不能为空") @RequestParam String contentIds) {
@NotBlank @RequestParam String contentIds) {
adamDisposedService.del(CurrentUtil.getCurrentUid(), type, contentIds.split(","));
return ResponseDto.success();
......@@ -87,7 +87,7 @@ public class AdamDisposedController {
@ApiImplicitParam(type = "form", required = false, dataType = "Integer", name = "pageSize", value = "页展示条数", example = "5"),
})
@PostMapping("list")
public ResponseDto<PageInfo<AdamDisposedVo>> list(@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "想去类型无效")
public ResponseDto<PageInfo<AdamDisposedVo>> list(//@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "想去类型无效")
@RequestParam String type,
@RequestParam(defaultValue = "1", required = false) int pageNo,
@RequestParam(defaultValue = "5", required = false) int pageSize) {
......@@ -106,9 +106,9 @@ public class AdamDisposedController {
@ApiImplicitParam(type = "form", required = false, dataType = "Integer", name = "pageSize", value = "页展示条数", example = "10"),
})
@PostMapping("list/user")
public ResponseDto<PageInfo<AdamDisposedUserVo>> listUser(@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "想去类型无效")
public ResponseDto<PageInfo<AdamDisposedUserVo>> listUser(//@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "想去类型无效")
@RequestParam String type,
@Size(min = 1, max = 64, message = "内容ID长度限制为1~64位字符")
@Size(min = 1, max = 64)
@RequestParam String contentId,
@RequestParam(defaultValue = "1", required = false) int pageNo,
@RequestParam(defaultValue = "10", required = false) int pageSize) {
......@@ -125,9 +125,9 @@ public class AdamDisposedController {
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "contentId", value = "内容ID[64]"),
})
@GetMapping("state")
public ResponseDto<Boolean> state(@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "想去类型无效")
public ResponseDto<Boolean> state(//@Pattern(regexp = "\\b(TICKET,VIDEO)\\b", message = "想去类型无效")
@RequestParam String type,
@Size(min = 1, max = 64, message = "内容ID长度限制为1~64位字符")
@Size(min = 1, max = 64)
@RequestParam String contentId) {
return ResponseDto.success(adamDisposedService.queryState(CurrentUtil.getCurrentUid(), type, contentId));
}
......
......@@ -81,7 +81,7 @@ public class AdamEntersController {
@ApiOperationSupport(order = 3)
@ApiOperation(value = "设置默认入场人")
@PostMapping("def/{entersId}")
public ResponseDto<Object> def(@NotBlank(message = "入场人ID不能为空") @PathVariable String entersId) {
public ResponseDto<Object> def(@NotBlank @PathVariable String entersId) {
String currentUid = CurrentUtil.getCurrentUid();
AdamEnters enters = adamRdmService.getEntersByUidEntersId(currentUid, entersId);
if (null == enters) return ResponseDto.failure(ErrorMapping.get("10105"));
......@@ -118,7 +118,7 @@ public class AdamEntersController {
@ApiOperationSupport(order = 5)
@ApiOperation(value = "删除入场人")
@PostMapping("del/{entersId}")
public ResponseDto<Object> del(@NotBlank(message = "入场人ID不能为空") @PathVariable String entersId) {
public ResponseDto<Object> del(@NotBlank @PathVariable String entersId) {
String currentUid = CurrentUtil.getCurrentUid();
AdamEnters enters = adamRdmService.getEntersByUidEntersId(currentUid, entersId);
......@@ -130,9 +130,9 @@ public class AdamEntersController {
@ApiOperationSupport(order = 6)
@ApiOperation(value = "入场人详情")
@PostMapping("query/{id}")
public ResponseDto<AdamEntersVo> query(@NotBlank(message = "入场人ID不能为空") @PathVariable(name = "id") String entersId,
@NotBlank(message = "用户ID不能为空") @RequestParam(required = false) String uid) {
@PostMapping("query/{entersId}")
public ResponseDto<AdamEntersVo> query(@NotBlank @PathVariable String entersId,
@NotBlank @RequestParam(required = false) String uid) {
AdamEnters info = adamRdmService.getEntersByUidEntersId(StringUtils.isBlank(uid) ? CurrentUtil.getCurrentUid() : uid, entersId);
return null == info ? ResponseDto.failure(ErrorMapping.get(10105)) : ResponseDto.success(AdamEntersVo.getNew().copy(info));
......
......@@ -18,18 +18,21 @@ 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.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.validation.constraints.NotBlank;
import java.util.Date;
@ApiSupport(order = 10030)
@Api(tags = "会员信息")
@Slf4j
@Validated
@RestController
@RequestMapping("/member")
@RequestMapping("member")
public class AdamMemberController {
@Autowired
IAdamRdmService adamRdmService;
......@@ -38,7 +41,6 @@ public class AdamMemberController {
@Autowired
IAdamUserMemberService adamUserMemberService;
@ApiOperationSupport(order = 0)
@ApiOperation(value = "会员信息")
@GetMapping("info")
......@@ -59,7 +61,13 @@ public class AdamMemberController {
@ApiOperation(value = "会员协议")
@GetMapping("agreement")
public ResponseDto<String> agreement() {
return ResponseDto.success("<p style=\"text-align: center;\"><span class=\"ql-size-large\">摩登天空登登登会员服务协议</span></p><p style=\"text-align: center;\"><br></p><p style=\"text-align: center;\">本版本更新时间:2021年1月26日&nbsp;</p><p style=\"text-align: right;\">&nbsp;</p><p style=\"text-align: justify;\">一 、接受协议</p><p style=\"text-align: justify;\">1.1一旦您注册成为摩登天空登登登会员用户,便表示您(以下简称“用户”)已经完全理解并同意接受本协议(以下简称“协议”)。</p><p style=\"text-align: justify;\">1.2在您接受本协议之后,本协议可能因国家政策、产品与/或服务以及履行本协议的环境发生变化而进行修改,一旦本协议内容发生变更的,本网站将在相应页面、站内信或以其他合理方式进行通知,请您仔细阅读。如您在本协议更新后继续使用摩登天空登登登会员服务,即表示您已充分阅读、理解并接受更新后的本协议并愿意接受更新后的协议约束。如果您不同意变更的内容,您可以选择停止使用摩登天空登登登会员服务。更新后的协议自发布之日起生效。</p><p style=\"text-align: justify;\">1.3若您是未成年人,请您在监护人监护、指导下阅读并决定是否同意本协议。未成年人行使和履行本协议项下的权利和义务视为已获得了监护人的认可。</p><p style=\"text-align: justify;\">&nbsp;</p><p style=\"text-align: justify;\">二、服务内容</p><p style=\"text-align: justify;\">2.1摩登天空登登登会员是指完成了成为会员的所有程序,且在遵守本协议的前提下,在会员时长有效期内享受摩登天空提供的登登登会员服务的自然人。</p><p style=\"text-align: justify;\"><strong>2.2 摩登天空有权根据法律法规及政策变更,合作方要求以及自身运营策略变更对登登登会员服务内容(包括但不限于登登登会员权益细则,收费标准和收费方式)进行部分或全部变更。就前述变更,本网站将在相应页面、站内信或以其他合理方式进行发布,发布之后立即生效。如果您不同意变更的内容,您可以选择停止使用摩登天空登登登会员服务。</strong></p><p style=\"text-align: justify;\">2.3摩登天空登登登会员服务协议是《正在现场注册协议》以及《正在现场隐私权保护协议》的补充协议。</p><p style=\"text-align: justify;\">&nbsp;</p><p style=\"text-align: justify;\">三、会员账号及权益</p><p style=\"text-align: justify;\">3.1在用户的登登登会员服务有效期内,用户在本网站所使用的账号即为用户的登登登会员账号。用户有责任维持自己所注册的账号和密码的安全,用户应对所有使用本人的密码及账号的活动负完全责任。用户同意:(a) 本人的密码或账号遭到未获授权的使用。或者发生其他任何安全问题时,请立即通知本网站,且(b)每次上网完毕都会把本人的账号关掉。<strong>如未能依前述规定行事,对于任何人利用该密码及账号所进行的任何行为,用户应负完全的责任。对于因此而产生的任何损失或损害,本网站无法也不承担任何责任。 根据有关法律法规,本网站在此郑重提请用户注意,任何经由我们的服务以上载、张贴、发送电子邮件或其他任何方式传送的资讯、资料、文字、软件、音乐、音讯、照片、图形、视讯、信息或其它资料(以下简称“内容”),无论系公开还是私下传送,均由内容提供者、上传者承担责任。本网站无法控制经由我们的服务传送之内容,因此不保证内容的正确性、完整性或品质。 如用户已预知使用我们的服务时,可能会接触到令人不适之内容,在任何情况下,本网站均不为此负责。包含但不限于任何内容之任何错误或遗漏,以及经由我们的服务及张贴、发送电子邮件或其它方式传送任何内容而衍生之任何损失或损害。本网站有权依法停止传输任何前述内容并采取相应行动,包含但不限于暂停用户使用我们的服务的全部或部分,保持有关记录,并向有关机关报备。</strong></p><p style=\"text-align: justify;\">3.2 登登登会员权益:</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;摩登天空登登登会员权益包括:</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.超过百场演出优先购票权、入场权及专属通道*</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.会员专属纪念品礼盒</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.会员独享限定款商品及音像制品的购买权利(专属商品上线)</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4.超过百款商品的会员优惠价</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.会员专属的演出以及线上线下活动</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.会员专属的视频音频节目</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.想不到的惊喜</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.免费观演以及免费商品的抽奖权利。</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>(具体享有会员权益的演出场次和商品以本网站指定为准)</strong></p><p style=\"text-align: justify;\"><strong>本网站可能会根据法律法规及政策变更、版权状态变化、自身运营策略对前述会员权益作出部分修改。</strong></p><p style=\"text-align: justify;\">3.3 登登登会员服务期限及延期:</p><p style=\"text-align: justify;\"><strong>用户的登登登会员服务的服务期限自用户成为登登登会员之时起算,以用户自行选择并支付相应会员费用对应的服务期限为准,用户可以通过登录本网站会员中心免费查询。该期限不因您未使用等情况而延长。当会员服务期限到期后,本网站将停止继续向您提供登登登会员服务;但如您开通自动续费服务且您在服务期限到期前续费成功的,会员服务期限将在原服务期限的基础上顺延。</strong></p><p style=\"text-align: justify;\">&nbsp;</p><p style=\"text-align: justify;\">四、隐私保护</p><p style=\"text-align: justify;\">4.1 本网站保证不对外公开或向第三方提供单个用户的注册资料及用户在使用网络服务时存储在本网站的非公开内容,但下列情况除外:</p><p style=\"text-align: justify;\">4.1.1事先获得用户的明确授权;</p><p style=\"text-align: justify;\">4.1.2根据有关的法律法规要求;</p><p style=\"text-align: justify;\">4.1.3按照相关政府主管部门的要求;</p><p style=\"text-align: justify;\">4.1.4为维护社会公众的利益;</p><p style=\"text-align: justify;\">4.1.5为维护本网站的合法权益;</p><p style=\"text-align: justify;\">4.1.6其他需要公开、编辑或透露个人信息的情况。</p><p style=\"text-align: justify;\"><strong>4.2 本网站可能会与第三方合作向用户提供相关的网络服务,在此情况下,如第三方同意承担与本网站同等的保护用户隐私的责任,则本网站有权将用户的注册资料等提供给该第三方。</strong></p><p style=\"text-align: justify;\"><strong>4.3 在不透露单个用户隐私资料的前提下,本网站有权对整个用户数据库进行分析并对用户数据库进行商业上的利用。</strong></p><p style=\"text-align: justify;\">&nbsp;</p><p>五、服务终止</p><p>本网站终止摩登天空登登登会员服务包括但不限于如下情况:</p><p>1. 用户自主提出的</p><p>2. 用户利用会员身份获得/购得的音乐节以及场馆演出类门票或商城商品,不得转让、代拍。如果私自转让或代拍,一经本网站发现,本网站有权取消该用户的会员资格且该用户利用会员身份进行转票/代拍所获得/购得的音乐节以及场馆演出类门票视为无效(本网站有权视具体情况要求该用户寄回或直接作废),同时清算该用户的使用权益并退回差价。会员权益计价按如下标准执行:</p><p>&nbsp;</p><p>1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;优先购票权、入场权及专属通道按照50元/次计价</p><p>2)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;会员专属纪念品礼盒按照100元计价</p><p>3)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;会员专属优惠商品的会员优惠价按照实际优惠价格计算</p><p>4)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;会员专属的演出以及线上线下活动,已经观看的按照50元/次计价</p><p>5)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;抽取到会员免费观演以及免费商品的按照实际演出和商品的价格计算</p><p style=\"text-align: justify;\">&nbsp;</p><p style=\"text-align: justify;\">l&nbsp;用户存在或本网站独立判断用户存在任何违反国家法律法规或监管政策的行为</p><p style=\"text-align: justify;\">l&nbsp;根据法律法规、政策规定、维护账号与系统安全等紧急情况以及不可抗力因素等其他本网站无法抗拒的情况</p><p style=\"text-align: justify;\">&nbsp;</p><p style=\"text-align: justify;\">六、通知送达</p><p style=\"text-align: justify;\">6.1本网站对于摩登天空登登登用户所有的通知均可通过网页公告、电子邮件、手机短信或其他常规的信件传送等方式进行;该等通知于发送之日视为已送达收件人。</p><p style=\"text-align: justify;\">6.2用户对于本网站的通知应当通过本网站对外正式公布的通信地址、传真号码、电子邮件等联系信息进行送达。</p><p style=\"text-align: justify;\">&nbsp;</p><p style=\"text-align: justify;\">七、责权限制</p><p style=\"text-align: justify;\">用户明确了解并同意,基于以下原因造成的包括但不限于利益、信誉、应用、数据损失或其它无形损失,本网站不承担任何直接、间接、附带、特别、衍生性或惩罚性赔偿责任(即使本网站事先已被告知发生此种赔偿之可能性亦然): (i)我们的服务之使用或无法使用,(ii)为替换从或通过我们的服务购买或取得之任何商品、数据、信息、服务、收到的讯息,或缔结之交易而发生的成本,(iii)用户的传输数据遭到未获授权的存取或编造,(iv)任何第三方在我们的服务中所做之声明或行为;或(v)与我们的服务相关的其它事宜,但本协议有明确规定的除外。</p><p style=\"text-align: justify;\">&nbsp;</p><p style=\"text-align: justify;\">八、法律管辖与适用</p><p style=\"text-align: justify;\">8.1 本服务协议的生效、履行、解释及争议的解决均适用于中华人民共和国法律。</p><p style=\"text-align: justify;\">8.2 如本协议内容或其执行发生任何争议,应尽量友好协商解决;协商不成时,您同意将争议提交至北京市朝阳区人民法院诉讼解决。双方同意,解决争议时,应以您同意的最新《摩登天空登登登会员服务协议》为准。</p><p style=\"text-align: justify;\">&nbsp;</p><p style=\"text-align: justify;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;北京正在映画互联网科技有限公司</p><p style=\"text-align: justify;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2021年1月26日</p><p style=\"text-align: justify;\">&nbsp;</p>");
String memberAgreement = adamRdmService.getMemberAgreement();
if (StringUtils.isEmpty(memberAgreement)) {
memberAgreement = "<p style=\"text-align: center;\"><span class=\"ql-size-large\">摩登天空登登登会员服务协议</span></p><p style=\"text-align: center;\"><br></p><p style=\"text-align: center;\">本版本更新时间:2021年1月26日&nbsp;</p><p style=\"text-align: right;\">&nbsp;</p><p style=\"text-align: justify;\">一 、接受协议</p><p style=\"text-align: justify;\">1.1一旦您注册成为摩登天空登登登会员用户,便表示您(以下简称“用户”)已经完全理解并同意接受本协议(以下简称“协议”)。</p><p style=\"text-align: justify;\">1.2在您接受本协议之后,本协议可能因国家政策、产品与/或服务以及履行本协议的环境发生变化而进行修改,一旦本协议内容发生变更的,本网站将在相应页面、站内信或以其他合理方式进行通知,请您仔细阅读。如您在本协议更新后继续使用摩登天空登登登会员服务,即表示您已充分阅读、理解并接受更新后的本协议并愿意接受更新后的协议约束。如果您不同意变更的内容,您可以选择停止使用摩登天空登登登会员服务。更新后的协议自发布之日起生效。</p><p style=\"text-align: justify;\">1.3若您是未成年人,请您在监护人监护、指导下阅读并决定是否同意本协议。未成年人行使和履行本协议项下的权利和义务视为已获得了监护人的认可。</p><p style=\"text-align: justify;\">&nbsp;</p><p style=\"text-align: justify;\">二、服务内容</p><p style=\"text-align: justify;\">2.1摩登天空登登登会员是指完成了成为会员的所有程序,且在遵守本协议的前提下,在会员时长有效期内享受摩登天空提供的登登登会员服务的自然人。</p><p style=\"text-align: justify;\"><strong>2.2 摩登天空有权根据法律法规及政策变更,合作方要求以及自身运营策略变更对登登登会员服务内容(包括但不限于登登登会员权益细则,收费标准和收费方式)进行部分或全部变更。就前述变更,本网站将在相应页面、站内信或以其他合理方式进行发布,发布之后立即生效。如果您不同意变更的内容,您可以选择停止使用摩登天空登登登会员服务。</strong></p><p style=\"text-align: justify;\">2.3摩登天空登登登会员服务协议是《正在现场注册协议》以及《正在现场隐私权保护协议》的补充协议。</p><p style=\"text-align: justify;\">&nbsp;</p><p style=\"text-align: justify;\">三、会员账号及权益</p><p style=\"text-align: justify;\">3.1在用户的登登登会员服务有效期内,用户在本网站所使用的账号即为用户的登登登会员账号。用户有责任维持自己所注册的账号和密码的安全,用户应对所有使用本人的密码及账号的活动负完全责任。用户同意:(a) 本人的密码或账号遭到未获授权的使用。或者发生其他任何安全问题时,请立即通知本网站,且(b)每次上网完毕都会把本人的账号关掉。<strong>如未能依前述规定行事,对于任何人利用该密码及账号所进行的任何行为,用户应负完全的责任。对于因此而产生的任何损失或损害,本网站无法也不承担任何责任。 根据有关法律法规,本网站在此郑重提请用户注意,任何经由我们的服务以上载、张贴、发送电子邮件或其他任何方式传送的资讯、资料、文字、软件、音乐、音讯、照片、图形、视讯、信息或其它资料(以下简称“内容”),无论系公开还是私下传送,均由内容提供者、上传者承担责任。本网站无法控制经由我们的服务传送之内容,因此不保证内容的正确性、完整性或品质。 如用户已预知使用我们的服务时,可能会接触到令人不适之内容,在任何情况下,本网站均不为此负责。包含但不限于任何内容之任何错误或遗漏,以及经由我们的服务及张贴、发送电子邮件或其它方式传送任何内容而衍生之任何损失或损害。本网站有权依法停止传输任何前述内容并采取相应行动,包含但不限于暂停用户使用我们的服务的全部或部分,保持有关记录,并向有关机关报备。</strong></p><p style=\"text-align: justify;\">3.2 登登登会员权益:</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;摩登天空登登登会员权益包括:</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.超过百场演出优先购票权、入场权及专属通道*</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.会员专属纪念品礼盒</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3.会员独享限定款商品及音像制品的购买权利(专属商品上线)</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4.超过百款商品的会员优惠价</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.会员专属的演出以及线上线下活动</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6.会员专属的视频音频节目</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7.想不到的惊喜</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8.免费观演以及免费商品的抽奖权利。</p><p>•&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>(具体享有会员权益的演出场次和商品以本网站指定为准)</strong></p><p style=\"text-align: justify;\"><strong>本网站可能会根据法律法规及政策变更、版权状态变化、自身运营策略对前述会员权益作出部分修改。</strong></p><p style=\"text-align: justify;\">3.3 登登登会员服务期限及延期:</p><p style=\"text-align: justify;\"><strong>用户的登登登会员服务的服务期限自用户成为登登登会员之时起算,以用户自行选择并支付相应会员费用对应的服务期限为准,用户可以通过登录本网站会员中心免费查询。该期限不因您未使用等情况而延长。当会员服务期限到期后,本网站将停止继续向您提供登登登会员服务;但如您开通自动续费服务且您在服务期限到期前续费成功的,会员服务期限将在原服务期限的基础上顺延。</strong></p><p style=\"text-align: justify;\">&nbsp;</p><p style=\"text-align: justify;\">四、隐私保护</p><p style=\"text-align: justify;\">4.1 本网站保证不对外公开或向第三方提供单个用户的注册资料及用户在使用网络服务时存储在本网站的非公开内容,但下列情况除外:</p><p style=\"text-align: justify;\">4.1.1事先获得用户的明确授权;</p><p style=\"text-align: justify;\">4.1.2根据有关的法律法规要求;</p><p style=\"text-align: justify;\">4.1.3按照相关政府主管部门的要求;</p><p style=\"text-align: justify;\">4.1.4为维护社会公众的利益;</p><p style=\"text-align: justify;\">4.1.5为维护本网站的合法权益;</p><p style=\"text-align: justify;\">4.1.6其他需要公开、编辑或透露个人信息的情况。</p><p style=\"text-align: justify;\"><strong>4.2 本网站可能会与第三方合作向用户提供相关的网络服务,在此情况下,如第三方同意承担与本网站同等的保护用户隐私的责任,则本网站有权将用户的注册资料等提供给该第三方。</strong></p><p style=\"text-align: justify;\"><strong>4.3 在不透露单个用户隐私资料的前提下,本网站有权对整个用户数据库进行分析并对用户数据库进行商业上的利用。</strong></p><p style=\"text-align: justify;\">&nbsp;</p><p>五、服务终止</p><p>本网站终止摩登天空登登登会员服务包括但不限于如下情况:</p><p>1. 用户自主提出的</p><p>2. 用户利用会员身份获得/购得的音乐节以及场馆演出类门票或商城商品,不得转让、代拍。如果私自转让或代拍,一经本网站发现,本网站有权取消该用户的会员资格且该用户利用会员身份进行转票/代拍所获得/购得的音乐节以及场馆演出类门票视为无效(本网站有权视具体情况要求该用户寄回或直接作废),同时清算该用户的使用权益并退回差价。会员权益计价按如下标准执行:</p><p>&nbsp;</p><p>1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;优先购票权、入场权及专属通道按照50元/次计价</p><p>2)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;会员专属纪念品礼盒按照100元计价</p><p>3)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;会员专属优惠商品的会员优惠价按照实际优惠价格计算</p><p>4)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;会员专属的演出以及线上线下活动,已经观看的按照50元/次计价</p><p>5)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;抽取到会员免费观演以及免费商品的按照实际演出和商品的价格计算</p><p style=\"text-align: justify;\">&nbsp;</p><p style=\"text-align: justify;\">l&nbsp;用户存在或本网站独立判断用户存在任何违反国家法律法规或监管政策的行为</p><p style=\"text-align: justify;\">l&nbsp;根据法律法规、政策规定、维护账号与系统安全等紧急情况以及不可抗力因素等其他本网站无法抗拒的情况</p><p style=\"text-align: justify;\">&nbsp;</p><p style=\"text-align: justify;\">六、通知送达</p><p style=\"text-align: justify;\">6.1本网站对于摩登天空登登登用户所有的通知均可通过网页公告、电子邮件、手机短信或其他常规的信件传送等方式进行;该等通知于发送之日视为已送达收件人。</p><p style=\"text-align: justify;\">6.2用户对于本网站的通知应当通过本网站对外正式公布的通信地址、传真号码、电子邮件等联系信息进行送达。</p><p style=\"text-align: justify;\">&nbsp;</p><p style=\"text-align: justify;\">七、责权限制</p><p style=\"text-align: justify;\">用户明确了解并同意,基于以下原因造成的包括但不限于利益、信誉、应用、数据损失或其它无形损失,本网站不承担任何直接、间接、附带、特别、衍生性或惩罚性赔偿责任(即使本网站事先已被告知发生此种赔偿之可能性亦然): (i)我们的服务之使用或无法使用,(ii)为替换从或通过我们的服务购买或取得之任何商品、数据、信息、服务、收到的讯息,或缔结之交易而发生的成本,(iii)用户的传输数据遭到未获授权的存取或编造,(iv)任何第三方在我们的服务中所做之声明或行为;或(v)与我们的服务相关的其它事宜,但本协议有明确规定的除外。</p><p style=\"text-align: justify;\">&nbsp;</p><p style=\"text-align: justify;\">八、法律管辖与适用</p><p style=\"text-align: justify;\">8.1 本服务协议的生效、履行、解释及争议的解决均适用于中华人民共和国法律。</p><p style=\"text-align: justify;\">8.2 如本协议内容或其执行发生任何争议,应尽量友好协商解决;协商不成时,您同意将争议提交至北京市朝阳区人民法院诉讼解决。双方同意,解决争议时,应以您同意的最新《摩登天空登登登会员服务协议》为准。</p><p style=\"text-align: justify;\">&nbsp;</p><p style=\"text-align: justify;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;北京正在映画互联网科技有限公司</p><p style=\"text-align: justify;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2021年1月26日</p><p style=\"text-align: justify;\">&nbsp;</p>";
}
return ResponseDto.success(memberAgreement);
}
@ApiOperationSupport(order = 2)
......@@ -67,8 +75,8 @@ public class AdamMemberController {
@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) {
@GetMapping("check")
public ResponseDto<Boolean> isMember(@NotBlank @RequestParam String uid) {
if (StringUtils.isBlank(uid)) return ResponseDto.success(false);
AdamUserMemberVo userMemberInfo = adamRdmService.getUserMemberVoByUid(uid);
......
......@@ -226,7 +226,7 @@ public class AdamUserController {
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "platform", value = "平台类型", allowableValues = "WEIBO,WECHAT,QQ"),
})
@PostMapping(value = {"tpa/unbind/{platform}"})
public ResponseDto<List<AdamThirdPartInfoVo>> unbindTpa(@Pattern(regexp = "\\b(WEIBO,WECHAT,QQ)\\b", message = "平台类型无效")
public ResponseDto<List<AdamThirdPartInfoVo>> unbindTpa(//@Pattern(regexp = "\\b(WEIBO,WECHAT,QQ)\\b", message = "平台类型无效")
@PathVariable String platform) {
String currentUid = CurrentUtil.getCurrentUid();
log.debug("unbind tpa.platform:{},uid:{}", platform, currentUid);
......
......@@ -219,6 +219,7 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
public AdamMemberSimpleVo getMemberSimpleVo() {
AdamMemberSimpleVo simpleVo = (AdamMemberSimpleVo) redisUtil.get(AdamRedisConst.INFO_MEMBER_SIMPLE);
if (null == simpleVo) {
// TODO: 2021/6/8
List<AdamMemberSimpleVo> simpleVoList = mongoTemplate.findAll(AdamMemberSimpleVo.class, AdamMemberVo.class.getSimpleName());
simpleVo = CollectionUtils.isEmpty(simpleVoList) ? null : simpleVoList.get(0);
......@@ -228,6 +229,11 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
return simpleVo;
}
@Override
public String getMemberAgreement() {
return (String) redisUtil.get(AdamRedisConst.INFO_MEMBER_AGREEMENT);
}
@Override
public boolean setTagsForSex(List<AdamTagVo> voList) {
return redisUtil.set(AdamRedisConst.INFO_TAGS_SEX, voList);
......
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