Explorar o código

盲票组回显指定的经销商信息

cup %!s(int64=3) %!d(string=hai) anos
pai
achega
1320f57aeb

+ 23 - 11
mp-admin/src/main/java/com/qs/mp/web/controller/api/admin/TicketBoxMgrController.java

@@ -5,15 +5,13 @@ import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.qs.mp.admin.domain.*;
 import com.qs.mp.admin.domain.excel.TicketExcel;
 import com.qs.mp.admin.domain.param.*;
 import com.qs.mp.admin.domain.vo.TicketAwardsVO;
 import com.qs.mp.admin.domain.vo.TicketBoxVO;
-import com.qs.mp.admin.service.ITicketAwardsPrizeService;
-import com.qs.mp.admin.service.ITicketAwardsService;
-import com.qs.mp.admin.service.ITicketBoxService;
-import com.qs.mp.admin.service.ITicketService;
+import com.qs.mp.admin.service.*;
 import com.qs.mp.channel.domain.Channel;
 import com.qs.mp.channel.domain.param.ChannelParam;
 import com.qs.mp.channel.domain.vo.ChannelVO;
@@ -23,13 +21,7 @@ import com.qs.mp.common.annotation.Log;
 import com.qs.mp.common.constant.UserConstants;
 import com.qs.mp.common.core.domain.AjaxResult;
 import com.qs.mp.common.core.page.TableDataInfo;
-import com.qs.mp.common.enums.BusinessType;
-import com.qs.mp.common.enums.ChannelRoleEnum;
-import com.qs.mp.common.enums.ErrorCodeEnum;
-import com.qs.mp.common.enums.MqTopicType;
-import com.qs.mp.common.enums.ServerEnvEnum;
-import com.qs.mp.common.enums.TicketBoxStatusEnum;
-import com.qs.mp.common.enums.TicketTypeEnum;
+import com.qs.mp.common.enums.*;
 import com.qs.mp.common.pulsar.PulsarClientService;
 import com.qs.mp.common.utils.LogUtil;
 import com.qs.mp.common.utils.RSAUtil;
@@ -45,6 +37,7 @@ import java.util.Comparator;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 import ma.glasnost.orika.MapperFacade;
 import org.apache.commons.lang3.StringUtils;
@@ -86,6 +79,12 @@ public class TicketBoxMgrController extends BaseApiController {
 	@Autowired
 	private MapperFacade mapperFacade;
 
+	@Autowired
+	private ITicketBoxChannelService ticketBoxChannelService;
+
+	@Autowired
+	private IChannelService channelService;
+
 	@Value("${mp.exportUrl}")
 	private String exportUrl;
 
@@ -145,12 +144,25 @@ public class TicketBoxMgrController extends BaseApiController {
 	@PostMapping("/detail")
 	@PreAuthorize("@ss.hasPermi('business:ticket:query')")
 	@ApiOperation(value = "查看盲票详情" , notes = "根据盲票组ID,获取盲票信息")
+	@ApiResponses(
+			@ApiResponse(code = 200, message = "查询成功", response = TicketBoxVO.class)
+	)
 	public AjaxResult getInfo(@RequestBody TicketBoxParam param) {
 		if (com.qs.mp.common.utils.StringUtils.isBlank(param.getBoxId())) {
 			return AjaxResult.error("参数异常,盲票组ID缺失");
 		}
 		TicketBox ticketBox = ticketBoxService.getById(param.getBoxId());
 		TicketBoxVO ticketBoxVO = mapperFacade.map(ticketBox, TicketBoxVO.class);
+		// 设置经销商信息
+		if (TicketBoxSaleChannelTypeEnum.PART.getValue().equals(ticketBox.getSaleChannelType())) {
+			List<TicketBoxChannel> ticketBoxChannelList = ticketBoxChannelService.list(new LambdaQueryWrapper<TicketBoxChannel>().eq(TicketBoxChannel::getBoxId, ticketBox.getBoxId()));
+			if (CollectionUtils.isNotEmpty(ticketBoxChannelList)) {
+				List<Long> channelIds = ticketBoxChannelList.stream().map(TicketBoxChannel::getChannelId).collect(Collectors.toList());
+				List<Channel> channelList = channelService.list(new LambdaQueryWrapper<Channel>().select(Channel::getChannelId, Channel::getName)
+						.in(Channel::getChannelId, channelIds));
+				ticketBoxVO.setChannelList(channelList);
+			}
+		}
 		List<TicketAwards> ticketAwardsList = ticketAwardsService.list(new LambdaQueryWrapper<TicketAwards>()
 				.eq(TicketAwards::getBoxId, ticketBox.getBoxId()).orderByAsc(TicketAwards::getSort));
 		List<TicketAwardsVO> ticketAwardsVOS = mapperFacade.mapAsList(ticketAwardsList, TicketAwardsVO.class);

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

@@ -3,6 +3,8 @@ package com.qs.mp.admin.domain.vo;
 import com.qs.mp.admin.domain.TicketBox;
 import java.util.List;
 
+import com.qs.mp.channel.domain.Channel;
+import com.qs.mp.channel.domain.vo.ChannelVO;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -15,6 +17,10 @@ import lombok.Data;
 @Data
 @ApiModel(value = "票组出参类")
 public class TicketBoxVO extends TicketBox {
+
+  @ApiModelProperty("经销商信息")
+  List<Channel> channelList;
+
   // 奖品列表(小程序端显示)
   @ApiModelProperty("奖品列表(小程序端显示)")
   List<TicketAwardsPrizeVO> prizeList;