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

Commit f9d422aa authored by jiangxiulong's avatar jiangxiulong

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

parents 9a526771 0d3fbb85
......@@ -92,11 +92,11 @@ public class MongoVoUtils {
kylinTicketVo.setTicketStatus(t2);
ticketList.add(kylinTicketVo);
//票种 库存redis
if (!redisUtil.hHasKey(KylinRedisConst.PERFORMANCES_INVENTORY + kylinTicketVo.getTicketsId(), KylinRedisConst.SURPLUS_GENERAL)) {
dataUtils.setSurplusGeneral(kylinTicketVo.getTicketsId(), t2.getTotalGeneral());
dataUtils.setSurplusExchange(kylinTicketVo.getTicketsId(), t2.getSurplusExchange());
}
// //票种 库存redis
// if (!redisUtil.hHasKey(KylinRedisConst.PERFORMANCES_INVENTORY + kylinTicketVo.getTicketsId(), KylinRedisConst.SURPLUS_GENERAL)) {
// dataUtils.setSurplusGeneral(kylinTicketVo.getTicketsId(), t2.getTotalGeneral());
// dataUtils.setSurplusExchange(kylinTicketVo.getTicketsId(), t2.getSurplusExchange());
// }
if (kylinTicketVo.getIsMember() == 1) {
if (kylinTicketVo.getMemberPrice().compareTo(kylinTicketVo.getPrice()) != 0) {
......
package com.liquidnet.service.base;
/**
* Created by Administrator on 2017/2/7.
*/
import java.io.Serializable;
public class OrderBy implements Serializable {
private static final String ASC = "asc";
private static final String DESC = "desc";
private String fieldName;
private String direction = "desc";
public OrderBy() {
}
public OrderBy(String fieldName, String direction) {
this.fieldName = fieldName;
this.direction = direction;
}
public static OrderBy buildAsc(String fieldName) {
return new OrderBy(fieldName, "asc");
}
public static OrderBy buildDesc(String fieldName) {
return new OrderBy(fieldName, "desc");
}
public void setFiledName(String fieldName) {
this.fieldName = fieldName;
}
public void useDesc() {
this.direction = "desc";
}
public void useAsc() {
this.direction = "asc";
}
public String getFieldName() {
return this.fieldName;
}
public String getDirection() {
return this.direction;
}
}
package com.liquidnet.service.constant;
import java.util.HashMap;
import java.util.Map;
/**
* 业务类型
* @author <a href="mailto:kowlone2006@163.com">An Jiabin</a>
* @version 1.0 2017年9月6日 下午3:53:10
*/
public enum BizType {
/** 登录绑定 */
BIND_LOGIN(1),
/** 绑定手机号 */
BIND_PHONENUMBER(2),
/** 实名认证 */
BIND_IDCARD(3),
/** 绑卡银行卡*/
BIND_BANKCARD(4),
/** 语音认证*/
BIND_VOICE(5),
/** 信审*/
CREDIT_ADUIT(6),
/**充值 */
RECHARGE(7),
/** 提现*/
WITHDRAW(8),
/** 还款*/
REPAYMENT(9),
/** 借款*/
BORROW_MONEY(10),
/** 借款*/
TEMP_CREDITAMOUNT(11),
/** 延期还款*/
POSTPONE_REPAYMENT(901),
;
private final int type;
BizType(int type) {
this.type = type;
}
public int getType() {
return type;
}
public int getValue() {
return type;
}
private static Map<Integer, BizType> cache = new HashMap<>();
static{
for (BizType activityCode : BizType.values()) {
cache.put(activityCode.getValue(), activityCode);
}
}
/**
* <p>get.</p>
*
* @param value a int.
* @return a {@link BizType} object.
*/
public static BizType get(int value) {
return cache.get(value);
}
public static BizType getActivityCode(int value) {
for (BizType activityCode : BizType.values()) {
if (value == activityCode.getValue()) {
return activityCode;
}
}
return null;
}
}
package com.liquidnet.service.constant;
/**
* Created by Administrator on 2017/2/7.
*/
public class GlobalConstant {
//处理间隔时间
//mils
public final static int INTERVAL_MILS = 0;
//consumer失败后等待时间(mils)
public static final int ONE_SECOND = 1 * 1000;
//异常sleep时间(mils)
public static final int ONE_MINUTE = 1 * 60 * 1000;
//MQ消息retry时间
public static final int RETRY_TIME_INTERVAL = ONE_MINUTE;
//MQ消息有效时间
public static final int VALID_TIME = ONE_MINUTE;
public static final String PRODUCES_JSON = "";
public final static String STREAM_DATA_NAME = "streamData";
public static final int LOOKUP_TIMES = 10;
public static final String JSON = "JSON";
public static final String XML = "XML";
// resttemplate 相关
public static String CONTENT_TYPE = "Content-Type";
public static String APPLICATION_XML = "application/xml";
// global id 相关
// 字符编码相关
public static String ENCODING_UTF8 = "UTF-8";
public static Long ZERO = 0L;
// Default ex.text
public static String RESPONSE_ERROE_UNKNOWN = "System busy, please try again later";
public static String RESPONSE_ERROE_SYSTEM = "System abnormal";
public static String RESPONSE_ERROE_BIZ = "Processing failed";
}
package com.liquidnet.service.constant;
import java.util.LinkedHashMap;
import java.util.Map;
import org.apache.commons.lang3.StringUtils;
import com.liquidnet.commons.lang.util.JsonUtils;
public enum SendTargetEnum {
/**
* 1、订单结清未复借
* 2、授信成功用户
* 3、授信成功未借款用户
* 4、放款成功未提现用户
* 5、借款成功用户
* 6、注册成功用户
*/
SETTLENOLOAN("1000","订单结清未复借 "),
CREDITSUCCESS("2000","授信成功用户 "),
CREDITSUCCESSNOLOAN("3000","授信成功未借款用户 "),
LOANSUCCESSNOWITHDRAWALS("4000","放款成功未提现用户 "),
LOANSUCCESS("5000","借款成功用户 "),
REGISTERUCCESS("6000","注册成功用户 "),
REGISTERSUCCESSNOTCREDIT("7000","注册成功未信审 "),
CREDITINGANDCREDITSUCCESS("8000","注册成功信审中、信审成功 "),
;
private String code;
private String msg;
private SendTargetEnum(String code,String msg){
this.code=code;
this.msg=msg;
}
public String getCode() {
return code;
}
public String getMsg() {
return msg;
}
public static String getMsg(String code){
SendTargetEnum[] enums=SendTargetEnum.values();
if(StringUtils.isEmpty(code)){
return null;
}
for(SendTargetEnum e:enums){
if(e.code.equals(code)){
return e.msg;
}
}
return null;
}
public static SendTargetEnum getEnum(String code){
SendTargetEnum[] enums=SendTargetEnum.values();
if(StringUtils.isEmpty(code)){
return null;
}
for(SendTargetEnum e:enums){
if(e.code.equals(code)){
return e;
}
}
return null;
}
public static String triggerType(){
SendTargetEnum[] enums=SendTargetEnum.values();
Map<String,String> map=new LinkedHashMap<String,String>();
for(SendTargetEnum e:enums){
map.put(e.code, e.msg);
}
return JsonUtils.toJson(map);
}
public static void main(String[] args) {
SendTargetEnum[] enums=SendTargetEnum.values();
Map<String,String> map=new LinkedHashMap<String,String>();
for(SendTargetEnum e:enums){
map.put(e.code, e.msg);
}
System.out.println(JsonUtils.toJson(map));
}
}
package com.liquidnet.service.constant;
import java.util.LinkedHashMap;
import java.util.Map;
import org.apache.commons.lang3.StringUtils;
import com.liquidnet.commons.lang.util.JsonUtils;
/**
* 触发行为
* @author Administrator
*
*/
public enum TriggerTypeEnum {
CREDIT_SUCCESS("1001","信审成功"),
CREDIT_FAIL("1002","信审失败"),
LEND_SUCCESS("2001","借款成功"),
LEND_FAIL("2002","借款失败"),
LOAN_SUCCESS("3001","放款成功"),
LOAN_FAIL("3002","放款失败"),
WITHDRAWALS_SUCCESS("4001","提现成功"),
WITHDRAWALS_FAIL("4002","提现失败"),
RECHARGE_SUCCESS("5001","充值成功"),
RECHARGE_FAIL("5002","充值失败"),
//批量自动划扣 // 60(还款),1(划扣方式手动) 1(账户类型余额户) (0 ||1 是否全部) 0||1(划扣)
REPAYMENT_BATCH_ACCOUNT_SUCCESS("602111","批量账户划扣成功"),
REPAYMENT_BATCH_PART_ACCOUNT_SUCCESS("602101","批量账户部分划扣成功"),
REPAYMENT_BATCH_BANK_SUCCESS("602211","批量银行卡划扣成功"),
REPAYMENT_BATCH_ACCOUNT_FAIL("602110","批量账户划扣失败"),
REPAYMENT_BATCH_PART_ACCOUNT_FAIL("602100","批量账户部分划扣失败"),
REPAYMENT_BATCH_BANK_FAIL("602210","批量银行卡划扣失败"),
REPAYMENT_BATCH_BANK3_SUCCESS("602311","批量银行卡划扣成功"),
REPAYMENT_BATCH_BANK3_FAIL("602310","批量银行卡划扣失败"),
// 催收- 划扣
REPAYMENT_COLLECTION_ACCOUNT_SUCCESS("603111","催收账户划扣成功"),
REPAYMENT_COLLECTION_PART_ACCOUNT_SUCCESS("603101","催收账户部分划扣成功"),
REPAYMENT_COLLECTION_ACCOUNT_FAIL("603110","催收账户划扣失败"),
REPAYMENT_COLLECTION_PART_ACCOUNT_FAIL("603100","催收账户部分划扣失败"),
REPAYMENT_COLLECTION_BANK_SUCCESS("603211","催收银行卡划扣成功"),
REPAYMENT_COLLECTION__BANK_FAIL("603210","催收银行卡划扣失败"),
REPAYMENT_COLLECTION_BANK3_SUCCESS("603311","催收银行卡划扣成功"),
REPAYMENT_COLLECTION__BANK3_FAIL("603310","催收银行卡划扣失败"),
// 用户主动还款
REPAYMENT_USER_ACCOUNT_SUCCESS("601111","主动账户划扣成功"),
REPAYMENT_USER_ACCOUNT_FAIL("601110","主动账户划扣失败"),
REPAYMENT_USER_PART_ACCOUNT_SUCCESS("601101","主动账户部分划扣成功"),
REPAYMENT_USER_PART_ACCOUNT_FAIL("601100","主动账户部分划扣失败"),
REPAYMENT_USER_BANK_SUCCESS("601211","主动银行卡划扣成功"),
REPAYMENT_USER__BANK_FAIL("601210","主动银行卡划扣失败"),
//银行卡副卡划扣
REPAYMENT_USER_BANK3_SUCCESS("601311","主动银行卡划扣成功"),
REPAYMENT_USER__BANK3_FAIL("601310","主动银行卡划扣失败"),
REPAYMENT_OVERDUE("6003","还款逾期"),
TE_SUCCESS("7001","提额成功"),
TE_FAIL("7002","提额失败"),
ADDBANKCARD_SUCCESS("8001","添加新卡"),
CHANGEBANKCARD_SUCCESS("8003","变更主卡成功"),
// ADDBANKCARD_FAIL("8002","变更主卡失败"),
// CHANGEBANKCARD_FAIL("8004","变更主卡失败"),
REPAYMENTDAY_THREE("9003","还款日前三天"),
REPAYMENTDAY_TWO("9002","还款日前两天"),
REPAYMENTDAY_ONE("9001","还款日前一天"),
REPAYMENTDAY_ZERO("9000","还款日当天"),
COUPON_NOTICE_THREE("10003","道具到期提醒"),
COUPON_NOTICE_TWO("10002","道具到期提醒"),
COUPON_NOTICE_ONE("10001","道具到期提醒"),
COUPON_NOTICE_ZERO("10000","道具到期提醒"),
CREDIT_SUCCESS_T("100100","信审成功T日提醒"),
LOAN_SUCCESS_T("300100","放款成功T日提醒"),
;
private String code;
private String msg;
private TriggerTypeEnum(String code,String msg){
this.code=code;
this.msg=msg;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public static String getMsg(String code){
TriggerTypeEnum[] enums=TriggerTypeEnum.values();
if(StringUtils.isEmpty(code)){
return null;
}
for(TriggerTypeEnum e:enums){
if(e.code.equals(code)){
return e.msg;
}
}
return null;
}
public static TriggerTypeEnum getEnum(String code){
TriggerTypeEnum[] enums=TriggerTypeEnum.values();
if(StringUtils.isEmpty(code)){
return null;
}
for(TriggerTypeEnum e:enums){
if(e.code.equals(code)){
return e;
}
}
return null;
}
public static String triggerType(){
TriggerTypeEnum[] enums=TriggerTypeEnum.values();
Map<String,String> map=new LinkedHashMap<String,String>();
for(TriggerTypeEnum e:enums){
map.put(e.code, e.msg);
}
return JsonUtils.toJson(map);
}
public static void main(String[] args) {
TriggerTypeEnum[] enums=TriggerTypeEnum.values();
Map<String,String> map=new LinkedHashMap<String,String>();
for(TriggerTypeEnum e:enums){
map.put(e.code, e.msg);
}
System.out.println(JsonUtils.toJson(map));
}
}
......@@ -26,6 +26,7 @@ public class AdamRedisConst {
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_CODE = INFO.concat("member:code:");
public static final String INFO_MEMBER_BLACK = INFO.concat("member:black:");
public static final String SHOT_MEMBER_ORDER = ADAM.concat("morder:");
......@@ -39,9 +40,11 @@ public class AdamRedisConst {
/* ----------------------------------------------------------------- */
public static final String LOCK_KEY_UMEMBER_NO = "adam:lk:member_no";
public static final String LOCK_KEY_UMEMBER_NO = "adam:lk:member:no";
// // // // // // // // // //
public static final String LOCK_KEY_UREGISTER = "adam:lk:register:";
public static final String LOCK_KEY_UIDENTITY = "adam:lk:identity:";
public static final String LOCK_KEY_UMEMBER_CODE = "adam:lk:member:code:";
/* ----------------------------------------------------------------- */
}
......@@ -4,6 +4,7 @@ import com.fasterxml.jackson.databind.JsonNode;
import com.github.pagehelper.PageInfo;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import com.liquidnet.common.cache.redisson.util.RedisLockUtil;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.HttpUtil;
import com.liquidnet.commons.lang.util.JsonUtils;
......@@ -32,6 +33,8 @@ import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import static com.liquidnet.service.adam.constant.AdamRedisConst.LOCK_KEY_UMEMBER_CODE;
@ApiSupport(order = 10031)
@Api(tags = "购买会员")
@Slf4j
......@@ -87,7 +90,10 @@ public class AdamMemberOrderController {
if (StringUtils.isBlank(param.getName()) || StringUtils.isBlank(param.getIdCard())) {
return ResponseDto.failure(ErrorMapping.get("10101"));
}
adamUserService.identity(currentUid, param.getName(), param.getIdCard());
AdamRealInfoVo vo = adamUserService.identity(currentUid, param.getName(), param.getIdCard());
if (null == vo) {
return ResponseDto.failure(ErrorMapping.get("10000"));
}
}
return adamMemberOrderService.buyMemberOrMemberCode(param);
......@@ -186,10 +192,21 @@ public class AdamMemberOrderController {
if (StringUtils.isBlank(param.getName()) || StringUtils.isBlank(param.getIdCard())) {
return ResponseDto.failure(ErrorMapping.get("10101"));
}
adamUserService.identity(currentUid, param.getName(), param.getIdCard());
AdamRealInfoVo vo = adamUserService.identity(currentUid, param.getName(), param.getIdCard());
if (null == vo) {
return ResponseDto.failure(ErrorMapping.get("10000"));
}
}
if (RedisLockUtil.tryLock(LOCK_KEY_UMEMBER_CODE + param.getMemberCode(), 1, 5)) {
ResponseDto<AdamMemberOrderResult> responseDto = adamMemberOrderService.exchangeMemberCode(param);
return adamMemberOrderService.exchangeMemberCode(param);
if (!responseDto.isSuccess()) {
RedisLockUtil.unlock(LOCK_KEY_UMEMBER_CODE + param.getMemberCode());
}
return responseDto;
} else {
return ResponseDto.failure(ErrorMapping.get("10000"));
}
}
@ApiOperationSupport(order = 5)
......
......@@ -205,13 +205,13 @@ public class AdamUserController {
@Pattern(regexp = LnsRegex.Valid.CHINESE_ID_CARD, message = "身份证号格式有误")
@RequestParam String idCard) {
log.debug("name:{},idCard:{}", name, idCard);
AdamRealInfoVo infoVo = adamUserService.identity(CurrentUtil.getCurrentUid(), name, idCard);
infoVo.setName(SensitizeUtil.chineseName(infoVo.getName()));
infoVo.setIdCard(SensitizeUtil.custom(infoVo.getIdCard(), 3, 2));
return ResponseDto.success(infoVo);
AdamRealInfoVo vo = adamUserService.identity(CurrentUtil.getCurrentUid(), name, idCard);
if (null == vo) {
return ResponseDto.failure(ErrorMapping.get("10000"));
}
vo.setName(SensitizeUtil.chineseName(vo.getName()));
vo.setIdCard(SensitizeUtil.custom(vo.getIdCard(), 3, 2));
return ResponseDto.success(vo);
}
// @ApiOperationSupport(order = 6)
......
......@@ -35,7 +35,9 @@ import org.springframework.util.StringUtils;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.util.*;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
@Slf4j
@Service
......@@ -321,7 +323,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
LocalDateTime now = LocalDateTime.now();
// 创建会员订单
AdamMemberOrderVo initMemberOrderVo = AdamMemberOrderVo.getNew();
initMemberOrderVo.setOrderNo(IDGenerator.nextSnowId().toString().concat("V"));
initMemberOrderVo.setOrderNo(IDGenerator.nextSnowId().concat("V"));
initMemberOrderVo.setUid(CurrentUtil.getCurrentUid());
initMemberOrderVo.setMode(param.getMode());
initMemberOrderVo.setPrice(memberPriceVo.getPrice());
......
......@@ -7,6 +7,7 @@ import com.liquidnet.commons.lang.util.HttpUtil;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.commons.lang.util.SensitizeUtil;
import com.liquidnet.service.adam.constant.AdamRedisConst;
import com.liquidnet.service.adam.dto.AdamThirdPartParam;
import com.liquidnet.service.adam.dto.vo.*;
import com.liquidnet.service.adam.entity.AdamEnters;
......@@ -104,6 +105,8 @@ public class AdamUserServiceImpl implements IAdamUserService {
s = System.currentTimeMillis();
adamRdmService.setUidByMobile(mobile, userInfoVo.getUid());
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
} else {
userInfoVo = adamRdmService.getUserInfoVoByUid(uid);
}
RedisLockUtil.unlock(LOCK_KEY_UREGISTER + mobile);
}
......@@ -170,6 +173,8 @@ public class AdamUserServiceImpl implements IAdamUserService {
SqlMapping.gets(toMqSqls, initUserObjs, initThirdPartObjs)
);
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
} else {
userInfoVo = adamRdmService.getUserInfoVoByUid(uid);
}
RedisLockUtil.unlock(LOCK_KEY_UREGISTER + param.getOpenId() + param.getPlatform());
}
......@@ -351,8 +356,10 @@ public class AdamUserServiceImpl implements IAdamUserService {
@Override
// @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public AdamRealInfoVo identity(String uid, String name, String idCard) {
// TODO: 2021/5/18 调用第三方认证服务
AdamRealInfoVo vo = null;
if (RedisLockUtil.tryLock(AdamRedisConst.LOCK_KEY_UIDENTITY + uid, 1, 3)) {
vo = adamRdmService.getRealInfoVoByUid(uid);
if (null == vo) {
LinkedMultiValueMap<String, String> paramsMap = new LinkedMultiValueMap<>();
paramsMap.add("realName", name);
paramsMap.add("cardNo", idCard);
......@@ -385,17 +392,19 @@ public class AdamUserServiceImpl implements IAdamUserService {
realName.setCreatedAt(LocalDateTime.now());
adamRealNameService.add(realName);
AdamRealInfoVo realInfoVo = AdamRealInfoVo.getNew();
realInfoVo.setUid(uid);
realInfoVo.setName(name);
realInfoVo.setIdCard(idCard);
realInfoVo.setType(realName.getType());
realInfoVo.setState(1);
vo = AdamRealInfoVo.getNew();
vo.setUid(uid);
vo.setName(name);
vo.setIdCard(idCard);
vo.setType(realName.getType());
vo.setState(1);
long s = System.currentTimeMillis();
adamRdmService.setRealInfoVoByUid(uid, realInfoVo);
adamRdmService.setRealInfoVoByUid(uid, vo);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
return realInfoVo;
}
RedisLockUtil.unlock(AdamRedisConst.LOCK_KEY_UIDENTITY + uid);
}
return vo;
}
}
......@@ -109,6 +109,16 @@ public class ConsumerProcessor {
this.consumerSqlDaoHandler(msg, channel);
}
// 订单创建
@RabbitListener(bindings = @QueueBinding(
exchange = @Exchange(MQConst.EXCHANGES_LIQUIDNET_SQL_ORDER_CREADE), key = MQConst.ROUTING_KEY_SQL_ORDER_CREATE,
value = @Queue(MQConst.QUEUES_SQL_ORDER_CREATE)
))
public void consumerOrderCreate(Message msg, Channel channel) {
log.info("=== CONSUMER_ORDER_CREATE ===");
this.consumerSqlDaoHandler(msg, channel);
}
// 订单创建
@RabbitListener(bindings = @QueueBinding(
exchange = @Exchange(MQConst.EXCHANGES_LIQUIDNET_SQL_ORDER_CREADE), key = MQConst.ROUTING_KEY_SQL_ORDER_CREATE,
......@@ -168,6 +178,51 @@ public class ConsumerProcessor {
log.info("=== CONSUMER_ORDER_CLOSE ===");
this.consumerSqlDaoHandler(msg, channel);
}
// 订单关闭
@RabbitListener(bindings = @QueueBinding(
exchange = @Exchange(MQConst.EXCHANGES_LIQUIDNET_SQL_ORDER_CLOSE), key = MQConst.ROUTING_KEY_SQL_ORDER_CLOSE,
value = @Queue(MQConst.QUEUES_SQL_ORDER_CLOSE)
))
public void consumerOrderClose1(Message msg, Channel channel) {
log.info("=== CONSUMER_ORDER_CLOSE ===");
this.consumerSqlDaoHandler(msg, channel);
}
// 订单关闭
@RabbitListener(bindings = @QueueBinding(
exchange = @Exchange(MQConst.EXCHANGES_LIQUIDNET_SQL_ORDER_CLOSE), key = MQConst.ROUTING_KEY_SQL_ORDER_CLOSE,
value = @Queue(MQConst.QUEUES_SQL_ORDER_CLOSE)
))
public void consumerOrderClose2(Message msg, Channel channel) {
log.info("=== CONSUMER_ORDER_CLOSE ===");
this.consumerSqlDaoHandler(msg, channel);
}
// 订单关闭
@RabbitListener(bindings = @QueueBinding(
exchange = @Exchange(MQConst.EXCHANGES_LIQUIDNET_SQL_ORDER_CLOSE), key = MQConst.ROUTING_KEY_SQL_ORDER_CLOSE,
value = @Queue(MQConst.QUEUES_SQL_ORDER_CLOSE)
))
public void consumerOrderClose3(Message msg, Channel channel) {
log.info("=== CONSUMER_ORDER_CLOSE ===");
this.consumerSqlDaoHandler(msg, channel);
}
// 订单关闭
@RabbitListener(bindings = @QueueBinding(
exchange = @Exchange(MQConst.EXCHANGES_LIQUIDNET_SQL_ORDER_CLOSE), key = MQConst.ROUTING_KEY_SQL_ORDER_CLOSE,
value = @Queue(MQConst.QUEUES_SQL_ORDER_CLOSE)
))
public void consumerOrderClose4(Message msg, Channel channel) {
log.info("=== CONSUMER_ORDER_CLOSE ===");
this.consumerSqlDaoHandler(msg, channel);
}// 订单关闭
@RabbitListener(bindings = @QueueBinding(
exchange = @Exchange(MQConst.EXCHANGES_LIQUIDNET_SQL_ORDER_CLOSE), key = MQConst.ROUTING_KEY_SQL_ORDER_CLOSE,
value = @Queue(MQConst.QUEUES_SQL_ORDER_CLOSE)
))
public void consumerOrderClose5(Message msg, Channel channel) {
log.info("=== CONSUMER_ORDER_CLOSE ===");
this.consumerSqlDaoHandler(msg, channel);
}
// 订单支付
@RabbitListener(bindings = @QueueBinding(
......
......@@ -559,43 +559,43 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
httpData.add("return_url", payOrderParam.getReturnUrl() + orderTicketId);
}
// currentTime = System.currentTimeMillis();
// String returnData = HttpUtil.post(payUrl + payOrderParam.getDeviceFrom() + "/" + payOrderParam.getPayType(), httpData);
// currentTime = System.currentTimeMillis() - currentTime;
// log.debug("调用 PHP 支付 -> time:" + (currentTime) + "毫秒");
// PayResultVo payResultVo = JsonUtils.fromJson(returnData, PayResultVo.class);
PayResultVo payResultVo = null;
try {
payResultVo = JsonUtils.fromJson("{\n" +
" \"code\": \"20210618130049218267704668657P\",\n" +
" \"order_code\": \"T7774750254320448484\",\n" +
" \"status\": null,\n" +
" \"order_id\": \"77747502543208448\",\n" +
" \"showUrl\": \"http://devm.zhengzai.tv/#/ticket/purchase/detail?id=5936241&amp;type=purchase&amp;performance_id=5936241&amp;ticket_id=10981&amp;amount=1&amp;products_array=&amp;amount_array=&amp;express=077747502543208448\",\n" +
" \"returnUrl\": \"http://devm.zhengzai.tv/#/order/status?order_type=ticket&amp;order_id=77747502543208448\",\n" +
" \"price\": 0.01,\n" +
" \"pay_data\": {\n" +
" \"packages\": null,\n" +
" \"partnerid\": null,\n" +
" \"prepayid\": null,\n" +
" \"sign\": null,\n" +
" \"mweb_url\": null,\n" +
" \"paySign\": null,\n" +
" \"signType\": null,\n" +
" \"redirect_url\": \"https://openapi.alipay.com/gateway.do?alipay_sdk=lokielse%2Fomnipay-alipay&app_id=2019082866535131&biz_content=%7B%22product_code%22%3A%22QUICK_WAP_PAY%22%2C%22total_amount%22%3A%220.01%22%2C%22subject%22%3A%2206%5Cu670830%5Cu65e5%5Cu5355%5Cu65e5%5Cu7968%5Cu80e1%5Cu5927%5Cu7f8e%5Cu5e76%5Cu53d1%5Cu4e0b%5Cu5355%22%2C%22body%22%3A%22%5Cu80e1%5Cu5927%5Cu7f8e%5Cu5e76%5Cu53d1%5Cu4e0b%5Cu5355%5Cu5355%5Cu65e5%5Cu796806%5Cu670830%5Cu65e5%22%2C%22out_trade_no%22%3A%2220210618130049218267704668657P%22%2C%22time_expire%22%3A%222021-06-18+13%3A06%22%2C%22quit_url%22%3A%22http%3A%5C%2F%5C%2Fdevm.zhengzai.tv%5C%2F%23%5C%2Fticket%5C%2Fpurchase%5C%2Fdetail%3Fid%3D5936241%26amp%3Btype%3Dpurchase%26amp%3Bperformance_id%3D5936241%26amp%3Bticket_id%3D10981%26amp%3Bamount%3D1%26amp%3Bproducts_array%3D%26amp%3Bamount_array%3D%26amp%3Bexpress%3D077747502543208448%22%7D&charset=utf-8&format=JSON&method=alipay.trade.wap.pay&notify_url=http%3A%2F%2Ftestpay.zhengzai.tv%2Fnotify%2Fwap%2Falipay%2F1&return_url=http%3A%2F%2Fdevm.zhengzai.tv%2F%23%2Forder%2Fstatus%3Forder_type%3Dticket%26amp%3Border_id%3D77747502543208448&sign_type=RSA2&timestamp=2021-06-18+13%3A00%3A49&version=1.0&sign=UaHmNdI1cXjjSkR4gwrnELSWXqb1Icg1uCOe0vEo5yHCqWOy4JZCZbjCR1xOHQKowSMBAr6U2XLtMAaNXr6mX%2B%2F5IiaChsD4IPoODNT7F4GckVcqP3GkdLZTro%2FGmBau6VoYw1uVpyutQTJsjEU1fQ%2F5KDAKLvg0XG%2F1D%2BXb%2Bv6LdLDvehCEPzy4W%2BCT0qPANU4ysgZkt9hP1ljH61%2FBWiDnfz%2BOdust4KBoJYQzNWO3XSwvc17OxdGHn8EBmYRJz6sr1nt0i2h4BGQtjrOHRB3dToVkxrlsHtbrOmiCdRFH6utSVA8UjeKtlEB%2FH%2BkQfVxPkpOicTjkokhDNK6svg%3D%3D\",\n" +
" \"order_str\": null,\n" +
" \"appId\": null,\n" +
" \"appid\": null,\n" +
" \"nonceStr\": null,\n" +
" \"noncestr\": null,\n" +
" \"timeStamp\": null,\n" +
" \"timestamp\": null,\n" +
" \"package\": null\n" +
" }\n" +
" }", PayResultVo.class);
} catch (Exception e) {
payResultVo = new PayResultVo();
}
currentTime = System.currentTimeMillis();
String returnData = HttpUtil.post(payUrl + payOrderParam.getDeviceFrom() + "/" + payOrderParam.getPayType(), httpData);
currentTime = System.currentTimeMillis() - currentTime;
log.debug("调用 PHP 支付 -> time:" + (currentTime) + "毫秒");
PayResultVo payResultVo = JsonUtils.fromJson(returnData, PayResultVo.class);
// PayResultVo payResultVo = null;
// try {
// payResultVo = JsonUtils.fromJson("{\n" +
// " \"code\": \"20210618130049218267704668657P\",\n" +
// " \"order_code\": \"T7774750254320448484\",\n" +
// " \"status\": null,\n" +
// " \"order_id\": \"77747502543208448\",\n" +
// " \"showUrl\": \"http://devm.zhengzai.tv/#/ticket/purchase/detail?id=5936241&amp;type=purchase&amp;performance_id=5936241&amp;ticket_id=10981&amp;amount=1&amp;products_array=&amp;amount_array=&amp;express=077747502543208448\",\n" +
// " \"returnUrl\": \"http://devm.zhengzai.tv/#/order/status?order_type=ticket&amp;order_id=77747502543208448\",\n" +
// " \"price\": 0.01,\n" +
// " \"pay_data\": {\n" +
// " \"packages\": null,\n" +
// " \"partnerid\": null,\n" +
// " \"prepayid\": null,\n" +
// " \"sign\": null,\n" +
// " \"mweb_url\": null,\n" +
// " \"paySign\": null,\n" +
// " \"signType\": null,\n" +
// " \"redirect_url\": \"https://openapi.alipay.com/gateway.do?alipay_sdk=lokielse%2Fomnipay-alipay&app_id=2019082866535131&biz_content=%7B%22product_code%22%3A%22QUICK_WAP_PAY%22%2C%22total_amount%22%3A%220.01%22%2C%22subject%22%3A%2206%5Cu670830%5Cu65e5%5Cu5355%5Cu65e5%5Cu7968%5Cu80e1%5Cu5927%5Cu7f8e%5Cu5e76%5Cu53d1%5Cu4e0b%5Cu5355%22%2C%22body%22%3A%22%5Cu80e1%5Cu5927%5Cu7f8e%5Cu5e76%5Cu53d1%5Cu4e0b%5Cu5355%5Cu5355%5Cu65e5%5Cu796806%5Cu670830%5Cu65e5%22%2C%22out_trade_no%22%3A%2220210618130049218267704668657P%22%2C%22time_expire%22%3A%222021-06-18+13%3A06%22%2C%22quit_url%22%3A%22http%3A%5C%2F%5C%2Fdevm.zhengzai.tv%5C%2F%23%5C%2Fticket%5C%2Fpurchase%5C%2Fdetail%3Fid%3D5936241%26amp%3Btype%3Dpurchase%26amp%3Bperformance_id%3D5936241%26amp%3Bticket_id%3D10981%26amp%3Bamount%3D1%26amp%3Bproducts_array%3D%26amp%3Bamount_array%3D%26amp%3Bexpress%3D077747502543208448%22%7D&charset=utf-8&format=JSON&method=alipay.trade.wap.pay&notify_url=http%3A%2F%2Ftestpay.zhengzai.tv%2Fnotify%2Fwap%2Falipay%2F1&return_url=http%3A%2F%2Fdevm.zhengzai.tv%2F%23%2Forder%2Fstatus%3Forder_type%3Dticket%26amp%3Border_id%3D77747502543208448&sign_type=RSA2&timestamp=2021-06-18+13%3A00%3A49&version=1.0&sign=UaHmNdI1cXjjSkR4gwrnELSWXqb1Icg1uCOe0vEo5yHCqWOy4JZCZbjCR1xOHQKowSMBAr6U2XLtMAaNXr6mX%2B%2F5IiaChsD4IPoODNT7F4GckVcqP3GkdLZTro%2FGmBau6VoYw1uVpyutQTJsjEU1fQ%2F5KDAKLvg0XG%2F1D%2BXb%2Bv6LdLDvehCEPzy4W%2BCT0qPANU4ysgZkt9hP1ljH61%2FBWiDnfz%2BOdust4KBoJYQzNWO3XSwvc17OxdGHn8EBmYRJz6sr1nt0i2h4BGQtjrOHRB3dToVkxrlsHtbrOmiCdRFH6utSVA8UjeKtlEB%2FH%2BkQfVxPkpOicTjkokhDNK6svg%3D%3D\",\n" +
// " \"order_str\": null,\n" +
// " \"appId\": null,\n" +
// " \"appid\": null,\n" +
// " \"nonceStr\": null,\n" +
// " \"noncestr\": null,\n" +
// " \"timeStamp\": null,\n" +
// " \"timestamp\": null,\n" +
// " \"package\": null\n" +
// " }\n" +
// " }", PayResultVo.class);
// } catch (Exception e) {
// payResultVo = new PayResultVo();
// }
payResultVo.setOrder_id(orderTicketId);
payResultVo.setPrice(orderTickets.getPriceActual());
orderTickets.setPayCode(payResultVo.getCode());
......
......@@ -94,11 +94,11 @@ public class MongoVoUtils {
kylinTicketVo.setTicketStatus(t2);
ticketList.add(kylinTicketVo);
//票种 库存redis
if (!redisUtil.hHasKey(KylinRedisConst.PERFORMANCES_INVENTORY + kylinTicketVo.getTicketsId(), KylinRedisConst.SURPLUS_GENERAL)) {
dataUtils.setSurplusGeneral(kylinTicketVo.getTicketsId(), t2.getTotalGeneral());
dataUtils.setSurplusExchange(kylinTicketVo.getTicketsId(), t2.getSurplusExchange());
}
// //票种 库存redis
// if (!redisUtil.hHasKey(KylinRedisConst.PERFORMANCES_INVENTORY + kylinTicketVo.getTicketsId(), KylinRedisConst.SURPLUS_GENERAL)) {
// dataUtils.setSurplusGeneral(kylinTicketVo.getTicketsId(), t2.getTotalGeneral());
// dataUtils.setSurplusExchange(kylinTicketVo.getTicketsId(), t2.getSurplusExchange());
// }
if (kylinTicketVo.getIsMember() == 1) {
if (kylinTicketVo.getMemberPrice().compareTo(kylinTicketVo.getPrice()) != 0) {
......
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