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

Commit b84bb1bd authored by jiangxiulong's avatar jiangxiulong

Merge remote-tracking branch 'origin/dev' into dev

parents 05b5881f 51a16655
......@@ -3,33 +3,42 @@ package com.liquidnet.service.adam.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NonNull;
import javax.validation.constraints.*;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* 会员价格
*/
@ApiModel(value = "AdamMemberPriceParam", description = "添加编辑会员价格")
@ApiModel(value = "AdamMemberPriceParam", description = "添加/编辑会员价格")
@Data
public class AdamMemberPriceParam implements Serializable {
private static final long serialVersionUID = -6432796310264973696L;
@ApiModelProperty(position = 0, required = false, value = "价格id")
private Integer mid;
@ApiModelProperty(position = 1, required = false, value = "会员价格ID")
@ApiModelProperty(position = 1, value = "会员价格ID")
private String memberPriceId;
@ApiModelProperty(position = 2, required = false, value = "会员类型ID")
@ApiModelProperty(position = 2, value = "会员类型ID")
@NotBlank
private String memberId;
@ApiModelProperty(position = 3, required = false, value = "状态0 不可用 1上线中 2已下线", allowableValues = "0,1,2")
private Integer status;
@ApiModelProperty(position = 4, required = false, value = "会员价格包名称", example = "年卡")
@ApiModelProperty(position = 3, value = "状态:0-不可用,1-上线中,2-已下线", allowableValues = "0,1,2")
@NonNull
@Min(0)
@Max(2)
private Integer state;
@ApiModelProperty(position = 4, value = "会员价格包名称", example = "年卡")
@Size(min = 1, max = 30)
private String name;
@ApiModelProperty(position = 5, required = false, value = "原价", example = "199")
@ApiModelProperty(position = 5, value = "原价", example = "199")
@DecimalMin("0.01")
private BigDecimal price;
@ApiModelProperty(position = 6, required = false, value = "折扣价", example = "199")
@ApiModelProperty(position = 6, value = "折扣价", example = "199")
@DecimalMin("0.01")
private BigDecimal priceFixed;
@ApiModelProperty(position = 7, required = false, value = "会员包有效天数", example = "365")
@ApiModelProperty(position = 7, value = "会员包有效天数", example = "365")
@NotNull
@Min(30)
private Integer days;
@ApiModelProperty(position = 8, required = false, value = "会员包须知", example = "会员包须知")
@ApiModelProperty(position = 8, value = "会员包须知", example = "会员包须知")
private String detail;
}
......@@ -16,7 +16,7 @@ public class AdamMemberOrderPreviewVo implements Serializable {
private String memberTitle;
@ApiModelProperty(position = 12, value = "价格详情")
private AdamMemberPriceVo priceVo;
@ApiModelProperty(position = 13, value = "是否实名[true-是]")
@ApiModelProperty(position = 13, value = "实名信息")
private AdamRealInfoVo realInfoVo;
@ApiModelProperty(position = 14, value = "生日")
private String birthday;
......
package com.liquidnet.service.adam.dto.vo;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.service.adam.entity.AdamAddresses;
import com.liquidnet.service.adam.entity.AdamMemberPrice;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
......@@ -16,7 +19,7 @@ public class AdamMemberPriceVo implements Serializable {
@ApiModelProperty(position = 2, value = "会员类型ID")
private String memberId;
@ApiModelProperty(position = 3, value = "价格状态[0-不可用,1-上线中,2-已下线]")
private Integer status;
private Integer state;
@ApiModelProperty(position = 4, value = "价格包名称")
private String name;
@ApiModelProperty(position = 5, value = "原价")
......@@ -31,4 +34,28 @@ public class AdamMemberPriceVo implements Serializable {
private String createdAt;
@ApiModelProperty(position = 10, value = "更新时间")
private String updatedAt;
private static final AdamMemberPriceVo obj = new AdamMemberPriceVo();
public static AdamMemberPriceVo getNew() {
try {
return (AdamMemberPriceVo) obj.clone();
} catch (CloneNotSupportedException e) {
return new AdamMemberPriceVo();
}
}
public AdamMemberPriceVo copy(AdamMemberPrice source) {
this.setMemberPriceId(source.getMemberPriceId());
this.setMemberId(source.getMemberId());
this.setState(source.getState());
this.setName(source.getName());
this.setPrice(source.getPrice());
this.setPriceFixed(source.getPriceFixed());
this.setDays(source.getDays());
this.setDetail(source.getDetail());
this.setCreatedAt(DateUtil.Formatter.yyyyMMddHHmmss.format(source.getCreatedAt()));
this.setUpdatedAt(DateUtil.Formatter.yyyyMMddHHmmss.format(source.getUpdatedAt()));
return this;
}
}
......@@ -43,16 +43,4 @@ public class AdamMemberRightsVo implements java.io.Serializable, Cloneable {
this.sort = sort;
return this;
}
public List<AdamMemberRightsVo> initDefault() {
return Arrays.asList(AdamMemberRightsVo.getNew().setName("专属").setSort(1)
.setCover("https://img.zhengzai.tv/files/2020/08/28/5f490c4477d72.png"),
AdamMemberRightsVo.getNew().setName("优惠").setSort(2)
.setCover("https://img.zhengzai.tv/files/2020/08/28/5f490c685e7a8.png"),
AdamMemberRightsVo.getNew().setName("优先").setSort(3)
.setCover("https://img.zhengzai.tv/files/2020/08/28/5f490c726a750.png"),
AdamMemberRightsVo.getNew().setName("专属").setSort(4)
.setCover("https://img.zhengzai.tv/files/2020/08/28/5f490c5de2870.png")
);
}
}
......@@ -43,15 +43,15 @@ public class AdamMemberVo implements java.io.Serializable, Cloneable {
@ApiModelProperty(position = 12, value = "是否展示协议[200]", example = "0")
private Integer displayAgreement;
@ApiModelProperty(position = 13, value = "状态[1-NORMAL,2-INVALID]")
private String state;
private Integer state;
@ApiModelProperty(position = 14, value = "限购数量,0不限购[200]", example = "0")
private Integer limitation;
@ApiModelProperty(position = 15, value = "会员卡价格信息")
private List<AdamMemberPriceVo> priceVoList;
@ApiModelProperty(position = 20, value = "会员专属权益")
@ApiModelProperty(position = 20, value = "会员卡价格信息")
private List<AdamMemberPriceVo> priceVoList;
@ApiModelProperty(position = 21, value = "会员专属权益")
private List<AdamMemberRightsVo> rightsVoList;
@ApiModelProperty(position = 21, value = "用户会员信息")
@ApiModelProperty(position = 22, value = "用户会员信息")
private AdamUserMemberVo memberInfo;
private static final AdamMemberVo obj = new AdamMemberVo();
......@@ -65,48 +65,67 @@ public class AdamMemberVo implements java.io.Serializable, Cloneable {
return new AdamMemberVo();
}
/**
* 设置会员价格
* @param adamMemberPrices
* @return
*/
@JsonIgnore
public static List<AdamMemberPriceVo> setMemberPrice(List<AdamMemberPrice> adamMemberPrices){
List<AdamMemberPriceVo> adamMemberPricesVo = new ArrayList<>();
for (int i =0;i<adamMemberPrices.size();i++){
AdamMemberPrice adamMemberPrice = adamMemberPrices.get(i);
AdamMemberPriceVo adamMemberPriceVo = new AdamMemberPriceVo();
BeanUtils.copyProperties(adamMemberPrice, adamMemberPriceVo);
adamMemberPriceVo.setCreatedAt(DateUtil.format(adamMemberPrice.getCreatedAt(), DateUtil.Formatter.yyyyMMddHHmmss));
adamMemberPriceVo.setUpdatedAt(DateUtil.format(adamMemberPrice.getUpdatedAt(), DateUtil.Formatter.yyyyMMddHHmmss));
}
return adamMemberPricesVo;
public AdamMemberVo copy(AdamMember source) {
this.setMemberId(source.getMemberId());
this.setName(source.getName());
this.setTitle(source.getTitle());
this.setSubTitle(source.getSubTitle());
this.setIcon(source.getIcon());
this.setAvatar(source.getAvatar());
this.setInterestsDetail(source.getInterestsDetail());
this.setNotes(source.getNotes());
this.setIsNotice(source.getIsNotice());
this.setNoticeInfo(source.getNoticeInfo());
this.setNoticeTitle(source.getNoticeTitle());
this.setNeedQuestion(source.getNeedQuestion());
this.setDisplayAgreement(source.getDisplayAgreement());
this.setState(source.getState());
this.setLimitation(source.getLimitation());
return this;
}
/**
* 组装MQ需要的对象
* @param adamMember
* @return
*/
@JsonIgnore
public List<Object> getMqList(AdamMember adamMember){
List<Object> paramList = new ArrayList<>();
paramList.add(adamMember.getName());
paramList.add(adamMember.getTitle());
paramList.add(adamMember.getSubTitle());
paramList.add(adamMember.getIcon());
paramList.add(adamMember.getAvatar());
paramList.add(adamMember.getStartNo());
paramList.add(adamMember.getType());
paramList.add(adamMember.getInterestsDetail());
paramList.add(adamMember.getNotes());
paramList.add(adamMember.getIsNotice());
paramList.add(adamMember.getNoticeInfo());
paramList.add(adamMember.getNoticeTitle());
paramList.add(adamMember.getNeedQuestion());
paramList.add(adamMember.getDisplayAgreement());
paramList.add(adamMember.getMemberId());
paramList.add(adamMember.getLimitation());
return paramList;
}
// /**
// * 设置会员价格
// * @param adamMemberPrices
// * @return
// */
// @JsonIgnore
// public static List<AdamMemberPriceVo> setMemberPrice(List<AdamMemberPrice> adamMemberPrices){
// List<AdamMemberPriceVo> adamMemberPricesVo = new ArrayList<>();
// for (int i =0;i<adamMemberPrices.size();i++){
// AdamMemberPrice adamMemberPrice = adamMemberPrices.get(i);
// AdamMemberPriceVo adamMemberPriceVo = new AdamMemberPriceVo();
// BeanUtils.copyProperties(adamMemberPrice, adamMemberPriceVo);
// adamMemberPriceVo.setCreatedAt(DateUtil.format(adamMemberPrice.getCreatedAt(), DateUtil.Formatter.yyyyMMddHHmmss));
// adamMemberPriceVo.setUpdatedAt(DateUtil.format(adamMemberPrice.getUpdatedAt(), DateUtil.Formatter.yyyyMMddHHmmss));
// }
// return adamMemberPricesVo;
// }
// /**
// * 组装MQ需要的对象
// * @param adamMember
// * @return
// */
// @JsonIgnore
// public List<Object> getMqList(AdamMember adamMember){
// List<Object> paramList = new ArrayList<>();
// paramList.add(adamMember.getName());
// paramList.add(adamMember.getTitle());
// paramList.add(adamMember.getSubTitle());
// paramList.add(adamMember.getIcon());
// paramList.add(adamMember.getAvatar());
// paramList.add(adamMember.getStartNo());
// paramList.add(adamMember.getType());
// paramList.add(adamMember.getInterestsDetail());
// paramList.add(adamMember.getNotes());
// paramList.add(adamMember.getIsNotice());
// paramList.add(adamMember.getNoticeInfo());
// paramList.add(adamMember.getNoticeTitle());
// paramList.add(adamMember.getNeedQuestion());
// paramList.add(adamMember.getDisplayAgreement());
// paramList.add(adamMember.getMemberId());
// paramList.add(adamMember.getLimitation());
// return paramList;
// }
}
......@@ -63,6 +63,18 @@ public interface IAdamRdmService {
AdamMemberSimpleVo getMemberSimpleVo();
AdamMemberVo getMemberVoByMemberId(String memberId);
boolean setMemberPriceVoByMemberId(String memberId, List<AdamMemberPriceVo> vos);
List<AdamMemberPriceVo> getMemberPriceVoByMemberId(String memberId);
AdamMemberPriceVo getMemberPriceVoByPriceId(String memberId, String memberPriceId);
boolean setMemberRightsVoByMemberId(String memberId, List<AdamMemberRightsVo> vos);
List<AdamMemberRightsVo> getMemberRightsVoByMemberId(String memberId);
String getMemberAgreement();
boolean setMemberNoByMemberId(String memberId, long val);
......
package com.liquidnet.service.adam.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.liquidnet.service.adam.dto.vo.AdamRealInfoVo;
import com.liquidnet.service.adam.entity.AdamRealName;
/**
......@@ -13,8 +12,5 @@ import com.liquidnet.service.adam.entity.AdamRealName;
* @since 2021-05-10
*/
public interface IAdamRealNameService extends IService<AdamRealName> {
AdamRealInfoVo queryByUid(String uid);
void add(AdamRealName realName);
}
......@@ -4,15 +4,10 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.liquidnet.service.adam.dto.AdamMemberParam;
import com.liquidnet.service.adam.entity.AdamMember;
import java.util.List;
/**
* 会员信息
*/
public interface IAdamMemberAdminService extends IService<AdamMember> {
List<AdamMember> list();
void add(AdamMemberParam info);
void edit(AdamMember info);
......
package com.liquidnet.service.adam.service.admin;
import com.baomidou.mybatisplus.extension.service.IService;
import com.liquidnet.service.adam.dto.vo.AdamMemberPriceVo;
import com.liquidnet.service.adam.dto.AdamMemberPriceParam;
import com.liquidnet.service.adam.entity.AdamMemberPrice;
import java.util.List;
public interface IAdamMemberPriceService extends IService<AdamMemberPrice> {
List<AdamMemberPrice> list(String memberId);
public interface IAdamMemberPriceAdminService extends IService<AdamMemberPrice> {
void add(AdamMemberPrice info);
AdamMemberPriceVo query(String memberId, String memberPriceId);
boolean edit(AdamMemberPrice info);
void edit(AdamMemberPriceParam param);
}
package com.liquidnet.service.kylin.constant;
public class KylinRedisConst {
public static final String FIELDS = "kylin:fields:id:";
public static final String FIELDS = "kylin:fields:id";
public static final String PERFORMANCES = "kylin:performances:id:";
public static final String PERFORMANCES_RECOMMEND = "kylin:performances:recommend:id:";
public static final String PERFORMANCES_INVENTORY = "kylin:performances_inventory:ticket:id:";
......
......@@ -244,13 +244,13 @@
</dependencyManagement>
<modules>
<module>liquidnet-client-admin-web</module>
<module>liquidnet-client-admin-common</module>
<module>liquidnet-client-admin-framework</module>
<module>liquidnet-client-admin-system</module>
<!-- <module>liquidnet-client-admin-quartz</module>-->
<!-- <module>liquidnet-client-admin-quartz</module>-->
<module>liquidnet-client-admin-generator</module>
<module>liquidnet-client-admin-common</module>
<module>liquidnet-client-admin-zhengzai</module>
<module>liquidnet-client-admin-web</module>
</modules>
<packaging>pom</packaging>
......
......@@ -2,8 +2,8 @@ server:
port: ${liquidnet.info.port}
tomcat:
uri-encoding: UTF-8
maxThreads: 2000 #默认200
minSpareThreads: 200 #默认10
maxThreads: 3000 #默认200
minSpareThreads: 3000 #默认10
maxConnections: 20000 #默认10000
acceptCount: 5000 #默认100
processorCache: -1 #默认200
......@@ -104,9 +104,9 @@ ribbon:
eureka:
enabled: true # 为Ribbon禁用Eureka
ReadTimeout: 15000
SocketTimeout: 15000
MaxAutoRetries: 0
MaxAutoRetriesNextServer: 0
ConnectTimeout: 15000
MaxAutoRetries: 1
MaxAutoRetriesNextServer: 1
MaxConnectionsPerHost: 5000
MaxTotalConnections: 25000
#liquidnet-service-sequence:
......
......@@ -34,7 +34,7 @@ public class AdamMemberPrice implements Serializable {
/**
* 状态 0 不可用 1上线中 2已下线
*/
private Integer status;
private Integer state;
/**
* 会员包名称
......
......@@ -233,8 +233,8 @@ create table adam_member_price
mid int unsigned auto_increment primary key,
member_price_id varchar(64) comment '会员价格id',
member_id varchar(64) NOT NULL comment '会员种类ID',
status tinyint NOT NULL DEFAULT '0' COMMENT '0不可用、1上线中、2已下线',
name varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '会员包名称',
state tinyint NOT NULL DEFAULT '0' COMMENT '0不可用、1上线中、2已下线',
name varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '会员包名称',
price decimal(8, 2) NOT NULL DEFAULT '0.00' COMMENT '会员包价格',
price_fixed decimal(8, 2) comment '折扣价',
days int NOT NULL DEFAULT '0' COMMENT '会员包天数',
......
......@@ -16,6 +16,11 @@ public class AdamRedisConst {
public static final String INFO_USER = INFO.concat("user:");
public static final String INFO_REAL_NAME = INFO.concat("real_name:");
public static final String INFO_THIRD_PARTY = INFO.concat("third_party:");
public static final String INFO_MEMBER_SIMPLE = INFO.concat("member:simple");
public static final String INFO_MEMBER_CATEGORY = INFO.concat("member:category:");
public static final String INFO_MEMBER_PRICE = INFO.concat("member:price:");
public static final String INFO_MEMBER_RIGHTS = INFO.concat("member:rights:");
public static final String INFO_MEMBER_AGREEMENT = INFO.concat("member:agreement");
public static final String INFO_MEMBER_USER = INFO.concat("member:user");
public static final String INFO_MEMBER_CODE = INFO.concat("member:code:");
public static final String INFO_ENTERS = INFO.concat("enters:");
......@@ -23,8 +28,6 @@ public class AdamRedisConst {
public static final String INFO_TAGS_SEX = INFO.concat("tags:sex");
public static final String INFO_TAGS_MUSIC = INFO.concat("tags:music");
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 INCR = ADAM.concat("incr:");
......
......@@ -11,15 +11,12 @@ import com.liquidnet.service.adam.dto.AdamMemberOrderCallbackParam;
import com.liquidnet.service.adam.dto.AdamMemberOrderCodeParam;
import com.liquidnet.service.adam.dto.AdamMemberOrderParam;
import com.liquidnet.service.adam.dto.AdamMemberOrderResult;
import com.liquidnet.service.adam.dto.vo.AdamMemberOrderPreviewVo;
import com.liquidnet.service.adam.dto.vo.AdamMemberOrderVo;
import com.liquidnet.service.adam.dto.vo.AdamRealInfoVo;
import com.liquidnet.service.adam.dto.vo.AdamUserInfoVo;
import com.liquidnet.service.adam.dto.vo.*;
import com.liquidnet.service.adam.service.IAdamMemberOrderService;
import com.liquidnet.service.adam.service.IAdamRdmService;
import com.liquidnet.service.adam.service.IAdamRealNameService;
import com.liquidnet.service.adam.service.IAdamUserService;
import com.liquidnet.service.adam.service.admin.IAdamMemberPriceService;
import com.liquidnet.service.adam.service.admin.IAdamMemberPriceAdminService;
import com.liquidnet.service.base.ErrorMapping;
import com.liquidnet.service.base.ResponseDto;
import io.swagger.annotations.Api;
......@@ -47,7 +44,7 @@ public class AdamMemberOrderController {
@Autowired
IAdamMemberOrderService adamMemberOrderService;
@Autowired
IAdamMemberPriceService adamMemberPriceService;
IAdamMemberPriceAdminService adamMemberPriceService;
@Autowired
IAdamRealNameService adamRealNameService;
@Autowired
......@@ -60,15 +57,21 @@ public class AdamMemberOrderController {
@GetMapping("preview/{mno}/{id}")
public ResponseDto<AdamMemberOrderPreviewVo> preview(@NotBlank @PathVariable String mno,
@NotBlank @PathVariable String id) {
AdamMemberVo memberVo = adamRdmService.getMemberVoByMemberId(mno);
if (null == memberVo) {
return ResponseDto.failure(ErrorMapping.get("10107"));
}
AdamMemberOrderPreviewVo previewVo = AdamMemberOrderPreviewVo.getNew();
previewVo.setMemberId(mno);
previewVo.setMemberTitle("摩登天空会员");
AdamRealInfoVo realInfoVo = adamRealNameService.queryByUid(CurrentUtil.getCurrentUid());
previewVo.setRealInfoVo(realInfoVo);
previewVo.setPriceVo(adamMemberPriceService.query(mno, id));
previewVo.setMemberTitle(memberVo.getTitle());
previewVo.setRealInfoVo(adamRdmService.getRealInfoVoByUid(CurrentUtil.getCurrentUid()));
previewVo.setPriceVo(adamRdmService.getMemberPriceVoByPriceId(mno, id));
AdamUserInfoVo userInfoVo = adamRdmService.getUserInfoVoByUid(CurrentUtil.getCurrentUid());
previewVo.setBirthday(null == userInfoVo ? null : userInfoVo.getBirthday());
return ResponseDto.success(previewVo);
}
......@@ -79,7 +82,10 @@ public class AdamMemberOrderController {
try {
log.debug("member/order/buy:param:{}", JsonUtils.toJson(param));
AdamRealInfoVo realInfoVo = adamRealNameService.queryByUid(CurrentUtil.getCurrentUid());
// TODO: 2021/6/9 判断黑名单,待定(暂不做)
AdamRealInfoVo realInfoVo = adamRdmService.getRealInfoVoByUid(CurrentUtil.getCurrentUid());
if (null == realInfoVo) {
if (StringUtils.isBlank(param.getName()) || StringUtils.isBlank(param.getIdCard())) {
return ResponseDto.failure(ErrorMapping.get("10101"));
......@@ -123,7 +129,12 @@ public class AdamMemberOrderController {
@PostMapping("exchange")
public ResponseDto<AdamMemberOrderResult> useMemberCode(@Valid @RequestBody AdamMemberOrderCodeParam param) {
try {
AdamRealInfoVo realInfoVo = adamRealNameService.queryByUid(CurrentUtil.getCurrentUid());
log.debug("member/order/exchange:param:{}", JsonUtils.toJson(param));
// TODO: 2021/6/9 判断黑名单,待定(暂不做)
AdamRealInfoVo realInfoVo = adamRdmService.getRealInfoVoByUid(CurrentUtil.getCurrentUid());
if (null == realInfoVo) {
if (StringUtils.isBlank(param.getName()) || StringUtils.isBlank(param.getIdCard())) {
return ResponseDto.failure(ErrorMapping.get("10101"));
......
package com.liquidnet.service.adam.controller.admin;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
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.base.ResponseDto;
import com.liquidnet.service.adam.dto.AdamMemberPriceParam;
import com.liquidnet.service.adam.dto.vo.AdamMemberPriceVo;
import com.liquidnet.service.adam.entity.AdamMemberPrice;
import com.liquidnet.service.adam.service.admin.IAdamMemberPriceService;
import com.liquidnet.service.adam.service.admin.IAdamMemberPriceAdminService;
import com.liquidnet.service.base.ResponseDto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
......@@ -15,52 +14,58 @@ import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import java.util.List;
@ApiSupport(order = 90061)
@Api(tags = "后台管理:会员价格")
@Slf4j
@Validated
@RestController
@RequestMapping("admin/member/price")
public class AdamMemberPriceController {
public class AdamMemberPriceAdminController {
@Autowired
IAdamMemberPriceService adamMemberPriceService;
IAdamMemberPriceAdminService adamMemberPriceService;
@ApiOperationSupport(order = 1)
@ApiOperation(value = "会员价格列表")
@ApiImplicitParams({
@ApiImplicitParam(type = "path", required = true, dataType = "String", name = "memberId", value = "会员卡ID[64]"),
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "memberId", value = "会员卡ID[64]"),
})
@GetMapping("list/{memberId}")
public ResponseDto<Object> list(@PathVariable String memberId) {
List<AdamMemberPrice> list = adamMemberPriceService.list(memberId);
List<AdamMemberPriceVo> adamMemberPriceVos = new ArrayList<>();
for (int i = 0; i < list.size(); i++) {
AdamMemberPriceVo apv = new AdamMemberPriceVo();
AdamMemberPrice amp = list.get(i);
BeanUtils.copyProperties(amp, apv);
apv.setCreatedAt(DateUtil.format(amp.getCreatedAt(), DateUtil.Formatter.yyyyMMddHHmmss));
apv.setUpdatedAt(DateUtil.format(amp.getUpdatedAt(), DateUtil.Formatter.yyyyMMddHHmmss));
adamMemberPriceVos.add(apv);
}
return ResponseDto.success(adamMemberPriceVos);
@GetMapping("list")
public ResponseDto<List<AdamMemberPrice>> list(@NotBlank @RequestParam String memberId) {
return ResponseDto.success(
adamMemberPriceService.list(
Wrappers.lambdaQuery(AdamMemberPrice.class).eq(AdamMemberPrice::getMemberId, memberId)
)
);
}
@ApiOperationSupport(order = 2)
@ApiOperation(value = "会员价格详情")
@GetMapping("info/{memberId}/{memberPriceId}")
public ResponseDto<AdamMemberPriceVo> query(@PathVariable(name = "memberId") String memberId, @PathVariable(name = "memberPriceId") String memberPriceId){
AdamMemberPriceVo adamMemberPrice = adamMemberPriceService.query(memberId, memberPriceId);
return ResponseDto.success(adamMemberPrice);
@ApiImplicitParams({
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "memberId", value = "会员卡ID[64]"),
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "memberPriceId", value = "会员卡价格ID[64]"),
})
@GetMapping("info")
public ResponseDto<AdamMemberPrice> query(@NotBlank @RequestParam String memberId, @NotBlank @RequestParam String memberPriceId) {
return ResponseDto.success(
adamMemberPriceService.getOne(
Wrappers.lambdaQuery(AdamMemberPrice.class)
.eq(AdamMemberPrice::getMemberPriceId, memberPriceId)
.eq(AdamMemberPrice::getMemberId, memberId)
)
);
}
@ApiOperationSupport(order = 3)
@ApiOperation(value = "添加会员价格")
@PostMapping("add")
public ResponseDto<Object> add(@RequestBody AdamMemberPriceParam param) {
public ResponseDto<Object> add(@Valid @RequestBody AdamMemberPriceParam param) {
AdamMemberPrice entity = new AdamMemberPrice();
BeanUtils.copyProperties(param, entity);
adamMemberPriceService.add(entity);
......@@ -70,10 +75,8 @@ public class AdamMemberPriceController {
@ApiOperationSupport(order = 4)
@ApiOperation(value = "编辑会员价格")
@PostMapping("edit")
public ResponseDto<Object> edit(@RequestBody AdamMemberPriceParam param) {
AdamMemberPrice entity = new AdamMemberPrice();
BeanUtils.copyProperties(param, entity);
adamMemberPriceService.edit(entity);
public ResponseDto<Object> edit(@Valid @RequestBody AdamMemberPriceParam param) {
adamMemberPriceService.edit(param);
return ResponseDto.success();
}
}
......@@ -61,7 +61,7 @@ public class AdamMemberCodeServiceImpl extends ServiceImpl<AdamMemberCodeMapper,
// redis
Map<String, Object> redisMap = new HashMap<>();
redisMap.put(AdamRedisConst.INFO_MEMBERS_PRICE_INFO.concat(adamMemberCode.getMemberPriceId()), vo);
redisMap.put(AdamRedisConst.INFO_MEMBERS_CODE_INFO.concat(adamMemberCode.getMemberPriceId()), vo);
redisUtil.hmset(AdamRedisConst.INFO_MEMBERS_CODE_INFO.concat(adamMemberCode.getBuyUid()) , redisMap);
}
}
......@@ -17,7 +17,7 @@ import com.liquidnet.service.adam.service.IAdamMemberOrderService;
import com.liquidnet.service.adam.service.IAdamMemberService;
import com.liquidnet.service.adam.service.IAdamRdmService;
import com.liquidnet.service.adam.service.IAdamUserMemberService;
import com.liquidnet.service.adam.service.admin.IAdamMemberPriceService;
import com.liquidnet.service.adam.service.admin.IAdamMemberPriceAdminService;
import com.liquidnet.service.adam.util.MemberUtil;
import com.liquidnet.service.base.ErrorMapping;
import com.liquidnet.service.base.ResponseDto;
......@@ -51,7 +51,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
@Autowired
IAdamUserMemberService adamUserMemberService;
@Autowired
IAdamMemberPriceService adamMemberPriceService;
IAdamMemberPriceAdminService adamMemberPriceService;
@Autowired
MongoTemplate mongoTemplate;
@Autowired
......@@ -107,7 +107,6 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
public ResponseDto<AdamMemberOrderResult> buyMemberOrMemberCode(AdamMemberOrderParam param) {
String memberId = param.getMemberId();
String memberPriceId = param.getMemberPriceId();
// 判断黑名单,待定(暂不做)
// 验证会员是否有效
AdamMemberVo adamMemberVo = adamMemberService.queryMemberInfo();
......@@ -128,18 +127,14 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
return ResponseDto.failure(ErrorMapping.get("10202"));
}
AdamMemberPriceVo memberPrice = (AdamMemberPriceVo) redisUtil.hget(AdamRedisConst.INFO_MEMBERS_PRICE_INFO.concat(memberId), memberPriceId);
if (null == memberPrice) {
memberPrice = (AdamMemberPriceVo) mongoTemplate.find(Query.query(Criteria.where("memberPriceId").is(memberPriceId)),
AdamMemberPriceVo.class, AdamMemberPriceVo.class.getSimpleName());
}
AdamMemberPriceVo memberPriceVo = adamRdmService.getMemberPriceVoByPriceId(memberId, memberPriceId);
String createdAt = DateUtil.format(LocalDateTime.now(), DateUtil.Formatter.yyyyMMddHHmmss);
// 生成订单信息
AdamMemberOrderVo orderVo = new AdamMemberOrderVo();
String orderNo = IDGenerator.nextSnowId().toString().concat("V");
orderVo.setOrderNo(orderNo);
orderVo.setMemberId(memberId);
orderVo.setDays(memberPrice.getDays());
orderVo.setDays(memberPriceVo.getDays());
orderVo.setMemberPriceId(memberPriceId);
orderVo.setCreatedAt(createdAt);
orderVo.setMemberName(adamMemberVo.getName());
......@@ -220,12 +215,8 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
return ResponseDto.failure(ErrorMapping.get(memberCodeVo.getState() == 1 ? "10206" : "10207"));
}
// 获取会员价格对应的天数
AdamMemberPriceVo priceVo = (AdamMemberPriceVo) redisUtil.hget(AdamRedisConst.INFO_MEMBERS_PRICE_INFO.concat(memberCodeVo.getMemberId()), memberCodeVo.getMemberPriceId());
if (null == priceVo) {
priceVo = mongoTemplate.findOne(Query.query(Criteria.where("memberPriceId").is(memberCodeVo.getMemberPriceId())), AdamMemberPriceVo.class, AdamMemberPriceVo.class.getSimpleName());
}
if (null == priceVo) {
AdamMemberPriceVo memberPriceVo = adamRdmService.getMemberPriceVoByPriceId(memberCodeVo.getMemberId(), memberCodeVo.getMemberPriceId());
if (null == memberPriceVo) {
return ResponseDto.failure(ErrorMapping.get("10202"));
}
......@@ -245,7 +236,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
orderVo.setMemberName(adamMemberVo.getName());
orderVo.setState(AdamMemberConst.STATUS_UNPAID);
orderVo.setCreatedAt(currentDateTime);
orderVo.setDays(priceVo.getDays());
orderVo.setDays(memberPriceVo.getDays());
orderVo.setPayNo(memberCodeVo.getCode());
orderVo.setPrice(BigDecimal.valueOf(0));
......@@ -340,7 +331,8 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
// 订单金额比对
return ResponseDto.failure(ErrorMapping.get("10503"), parameter);
}
AdamMemberPriceVo memberPriceVo = adamMemberPriceService.query(handleMemberOrderVo.getMemberId(), handleMemberOrderVo.getMemberPriceId());
AdamMemberPriceVo memberPriceVo =
adamRdmService.getMemberPriceVoByPriceId(handleMemberOrderVo.getMemberId(), handleMemberOrderVo.getMemberPriceId());
if (null == memberPriceVo) {
return ResponseDto.failure(ErrorMapping.get("10500"));
}
......@@ -439,7 +431,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
mongoTemplate.getCollection(AdamMemberOrderVo.class.getSimpleName())
.updateOne(Query.query(Criteria.where("orderNo").is(handleMemberOrderVo.getOrderNo())).getQueryObject(),
new Document(Document.parse(JsonUtils.toJson(updateMemberOrderVo))));
new Document("$set", Document.parse(JsonUtils.toJson(updateMemberOrderVo))));
toMqSqls.add(SqlMapping.get("adam_member_order.update"));
updateMemberOrderObjs.add(new Object[]{
......
......@@ -38,7 +38,6 @@ public class AdamMemberServiceImpl extends ServiceImpl<AdamMemberMapper, AdamMem
@Autowired
RedisUtil redisUtil;
// TODO: 2021/5/26 数据存取更正,不走MySql
@Override
public AdamMemberVo queryMemberInfo() {
AdamMemberVo info = null;
......
......@@ -2,7 +2,7 @@ package com.liquidnet.service.adam.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.service.adam.constant.AdamRedisConst;
import com.liquidnet.common.mq.constant.MQConst;
import com.liquidnet.service.adam.dto.vo.AdamRealInfoVo;
import com.liquidnet.service.adam.entity.AdamRealName;
import com.liquidnet.service.adam.mapper.AdamRealNameMapper;
......@@ -11,14 +11,11 @@ import com.liquidnet.service.base.SqlMapping;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
/**
......@@ -38,18 +35,6 @@ public class AdamRealNameServiceImpl extends ServiceImpl<AdamRealNameMapper, Ada
@Autowired
RabbitTemplate rabbitTemplate;
@Override
public AdamRealInfoVo queryByUid(String uid) {
AdamRealInfoVo realInfoVo = (AdamRealInfoVo) redisUtil.hget(AdamRedisConst.INFO_REAL_NAME, uid);
if (null == realInfoVo) {
realInfoVo = mongoTemplate.findOne(Query.query(Criteria.where("uid").is(uid).and("state").is(1)),
AdamRealInfoVo.class, AdamRealInfoVo.class.getSimpleName());
if (null != realInfoVo) redisUtil.hset(AdamRedisConst.INFO_REAL_NAME, uid, realInfoVo);
}
return realInfoVo;
}
@Override
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public void add(AdamRealName realName) {
......@@ -64,7 +49,7 @@ public class AdamRealNameServiceImpl extends ServiceImpl<AdamRealNameMapper, Ada
realName.getState(),
realName.getCreatedAt()
);
// rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
// SqlMapping.get("adam_real_name.add", paramList.toArray()));
rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
SqlMapping.get("adam_real_name.add", paramList.toArray()));
}
}
package com.liquidnet.service.adam.service.impl.admin;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.adam.constant.AdamRedisConst;
import com.liquidnet.service.adam.dto.AdamMemberPriceParam;
import com.liquidnet.service.adam.dto.vo.AdamMemberPriceVo;
import com.liquidnet.service.adam.entity.AdamMemberPrice;
import com.liquidnet.service.adam.mapper.AdamMemberPriceMapper;
import com.liquidnet.service.adam.service.admin.IAdamMemberPriceService;
import com.mongodb.BasicDBObject;
import com.mongodb.client.model.FindOneAndUpdateOptions;
import com.mongodb.client.model.ReturnDocument;
import com.liquidnet.service.adam.service.admin.IAdamMemberPriceAdminService;
import lombok.extern.slf4j.Slf4j;
import org.bson.Document;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.convert.MongoConverter;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
......@@ -29,83 +22,47 @@ import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Slf4j
@Service
public class AdamMemberPriceServiceImpl extends ServiceImpl<AdamMemberPriceMapper, AdamMemberPrice> implements IAdamMemberPriceService {
public class AdamMemberPriceAdminServiceImpl extends ServiceImpl<AdamMemberPriceMapper, AdamMemberPrice> implements IAdamMemberPriceAdminService {
@Autowired
MongoTemplate mongoTemplate;
@Autowired
MongoConverter mongoConverter;
AdamMemberPriceMapper adamMemberPriceMapper;
@Autowired
RabbitTemplate rabbitTemplate;
MongoTemplate mongoTemplate;
@Autowired
RedisUtil redisUtil;
@Autowired
AdamMemberPriceMapper adamMemberPriceMapper;
@Override
public List<AdamMemberPrice> list(String memberId) {
Map<String,Object> map = new HashMap<>();
map.put("member_id", memberId);
List<AdamMemberPrice> adamMemberPrices = adamMemberPriceMapper.selectByMap(map);
return adamMemberPrices;
}
@Override
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public void add(AdamMemberPrice info) {
// mysql
info.setMemberPriceId(IDGenerator.nextSnowId().toString());
info.setCreatedAt(LocalDateTime.now());
adamMemberPriceMapper.insert(info);
// mongo
AdamMemberPriceVo vo = new AdamMemberPriceVo();
BeanUtils.copyProperties(info, vo);
vo.setCreatedAt(DateUtil.format(info.getCreatedAt(), DateUtil.Formatter.yyyyMMddHHmmss));
mongoTemplate.insert(vo, AdamMemberPriceVo.class.getSimpleName());
// redis
redisUtil.hset(AdamRedisConst.INFO_MEMBERS_PRICE_INFO.concat(info.getMemberId()), vo.getMemberPriceId(), vo);
adamMemberPriceMapper.insert(info);
mongoTemplate.insert(AdamMemberPriceVo.getNew().copy(info), AdamMemberPriceVo.class.getSimpleName());
}
@Override
public AdamMemberPriceVo query(String memberId, String memberPriceId) {
AdamMemberPriceVo priceVo = (AdamMemberPriceVo) redisUtil.hget(AdamRedisConst.INFO_MEMBERS_PRICE_INFO.concat(memberId), memberPriceId);
if (null == priceVo) {
priceVo = mongoTemplate.findOne(Query.query(Criteria.where("memberPriceId").is(memberPriceId)), AdamMemberPriceVo.class, AdamMemberPriceVo.class.getSimpleName());
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public void edit(AdamMemberPriceParam param) {
AdamMemberPrice updateInfo = new AdamMemberPrice();
updateInfo.setState(param.getState());
updateInfo.setName(param.getName());
updateInfo.setPrice(param.getPrice());
updateInfo.setPriceFixed(param.getPriceFixed());
updateInfo.setDays(param.getDays());
updateInfo.setDetail(param.getDetail());
updateInfo.setUpdatedAt(LocalDateTime.now());
if (null != priceVo) redisUtil.hset(AdamRedisConst.INFO_MEMBERS_PRICE_INFO.concat(memberId), memberPriceId, priceVo);
}
return priceVo;
}
String memberPriceId = param.getMemberPriceId();
@Override
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public boolean edit(AdamMemberPrice info) {
try {
String memberPriceId = info.getMemberPriceId();
LocalDateTime updatedAt = LocalDateTime.now();
info.setUpdatedAt(updatedAt);
// mysql
adamMemberPriceMapper.update(
info, new UpdateWrapper<AdamMemberPrice>().eq("member_price_id", memberPriceId));
// mongo
BasicDBObject object = new BasicDBObject("$set", JSON.parse(JsonUtils.toJson(info)));
Document doc = mongoTemplate.getCollection(AdamMemberPrice.class.getSimpleName())
.findOneAndUpdate(
Query.query(Criteria.where("memberPriceId").is(memberPriceId)).getQueryObject(),
object,
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
// reids
redisUtil.hset(AdamRedisConst.INFO_MEMBERS_PRICE_INFO.concat(info.getMemberId()), info.getMemberPriceId(), info);
} catch (Exception e){
return false;
}
return true;
adamMemberPriceMapper.update(
updateInfo, Wrappers.lambdaQuery(AdamMemberPrice.class).eq(AdamMemberPrice::getMemberPriceId, memberPriceId));
mongoTemplate.getCollection(AdamMemberPriceVo.class.getSimpleName()).updateOne(
Query.query(Criteria.where("memberPriceId").is(memberPriceId)).getQueryObject(),
new Document("$set", Document.parse(JsonUtils.toJson(updateInfo)))
);
redisUtil.del(AdamRedisConst.INFO_MEMBER_PRICE.concat(memberPriceId));
}
}
package com.liquidnet.service.adam.service.impl.admin;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.commons.lang.util.IDGenerator;
......@@ -9,90 +8,54 @@ import com.liquidnet.service.adam.constant.AdamRedisConst;
import com.liquidnet.service.adam.dto.AdamMemberParam;
import com.liquidnet.service.adam.dto.vo.AdamMemberVo;
import com.liquidnet.service.adam.entity.AdamMember;
import com.liquidnet.service.adam.entity.AdamMemberPrice;
import com.liquidnet.service.adam.mapper.AdamMemberMapper;
import com.liquidnet.service.adam.mapper.AdamMemberPriceMapper;
import com.liquidnet.service.adam.service.admin.IAdamMemberAdminService;
import com.mongodb.BasicDBObject;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.bson.Document;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.convert.MongoConverter;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.time.LocalDateTime;
import java.util.*;
@Slf4j
@Service
public class AdamMemberServiceAdminImpl extends ServiceImpl<AdamMemberMapper, AdamMember> implements IAdamMemberAdminService {
@Autowired
AdamMemberMapper adamMemberMapper;
@Autowired
AdamMemberPriceMapper adamMemberPriceMapper;
@Autowired
MongoTemplate mongoTemplate;
@Autowired
MongoConverter mongoConverter;
@Autowired
RabbitTemplate rabbitTemplate;
@Autowired
RedisUtil redisUtil;
@Override
public List<AdamMember> list() {
List<AdamMember> infoList = new ArrayList<>();
List<Object> list = redisUtil.lGet(AdamRedisConst.INFO_MEMBERS, 0, -1);
if (CollectionUtils.isEmpty(list)) {
infoList = mongoTemplate.findAll(AdamMember.class);
} else {
for (Object o : list) {
infoList.add((AdamMember) o);
}
}
return infoList;
}
@Override
public void add(AdamMemberParam info) {
// mysql
AdamMember adamMember = new AdamMember();
BeanUtils.copyProperties(info, adamMember);
adamMember.setMemberId(IDGenerator.nextSnowId().toString());
adamMember.setStartNo(1000);
adamMember.setStartNo(10000);
adamMember.setCreatedAt(LocalDateTime.now());
adamMember.setUpdatedAt(LocalDateTime.now());
adamMemberMapper.insert(adamMember);
AdamMemberVo amv = new AdamMemberVo();
BeanUtils.copyProperties(adamMember, amv);
List<AdamMemberPrice> adamMemberPrices = adamMemberPriceMapper.memberPriceList(adamMember.getMemberId());
amv.setPriceVoList(AdamMemberVo.setMemberPrice(adamMemberPrices));
adamMemberMapper.insert(adamMember);
// 添加数据到 Mongo
mongoTemplate.insert(amv, AdamMemberVo.class.getSimpleName());
// todo 放入MQ
// rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
// SqlMapping.get("adam_member.add", (new AdamMemberVo()).getMqList(adamMember).toArray()));
// todo 同步redis
redisUtil.set(AdamRedisConst.INFO_MEMBERS_INFO.concat(adamMember.getMemberId()), amv);
mongoTemplate.insert(AdamMemberVo.getNew().copy(adamMember), AdamMemberVo.class.getSimpleName());
}
@Override
public void edit(AdamMember info) {
BasicDBObject object = new BasicDBObject("$set", JSON.parse(JsonUtils.toJson(info)));
info.setUpdatedAt(LocalDateTime.now());
mongoTemplate.getCollection(AdamMemberVo.class.getSimpleName())
.updateOne(Query.query(Criteria.where("mId").is(info.getMid())).getQueryObject(), object);
AdamMemberVo updateVo = AdamMemberVo.getNew().copy(info);
redisUtil.set(AdamRedisConst.INFO_MEMBERS_INFO.concat(info.getMid().toString()), info);
mongoTemplate.getCollection(AdamMemberVo.class.getSimpleName()).updateOne(
Query.query(Criteria.where("mId").is(info.getMid())).getQueryObject(),
new Document("$set", Document.parse(JsonUtils.toJson(updateVo)))
);
redisUtil.del(AdamRedisConst.INFO_MEMBER_CATEGORY.concat(info.getMemberId()));
}
}
......@@ -22,6 +22,7 @@
10104=
10105=入场人不存在
10106=收获地址不存在
10107=会员卡信息不存在
......
......@@ -35,12 +35,6 @@
<version>1.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.liquidnet</groupId>
<artifactId>liquidnet-api-feign-adam</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
<!-- other -->
<dependency>
......
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