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

Commit 0a84edfb authored by 张国柄's avatar 张国柄

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

parents c891ac43 bc921b47
......@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.type.TypeReference;
import com.liquidnet.client.admin.zhengzai.kylin.utils.DataUtils;
import com.liquidnet.common.cache.redis.util.RedisDataSourceUtil;
import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.commons.lang.util.HttpUtil;
......@@ -35,10 +36,10 @@ import static com.liquidnet.commons.lang.util.DateUtil.DTF_YMD_HMS;
@Service
public class InnerService {
@Value("${liquidnet.service.platform.url}")
private String platform;
// @Value("${liquidnet.service.platform.url}")
private String platform = "http://127.0.0.1:9003";
@Autowired
RedisUtil redisUtil;
RedisDataSourceUtil redisDataSourceUtil;
@Autowired
DataUtils dataUtils;
......@@ -192,7 +193,7 @@ public class InnerService {
JsonUtils.fromJson(json, new TypeReference<ResponseDataVo<List<STFieldListVo>>>() {
});
STInsertFieldParam insertTicketParam = STInsertFieldParam.getNew();
if (response.getData().size() == 1) {
if (response.getData() != null && response.getData().size() == 1) {
STFieldListVo innerVo = response.getData().get(0);
setVenueCode(vo.getFieldId(), innerVo.getVenueCode());
return true;
......@@ -206,7 +207,7 @@ public class InnerService {
insertTicketParam.setManagementCompany(null);
insertTicketParam.setHasHall(0);
insertTicketParam.setHallName(null);
insertTicketParam.setHasSeat(null);
insertTicketParam.setHasSeat(0);
insertTicketParam.setSeatNum(null);
insertTicketParam.setSeatingCapacity(null);
MultiValueMap<String, String> header = CollectionUtil.linkedMultiValueMapStringString();
......@@ -224,12 +225,12 @@ public class InnerService {
//设置SessionCode
private void setSessionCode(String ticketTimeId, String sessionCode) {
redisUtil.set(KylinRedisConst.TIMES_SESSION_CODE.concat(ticketTimeId), sessionCode);
redisDataSourceUtil.getRedisKylinUtil().set(KylinRedisConst.TIMES_SESSION_CODE.concat(ticketTimeId), sessionCode);
}
//获取SessionCode
private String getSessionCode(String ticketTimeId) {
return (String) redisUtil.get(KylinRedisConst.TIMES_SESSION_CODE.concat(ticketTimeId));
return (String) redisDataSourceUtil.getRedisKylinUtil().get(KylinRedisConst.TIMES_SESSION_CODE.concat(ticketTimeId));
}
private String getPriceId(String ticketId) {
......@@ -237,7 +238,7 @@ public class InnerService {
}
private String getVenueCode(String fieldId) {
Object obj = redisUtil.get(KylinRedisConst.TIMES_VENUE_CODE.concat(fieldId));
Object obj = redisDataSourceUtil.getRedisKylinUtil().get(KylinRedisConst.TIMES_VENUE_CODE.concat(fieldId));
if (obj == null) {
return null;
} else {
......@@ -246,6 +247,6 @@ public class InnerService {
}
private void setVenueCode(String fieldId, String venueCode) {
redisUtil.set(KylinRedisConst.TIMES_VENUE_CODE.concat(fieldId), venueCode);
redisDataSourceUtil.getRedisKylinUtil().set(KylinRedisConst.TIMES_VENUE_CODE.concat(fieldId), venueCode);
}
}
......@@ -89,13 +89,15 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
public void test() {
// //同步演出
String performancesId = "324470932321198083852669";
KylinPerformances data = performancesMapper.selectOne(new QueryWrapper<KylinPerformances>().in("performances_id", performancesId));
KylinPerformanceRelations relationData = performanceRelationsMapper.selectOne(new QueryWrapper<KylinPerformanceRelations>().in("performance_id", performancesId));
merchantAuthorizationRecordsAdminService.authorizationInit(performancesId, "484418569471385607065926", "528301618682265605017366", "528268445384048648038465");
// KylinPerformances data = performancesMapper.selectOne(new QueryWrapper<KylinPerformances>().in("performances_id", performancesId));
// KylinPerformanceRelations relationData = performanceRelationsMapper.selectOne(new QueryWrapper<KylinPerformanceRelations>().in("performance_id", performancesId));
// merchantAuthorizationRecordsAdminService.authorizationInit(performancesId, "484418569471385607065926", "528301618682265605017366", "528268445384048648038465");
// innerService.reportP(dataUtils.getPerformanceVo(performancesId),null,data.getSponsorId());
// //同步订单
// String orderId = "324561214127595525805856";
// innerService.reportO(dataUtils.getOrderTicketVo(orderId),"摩登天空");
innerService.reportField(dataUtils.getFieldsVoByFieldId("7"));
}
@Override
......
......@@ -35,7 +35,7 @@ liquidnet:
dbs: 0,16
database: 15
host: 39.107.71.112
port: 6369
port: 6379
password: 3Xa%8p
dragon:
dbs: 0,16
......
......@@ -78,7 +78,10 @@ public class KylinOrderRefunds implements Serializable, Cloneable{
private Integer status;
/**
* 退款差异: 0申请退款返还库存 1自动退款无法取消退款不返还库存
* 0客服、票务人工申请,可以取消退款,回调再处理库存和券
* 2用户申请普通退款,可以取消退款,回调再处理库存和券
* 3用户申请快递退款,可以取消退款,回调再处理库存和券,需确认收货
* 1超时退款,无法取消退款,直接返还库存和券,回调不再处理库存和券
*/
private Integer type;
......
......@@ -10,10 +10,13 @@ import com.liquidnet.service.candy.param.BackCouponParam;
import com.liquidnet.service.feign.stone.api.FeignStoneIntegralClient;
import com.liquidnet.service.kylin.constant.KylinTableStatusConst;
import com.liquidnet.service.kylin.dto.param.RefundCallbackParam;
import com.liquidnet.service.kylin.dto.param.ticketSystem.STRefundOrderParam;
import com.liquidnet.service.kylin.dto.vo.mongo.*;
import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderRefundsVo;
import com.liquidnet.service.kylin.dto.vo.ticketSystem.RefundOrderVo;
import com.liquidnet.service.kylin.entity.*;
import com.liquidnet.service.kylin.mapper.*;
import com.liquidnet.service.platform.service.ticketSystem.ITicketSystemService;
import com.liquidnet.service.platform.utils.DataUtils;
import com.liquidnet.service.platform.utils.MongoVoUtils;
import com.mongodb.BasicDBObject;
......@@ -81,6 +84,9 @@ public class KylinRefundsStatusServiceImpl {
@Autowired
private FeignStoneIntegralClient feignStoneIntegralClient;
@Autowired
private ITicketSystemService ticketSystemService;
@Value("${liquidnet.service.candy.url}")
private String candyUrl;
......@@ -128,6 +134,7 @@ public class KylinRefundsStatusServiceImpl {
);
BigDecimal onePrice = priceActual.subtract(priceExpress).divide(BigDecimal.valueOf(allEntitiesCount));//单价
int refundNumber = 0;
List<RefundOrderVo> refundOrderVos = new ArrayList<>();
for (String entitiesId : orderTicketEntitiesIdsArr) {
KylinOrderTicketEntities EntitiesInfo = kylinOrderTicketEntitiesMapper.selectOne(//已退完成的
Wrappers.lambdaQuery(KylinOrderTicketEntities.class)
......@@ -175,6 +182,13 @@ public class KylinRefundsStatusServiceImpl {
);
dataUtils.delOrderTicketEntitiesRedis(entitiesId);
RefundOrderVo refundOrderVo = new RefundOrderVo();
refundOrderVo.setTicketOrderId(entitiesId);
refundOrderVo.setSessionCode(dataUtils.getSessionCode(EntitiesInfo.getTimeId()));
refundOrderVo.setTicketId(EntitiesInfo.getTicketId());
refundOrderVo.setRefundAmount(String.valueOf(refundEntitiesInfo.getRefundPrice()));
refundOrderVos.add(refundOrderVo);
}
// 订单表
......@@ -235,7 +249,7 @@ public class KylinRefundsStatusServiceImpl {
log.info("refundCallback数据库更新res: [update1={},update2={},update3={}]", update1, update2, update3);
if(null != refundInfo.getRefundCode() && !refundInfo.getRefundCode().isEmpty()) {
if (null != refundInfo.getRefundCode() && !refundInfo.getRefundCode().isEmpty()) {
log.info("refundCallback已退过不处理库存等: [refundAt={}, orderRefundCode={}, refundCode={}]", refundInfo.getRefundAt(), refundInfo.getOrderRefundCode(), refundInfo.getRefundCode());
return true;
}
......@@ -253,8 +267,8 @@ public class KylinRefundsStatusServiceImpl {
dataUtils.changeBuyInfo(orderInfo.getUserId(), entitiesInfo.getEnterIdCode(), orderRelations.getPerformanceId(), entitiesInfo.getTicketId(), -1);
}
}
// 退所有优惠券 提前购优惠券不退
if (newStatus == KylinTableStatusConst.ORDER_STATUS4) {
// 退所有优惠券 提前购优惠券不退
KylinPerformanceVo performanceVo = dataUtils.getPerformanceVo(orderRelations.getPerformanceId());
if (performanceVo.getIsRefundVoucher() > 0) {
ArrayList<KylinOrderCoupons> orderCoupon = dataUtils.getOrderCoupon(orderTicketsId);
......@@ -274,17 +288,34 @@ public class KylinRefundsStatusServiceImpl {
String returnData = HttpUtil.postRaw(candyUrl + "/candy-coupon/useBack", jsonString, null);
log.info("订单退款回调退券结果:[returnData={}]", returnData);
} catch (Exception e) {
log.info("订单退款回调退券异常:[errorMsg={}, e={}]", e.getMessage(), e);
log.error("订单退款回调退券异常:[refundId={}, errorMsg={}, e={}]", refundInfo.getRefundId(), e.getMessage(), e);
}
}
}
// 上报退票信息
try {
String accessToken = ticketSystemService.getAccessToken();
STRefundOrderParam stRefundOrderParam = STRefundOrderParam.getNew();
stRefundOrderParam.setRefundOrderId(refundInfo.getOrderRefundsId());
stRefundOrderParam.setOrderId(refundInfo.getOrderTicketsId());
stRefundOrderParam.setReason("按需退款");
stRefundOrderParam.setRefundOrderTime(LocalDateTime.now());
stRefundOrderParam.setTicketOrderList(refundOrderVos);
boolean refundOrder = ticketSystemService.refundOrder(accessToken, stRefundOrderParam);
log.info("订单退款回调上报退票信息结果:[refundId={}, result={}]", refundInfo.getRefundId(), refundOrder);
if (!refundOrder) {
log.error("订单退款回调上报退票信息失败:[refundId={}, result={}]", refundInfo.getRefundId(), refundOrder);
}
} catch (Exception e) {
log.error("订单退款回调上报退票信息异常:[refundId={}, errorMsg={}, e={}]", refundInfo.getRefundId(), e.getMessage(), e);
}
}
// 退积分
try {
ResponseDto<String> de2111 = feignStoneIntegralClient.de2111(orderInfo.getUserId(), refundCallbackParam.getRefundPrice().setScale(0, BigDecimal.ROUND_DOWN).intValue(), "演出订单退款:".concat(orderInfo.getPerformanceTitle()).concat(":").concat(orderInfo.getOrderCode().substring(orderInfo.getOrderCode().length() - 10)));
log.info("订单退款回调退积分结果:[getCode={}, getData={}]", de2111.getCode(), de2111.getData());
} catch (Exception e) {
log.info("订单退款回调退积分异常:[errorMsg={}, e={}]", e.getMessage(), e);
log.error("订单退款回调退积分异常:[refundId={}, errorMsg={}, e={}]", refundInfo.getRefundId(), e.getMessage(), e);
}
}
......
......@@ -3,7 +3,7 @@ package com.liquidnet.service.platform.service.ticketSystem.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.type.TypeReference;
import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.common.cache.redis.util.RedisDataSourceUtil;
import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.HttpUtil;
......@@ -38,12 +38,12 @@ public class ITicketSystemServiceImpl implements ITicketSystemService {
@Value("${liquidnet.service.other.secret}")
private String secret;
@Autowired
RedisUtil redisUtil;
RedisDataSourceUtil redisDataSourceUtil;
private final static String accessTokenKey = "ST:accessToken";
@Override
public String getAccessToken() {
Object obj = redisUtil.get(accessTokenKey);
Object obj = redisDataSourceUtil.getRedisKylinUtil().get(accessTokenKey);
if (obj != null) {
return (String) obj;
} else {
......@@ -57,7 +57,7 @@ public class ITicketSystemServiceImpl implements ITicketSystemService {
new TypeReference<ResponseDataVo<STAccessTokenVo>>() {
});
String accessToken = response.getData().getAccessToken();
redisUtil.set(accessTokenKey, accessToken, (response.getData().getExpiresIn() - 60));
redisDataSourceUtil.getRedisKylinUtil().set(accessTokenKey, accessToken, (response.getData().getExpiresIn() - 60));
return accessToken;
}
}
......@@ -86,9 +86,11 @@ public class ITicketSystemServiceImpl implements ITicketSystemService {
params.put("pageSize", fieldListParam.getPageSize().toString());
if (fieldListParam.getProvinceId() != 0) {
params.put("provinceId", fieldListParam.getProvinceId() + "");
// params.put("provinceId", 110000 + "");
}
if (fieldListParam.getCityId() != 0) {
params.put("cityId", fieldListParam.getCityId() + "");
// params.put("cityId", 110100 + "");
}
if (fieldListParam.getDistrictId() != 0) {
params.put("districtId", fieldListParam.getDistrictId() + "");
......@@ -113,16 +115,22 @@ public class ITicketSystemServiceImpl implements ITicketSystemService {
params.put("accessToken", accessToken);
params.put("venueCode", insertFieldParam.getVenueCode());
params.put("provinceId", insertFieldParam.getProvinceId() + "");
// params.put("provinceId", 110000 + "");
params.put("cityId", insertFieldParam.getCityId() + "");
// params.put("cityId", 110100 + "");
params.put("districtId", insertFieldParam.getDistrictId() + "");
params.put("venueName", insertFieldParam.getVenueName());
params.put("venueAddress", insertFieldParam.getVenueAddress());
params.put("managementCompany", insertFieldParam.getManagementCompany());
params.put("hasHall", insertFieldParam.getHasHall().toString());
params.put("hallName", insertFieldParam.getHallName());
params.put("hasSeat", insertFieldParam.getHasSeat().toString());
params.put("seatNum", insertFieldParam.getSeatNum().toString());
params.put("seatingCapacity", insertFieldParam.getSeatingCapacity().toString());
params.put("hasSeat", insertFieldParam.getHasSeat() == null ? null : insertFieldParam.getHasSeat().toString());
params.put("seatNum", insertFieldParam.getSeatNum() == null ? null : insertFieldParam.getSeatNum().toString());
// params.put("seatingCapacity", insertFieldParam.getSeatingCapacity() == null ? null : insertFieldParam.getSeatingCapacity().toString());
params.put("seatingCapacity", "1");
log.debug("URL = " + ticketSystemUrl + "/standard/venue/save");
log.debug("params = " + JSON.toJSONString(params));
ResponseDataVo<STFieldChangeVo> response =
JsonUtils.fromJson(HttpUtil.postRaw(ticketSystemUrl + "/standard/venue/save", JSON.toJSONString(params), headers),
new TypeReference<ResponseDataVo<STFieldChangeVo>>() {
......@@ -208,7 +216,7 @@ public class ITicketSystemServiceImpl implements ITicketSystemService {
JsonUtils.fromJson(HttpUtil.postRaw(ticketSystemUrl + "/report/inventory", getJsonStr(params), headers),
new TypeReference<ResponseDataVo<Boolean>>() {
});
log.debug("RESULT = " + response );
log.debug("RESULT = " + response);
return response.getData();
}
......@@ -259,7 +267,7 @@ public class ITicketSystemServiceImpl implements ITicketSystemService {
params.put("priceId", delTicketParam.getPriceId());
params.put("ticketId", delTicketParam.getTicketId());
ResponseDataVo<Boolean> response =
JsonUtils.fromJson(HttpUtil.postRaw(ticketSystemUrl + "/report/deleteTicket",getJsonStr(params), headers),
JsonUtils.fromJson(HttpUtil.postRaw(ticketSystemUrl + "/report/deleteTicket", getJsonStr(params), headers),
new TypeReference<ResponseDataVo<Boolean>>() {
});
return response.getData();
......
......@@ -419,4 +419,9 @@ public class DataUtils {
public Object delTimeLine(String performances) {
return mongoTemplate.remove(Query.query(Criteria.where("performance").is(performances)), KylinTimePerformanceVo.class, KylinTimePerformanceVo.class.getSimpleName());
}
//获取SessionCode
public String getSessionCode(String ticketTimeId) {
return (String) redisDataSourceUtil.getRedisKylinUtil().get(KylinRedisConst.TIMES_SESSION_CODE.concat(ticketTimeId));
}
}
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