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

Commit 6fb98044 authored by jiangxiulong's avatar jiangxiulong

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

parents f79f33e6 b7d6d5f7
...@@ -3,6 +3,7 @@ package com.liquidnet.service.kylin.constant; ...@@ -3,6 +3,7 @@ package com.liquidnet.service.kylin.constant;
public class KylinRedisConst { public class KylinRedisConst {
public static final String FIELDS = "kylin:fields:id"; public static final String FIELDS = "kylin:fields:id";
public static final String PERFORMANCES = "kylin:performances:id:"; public static final String PERFORMANCES = "kylin:performances:id:";
public static final String PERFORMANCES_TRUE_NAME = "kylin:performances_true_name:id:";
public static final String PERFORMANCES_LIST_CITYNAME = "kylin:performances:cityName:"; public static final String PERFORMANCES_LIST_CITYNAME = "kylin:performances:cityName:";
public static final String PERFORMANCES_LIST_ALL = "kylin:performances:cityName*"; public static final String PERFORMANCES_LIST_ALL = "kylin:performances:cityName*";
public static final String PERFORMANCES_LIST_SYSTEM_RECOMMEND = "kylin:performances:systemRecommend"; public static final String PERFORMANCES_LIST_SYSTEM_RECOMMEND = "kylin:performances:systemRecommend";
......
...@@ -114,13 +114,14 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma ...@@ -114,13 +114,14 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
map.put("auditStatus", auditStatus); map.put("auditStatus", auditStatus);
map.put("updatedAt", updatedAt.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); map.put("updatedAt", updatedAt.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
BasicDBObject objectPerformanceVo = new BasicDBObject("$set", mongoConverter.convertToMongoType(map)); BasicDBObject objectPerformanceVo = new BasicDBObject("$set", mongoConverter.convertToMongoType(map));
Document doc = mongoTemplate.getCollection(PerformancePartnerVo.class.getSimpleName()).findOneAndUpdate( mongoTemplate.getCollection(PerformancePartnerVo.class.getSimpleName()).findOneAndUpdate(
Query.query(Criteria.where("performancesId").is(performancesId)).getQueryObject(), Query.query(Criteria.where("performancesId").is(performancesId)).getQueryObject(),
objectPerformanceVo, objectPerformanceVo,
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER) new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
); );
KylinPerformanceStatus sqlStatus = performanceStatusMapper.selectOne(new UpdateWrapper<KylinPerformanceStatus>().eq("performance_id", performancesId)); KylinPerformanceStatus sqlStatus = performanceStatusMapper.selectOne(new UpdateWrapper<KylinPerformanceStatus>().eq("performance_id", performancesId));
dataUtils.setPerformanceIsTrueName(performancesId,sqlStatus.getIsTrueName());
if (sqlStatus.getStatus() == 1) { if (sqlStatus.getStatus() == 1) {
log.info(" PERFORMANCE 演出审核 第一次"); log.info(" PERFORMANCE 演出审核 第一次");
//修改 //修改
...@@ -163,6 +164,7 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma ...@@ -163,6 +164,7 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
performanceVoUtils.performanceVoStatus(performancesId); performanceVoUtils.performanceVoStatus(performancesId);
} }
} }
dataUtils.delPerformanceRedis(performancesId); dataUtils.delPerformanceRedis(performancesId);
} else if (status == 4) { } else if (status == 4) {
log.info(" PERFORMANCE 演出审核 拒绝"); log.info(" PERFORMANCE 演出审核 拒绝");
......
...@@ -82,6 +82,16 @@ public class DataUtils { ...@@ -82,6 +82,16 @@ public class DataUtils {
redisUtil.del(KylinRedisConst.PERFORMANCES + performanceId); redisUtil.del(KylinRedisConst.PERFORMANCES + performanceId);
} }
/**
* 演出是否实名
*
* @param performanceId
* @param isTrueName
*/
public void setPerformanceIsTrueName(String performanceId,int isTrueName) {
redisUtil.set(KylinRedisConst.PERFORMANCES_TRUE_NAME + performanceId,isTrueName);
}
/** /**
* 删除场次redis * 删除场次redis
* *
...@@ -219,6 +229,22 @@ public class DataUtils { ...@@ -219,6 +229,22 @@ public class DataUtils {
return (KylinPerformanceVo) redisUtil.get(KylinRedisConst.PERFORMANCES + performanceId); return (KylinPerformanceVo) redisUtil.get(KylinRedisConst.PERFORMANCES + performanceId);
} }
/**
* 演出是否实名
*
* @param performanceId
*/
public int getPerformanceIsTrueName(String performanceId) {
Object obj = redisUtil.get(KylinRedisConst.PERFORMANCES_TRUE_NAME + performanceId);
if (obj!=null) {
return (int)obj;
}else{
int isTrueName = getPerformanceVo(performanceId).getIsTrueName();
redisUtil.set(KylinRedisConst.PERFORMANCES_TRUE_NAME + performanceId,isTrueName);
return isTrueName;
}
}
/** /**
* @param performanceId 演出id * @param performanceId 演出id
* @param ticketId 票种id * @param ticketId 票种id
...@@ -227,8 +253,7 @@ public class DataUtils { ...@@ -227,8 +253,7 @@ public class DataUtils {
public void changeBuyInfo(String userId, String idCard, String performanceId, String ticketId, int buyCount) { public void changeBuyInfo(String userId, String idCard, String performanceId, String ticketId, int buyCount) {
String redisKey; String redisKey;
KylinPerformanceVo vo = getPerformanceVo(performanceId); int isTrueName = getPerformanceIsTrueName(performanceId);
int isTrueName = vo.getIsTrueName();
// String useTime = ""; // String useTime = "";
// HashMap<String, ArrayList<String>> allTicketId = new HashMap<>(); // HashMap<String, ArrayList<String>> allTicketId = new HashMap<>();
// for (int x = 0; x < vo.getTicketTimeList().size(); x++) { // for (int x = 0; x < vo.getTicketTimeList().size(); x++) {
......
package com.liquidnet.commons.lang.util; package com.liquidnet.commons.lang.util;
import com.liquidnet.commons.lang.util.spring.RestTemplateConfig;
import org.springframework.http.*; import org.springframework.http.*;
import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap; import org.springframework.util.MultiValueMap;
...@@ -14,7 +15,7 @@ public class HttpUtil { ...@@ -14,7 +15,7 @@ public class HttpUtil {
private static RestTemplate restTemplate; private static RestTemplate restTemplate;
static { static {
restTemplate = new RestTemplate(); restTemplate = RestTemplateConfig.getRestTemplate();
} }
/** /**
......
package com.liquidnet.commons.lang.util.spring;
import org.apache.http.client.HttpClient;
import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
import org.springframework.http.client.HttpComponentsClientHttpRequestFactory;
import org.springframework.web.client.DefaultResponseErrorHandler;
import org.springframework.web.client.RestTemplate;
import java.util.concurrent.TimeUnit;
/**
* @author AnJiabin <anjiabin@zhengzai.tv>
* @version V1.0
* @Description: TODO
* @class: RestTemplateConfig
* @Package com.liquidnet.commons.lang.util.spring
* @Copyright: LightNet @ Copyright (c) 2021
* @date 2021/7/31 14:57
*/
public class RestTemplateConfig {
private static RestTemplate restTemplate;
static {
// 长链接保持时间长度20秒
PoolingHttpClientConnectionManager poolConnManager =
new PoolingHttpClientConnectionManager(20, TimeUnit.SECONDS);
// 设置最大链接数
poolConnManager.setMaxTotal(500*getMaxCpuCore() + 500 );
// 单路由的并发数
poolConnManager.setDefaultMaxPerRoute(500*getMaxCpuCore());
HttpClientBuilder httpClientBuilder = HttpClients.custom();
httpClientBuilder.setConnectionManager(poolConnManager);
// 重试次数3次,并开启
// httpClientBuilder.setRetryHandler(new DefaultHttpRequestRetryHandler(3,true));
HttpClient httpClient = httpClientBuilder.build();
// // 保持长链接配置,keep-alive
// httpClientBuilder.setKeepAliveStrategy(new DefaultConnectionKeepAliveStrategy());
HttpComponentsClientHttpRequestFactory httpComponentsClientHttpRequestFactory = new HttpComponentsClientHttpRequestFactory(httpClient);
// 链接超时配置 5秒
httpComponentsClientHttpRequestFactory.setConnectTimeout(5000);
// 连接读取超时配置
// httpComponentsClientHttpRequestFactory.setReadTimeout(10000);
// 连接池不够用时候等待时间长度设置,分词那边 500毫秒 ,我们这边设置成1秒
httpComponentsClientHttpRequestFactory.setConnectionRequestTimeout(5000);
// 缓冲请求数据,POST大量数据,可以设定为true 我们这边机器比较内存较大
httpComponentsClientHttpRequestFactory.setBufferRequestBody(true);
restTemplate = new RestTemplate();
restTemplate.setRequestFactory(httpComponentsClientHttpRequestFactory);
restTemplate.setErrorHandler(new DefaultResponseErrorHandler());
}
public static RestTemplate getRestTemplate(){
return restTemplate;
}
private static int getMaxCpuCore(){
int cpuCore = Runtime.getRuntime().availableProcessors();
return cpuCore;
}
}
...@@ -87,8 +87,7 @@ public class KylinUtils { ...@@ -87,8 +87,7 @@ public class KylinUtils {
public void changeBuyInfo(String userId, String idCard, String performanceId, String ticketId, int buyCount) { public void changeBuyInfo(String userId, String idCard, String performanceId, String ticketId, int buyCount) {
String redisKey; String redisKey;
KylinPerformanceVo vo = getPerformanceVo(performanceId); int isTrueName = getPerformanceIsTrueName(performanceId);
int isTrueName = vo.getIsTrueName();
// String useTime = ""; // String useTime = "";
// HashMap<String, ArrayList<String>> allTicketId = new HashMap<>(); // HashMap<String, ArrayList<String>> allTicketId = new HashMap<>();
// for (int x = 0; x < vo.getTicketTimeList().size(); x++) { // for (int x = 0; x < vo.getTicketTimeList().size(); x++) {
...@@ -141,6 +140,22 @@ public class KylinUtils { ...@@ -141,6 +140,22 @@ public class KylinUtils {
return (KylinPerformanceVo) redisUtil.get(KylinRedisConst.PERFORMANCES + performanceId); return (KylinPerformanceVo) redisUtil.get(KylinRedisConst.PERFORMANCES + performanceId);
} }
/**
* 演出是否实名
*
* @param performanceId
*/
public int getPerformanceIsTrueName(String performanceId) {
Object obj = redisUtil.get(KylinRedisConst.PERFORMANCES_TRUE_NAME + performanceId);
if (obj!=null) {
return (int)obj;
}else{
int isTrueName = getPerformanceVo(performanceId).getIsTrueName();
redisUtil.set(KylinRedisConst.PERFORMANCES_TRUE_NAME + performanceId,isTrueName);
return isTrueName;
}
}
/** /**
* 根据订单id 获取 订单vo 详情 * 根据订单id 获取 订单vo 详情
* *
......
use test_ln_scene;
#创建集合
db.createCollection("KylinCheckUserPerformanceVo");
db.createCollection("KylinCheckUserVo");
db.createCollection("KylinOrderRefundEntitiesVo");
db.createCollection("KylinOrderRefundPicVo");
db.createCollection("KylinOrderRefundsVo");
db.createCollection("KylinOrderTicketEntitiesVo");
db.createCollection("KylinOrderTicketVo");
db.createCollection("KylinPerformanceVo");
db.createCollection("KylinRoadShowVo");
db.createCollection("KylinPerformanceMisVo");
db.createCollection("KylinTicketPartnerVo");
db.createCollection("KylinTicketTimesPartnerVo");
db.createCollection("PerformanceMemberAuditParam");
db.createCollection("AdminUpushVo");
#创建索引
db.KylinCheckUserPerformanceVo.createIndex({checkUserId:"hashed"});
db.KylinCheckUserVo.createIndex({merchantId:"hashed"});
db.KylinCheckUserVo.createIndex({mobile:"hashed"});
db.KylinOrderRefundEntitiesVo.createIndex({orderRefundsId:"hashed"});
db.KylinOrderRefundEntitiesVo.createIndex({orderTicketEntitiesId:"hashed"});
db.KylinOrderRefundPicVo.createIndex({orderRefundsId:"hashed"});
db.KylinOrderRefundsVo.createIndex({orderRefundsId:"hashed"});
db.KylinOrderRefundsVo.createIndex({orderTicketsId:"hashed"});
db.KylinOrderTicketEntitiesVo.createIndex({orderTicketEntitiesId:"hashed"});
db.KylinOrderTicketEntitiesVo.createIndex({orderId:"hashed"});
db.KylinOrderTicketVo.createIndex({orderTicketsId:"hashed"});
db.KylinOrderTicketVo.createIndex({orderCode:"hashed"});
db.KylinOrderTicketVo.createIndex({userId:"hashed"});
db.KylinPerformanceVo.createIndex({performancesId:"hashed"});
db.KylinPerformanceMisVo.createIndex({performancesId:"hashed"});
db.KylinTicketPartnerVo.createIndex({ticketsId:"hashed"});
db.KylinTicketPartnerVo.createIndex({timesId:"hashed"});
db.KylinTicketTimesPartnerVo.createIndex({performancesId:"hashed"});
db.KylinTicketTimesPartnerVo.createIndex({ticketTimesId:"hashed"});
db.PerformanceMemberAuditParam.createIndex({performancesId:"hashed"});
db.AdminUpushVo.createIndex({upushId:"hashed"});
#创建分片
sh.enableSharding("test_ln_scene");
sh.shardCollection("test_ln_scene.KylinCheckUserPerformanceVo",{"checkUserId":"hashed"});
sh.shardCollection("test_ln_scene.KylinCheckUserVo",{"checkUserId":"hashed"});
sh.shardCollection("test_ln_scene.KylinOrderRefundEntitiesVo",{"orderRefundsEntitiesId":"hashed"});
sh.shardCollection("test_ln_scene.KylinOrderRefundPicVo",{"refundPicId":"hashed"});
sh.shardCollection("test_ln_scene.KylinOrderRefundsVo",{"orderRefundsId":"hashed"});
sh.shardCollection("test_ln_scene.KylinOrderTicketEntitiesVo",{"orderTicketEntitiesId":"hashed"});
sh.shardCollection("test_ln_scene.KylinOrderTicketVo",{"orderTicketsId":"hashed"});
sh.shardCollection("test_ln_scene.KylinPerformanceVo",{"performancesId":"hashed"});
sh.shardCollection("test_ln_scene.KylinRoadShowVo",{"roadShowsId":"hashed"});
sh.shardCollection("test_ln_scene.KylinPerformanceMisVo",{"performancesId":"hashed"});
sh.shardCollection("test_ln_scene.KylinTicketPartnerVo",{"ticketsId":"hashed"});
sh.shardCollection("test_ln_scene.KylinTicketTimesPartnerVo",{"ticketTimesId":"hashed"});
sh.shardCollection("test_ln_scene.PerformanceMemberAuditParam",{"performancesId":"hashed"});
sh.shardCollection("test_ln_scene.AdminUpushVo",{"upushId":"hashed"});
use test_ln_scene;
#删除集合内数据
db.KylinCheckUserPerformanceVo.deleteMany({});
db.KylinCheckUserVo.deleteMany({});
db.KylinOrderRefundEntitiesVo.deleteMany({});
db.KylinOrderRefundPicVo.deleteMany({});
db.KylinOrderRefundsVo.deleteMany({});
db.KylinOrderTicketEntitiesVo.deleteMany({});
db.KylinOrderTicketVo.deleteMany({});
db.KylinPerformanceVo.deleteMany({});
db.KylinRoadShowVo.deleteMany({});
db.KylinPerformanceMisVo.deleteMany({});
db.KylinTicketPartnerVo.deleteMany({});
db.KylinTicketTimesPartnerVo.deleteMany({});
db.PerformanceMemberAuditParam.deleteMany({});
db.AdminUpushVo.deleteMany({});
-- db.KylinOrderTicketVo.deleteMany({createdAt:/^2021-04.*/})
...@@ -74,8 +74,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ ...@@ -74,8 +74,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
@Autowired @Autowired
private OrderUtils orderUtils; private OrderUtils orderUtils;
@Autowired @Autowired
private RedisLockUtil redisLockUtil;
@Autowired
private MongoTemplate mongoTemplate; private MongoTemplate mongoTemplate;
@Autowired @Autowired
private MongoConverter mongoConverter; private MongoConverter mongoConverter;
...@@ -126,20 +124,16 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ ...@@ -126,20 +124,16 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
} }
if (performanceData == null || ticketTimesData == null || ticketData == null) { if (performanceData == null || ticketTimesData == null || ticketData == null) {
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20004"));//参数错误 return ResponseDto.failure(ErrorMapping.get("20004"));//参数错误
} }
if (!ticketData.getTimeId().equals(payOrderParam.getTimeId()) || !ticketTimesData.getPerformanceId().equals(payOrderParam.getPerformanceId())) { if (!ticketData.getTimeId().equals(payOrderParam.getTimeId()) || !ticketTimesData.getPerformanceId().equals(payOrderParam.getPerformanceId())) {
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20004"));//参数错误 return ResponseDto.failure(ErrorMapping.get("20004"));//参数错误
} }
if (payOrderParam.getNumber() % ticketData.getCounts() != 0) { if (payOrderParam.getNumber() % ticketData.getCounts() != 0) {
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20007"));//数量错误 return ResponseDto.failure(ErrorMapping.get("20007"));//数量错误
} }
//判断代理 //判断代理
if (!checkAgent(payOrderParam.getAgentId(), ticketData)) { if (!checkAgent(payOrderParam.getAgentId(), ticketData)) {
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20008"));//无权购买 return ResponseDto.failure(ErrorMapping.get("20008"));//无权购买
} }
...@@ -157,7 +151,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ ...@@ -157,7 +151,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
if (ticketData.getIsExclusive() == 1) { if (ticketData.getIsExclusive() == 1) {
memberType = 2; memberType = 2;
if (!isMember) { if (!isMember) {
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20009"));//没有会员权限 return ResponseDto.failure(ErrorMapping.get("20009"));//没有会员权限
} }
} else { } else {
...@@ -165,7 +158,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ ...@@ -165,7 +158,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
// 会员购买逻辑 // 会员购买逻辑
memberType = 1; memberType = 1;
if (!isMember) { if (!isMember) {
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20009"));//没有会员权限 return ResponseDto.failure(ErrorMapping.get("20009"));//没有会员权限
} }
} else { } else {
...@@ -182,50 +174,41 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ ...@@ -182,50 +174,41 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
int isTrueName = ticketData.getIsTrueName();//是否演出实名 int isTrueName = ticketData.getIsTrueName();//是否演出实名
if (!canBuyStatus.contains(performanceData.getAppStatus())) { if (!canBuyStatus.contains(performanceData.getAppStatus())) {
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20010"));//当前不可购买 return ResponseDto.failure(ErrorMapping.get("20010"));//当前不可购买
} }
if (!canBuyStatus.contains(performanceData.getAppStatus())) { if (!canBuyStatus.contains(performanceData.getAppStatus())) {
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20010"));//当前不可购买 return ResponseDto.failure(ErrorMapping.get("20010"));//当前不可购买
} }
//通用判断时间 //通用判断时间
if (isMember) { if (isMember) {
if (DateUtil.compareStrDay(DateUtil.getNowTime(), memberTimeStart) == -1) { if (DateUtil.compareStrDay(DateUtil.getNowTime(), memberTimeStart) == -1) {
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20011"));//未开始 return ResponseDto.failure(ErrorMapping.get("20011"));//未开始
} }
} else { } else {
if (DateUtil.compareStrDay(DateUtil.getNowTime(), timeStart) == -1) { if (DateUtil.compareStrDay(DateUtil.getNowTime(), timeStart) == -1) {
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20011"));//未开始 return ResponseDto.failure(ErrorMapping.get("20011"));//未开始
} }
} }
if (DateUtil.compareStrDay(DateUtil.getNowTime(), timeEnd) == 1) { if (DateUtil.compareStrDay(DateUtil.getNowTime(), timeEnd) == 1) {
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20012"));//已结束 return ResponseDto.failure(ErrorMapping.get("20012"));//已结束
} }
//快递票判断 //快递票判断
if (payOrderParam.getIsExpress() != null) { if (payOrderParam.getIsExpress() != null) {
if (payOrderParam.getIsExpress() == 1 && DateUtil.compareStrDay(DateUtil.getNowTime(), timeExpressEnd) == 1) { if (payOrderParam.getIsExpress() == 1 && DateUtil.compareStrDay(DateUtil.getNowTime(), timeExpressEnd) == 1) {
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20013"));//快递票不卖 return ResponseDto.failure(ErrorMapping.get("20013"));//快递票不卖
} }
if (payOrderParam.getIsExpress() == 1 && payOrderParam.getAddressId().isEmpty()) { if (payOrderParam.getIsExpress() == 1 && payOrderParam.getAddressId().isEmpty()) {
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20014"));//快递票未填写收货地址 return ResponseDto.failure(ErrorMapping.get("20014"));//快递票未填写收货地址
} }
} }
//实名判断 //实名判断
if (isTrueName == 1 && payOrderParam.getEnterIdList().size() <= 0) { if (isTrueName == 1 && payOrderParam.getEnterIdList().size() <= 0) {
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20015"));//需要实名 未实名 return ResponseDto.failure(ErrorMapping.get("20015"));//需要实名 未实名
} }
if (isTrueName == 1 && payOrderParam.getEnterIdList().size() != payOrderParam.getNumber()) { if (isTrueName == 1 && payOrderParam.getEnterIdList().size() != payOrderParam.getNumber()) {
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20015"));//入场人数量错误 return ResponseDto.failure(ErrorMapping.get("20015"));//入场人数量错误
} }
...@@ -243,7 +226,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ ...@@ -243,7 +226,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
currentTime = System.currentTimeMillis() - currentTime; currentTime = System.currentTimeMillis() - currentTime;
log.debug("redis 修改库存 售罄 -> time:" + (currentTime) + "毫秒"); log.debug("redis 修改库存 售罄 -> time:" + (currentTime) + "毫秒");
log.debug("TAG_REDIS 售罄 回滚库存1 -> count:" + payOrderParam.getNumber()); log.debug("TAG_REDIS 售罄 回滚库存1 -> count:" + payOrderParam.getNumber());
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20016"));//没抢到 return ResponseDto.failure(ErrorMapping.get("20016"));//没抢到
} else { } else {
isDownGeneral = true; isDownGeneral = true;
...@@ -260,7 +242,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ ...@@ -260,7 +242,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
if (age > 25) { if (age > 25) {
dataUtils.changeSurplusGeneral(payOrderParam.getTicketId(), payOrderParam.getNumber()); dataUtils.changeSurplusGeneral(payOrderParam.getTicketId(), payOrderParam.getNumber());
log.debug("TAG_REDIS 学生票 回滚库存2 -> count:" + payOrderParam.getNumber()); log.debug("TAG_REDIS 学生票 回滚库存2 -> count:" + payOrderParam.getNumber());
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20017"));//年龄超了 return ResponseDto.failure(ErrorMapping.get("20017"));//年龄超了
} }
} }
...@@ -278,7 +259,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ ...@@ -278,7 +259,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
if (!res1.equals("")) { if (!res1.equals("")) {
dataUtils.changeSurplusGeneral(payOrderParam.getTicketId(), payOrderParam.getNumber()); dataUtils.changeSurplusGeneral(payOrderParam.getTicketId(), payOrderParam.getNumber());
log.debug("TAG_REDIS 限购 回滚库存3 -> count:" + payOrderParam.getNumber()); log.debug("TAG_REDIS 限购 回滚库存3 -> count:" + payOrderParam.getNumber());
redisLockUtil.unlock(lock);
return ResponseDto.failure(res1);//乱七八糟异常 return ResponseDto.failure(res1);//乱七八糟异常
} }
} }
...@@ -292,7 +272,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ ...@@ -292,7 +272,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
if (!res1.equals("")) { if (!res1.equals("")) {
dataUtils.changeSurplusGeneral(payOrderParam.getTicketId(), payOrderParam.getNumber()); dataUtils.changeSurplusGeneral(payOrderParam.getTicketId(), payOrderParam.getNumber());
log.debug("TAG_REDIS 限购 回滚库存3 -> count:" + payOrderParam.getNumber()); log.debug("TAG_REDIS 限购 回滚库存3 -> count:" + payOrderParam.getNumber());
redisLockUtil.unlock(lock);
return ResponseDto.failure(res1);//乱七八糟异常 return ResponseDto.failure(res1);//乱七八糟异常
} }
currentTime = System.currentTimeMillis() - currentTime; currentTime = System.currentTimeMillis() - currentTime;
...@@ -301,7 +280,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ ...@@ -301,7 +280,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
ResponseDto<PayInnerResultVo> resultData = order(payOrderParam, uid, isMember, isTrueName, performanceData, ticketData, entersVoList, isStudent, ticketTimesData, currentTime); ResponseDto<PayInnerResultVo> resultData = order(payOrderParam, uid, isMember, isTrueName, performanceData, ticketData, entersVoList, isStudent, ticketTimesData, currentTime);
isDownGeneral = false; isDownGeneral = false;
redisLockUtil.unlock(lock);
return resultData; return resultData;
} }
} catch (Exception e) { } catch (Exception e) {
...@@ -321,7 +299,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ ...@@ -321,7 +299,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
} }
} }
} }
redisLockUtil.unlock(lock);
return ResponseDto.failure(ErrorMapping.get("20018"));//乱七八糟异常 return ResponseDto.failure(ErrorMapping.get("20018"));//乱七八糟异常
} }
} }
...@@ -733,27 +710,23 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ ...@@ -733,27 +710,23 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
String timePay = syncOrderParam.getPaymentAt(); String timePay = syncOrderParam.getPaymentAt();
KylinOrderTicketVo orderTicketData = mongoTemplate.findOne(Query.query(Criteria.where("orderCode").is(syncOrderParam.getOrderCode())), KylinOrderTicketVo.class, KylinOrderTicketVo.class.getSimpleName()); KylinOrderTicketVo orderTicketData = mongoTemplate.findOne(Query.query(Criteria.where("orderCode").is(syncOrderParam.getOrderCode())), KylinOrderTicketVo.class, KylinOrderTicketVo.class.getSimpleName());
if (orderTicketData == null) { if (orderTicketData == null) {
redisLockUtil.unlock(lock);
log.error("订单不存在"); log.error("订单不存在");
return "fail";//订单不存在 return "fail";//订单不存在
} }
if (orderTicketData.getStatus() != KylinTableStatusConst.ORDER_STATUS0) { if (orderTicketData.getStatus() != KylinTableStatusConst.ORDER_STATUS0) {
if (orderTicketData.getPayCode().equals(syncOrderParam.getCode()) && orderTicketData.getStatus() == KylinTableStatusConst.ORDER_STATUS1) { if (orderTicketData.getPayCode().equals(syncOrderParam.getCode()) && orderTicketData.getStatus() == KylinTableStatusConst.ORDER_STATUS1) {
redisLockUtil.unlock(lock);
log.error("已经支付"); log.error("已经支付");
return "success";//已经支付 return "success";//已经支付
} }
if (!orderTicketData.getPayCode().equals(syncOrderParam.getCode())) { if (!orderTicketData.getPayCode().equals(syncOrderParam.getCode())) {
redisLockUtil.unlock(lock);
log.error("重复支付"); log.error("重复支付");
return "fail";//重复支付 return "fail";//重复支付
} }
} }
if (orderTicketData.getPriceActual().compareTo(syncOrderParam.getPrice()) != 0) { if (orderTicketData.getPriceActual().compareTo(syncOrderParam.getPrice()) != 0) {
redisLockUtil.unlock(lock);
log.error("价格不符"); log.error("价格不符");
return "fail";//价格不符 return "fail";//价格不符
} }
...@@ -883,7 +856,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ ...@@ -883,7 +856,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
// 大麦回调 // 大麦回调
sycDamaiOrder(orderTickets.getOrderTicketsId()); sycDamaiOrder(orderTickets.getOrderTicketsId());
} }
redisLockUtil.unlock(lock);
log.info(UserPathDto.setData("订单支付成功回调", syncOrderParam, "")); log.info(UserPathDto.setData("订单支付成功回调", syncOrderParam, ""));
return "success"; return "success";
} catch (Exception e) { } catch (Exception e) {
......
...@@ -102,8 +102,7 @@ public class DataUtils { ...@@ -102,8 +102,7 @@ public class DataUtils {
public void changeBuyInfo(String userId, String idCard, String performanceId, String ticketId, int buyCount) { public void changeBuyInfo(String userId, String idCard, String performanceId, String ticketId, int buyCount) {
String redisKey; String redisKey;
KylinPerformanceVo vo = getPerformanceVo(performanceId); int isTrueName = getPerformanceIsTrueName(performanceId);
int isTrueName = vo.getIsTrueName();
// String useTime = ""; // String useTime = "";
// HashMap<String, ArrayList<String>> allTicketId = new HashMap<>(); // HashMap<String, ArrayList<String>> allTicketId = new HashMap<>();
// for (int x = 0; x < vo.getTicketTimeList().size(); x++) { // for (int x = 0; x < vo.getTicketTimeList().size(); x++) {
...@@ -204,6 +203,22 @@ public class DataUtils { ...@@ -204,6 +203,22 @@ public class DataUtils {
} }
} }
/**
* 演出是否实名
*
* @param performanceId
*/
public int getPerformanceIsTrueName(String performanceId) {
Object obj = redisUtil.get(KylinRedisConst.PERFORMANCES_TRUE_NAME + performanceId);
if (obj!=null) {
return (int)obj;
}else{
int isTrueName = getPerformanceVo(performanceId).getIsTrueName();
redisUtil.set(KylinRedisConst.PERFORMANCES_TRUE_NAME + performanceId,isTrueName);
return isTrueName;
}
}
public void delOrderRefundVoByOrderId(String orderId) { public void delOrderRefundVoByOrderId(String orderId) {
redisUtil.del(KylinRedisConst.ORDER_REFUND_BY_ORDER_ID + orderId); redisUtil.del(KylinRedisConst.ORDER_REFUND_BY_ORDER_ID + orderId);
} }
......
...@@ -96,7 +96,7 @@ public class DMAddressesProcessor extends DataMigrationProcessorService { ...@@ -96,7 +96,7 @@ public class DMAddressesProcessor extends DataMigrationProcessorService {
dmRdmService.addAddressesVoByUid(uid, dmRdmService.getAddressesVoByUid(uid), vo); dmRdmService.addAddressesVoByUid(uid, dmRdmService.getAddressesVoByUid(uid), vo);
} }
if (addressesList.size() == 500 || (addressesList.size() > 0 && smFlg)) { if (addressesList.size() == 1000 || (addressesList.size() > 0 && smFlg) || ct < 1000) {
tl += addressesList.size(); tl += addressesList.size();
// mongoTemplate.insert(vos, AdamAddressesVo.class.getSimpleName()); // mongoTemplate.insert(vos, AdamAddressesVo.class.getSimpleName());
log.info("DM.execute.limit.result:{}", dmAddressesService.saveBatch(addressesList)); log.info("DM.execute.limit.result:{}", dmAddressesService.saveBatch(addressesList));
...@@ -104,6 +104,10 @@ public class DMAddressesProcessor extends DataMigrationProcessorService { ...@@ -104,6 +104,10 @@ public class DMAddressesProcessor extends DataMigrationProcessorService {
addressesList.clear(); addressesList.clear();
} }
} }
if (addressesList.size() > 0 && ct > 1000) {
tl += addressesList.size();
log.info("DM.execute.limit.result:{}", dmAddressesService.saveBatch(addressesList));
}
row.close(); row.close();
statement.close(); statement.close();
......
...@@ -87,7 +87,7 @@ public class DMCollectionProcessor extends DataMigrationProcessorService { ...@@ -87,7 +87,7 @@ public class DMCollectionProcessor extends DataMigrationProcessorService {
collectionList.add(collection); collectionList.add(collection);
vos.add(AdamCollectBaseVo.getNew().copy(collection)); vos.add(AdamCollectBaseVo.getNew().copy(collection));
} }
if (collectionList.size() == 500 || (collectionList.size() > 0 && smFlg)) { if (collectionList.size() == 1000 || (collectionList.size() > 0 && smFlg) || ct < 1000) {
tl += collectionList.size(); tl += collectionList.size();
// mongoTemplate.insert(vos, AdamCollectBaseVo.class.getSimpleName()); // mongoTemplate.insert(vos, AdamCollectBaseVo.class.getSimpleName());
log.info("DM.execute.limit.result:{}", dmCollectionService.saveBatch(collectionList)); log.info("DM.execute.limit.result:{}", dmCollectionService.saveBatch(collectionList));
...@@ -95,6 +95,10 @@ public class DMCollectionProcessor extends DataMigrationProcessorService { ...@@ -95,6 +95,10 @@ public class DMCollectionProcessor extends DataMigrationProcessorService {
collectionList.clear(); collectionList.clear();
} }
} }
if (collectionList.size() > 0 && ct > 1000) {
tl += collectionList.size();
log.info("DM.execute.limit.result:{}", dmCollectionService.saveBatch(collectionList));
}
row.close(); row.close();
statement.close(); statement.close();
......
...@@ -100,7 +100,7 @@ public class DMEntersProcessor extends DataMigrationProcessorService { ...@@ -100,7 +100,7 @@ public class DMEntersProcessor extends DataMigrationProcessorService {
} }
dmRdmService.addEntersVoByUid(uid, dmRdmService.getEntersVoByUid(uid), vo); dmRdmService.addEntersVoByUid(uid, dmRdmService.getEntersVoByUid(uid), vo);
} }
if (entersList.size() == 500 || (entersList.size() > 0 && smFlg)) { if (entersList.size() == 1000 || (entersList.size() > 0 && smFlg) || ct < 1000) {
tl += entersList.size(); tl += entersList.size();
// mongoTemplate.insert(vos, AdamEntersVo.class.getSimpleName()); // mongoTemplate.insert(vos, AdamEntersVo.class.getSimpleName());
log.info("DM.execute.limit.result:{}", dmEntersService.saveBatch(entersList)); log.info("DM.execute.limit.result:{}", dmEntersService.saveBatch(entersList));
...@@ -108,6 +108,10 @@ public class DMEntersProcessor extends DataMigrationProcessorService { ...@@ -108,6 +108,10 @@ public class DMEntersProcessor extends DataMigrationProcessorService {
entersList.clear(); entersList.clear();
} }
} }
if (entersList.size() > 0 && ct > 1000) {
tl += entersList.size();
log.info("DM.execute.limit.result:{}", dmEntersService.saveBatch(entersList));
}
row.close(); row.close();
statement.close(); statement.close();
......
...@@ -251,7 +251,7 @@ public class DMMemberCodeProcessor extends DataMigrationProcessorService { ...@@ -251,7 +251,7 @@ public class DMMemberCodeProcessor extends DataMigrationProcessorService {
dmRdmService.setMemberCodeVoByCode(memberCode.getCode(), vo); dmRdmService.setMemberCodeVoByCode(memberCode.getCode(), vo);
} }
// } // }
if (memberCodeList.size() == 500) { if (memberCodeList.size() == 1000 || ct < 1000) {
tl += memberCodeList.size(); tl += memberCodeList.size();
// mongoTemplate.insert(vos, AdamMemberCodeVo.class.getSimpleName()); // mongoTemplate.insert(vos, AdamMemberCodeVo.class.getSimpleName());
log.info("DM.execute.limit.result:{}", dmMemberCodeService.saveBatch(memberCodeList)); log.info("DM.execute.limit.result:{}", dmMemberCodeService.saveBatch(memberCodeList));
...@@ -259,6 +259,10 @@ public class DMMemberCodeProcessor extends DataMigrationProcessorService { ...@@ -259,6 +259,10 @@ public class DMMemberCodeProcessor extends DataMigrationProcessorService {
memberCodeList.clear(); memberCodeList.clear();
} }
} }
if (memberCodeList.size() > 0 && ct > 1000) {
tl += memberCodeList.size();
log.info("DM.execute.limit.result:{}", dmMemberCodeService.saveBatch(memberCodeList));
}
row.close(); row.close();
statement.close(); statement.close();
......
...@@ -132,7 +132,7 @@ public class DMMemberOrderProcessor extends DataMigrationProcessorService { ...@@ -132,7 +132,7 @@ public class DMMemberOrderProcessor extends DataMigrationProcessorService {
dmRdmService.addMemberOrderVoByUid(uid, dmRdmService.getMemberOrderVosByUid(uid), vo); dmRdmService.addMemberOrderVoByUid(uid, dmRdmService.getMemberOrderVosByUid(uid), vo);
} }
if (memberOrderList.size() == 500 || (memberOrderList.size() > 0 && smFlg)) { if (memberOrderList.size() == 1000 || (memberOrderList.size() > 0 && smFlg) || ct < 1000) {
tl += memberOrderList.size(); tl += memberOrderList.size();
// mongoTemplate.insert(vos, AdamMemberOrderVo.class.getSimpleName()); // mongoTemplate.insert(vos, AdamMemberOrderVo.class.getSimpleName());
log.info("DM.execute.limit.result:{}", dmMemberOrderService.saveBatch(memberOrderList)); log.info("DM.execute.limit.result:{}", dmMemberOrderService.saveBatch(memberOrderList));
...@@ -140,6 +140,10 @@ public class DMMemberOrderProcessor extends DataMigrationProcessorService { ...@@ -140,6 +140,10 @@ public class DMMemberOrderProcessor extends DataMigrationProcessorService {
memberOrderList.clear(); memberOrderList.clear();
} }
} }
if (memberOrderList.size() > 0 && ct > 1000) {
tl += memberOrderList.size();
log.info("DM.execute.limit.result:{}", dmMemberOrderService.saveBatch(memberOrderList));
}
row.close(); row.close();
statement.close(); statement.close();
......
...@@ -99,7 +99,7 @@ public class DMRealNameProcessor extends DataMigrationProcessorService { ...@@ -99,7 +99,7 @@ public class DMRealNameProcessor extends DataMigrationProcessorService {
dmRdmService.setRealInfoVoByUid(uid, vo); dmRdmService.setRealInfoVoByUid(uid, vo);
dmRdmService.setCertification(1, realName.getIdCard(), realName.getName()); dmRdmService.setCertification(1, realName.getIdCard(), realName.getName());
} }
if (realNameList.size() == 500 || (realNameList.size() > 0 && smFlg)) { if (realNameList.size() == 1000 || (realNameList.size() > 0 && smFlg) || ct < 1000) {
tl += realNameList.size(); tl += realNameList.size();
// mongoTemplate.insert(vos, AdamRealInfoVo.class.getSimpleName()); // mongoTemplate.insert(vos, AdamRealInfoVo.class.getSimpleName());
log.info("DM.execute.limit.result:{}", dmRealNameService.saveBatch(realNameList)); log.info("DM.execute.limit.result:{}", dmRealNameService.saveBatch(realNameList));
...@@ -107,6 +107,10 @@ public class DMRealNameProcessor extends DataMigrationProcessorService { ...@@ -107,6 +107,10 @@ public class DMRealNameProcessor extends DataMigrationProcessorService {
realNameList.clear(); realNameList.clear();
} }
} }
if (realNameList.size() > 0 && ct > 1000) {
tl += realNameList.size();
log.info("DM.execute.limit.result:{}", dmRealNameService.saveBatch(realNameList));
}
row.close(); row.close();
statement.close(); statement.close();
......
...@@ -108,7 +108,7 @@ public class DMThirdPartsProcessor extends DataMigrationProcessorService { ...@@ -108,7 +108,7 @@ public class DMThirdPartsProcessor extends DataMigrationProcessorService {
dmRdmService.setUidByPlatformOpenId(thirdParty.getPlatform(), thirdParty.getOpenId(), uid); dmRdmService.setUidByPlatformOpenId(thirdParty.getPlatform(), thirdParty.getOpenId(), uid);
dmRdmService.addThirdPartVoListByUid(uid, dmRdmService.getThirdPartVoListByUid(uid), vo); dmRdmService.addThirdPartVoListByUid(uid, dmRdmService.getThirdPartVoListByUid(uid), vo);
} }
if (thirdPartyList.size() == 500 || (thirdPartyList.size() > 0 && smFlg)) { if (thirdPartyList.size() == 1000 || (thirdPartyList.size() > 0 && smFlg) || ct < 1000) {
tl += thirdPartyList.size(); tl += thirdPartyList.size();
// mongoTemplate.insert(vos, AdamThirdPartInfoVo.class.getSimpleName()); // mongoTemplate.insert(vos, AdamThirdPartInfoVo.class.getSimpleName());
log.info("DM.execute.limit.result:{}", dmThirdPartyService.saveBatch(thirdPartyList)); log.info("DM.execute.limit.result:{}", dmThirdPartyService.saveBatch(thirdPartyList));
...@@ -116,6 +116,10 @@ public class DMThirdPartsProcessor extends DataMigrationProcessorService { ...@@ -116,6 +116,10 @@ public class DMThirdPartsProcessor extends DataMigrationProcessorService {
thirdPartyList.clear(); thirdPartyList.clear();
} }
} }
if (thirdPartyList.size() > 0 && ct > 1000) {
tl += thirdPartyList.size();
log.info("DM.execute.limit.result:{}", dmThirdPartyService.saveBatch(thirdPartyList));
}
row.close(); row.close();
statement.close(); statement.close();
......
package com.liquidnet.service.platform.service.impl.adam.dm.processor; package com.liquidnet.service.platform.service.impl.adam.dm.processor;
import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.service.adam.dto.vo.AdamMemberPriceVo; import com.liquidnet.service.adam.dto.vo.AdamMemberPriceVo;
import com.liquidnet.service.adam.dto.vo.AdamMemberVo; import com.liquidnet.service.adam.dto.vo.AdamMemberVo;
import com.liquidnet.service.adam.entity.AdamMember; import com.liquidnet.service.adam.entity.AdamMember;
...@@ -141,7 +142,9 @@ public class DMTracesInfoProcessor extends DataMigrationProcessorService { ...@@ -141,7 +142,9 @@ public class DMTracesInfoProcessor extends DataMigrationProcessorService {
AdamMemberPriceVo vo = AdamMemberPriceVo.getNew().copy(o); AdamMemberPriceVo vo = AdamMemberPriceVo.getNew().copy(o);
dmRdmService.setMemberPriceVoByMemberId(vo.getMemberId(), Collections.singletonList(vo)); ArrayList<AdamMemberPriceVo> objectArrayList = new ArrayList<>();
objectArrayList.add(vo);
dmRdmService.setMemberPriceVoByMemberId(vo.getMemberId(), objectArrayList);
memberPriceMapper.insert(o); memberPriceMapper.insert(o);
// mongoTemplate.insert(vo, AdamMemberPriceVo.class.getSimpleName()); // mongoTemplate.insert(vo, AdamMemberPriceVo.class.getSimpleName());
......
...@@ -147,7 +147,7 @@ public class DMUserInformationProcessor extends DataMigrationProcessorService { ...@@ -147,7 +147,7 @@ public class DMUserInformationProcessor extends DataMigrationProcessorService {
dmRdmService.setUserInfoVoByUid(uid, vo); dmRdmService.setUserInfoVoByUid(uid, vo);
} }
} }
if (userList.size() == 500 || (userList.size() > 0 && smFlg)) { if (userList.size() == 1000 || (userList.size() > 0 && smFlg) || ct < 1000) {
tl += userList.size(); tl += userList.size();
// mongoTemplate.insert(vos, AdamUserInfoVo.class.getSimpleName()); // mongoTemplate.insert(vos, AdamUserInfoVo.class.getSimpleName());
log.info("DM.execute.result:{} - {}", dmUserService.saveBatch(userList), dmUserInfoService.saveBatch(userInfoList)); log.info("DM.execute.result:{} - {}", dmUserService.saveBatch(userList), dmUserInfoService.saveBatch(userInfoList));
...@@ -156,6 +156,10 @@ public class DMUserInformationProcessor extends DataMigrationProcessorService { ...@@ -156,6 +156,10 @@ public class DMUserInformationProcessor extends DataMigrationProcessorService {
userInfoList.clear(); userInfoList.clear();
} }
} }
if (userList.size() > 0 && ct > 1000) {
tl += userList.size();
log.info("DM.execute.result:{} - {}", dmUserService.saveBatch(userList), dmUserInfoService.saveBatch(userInfoList));
}
row.close(); row.close();
statement.close(); statement.close();
......
...@@ -99,7 +99,7 @@ public class DMUserMemberProcessor extends DataMigrationProcessorService { ...@@ -99,7 +99,7 @@ public class DMUserMemberProcessor extends DataMigrationProcessorService {
dmRdmService.setUserMemberVoByUid(uid, vo); dmRdmService.setUserMemberVoByUid(uid, vo);
} }
if (userMemberList.size() == 500 || (userMemberList.size() > 0 && smFlg)) { if (userMemberList.size() == 1000 || (userMemberList.size() > 0 && smFlg) || ct < 1000) {
tl += userMemberList.size(); tl += userMemberList.size();
// mongoTemplate.insert(vos, AdamUserMemberVo.class.getSimpleName()); // mongoTemplate.insert(vos, AdamUserMemberVo.class.getSimpleName());
log.info("DM.execute.limit.result:{}", dmUserMemberService.saveBatch(userMemberList)); log.info("DM.execute.limit.result:{}", dmUserMemberService.saveBatch(userMemberList));
...@@ -107,6 +107,10 @@ public class DMUserMemberProcessor extends DataMigrationProcessorService { ...@@ -107,6 +107,10 @@ public class DMUserMemberProcessor extends DataMigrationProcessorService {
userMemberList.clear(); userMemberList.clear();
} }
} }
if (userMemberList.size() > 0 && ct > 1000) {
tl += userMemberList.size();
log.info("DM.execute.limit.result:{}", dmUserMemberService.saveBatch(userMemberList));
}
row.close(); row.close();
statement.close(); statement.close();
......
...@@ -364,6 +364,7 @@ public class KylinPerformancesPartnerServiceImpl extends ServiceImpl<KylinPerfor ...@@ -364,6 +364,7 @@ public class KylinPerformancesPartnerServiceImpl extends ServiceImpl<KylinPerfor
} else { } else {
KylinPerformanceMisVo kylinPerformanceMisVo = performanceVoTask.getPerformanceMisVo(performanceId); KylinPerformanceMisVo kylinPerformanceMisVo = performanceVoTask.getPerformanceMisVo(performanceId);
HashMap<String, Object> mapSql = ObjectUtil.cloneHashMapStringAndObject(); HashMap<String, Object> mapSql = ObjectUtil.cloneHashMapStringAndObject();
mapSql.put("rejectTxt", ""); mapSql.put("rejectTxt", "");
mapSql.put("status", map.get("status")); mapSql.put("status", map.get("status"));
...@@ -378,6 +379,8 @@ public class KylinPerformancesPartnerServiceImpl extends ServiceImpl<KylinPerfor ...@@ -378,6 +379,8 @@ public class KylinPerformancesPartnerServiceImpl extends ServiceImpl<KylinPerfor
performanceStatus.setLimitCount(step2Param.getLimitCount()); performanceStatus.setLimitCount(step2Param.getLimitCount());
performanceStatusMapper.update(performanceStatus, Wrappers.lambdaQuery(KylinPerformanceStatus.class).eq(KylinPerformanceStatus::getPerformanceId, performanceId)); performanceStatusMapper.update(performanceStatus, Wrappers.lambdaQuery(KylinPerformanceStatus.class).eq(KylinPerformanceStatus::getPerformanceId, performanceId));
dataUtils.setPerformanceIsTrueName(performanceId,step2Param.getIsTrueName());
//提示:票种价格、售票时间、票种购票限制 直接生效 (演出购票限制,购票须知 演出是否实名 票种缺货登记 票种是否电子票 票种是否快递票 票种最低购买张数 票种是否显示二维码) //提示:票种价格、售票时间、票种购票限制 直接生效 (演出购票限制,购票须知 演出是否实名 票种缺货登记 票种是否电子票 票种是否快递票 票种最低购买张数 票种是否显示二维码)
List<TicketTimesTicketCreatePartnerVo> timeList = kylinPerformanceMisVo.getTicketTimes(); List<TicketTimesTicketCreatePartnerVo> timeList = kylinPerformanceMisVo.getTicketTimes();
for (TicketTimesTicketCreatePartnerVo timesItem : timeList) { for (TicketTimesTicketCreatePartnerVo timesItem : timeList) {
......
...@@ -154,6 +154,16 @@ public class DataUtils { ...@@ -154,6 +154,16 @@ public class DataUtils {
} }
} }
/**
* 演出是否实名
*
* @param performanceId
* @param isTrueName
*/
public void setPerformanceIsTrueName(String performanceId,int isTrueName) {
redisUtil.set(KylinRedisConst.PERFORMANCES_TRUE_NAME + performanceId,isTrueName);
}
/** /**
* 根据订单id 获取 订单vo 详情 * 根据订单id 获取 订单vo 详情
* *
...@@ -250,24 +260,7 @@ public class DataUtils { ...@@ -250,24 +260,7 @@ public class DataUtils {
public void changeBuyInfo(String userId, String idCard, String performanceId, String ticketId, int buyCount) { public void changeBuyInfo(String userId, String idCard, String performanceId, String ticketId, int buyCount) {
String redisKey; String redisKey;
KylinPerformanceVo vo = getPerformanceVo(performanceId); int isTrueName = getPerformanceIsTrueName(performanceId);
int isTrueName = vo.getIsTrueName();
// String useTime = "";
// HashMap<String, ArrayList<String>> allTicketId = new HashMap<>();
// for (int x = 0; x < vo.getTicketTimeList().size(); x++) {
// KylinTicketTimesVo timeItem = vo.getTicketTimeList().get(x);
// ArrayList<String> ticketList = new ArrayList<>();
// for (int y = 0; y < timeItem.getTicketList().size(); y++) {
// KylinTicketVo ticketItem = timeItem.getTicketList().get(y);
// if (ticketItem.getType() == 1) {
// ticketList.add(ticketItem.getTicketsId());
// }
// if (ticketItem.getTicketsId().equals(ticketId)) {
// useTime = ticketItem.getUseStart();
// }
// }
// allTicketId.put(timeItem.getUseStart(), ticketList);
// }
if (0 == isTrueName) { if (0 == isTrueName) {
redisKey = KylinRedisConst.USERID_BUY_INFO + userId; redisKey = KylinRedisConst.USERID_BUY_INFO + userId;
...@@ -277,8 +270,6 @@ public class DataUtils { ...@@ -277,8 +270,6 @@ public class DataUtils {
String performanceIdKey = redisKey + ":" + KylinRedisConst.PERFORMANCE_ID + ":" + performanceId; String performanceIdKey = redisKey + ":" + KylinRedisConst.PERFORMANCE_ID + ":" + performanceId;
String ticketIdKey = redisKey + ":" + KylinRedisConst.TICKET_ID + ":" + ticketId; String ticketIdKey = redisKey + ":" + KylinRedisConst.TICKET_ID + ":" + ticketId;
// String ticketUseTimeKey = ticketIdKey + ":" + KylinRedisConst.USE_TIME;
// redisUtil.set(ticketUseTimeKey, useTime);
if (buyCount > 0) { if (buyCount > 0) {
redisUtil.incr(ticketIdKey, buyCount); redisUtil.incr(ticketIdKey, buyCount);
...@@ -354,6 +345,22 @@ public class DataUtils { ...@@ -354,6 +345,22 @@ public class DataUtils {
} }
} }
/**
* 演出是否实名
*
* @param performanceId
*/
public int getPerformanceIsTrueName(String performanceId) {
Object obj = redisUtil.get(KylinRedisConst.PERFORMANCES_TRUE_NAME + performanceId);
if (obj!=null) {
return (int)obj;
}else{
int isTrueName = getPerformanceVo(performanceId).getIsTrueName();
redisUtil.set(KylinRedisConst.PERFORMANCES_TRUE_NAME + performanceId,isTrueName);
return isTrueName;
}
}
public void delOrderRefundVo(String orderRefundsId){ public void delOrderRefundVo(String orderRefundsId){
redisUtil.del(KylinRedisConst.ORDER_REFUND + orderRefundsId); redisUtil.del(KylinRedisConst.ORDER_REFUND + orderRefundsId);
...@@ -373,11 +380,6 @@ public class DataUtils { ...@@ -373,11 +380,6 @@ public class DataUtils {
redisUtil.set(redisKey, kylinOrderExpressVo); redisUtil.set(redisKey, kylinOrderExpressVo);
} }
public void delOrderExpressRoute(String orderTicketsId) { // 删除
String redisKey = KylinRedisConst.ORDER_ROUTE_INFO.concat(orderTicketsId);
redisUtil.del(redisKey);
}
/** /**
* 演出订单快递路由 * 演出订单快递路由
*/ */
......
package com.liquidnet.service.platform.utils; package com.liquidnet.service.platform.utils;
import com.liquidnet.service.adam.dto.vo.AdamEntersVo; import com.liquidnet.service.adam.dto.vo.*;
import com.liquidnet.service.base.PagedResult;
import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderListVo; import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderListVo;
import com.mongodb.BasicDBObject; import com.mongodb.BasicDBObject;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
...@@ -31,4 +32,67 @@ public class ObjectUtil { ...@@ -31,4 +32,67 @@ public class ObjectUtil {
public static BasicDBObject cloneBasicDBObject() { public static BasicDBObject cloneBasicDBObject() {
return (BasicDBObject) basicDBObject.clone(); return (BasicDBObject) basicDBObject.clone();
} }
private static final ArrayList<AdamTagParentVo> adamTagParentVoArrayList = new ArrayList<>();
private static final ArrayList<AdamTagVo> adamTagVoArrayList = new ArrayList<>();
private static final ArrayList<AdamMemberOrderSimpleVo> adamMemberOrderSimpleVoArrayList = new ArrayList<>();
private static final ArrayList<AdamThirdPartInfoVo> adamThirdPartInfoVoArrayList = new ArrayList<>();
private static final ArrayList<AdamEntersVo> adamEntersVoArrayList = new ArrayList<>();
private static final ArrayList<AdamAddressesVo> adamAddressesVoArrayList = new ArrayList<>();
private static final ArrayList<AdamMemberOrderVo> adamMemberOrderVoArrayList = new ArrayList<>();
private static final PagedResult<AdamCollectVo> adamCollectVoPagedResult = new PagedResult<>();
private static final PagedResult<AdamMemberOrderSimpleVo> adamMemberOrderSimpleVoPagedResult = new PagedResult<>();
private static final PagedResult<AdamDisposedVo> adamDisposedVoPagedResult = new PagedResult<>();
private static final PagedResult<AdamDisposedUserVo> adamDisposedUserVoPagedResult = new PagedResult<>();
public static ArrayList<AdamTagParentVo> getAdamTagParentVoArrayList() {
return (ArrayList<AdamTagParentVo>) adamTagParentVoArrayList.clone();
}
public static ArrayList<AdamTagVo> getAdamTagVoArrayList() {
return (ArrayList<AdamTagVo>) adamTagVoArrayList.clone();
}
public static ArrayList<AdamMemberOrderSimpleVo> getAdamMemberOrderSimpleVoArrayList() {
return (ArrayList<AdamMemberOrderSimpleVo>) adamMemberOrderSimpleVoArrayList.clone();
}
public static ArrayList<AdamThirdPartInfoVo> getAdamThirdPartInfoVoArrayList() {
return (ArrayList<AdamThirdPartInfoVo>) adamThirdPartInfoVoArrayList.clone();
}
public static ArrayList<AdamEntersVo> getAdamEntersVoArrayList() {
return (ArrayList<AdamEntersVo>) adamEntersVoArrayList.clone();
}
public static ArrayList<AdamAddressesVo> getAdamAddressesVoArrayList() {
return (ArrayList<AdamAddressesVo>) adamAddressesVoArrayList.clone();
}
public static ArrayList<AdamMemberOrderVo> getAdamMemberOrderVoArrayList() {
return (ArrayList<AdamMemberOrderVo>) adamMemberOrderVoArrayList.clone();
}
public static PagedResult<AdamCollectVo> getAdamCollectVoPagedResult() {
return adamCollectVoPagedResult.clone();
}
public static PagedResult<AdamMemberOrderSimpleVo> getAdamMemberOrderSimpleVoPagedResult() {
return adamMemberOrderSimpleVoPagedResult.clone();
}
public static PagedResult<AdamDisposedVo> getAdamDisposedVoPagedResult() {
return adamDisposedVoPagedResult.clone();
}
public static PagedResult<AdamDisposedUserVo> getAdamDisposedUserVoPagedResult() {
return adamDisposedUserVoPagedResult.clone();
}
} }
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