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

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

Merge branch 'dev' into test

# Conflicts:
#	liquidnet-bus-config/liquidnet-config/liquidnet-service-kylin.yml
parents fb57a961 96d1e958
......@@ -57,7 +57,7 @@ public class AdamAddressesVo implements java.io.Serializable, Cloneable {
this.setAddressesId(source.getAddressesId());
this.setUid(source.getUid());
this.setName(source.getName());
this.setPhone(SensitizeUtil.custom(source.getPhone(), 3, 4));
this.setPhone(source.getPhone());
this.setProvince(source.getProvince());
this.setCity(source.getCity());
this.setCounty(source.getCounty());
......@@ -69,8 +69,4 @@ public class AdamAddressesVo implements java.io.Serializable, Cloneable {
this.setDeletedAt(source.getDeletedAt());
return this;
}
public String getPhone() {
return SensitizeUtil.custom(phone, 3, 4);
}
}
......@@ -53,9 +53,9 @@ public class AdamEntersVo implements java.io.Serializable, Cloneable {
this.setEntersId(source.getEntersId());
this.setUid(source.getUid());
this.setType(source.getType());
this.setName(SensitizeUtil.chineseName(source.getName()));
this.setMobile(SensitizeUtil.custom(source.getMobile(), 3, 4));
this.setIdCard(SensitizeUtil.custom(source.getIdCard(), 3, 2));
this.setName(source.getName());
this.setMobile(source.getMobile());
this.setIdCard(source.getIdCard());
this.setIsDefault(source.getIsDefault());
this.setState(source.getState());
this.setCreatedAt(source.getCreatedAt());
......@@ -63,12 +63,4 @@ public class AdamEntersVo implements java.io.Serializable, Cloneable {
this.setDeletedAt(source.getDeletedAt());
return this;
}
public String getMobile() {
return SensitizeUtil.custom(mobile, 3, 4);
}
public String getIdCard() {
return SensitizeUtil.custom(idCard, 3, 2);
}
}
......@@ -28,12 +28,4 @@ public class AdamRealInfoVo implements Serializable, Cloneable {
}
return new AdamRealInfoVo();
}
public String getName() {
return SensitizeUtil.chineseName(name);
}
public String getIdCard() {
return SensitizeUtil.custom(idCard, 3, 2);
}
}
......@@ -62,8 +62,4 @@ public class AdamUserInfoVo implements java.io.Serializable, Cloneable {
}
return new AdamUserInfoVo();
}
public String getMobile() {
return SensitizeUtil.custom(mobile, 3, 4);
}
}
package com.liquidnet.service.adam.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.liquidnet.service.adam.dto.AdamMemberCodeParam;
import com.liquidnet.service.adam.entity.AdamMemberCode;
/**
* 会员码
*/
public interface IAdamMemberCodeService extends IService<AdamMemberCode> {
void add(AdamMemberCodeParam param);
}
......@@ -22,7 +22,7 @@ public interface IAdamMemberOrderService extends IService<AdamMemberOrder> {
*
* @param param
*/
ResponseDto<AdamMemberOrderResult> buyMemberOrMemberCode(AdamMemberOrderParam param) throws Exception;
ResponseDto<AdamMemberOrderResult> buyMemberOrMemberCode(AdamMemberOrderParam param);
/**
* 支付回调
......
......@@ -2,6 +2,7 @@ package com.liquidnet.service.kylin.dto.param;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
/**
......@@ -25,6 +26,7 @@ public class RefundApplyParam implements Serializable {
private Double RefundPriceExpress;
private List<String> ticketEntityIds;
private List<BigDecimal> entitiesPrice;
private List<String> ids;
......
......@@ -51,16 +51,4 @@ public class KylinStationCheckOrderVo implements Serializable {
return new KylinStationCheckOrderVo();
}
}
public String getUserName() {
return SensitizeUtil.chineseName(userName);
}
public String getEnterName() {
return SensitizeUtil.chineseName(enterName);
}
public String getEnterMobile() {
return SensitizeUtil.custom(enterMobile, 3, 4);
}
}
package com.liquidnet.service.kylin.dto.vo.returns;
import com.liquidnet.service.kylin.dao.KylinOrderTicketEntitiesDao;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderTicketVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import lombok.Data;
import java.util.List;
@Data
public class RefundOrderDetailsVo {
private KylinOrderTicketVo orderTicketVo;
private KylinPerformanceVo kylinPerformanceVo;
private List<KylinOrderTicketEntitiesDao> KylinOrderTicketEntitiesDao;
}
......@@ -14,6 +14,7 @@ import com.liquidnet.service.kylin.dto.param.RefundApplyParam;
import com.liquidnet.service.kylin.dto.param.RefundSearchParam;
import com.liquidnet.service.kylin.dto.vo.admin.OrderDetailsAdminVo;
import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderRefundsVo;
import com.liquidnet.service.kylin.dto.vo.returns.RefundOrderDetailsVo;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
......@@ -70,8 +71,8 @@ public class KylinOrderRefundAdminController extends BaseController {
@PostMapping("applyOrder")
@ResponseBody
public OrderDetailsAdminVo applyOrder(RefundApplyParam refundApplyParam) {
OrderDetailsAdminVo orderInfo = kylinOrderRefundsServiceImpl.orderDetails(refundApplyParam.getOrderCode());
public RefundOrderDetailsVo applyOrder(RefundApplyParam refundApplyParam) {
RefundOrderDetailsVo orderInfo = kylinOrderRefundsServiceImpl.orderDetails(refundApplyParam.getOrderCode());
return orderInfo;
}
......
......@@ -26,15 +26,15 @@ liquidnet:
database-name: dev_ln_scene
url-refund:
apply: "http://testpay.zhengzai.tv/refund/single"
notify: "https://devzuul.zhengzai.tv/kylin/refund/callback"
notify: "https://devkylin.zhengzai.tv/kylin/refund/callback"
url-banner:
provinces: "https://devservice.zhengzai.tv/provinces" #省份
url1: "https://devmediaapi.zhengzai.tv/api/video/list?per_page=50&page=1&type=1" #PGC点播
url2: "https://devmediaapi.zhengzai.tv/api/video/list?per_page=50&page=1&type=2" #PGC直播
url5: "https://devmall.zhengzai.tv/admin/fieldListForQuick?page=1&per_page=50" #场地
url6: "https://devzuul.zhengzai.tv/kylin/performances/roadShow/performance/status?pageNum=1&pageSize=50&status=3,6,7,8,9,10&title=''" #票务
url6: "https://devkylin.zhengzai.tv/kylin/performances/roadShow/performance/status?pageNum=1&pageSize=50&status=3,6,7,8,9,10&title=''" #票务
url7: "https://devmall.zhengzai.tv/admin/goodListForQuick?page=1&per_page=50" #商品
url8: "https://devzuul.zhengzai.tv/kylin/performances/roadShow/list?pageNum=1&pageSize=50" #巡演
url8: "https://devkylin.zhengzai.tv/kylin/performances/roadShow/list?pageNum=1&pageSize=50" #巡演
url13: "https://devmall.zhengzai.tv/admin/integrationListForQuick?page=1&per_page=50" #积分商城
url14: "https://devmall.zhengzai.tv/admin/good/collective/quick?page=1&per_page=50" #商品集合
url20: "https://devmerchantapi.zhengzai.tv/admin/mis/musician/quick?page=1&per_page=50" #音乐人
......
......@@ -26,15 +26,15 @@ liquidnet:
database-name: test_ln_scene
url-refund:
apply: "http://pay.zhengzai.tv/refund/single"
notify: "https://zuul.zhengzai.tv/kylin/refund/callback"
notify: "https://kylin.zhengzai.tv/kylin/refund/callback"
url-banner:
provinces: "https://service.zhengzai.tv/provinces" #省份
url1: "https://mediaapi.zhengzai.tv/api/video/list?per_page=50&page=1&type=1" #PGC点播
url2: "https://mediaapi.zhengzai.tv/api/video/list?per_page=50&page=1&type=2" #PGC直播
url5: "https://mall.zhengzai.tv/admin/fieldListForQuick?page=1&per_page=50" #场地
url6: "https://zuul.zhengzai.tv/kylin/performances/roadShow/performance/status?pageNum=1&pageSize=50&status=3,6,7,8,9,10&title=''" #票务
url6: "https://kylin.zhengzai.tv/kylin/performances/roadShow/performance/status?pageNum=1&pageSize=50&status=3,6,7,8,9,10&title=''" #票务
url7: "https://mall.zhengzai.tv/admin/goodListForQuick?page=1&per_page=50" #商品
url8: "https://zuul.zhengzai.tv/kylin/performances/roadShow/list?pageNum=1&pageSize=50" #巡演
url8: "https://kylin.zhengzai.tv/kylin/performances/roadShow/list?pageNum=1&pageSize=50" #巡演
url13: "https://mall.zhengzai.tv/admin/integrationListForQuick?page=1&per_page=50" #积分商城
url14: "https://mall.zhengzai.tv/admin/good/collective/quick?page=1&per_page=50" #商品集合
url20: "https://merchantapi.zhengzai.tv/admin/mis/musician/quick?page=1&per_page=50" #音乐人
......
......@@ -26,15 +26,15 @@ liquidnet:
database-name: test_ln_scene
url-refund:
apply: "http://testpay.zhengzai.tv/refund/single"
notify: "https://zuul.zhengzai.tv/kylin/refund/callback"
notify: "https://testkylin.zhengzai.tv/kylin/refund/callback"
url-banner:
provinces: "https://testservice.zhengzai.tv/provinces" #省份
url1: "https://testmediaapi.zhengzai.tv/api/video/list?per_page=50&page=1&type=1" #PGC点播
url2: "https://testmediaapi.zhengzai.tv/api/video/list?per_page=50&page=1&type=2" #PGC直播
url5: "https://testmall.zhengzai.tv/admin/fieldListForQuick?page=1&per_page=50" #场地
url6: "https://zuul.zhengzai.tv/kylin/kylin/performances/roadShow/performance/status?pageNum=1&pageSize=50&status=3,6,7,8,9,10&title=''" #票务
url6: "https://testkylin.zhengzai.tv/kylin/kylin/performances/roadShow/performance/status?pageNum=1&pageSize=50&status=3,6,7,8,9,10&title=''" #票务
url7: "https://testmall.zhengzai.tv/admin/goodListForQuick?page=1&per_page=50" #商品
url8: "https://zuul.zhengzai.tv/kylin/performances/roadShow/list?pageNum=1&pageSize=50" #巡演
url8: "https://testkylin.zhengzai.tv/kylin/performances/roadShow/list?pageNum=1&pageSize=50" #巡演
url13: "https://testmall.zhengzai.tv/admin/integrationListForQuick?page=1&per_page=50" #积分商城
url14: "https://testmall.zhengzai.tv/admin/good/collective/quick?page=1&per_page=50" #商品集合
url20: "https://testmerchantapi.zhengzai.tv/admin/mis/musician/quick?page=1&per_page=50" #音乐人
......
......@@ -8,28 +8,34 @@
<form class="form-horizontal m" id="form-post-add">
<input hidden="hidden" type="text" name="orderTicketsId" id="orderTicketsId">
<div class="form-group">
<label class="col-sm-3 control-label is-required">订单编号:</label>
<div class="col-sm-8">
<label class="col-sm-2 control-label is-required">订单编号:</label>
<div class="col-sm-10">
<input class="form-control" type="text" name="orderCode" id="orderCode" required>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">快递费:</label>
<div class="col-sm-8">
<label class="col-sm-2 control-label is-required">演出名称:</label>
<div class="col-sm-10">
<span id="performanceTitle"></span>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">快递费:</label>
<div class="col-sm-10">
<input class="form-control" type="number" min="0" name="RefundPriceExpress">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label is-required">入场人:</label>
<div class="col-sm-8">
<label class="col-sm-2 control-label is-required">入场人:</label>
<div class="col-sm-10">
<div class="col-sm-12 select-table table-bordered">
<table id="bootstrap-table"></table>
</div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label layui-required is-required">备注:</label>
<div class="col-sm-8">
<label class="col-sm-2 control-label layui-required is-required">备注:</label>
<div class="col-sm-10">
<textarea name="reason" maxlength="500" class="form-control layui-required" rows="3"></textarea>
</div>
</div>
......@@ -63,29 +69,93 @@
$("#orderTicketsId").val(result.orderTicketVo.orderTicketsId);
$('input[name="RefundPriceExpress"]').val(result.orderTicketVo.priceExpress);
$('input[name="RefundPriceExpress"]').attr("max", result.orderTicketVo.priceExpress);
$("#performanceTitle").text(result.kylinPerformanceVo.title);
var options = {
data: result.orderTicketEntitiesVo,
data: result.kylinOrderTicketEntitiesDao,
pagination: false,
columns: [{
checkbox: true
},
{
field: 'orderTicketEntitiesId',
title: '入场人id'
title: '入场人表id',
ignore: false
},
{
field: 'title',
title: '票种名称'
},
{
field: '',
title: '适用时间',
formatter: function (value, row, index) {
return row.useStart + "<br>" + row.useEnd;
}
},
{
field: 'enterName',
title: '入场人'
},
{
field: '',
title: '票状态',
formatter: function (value, row, index) {
var isPayment = "";
switch (row.isPayment) {
case 0:
isPayment = "未支付";
break;
case 1:
isPayment = "已支付";
break;
case 2:
isPayment = "退款中";
break;
case 3:
isPayment = "已退款";
break;
}
return isPayment;
}
},
{
field: 'price',
title: '价格'
},
{
field: '',
title: '取票方式',
formatter: function (value, row, index) {
if (row.getTicketType == "electronic") {
return "电子票";
} else {
return "快递票";
}
}
},
{
field: '',
title: '是否出票',
formatter: function (value, row, index) {
if (row.isOut == 1) {
return "已出票";
} else {
return "未出票";
}
}
},
{
field: '',
title: '退款金额',
formatter: function (value, row, index) {
var price = result.orderTicketVo.price;
var html = '<input class="form-control" type="number" min="0.01" max="'+price+'" name="entitiesPrice" value="'+price+'">';
var html = '<input class="form-control entitiesPrice" type="number" min="0.01" max="'+price+'" name="entitiesPrice" value="'+price+'">';
return html;
}
},
]
};
$.table.init(options);
// $('#bootstrap-table').
}
$.modal.closeLoading();
}
......@@ -108,7 +178,10 @@
if ($.validate.form()) {
var data = $('#form-post-add').serializeArray();
data.push({"name":"ticketEntityIds","value":rows});
$.operate.save(prefix + "/apply", data);
var entitiesPrice = $.table.selectColumns("price");
data.push({"name":"entitiesPrice","value":entitiesPrice});
console.log(data)
// $.operate.save(prefix + "/apply", data);
}
}
</script>
......
package com.liquidnet.client.admin.zhengzai.kylin.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
......@@ -9,19 +8,18 @@ import com.liquidnet.commons.lang.util.BeanUtil;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.constant.KylinTableStatusConst;
import com.liquidnet.service.kylin.dao.KylinOrderRefundsEntitiesDao;
import com.liquidnet.service.kylin.dao.KylinOrderTicketEntitiesDao;
import com.liquidnet.service.kylin.dao.OrderRefundDao;
import com.liquidnet.service.kylin.dto.param.RefundApplyParam;
import com.liquidnet.service.kylin.dto.param.RefundSearchParam;
import com.liquidnet.service.kylin.dto.vo.admin.OrderDetailsAdminVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderTicketEntitiesVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderTicketVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderRefundsVo;
import com.liquidnet.service.kylin.entity.KylinOrderRefunds;
import com.liquidnet.service.kylin.entity.KylinOrderTicketEntities;
import com.liquidnet.service.kylin.entity.KylinOrderTicketStatus;
import com.liquidnet.service.kylin.entity.KylinOrderTickets;
import com.liquidnet.service.kylin.mapper.KylinOrderRefundsMapper;
import com.liquidnet.service.kylin.mapper.KylinOrderTicketEntitiesMapper;
import com.liquidnet.service.kylin.mapper.KylinOrderTicketStatusMapper;
import com.liquidnet.service.kylin.mapper.KylinOrderTicketsMapper;
import com.liquidnet.service.kylin.dto.vo.returns.RefundOrderDetailsVo;
import com.liquidnet.service.kylin.entity.*;
import com.liquidnet.service.kylin.mapper.*;
import com.liquidnet.service.kylin.service.IKylinOrderRefundsService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
......@@ -29,6 +27,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
......@@ -58,7 +57,10 @@ public class KylinOrderRefundsServiceImpl extends ServiceImpl<KylinOrderRefundsM
private KylinOrderTicketEntitiesMapper kylinOrderTicketEntitiesMapper;
@Autowired
private KylinOrderTicketsAdminServiceImpl kylinOrderTicketsAdminServiceImpl;
private KylinOrderTicketRelationsMapper kylinOrderTicketRelationsMapper;
@Autowired
private KylinPerformancesMapper kylinPerformancesMapper;
@Autowired
MongoTemplate mongoTemplate;
......@@ -241,11 +243,43 @@ public class KylinOrderRefundsServiceImpl extends ServiceImpl<KylinOrderRefundsM
return pageInfoTmp;
}
public OrderDetailsAdminVo orderDetails(String orderCode) {
LambdaQueryWrapper<KylinOrderTickets> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(KylinOrderTickets::getOrderCode, orderCode);
KylinOrderTickets kylinOrderTickets = kylinOrderTicketsMapper.selectOne(wrapper);
public RefundOrderDetailsVo orderDetails(String orderCode) {
// 订单
KylinOrderTickets kylinOrderTickets = kylinOrderTicketsMapper.selectOne(
new QueryWrapper<KylinOrderTickets>().eq("order_code", orderCode)
);
// 订单关联 获取演出id
KylinOrderTicketRelations kylinOrderTicketRelations = kylinOrderTicketRelationsMapper.selectOne(
new QueryWrapper<KylinOrderTicketRelations>().eq("order_id", kylinOrderTickets.getOrderTicketsId())
);
// 演出
KylinPerformances kylinPerformances = kylinPerformancesMapper.selectOne(
new QueryWrapper<KylinPerformances>().eq("performances_id", kylinOrderTicketRelations.getPerformanceId())
);
List<KylinOrderTicketEntitiesDao> entitiesList = kylinOrderTicketEntitiesMapper.getRefundEntitiesList(kylinOrderTickets.getOrderTicketsId());
KylinOrderTicketVo kylinOrderTicketVo = new KylinOrderTicketVo();
BeanUtil.copy(kylinOrderTickets,kylinOrderTicketVo);
KylinPerformanceVo performanceVo = new KylinPerformanceVo();
BeanUtil.copy(kylinPerformances,performanceVo);
/*List<KylinOrderTicketEntitiesDao> entitiesListDao = new ArrayList();
KylinOrderTicketEntitiesDao kylinOrderTicketEntitiesDao = new KylinOrderTicketEntitiesDao();
for (KylinOrderTicketEntitiesDao entities : entitiesList) {
BeanUtil.copy(entities, kylinOrderTicketEntitiesDao);
entitiesListDao.add(entities);
}
BeanUtil.copy(entitiesList,kylinOrderTicketEntitiesDao);*/
RefundOrderDetailsVo refundOrderDetailsVo = new RefundOrderDetailsVo();
refundOrderDetailsVo.setOrderTicketVo(kylinOrderTicketVo);
refundOrderDetailsVo.setKylinPerformanceVo(performanceVo);
refundOrderDetailsVo.setKylinOrderTicketEntitiesDao(entitiesList);
return kylinOrderTicketsAdminServiceImpl.orderDetails(kylinOrderTickets.getOrderTicketsId());
return refundOrderDetailsVo;
}
}
......@@ -37,6 +37,7 @@ public abstract class DateUtil {
yyyyMMddHHmmss("yyyy-MM-dd HH:mm:ss"),
yyyyMMddHHmmssTrim("yyyyMMddHHmmss"),
yyyyMMddHHmmssSSS("yyyyMMddHHmmssSSS"),
yyyyMMddHHmmssS("yyyy-MM-dd HH:mm:ss.S"),
ddHHmmssTrim("ddHHmmss"),
yyyy_MM_dd_zh("yyyy年MM月dd日"),
MM_dd_zh("MM月dd日"),
......
package com.liquidnet.common.mq.constant;
public class MQConst {
public static final String EXCHANGES_LIQUIDNET_SQL = "liquidnet.sql";
// public static final String EXCHANGES_LIQUIDNET_SQL = "liquidnet.sql";
// public static final String ROUTING_KEY_SQL = "sql";
// public static final String QUEUES_SQL_MAIN = "queue.sql.main";
public static final String ROUTING_KEY_SQL = "sql";
public static final String QUEUES_SQL_MAIN = "queue.sql.main";
/* -------------------------------------------------------- */
public static final String ROUTING_KEY_SQL_KYLIN_STATION = "sql.kylin.station";
public static final String QUEUES_SQL_KYLIN_STATION = "queue.sql.kylin.station";
// 用户中心
public static final String EX_LNS_SQL_UCENTER = "lns.sql.ucenter";
public static final String RK_SQL_UCENTER = "sql.ucenter";
public static final String QUEUES_SQL_UCENTER = "queue.sql.ucenter";
// 用户注册
public static final String RK_SQL_UREGISTER = "sql.uregister";
public static final String QUEUES_SQL_UREGISTER = "queue.sql.uregister";
// 会员购买
public static final String RK_SQL_UMEMBER = "sql.umember";
public static final String QUEUES_SQL_UMEMBER = "queue.sql.umember";
/* -------------------------------------------------------- */
//缺票登记
public static final String EXCHANGES_LIQUIDNET_SQL_PERFORMANCE_LACK = "liquidnet.sql.performance.lack";
......@@ -33,4 +45,13 @@ public class MQConst {
public static final String EXCHANGES_LIQUIDNET_SQL_ORDER_PAY = "liquidnet.sql.order.pay";
public static final String ROUTING_KEY_SQL_ORDER_PAY = "order.pay";
public static final String QUEUES_SQL_ORDER_PAY = "queue.sql.order.pay";
/* -------------------------------------------------------- */
// 验票更新
public static final String EX_LNS_SQL_STATION = "lns.sql.station";
public static final String RK_SQL_STATION = "sql.station";
public static final String QUEUES_SQL_STATION = "queue.sql.station";
/* -------------------------------------------------------- */
}
......@@ -23,6 +23,9 @@ public class CorsConfig {
// 可以自行筛选
corsConfiguration.addAllowedOrigin("*");
corsConfiguration.addAllowedOrigin("http://devpartner.zhengzai.tv");
corsConfiguration.addAllowedOrigin("http://testm.zhengzai.tv");
corsConfiguration.addAllowedOrigin("http://testh5.zhengzai.tv");
corsConfiguration.addAllowedOrigin("http://m.zhengzai.tv");
corsConfiguration.addAllowedOrigin("https://devpartner.zhengzai.tv");
corsConfiguration.addAllowedHeader("*");
......
......@@ -109,7 +109,7 @@ global-auth:
- ${liquidnet.info.context}/v2/api-docs*
- ${liquidnet.info.context}/station/login
- ${liquidnet.info.context}/station/login/sms
# -
# -
- ${liquidnet.info.context}/partner/buyNotice/**
- ${liquidnet.info.context}/partner/checkUser/**
- ${liquidnet.info.context}/partner/checkUser/performance/**
......@@ -126,6 +126,7 @@ global-auth:
- ${liquidnet.info.context}/performance/exclusiveList
- ${liquidnet.info.context}/performance/search
- ${liquidnet.info.context}/performance/list
- ${liquidnet.info.context}/performance/partner/**
- ${liquidnet.info.context}/performance/calendar
- ${liquidnet.info.context}/performance/calendarPerformances
- ${liquidnet.info.context}/performance/*
......
package com.liquidnet.service.kylin.dao;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class KylinOrderTicketEntitiesDao {
/**
* 入场人
*/
private String orderTicketEntitiesId;
private String enterName;
private Integer isOut;
private Integer isPayment;
/**
* 票种
*/
private String title;
private BigDecimal price;
private String useStart;
private String useEnd;
/**
* 订单
*/
private String getTicketType;
}
......@@ -214,7 +214,7 @@ public class KylinOrderTickets implements Serializable {
*/
public Object[] getPayAgainObject(LocalDateTime updateTime,LocalDateTime createTime) {
return new Object[]{
orderType, updatedAt, orderCode, orderTicketsId,updateTime,createTime
updatedAt, orderCode, orderTicketsId,updateTime,createTime
};
}
......
package com.liquidnet.service.kylin.mapper;
import com.liquidnet.service.kylin.dao.KylinOrderRefundsEntitiesDao;
import com.liquidnet.service.kylin.dao.KylinOrderTicketEntitiesDao;
import com.liquidnet.service.kylin.entity.KylinOrderTicketEntities;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
......@@ -18,4 +19,6 @@ import java.util.List;
public interface KylinOrderTicketEntitiesMapper extends BaseMapper<KylinOrderTicketEntities> {
List<KylinOrderRefundsEntitiesDao> selectEntitiesList(@Param("orderTicketEntitiesIdS") String[] orderTicketEntitiesIdS);
List<KylinOrderTicketEntitiesDao> getRefundEntitiesList(String orderTicketsId);
}
......@@ -13,4 +13,15 @@
</foreach>
</where>
</select>
<select id="getRefundEntitiesList" resultType="com.liquidnet.service.kylin.dao.KylinOrderTicketEntitiesDao">
SELECT a.order_ticket_entities_id, a.enter_name, a.status AS is_out, a.is_payment,
b.title, b.price, b.use_start, b.use_end,
c.get_ticket_type
FROM kylin_order_ticket_entities AS a
JOIN kylin_tickets AS b ON a.ticket_id = b.tickets_id
JOIN kylin_order_tickets AS c ON c.order_tickets_id = a.order_id
<where>
a.order_id = #{orderTicketsId}
</where>
</select>
</mapper>
......@@ -72,7 +72,7 @@ create table adam_user_info
mid int unsigned auto_increment primary key,
uid varchar(64) not null,
nickname varchar(32) comment '昵称',
sex varchar(32) comment '性别',
sex varchar(50) comment '性别',
birthday date comment '生日YYYY-MM-DD',
area varchar(100) comment '常住地/区域',
signature varchar(255) comment '个性签名',
......@@ -80,7 +80,7 @@ create table adam_user_info
background varchar(255) comment '背景图',
qr_code varchar(255) comment '身份二维码',
qr_pic varchar(255) comment '身份二维码',
tag_me varchar(500) comment '音乐标签',
tag_me json comment '音乐标签',
comment text
) engine = InnoDB comment '用户信息';
......
......@@ -3,6 +3,7 @@ package com.liquidnet.service.adam.controller;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.SensitizeUtil;
import com.liquidnet.service.adam.dto.AdamAddressesParam;
import com.liquidnet.service.adam.dto.vo.AdamAddressesVo;
import com.liquidnet.service.adam.service.IAdamAddressesService;
......@@ -14,6 +15,7 @@ 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.util.CollectionUtils;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
......@@ -52,7 +54,13 @@ public class AdamAddressesController {
@ApiOperation(value = "收货地址列表")
@GetMapping("list")
public ResponseDto<List<AdamAddressesVo>> list() {
return ResponseDto.success(adamRdmService.getAddressesVoByUid(CurrentUtil.getCurrentUid()));
List<AdamAddressesVo> vos = adamRdmService.getAddressesVoByUid(CurrentUtil.getCurrentUid());
if (!CollectionUtils.isEmpty(vos)) {
for (AdamAddressesVo vo : vos) {
vo.setPhone(SensitizeUtil.custom(vo.getPhone(), 3, 4));
}
}
return ResponseDto.success(vos);
}
@ApiOperationSupport(order = 3)
......@@ -104,14 +112,23 @@ public class AdamAddressesController {
@PostMapping("query/{id}")
public ResponseDto<AdamAddressesVo> query(@NotBlank @PathVariable(name = "id") String addrId) {
AdamAddressesVo vo = adamRdmService.getAddressesVoByUidAddressesId(CurrentUtil.getCurrentUid(), addrId);
return null == vo ? ResponseDto.failure(ErrorMapping.get("10106")) : ResponseDto.success(vo);
if (null != vo) {
vo.setPhone(SensitizeUtil.custom(vo.getPhone(), 3, 4));
return ResponseDto.success(vo);
}
return ResponseDto.failure(ErrorMapping.get("10106"));
}
@ApiOperationSupport(order = 7)
@ApiOperation(value = "获取默认收货地址")
@PostMapping("query/def")
public ResponseDto<AdamAddressesVo> queryDef() {
return ResponseDto.success(adamAddressesService.queryDefault(CurrentUtil.getCurrentUid()));
AdamAddressesVo vo = adamAddressesService.queryDefault(CurrentUtil.getCurrentUid());
if (null != vo) {
vo.setPhone(SensitizeUtil.custom(vo.getPhone(), 3, 4));
}
return ResponseDto.success(vo);
}
@GetMapping("query/depth")
......
......@@ -3,6 +3,7 @@ package com.liquidnet.service.adam.controller;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.SensitizeUtil;
import com.liquidnet.service.adam.dto.AdamEntersParam;
import com.liquidnet.service.adam.dto.vo.AdamEntersVo;
import com.liquidnet.service.adam.service.IAdamEntersService;
......@@ -53,7 +54,15 @@ public class AdamEntersController {
@ApiOperation(value = "入场人列表")
@GetMapping("list")
public ResponseDto<List<AdamEntersVo>> list() {
return ResponseDto.success(adamRdmService.getEntersVoByUid(CurrentUtil.getCurrentUid()));
List<AdamEntersVo> vos = adamRdmService.getEntersVoByUid(CurrentUtil.getCurrentUid());
if (!CollectionUtils.isEmpty(vos)) {
for (AdamEntersVo vo : vos) {
vo.setName(SensitizeUtil.chineseName(vo.getName()));
vo.setIdCard(SensitizeUtil.custom(vo.getIdCard(), 3, 2));
vo.setMobile(SensitizeUtil.custom(vo.getMobile(), 3, 4));
}
}
return ResponseDto.success(vos);
}
@ApiOperationSupport(order = 3)
......@@ -106,6 +115,13 @@ public class AdamEntersController {
@PostMapping("query")
public ResponseDto<List<AdamEntersVo>> query(@NotBlank @RequestParam String entersIds) {
List<AdamEntersVo> vos = adamRdmService.getEntersVoByUidEntersIds(CurrentUtil.getCurrentUid(), entersIds.split(","));
if (!CollectionUtils.isEmpty(vos)) {
for (AdamEntersVo vo : vos) {
vo.setName(SensitizeUtil.chineseName(vo.getName()));
vo.setIdCard(SensitizeUtil.custom(vo.getIdCard(), 3, 2));
vo.setMobile(SensitizeUtil.custom(vo.getMobile(), 3, 4));
}
}
return CollectionUtils.isEmpty(vos) ? ResponseDto.failure(ErrorMapping.get("10105")) : ResponseDto.success(vos);
}
......@@ -113,7 +129,13 @@ public class AdamEntersController {
@ApiOperation(value = "获取默认入场人")
@PostMapping("query/def")
public ResponseDto<AdamEntersVo> queryDef() {
return ResponseDto.success(adamEntersService.queryDefault(CurrentUtil.getCurrentUid()));
AdamEntersVo vo = adamEntersService.queryDefault(CurrentUtil.getCurrentUid());
if (null != vo) {
vo.setName(SensitizeUtil.chineseName(vo.getName()));
vo.setIdCard(SensitizeUtil.custom(vo.getIdCard(), 3, 2));
vo.setMobile(SensitizeUtil.custom(vo.getMobile(), 3, 4));
}
return ResponseDto.success(vo);
}
@GetMapping("query/depth")
......
......@@ -73,46 +73,40 @@ public class AdamMemberOrderController {
@ApiOperation(value = "购买会员或会员码")
@PostMapping("buy")
public ResponseDto<AdamMemberOrderResult> buyMemberOrCode(@Valid @RequestBody AdamMemberOrderParam param) {
try {
log.debug("member/order/buy:param:{}", JsonUtils.toJson(param));
log.debug("member/order/buy:param:{}", JsonUtils.toJson(param));
String currentUid = CurrentUtil.getCurrentUid();
String currentUid = CurrentUtil.getCurrentUid();
// TODO: 2021/6/9 判断黑名单,待定(暂不做)
// TODO: 2021/6/9 判断黑名单,待定(暂不做)
AdamRealInfoVo realInfoVo = adamRdmService.getRealInfoVoByUid(currentUid);
if (null == realInfoVo) {
if (StringUtils.isBlank(param.getName()) || StringUtils.isBlank(param.getIdCard())) {
return ResponseDto.failure(ErrorMapping.get("10101"));
}
adamUserService.identity(currentUid, param.getName(), param.getIdCard());
AdamRealInfoVo realInfoVo = adamRdmService.getRealInfoVoByUid(currentUid);
if (null == realInfoVo) {
if (StringUtils.isBlank(param.getName()) || StringUtils.isBlank(param.getIdCard())) {
return ResponseDto.failure(ErrorMapping.get("10101"));
}
return adamMemberOrderService.buyMemberOrMemberCode(param);
} catch (Exception e) {
log.error("购买会员或会员码异常", e);
return ResponseDto.failure();
adamUserService.identity(currentUid, param.getName(), param.getIdCard());
}
return adamMemberOrderService.buyMemberOrMemberCode(param);
}
/**
* 当订单支付成功后,会立即通知Server一次,若未能响应成功,之后的24小时内会多次通知
* 通知头:
* {
* "token":"eyJpdiI6IlJuTDFpOVBFOVBReUJ6OTd5ankzVVE9PSIsInZhbHVlIjoiMzhxWW52Um1lWVNYOEJ4OVh6OEdzUT09IiwibWFjIjoiM2Q4OWNkNWVkMjJkNzY0OGVjNmE5YTA3ODUwMTI5YWFlN2U5NDgwZmE0YmVmZWE4MTE1NmY1NWZjMGI2YmNiZCJ9"
* "token":"eyJpdiI6IlJuTDFpOVBFOVBReUJ6OTd5ankzVVE9PSIsInZhbHVlIjoiMzhxWW52Um1lWVNYOEJ4OVh6OEdzUT09IiwibWFjIjoiM2Q4OWNkNWVkMjJkNzY0OGVjNmE5YTA3ODUwMTI5YWFlN2U5NDgwZmE0YmVmZWE4MTE1NmY1NWZjMGI2YmNiZCJ9"
* }
* 通知参数:
* {
* "status":"1",
* "type":"MBEANS",
* "code":"201807201217135B516249085EC",
* "order_code":"00001TESTORDER",
* "price":"0.01",
* "payment_type":"APPIAP",
* "payment_at":"2018-07-20 12:17:13",
* "payment_id":"1032334083425793457349875"
* "status":"1",
* "type":"MBEANS",
* "code":"201807201217135B516249085EC",
* "order_code":"00001TESTORDER",
* "price":"0.01",
* "payment_type":"APPIAP",
* "payment_at":"2018-07-20 12:17:13",
* "payment_id":"1032334083425793457349875"
* }
* 通知说明:已支付订单status为1,code为交易支付订单号,建议保存code,type为支付种类,payment_type为支付类型,以上参数是必传。
* 通知响应:'success',响应成功,将不再通知客户端
......@@ -126,7 +120,7 @@ public class AdamMemberOrderController {
public String paymentNotifyCallBack() {
log.debug("/member/callback.mapParameter:{}, token:{}", JsonUtils.toJson(ServletUtils.getRequest().getParameterMap()), ServletUtils.getRequest().getHeader("token"));
// TODO: 2021/6/13 验签
AdamMemberOrderCallbackParam parameter = AdamMemberOrderCallbackParam.getNew().get(ServletUtils.getRequest());
if (1 != parameter.getStatus() ||
!parameter.getType().equals("VIP") ||
......@@ -151,30 +145,24 @@ public class AdamMemberOrderController {
@ApiOperation(value = "使用兑换码")
@PostMapping("exchange")
public ResponseDto<AdamMemberOrderResult> exchangeMemberCode(@Valid @RequestBody AdamMemberOrderCodeParam param) {
try {
log.debug("member/order/exchange:param:{}", JsonUtils.toJson(param));
String currentUid = CurrentUtil.getCurrentUid();
if (null != adamRdmService.getUserMemberVoByUid(currentUid)) {// 仅限从未购买过会员的用户使用
return ResponseDto.failure(ErrorMapping.get("10200"));
}
// TODO: 2021/6/9 判断黑名单,待定(暂不做)
log.debug("member/order/exchange:param:{}", JsonUtils.toJson(param));
String currentUid = CurrentUtil.getCurrentUid();
if (null != adamRdmService.getUserMemberVoByUid(currentUid)) {// 仅限从未购买过会员的用户使用
return ResponseDto.failure(ErrorMapping.get("10200"));
}
// TODO: 2021/6/9 判断黑名单,待定(暂不做)
AdamRealInfoVo realInfoVo = adamRdmService.getRealInfoVoByUid(currentUid);
if (null == realInfoVo) {
if (StringUtils.isBlank(param.getName()) || StringUtils.isBlank(param.getIdCard())) {
return ResponseDto.failure(ErrorMapping.get("10101"));
}
adamUserService.identity(currentUid, param.getName(), param.getIdCard());
AdamRealInfoVo realInfoVo = adamRdmService.getRealInfoVoByUid(currentUid);
if (null == realInfoVo) {
if (StringUtils.isBlank(param.getName()) || StringUtils.isBlank(param.getIdCard())) {
return ResponseDto.failure(ErrorMapping.get("10101"));
}
return adamMemberOrderService.exchangeMemberCode(param);
} catch (Exception e) {
log.error("使用兑换码异常", e);
return ResponseDto.failure();
adamUserService.identity(currentUid, param.getName(), param.getIdCard());
}
return adamMemberOrderService.exchangeMemberCode(param);
}
@ApiOperationSupport(order = 4)
......
......@@ -3,10 +3,7 @@ package com.liquidnet.service.adam.controller;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import com.liquidnet.commons.lang.constant.LnsRegex;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.HttpUtil;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.commons.lang.util.*;
import com.liquidnet.service.adam.dto.AdamThirdPartParam;
import com.liquidnet.service.adam.dto.AdamUserInfoParam;
import com.liquidnet.service.adam.dto.vo.*;
......@@ -211,6 +208,9 @@ public class AdamUserController {
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);
}
......
......@@ -68,7 +68,7 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
adamRdmService.delAddressesVoByUid(currentUid);
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_addresses.add",
vo.getAddressesId(), vo.getUid(), vo.getName(), vo.getPhone(), vo.getProvince(), vo.getCity(), vo.getCounty(), vo.getAddress(), vo.getIsDefault(), vo.getState(), now
)
......@@ -118,7 +118,7 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
}
if (!CollectionUtils.isEmpty(toMqObjs)) {
adamRdmService.setAddressesVoByUid(uid, vos);
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_addresses.update.is_default", toMqObjs));
}
}
......@@ -142,7 +142,7 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
List<AdamAddressesVo> vos = adamRdmService.getAddressesVoByUid(currentUid);
adamRdmService.setAddressesVoByUid(updateVo.getUid(), this.collectionProcess(vos, parameter.getAddressesId(), updateVo));
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_addresses.edit",
updateVo.getName(), updateVo.getPhone(), updateVo.getProvince(), updateVo.getCity(), updateVo.getCounty(), updateVo.getAddress(), now, updateVo.getAddressesId()
)
......@@ -171,7 +171,7 @@ public class AdamAddressesServiceImpl implements IAdamAddressesService {
vos.removeIf(r -> r.getAddressesId().equals(addressesId));
adamRdmService.setAddressesVoByUid(uid, vos);
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_addresses.remove", now, now, addressesId)
);
}
......
......@@ -60,7 +60,7 @@ public class AdamCollectionServiceImpl implements IAdamCollectionService {
mongoTemplate.insert(vo, AdamCollectBaseVo.class.getSimpleName());
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_collection.add",
vo.getUid(), vo.getContentId(), vo.getType(), vo.getState(), now
)
......@@ -91,7 +91,7 @@ public class AdamCollectionServiceImpl implements IAdamCollectionService {
for (String c : contentIds) {
toMqObjs.add(new Object[]{now, uid, c});
}
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_collection.del", toMqObjs));
}
}
......
......@@ -63,7 +63,7 @@ public class AdamDisposedServiceImpl implements IAdamDisposedService {
mongoTemplate.insert(vo, AdamDisposedBaseVo.class.getSimpleName());
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_disposed.add",
vo.getUid(), vo.getContentId(), vo.getType(), vo.getState(), now
)
......@@ -95,7 +95,7 @@ public class AdamDisposedServiceImpl implements IAdamDisposedService {
for (String c : contentIds) {
toMqObjs.add(new Object[]{now, uid, c});
}
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_disposed.del", toMqObjs));
}
}
......
......@@ -12,10 +12,12 @@ import com.liquidnet.service.base.SqlMapping;
import com.mongodb.client.model.FindOneAndUpdateOptions;
import com.mongodb.client.model.ReturnDocument;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
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.core.env.Environment;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.convert.MongoConverter;
import org.springframework.data.mongodb.core.query.Criteria;
......@@ -24,10 +26,12 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import org.springframework.util.LinkedMultiValueMap;
import java.time.LocalDateTime;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.stream.IntStream;
/**
......@@ -42,7 +46,7 @@ import java.util.stream.IntStream;
@Service
public class AdamEntersServiceImpl implements IAdamEntersService {
@Autowired
MongoConverter mongoConverter;
Environment env;
@Autowired
MongoTemplate mongoTemplate;
@Autowired
......@@ -50,12 +54,38 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
@Autowired
IAdamRdmService adamRdmService;
private static final String PHP_API_REAL_NAME = "/IdCardCheckVerification";
@Override
// @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public String add(AdamEntersParam parameter) {
String currentUid = CurrentUtil.getCurrentUid();
LocalDateTime now = LocalDateTime.now();
String nowStr = DateUtil.Formatter.yyyyMMddHHmmss.format(now);
if (1 == parameter.getType()) {
LinkedMultiValueMap<String, String> paramsMap = new LinkedMultiValueMap<>();
paramsMap.add("realName", parameter.getName());
paramsMap.add("cardNo", parameter.getIdCard());
String respStr = null;
try {
respStr = HttpUtil.postToPhpApi(env.getProperty("liquidnet.url-service.url") + PHP_API_REAL_NAME, paramsMap);
log.debug("###PHP.API[{}].RESP:{}", PHP_API_REAL_NAME, respStr);
Map respMap = JsonUtils.fromJson(respStr, Map.class);
if (CollectionUtils.isEmpty(respMap) || !StringUtils.equalsIgnoreCase("OK", (String) respMap.get("message"))) {
log.warn("PHP.API实名认证失败[uid:{},name:{},idCard:{},respStr:{}]", currentUid, parameter.getName(), parameter.getIdCard(), respStr);
ErrorMapping.ErrorMessage errorMessage = ErrorMapping.get("10102");
throw new LiquidnetServiceException(errorMessage.getCode(), errorMessage.getMessage());
}
} catch (Exception e) {
log.error("PHP.API实名认证异常[uid:{},name:{},idCard:{},respStr:{}]", currentUid, parameter.getName(), parameter.getIdCard(), respStr, e);
ErrorMapping.ErrorMessage errorMessage = ErrorMapping.get("10102");
throw new LiquidnetServiceException(errorMessage.getCode(), errorMessage.getMessage());
}
}
List<AdamEntersVo> vos = adamRdmService.getEntersVoByUid(currentUid);
......@@ -71,7 +101,7 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
adamRdmService.delEntersVoByUid(currentUid);
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_enters.add",
vo.getEntersId(), vo.getUid(), vo.getType(), vo.getName(), vo.getMobile(), vo.getIdCard(), vo.getIsDefault(), vo.getState(), now
)
......@@ -83,7 +113,6 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
// @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public void def(String uid, String entersId) {
LocalDateTime now = LocalDateTime.now();
String nowStr = DateUtil.Formatter.yyyyMMddHHmmss.format(now);
LinkedList<Object[]> toMqObjs = new LinkedList<>();
List<AdamEntersVo> vos = adamRdmService.getEntersVoByUid(uid);
......@@ -123,7 +152,7 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
}
if (!CollectionUtils.isEmpty(toMqObjs)) {
adamRdmService.setEntersVoByUid(uid, vos);
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_enters.update.is_default", toMqObjs));
}
}
......@@ -147,7 +176,7 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
List<AdamEntersVo> vos = adamRdmService.getEntersVoByUid(currentUid);
adamRdmService.setEntersVoByUid(currentUid, this.collectionProcess(vos, parameter.getEntersId(), updateVo));
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_enters.edit",
updateVo.getType(), updateVo.getName(), updateVo.getMobile(), updateVo.getIdCard(), updateVo.getIsDefault(), updateVo.getState(), now, updateVo.getEntersId()
)
......@@ -176,7 +205,7 @@ public class AdamEntersServiceImpl implements IAdamEntersService {
vos.removeIf(r -> r.getEntersId().equals(entersId));
adamRdmService.setEntersVoByUid(uid, vos);
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_enters.remove", now, now, entersId)
);
}
......
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.service.adam.dto.AdamMemberCodeParam;
import com.liquidnet.service.adam.dto.vo.AdamMemberCodeVo;
import com.liquidnet.service.adam.entity.AdamMemberCode;
import com.liquidnet.service.adam.mapper.AdamMemberCodeMapper;
import com.liquidnet.service.adam.service.IAdamMemberCodeService;
import com.liquidnet.service.adam.util.MemberUtil;
import lombok.extern.slf4j.Slf4j;
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.stereotype.Service;
import java.util.HashMap;
import java.util.Map;
@Slf4j
@Service
public class AdamMemberCodeServiceImpl extends ServiceImpl<AdamMemberCodeMapper, AdamMemberCode> implements IAdamMemberCodeService {
@Autowired
AdamMemberCodeMapper adamMemberCodeMapper;
@Autowired
MongoTemplate mongoTemplate;
@Autowired
MongoConverter mongoConverter;
@Autowired
RabbitTemplate rabbitTemplate;
@Autowired
RedisUtil redisUtil;
@Override
public void add(AdamMemberCodeParam param) {
AdamMemberCode adamMemberCode = new AdamMemberCode();
adamMemberCode.setType(param.getType());
adamMemberCode.setCode(MemberUtil.buyCode());
adamMemberCode.setMemberId(param.getMemberId());
adamMemberCode.setMemberPriceId(param.getMemberPriceId());
adamMemberCode.setState(1);// 1-生成
// mysql
adamMemberCodeMapper.insert(adamMemberCode);
// mongo
AdamMemberCodeVo vo = new AdamMemberCodeVo();
BeanUtils.copyProperties(adamMemberCode, vo);
vo.setCreatedAt(adamMemberCode.getCreatedAt());
vo.setUpdatedAt(adamMemberCode.getUpdatedAt());
mongoTemplate.insert(vo, AdamMemberCodeVo.class.getSimpleName());
// redis
Map<String, Object> redisMap = new HashMap<>();
redisMap.put(AdamRedisConst.INFO_MEMBERS_CODE_INFO.concat(adamMemberCode.getMemberPriceId()), vo);
redisUtil.hmset(AdamRedisConst.INFO_MEMBERS_CODE_INFO.concat(adamMemberCode.getBuyUid()) , redisMap);
}
}
......@@ -284,7 +284,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
adamRdmService.setShotMemberOrderVoByOrderNo(handleMemberOrderVo.getUid(), handleMemberOrderVo.getOrderNo(), handleMemberOrderVo);
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UMEMBER,
SqlMapping.gets(toMqSqls, operationObjs, updateMemberOrderObjs));
return ResponseDto.success();
}
......@@ -386,7 +386,7 @@ public class AdamMemberOrderServiceImpl extends ServiceImpl<AdamMemberOrderMappe
adamRdmService.setUserMemberVoByUid(initMemberOrderVo.getUid(), initUserMemberVo);
adamRdmService.delMemberCodeVoByCode(memberCodeVo.getCode());
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UMEMBER,
SqlMapping.gets(toMqSqls, updateMemberCodeObjs, initMemberOrderObjs, initUserMemberObjs));
AdamMemberOrderResult result = AdamMemberOrderResult.getNew();
......
package com.liquidnet.service.adam.service.impl;
import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.commons.lang.util.SensitizeUtil;
import com.liquidnet.service.adam.constant.AdamRedisConst;
import com.liquidnet.service.adam.dto.vo.*;
import com.liquidnet.service.adam.entity.AdamEnters;
import com.liquidnet.service.adam.service.IAdamRdmService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Sort;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Field;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
......@@ -82,14 +81,17 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
@Override
public AdamUserInfoVo getUserInfoVoByUid(String uid) {
String rk = AdamRedisConst.INFO_USER.concat(uid);
AdamUserInfoVo userInfoVo = (AdamUserInfoVo) redisUtil.get(rk);
if (null == userInfoVo) {
userInfoVo = mongoTemplate.findOne(Query.query(Criteria.where("uid").is(uid).and("state").is(1)),
AdamUserInfoVo vo = (AdamUserInfoVo) redisUtil.get(rk);
if (null == vo) {
vo = mongoTemplate.findOne(Query.query(Criteria.where("uid").is(uid).and("state").is(1)),
AdamUserInfoVo.class, AdamUserInfoVo.class.getSimpleName());
if (null != userInfoVo) redisUtil.set(rk, userInfoVo);
if (null != vo) redisUtil.set(rk, vo);
}
if (null != vo) {
vo.setMobile(SensitizeUtil.custom(vo.getMobile(), 3, 4));
}
return userInfoVo;
return vo;
}
@Override
......@@ -105,14 +107,18 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
@Override
public AdamRealInfoVo getRealInfoVoByUid(String uid) {
String rk = AdamRedisConst.INFO_REAL_NAME.concat(uid);
AdamRealInfoVo realInfoVo = (AdamRealInfoVo) redisUtil.get(rk);
if (null == realInfoVo) {
realInfoVo = mongoTemplate.findOne(Query.query(Criteria.where("uid").is(uid).and("state").is(1)),
AdamRealInfoVo vo = (AdamRealInfoVo) redisUtil.get(rk);
if (null == vo) {
vo = mongoTemplate.findOne(Query.query(Criteria.where("uid").is(uid).and("state").is(1)),
AdamRealInfoVo.class, AdamRealInfoVo.class.getSimpleName());
if (null != realInfoVo) redisUtil.set(rk, realInfoVo);
if (null != vo) redisUtil.set(rk, vo);
}
return realInfoVo;
if (null != vo) {
vo.setName(SensitizeUtil.chineseName(vo.getName()));
vo.setIdCard(SensitizeUtil.custom(vo.getIdCard(), 3, 2));
}
return vo;
}
@Override
......@@ -160,16 +166,16 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
@Override
public List<AdamEntersVo> getEntersVoByUid(String uid) {
String rk = AdamRedisConst.INFO_ENTERS.concat(uid);
List<AdamEntersVo> entersList = (List<AdamEntersVo>) redisUtil.get(rk);
if (CollectionUtils.isEmpty(entersList)) {
entersList = mongoTemplate.find(
List<AdamEntersVo> vos = (List<AdamEntersVo>) redisUtil.get(rk);
if (CollectionUtils.isEmpty(vos)) {
vos = mongoTemplate.find(
Query.query(Criteria.where("uid").is(uid).and("state").is(1)).with(Sort.by(Sort.Direction.DESC, "createdAt")),
AdamEntersVo.class, AdamEntersVo.class.getSimpleName()
);
if (!CollectionUtils.isEmpty(entersList)) redisUtil.set(rk, entersList);
if (!CollectionUtils.isEmpty(vos)) redisUtil.set(rk, vos);
}
return entersList;
return vos;
}
@Override
......@@ -196,17 +202,16 @@ public class AdamRdmServiceImpl implements IAdamRdmService {
@Override
public List<AdamAddressesVo> getAddressesVoByUid(String uid) {
String rk = AdamRedisConst.INFO_ADDRESSES.concat(uid);
List<AdamAddressesVo> list = (List<AdamAddressesVo>) redisUtil.get(rk);
if (CollectionUtils.isEmpty(list)) {
list = mongoTemplate.find(
List<AdamAddressesVo> vos = (List<AdamAddressesVo>) redisUtil.get(rk);
if (CollectionUtils.isEmpty(vos)) {
vos = mongoTemplate.find(
Query.query(Criteria.where("uid").is(uid).and("state").is(1)).with(Sort.by(Sort.Direction.DESC, "createdAt")),
AdamAddressesVo.class, AdamAddressesVo.class.getSimpleName()
);
if (!CollectionUtils.isEmpty(list)) redisUtil.set(rk, list);
if (!CollectionUtils.isEmpty(vos)) redisUtil.set(rk, vos);
}
return list;
return vos;
}
@Override
......
......@@ -49,7 +49,7 @@ public class AdamRealNameServiceImpl extends ServiceImpl<AdamRealNameMapper, Ada
realName.getState(),
realName.getCreatedAt()
);
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_real_name.add", paramList.toArray()));
}
}
......@@ -16,14 +16,11 @@ import org.bson.Document;
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.convert.MongoConverter;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.List;
/**
* <p>
......@@ -35,8 +32,6 @@ import java.util.List;
*/
@Service
public class AdamUserInfoServiceImpl extends ServiceImpl<AdamUserInfoMapper, AdamUserInfo> implements IAdamUserInfoService {
@Autowired
MongoConverter mongoConverter;
@Autowired
MongoTemplate mongoTemplate;
@Autowired
......@@ -52,25 +47,28 @@ public class AdamUserInfoServiceImpl extends ServiceImpl<AdamUserInfoMapper, Ada
new Document("$set", Document.parse(JsonUtils.toJson(userInfoVo))),
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
userInfoVo = BsonUtil.toBean(doc, AdamUserInfoVo.class);
if (null != doc) {
userInfoVo = BsonUtil.toBean(doc, AdamUserInfoVo.class);
List<Object> paramList = Arrays.asList(
userInfoVo.getNickname(),
userInfoVo.getSex(),
userInfoVo.getBirthday(),
userInfoVo.getArea(),
userInfoVo.getSignature(),
userInfoVo.getAvatar(),
userInfoVo.getBackground(),
userInfoVo.getQrCode(),
null,// qr_pic
userInfoVo.getTagMe(),
userInfoVo.getUid()
);
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
SqlMapping.get(userInfoVo.getIsComplete() == 0 ? "adam_user_info.add" : "adam_user_info.edit", paramList.toArray()));
adamRdmService.setUserInfoVoByUid(userInfoVo.getUid(), userInfoVo);
adamRdmService.setUserInfoVoByUid(userInfoVo.getUid(), userInfoVo);
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get(
userInfoVo.getIsComplete() == 0 ? "adam_user_info.add" : "adam_user_info.edit",
userInfoVo.getNickname(),
JsonUtils.toJson(userInfoVo.getSex()),
userInfoVo.getBirthday(),
userInfoVo.getArea(),
userInfoVo.getSignature(),
userInfoVo.getAvatar(),
userInfoVo.getBackground(),
userInfoVo.getQrCode(),
null,// qr_pic
JsonUtils.toJson(userInfoVo.getTagMe()),
userInfoVo.getUid()
)
);
}
}
@Override
......@@ -86,7 +84,7 @@ public class AdamUserInfoServiceImpl extends ServiceImpl<AdamUserInfoMapper, Ada
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.BEFORE)
);
AdamUserInfoVo beforeUserInfoVo = BsonUtil.toBean(doc, AdamUserInfoVo.class);
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_user.edit.mobile", mobile, now, uid));
adamRdmService.delUidByMobile(beforeUserInfoVo.getMobile());
......
......@@ -2,10 +2,7 @@ package com.liquidnet.service.adam.service.impl;
import com.liquidnet.common.exception.LiquidnetServiceException;
import com.liquidnet.common.mq.constant.MQConst;
import com.liquidnet.commons.lang.util.DateUtil;
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.*;
import com.liquidnet.service.adam.dto.AdamThirdPartParam;
import com.liquidnet.service.adam.dto.vo.*;
import com.liquidnet.service.adam.entity.AdamEnters;
......@@ -81,12 +78,14 @@ public class AdamUserServiceImpl implements IAdamUserService {
mongoTemplate.insert(userInfoVo, AdamUserInfoVo.class.getSimpleName());
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UREGISTER,
SqlMapping.get("adam_user.add", userInfoVo.getUid(), userInfoVo.getMobile(), userInfoVo.getState(), now)
);
adamRdmService.setUidByMobile(mobile, userInfoVo.getUid());
userInfoVo.setMobile(SensitizeUtil.custom(mobile, 3, 4));
return userInfoVo;
}
......@@ -111,6 +110,8 @@ public class AdamUserServiceImpl implements IAdamUserService {
mongoTemplate.insert(userInfoVo, AdamUserInfoVo.class.getSimpleName());
userInfoVo.setMobile(SensitizeUtil.custom(param.getMobile(), 3, 4));
toMqSqls.add(SqlMapping.get("adam_user.add"));
initUserObjs.add(new Object[]{userInfoVo.getUid(), userInfoVo.getMobile(), userInfoVo.getState(), now});
} else {
......@@ -130,7 +131,7 @@ public class AdamUserServiceImpl implements IAdamUserService {
adamRdmService.setUidByPlatformOpenId(param.getPlatform(), param.getOpenId(), uid);
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UREGISTER,
SqlMapping.gets(toMqSqls, initUserObjs, initThirdPartObjs)
);
return userInfoVo;
......@@ -153,7 +154,7 @@ public class AdamUserServiceImpl implements IAdamUserService {
adamRdmService.delThirdPartVoListByUid(uid);
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get(
"adam_third_party.add",
thirdPartInfoVo.getUid(), thirdPartInfoVo.getOpenId(), thirdPartInfoVo.getAvatar(), thirdPartInfoVo.getNickname(), thirdPartInfoVo.getPlatform(), thirdPartInfoVo.getState(), thirdPartInfoVo.getCreatedAt()
......@@ -181,7 +182,7 @@ public class AdamUserServiceImpl implements IAdamUserService {
adamRdmService.delThirdPartVoListByUid(bindUid);
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get(
"adam_third_party.add",
thirdPartInfoVo.getUid(), thirdPartInfoVo.getOpenId(), thirdPartInfoVo.getAvatar(), thirdPartInfoVo.getNickname(), thirdPartInfoVo.getPlatform(), thirdPartInfoVo.getState(), thirdPartInfoVo.getCreatedAt()
......@@ -214,7 +215,7 @@ public class AdamUserServiceImpl implements IAdamUserService {
}
adamRdmService.delThirdPartVoListByUid(uid);
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.get("adam_third_party.unbind", now, uid, platform));
}
......@@ -280,7 +281,7 @@ public class AdamUserServiceImpl implements IAdamUserService {
objsAddresses.add(new Object[]{now, now, uid});
}
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_UCENTER, MQConst.RK_SQL_UCENTER,
SqlMapping.gets(toMqSqls, objsUser));
}
......
......@@ -41,7 +41,7 @@ public class AdamMemberCodeAdminServiceImpl extends ServiceImpl<AdamMemberCodeMa
adamMemberCodeMapper.insert(initMemberCode);
mongoTemplate.insert(AdamMemberCodeVo.getNew().copy(initMemberCode), AdamMemberCodeVo.class.getSimpleName());
mongoTemplate.insert(initMemberCode, AdamMemberCodeVo.class.getSimpleName());
return initMemberCode.getCode();
}
......
......@@ -79,7 +79,11 @@ public class BaseDao implements IBaseDao {
TransactionTemplate tt = new TransactionTemplate(transactionManager);
return tt.execute(callback);
} catch (Exception ex) {
log.error("###SQL.Preparing:{}\nParameters:{}", JsonUtils.toJson(sql), JsonUtils.toJson(values), ex);
if (ex instanceof LiquidnetServiceException) {
log.error("###Error.Code:{} - {}", ((LiquidnetServiceException) ex).getCode(), ex.getMessage());
} else {
log.error("###Error.Sqls:{}\nParameters:{}", JsonUtils.toJson(sql), JsonUtils.toJson(values), ex);
}
return false;
}
}
......
......@@ -28,13 +28,120 @@ public class ConsumerProcessor {
@Resource
IBaseDao baseDao;
// @RabbitListener(bindings = @QueueBinding(
// exchange = @Exchange(MQConst.EXCHANGES_LIQUIDNET_SQL), key = MQConst.ROUTING_KEY_SQL,
// value = @Queue(MQConst.QUEUES_SQL_MAIN)
// ))
//// @RabbitListener(queues = MQConst.QUEUES_SQL_MAIN)
// public void consumerSql(Message msg, Channel channel) {
// SqlMapping.SqlMessage sqlMessage = JsonUtils.fromJson(new String(msg.getBody()), SqlMapping.SqlMessage.class);
// log.debug("consumer sql ==> Preparing:{}", JsonUtils.toJson(sqlMessage.getSqls()));
// log.debug("consumer sql ==> Parameters:{}", JsonUtils.toJson(sqlMessage.getArgs()));
//
// try {
// Boolean rstBatchSqls = baseDao.batchSqls(sqlMessage.getSqls(), sqlMessage.getArgs());
// log.debug("consumer sql result of execution:{}", rstBatchSqls);
// if (rstBatchSqls) {
// channel.basicAck(msg.getMessageProperties().getDeliveryTag(), false);
// } else {
// channel.basicReject(msg.getMessageProperties().getDeliveryTag(), true);
// }
// } catch (Exception e) {
// log.error("error:consumer sql:{}", JsonUtils.toJson(sqlMessage), e);
// try {
// channel.basicReject(msg.getMessageProperties().getDeliveryTag(), true);
// } catch (IOException ioException) {
// log.error("error:consumer sql:basicReject.msg.tag:{}", msg.getMessageProperties().getDeliveryTag(), ioException);
// }
// }
// }
@RabbitListener(bindings = @QueueBinding(
exchange = @Exchange(MQConst.EX_LNS_SQL_UCENTER), key = MQConst.RK_SQL_UCENTER,
value = @Queue(MQConst.QUEUES_SQL_UCENTER)
))
public void consumerSqlForURegister(Message msg, Channel channel) {
SqlMapping.SqlMessage sqlMessage = JsonUtils.fromJson(new String(msg.getBody()), SqlMapping.SqlMessage.class);
log.debug("consumer sql ==> Preparing:{}", JsonUtils.toJson(sqlMessage.getSqls()));
log.debug("consumer sql ==> Parameters:{}", JsonUtils.toJson(sqlMessage.getArgs()));
try {
Boolean rstBatchSqls = baseDao.batchSqls(sqlMessage.getSqls(), sqlMessage.getArgs());
log.debug("consumer sql result of execution:{}", rstBatchSqls);
if (rstBatchSqls) {
channel.basicAck(msg.getMessageProperties().getDeliveryTag(), false);
} else {
channel.basicReject(msg.getMessageProperties().getDeliveryTag(), true);
}
} catch (Exception e) {
log.error("error:consumer sql:{}", JsonUtils.toJson(sqlMessage), e);
try {
channel.basicReject(msg.getMessageProperties().getDeliveryTag(), true);
} catch (IOException ioException) {
log.error("error:consumer sql:basicReject.msg.tag:{}", msg.getMessageProperties().getDeliveryTag(), ioException);
}
}
}
@RabbitListener(bindings = @QueueBinding(
exchange = @Exchange(MQConst.EX_LNS_SQL_UCENTER), key = MQConst.RK_SQL_UREGISTER,
value = @Queue(MQConst.QUEUES_SQL_UREGISTER)
))
public void consumerSqlForUCenter(Message msg, Channel channel) {
SqlMapping.SqlMessage sqlMessage = JsonUtils.fromJson(new String(msg.getBody()), SqlMapping.SqlMessage.class);
log.debug("consumer sql ==> Preparing:{}", JsonUtils.toJson(sqlMessage.getSqls()));
log.debug("consumer sql ==> Parameters:{}", JsonUtils.toJson(sqlMessage.getArgs()));
try {
Boolean rstBatchSqls = baseDao.batchSqls(sqlMessage.getSqls(), sqlMessage.getArgs());
log.debug("consumer sql result of execution:{}", rstBatchSqls);
if (rstBatchSqls) {
channel.basicAck(msg.getMessageProperties().getDeliveryTag(), false);
} else {
channel.basicReject(msg.getMessageProperties().getDeliveryTag(), true);
}
} catch (Exception e) {
log.error("error:consumer sql:{}", JsonUtils.toJson(sqlMessage), e);
try {
channel.basicReject(msg.getMessageProperties().getDeliveryTag(), true);
} catch (IOException ioException) {
log.error("error:consumer sql:basicReject.msg.tag:{}", msg.getMessageProperties().getDeliveryTag(), ioException);
}
}
}
@RabbitListener(bindings = @QueueBinding(
exchange = @Exchange(MQConst.EX_LNS_SQL_UCENTER), key = MQConst.RK_SQL_UMEMBER,
value = @Queue(MQConst.QUEUES_SQL_UMEMBER)
))
public void consumerSqlForUMember(Message msg, Channel channel) {
SqlMapping.SqlMessage sqlMessage = JsonUtils.fromJson(new String(msg.getBody()), SqlMapping.SqlMessage.class);
log.debug("consumer sql ==> Preparing:{}", JsonUtils.toJson(sqlMessage.getSqls()));
log.debug("consumer sql ==> Parameters:{}", JsonUtils.toJson(sqlMessage.getArgs()));
try {
Boolean rstBatchSqls = baseDao.batchSqls(sqlMessage.getSqls(), sqlMessage.getArgs());
log.debug("consumer sql result of execution:{}", rstBatchSqls);
if (rstBatchSqls) {
channel.basicAck(msg.getMessageProperties().getDeliveryTag(), false);
} else {
channel.basicReject(msg.getMessageProperties().getDeliveryTag(), true);
}
} catch (Exception e) {
log.error("error:consumer sql:{}", JsonUtils.toJson(sqlMessage), e);
try {
channel.basicReject(msg.getMessageProperties().getDeliveryTag(), true);
} catch (IOException ioException) {
log.error("error:consumer sql:basicReject.msg.tag:{}", msg.getMessageProperties().getDeliveryTag(), ioException);
}
}
}
@RabbitListener(bindings = @QueueBinding(
exchange = @Exchange(MQConst.EXCHANGES_LIQUIDNET_SQL),
key = MQConst.ROUTING_KEY_SQL,
value = @Queue(MQConst.QUEUES_SQL_MAIN)
exchange = @Exchange(MQConst.EX_LNS_SQL_STATION), key = MQConst.RK_SQL_STATION,
value = @Queue(MQConst.QUEUES_SQL_STATION)
))
// @RabbitListener(queues = MQConst.QUEUES_SQL_MAIN)
public void consumerSql(Message msg, Channel channel) {
public void consumerSqlForStation(Message msg, Channel channel) {
SqlMapping.SqlMessage sqlMessage = JsonUtils.fromJson(new String(msg.getBody()), SqlMapping.SqlMessage.class);
log.debug("consumer sql ==> Preparing:{}", JsonUtils.toJson(sqlMessage.getSqls()));
log.debug("consumer sql ==> Parameters:{}", JsonUtils.toJson(sqlMessage.getArgs()));
......
......@@ -85,7 +85,7 @@ public class KylinOrderTicketEntitiesServiceImpl extends ServiceImpl<KylinOrderT
BulkWriteResult bulkWriteResult = mongoTemplate.getCollection(KylinOrderTicketEntitiesVo.class.getSimpleName()).bulkWrite(list);
log.info("bulkWriteResult:{}", JsonUtils.toJson(bulkWriteResult));
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL_KYLIN_STATION,
rabbitTemplate.convertSendAndReceive(MQConst.EX_LNS_SQL_STATION, MQConst.RK_SQL_STATION,
SqlMapping.get("kylin_order_ticket_entities.updateStatusByStation", paramsList));
}
}
......@@ -386,6 +386,7 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
String orderTicketEntitiesId = IDGenerator.nextSnowId().toString();
LinkedList<Object[]> sqlsDataD = null;
sqlsDataD = new LinkedList<Object[]>();
sqls.add(SqlMapping.get("kylin_order_ticket_entities.add"));
if (isTrueName == 1) {
for (AdamEntersVo enters : entersVoList) {
orderTicketEntities.setOrderTicketEntitiesId(orderTicketEntitiesId);
......@@ -405,7 +406,6 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
orderTicketEntities.setComment("");
orderTicketEntities.setCreatedAt(now);
orderTicketEntities.setUpdatedAt(null);
sqls.add(SqlMapping.get("kylin_order_ticket_entities.add"));
sqlsDataD.add(orderTicketEntities.getAddObject());
// 生成vo
KylinOrderTicketEntitiesVo orderTicketEntitiesVo = new KylinOrderTicketEntitiesVo();
......@@ -441,7 +441,6 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
orderTicketEntities.setComment("");
orderTicketEntities.setCreatedAt(now);
orderTicketEntities.setUpdatedAt(null);
sqls.add(SqlMapping.get("kylin_order_ticket_entities.add"));
sqlsDataD.add(orderTicketEntities.getAddObject());
// 生成vo
KylinOrderTicketEntitiesVo orderTicketEntitiesVo = new KylinOrderTicketEntitiesVo();
......
......@@ -281,12 +281,13 @@ public class KylinPerformancesServiceImpl extends ServiceImpl<KylinPerformancesM
public List calendarPerformances(String yearMonthDay, String cityName) {
List<KylinPerformanceVo> performancesList = dataUtils.getPerformancesListOfcityName(cityName);
String yearMonthDayStart = yearMonthDay.concat(" 00:00:00");
String yearMonthDayEnd = yearMonthDay.concat(" 23:59:59");
List<KylinPerformanceVo> performancesListNew = new ArrayList();
for (KylinPerformanceVo info : performancesList) {
String timeStart = info.getTimeStart();
if (-1 != DateUtil.compareStrDay(timeStart, yearMonthDay) && 1 != DateUtil.compareStrDay(timeStart, yearMonthDayEnd)) {
if (-1 != DateUtil.compareStrDay(timeStart, yearMonthDayStart) && 1 != DateUtil.compareStrDay(timeStart, yearMonthDayEnd)) {
performancesListNew.add(info);
}
}
......
......@@ -164,7 +164,13 @@ public class MongoVoUtils {
KylinOrderTicketVo data = dataUtils.getOrderTicketVo(orderId);
BeanUtils.copyProperties(data, voItem);
redisVo.add(voItem);
redisVo.addAll(dataUtils.getOrderList(userId));
List<KylinOrderListVo> redisData = dataUtils.getOrderList(userId);
if(redisData.size()>0){
if(redisData.get(0).getOrderTicketsId().equals(orderId)){
redisData.remove(0);
}
}
redisVo.addAll(redisData);
switch (type) {
case 1:
......
......@@ -10,7 +10,7 @@ kylin_order_ticket_status.add=INSERT INTO kylin_order_ticket_status(order_ticket
kylin_order_ticket_entities.add=INSERT INTO kylin_order_ticket_entities(order_ticket_entities_id ,order_id ,ticket_id ,user_id ,time_id ,performance_id ,enter_type ,enter_name ,enter_mobile,enter_id_code,`status`,sys_damai,check_client,is_payment,`comment`,created_at,updated_at)VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
# ------------------------再次支付----------------------------
kylin_order_ticket.payAgain=UPDATE kylin_order_tickets SET order_type = ? ,order_code = ? , updated_at = ? WHERE order_tickets_id = ? and (updated_at = ? or created_at = ?)
kylin_order_ticket.payAgain=UPDATE kylin_order_tickets SET order_code = ? , updated_at = ? WHERE order_tickets_id = ? and (updated_at = ? or created_at = ?)
kylin_order_ticket_status.payAgain=UPDATE kylin_order_ticket_status SET updated_at = ? WHERE order_id = ? and (updated_at = ? or created_at = ?)
kylin_order_ticket_relation.payAgain=UPDATE kylin_order_ticket_relations SET updated_at = ? WHERE order_id = ? and (updated_at = ? or created_at = ?)
......
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