✨Feat: 实现卡片推送的历史放映部分

This commit is contained in:
2025-10-30 21:24:06 +08:00
parent de5b7d679a
commit 326d138e2c
2 changed files with 22 additions and 1 deletions
@@ -1,7 +1,8 @@
package cn.hezhaohui.common; package cn.hezhaohui.common;
public enum CardEnum { public enum CardEnum {
CARD_WEATHER("AAqxas5etOJDx", "1.0.5"); CARD_WEATHER("AAqxas5etOJDx", "1.0.5"),
CARD_MOVIE("AAqhYDej6RK7O", "1.0.1");
private final String id; private final String id;
private final String versionName; private final String versionName;
@@ -2,10 +2,12 @@ package cn.hezhaohui.lark.handler;
import cn.hezhaohui.common.AppConstant; import cn.hezhaohui.common.AppConstant;
import cn.hezhaohui.common.CardEnum; import cn.hezhaohui.common.CardEnum;
import cn.hezhaohui.lark.service.MovieService;
import cn.hezhaohui.pojo.entity.Weather; import cn.hezhaohui.pojo.entity.Weather;
import cn.hezhaohui.lark.client.WeatherClient; import cn.hezhaohui.lark.client.WeatherClient;
import cn.hezhaohui.lark.util.BeanUtil; import cn.hezhaohui.lark.util.BeanUtil;
import cn.hezhaohui.lark.util.LarkUtil; import cn.hezhaohui.lark.util.LarkUtil;
import cn.hezhaohui.pojo.vo.MovieVO;
import com.lark.oapi.core.utils.Jsons; import com.lark.oapi.core.utils.Jsons;
import com.lark.oapi.event.EventDispatcher; import com.lark.oapi.event.EventDispatcher;
import com.lark.oapi.service.application.ApplicationService; import com.lark.oapi.service.application.ApplicationService;
@@ -14,6 +16,11 @@ import com.lark.oapi.service.im.ImService;
import com.lark.oapi.service.im.v1.model.P2MessageReceiveV1; import com.lark.oapi.service.im.v1.model.P2MessageReceiveV1;
import com.lark.oapi.ws.Client; import com.lark.oapi.ws.Client;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class EventListener { public class EventListener {
// onP2MessageReceiveV1 为接收消息 v2.0;onCustomizedEvent 内的 message 为接收消息 v1.0。 // onP2MessageReceiveV1 为接收消息 v2.0;onCustomizedEvent 内的 message 为接收消息 v1.0。
@@ -32,6 +39,19 @@ public class EventListener {
WeatherClient weatherClient = BeanUtil.getBean(WeatherClient.class); WeatherClient weatherClient = BeanUtil.getBean(WeatherClient.class);
Weather weather = weatherClient.getWeather(); Weather weather = weatherClient.getWeather();
LarkUtil.sendCard(CardEnum.CARD_WEATHER, weather); LarkUtil.sendCard(CardEnum.CARD_WEATHER, weather);
} else if (eventKey.equals("movie")) {
MovieService movieService = BeanUtil.getBean(MovieService.class);
List<MovieVO> movies = movieService.listMovies();
List<Map<String, String>> movieList = new ArrayList<>();
for (MovieVO movie : movies) {
Map<String, String> movieInfo = new HashMap<>();
movieInfo.put("movie_title", movie.getName());
movieInfo.put("submit_time", movie.getDate());
movieList.add(movieInfo);
}
Map<String, Object> data = new HashMap<>();
data.put("recent_movie", movieList);
LarkUtil.sendCard(CardEnum.CARD_MOVIE, data);
} }
} }
}) })