|
@@ -2,9 +2,15 @@ package com.qs.mp.web.controller.api.admin;
|
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.qs.mp.admin.domain.TicketBox;
|
|
|
import com.qs.mp.admin.domain.TicketPackage;
|
|
|
+import com.qs.mp.admin.domain.param.ChannelOrderPkgParam;
|
|
|
import com.qs.mp.admin.domain.param.ChannelOrderShipParam;
|
|
|
import com.qs.mp.admin.domain.param.UserDeliverOrderShipParam;
|
|
|
+import com.qs.mp.admin.domain.vo.TicketPackageVO;
|
|
|
+import com.qs.mp.admin.service.ITicketBoxService;
|
|
|
+import com.qs.mp.admin.service.ITicketPackageService;
|
|
|
import com.qs.mp.channel.domain.ChannelOrder;
|
|
|
import com.qs.mp.channel.domain.ChannelOrderDetail;
|
|
|
import com.qs.mp.channel.domain.ChannelOrderItem;
|
|
@@ -16,8 +22,10 @@ import com.qs.mp.common.annotation.Log;
|
|
|
import com.qs.mp.common.core.domain.AjaxResult;
|
|
|
import com.qs.mp.common.core.page.TableDataInfo;
|
|
|
import com.qs.mp.common.core.redis.RedisCache;
|
|
|
+import com.qs.mp.common.domain.DeliveryCompany;
|
|
|
import com.qs.mp.common.enums.BusinessType;
|
|
|
import com.qs.mp.common.enums.ErrorCodeEnum;
|
|
|
+import com.qs.mp.common.enums.TicketPkgStatusEnum;
|
|
|
import com.qs.mp.user.domain.UserDeliverOrderItem;
|
|
|
import com.qs.mp.web.controller.common.BaseApiController;
|
|
|
import io.swagger.annotations.Api;
|
|
@@ -51,6 +59,12 @@ public class ChannelOrderMgrController extends BaseApiController {
|
|
|
|
|
|
@Autowired
|
|
|
private IChannelOrderDetailService channelOrderDetailService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private ITicketBoxService ticketBoxService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private ITicketPackageService ticketPackageService;
|
|
|
|
|
|
@Autowired
|
|
|
private MapperFacade mapperFacade;
|
|
@@ -102,8 +116,7 @@ public class ChannelOrderMgrController extends BaseApiController {
|
|
|
.eq(ChannelOrderItem::getOrderId, channelOrderVO.getOrderId())));
|
|
|
return AjaxResult.success(channelOrderVO);
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
+
|
|
|
|
|
|
/**
|
|
|
* 订单发货
|
|
@@ -122,6 +135,65 @@ public class ChannelOrderMgrController extends BaseApiController {
|
|
|
return rtn ? AjaxResult.success() : AjaxResult.error("发货失败");
|
|
|
}
|
|
|
return AjaxResult.error("发货失败");
|
|
|
+ }
|
|
|
+
|
|
|
+ @PostMapping("/ticket/box/list")
|
|
|
+ @ApiOperation(value = "获取经销商订单盲票组列表", notes = "")
|
|
|
+ public AjaxResult list(@RequestBody ChannelOrder order) {
|
|
|
+ List<TicketBox> list = new ArrayList<TicketBox>();
|
|
|
+ if (null != order && StringUtils.isNotBlank(order.getOrderId())) {
|
|
|
+ // 查询订单明细
|
|
|
+ List<ChannelOrderItem> itemList = channelOrderItemService.list(
|
|
|
+ new LambdaQueryWrapper<ChannelOrderItem>().eq(ChannelOrderItem::getOrderId, order.getOrderId()));
|
|
|
+ if (null != itemList && itemList.size() > 0) {
|
|
|
+ List<String> boxIds = new ArrayList<String>();
|
|
|
+ for (ChannelOrderItem item : itemList) {
|
|
|
+ if (null != item && StringUtils.isNotBlank(item.getBoxId())) {
|
|
|
+ boxIds.add(item.getBoxId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (null != boxIds && boxIds.size() > 0) {
|
|
|
+ LambdaQueryWrapper<TicketBox> queryWrapper = new LambdaQueryWrapper<TicketBox>();
|
|
|
+ queryWrapper.in(TicketBox::getBoxId, boxIds);
|
|
|
+ list = ticketBoxService.list(queryWrapper);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return AjaxResult.success(list);
|
|
|
}
|
|
|
|
|
|
+ @PostMapping("/ticket/pkg/list")
|
|
|
+ @ApiOperation(value = "经销商订单发货筛选盲票包列表", notes = "")
|
|
|
+ public AjaxResult list(@RequestBody ChannelOrderPkgParam orderPkgParam) {
|
|
|
+ List<TicketPackageVO> list = new ArrayList<TicketPackageVO>();
|
|
|
+ QueryWrapper<TicketPackage> queryWrapper = new QueryWrapper<TicketPackage>();
|
|
|
+ queryWrapper.eq("t1.`status`", TicketPkgStatusEnum.FOR_SALE); // 筛选待售
|
|
|
+ if (null != orderPkgParam && StringUtils.isNotBlank(orderPkgParam.getPkgNo())) {
|
|
|
+ queryWrapper.like("t1.pkg_no", orderPkgParam.getPkgNo());
|
|
|
+ }
|
|
|
+ if (null != orderPkgParam && StringUtils.isNotBlank(orderPkgParam.getBoxId())) {
|
|
|
+ queryWrapper.eq("t1.box_id", orderPkgParam.getBoxId());
|
|
|
+ list = ticketPackageService.listTicketPackageVO(queryWrapper);
|
|
|
+ } else {
|
|
|
+ if (null != orderPkgParam && StringUtils.isNotBlank(orderPkgParam.getOrderId())) {
|
|
|
+ // 查询订单明细
|
|
|
+ List<ChannelOrderItem> itemList = channelOrderItemService
|
|
|
+ .list(new LambdaQueryWrapper<ChannelOrderItem>().eq(ChannelOrderItem::getOrderId,
|
|
|
+ orderPkgParam.getOrderId()));
|
|
|
+ if (null != itemList && itemList.size() > 0) {
|
|
|
+ List<String> boxIds = new ArrayList<String>();
|
|
|
+ for (ChannelOrderItem item : itemList) {
|
|
|
+ if (null != item && StringUtils.isNotBlank(item.getBoxId())) {
|
|
|
+ boxIds.add(item.getBoxId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (null != boxIds && boxIds.size() > 0) {
|
|
|
+ queryWrapper.in("t1.box_id", boxIds);
|
|
|
+ list = ticketPackageService.listTicketPackageVO(queryWrapper);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return AjaxResult.success(list);
|
|
|
+ }
|
|
|
}
|