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

Commit 83e68bb6 authored by 胡佳晨's avatar 胡佳晨

提交 mongo 订单列表

parent 2f1c7ec2
...@@ -13,6 +13,7 @@ public class KylinRedisConst { ...@@ -13,6 +13,7 @@ public class KylinRedisConst {
public static final String TIMES = "kylin:times:id:"; public static final String TIMES = "kylin:times:id:";
public static final String BANNERS = "kylin:banners:id:"; public static final String BANNERS = "kylin:banners:id:";
public static final String AGENT = "kylin:agent:info"; public static final String AGENT = "kylin:agent:info";
public static final String ORDER_LIST = "kylin:order:list:userId:";
public static final String ENTER_INFO = "kylin:enter:info:id:";//入场须知 public static final String ENTER_INFO = "kylin:enter:info:id:";//入场须知
......
...@@ -160,17 +160,17 @@ ...@@ -160,17 +160,17 @@
<span>库存总量:</span> <span>库存总量:</span>
<span th:text="${dict2.totalGeneral}"></span> <span th:text="${dict2.totalGeneral}"></span>
</div> </div>
<div> <!-- <div>-->
<span>售票状态:</span> <!-- <span>售票状态:</span>-->
<span th:if="${dict2.status == 1}">审核中</span> <!-- <span th:if="${dict2.status == 1}">审核中</span>-->
<span th:if="${dict2.status == 3}">审核通过</span> <!-- <span th:if="${dict2.status == 3}">审核通过</span>-->
<span th:if="${dict2.status == 4}">未通过</span> <!-- <span th:if="${dict2.status == 4}">未通过</span>-->
<span th:if="${dict2.status == 6}">在售</span> <!-- <span th:if="${dict2.status == 6}">在售</span>-->
<span th:if="${dict2.status == 7}">下架</span> <!-- <span th:if="${dict2.status == 7}">下架</span>-->
<span th:if="${dict2.status == 8}">售罄</span> <!-- <span th:if="${dict2.status == 8}">售罄</span>-->
<span th:if="${dict2.status == 9}">未开始</span> <!-- <span th:if="${dict2.status == 9}">未开始</span>-->
<span th:if="${dict2.status == 10}">已结束</span> <!-- <span th:if="${dict2.status == 10}">已结束</span>-->
</div> <!-- </div>-->
<div> <div>
<span>开始售票时间:</span> <span>开始售票时间:</span>
<span th:text="${dict2.timeStart}"></span> <span th:text="${dict2.timeStart}"></span>
......
...@@ -158,7 +158,11 @@ ...@@ -158,7 +158,11 @@
align: 'center', align: 'center',
formatter: function (value, row, index) { formatter: function (value, row, index) {
var actions = []; var actions = [];
actions.push('<a class="btn btn-success btn-xs ' + detailFlag + '" href="javascript:void(0)" onclick="$.operate.detailTab(\'' + row.performancesId + '\')"><i class="fa fa-edit"></i>查看</a> '); if (row.auditStatus == 0) {
actions.push('<a class="btn btn-success btn-xs ' + detailFlag + '" href="javascript:void(0)" onclick="$.operate.detailTab(\'' + row.performancesId + '\')"><i class="fa fa-edit"></i>管理</a> ');
}else{
actions.push('<a class="btn btn-success btn-xs ' + detailFlag + '" href="javascript:void(0)" onclick="$.operate.detailTab(\'' + row.performancesId + '\')"><i class="fa fa-edit"></i>查看</a> ');
}
if (row.syncDamai == 1) { if (row.syncDamai == 1) {
actions.push('<a class="btn btn-warning btn-xs ' + expertFlag + '" href="javascript:void(0)" onclick="f(\'' + row.performancesId + '\')"><i class="fa fa-remove"></i>同步</a>'); actions.push('<a class="btn btn-warning btn-xs ' + expertFlag + '" href="javascript:void(0)" onclick="f(\'' + row.performancesId + '\')"><i class="fa fa-remove"></i>同步</a>');
} }
......
...@@ -26,6 +26,7 @@ import com.liquidnet.service.kylin.mapper.KylinOrderTicketsMapper; ...@@ -26,6 +26,7 @@ import com.liquidnet.service.kylin.mapper.KylinOrderTicketsMapper;
import com.liquidnet.service.kylin.service.IKylinOrderTicketsService; import com.liquidnet.service.kylin.service.IKylinOrderTicketsService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.liquidnet.service.kylin.utils.DataUtils; import com.liquidnet.service.kylin.utils.DataUtils;
import com.liquidnet.service.kylin.utils.MongoVoUtils;
import com.liquidnet.service.kylin.utils.TaobaoTicketUtils; import com.liquidnet.service.kylin.utils.TaobaoTicketUtils;
import com.mongodb.BasicDBObject; import com.mongodb.BasicDBObject;
import com.taobao.api.request.AlibabaDamaiMevOpenBatchpushticketRequest; import com.taobao.api.request.AlibabaDamaiMevOpenBatchpushticketRequest;
...@@ -76,6 +77,8 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM ...@@ -76,6 +77,8 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
@Autowired @Autowired
private RedisUtil redisUtil; private RedisUtil redisUtil;
@Autowired @Autowired
private MongoVoUtils mongoVoUtils;
@Autowired
private RedisLockUtil redisLockUtil; private RedisLockUtil redisLockUtil;
@Autowired @Autowired
private MongoTemplate mongoTemplate; private MongoTemplate mongoTemplate;
...@@ -528,6 +531,9 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM ...@@ -528,6 +531,9 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
orderTicketVo.setOverdueAt(orderTickets.getCreatedAt().plusMinutes(performanceData.getPayCountdownMinute()).plusSeconds(15).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); orderTicketVo.setOverdueAt(orderTickets.getCreatedAt().plusMinutes(performanceData.getPayCountdownMinute()).plusSeconds(15).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
orderTicketVo.setCreatedAt(orderTickets.getCreatedAt().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); orderTicketVo.setCreatedAt(orderTickets.getCreatedAt().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
mongoTemplate.insert(orderTicketVo, KylinOrderTicketVo.class.getSimpleName()); mongoTemplate.insert(orderTicketVo, KylinOrderTicketVo.class.getSimpleName());
mongoVoUtils.resetOrderListVo(uid, 1, orderTicketVo.getOrderTicketsId());
// 执行sql // 执行sql
String sqlData = SqlMapping.gets(sqls, sqlsDataA, sqlsDataB, sqlsDataC, sqlsDataD); String sqlData = SqlMapping.gets(sqls, sqlsDataA, sqlsDataB, sqlsDataC, sqlsDataD);
...@@ -720,6 +726,8 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM ...@@ -720,6 +726,8 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL, rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
SqlMapping.gets(sqls, sqlsDataA, sqlsDataB, sqlsDataC)); SqlMapping.gets(sqls, sqlsDataA, sqlsDataB, sqlsDataC));
//生成vo redis
mongoVoUtils.resetOrderListVo(orderTicketData.getUserId(), 2, orderTicketData.getOrderTicketsId());
// 发短信 // 发短信
// 大麦回调 // 大麦回调
...@@ -749,13 +757,9 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM ...@@ -749,13 +757,9 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
// long count = mongoTemplate.count(query, KylinOrderTicketVo.class, KylinOrderTicketVo.class.getSimpleName()); // long count = mongoTemplate.count(query, KylinOrderTicketVo.class, KylinOrderTicketVo.class.getSimpleName());
// query.with(pageable); // query.with(pageable);
List<KylinOrderListVo> voIdList = mongoTemplate.find(query, KylinOrderListVo.class, KylinOrderTicketVo.class.getSimpleName()); List<KylinOrderListVo> voList = dataUtils.getOrderList(uid);
List<KylinOrderListVo> voList = new ArrayList<>(); for (int i = 0; i < voList.size(); i++) {
for (int i = page * size; i < voIdList.size(); i++) { KylinOrderListVo item = voList.get(i);
String orderTicketsId = voIdList.get(i).getOrderTicketsId();
KylinOrderTicketVo data = dataUtils.getOrderTicketVo(orderTicketsId);
KylinOrderListVo item = new KylinOrderListVo();
BeanUtils.copyProperties(data, item);
//TODO 顺丰快递 //TODO 顺丰快递
Object expresses = null; Object expresses = null;
if (null != expresses) { if (null != expresses) {
...@@ -776,14 +780,13 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM ...@@ -776,14 +780,13 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
} else { } else {
item.setRestTime(0L); item.setRestTime(0L);
} }
voList.add(item); if (voList.size() >= 40) {
if(voList.size()>=20){
break; break;
} }
} }
mPageInfo = new PageInfo(voList); mPageInfo = new PageInfo(voList);
mPageInfo.setTotal(voIdList.size()); mPageInfo.setTotal(voList.size());
return mPageInfo; return mPageInfo;
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
......
...@@ -5,9 +5,8 @@ import com.liquidnet.common.cache.redis.util.RedisUtil; ...@@ -5,9 +5,8 @@ import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.commons.lang.util.JsonUtils; import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.kylin.constant.KylinRedisConst; import com.liquidnet.service.kylin.constant.KylinRedisConst;
import com.liquidnet.service.kylin.dto.vo.*; import com.liquidnet.service.kylin.dto.vo.*;
import com.liquidnet.service.kylin.dto.vo.middle.KylinTicketTimesVo;
import com.liquidnet.service.kylin.dto.vo.middle.KylinTicketVo;
import com.liquidnet.service.kylin.dto.vo.mongo.*; import com.liquidnet.service.kylin.dto.vo.mongo.*;
import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderListVo;
import com.liquidnet.service.kylin.entity.*; import com.liquidnet.service.kylin.entity.*;
import com.liquidnet.service.kylin.mapper.KylinBuyNoticeMapper; import com.liquidnet.service.kylin.mapper.KylinBuyNoticeMapper;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -126,19 +125,17 @@ public class DataUtils { ...@@ -126,19 +125,17 @@ public class DataUtils {
return (KylinPerformanceVo) redisUtil.get(KylinRedisConst.PERFORMANCES + performanceId); return (KylinPerformanceVo) redisUtil.get(KylinRedisConst.PERFORMANCES + performanceId);
} }
/** public void setOrderTicketVo(String userId,List<KylinOrderListVo> vo) {
* 根据票种id 获取 票种vo 详情 redisUtil.set(KylinRedisConst.ORDER_LIST + userId, vo);
* }
* @param ticketId
* @return public List<KylinOrderListVo> getOrderList(String userId) {
*/ if (redisUtil.hasKey(KylinRedisConst.ORDER_LIST + userId)) {
public KylinTicketVo getTicketVo(String ticketId) {
if (redisUtil.hasKey(KylinRedisConst.TICKET + ticketId)) {
} else { } else {
KylinTicketVo ticketData = mongoTemplate.findOne(Query.query(Criteria.where("ticketsId").is(ticketId)), KylinTicketVo.class, KylinTicketVo.class.getSimpleName()); List<KylinOrderListVo> voList = mongoTemplate.find(Query.query(Criteria.where("userId").is(userId)).limit(40), KylinOrderListVo.class, KylinOrderTicketVo.class.getSimpleName());
redisUtil.set(KylinRedisConst.TICKET + ticketId, ticketData); redisUtil.set(KylinRedisConst.ORDER_LIST + userId, voList);
} }
return (KylinTicketVo) redisUtil.get(KylinRedisConst.TICKET + ticketId); return (List<KylinOrderListVo>) redisUtil.get(KylinRedisConst.ORDER_LIST + userId);
} }
/** /**
......
...@@ -2,12 +2,16 @@ package com.liquidnet.service.kylin.utils; ...@@ -2,12 +2,16 @@ package com.liquidnet.service.kylin.utils;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.liquidnet.common.cache.redis.util.RedisUtil; import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.commons.lang.util.BeanUtil;
import com.liquidnet.service.kylin.constant.KylinRedisConst; import com.liquidnet.service.kylin.constant.KylinRedisConst;
import com.liquidnet.service.kylin.dto.vo.middle.KylinTicketTimesVo; import com.liquidnet.service.kylin.dto.vo.middle.KylinTicketTimesVo;
import com.liquidnet.service.kylin.dto.vo.middle.KylinTicketVo; import com.liquidnet.service.kylin.dto.vo.middle.KylinTicketVo;
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.mongo.KylinPerformanceVo;
import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderListVo;
import com.liquidnet.service.kylin.entity.*; import com.liquidnet.service.kylin.entity.*;
import com.liquidnet.service.kylin.mapper.*; import com.liquidnet.service.kylin.mapper.*;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
...@@ -137,9 +141,57 @@ public class MongoVoUtils { ...@@ -137,9 +141,57 @@ public class MongoVoUtils {
voData.setTimePriceVipAndLack(isLackRegister, isMember, isExclusive, price, stopSellTime, sellTime, isAdvance, isDiscount, payCountdownMinute); voData.setTimePriceVipAndLack(isLackRegister, isMember, isExclusive, price, stopSellTime, sellTime, isAdvance, isDiscount, payCountdownMinute);
voData.setTicketTimeList(timeList); voData.setTicketTimeList(timeList);
return voData; return voData;
}catch (Exception e){ } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
return null; return null;
} }
} }
/**
* @param userId 用户id
* @param type 1新增 2修改
* @param orderId 订单id [需要新增或者修改的订单id]
*/
public Boolean resetOrderListVo(String userId, Integer type, String orderId) {
List<KylinOrderListVo> vo = new ArrayList<>();
List<KylinOrderListVo> redisVo = dataUtils.getOrderList(userId);
KylinOrderTicketVo data ;
KylinOrderListVo voItem ;
switch (type) {
case 1:
data = dataUtils.getOrderTicketVo(orderId);
voItem = new KylinOrderListVo();
BeanUtils.copyProperties(data, voItem);
for (int i = 0; i < redisVo.size(); i++) {
if (i == 40) {
break;
}
if (i == 0) {
vo.add(voItem);
} else {
vo.add(redisVo.get(i - 1));
}
}
dataUtils.setOrderTicketVo(userId, vo);
return true;
case 2:
data = dataUtils.getOrderTicketVo(orderId);
voItem = new KylinOrderListVo();
BeanUtils.copyProperties(data, voItem);
for (int i = 0; i < redisVo.size(); i++) {
if (i == 40) {
break;
}
if (redisVo.get(i).getOrderTicketsId().equals(orderId)) {
vo.add(voItem);
} else {
vo.add(redisVo.get(i));
}
}
dataUtils.setOrderTicketVo(userId, vo);
return true;
default:
return false;
}
}
} }
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