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

Commit 1df37f40 authored by 洪全海's avatar 洪全海

Merge branch 'dev' of http://gitlab.zhengzai.tv/dongjingwei/liquidnet-bus-v1 into dev

# Conflicts:
#	liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamEntersServiceImpl.java
parent 7ce7bb56
package com.liquidnet.service.adam.dto.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
......@@ -9,6 +10,7 @@ import java.math.BigDecimal;
/**
* 会员价格
*/
@ApiModel(value = "AdamMemberPriceVo", description = "会员价格")
@Data
public class AdamMemberPriceVo implements Serializable {
......@@ -17,50 +19,60 @@ public class AdamMemberPriceVo implements Serializable {
/**
* 会员价格ID
*/
@ApiModelProperty(position = 1, value = "会员价格id")
private String memberPriceId;
/**
* 会员类型ID
*/
@ApiModelProperty(position = 2, value = "会员类型id")
private String memberId;
/**
* 状态 0 不可用 1上线中 2已下线
*/
@ApiModelProperty(position = 3, value = "价格状态")
private Integer status;
/**
* 会员包名称
* 价格包名称
*/
@ApiModelProperty(position = 4, value = "价格包名称")
private String name;
/**
* 原价
*/
@ApiModelProperty(position = 5, value = "原价")
private BigDecimal price;
/**
* 折扣价
*/
@ApiModelProperty(position = 6, value = "折扣价")
private BigDecimal priceFixed;
/**
* 会员包有效天数
*/
@ApiModelProperty(position = 7, value = "有效天数")
private Integer days;
/**
* 会员包须知
*/
@ApiModelProperty(position = 8, value = "须知")
private String detail;
/**
* 创建时间
*/
@ApiModelProperty(position = 9, value = "创建时间")
private String createdAt;
/**
* 更新时间
*/
@ApiModelProperty(position = 10, value = "更新时间")
private String updatedAt;
}
......@@ -23,7 +23,7 @@ public class AdamMemberVo implements java.io.Serializable, Cloneable {
/**
* 会员卡id
*/
@ApiModelProperty(position = 0, required = false, value = "会员ID[50]", example = "62960077673504768")
@ApiModelProperty(position = 0, required = false, value = "会员ID[50]")
private String memberId;
/**
......
......@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.common.mq.constant.MQConst;
import com.liquidnet.commons.lang.util.*;
import com.liquidnet.service.adam.constant.AdamMemberConst;
import com.liquidnet.service.adam.constant.AdamRedisConst;
......@@ -13,7 +14,6 @@ import com.liquidnet.service.adam.dto.AdamMemberOrderParam;
import com.liquidnet.service.adam.dto.AdamMemberOrderResult;
import com.liquidnet.service.adam.dto.vo.*;
import com.liquidnet.service.adam.entity.AdamMemberOrder;
import com.liquidnet.service.adam.entity.AdamMemberPrice;
import com.liquidnet.service.adam.mapper.AdamMemberOrderMapper;
import com.liquidnet.service.adam.mapper.AdamMemberPriceMapper;
import com.liquidnet.service.adam.service.IAdamMemberOrderService;
......@@ -21,6 +21,7 @@ import com.liquidnet.service.adam.service.IAdamMemberService;
import com.liquidnet.service.adam.service.IAdamUserMemberService;
import com.liquidnet.service.adam.service.admin.IAdamMemberPriceService;
import com.liquidnet.service.adam.util.MemberUtil;
import com.liquidnet.service.base.SqlMapping;
import com.mongodb.BasicDBObject;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
......@@ -32,6 +33,7 @@ import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
import org.springframework.util.LinkedMultiValueMap;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.*;
......@@ -87,8 +89,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
@Override
public AdamMemberOrderVo getMemberOrderInfo(String uid, String orderNo) {
AdamMemberOrderVo orderVo = null;
orderVo = (AdamMemberOrderVo) redisUtil.hget(AdamRedisConst.INFO_MEMBERS_ORDER_INFO.concat(uid), orderNo);
AdamMemberOrderVo orderVo = (AdamMemberOrderVo) redisUtil.hget(AdamRedisConst.INFO_MEMBERS_ORDER_INFO.concat(uid), orderNo);
if (null == orderVo) {
orderVo = mongoTemplate.findOne(Query.query(Criteria.where("orderNo").is(orderNo)),
AdamMemberOrderVo.class, AdamMemberOrderVo.class.getSimpleName());
......@@ -97,7 +98,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
}
@Override
public AdamMemberOrderResult buyMemberOrMemberCode(AdamMemberOrderParam param) throws Exception {
public AdamMemberOrderResult buyMemberOrMemberCode(AdamMemberOrderParam param) {
String memberId = param.getMemberId();
String memberPriceId = param.getMemberPriceId();
AdamMemberOrderResult result = new AdamMemberOrderResult();
......@@ -105,7 +106,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
// 验证会员是否有效
AdamMemberVo adamMemberVo = adamMemberService.queryMemberInfo();
if (adamMemberVo.getMemberId() != memberId) {
if (!adamMemberVo.getMemberId().equals(memberId)) {
result.setState(0);
return result;
}
......@@ -123,8 +124,6 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
result.setState(0);
return result;
}
// 查询用户是否是会员 获取会员编号
AdamUserMemberVo userMemberInfo = adamUserMemberService.getUserMemberInfo(param.getUid());
AdamMemberPriceVo memberPrice = (AdamMemberPriceVo) redisUtil.hget(AdamRedisConst.INFO_MEMBERS_PRICE_INFO.concat(memberId), memberPriceId);
if (null == memberPrice) {
......@@ -148,9 +147,6 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
orderVo.setUid(param.getUid());
orderVo.setPrice(param.getPrice());
// todo 此处调用MQ通知mysql
// List<Object> mqList = new ArrayList<>();
mongoTemplate.insert(orderVo, AdamMemberOrderVo.class.getSimpleName());
redisUtil.hset(AdamRedisConst.INFO_MEMBERS_ORDER_INFO.concat(param.getUid()), orderNo, orderVo);
......@@ -197,8 +193,8 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
/**
* 使用会员码
*
* @param param
* @return
* @param param 兑换码相关参数
* @return Object
*/
@Override
public boolean useMemberCode(AdamMemberOrderCodeParam param) {
......@@ -229,7 +225,9 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
String currentDateTime = DateUtil.getNowTime();
AdamMemberOrderVo orderVo = new AdamMemberOrderVo();
orderVo.setOrderNo(IDGenerator.nextSnowId().toString().concat("V"));
orderVo.setMemberCode(code);
orderVo.setUid(uid);
orderVo.setMemberNo(memberCodeVo.getMemberNo());
orderVo.setMemberId(IDGenerator.nextSnowId().toString());
orderVo.setMode(type);
......@@ -239,6 +237,8 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
orderVo.setCreatedAt(currentDateTime);
orderVo.setDays(priceVo.getDays());
orderVo.setBirthday(DateUtil.format(param.getBirthday(), DateUtil.Formatter.yyyyMMddHHmmss));
orderVo.setPayNo(memberCodeVo.getCode());
orderVo.setPrice(BigDecimal.valueOf(0));
if (AdamMemberConst.SUB_TYPE_USE_VIP_CODE == type) { //使用购买的会员码
orderVo.setPayChannel(AdamMemberConst.VIP_CODE);
......@@ -273,7 +273,34 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
mongoTemplate.getCollection(AdamMemberCodeVo.class.getSimpleName())
.updateOne(Query.query(Criteria.where("code").is(memberCodeVo.getCode())).getQueryObject(), object);
// todo MQ 统一通知队列插入数据库
List<Object> mqList = new ArrayList<>();
/*
( `order_no`, `uid`, `mode`, `price`,
`price_paid`, `member_name`, `member_id`,
`member_price_id`, `days`, `state`, `member_no`,
`pay_channel`, `pay_no`, `birthday`, `payment_at`,
`created_at`, `updated_at`, `client_ip`, `source`, `version`)
*/
// mqList.add(orderVo.getOrderNo());
// mqList.add(orderVo.getUid());
// mqList.add(orderVo.getMode());
// mqList.add(orderVo.getPrice());
// mqList.add(BigDecimal.valueOf(0));
// mqList.add(orderVo.getMemberName());
// mqList.add(orderVo.getMemberId());
// mqList.add(orderVo.getMemberPriceId());
// mqList.add(orderVo.getDays());
// mqList.add(orderVo.getState());
// mqList.add(orderVo.getMemberNo());
// mqList.add(orderVo.getPayChannel());
// mqList.add(orderVo.getPayNo());
// mqList.add(orderVo.getBirthday());
// mqList.add(orderVo.getPaymentAt());
// mqList.add(orderVo.getCreatedAt());
// mqList.add(orderVo.getCreatedAt());
// mqList.add("ip");
// rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
// SqlMapping.get("adam_member_order.add", mqList.toArray()));
return true;
}
......@@ -282,7 +309,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
*
* @param payType 支付类型
* @param payParam 支付参数
* @return
* @return Map
*/
private Map<String, String> callPayServer(String payType, LinkedMultiValueMap<String, String> payParam) {
String url = "http://testpay.zhengzai.tv";
......@@ -307,14 +334,13 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
break;
}
String json = HttpUtil.post(url, payParam);
HashMap<String, String> result = (HashMap<String, String>) JSONObject.parse(json);
return result;
return (HashMap<String, String>) JSONObject.parse(json);
}
@Override
public boolean memberNotifyCallBack(AdamMemberOrderCallbackResult result) {
if (1 != result.getStatus() ||
result.getType() != AdamMemberConst.TYPE_VIP ||
!result.getType().equals(AdamMemberConst.TYPE_VIP) ||
null == result.getOrderCode() ||
null == result.getCode()) {
return false;
......@@ -429,7 +455,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
* @param orderCode 订单号
* @param type 会员码类型
* @param currentDateTime 创建时间
* @return
* @return AdamMemberCodeVo
*/
private AdamMemberCodeVo getAdamMemberCodeVo(AdamMemberOrderVo orderVo, String orderCode, int type, String currentDateTime) {
AdamMemberCodeVo codeVo = new AdamMemberCodeVo();
......
......@@ -65,12 +65,6 @@ public class AdamMemberServiceImpl extends ServiceImpl<AdamMemberMapper, AdamMem
memberPrice.add(tempMemberPrice);
}
// Map<Object, Object> tempMemberPrice = redisUtil.hmget(AdamRedisConst.INFO_MEMBERS_PRICE_INFO.concat( info.getMemberId()));
// Iterator<Object> iterator = tempMemberPrice.keySet().iterator();
// while (iterator.hasNext()) {
// AdamMemberPriceVo tempAmp = (AdamMemberPriceVo) tempMemberPrice.get(iterator.next());
// memberPrice.add(tempAmp);
// }
info.setAdamMemberPrice(memberPrice);
if (1 == tag) {
mongoTemplate.insert(info, AdamMemberVo.class.getSimpleName());
......
......@@ -74,7 +74,7 @@ public class AdamMemberServiceAdminImpl extends ServiceImpl<AdamMemberMapper, Ad
AdamMemberVo amv = new AdamMemberVo();
BeanUtils.copyProperties(adamMember, amv);
List<AdamMemberPrice> adamMemberPrices = adamMemberPriceMapper.memberPriceList(info.getMemberId());
List<AdamMemberPrice> adamMemberPrices = adamMemberPriceMapper.memberPriceList(adamMember.getMemberId());
amv.setAdamMemberPrice((new AdamMemberVo()).setMemberPrice(adamMemberPrices));
// 添加数据到 Mongo
......@@ -83,7 +83,7 @@ public class AdamMemberServiceAdminImpl extends ServiceImpl<AdamMemberMapper, Ad
// 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(info.getMemberId()), amv);
redisUtil.set(AdamRedisConst.INFO_MEMBERS_INFO.concat(adamMember.getMemberId()), amv);
}
@Override
......@@ -93,7 +93,6 @@ public class AdamMemberServiceAdminImpl extends ServiceImpl<AdamMemberMapper, Ad
mongoTemplate.getCollection(AdamMemberVo.class.getSimpleName())
.updateOne(Query.query(Criteria.where("mId").is(info.getMid())).getQueryObject(), object);
// todo 放入MQ
redisUtil.set(AdamRedisConst.INFO_MEMBERS_INFO.concat(info.getMid().toString()), info);
}
}
adam_member.add=INSERT INTO `adam_member` ( `name`, `title`, `sub_title`, `icon`, `avatar`, `start_no`, `type`, `interests_detail`, `notes`, `is_notice`, `notice_info`, `notice_title`, `need_question`, `display_agreement`, `agreement`, `member_id`, `limitation`) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);
\ No newline at end of file
adam_member.add=INSERT INTO `adam_member` ( `name`, `title`, `sub_title`, `icon`, `avatar`, `start_no`, `type`, `interests_detail`, `notes`, `is_notice`, `notice_info`, `notice_title`, `need_question`, `display_agreement`, `agreement`, `member_id`, `limitation`) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);
adam_member_order.add=INSERT INTO `adam_member_order` ( `order_no`, `uid`, `mode`, `price`, `price_paid`, `member_name`, `member_id`, `member_price_id`, `days`, `state`, `member_no`, `pay_channel`, `pay_no`, `birthday`, `payment_at`, `created_at`, `updated_at`, `client_ip`, `source`, `version`) values ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);
adam_user_member_add=
adam_user_member_update=
\ No newline at end of file
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