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

Commit 89f7d106 authored by jiangxiulong's avatar jiangxiulong

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

parents 2dcd0af3 13a02d47
package com.liquidnet.service.dragon.service; package com.liquidnet.service.dragon.service;
public interface IDragonOrdersService { public interface IDragonOrdersService {
void sendRedisQueue();
} }
...@@ -2,9 +2,13 @@ package com.liquidnet.service.kylin.dto.vo.returns; ...@@ -2,9 +2,13 @@ package com.liquidnet.service.kylin.dto.vo.returns;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal;
@Data @Data
public class OrderRefundListVo { public class OrderRefundListVo {
private String orderRefundsId; private String orderRefundsId;
private String orderRefundCode; private String orderRefundCode;
private Integer status; private Integer status;
private BigDecimal price;
private String applicantId;
} }
...@@ -28,8 +28,8 @@ public class RedisStreamConfig { ...@@ -28,8 +28,8 @@ public class RedisStreamConfig {
.pollTimeout(Duration.ofSeconds(1)) .pollTimeout(Duration.ofSeconds(1))
.build(); .build();
var listenerContainer = StreamMessageListenerContainer.create(factory,options); var listenerContainer = StreamMessageListenerContainer.create(factory,options);
var subscription = listenerContainer.receiveAutoAck(Consumer.from("dragon","dragon_pay"), var subscription = listenerContainer.receiveAutoAck(Consumer.from("group-1","consumer-1"),
StreamOffset.create("dragon", ReadOffset.lastConsumed()),redisReceiver); StreamOffset.create("mystream", ReadOffset.lastConsumed()),redisReceiver);
listenerContainer.start(); listenerContainer.start();
return subscription; return subscription;
} }
......
package com.liquidnet.service.dragon.controller; package com.liquidnet.service.dragon.controller;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.dragon.service.IDragonOrdersService;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import org.springframework.beans.factory.annotation.Autowired;
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;
@RestController @RestController
@RequestMapping("pay") @RequestMapping("pay")
public class PayController { public class PayController {
@Autowired
IDragonOrdersService dragonOrdersService;
@PostMapping("pre")
@ApiOperation("发送测试redis")
@ApiResponse(code = 200, message = "接口返回对象参数")
public ResponseDto<String> checkCanOrder() {
dragonOrdersService.sendRedisQueue();
return ResponseDto.success();
}
} }
package com.liquidnet.service.dragon.receiver; package com.liquidnet.service.dragon.receiver;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.data.redis.connection.Message;
import org.springframework.data.redis.connection.MessageListener;
import org.springframework.data.redis.connection.stream.MapRecord; import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.serializer.JdkSerializationRedisSerializer;
import org.springframework.data.redis.serializer.RedisSerializer;
import org.springframework.data.redis.serializer.StringRedisSerializer;
import org.springframework.data.redis.stream.StreamListener; import org.springframework.data.redis.stream.StreamListener;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
@Slf4j @Slf4j
@Component @Component
public class RedisReceiver implements StreamListener<String, MapRecord<String, String, String>> { public class RedisReceiver implements StreamListener<String, MapRecord<String, String, String>> {
// @Override
// public void onMessage(Message message, byte[] pattern) {
// RedisSerializer serializer = new JdkSerializationRedisSerializer();
// StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
// //接收的topic
// String channel = stringRedisSerializer.deserialize(message.getChannel());
// System.out.println("INFO CHANNEL => "+channel);
// //消息的POJO
// Object o = serializer.deserialize(message.getBody());
// System.out.println("INFO MESSAGE => "+o);
// }
@Override @Override
public void onMessage(MapRecord<String, String, String> message) { public void onMessage(MapRecord<String, String, String> message) {
......
...@@ -18,11 +18,9 @@ public class DragonOrderRefundsServiceImpl implements IDragonOrderRefundsService ...@@ -18,11 +18,9 @@ public class DragonOrderRefundsServiceImpl implements IDragonOrderRefundsService
@Override @Override
public void sendRedisQueue() { public void sendRedisQueue() {
try { try {
stringRedisTemplate.convertAndSend("msg2", "测试 redis 订阅信息2");
HashMap<String ,String> map = new HashMap<>(); HashMap<String ,String> map = new HashMap<>();
map.put("message","测试 redis 订阅信息1"); map.put("message","测试 redis 订阅信息1");
MapRecord<String, String, String> record = StreamRecords.mapBacked(map).withStreamKey("dragon"); MapRecord<String, String, String> record = StreamRecords.mapBacked(map).withStreamKey("mystream");
stringRedisTemplate.opsForStream().add(record); stringRedisTemplate.opsForStream().add(record);
}catch (Exception e){ }catch (Exception e){
e.printStackTrace(); e.printStackTrace();
......
package com.liquidnet.service.dragon.service.impl; package com.liquidnet.service.dragon.service.impl;
import com.liquidnet.service.dragon.service.IDragonOrdersService; import com.liquidnet.service.dragon.service.IDragonOrdersService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.connection.stream.MapRecord;
import org.springframework.data.redis.connection.stream.StreamRecords;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;
import java.util.HashMap;
@Service
public class DragonOrdersServiceImpl implements IDragonOrdersService { public class DragonOrdersServiceImpl implements IDragonOrdersService {
@Autowired
StringRedisTemplate stringRedisTemplate;
@Override
public void sendRedisQueue() {
try {
stringRedisTemplate.convertAndSend("msg2", "测试 redis 订阅信息2");
HashMap<String ,String> map = new HashMap<>();
map.put("message","测试 redis 订阅信息1");
MapRecord<String, String, String> record = StreamRecords.mapBacked(map).withStreamKey("dragon");
stringRedisTemplate.opsForStream().add(record);
}catch (Exception e){
e.printStackTrace();
}
}
} }
...@@ -196,7 +196,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsService { ...@@ -196,7 +196,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsService {
Integer orderExpressStatus = dataUtils.getOrderExpressInfo(orderTicketVo.getOrderTicketsId()); Integer orderExpressStatus = dataUtils.getOrderExpressInfo(orderTicketVo.getOrderTicketsId());
vo.setExpressStatus(orderExpressStatus); vo.setExpressStatus(orderExpressStatus);
List<KylinOrderRefundsOrderCodeVo> orderRefundsVoBaseList = new ArrayList<>();
List<KylinOrderRefundsVo> orderRefundsVoList = dataUtils.getOrderRefundVoByOrderId(orderId); List<KylinOrderRefundsVo> orderRefundsVoList = dataUtils.getOrderRefundVoByOrderId(orderId);
currentTime = System.currentTimeMillis() - currentTime; currentTime = System.currentTimeMillis() - currentTime;
log.debug("获取退款详情 -> time:" + (currentTime) + "毫秒"); log.debug("获取退款详情 -> time:" + (currentTime) + "毫秒");
...@@ -208,6 +207,8 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsService { ...@@ -208,6 +207,8 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsService {
data.setOrderRefundCode(item.getOrderRefundCode().substring(item.getOrderRefundCode().length() - 10)); data.setOrderRefundCode(item.getOrderRefundCode().substring(item.getOrderRefundCode().length() - 10));
data.setOrderRefundsId(item.getOrderRefundsId()); data.setOrderRefundsId(item.getOrderRefundsId());
data.setStatus(item.getStatus()); data.setStatus(item.getStatus());
data.setPrice(item.getPrice());
data.setApplicantId(uid.equals(item.getApplicantId())?"1":"0");
if (item.getStatus().equals(0) || item.getStatus().equals(1) || item.getStatus().equals(7) || item.getStatus().equals(3) || item.getStatus().equals(4)) { if (item.getStatus().equals(0) || item.getStatus().equals(1) || item.getStatus().equals(7) || item.getStatus().equals(3) || item.getStatus().equals(4)) {
lockPrice = lockPrice.add(item.getPrice()); lockPrice = lockPrice.add(item.getPrice());
} }
...@@ -218,7 +219,8 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsService { ...@@ -218,7 +219,8 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsService {
LocalDateTime refundOpenDate = DateUtil.Formatter.yyyyMMddHHmmss.parse(performanceVo.getRefundOpenTime()); LocalDateTime refundOpenDate = DateUtil.Formatter.yyyyMMddHHmmss.parse(performanceVo.getRefundOpenTime());
LocalDateTime refundCloseDate = DateUtil.Formatter.yyyyMMddHHmmss.parse(performanceVo.getRefundCloseTime()); LocalDateTime refundCloseDate = DateUtil.Formatter.yyyyMMddHHmmss.parse(performanceVo.getRefundCloseTime());
if (LocalDateTime.now().isAfter(refundOpenDate) && LocalDateTime.now().isBefore(refundCloseDate) && orderTicketVo.getExpressAddress().trim().equals("") if (LocalDateTime.now().isAfter(refundOpenDate) && LocalDateTime.now().isBefore(refundCloseDate) && orderTicketVo.getExpressAddress().trim().equals("")
&& ticketVo.getCounts() == 1 && lockPrice.compareTo(orderTicketVo.getPriceActual()) != 0) { && ticketVo.getCounts() == 1 && lockPrice.compareTo(orderTicketVo.getPriceActual()) != 0
&& (orderTicketVo.getStatus().equals(1) || orderTicketVo.getStatus().equals(3) || orderTicketVo.getStatus().equals(6))) {
vo.setIsCanRefund(1); vo.setIsCanRefund(1);
} else { } else {
vo.setIsCanRefund(0); vo.setIsCanRefund(0);
...@@ -233,7 +235,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsService { ...@@ -233,7 +235,6 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsService {
log.debug("循环退款详情 -> time:" + (currentTime) + "毫秒"); log.debug("循环退款详情 -> time:" + (currentTime) + "毫秒");
orderTicketVo.setOrderRefundListVos(orderRefundListVos); orderTicketVo.setOrderRefundListVos(orderRefundListVos);
orderTicketVo.setOrderCode(orderTicketVo.getOrderCode().substring(orderTicketVo.getOrderCode().length() - 10)); orderTicketVo.setOrderCode(orderTicketVo.getOrderCode().substring(orderTicketVo.getOrderCode().length() - 10));
vo.setOrderRefundsVoList(orderRefundsVoBaseList);
vo.setOrderTicketVo(orderTicketVo); vo.setOrderTicketVo(orderTicketVo);
vo.setEnterDescribe(dataUtils.getEnterInfo("1")); vo.setEnterDescribe(dataUtils.getEnterInfo("1"));
} }
......
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