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

Commit 119206a4 authored by 胡佳晨's avatar 胡佳晨

Merge branch 'dev_change_times' into pre

parents 55056b5d 53b9866d
package com.liquidnet.client.admin.zhengzai.kylin.service.impl; package com.liquidnet.client.admin.zhengzai.kylin.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
...@@ -8,15 +9,19 @@ import com.liquidnet.client.admin.zhengzai.kylin.utils.DataUtils; ...@@ -8,15 +9,19 @@ import com.liquidnet.client.admin.zhengzai.kylin.utils.DataUtils;
import com.liquidnet.client.admin.zhengzai.kylin.utils.PerformanceVoUtils; import com.liquidnet.client.admin.zhengzai.kylin.utils.PerformanceVoUtils;
import com.liquidnet.commons.lang.util.BeanUtil; import com.liquidnet.commons.lang.util.BeanUtil;
import com.liquidnet.commons.lang.util.DateUtil; import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.kylin.constant.KylinRedisConst;
import com.liquidnet.service.kylin.dao.*; import com.liquidnet.service.kylin.dao.*;
import com.liquidnet.service.kylin.dto.param.*; import com.liquidnet.service.kylin.dto.param.*;
import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceAgentVo; import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceAgentVo;
import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceDamaiVo; import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceDamaiVo;
import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceMemberHistoryVo; import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceMemberHistoryVo;
import com.liquidnet.service.kylin.dto.vo.admin.PerformanceRefundConfigVo; import com.liquidnet.service.kylin.dto.vo.admin.PerformanceRefundConfigVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderTicketVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo; import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketPartnerVo; import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketPartnerVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketTimesPartnerVo; import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketTimesPartnerVo;
import com.liquidnet.service.kylin.dto.vo.partner.TicketTimesTicketCreatePartnerVo;
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 com.liquidnet.service.kylin.service.admin.IKylinPerformancesAdminService; import com.liquidnet.service.kylin.service.admin.IKylinPerformancesAdminService;
...@@ -83,13 +88,7 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma ...@@ -83,13 +88,7 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
private KylinTicketStatusMapper ticketStatusMapper; private KylinTicketStatusMapper ticketStatusMapper;
@Autowired @Autowired
private KylinTicketRelationsMapper ticketRelationsMapper; private KylinOrderTicketsMapper kylinOrderTicketsMapper;
@Autowired
private KylinTicketTimesMapper ticketTimesMapper;
@Autowired
private KylinTicketTimeRelationMapper ticketTimeRelationMapper;
@Override @Override
public KylinPerformanceMisVo performanceDetails(String performancesId) { public KylinPerformanceMisVo performanceDetails(String performancesId) {
...@@ -114,14 +113,13 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma ...@@ -114,14 +113,13 @@ 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));
mongoTemplate.getCollection(PerformancePartnerVo.class.getSimpleName()).findOneAndUpdate( mongoTemplate.getCollection(PerformancePartnerVo.class.getSimpleName()).updateOne(
Query.query(Criteria.where("performancesId").is(performancesId)).getQueryObject(), Query.query(Criteria.where("performancesId").is(performancesId)).getQueryObject(),
objectPerformanceVo, objectPerformanceVo
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()); dataUtils.setPerformanceIsTrueName(performancesId, sqlStatus.getIsTrueName());
if (sqlStatus.getStatus() == 1) { if (sqlStatus.getStatus() == 1) {
log.info(" PERFORMANCE 演出审核 第一次"); log.info(" PERFORMANCE 演出审核 第一次");
//修改 //修改
...@@ -159,10 +157,12 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma ...@@ -159,10 +157,12 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
HashMap<String, Object> mapSql = new HashMap<>(); HashMap<String, Object> mapSql = new HashMap<>();
mapSql.put("status", 9); mapSql.put("status", 9);
mapSql.put("updatedAt", updatedAt.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); mapSql.put("updatedAt", updatedAt.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
performanceVoUtils.updatePerformanceMySql(performancesId, mapSql, performanceVoUtils.getPerformanceMisVo(performancesId), updatedAt, auditStatus); KylinPerformanceMisVo vo = performanceVoUtils.getPerformanceMisVo(performancesId);
performanceVoUtils.updatePerformanceMySql(performancesId, mapSql, vo, updatedAt, auditStatus);
if (sqlStatus.getStatus() >= 6 && sqlStatus.getStatus() != 7) {//若 演出上 则 线判断状态 if (sqlStatus.getStatus() >= 6 && sqlStatus.getStatus() != 7) {//若 演出上 则 线判断状态
performanceVoUtils.performanceVoStatus(performancesId); performanceVoUtils.performanceVoStatus(performancesId);
} }
delOrderTicketsRedis(vo);
} }
dataUtils.delPerformanceRedis(performancesId); dataUtils.delPerformanceRedis(performancesId);
...@@ -575,8 +575,8 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma ...@@ -575,8 +575,8 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
vo.setPerformancesId(kylinPerformances.getPerformancesId()); vo.setPerformancesId(kylinPerformances.getPerformancesId());
vo.setTitle(kylinPerformances.getTitle()); vo.setTitle(kylinPerformances.getTitle());
vo.setIsCanRefund(kylinPerformanceStatus.getIsCanRefund()); vo.setIsCanRefund(kylinPerformanceStatus.getIsCanRefund());
vo.setRefundCloseTime(kylinPerformanceStatus.getRefundCloseTime()==null?"":DateUtil.Formatter.yyyyMMddHHmmss.format(kylinPerformanceStatus.getRefundCloseTime())); vo.setRefundCloseTime(kylinPerformanceStatus.getRefundCloseTime() == null ? "" : DateUtil.Formatter.yyyyMMddHHmmss.format(kylinPerformanceStatus.getRefundCloseTime()));
vo.setRefundOpenTime(kylinPerformanceStatus.getRefundOpenTime()==null?"":DateUtil.Formatter.yyyyMMddHHmmss.format(kylinPerformanceStatus.getRefundOpenTime())); vo.setRefundOpenTime(kylinPerformanceStatus.getRefundOpenTime() == null ? "" : DateUtil.Formatter.yyyyMMddHHmmss.format(kylinPerformanceStatus.getRefundOpenTime()));
return vo; return vo;
} }
...@@ -648,4 +648,33 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma ...@@ -648,4 +648,33 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
public List<PerformanceSponsorDao> getPerformanceSponsorList(String sponsorType) { public List<PerformanceSponsorDao> getPerformanceSponsorList(String sponsorType) {
return performancesMapper.getPerformanceSponsorList(sponsorType); return performancesMapper.getPerformanceSponsorList(sponsorType);
} }
//删除演出下所有订单缓存(订单详情,订单列表)
public void delOrderTicketsRedis(KylinPerformanceMisVo vo) {
//找到所有ticketId
List<TicketTimesTicketCreatePartnerVo> timesVoList = vo.getTicketTimes();
for (TicketTimesTicketCreatePartnerVo timesVo : timesVoList) {
List<String> orderTicketRedisIdList = new ArrayList<>();
List<String> userRedisIdList = new ArrayList<>();
List<String> orderTicketIdList = new ArrayList<>();
List<OrderIdsDao> orderIdsDaoList = kylinOrderTicketsMapper.getOrderUserIdByTimesId(timesVo.getTicketTimesId());
for (OrderIdsDao item : orderIdsDaoList) {
orderTicketRedisIdList.add(KylinRedisConst.ORDER + item.getOrderTicketsId());
userRedisIdList.add(KylinRedisConst.ORDER_LIST + item.getUserId());
orderTicketIdList.add(item.getOrderTicketsId());
}
HashMap<String, Object> mapMongo = new HashMap<>();
mapMongo.put("useStart", timesVo.getUseStart());
long time1 = System.currentTimeMillis();
mongoTemplate.getCollection(KylinOrderTicketVo.class.getSimpleName()).updateMany(
Query.query(Criteria.where("orderTicketsId").in(orderTicketIdList)).getQueryObject(),
new BasicDBObject("$set", mongoConverter.convertToMongoType(mapMongo))
);
log.debug("修改场次相关 mongo time -> " + (System.currentTimeMillis() - time1) + " ms ");
time1 = System.currentTimeMillis();
dataUtils.delOrderIdUserIdRedis(orderTicketRedisIdList, userRedisIdList);
log.debug("修改场次相关 redis time -> " + (System.currentTimeMillis() - time1) + " ms ");
}
}
} }
...@@ -313,12 +313,18 @@ public class DataUtils { ...@@ -313,12 +313,18 @@ public class DataUtils {
redisUtil.del(KylinRedisConst.ORDER_REFUND.concat(id)); redisUtil.del(KylinRedisConst.ORDER_REFUND.concat(id));
} }
} }
public void delOrderRefundVoByOrderId(List<String> orderIds){ public void delOrderRefundVoByOrderId(List<String> orderIds){
for (String id : orderIds) { for (String id : orderIds) {
redisUtil.del(KylinRedisConst.ORDER_REFUND_BY_ORDER_ID.concat(id)); redisUtil.del(KylinRedisConst.ORDER_REFUND_BY_ORDER_ID.concat(id));
} }
} }
public void delOrderIdUserIdRedis(List<String> orderTicketIdList,List<String> userIdList){
redisUtil.delList(orderTicketIdList);
redisUtil.delList(userIdList);
}
/** /**
* Object转BigDecimal类型 * Object转BigDecimal类型
* *
......
package com.liquidnet.client.admin.zhengzai.kylin.utils;
import com.liquidnet.commons.lang.util.CollectionUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.connection.stream.StreamRecords;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Component;
import java.util.HashMap;
@Component
public class QueueUtils {
@Autowired
StringRedisTemplate stringRedisTemplate;
/**
* 发送消息 - REDIS
*
* @param streamKey Redis消费Key
* @param jsonMsg Json字符串
*/
public void sendMsgByRedis(String streamKey, String jsonMsg) {
HashMap<String, String> map = CollectionUtil.mapStringString();
map.put("message", jsonMsg);
stringRedisTemplate.opsForStream().add(StreamRecords.mapBacked(map).withStreamKey(streamKey));
}
}
package com.liquidnet.service.kylin.dao;
import lombok.Data;
/**
* @author AnJiabin <anjiabin@zhengzai.tv>
* @version V1.0
* @Description: TODO
* @class: PerformanceOrderListDao
* @Package com.liquidnet.service.kylin.dao
* @Copyright: LightNet @ Copyright (c) 2021
* @date 2021/6/4 13:31
*/
@Data
public class OrderIdsDao {
String orderTicketsId;
String userId;
}
package com.liquidnet.service.kylin.mapper; package com.liquidnet.service.kylin.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.liquidnet.service.kylin.dao.OrderPushDamaiDto; import com.liquidnet.service.kylin.dao.*;
import com.liquidnet.service.kylin.dao.OrderScriptDto;
import com.liquidnet.service.kylin.dao.OrderTicketsListDao;
import com.liquidnet.service.kylin.dao.PerformanceExpressPerformanceOrderListAdminDao;
import com.liquidnet.service.kylin.entity.KylinOrderTickets; import com.liquidnet.service.kylin.entity.KylinOrderTickets;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -38,4 +35,6 @@ public interface KylinOrderTicketsMapper extends BaseMapper<KylinOrderTickets> { ...@@ -38,4 +35,6 @@ public interface KylinOrderTicketsMapper extends BaseMapper<KylinOrderTickets> {
List<KylinOrderTickets> getCanPlaceOrderList(@Param("performanceId") String performanceId, @Param("mid") int mid, @Param("limitNum") int limitNum); List<KylinOrderTickets> getCanPlaceOrderList(@Param("performanceId") String performanceId, @Param("mid") int mid, @Param("limitNum") int limitNum);
List<OrderIdsDao> getOrderUserIdByTimesId(@Param("timeId") String timeId);
} }
...@@ -112,7 +112,7 @@ ...@@ -112,7 +112,7 @@
kot.user_name, kot.user_name,
kot.user_mobile, kot.user_mobile,
kot.order_type, kot.order_type,
date_format(kot.created_at, '%Y-%m-%d %H:%i:%s') created_at date_format(kot.created_at, '%Y-%m-%d %H:%i:%s') created_at
FROM kylin_order_tickets kot FROM kylin_order_tickets kot
inner join kylin_order_ticket_status kots on kot.order_tickets_id = kots.order_id inner join kylin_order_ticket_status kots on kot.order_tickets_id = kots.order_id
inner join kylin_order_ticket_relations kotr on kot.order_tickets_id = kotr.order_id inner join kylin_order_ticket_relations kotr on kot.order_tickets_id = kotr.order_id
...@@ -341,4 +341,9 @@ ...@@ -341,4 +341,9 @@
ORDER BY mid ASC ORDER BY mid ASC
LIMIT ${limitNum} LIMIT ${limitNum}
</select> </select>
<select id="getOrderUserIdByTimesId" resultType="com.liquidnet.service.kylin.dao.OrderIdsDao">
select order_tickets_id,user_id from kylin_order_tickets as kot left join kylin_order_ticket_relations as kotr on kotr.order_id = kot.order_tickets_id
where time_id =#{timeId}
</select>
</mapper> </mapper>
...@@ -86,7 +86,7 @@ public class KylinCheckUserPartnerServiceImpl extends ServiceImpl<KylinCheckUser ...@@ -86,7 +86,7 @@ public class KylinCheckUserPartnerServiceImpl extends ServiceImpl<KylinCheckUser
public ResponseDto<String> create(String merchantId, String name, String pwd, String mobile) { public ResponseDto<String> create(String merchantId, String name, String pwd, String mobile) {
try { try {
int count = checkUserMapper.selectCount(Wrappers.lambdaQuery(KylinCheckUser.class).eq(KylinCheckUser::getMobile,mobile)); int count = checkUserMapper.selectCount(Wrappers.lambdaQuery(KylinCheckUser.class).eq(KylinCheckUser::getMobile,mobile).eq(KylinCheckUser::getStatus,1));
if(count>0){ if(count>0){
return ResponseDto.failure("手机号已存在"); return ResponseDto.failure("手机号已存在");
} }
...@@ -114,7 +114,7 @@ public class KylinCheckUserPartnerServiceImpl extends ServiceImpl<KylinCheckUser ...@@ -114,7 +114,7 @@ public class KylinCheckUserPartnerServiceImpl extends ServiceImpl<KylinCheckUser
@Override @Override
public ResponseDto<String> change(String merchantId, String checkUserId, String name, String pwd, String mobile) { public ResponseDto<String> change(String merchantId, String checkUserId, String name, String pwd, String mobile) {
try { try {
KylinCheckUser kylinCheckUser = checkUserMapper.selectOne(Wrappers.lambdaQuery(KylinCheckUser.class).eq(KylinCheckUser::getMobile,mobile)); KylinCheckUser kylinCheckUser = checkUserMapper.selectOne(Wrappers.lambdaQuery(KylinCheckUser.class).eq(KylinCheckUser::getMobile,mobile).eq(KylinCheckUser::getStatus,1));
if(kylinCheckUser!=null && !kylinCheckUser.getCheckUserId().equals(checkUserId)){ if(kylinCheckUser!=null && !kylinCheckUser.getCheckUserId().equals(checkUserId)){
return ResponseDto.failure("手机号已存在"); return ResponseDto.failure("手机号已存在");
} }
......
...@@ -10,6 +10,7 @@ import com.liquidnet.service.base.ErrorMapping; ...@@ -10,6 +10,7 @@ import com.liquidnet.service.base.ErrorMapping;
import com.liquidnet.service.base.ResponseDto; import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.base.UserPathDto; import com.liquidnet.service.base.UserPathDto;
import com.liquidnet.service.kylin.dto.param.CreateTicketTimesParam; import com.liquidnet.service.kylin.dto.param.CreateTicketTimesParam;
import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketPartnerVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketTimesPartnerVo; import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketTimesPartnerVo;
import com.liquidnet.service.kylin.entity.KylinPerformanceStatus; import com.liquidnet.service.kylin.entity.KylinPerformanceStatus;
import com.liquidnet.service.kylin.entity.KylinTicketTimeRelation; import com.liquidnet.service.kylin.entity.KylinTicketTimeRelation;
...@@ -234,6 +235,16 @@ public class KylinTicketTimesPartnerServiceImpl extends ServiceImpl<KylinTicketT ...@@ -234,6 +235,16 @@ public class KylinTicketTimesPartnerServiceImpl extends ServiceImpl<KylinTicketT
object, object,
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER) new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
); );
HashMap<String,Object> ticketMap = new HashMap<>();
ticketMap.put("useEnd",kylinTicketTimesPartnerVo.getUseEnd());
ticketMap.put("useStart",kylinTicketTimesPartnerVo.getUseStart());
BasicDBObject ticketObject = ObjectUtil.cloneBasicDBObject().append("$set", ticketMap);
mongoTemplate.getCollection(KylinTicketPartnerVo.class.getSimpleName()).updateOne(
Query.query(Criteria.where("timesId").is(createTicketTimesParam.getTicketTimesId())).getQueryObject(),
ticketObject
);
log.info(UserPathDto.setPartnerData("0","changeTimes", createTicketTimesParam,JsonUtils.fromJson(doc.toJson(), KylinTicketTimesPartnerVo.class))); log.info(UserPathDto.setPartnerData("0","changeTimes", createTicketTimesParam,JsonUtils.fromJson(doc.toJson(), KylinTicketTimesPartnerVo.class)));
return ResponseDto.success(JsonUtils.fromJson(doc.toJson(), KylinTicketTimesPartnerVo.class)); return ResponseDto.success(JsonUtils.fromJson(doc.toJson(), KylinTicketTimesPartnerVo.class));
} catch (Exception e) { } catch (Exception e) {
......
...@@ -423,6 +423,17 @@ public class PerformanceVoTask { ...@@ -423,6 +423,17 @@ public class PerformanceVoTask {
for (int i = 0; i < misVo.getTicketTimes().size(); i++) { for (int i = 0; i < misVo.getTicketTimes().size(); i++) {
TicketTimesTicketCreatePartnerVo times = misVo.getTicketTimes().get(i); TicketTimesTicketCreatePartnerVo times = misVo.getTicketTimes().get(i);
KylinTicketTimesVo timesVo = mongoVo.getTicketTimeList().get(i); KylinTicketTimesVo timesVo = mongoVo.getTicketTimeList().get(i);
if(!times.getUseStart().equals(timesVo.getUseStart())){
log.debug("NEED CHANGE TIMES USE_START");
return true;
}
if(!times.getUseEnd().equals(timesVo.getUseEnd())){
log.debug("NEED CHANGE TIMES USE_END");
return true;
}
boolean exists2 = mongoTemplate.exists(Query.query(Criteria.where("status").is(-2).and("timesId").is(times.getTicketTimesId())), KylinTicketPartnerVo.class, KylinTicketPartnerVo.class.getSimpleName()); boolean exists2 = mongoTemplate.exists(Query.query(Criteria.where("status").is(-2).and("timesId").is(times.getTicketTimesId())), KylinTicketPartnerVo.class, KylinTicketPartnerVo.class.getSimpleName());
if (exists2) { if (exists2) {
log.debug("NEED CHANGE NEW TICKET"); log.debug("NEED CHANGE NEW TICKET");
......
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