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

Commit 69ece3c5 authored by jiangxiulong's avatar jiangxiulong

完善 演出审核后丢失数据报错

parent 03e4e18a
......@@ -3,9 +3,11 @@ package com.liquidnet.service.platform.controller.A_fskfsfs;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.liquidnet.common.cache.redis.util.RedisDataSourceUtil;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.constant.KylinRedisConst;
import com.liquidnet.service.kylin.dto.param.PerformancePartnerVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketPartnerVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketTimesPartnerVo;
......@@ -54,6 +56,8 @@ public class JxlDataPerformancesController {
private KylinTicketsMapper ticketsMapper;
@Autowired
private MongoTemplate mongoTemplate;
@Autowired
private RedisDataSourceUtil redisDataSourceUtil;
@GetMapping("P001")
@ApiOperation("演出审核后丢失数据报错")
......@@ -67,13 +71,18 @@ public class JxlDataPerformancesController {
List<KylinTicketTimesPartnerVo> voTimes = mongoTemplate.find(Query.query(Criteria.where("performancesId").is(performancesId)),
KylinTicketTimesPartnerVo.class, KylinTicketTimesPartnerVo.class.getSimpleName());
for (KylinTicketTimesPartnerVo voTime : voTimes) {
String ticketTimesId = voTime.getTicketTimesId();
List<KylinTicketPartnerVo> timesIdVo = mongoTemplate.find(Query.query(
Criteria.where("timesId").is(voTime.getTicketTimesId())),
Criteria.where("timesId").is(ticketTimesId)),
KylinTicketPartnerVo.class,
KylinTicketPartnerVo.class.getSimpleName());
for (KylinTicketPartnerVo ticketVo : timesIdVo) {
String ticketsId = ticketVo.getTicketsId();
PerformancePartnerVo performanceData = mongoTemplate.findOne(Query.query(Criteria.where("performancesId").is(performancesId)), PerformancePartnerVo.class, PerformancePartnerVo.class.getSimpleName());
// 票种
KylinTickets kylinTickets = ticketsMapper.selectOne(Wrappers.lambdaQuery(KylinTickets.class).eq(KylinTickets::getTicketsId, ticketsId));
if (null == kylinTickets) {
KylinTickets tickets = new KylinTickets();
BeanUtils.copyProperties(ticketVo, tickets);
tickets.setPayCountdownMinute(performanceData.getPayCountdownMinute());
......@@ -86,9 +95,6 @@ public class JxlDataPerformancesController {
tickets.setTimeEndExpress(DateUtil.asLocalDateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(ticketVo.getTimeEndExpress())));
tickets.setDescribeExpress(ticketVo.getDescribeExpress());
}
// else{
// tickets.setTimeEndExpress(DateUtil.asLocalDateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2030-01-01 12:00:00")));
// }
if (ticketVo.getIsElectronic() == 1) {
tickets.setDescribeElectronic(ticketVo.getDescribeElectronic());
}
......@@ -98,14 +104,29 @@ public class JxlDataPerformancesController {
tickets.setCreatedAt(DateUtil.asLocalDateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(ticketVo.getCreatedAt())));
tickets.setUpdatedAt(DateUtil.asLocalDateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(ticketVo.getUpdatedAt())));
ticketsMapper.insert(tickets);
}
// 判断票中是否存在再新增
// 判断剩余库存redis
// 判断兑换剩余库存redis
// 库存
String surplusGeneralKey = KylinRedisConst.PERFORMANCES_INVENTORY + ticketsId + ":" + KylinRedisConst.SURPLUS_GENERAL;
String surplusExchangeKey = KylinRedisConst.PERFORMANCES_INVENTORY + ticketsId + ":" + KylinRedisConst.SURPLUS_EXCHANGE;
Integer surplusGeneral = (int) redisDataSourceUtil.getRedisKylinUtil().get(surplusGeneralKey);
Integer surplusExchange = (int) redisDataSourceUtil.getRedisKylinUtil().get(surplusExchangeKey);
if (null == surplusGeneral) {
redisDataSourceUtil.getRedisKylinUtil().set(surplusGeneralKey, ticketVo.getSurplusGeneral());
}
if (null == surplusExchange) {
redisDataSourceUtil.getRedisKylinUtil().set(surplusExchangeKey, ticketVo.getSurplusExchange());
}
// 场次与票种关联表
LocalDateTime timeC = null;
LocalDateTime timeU = null;
KylinTicketRelations kylinTicketRelations = ticketRelationsMapper.selectOne(
Wrappers.lambdaQuery(KylinTicketRelations.class)
.eq(KylinTicketRelations::getTicketId, ticketsId)
.eq(KylinTicketRelations::getTimesId, ticketTimesId)
);
if (null == kylinTicketRelations) {
try {
timeC = DateUtil.asLocalDateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(ticketVo.getCreatedAt()));
} catch (Exception e) {
......@@ -116,17 +137,16 @@ public class JxlDataPerformancesController {
} catch (Exception e) {
e.printStackTrace();
}
String ticketsId = ticketVo.getTicketsId();
KylinTicketRelations ticketRelations = new KylinTicketRelations();
BeanUtils.copyProperties(ticketVo, ticketRelations);
ticketRelations.setCreatedAt(timeC);
ticketRelations.setUpdatedAt(timeU);
ticketRelations.setTicketRelationsId(IDGenerator.nextSnowId());
ticketRelations.setTicketId(ticketsId);
// 场次与票种关联表
ticketRelationsMapper.insert(ticketRelations);
}
// KylinTicketStatus
KylinTicketStatus ticketStatusNew = new KylinTicketStatus();
BeanUtils.copyProperties(ticketVo, ticketStatusNew);
ticketStatusNew.setTicketId(ticketsId);
......@@ -149,7 +169,8 @@ public class JxlDataPerformancesController {
Wrappers.lambdaQuery(KylinTicketStatus.class)
.eq(KylinTicketStatus::getTicketId, ticketsId)
);
if (null == ticketStatus) {// 添加
// 添加
if (null == ticketStatus) {
ticketStatusNew.setTicketStatusId(IDGenerator.nextSnowId());
ticketStatusMapper.insert(ticketStatusNew);
System.out.println("新增---------------------------------");
......
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