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

Commit 1f5e2acc authored by Administrator's avatar Administrator 🎨

Merge branch 'pre' into 'master'

Pre

See merge request !67
parents 853cfdb3 0f9b9267
package com.liquidnet.service.kylin.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.dao.PerformanceOrderStatisticalDao;
import com.liquidnet.service.kylin.entity.KylinPerformances;
......@@ -15,4 +16,12 @@ import java.util.List;
* @since 2021-05-05
*/
public interface IKylinPerformancesService {
/**
* 根据 券适用范围查询演出id
* @param useScope
* @param busiId
* @return
*/
ResponseDto<String> getPerformanceIdByInfo(Integer useScope,String busiId);
}
......@@ -6,10 +6,13 @@ import com.liquidnet.service.kylin.entity.KylinTickets;
public interface DamaiService {
//同步演出
Boolean sycPerformance(String performanceId);
//同步场次
Boolean sycTimes(long performanceId, KylinTicketTimes timesData);
Boolean sycTimes(long performanceId, KylinTicketTimes timesData, Long venueId);
//同步票
Boolean sycTicket(long timeId, KylinTickets ticketsData);
//订单
Boolean sycOrder(long timeId, String ticketsId,long ticketsmId);
Boolean sycOrder(long timeId, String ticketsId, long ticketsmId);
}
......@@ -106,6 +106,28 @@
<!-- <i class="fa fa-download"></i> 导出-->
<!-- </a>-->
<!-- </div>-->
<div class="col-sm-12 search-collapse">
<form id="formId2">
<div class="select-list">
<ul>
<li>
<label>短订单号:</label>
<input type="text" name="findCode"/>
</li>
<li>
<a class="btn btn-primary btn-rounded btn-sm" onclick="findCode()"><i
class="fa fa-search"></i>&nbsp;查询</a>
</li>
<li>
<label>长订单号:</label>
<input type="text" name="allCode" readonly/>
</li>
</ul>
</div>
</form>
</div>
<div class="col-sm-12 select-table table-bordered">
<table id="bootstrap-table"></table>
</div>
......@@ -122,6 +144,16 @@
var getTicketTypeDic = [[${@dict.getType('zhengzai_get_ticket_type')}]];
var payTypeDic = [[${@dict.getType('zhengzai_pay_type')}]];
var prefix2 = ctx + "kylin/refund";
function findCode() {
var shortCode = document.getElementsByName("findCode")[0].value;
var allCode = document.getElementsByName("allCode")[0];
$.operate.get(prefix2 + "/search/code?code=" + shortCode + "&type=2", function (res) {
allCode.value = res.msg;
});
}
$(function() {
var options = {
url: prefix + "/list",
......
......@@ -4,25 +4,21 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.liquidnet.client.admin.common.utils.DateUtils;
import com.liquidnet.client.admin.zhengzai.kylin.utils.TaobaoTicketUtils;
import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.service.kylin.constant.KylinRedisConst;
import com.liquidnet.service.kylin.dao.OrderPushDamaiDto;
import com.liquidnet.service.kylin.entity.*;
import com.liquidnet.service.kylin.mapper.*;
import com.liquidnet.service.kylin.service.other.DamaiService;
import com.taobao.api.TaobaoClient;
import com.taobao.api.internal.util.StringUtils;
import com.taobao.api.request.AlibabaDamaiMevOpenBatchpushticketRequest;
import com.taobao.api.request.*;
import com.taobao.api.request.AlibabaDamaiMevOpenBatchpushticketRequest.ThirdTicketPushOpenParam;
import com.taobao.api.request.AlibabaDamaiMevOpenPushitemRequest;
import com.taobao.api.request.AlibabaDamaiMevOpenPushitemRequest.PushTicketItemPushOpenParam;
import com.taobao.api.request.AlibabaDamaiMevOpenPushperformRequest;
import com.taobao.api.request.AlibabaDamaiMevOpenPushperformRequest.ThirdPerformPushOpenParam;
import com.taobao.api.request.AlibabaDamaiMevOpenPushprojectRequest;
import com.taobao.api.request.AlibabaDamaiMevOpenPushprojectRequest.ThirdProjectPushOpenParam;
import com.taobao.api.response.AlibabaDamaiMevOpenBatchpushticketResponse;
import com.taobao.api.response.AlibabaDamaiMevOpenPushitemResponse;
import com.taobao.api.response.AlibabaDamaiMevOpenPushperformResponse;
import com.taobao.api.response.AlibabaDamaiMevOpenPushprojectResponse;
import com.taobao.api.response.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -51,6 +47,8 @@ public class KylinDamaiServiceImpl extends ServiceImpl<KylinRoadShowsMapper, Kyl
@Autowired
private KylinPerformancesMapper performancesMapper;
@Autowired
private KylinPerformanceRelationsMapper performanceRelationsMapper;
@Autowired
private KylinTicketTimesMapper ticketTimesMapper;
@Autowired
private KylinTicketTimeRelationMapper ticketTimeRelationMapper;
......@@ -60,6 +58,8 @@ public class KylinDamaiServiceImpl extends ServiceImpl<KylinRoadShowsMapper, Kyl
private KylinTicketRelationsMapper ticketRelationsMapper;
@Autowired
private KylinTicketStatusMapper ticketStatusMapper;
@Autowired
private RedisUtil redisUtil;
@Override
public Boolean sycPerformance(String performanceId) {
......@@ -69,24 +69,35 @@ public class KylinDamaiServiceImpl extends ServiceImpl<KylinRoadShowsMapper, Kyl
ThirdProjectPushOpenParam obj1 = new ThirdProjectPushOpenParam();
KylinPerformances performanceData = performancesMapper.selectOne(new UpdateWrapper<KylinPerformances>().eq("performances_id", performanceId));
KylinPerformanceRelations performanceRelationData = performanceRelationsMapper.selectOne(new UpdateWrapper<KylinPerformanceRelations>().eq("performance_id", performanceId));
obj1.setPicUrl(performanceData.getImgPoster());
long performanceKey = IDGenerator.getDamaiCode(performanceData.getPerformancesId());
obj1.setProjectId(performanceKey);
obj1.setProjectName(performanceData.getTitle());
obj1.setCityId(performanceData.getCityId().longValue());
if (performanceData.getCityId().equals(6977)) {
obj1.setCityId(110100L);
} else if (performanceData.getCityId().equals(3833)) {
obj1.setCityId(520100L);
} else {//520100
obj1.setCityId(Long.parseLong(redisUtil.getDB15RedisHGet(KylinRedisConst.FIELDS + ":" + performanceRelationData.getFieldId(), "ad_code").toString()));
}
obj1.setSupplierSecret(taobaoTicketUtils.getSupplierSecret());
obj1.setSystemId(taobaoTicketUtils.getSystemId());
Long venueId = sycField(performanceId, performanceRelationData.getFieldId());
if (venueId != 0) {
obj1.setVenueId(venueId);
}
req.setPushProjectParam(obj1);
log.info("[同步演出] 演出名称 = " + performanceData.getTitle() + " 大麦演出id =" + performanceKey);
AlibabaDamaiMevOpenPushprojectResponse rsp = client.execute(req);
log.info("[BODY = {}]", rsp.getBody());
if (rsp.getResult().getSuccess()) {
List<KylinTicketTimeRelation> timeRelation = ticketTimeRelationMapper.selectList(new UpdateWrapper<KylinTicketTimeRelation>().eq("performance_id", performanceId));
for (int i = 0; i < timeRelation.size(); i++) {
KylinTicketTimes timeData = ticketTimesMapper.selectOne(new UpdateWrapper<KylinTicketTimes>().eq("ticket_times_id", timeRelation.get(i).getTimesId()));
boolean result = sycTimes(performanceKey, timeData);
boolean result = sycTimes(performanceKey, timeData, venueId);
if (!result) {
return false;
}
......@@ -102,19 +113,58 @@ public class KylinDamaiServiceImpl extends ServiceImpl<KylinRoadShowsMapper, Kyl
}
}
public Long sycField(String performanceId, String fieldId) {
try {
TaobaoClient client = taobaoTicketUtils.initTaobaoClient();
AlibabaDamaiMevOpenPushvenueRequest req = new AlibabaDamaiMevOpenPushvenueRequest();
AlibabaDamaiMevOpenPushvenueRequest.ThirdVenuePushOpenParam obj1 = new AlibabaDamaiMevOpenPushvenueRequest.ThirdVenuePushOpenParam();
// obj1.setPushTime(StringUtils.parseDateTime("2017-01-01 00:00:00"));
obj1.setSupplierSecret(taobaoTicketUtils.getSupplierSecret());
obj1.setSystemId(taobaoTicketUtils.getSystemId());
// if (performanceId.equals("299481167884001288936975")) {
// obj1.setVenueId(2774011L);
// obj1.setVenueName("北京世园公园");
//// obj1.setVenueAddress("foo");
// } else if (performanceId.equals("5936257")) {
// obj1.setVenueId(3238010L);
// obj1.setVenueName("贵阳奥林匹克体育中心");
//// obj1.setVenueAddress("foo");
// } else {
// return 0L;
// }
obj1.setVenueId(Long.parseLong(redisUtil.getDB15RedisHGet(KylinRedisConst.FIELDS + ":" + fieldId, "id").toString()));
obj1.setVenueName(redisUtil.getDB15RedisHGet(KylinRedisConst.FIELDS + ":" + fieldId, "name").toString());
obj1.setVenueAddress(redisUtil.getDB15RedisHGet(KylinRedisConst.FIELDS + ":" + fieldId, "address").toString());
req.setPushVenueParam(obj1);
AlibabaDamaiMevOpenPushvenueResponse rsp = client.execute(req);
log.info("[同步场地] 场地名称 = " + obj1.getVenueName() + " 大麦场地id =" + obj1.getVenueId());
log.info("[BODY = {}]", rsp.getBody());
if (!rsp.getResult().getSuccess()) {
return 0L;
}
return obj1.getVenueId();
} catch (Exception e) {
e.printStackTrace();
return 0L;
}
}
@Override
public Boolean sycTimes(long performancesmId, KylinTicketTimes timesData) {
public Boolean sycTimes(long performancesmId, KylinTicketTimes timesData, Long venueId) {
try {
TaobaoClient client = taobaoTicketUtils.initTaobaoClient();
AlibabaDamaiMevOpenPushperformRequest req = new AlibabaDamaiMevOpenPushperformRequest();
ThirdPerformPushOpenParam obj1 = new ThirdPerformPushOpenParam();
obj1.setEndTime(StringUtils.parseDateTime(timesData.getUseEnd().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))));
long ticketTimesKey = IDGenerator.getDamaiCode(timesData.getTicketTimesId());
obj1.setPerformId(ticketTimesKey);
obj1.setPerformName(timesData.getTitle());
obj1.setProjectId(performancesmId);
obj1.setVenueId(venueId);
obj1.setStartTime(StringUtils.parseDateTime(timesData.getUseStart().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))));
obj1.setEndTime(StringUtils.parseDateTime(timesData.getUseEnd().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))));
obj1.setSupplierSecret(taobaoTicketUtils.getSupplierSecret());
obj1.setSystemId(taobaoTicketUtils.getSystemId());
req.setPushPerformParam(obj1);
......@@ -150,13 +200,13 @@ public class KylinDamaiServiceImpl extends ServiceImpl<KylinRoadShowsMapper, Kyl
long ticketIdKey = IDGenerator.getDamaiCode(ticketsData.getTicketsId());
obj1.setItemId(ticketIdKey);
obj1.setItemName(ticketsData.getTitle());
obj1.setItemPrice(ticketsData.getPrice().longValue()*100);
obj1.setItemPrice(ticketsData.getPrice().longValue() * 100);
obj1.setPerformId(timemId);
obj1.setSupplierSecret(taobaoTicketUtils.getSupplierSecret());
obj1.setSystemId(taobaoTicketUtils.getSystemId());
// obj1.setRemark("0");
req.setPushItemParam(obj1);
log.info("[同步票种] 票种名称 = " + ticketsData.getTitle() + " 大麦票种id =" + ticketIdKey +" 票种价格 = "+ticketsData.getPrice());
log.info("[同步票种] 票种名称 = " + ticketsData.getTitle() + " 大麦票种id =" + ticketIdKey + " 票种价格 = " + ticketsData.getPrice());
AlibabaDamaiMevOpenPushitemResponse rsp = client.execute(req);
if (rsp.getResult().getSuccess()) {
return sycOrder(timemId, ticketsData.getTicketsId(), ticketIdKey);
......@@ -195,7 +245,7 @@ public class KylinDamaiServiceImpl extends ServiceImpl<KylinRoadShowsMapper, Kyl
}
long orderIdKey = IDGenerator.getDamaiCode(item.getOrderTicketsId());
if (item.getIsPayment() == 3) {
if (item.getIsPayment() == 3 || item.getIsPayment() == 2) {
taobaoTicketUtils.withdrawDamaiOrder(timemId, orderTicketEntitiesKey);
} else if (item.getTransferStatus() == 2 || item.getTransferStatus() == 6) {
taobaoTicketUtils.withdrawDamaiOrder(timemId, orderTicketEntitiesKey);
......
......@@ -505,7 +505,7 @@
group by kotr.performance_id,kot.user_id
) t
) AS ut ON ut.performance_id = kp.performances_id
order by kt.type desc,kt.use_start asc
order by kt.type desc,kt.title,kt.use_start asc
</select>
<select id="getPerformanceSponsorList" resultMap="performanceSponsorDaoResult">
select distinct kp.sponsor_id, kp.sponsor, kp.sponsor_type
......
......@@ -40,6 +40,7 @@ public class CouponBaseUtil {
vo.setUsedAt(DateUtil.format(dtoItem.getUsedAt(), DateUtil.Formatter.yyyy_MM_dd));
vo.setUsedFor(dtoItem.getUsedFor());
//适用范围 规则
if (dtoItem.getUseRules() != null) {
for (CandyCouponRuleDto ruleItem : dtoItem.getUseRules()) {
CandyCouponRulesVo voRules = CandyCouponRulesVo.getNew();
voRules.setUseScope(ruleItem.getUseScope());
......@@ -47,6 +48,7 @@ public class CouponBaseUtil {
voRules.setBusiName(ruleItem.getBusiName());
rulesVoList.add(voRules);
}
}
//券类别
if (dtoItem.getBusiType().equals(3)) {
vo.setCouType(101);
......
......@@ -8,6 +8,7 @@ import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import com.liquidnet.service.kylin.dto.vo.returns.PayDetailVo;
import com.liquidnet.service.kylin.service.IKylinLackRegistersService;
import com.liquidnet.service.kylin.service.IKylinPerformancesService;
import com.liquidnet.service.kylin.service.impl.KylinPerformancesServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
......@@ -40,6 +41,8 @@ public class KylinPerformancesController {
private KylinPerformancesServiceImpl kylinPerformancesService;
@Autowired
private IKylinLackRegistersService kylinLackRegistersService;
@Autowired
private IKylinPerformancesService iKylinPerformancesService;
@GetMapping("localList")
@ApiOperation("本地演出列表")
......@@ -233,7 +236,17 @@ public class KylinPerformancesController {
@ApiImplicitParam(type = "query", dataType = "String", name = "performancesId", value = "演出id", required = true),
@ApiImplicitParam(type = "query", dataType = "String", name = "ticketsId", value = "票种id", required = true)
})
public ResponseDto<String> addLackRegister(@RequestParam("performancesId") String performancesId, @RequestParam("ticketsId") String ticketsId){
return kylinLackRegistersService.addLackRegister(performancesId,ticketsId);
public ResponseDto<String> addLackRegister(@RequestParam("performancesId") String performancesId, @RequestParam("ticketsId") String ticketsId) {
return kylinLackRegistersService.addLackRegister(performancesId, ticketsId);
}
@GetMapping("couponPerformanceId")
@ApiOperation("根据券信息获取演出id")
@ApiImplicitParams({
@ApiImplicitParam(type = "query", dataType = "Integer", name = "useScope", value = "适用范围[91-场次|92-票]", required = true),
@ApiImplicitParam(type = "query", dataType = "String", name = "busiId", value = "使用Id", required = true)
})
public ResponseDto<String> addLackRegister(@RequestParam("useScope") Integer useScope, @RequestParam("busiId") String busiId) {
return iKylinPerformancesService.getPerformanceIdByInfo(useScope, busiId);
}
}
......@@ -5,11 +5,17 @@ import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.DistanceUtil;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.base.UserPathDto;
import com.liquidnet.service.kylin.constant.KylinPerformanceStatusEnum;
import com.liquidnet.service.kylin.dto.param.PerformanceMemberAuditParam;
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.KylinOrderTicketVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
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.returns.KylinOrderListVo;
import com.liquidnet.service.kylin.dto.vo.returns.PayDetailVo;
import com.liquidnet.service.kylin.service.IKylinPerformancesService;
import com.liquidnet.service.kylin.utils.DataUtils;
......@@ -421,6 +427,7 @@ public class KylinPerformancesServiceImpl implements IKylinPerformancesService {
}
return newList;
}
public List<KylinPerformanceVo> checkAppStatusRoad(List<KylinPerformanceVo> list) {
List<KylinPerformanceVo> newList = ObjectUtil.getKylinPerformanceVoArrayList();
if (!CollectionUtils.isEmpty(list)) {
......@@ -595,8 +602,10 @@ public class KylinPerformancesServiceImpl implements IKylinPerformancesService {
}
return isMemberStatus;
}
/**
* 获取我的已购票演出列表
*
* @return
*/
public List<KylinPerformanceVo> myPerformancesList() {
......@@ -604,4 +613,33 @@ public class KylinPerformancesServiceImpl implements IKylinPerformancesService {
List<KylinPerformanceVo> performanceVoList = dataUtils.myPerformancesList(userId);
return performanceVoList;
}
@Override
public ResponseDto<String> getPerformanceIdByInfo(Integer useScope, String busiId) {
if (useScope.equals(91)) {//场次
List<KylinTicketTimesPartnerVo> voTimes = mongoTemplate.find(Query.query(Criteria.where("ticketTimesId").is(busiId)),
KylinTicketTimesPartnerVo.class, KylinTicketTimesPartnerVo.class.getSimpleName());
if(voTimes.size()<=0){
return ResponseDto.failure();
}else{
return ResponseDto.success(voTimes.get(0).getPerformancesId());
}
} else if (useScope.equals(92)) {//票
List<KylinTicketPartnerVo> voTickets = mongoTemplate.find(Query.query(Criteria.where("ticketsId").is(busiId)),
KylinTicketPartnerVo.class, KylinTicketPartnerVo.class.getSimpleName());
if(voTickets.size()<=0) {
return ResponseDto.failure();
}else{
List<KylinTicketTimesPartnerVo> voTimes = mongoTemplate.find(Query.query(Criteria.where("ticketTimesId").is(voTickets.get(0).getTimesId())),
KylinTicketTimesPartnerVo.class, KylinTicketTimesPartnerVo.class.getSimpleName());
if(voTimes.size()<=0){
return ResponseDto.failure();
}else{
return ResponseDto.success(voTimes.get(0).getPerformancesId());
}
}
} else {
return ResponseDto.failure();
}
}
}
......@@ -542,7 +542,7 @@ public class KylinPerformancesPartnerServiceImpl extends ServiceImpl<KylinPerfor
try {
KylinPerformanceStatus performanceStatusData = performanceStatusMapper.selectOne(Wrappers.lambdaQuery(KylinPerformanceStatus.class).eq(KylinPerformanceStatus::getPerformanceId, performancesId));
if (performanceStatusData.getStatus() >= 3 && performanceStatusData.getStatus() != 4 && performanceStatusData.getStatus() != 7 && performanceStatusData.getStatus() != 10) {//未提审||被拒绝
if (performanceStatusData.getStatus() >= 3 && performanceStatusData.getStatus() != 4 && performanceStatusData.getStatus() != 7) {//未提审||被拒绝 && performanceStatusData.getStatus() != 10
LocalDateTime updatedAt = LocalDateTime.now();
KylinPerformanceStatus performanceStatus = KylinPerformanceStatus.getNew();
performanceStatus.setStatus(7);
......
......@@ -27,6 +27,7 @@ import lombok.extern.slf4j.Slf4j;
import org.bson.Document;
import org.springframework.beans.BeanUtils;
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.convert.MongoConverter;
import org.springframework.data.mongodb.core.query.Criteria;
......@@ -259,7 +260,7 @@ public class KylinTicketTimesPartnerServiceImpl extends ServiceImpl<KylinTicketT
@Override
public List<KylinTicketTimesPartnerVo> getTimesMongoList(String performancesId) {
return mongoTemplate.find(Query.query(Criteria.where("performancesId").is(performancesId).and("status").ne(0)), KylinTicketTimesPartnerVo.class, KylinTicketTimesPartnerVo.class.getSimpleName());
return mongoTemplate.find(Query.query(Criteria.where("performancesId").is(performancesId).and("status").ne(0)).with(Sort.by(Sort.Direction.ASC, "createdAt")), KylinTicketTimesPartnerVo.class, KylinTicketTimesPartnerVo.class.getSimpleName());
}
@Override
......
......@@ -26,6 +26,7 @@ import lombok.extern.slf4j.Slf4j;
import org.bson.Document;
import org.springframework.beans.BeanUtils;
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.convert.MongoConverter;
import org.springframework.data.mongodb.core.query.Criteria;
......@@ -357,7 +358,10 @@ public class KylinTicketsPartnerServiceImpl extends ServiceImpl<KylinTicketsMapp
@Override
public List<KylinTicketPartnerVo> getTicketMongoList(String timesId) {
return mongoTemplate.find(Query.query(Criteria.where("timesId").is(timesId).and("status").ne(-1)), KylinTicketPartnerVo.class, KylinTicketPartnerVo.class.getSimpleName());
return mongoTemplate.find(Query.query(Criteria.where("timesId").is(timesId).and("status").ne(-1))
// .with(Sort.by(Sort.Direction.ASC, "status")).with(Sort.by(Sort.Direction.ASC, "price")),
.with(Sort.by(Sort.Direction.ASC, "createdAt")),
KylinTicketPartnerVo.class, KylinTicketPartnerVo.class.getSimpleName());
}
@Override
......
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