diff --git a/litemall-wx-api/src/main/java/org/linlinjava/litemall/wx/web/WxTopicController.java b/litemall-wx-api/src/main/java/org/linlinjava/litemall/wx/web/WxTopicController.java index 173427be412da8ef969c76f644319d1d74515f22..0449c4759707340a9662cb6a77222e8a05a1eec2 100644 --- a/litemall-wx-api/src/main/java/org/linlinjava/litemall/wx/web/WxTopicController.java +++ b/litemall-wx-api/src/main/java/org/linlinjava/litemall/wx/web/WxTopicController.java @@ -1,6 +1,8 @@ package org.linlinjava.litemall.wx.web; +import org.linlinjava.litemall.db.domain.LitemallGoods; import org.linlinjava.litemall.db.domain.LitemallTopic; +import org.linlinjava.litemall.db.service.LitemallGoodsService; import org.linlinjava.litemall.db.service.LitemallTopicService; import org.linlinjava.litemall.core.util.ResponseUtil; import org.springframework.beans.factory.annotation.Autowired; @@ -11,6 +13,7 @@ import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import javax.validation.constraints.NotNull; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -21,6 +24,8 @@ import java.util.Map; public class WxTopicController { @Autowired private LitemallTopicService topicService; + @Autowired + private LitemallGoodsService goodsService; /** * 专题列表 @@ -28,17 +33,17 @@ public class WxTopicController { * @param page 分页页数 * @param size 分页大小 * @return 专题列表 - * 成功则 - * { - * errno: 0, - * errmsg: '成功', - * data: - * { - * data: xxx, - * count: xxx - * } - * } - * 失败则 { errno: XXX, errmsg: XXX } + * 成功则 + * { + * errno: 0, + * errmsg: '成功', + * data: + * { + * data: xxx, + * count: xxx + * } + * } + * 失败则 { errno: XXX, errmsg: XXX } */ @GetMapping("list") public Object list(@RequestParam(defaultValue = "1") Integer page, @@ -56,18 +61,27 @@ public class WxTopicController { * * @param id 专题ID * @return 专题详情 - * 成功则 - * { - * errno: 0, - * errmsg: '成功', - * data: xxx - * } - * 失败则 { errno: XXX, errmsg: XXX } + * 成功则 + * { + * errno: 0, + * errmsg: '成功', + * data: xxx + * } + * 失败则 { errno: XXX, errmsg: XXX } */ @GetMapping("detail") public Object detail(@NotNull Integer id) { + Map data = new HashMap<>(); LitemallTopic topic = topicService.findById(id); - return ResponseUtil.ok(topic); + data.put("topic", topic); + List goods = new ArrayList<>(); + for (Integer i : topic.getGoods()) { + LitemallGoods good = goodsService.findByIdVO(i); + if (null != good) + goods.add(good); + } + data.put("goods", goods); + return ResponseUtil.ok(data); } /** @@ -75,13 +89,13 @@ public class WxTopicController { * * @param id 专题ID * @return 相关专题 - * 成功则 - * { - * errno: 0, - * errmsg: '成功', - * data: xxx - * } - * 失败则 { errno: XXX, errmsg: XXX } + * 成功则 + * { + * errno: 0, + * errmsg: '成功', + * data: xxx + * } + * 失败则 { errno: XXX, errmsg: XXX } */ @GetMapping("related") public Object related(@NotNull Integer id) { diff --git a/litemall-wx/pages/topicDetail/topicDetail.js b/litemall-wx/pages/topicDetail/topicDetail.js index a5a1d1a928303503cc67377bee3a5a53d733a945..096a7b42b1ad0644ccaaeb43a8f18ca5c731d2a8 100644 --- a/litemall-wx/pages/topicDetail/topicDetail.js +++ b/litemall-wx/pages/topicDetail/topicDetail.js @@ -9,7 +9,8 @@ Page({ topic: {}, topicList: [], commentCount: 0, - commentList: [] + commentList: [], + topicGoods: [] }, onLoad: function (options) { // 页面初始化 options为页面跳转所带来的参数 @@ -20,12 +21,12 @@ Page({ util.request(api.TopicDetail, { id: that.data.id }).then(function (res) { if (res.errno === 0) { - that.setData({ - topic: res.data, + topic: res.data.topic, + topicGoods: res.data.goods }); - WxParse.wxParse('topicDetail', 'html', res.data.content, that); + WxParse.wxParse('topicDetail', 'html', res.data.topic.content, that); } }); @@ -41,9 +42,8 @@ Page({ let that = this; util.request(api.CommentList, { valueId: that.data.id, type: 1, showType: 0, page: 1, size: 5 }).then(function (res) { if (res.errno === 0) { - that.setData({ - commentList: res.data.data, + commentList: res.data, commentCount: res.data.count }); } diff --git a/litemall-wx/pages/topicDetail/topicDetail.wxml b/litemall-wx/pages/topicDetail/topicDetail.wxml index da0123b6e6ddb109741e71a1b91df78067dbc48c..0d8b3cc409ba16ee181847f9c0d3028b967e7b9d 100644 --- a/litemall-wx/pages/topicDetail/topicDetail.wxml +++ b/litemall-wx/pages/topicDetail/topicDetail.wxml @@ -3,8 +3,28 @@