Browse Source

Merge branch 'dev' into 'mp-server-test'

后台盲票详情回显关联商品

See merge request quanshu/mp-server!870
jiang hao 2 years ago
parent
commit
38a38619d5

+ 8 - 0
mp-admin/src/main/java/com/qs/mp/web/controller/api/admin/TicketBoxMgrController.java

@@ -87,6 +87,9 @@ public class TicketBoxMgrController extends BaseApiController {
 	@Autowired
 	private IChannelService channelService;
 
+	@Autowired
+	private ITicketBoxGoodsService ticketBoxGoodsService;
+
 	@Value("${mp.exportUrl}")
 	private String exportUrl;
 
@@ -159,6 +162,11 @@ public class TicketBoxMgrController extends BaseApiController {
 		}
 		TicketBox ticketBox = ticketBoxService.getById(param.getBoxId());
 		TicketBoxVO ticketBoxVO = mapperFacade.map(ticketBox, TicketBoxVO.class);
+
+		// 设置关联商品信息
+		QueryWrapper<TicketBoxGoods> ticketBoxGoodsQueryWrapper = new QueryWrapper<>();
+		ticketBoxVO.setGoodsList(ticketBoxGoodsService.listByQueryWrapper(ticketBoxGoodsQueryWrapper));
+
 		// 设置经销商信息
 		if (TicketBoxSaleChannelTypeEnum.PART.getValue().equals(ticketBox.getSaleChannelType())) {
 			List<TicketBoxChannel> ticketBoxChannelList = ticketBoxChannelService.list(new LambdaQueryWrapper<TicketBoxChannel>().eq(TicketBoxChannel::getBoxId, ticketBox.getBoxId()));

+ 4 - 0
mp-service/src/main/java/com/qs/mp/admin/domain/TicketBoxGoods.java

@@ -59,6 +59,10 @@ public class TicketBoxGoods implements Serializable {
     @TableField("ref_id")
     private String refId;
 
+    @ApiModelProperty("商品价值")
+    @TableField("value")
+    private Integer value;
+
     /**
      * 逻辑删除标识
      */

+ 20 - 0
mp-service/src/main/java/com/qs/mp/admin/domain/vo/TicketBoxGoodsVO.java

@@ -0,0 +1,20 @@
+package com.qs.mp.admin.domain.vo;
+
+import com.qs.mp.admin.domain.TicketBoxGoods;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * 盲票关联商品出参类
+ * @author Cup
+ * @date 2022/7/16
+ */
+@ApiModel("盲票关联商品出参类")
+@Data
+public class TicketBoxGoodsVO extends TicketBoxGoods {
+
+    @ApiModelProperty("商品成本")
+    private Integer cost;
+
+}

+ 5 - 5
mp-service/src/main/java/com/qs/mp/admin/domain/vo/TicketBoxVO.java

@@ -25,21 +25,21 @@ import lombok.Data;
 public class TicketBoxVO extends TicketBox {
 
   @ApiModelProperty("经销商信息")
-  List<Channel> channelList;
+  private List<Channel> channelList;
 
   @ApiModelProperty("奖级标签信息列表")
-  List<TicketAwardsLabelVO> ticketAwardsLabelList;
+  private List<TicketAwardsLabelVO> ticketAwardsLabelList;
 
   // 奖品列表(小程序端显示)
   @ApiModelProperty("奖品列表(小程序端显示)")
-  List<TicketAwardsPrizeVO> prizeList;
+  private List<TicketAwardsPrizeVO> prizeList;
 
   // 奖级列表(后台显示)
   @ApiModelProperty("奖级列表(后台显示)")
-  List<TicketAwardsVO> awardsList;
+  private List<TicketAwardsVO> awardsList;
 
   @ApiModelProperty("关联商品列表")
-  private List<TicketBoxGoods> goodsList;
+  private List<TicketBoxGoodsVO> goodsList;
 
   @ApiModelProperty("经销商分佣百分比")
   private BigDecimal channelCommRate;

+ 11 - 0
mp-service/src/main/java/com/qs/mp/admin/mapper/TicketBoxGoodsMapper.java

@@ -1,7 +1,12 @@
 package com.qs.mp.admin.mapper;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
 import com.qs.mp.admin.domain.TicketBoxGoods;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.qs.mp.admin.domain.vo.TicketBoxGoodsVO;
+import java.util.List;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * @auther quanshu
@@ -10,4 +15,10 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface TicketBoxGoodsMapper extends BaseMapper<TicketBoxGoods> {
 
+    /**
+     * 根据条件查询盲票商品关信息
+     * @param queryWrapper
+     * @return
+     */
+    List<TicketBoxGoodsVO> listByQueryWrapper(@Param(Constants.WRAPPER) QueryWrapper<TicketBoxGoods> queryWrapper);
 }

+ 9 - 0
mp-service/src/main/java/com/qs/mp/admin/service/ITicketBoxGoodsService.java

@@ -1,7 +1,10 @@
 package com.qs.mp.admin.service;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.qs.mp.admin.domain.TicketBoxGoods;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.qs.mp.admin.domain.vo.TicketBoxGoodsVO;
+import java.util.List;
 
 /**
  * <p>
@@ -13,4 +16,10 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface ITicketBoxGoodsService extends IService<TicketBoxGoods> {
 
+    /**
+     * 根据条件查询盲票商品关信息
+     * @param queryWrapper
+     * @return
+     */
+    List<TicketBoxGoodsVO> listByQueryWrapper(QueryWrapper<TicketBoxGoods> queryWrapper);
 }

+ 8 - 0
mp-service/src/main/java/com/qs/mp/admin/service/impl/TicketBoxGoodsServiceImpl.java

@@ -1,9 +1,12 @@
 package com.qs.mp.admin.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.qs.mp.admin.domain.TicketBoxGoods;
+import com.qs.mp.admin.domain.vo.TicketBoxGoodsVO;
 import com.qs.mp.admin.mapper.TicketBoxGoodsMapper;
 import com.qs.mp.admin.service.ITicketBoxGoodsService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import java.util.List;
 import org.springframework.stereotype.Service;
 
 /**
@@ -17,4 +20,9 @@ import org.springframework.stereotype.Service;
 @Service
 public class TicketBoxGoodsServiceImpl extends ServiceImpl<TicketBoxGoodsMapper, TicketBoxGoods> implements ITicketBoxGoodsService {
 
+    @Override
+    public List<TicketBoxGoodsVO> listByQueryWrapper(QueryWrapper<TicketBoxGoods> queryWrapper) {
+        queryWrapper.eq("t1.is_deleted", 0);
+        return getBaseMapper().listByQueryWrapper(queryWrapper);
+    }
 }

+ 10 - 0
mp-service/src/main/resources/mapper/admin/TicketBoxGoodsMapper.xml

@@ -19,4 +19,14 @@
         id, box_id, title, pic_url, ref_id, is_deleted, created_time, updated_time
     </sql>
 
+    <select id="listByQueryWrapper" resultType="com.qs.mp.admin.domain.vo.TicketBoxGoodsVO">
+        select if(t2.title is not null, t2.title, t1.title)       as title,
+               if(t2.pic_url is not null, t2.pic_url, t1.pic_url) as pic_url,
+               if(t2.value is not null, t2.value, t1.value)       as value,
+               if(t2.cost is not null, t2.cost, 0)                as cost,
+               t1.*
+        from mp_ticket_box_goods t1
+        left join mp_goods t2 on t1.ref_id = t2.goods_id
+            ${ew.customSqlSegment}
+    </select>
 </mapper>