|
|
@@ -1,18 +1,11 @@
|
|
|
package com.td.boss.game.complayergoods.service;
|
|
|
|
|
|
-import com.riven.redisson.annotation.RedissonListener;
|
|
|
-import com.riven.redisson.message.RedissonHeaders;
|
|
|
-import com.td.boss.common.service.*;
|
|
|
-import com.td.boss.config.delay.pojo.PlayerGoods;
|
|
|
+import com.td.boss.common.service.CommonServiceImpl;
|
|
|
import com.td.boss.game.complayergoods.pojo.ComPlayerGoods;
|
|
|
-import com.td.boss.game.complayergoods.vo.ComPlayerGoodsSimpleVo;
|
|
|
+import com.td.boss.game.complayergoods.repository.ComPlayerGoodsRepository;
|
|
|
import com.td.boss.game.complayergoods.vo.ComPlayerGoodsTypeSumVo;
|
|
|
import com.td.boss.game.complayergoods.vo.ComPlayerGoodsVo;
|
|
|
-import com.td.boss.game.complayergoods.repository.ComPlayerGoodsRepository;
|
|
|
-import com.td.boss.util.CopyUtil;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.messaging.handler.annotation.Header;
|
|
|
-import org.springframework.messaging.handler.annotation.Payload;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
@@ -47,44 +40,4 @@ public class ComPlayerGoodsServiceImpl extends CommonServiceImpl<ComPlayerGoodsV
|
|
|
public List<ComPlayerGoodsTypeSumVo> findAllGroupByGoodsType() {
|
|
|
return comPlayerGoodsRepository.findAmountSumByGoodsType();
|
|
|
}
|
|
|
-
|
|
|
- /**
|
|
|
- * 处理仓库断电损耗 延迟任务
|
|
|
- *
|
|
|
- * @param messageId 消息id
|
|
|
- * @param queue 队列
|
|
|
- * @param sendTimestamp 发送时间戳
|
|
|
- * @param expectedDelayMillis 预计延迟
|
|
|
- * @param myHeader 头
|
|
|
- * @param playerGoods 玩家物品
|
|
|
- */
|
|
|
- @RedissonListener(queues = "playerGoods", messageConverter = "playerGoodsMessageConverter")
|
|
|
- public void handler(@Header(value = RedissonHeaders.MESSAGE_ID, required = false) String messageId,
|
|
|
- @Header(RedissonHeaders.DELIVERY_QUEUE_NAME) String queue,
|
|
|
- @Header(RedissonHeaders.SEND_TIMESTAMP) long sendTimestamp,
|
|
|
- @Header(RedissonHeaders.EXPECTED_DELAY_MILLIS) long expectedDelayMillis,
|
|
|
- @Header(value = "my_header", required = false, defaultValue = "test") String myHeader,
|
|
|
- @Payload PlayerGoods playerGoods) {
|
|
|
- /**
|
|
|
- * 1.注入
|
|
|
- * @Autowired
|
|
|
- * private RedissonTemplate redissonTemplate;
|
|
|
- *
|
|
|
- * 2.像队列中添加延迟任务
|
|
|
- * PlayerGoods playerGoods = new PlayerGoods();
|
|
|
- * playerGoods.setUserId("1002");
|
|
|
- * redissonTemplate.sendWithDelay("playerGoods", playerGoods, 10000);
|
|
|
- */
|
|
|
-
|
|
|
- System.out.println(messageId);
|
|
|
- System.out.println(queue);
|
|
|
- System.out.println(myHeader);
|
|
|
- long actualDelay = System.currentTimeMillis() - (sendTimestamp + expectedDelayMillis);
|
|
|
- System.out.println("receive " + playerGoods + ", delayed " + actualDelay + " millis");
|
|
|
-
|
|
|
- List<ComPlayerGoods> allByUserId = comPlayerGoodsRepository.findAllByUserId(playerGoods.getUserId());
|
|
|
- System.out.println("查一下:" + allByUserId);
|
|
|
- System.out.println(allByUserId);
|
|
|
-
|
|
|
- }
|
|
|
}
|