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

Commit cbb448b9 authored by jiangxiulong's avatar jiangxiulong

Merge branch 'dev' into test

parents 0971a030 b02c95f8
...@@ -7,7 +7,7 @@ public enum KylinPerformanceStatusEnum { ...@@ -7,7 +7,7 @@ public enum KylinPerformanceStatusEnum {
PERFORMANCESTATUS3("预览", 3), PERFORMANCESTATUS3("预览", 3),
PERFORMANCESTATUS6("购买", 6), PERFORMANCESTATUS6("购买", 6),
PERFORMANCESTATUS7("已下架", 7), PERFORMANCESTATUS7("已下架", 7),
PERFORMANCESTATUS8("售", 8), PERFORMANCESTATUS8("售", 8),
PERFORMANCESTATUS9("未开始", 9), PERFORMANCESTATUS9("未开始", 9),
PERFORMANCESTATUS10("已结束", 10), PERFORMANCESTATUS10("已结束", 10),
PERFORMANCESTATUS11("已停售", 11); PERFORMANCESTATUS11("已停售", 11);
......
...@@ -66,7 +66,7 @@ liquidnet: ...@@ -66,7 +66,7 @@ liquidnet:
executor-main: executor-main:
xxl: xxl:
admin: admin:
addresses: 127.0.0.1:8090 addresses: 172.17.205.50:8090
client: client:
admin: admin:
phpPayUrl: http://devdragon.zhengzai.tv phpPayUrl: http://devdragon.zhengzai.tv
......
...@@ -76,6 +76,7 @@ ...@@ -76,6 +76,7 @@
<where> <where>
AND order_tickets_id = #{orderTicketsId} AND order_tickets_id = #{orderTicketsId}
AND status != ${orderRefundStatusCancel} AND status != ${orderRefundStatusCancel}
AND status != 5
</where> </where>
</select> </select>
<select id="selectEntitiesCount" resultType="java.lang.Integer"> <select id="selectEntitiesCount" resultType="java.lang.Integer">
......
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>liquidnet-bus-feign</artifactId>
<groupId>com.liquidnet</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>liquidnet-api-feign-platform</artifactId>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
</properties>
<dependencies>
</dependencies>
</project>
\ No newline at end of file
package com.liquidnet.service.feign.kylin.task;
import com.liquidnet.service.base.ResponseDto;
import feign.hystrix.FallbackFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
@Component
@FeignClient(name = "liquidnet-service-platform",
contextId = "FeignPlatformAlipayBackClient", path = "",
url = "",
fallback = FallbackFactory.Default.class)
public interface FeignPlatformAlipayBackClient {
@GetMapping("platform/refund/alipayActiveCallback")
ResponseDto<String> alipayActiveCallback();
}
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
<module>liquidnet-api-feign-adam</module> <module>liquidnet-api-feign-adam</module>
<module>liquidnet-api-feign-kylin</module> <module>liquidnet-api-feign-kylin</module>
<module>liquidnet-api-feign-dragon</module> <module>liquidnet-api-feign-dragon</module>
<module>liquidnet-api-feign-platform</module>
<!-- <module>liquidnet-api-feign-sequence</module>--> <!-- <module>liquidnet-api-feign-sequence</module>-->
<!-- <module>liquidnet-api-feign-example</module>--> <!-- <module>liquidnet-api-feign-example</module>-->
<!-- <module>liquidnet-api-feign-account</module>--> <!-- <module>liquidnet-api-feign-account</module>-->
......
...@@ -26,6 +26,12 @@ ...@@ -26,6 +26,12 @@
<artifactId>liquidnet-api-feign-dragon</artifactId> <artifactId>liquidnet-api-feign-dragon</artifactId>
<version>1.0-SNAPSHOT</version> <version>1.0-SNAPSHOT</version>
</dependency> </dependency>
<dependency>
<groupId>com.liquidnet</groupId>
<artifactId>liquidnet-api-feign-platform</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
</dependencies> </dependencies>
......
package com.liquidnet.service.executor.main.handler;
import com.liquidnet.service.feign.kylin.task.FeignPlatformAlipayBackClient;
import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.handler.annotation.XxlJob;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* Platform
*/
@Component
public class PlatformTaskHandler {
private static final Logger log = LoggerFactory.getLogger(PlatformTaskHandler.class);
@Autowired
private FeignPlatformAlipayBackClient feignPlatformAlipayBackClient;
@XxlJob(value = "sev-platform:alipayActiveCallbackHandler")
public ReturnT<String> alipayActiveCallbackHandler() {
try {
String result = feignPlatformAlipayBackClient.alipayActiveCallback().getData();
log.info("alipayActiveCallback:结果:"+result);
return ReturnT.SUCCESS;
} catch (Exception e) {
return ReturnT.FAIL;
}
}
}
...@@ -62,7 +62,7 @@ public class WechatShareController { ...@@ -62,7 +62,7 @@ public class WechatShareController {
String accessToken = accessToken(zhengzaiAppid, zhengzaiSecret); String accessToken = accessToken(zhengzaiAppid, zhengzaiSecret);
String jsapiTicket = jsapiTicket(zhengzaiAppid, accessToken); String jsapiTicket = jsapiTicket(zhengzaiAppid, accessToken);
Map<String, String> ret = sign(jsapiTicket, url); Map<String, String> ret = sign(jsapiTicket, url, zhengzaiAppid);
return ResponseDto.success(ret); return ResponseDto.success(ret);
} }
...@@ -75,11 +75,11 @@ public class WechatShareController { ...@@ -75,11 +75,11 @@ public class WechatShareController {
String accessToken = accessToken(modernskyAppid, modernskySecret); String accessToken = accessToken(modernskyAppid, modernskySecret);
String jsapiTicket = jsapiTicket(modernskyAppid, accessToken); String jsapiTicket = jsapiTicket(modernskyAppid, accessToken);
Map<String, String> ret = sign(jsapiTicket, url); Map<String, String> ret = sign(jsapiTicket, url, modernskyAppid);
return ResponseDto.success(ret); return ResponseDto.success(ret);
} }
public static Map<String, String> sign(String jsapi_ticket, String url) { public static Map<String, String> sign(String jsapi_ticket, String url, String appid) {
Map<String, String> ret = new HashMap(); Map<String, String> ret = new HashMap();
String nonce_str = create_nonce_str(); String nonce_str = create_nonce_str();
String timestamp = create_timestamp(); String timestamp = create_timestamp();
...@@ -114,6 +114,7 @@ public class WechatShareController { ...@@ -114,6 +114,7 @@ public class WechatShareController {
ret.put("nonceStr", nonce_str); ret.put("nonceStr", nonce_str);
ret.put("timestamp", timestamp); ret.put("timestamp", timestamp);
ret.put("signature", signature); ret.put("signature", signature);
ret.put("appid", appid);
return ret; return ret;
} }
......
...@@ -5,6 +5,7 @@ import com.liquidnet.service.platform.service.refund.OrderRefundsCallbackService ...@@ -5,6 +5,7 @@ import com.liquidnet.service.platform.service.refund.OrderRefundsCallbackService
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
...@@ -31,4 +32,11 @@ public class OrderRefundCallbackController { ...@@ -31,4 +32,11 @@ public class OrderRefundCallbackController {
String result = orderRefundsCallbackServiceImpl.refundCallback(refundCallbackParam); String result = orderRefundsCallbackServiceImpl.refundCallback(refundCallbackParam);
return result; return result;
} }
@GetMapping("alipayActiveCallback")
@ApiOperation("支付宝主动查询退款结果")
public String alipayActiveCallback() {
String result = orderRefundsCallbackServiceImpl.alipayActiveCallback();
return result;
}
} }
package com.liquidnet.service.platform.service.refund; package com.liquidnet.service.platform.service.refund;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.liquidnet.commons.lang.util.HttpUtil;
import com.liquidnet.service.kylin.constant.KylinTableStatusConst; import com.liquidnet.service.kylin.constant.KylinTableStatusConst;
import com.liquidnet.service.kylin.dto.param.RefundCallbackParam; import com.liquidnet.service.kylin.dto.param.RefundCallbackParam;
import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderRefundsVo; import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderRefundsVo;
import com.liquidnet.service.kylin.entity.KylinOrderRefunds; import com.liquidnet.service.kylin.entity.KylinOrderRefunds;
import com.liquidnet.service.kylin.entity.KylinOrderTickets;
import com.liquidnet.service.kylin.mapper.*; import com.liquidnet.service.kylin.mapper.*;
import com.liquidnet.service.kylin.service.IKylinOrderRefundsService; import com.liquidnet.service.kylin.service.IKylinOrderRefundsService;
import com.liquidnet.service.platform.utils.DataUtils; import com.liquidnet.service.platform.utils.DataUtils;
...@@ -14,13 +17,17 @@ import com.mongodb.client.result.UpdateResult; ...@@ -14,13 +17,17 @@ import com.mongodb.client.result.UpdateResult;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.convert.MongoConverter; import org.springframework.data.mongodb.core.convert.MongoConverter;
import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query; import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List;
/** /**
* <p> * <p>
...@@ -33,18 +40,23 @@ import java.time.LocalDateTime; ...@@ -33,18 +40,23 @@ import java.time.LocalDateTime;
@Slf4j @Slf4j
@Service @Service
public class OrderRefundsCallbackServiceImpl extends ServiceImpl<KylinOrderRefundsMapper, KylinOrderRefunds> implements IKylinOrderRefundsService { public class OrderRefundsCallbackServiceImpl extends ServiceImpl<KylinOrderRefundsMapper, KylinOrderRefunds> implements IKylinOrderRefundsService {
@Value("${liquidnet.client.admin.platformUrl}")
private String platformUrl;
@Value("${liquidnet.client.admin.phpPayUrl}")
private String phpPayUrl;
@Autowired @Autowired
private KylinRefundsStatusServiceImpl kylinRefundsStatusServiceImpl; private KylinRefundsStatusServiceImpl kylinRefundsStatusServiceImpl;
@Autowired @Autowired
private KylinOrderRefundsMapper kylinOrderRefundsMapper; private KylinOrderRefundsMapper kylinOrderRefundsMapper;
@Autowired
private KylinOrderTicketsMapper kylinOrderTicketsMapper;
@Autowired @Autowired
MongoTemplate mongoTemplate; MongoTemplate mongoTemplate;
@Autowired @Autowired
private MongoConverter mongoConverter; private MongoConverter mongoConverter;
@Autowired @Autowired
private DataUtils dataUtils; private DataUtils dataUtils;
...@@ -57,8 +69,8 @@ public class OrderRefundsCallbackServiceImpl extends ServiceImpl<KylinOrderRefun ...@@ -57,8 +69,8 @@ public class OrderRefundsCallbackServiceImpl extends ServiceImpl<KylinOrderRefun
log.info("Failed:{}.RefundController refundCallback: 退款订单查询失败,编号{}", "KylinOrderRefundsServiceImplRefundCallback", refundCallbackParam.getOrderRefundCode()); log.info("Failed:{}.RefundController refundCallback: 退款订单查询失败,编号{}", "KylinOrderRefundsServiceImplRefundCallback", refundCallbackParam.getOrderRefundCode());
return "fail"; return "fail";
} }
if (refundInfo.getStatus() == KylinTableStatusConst.ORDER_REFUND_STATUS_CANCEL) { if (refundInfo.getStatus() == KylinTableStatusConst.ORDER_REFUND_STATUS_CANCEL || refundInfo.getStatus() == KylinTableStatusConst.ORDER_REFUND_STATUS_REJECT) {
log.info("Failed:{}.RefundController refundCallback: 退款订单已取消,编号{}", "KylinOrderRefundsServiceImplRefundCallback", refundCallbackParam.getOrderRefundCode()); log.info("Failed:{}.RefundController refundCallback: 退款订单已取消或已一审拒绝,编号{}", "KylinOrderRefundsServiceImplRefundCallback", refundCallbackParam.getOrderRefundCode());
return "fail"; return "fail";
} }
if (refundInfo.getStatus() == KylinTableStatusConst.ORDER_REFUND_STATUS_REFUNDED) { if (refundInfo.getStatus() == KylinTableStatusConst.ORDER_REFUND_STATUS_REFUNDED) {
...@@ -104,4 +116,40 @@ public class OrderRefundsCallbackServiceImpl extends ServiceImpl<KylinOrderRefun ...@@ -104,4 +116,40 @@ public class OrderRefundsCallbackServiceImpl extends ServiceImpl<KylinOrderRefun
public String getOrderRefundCode(String orderRefundCode,int type) { public String getOrderRefundCode(String orderRefundCode,int type) {
return null; return null;
} }
public String alipayActiveCallback() {
LocalDateTime startTime = LocalDateTime.now();
LocalDateTime newTime = startTime.minusHours(8);
List<KylinOrderRefunds> kylinOrderRefunds = kylinOrderRefundsMapper.selectList(
Wrappers.lambdaQuery(KylinOrderRefunds.class)
.eq(KylinOrderRefunds::getStatus, KylinTableStatusConst.ORDER_REFUND_STATUS_UNFILLED)
.lt(KylinOrderRefunds::getExecutorAt, newTime) // 默认减去8小时的
);
for (KylinOrderRefunds refundInfo : kylinOrderRefunds) {
KylinOrderTickets orderInfo = kylinOrderTicketsMapper.selectOne(
Wrappers.lambdaQuery(KylinOrderTickets.class)
.eq(KylinOrderTickets::getOrderTicketsId, refundInfo.getOrderTicketsId())
);
if (null != orderInfo.getPaymentType() && (orderInfo.getPaymentType().equals("WAPALIPAY") || orderInfo.getPaymentType().equals("APPALIPAY"))) {
log.info("\n支付宝退款主动查询处理结果:\n[{}] ", orderInfo.getOrderTicketsId());
MultiValueMap<String, String> params = new LinkedMultiValueMap();
params.add("callBackUrl", platformUrl.concat("/platform/refund/callback"));
params.add("orderCode", orderInfo.getOrderCode());
params.add("orderRefundCode", refundInfo.getOrderRefundCode());
params.add("paymentId", orderInfo.getPaymentId());
// log.info("退款参数" + JsonUtils.toJson(params));
log.info("\n支付宝退款主动查询参数:\n[{}] ", params.toString());
// 请求pay
try {
String postResult = HttpUtil.post(phpPayUrl.concat("/dragon/refund/refund/alipay/result"), params);
log.info("\n支付宝退款主动查询处理结果:\n[{}] " + postResult);
} catch (Exception e) {
log.info("\n支付宝退款主动查询失败:[errorMsg=[{}], [orderRefundsId=[{}]", e.getMessage(), refundInfo.getOrderRefundsId());
}
}
}
return "success";
}
} }
...@@ -12,6 +12,7 @@ public class SweetConstant { ...@@ -12,6 +12,7 @@ public class SweetConstant {
public final static String REDIS_KEY_SWEET_MANUAL_SORT = "sweet:manual:sort:manual:"; public final static String REDIS_KEY_SWEET_MANUAL_SORT = "sweet:manual:sort:manual:";
public final static String REDIS_KEY_SWEET_ARTISTS_RELATION = "sweet:artists:relation:uid:"; public final static String REDIS_KEY_SWEET_ARTISTS_RELATION = "sweet:artists:relation:uid:";
public final static String REDIS_KEY_SWEET_ARTISTS_DETAILS = "sweet:artists:details:";
public final static String REDIS_KEY_SWEET_SHOP = "sweet:artists:shop:manual:"; public final static String REDIS_KEY_SWEET_SHOP = "sweet:artists:shop:manual:";
......
...@@ -5,6 +5,7 @@ import com.liquidnet.service.base.ResponseDto; ...@@ -5,6 +5,7 @@ import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.sweet.dto.SweetManualAppletDto; import com.liquidnet.service.sweet.dto.SweetManualAppletDto;
import com.liquidnet.service.sweet.dto.SweetManualArtistList2Dto; import com.liquidnet.service.sweet.dto.SweetManualArtistList2Dto;
import com.liquidnet.service.sweet.dto.SweetManualArtistListDto; import com.liquidnet.service.sweet.dto.SweetManualArtistListDto;
import com.liquidnet.service.sweet.entity.SweetArtists;
import com.liquidnet.service.sweet.entity.SweetManualNotify; import com.liquidnet.service.sweet.entity.SweetManualNotify;
import com.liquidnet.service.sweet.entity.SweetManualShop; import com.liquidnet.service.sweet.entity.SweetManualShop;
import com.liquidnet.service.sweet.entity.SweetRichtext; import com.liquidnet.service.sweet.entity.SweetRichtext;
...@@ -213,6 +214,48 @@ public class SweetAppletController { ...@@ -213,6 +214,48 @@ public class SweetAppletController {
return ResponseDto.success(); return ResponseDto.success();
} }
@GetMapping("artistsDetails")
@ApiOperation("艺人-详情")
@ApiImplicitParams({
@ApiImplicitParam(type = "query", dataType = "String", name = "manualId", value = "手册id", required = true),
@ApiImplicitParam(type = "query", dataType = "String", name = "artistsId", value = "艺人id", required = true),
@ApiImplicitParam(type = "query", dataType = "String", name = "uid", value = "用户id", required = true)
})
public ResponseDto<SweetManualArtistListDto> artistsDetails(@RequestParam String artistsId,
@RequestParam String manualId,
@RequestParam String uid) {
SweetManualArtistList2Dto data = redisDataUtils.getTimeList(manualId);
List<SweetManualArtistListDto> dataList = data.getData();
SweetArtistsRelationVo relationData = redisDataUtils.getArtistsRelationRedisVo(uid);
SweetManualArtistListDto vo = SweetManualArtistListDto.getNew();
for (SweetManualArtistListDto item : dataList) {
if (item.getArtistId().equalsIgnoreCase(artistsId)) {
item.setIsWatch(0);
item.setIsSign(0);
if (relationData.getWatchList() != null) {
for (String artistsIds : relationData.getWatchList()) {
if (artistsId.equalsIgnoreCase(artistsIds)) {
item.setIsWatch(1);
break;
}
}
}
if (relationData.getSignList() != null) {
for (String artistsIds : relationData.getSignList()) {
if (artistsId.equalsIgnoreCase(artistsIds)) {
item.setIsSign(1);
break;
}
}
}
vo = item;
break;
}
}
return ResponseDto.success(vo);
}
@GetMapping("manualShop") @GetMapping("manualShop")
@ApiOperation("吃喝玩乐") @ApiOperation("吃喝玩乐")
@ApiImplicitParams({ @ApiImplicitParams({
......
...@@ -37,6 +37,8 @@ public class RedisDataUtils { ...@@ -37,6 +37,8 @@ public class RedisDataUtils {
private SweetManualNotifyMapper sweetManualNotifyMapper; private SweetManualNotifyMapper sweetManualNotifyMapper;
@Autowired @Autowired
private SweetManualShopMapper sweetManualShopMapper; private SweetManualShopMapper sweetManualShopMapper;
@Autowired
private SweetArtistsMapper sweetArtistsMapper;
public List<SweetManualAppletDto> setPushList() { public List<SweetManualAppletDto> setPushList() {
...@@ -289,4 +291,21 @@ public class RedisDataUtils { ...@@ -289,4 +291,21 @@ public class RedisDataUtils {
return (SweetWechatUser) redisUtil.get(redisKey); return (SweetWechatUser) redisUtil.get(redisKey);
} }
// 艺人详情
public SweetArtists setArtistsDetails(String artistsId){
String redisKey = SweetConstant.REDIS_KEY_SWEET_ARTISTS_DETAILS.concat(artistsId);
SweetArtists sweetArtists = sweetArtistsMapper.selectOne(Wrappers.lambdaQuery(SweetArtists.class).eq(SweetArtists::getArtistsId,artistsId).eq(SweetArtists::getStatus,1));
redisUtil.set(redisKey,sweetArtists);
return sweetArtists;
}
public SweetArtists getArtistsDetails(String artistsId) {
String redisKey = SweetConstant.REDIS_KEY_SWEET_ARTISTS_DETAILS.concat(artistsId);
Object obj = redisUtil.get(redisKey);
if (obj == null) {
return setArtistsDetails(artistsId);
} else {
return (SweetArtists) obj;
}
}
} }
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