Jelajahi Sumber

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

Dev

See merge request quanshu/mp-server!254
zhong chunping 3 tahun lalu
induk
melakukan
aff640b9dc

+ 8 - 17
mp-admin/src/main/java/com/qs/mp/web/controller/api/admin/ChannelOrderMgrController.java

@@ -1,15 +1,12 @@
 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.ChannelOrderQueryParam;
 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.Channel;
 import com.qs.mp.channel.domain.ChannelOrder;
@@ -25,13 +22,11 @@ import com.qs.mp.channel.service.IChannelService;
 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.common.service.IDeliveryCompanyService;
-import com.qs.mp.user.domain.UserDeliverOrderItem;
 import com.qs.mp.web.controller.common.BaseApiController;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -72,31 +67,27 @@ public class ChannelOrderMgrController extends BaseApiController {
   @Autowired 
   private IDeliveryCompanyService deliveryCompanyService;
   
-  @Autowired
-  private ITicketBoxService ticketBoxService;
-  
   @Autowired
   private ITicketPackageService ticketPackageService;
 
   @Autowired
   private MapperFacade mapperFacade;
 
-  @Autowired
-  private RedisCache redisCache;
-
   /**
    * 订单列表
    */
   @PostMapping("/list")
   @ApiOperation(value = "订单列表" , notes = "获取所有订单信息")
   @PreAuthorize("@ss.hasPermi('order:channel:list')")
-  public TableDataInfo list(@RequestBody JSONObject param) {
-   // Long channelId = SecurityUtils.getLoginUser().getChannelId();
-    Integer status = param.getInteger("status");
+  public TableDataInfo list(@RequestBody ChannelOrderQueryParam queryParam) {
     startPage();
     LambdaQueryWrapper<ChannelOrder> queryWrapper = new LambdaQueryWrapper<ChannelOrder>();
-    // queryWrapper.eq(ChannelOrder::getChannelId, channelId);
-    queryWrapper.eq(null != status, ChannelOrder::getStatus, status);
+    queryWrapper.eq(null != queryParam && null != queryParam.getChannelId(), ChannelOrder::getChannelId ,queryParam.getChannelId());
+    queryWrapper.eq(null != queryParam && StringUtils.isNotBlank(queryParam.getOrderId()), ChannelOrder::getOrderId ,queryParam.getOrderId());
+	queryWrapper.eq(null != queryParam && null != queryParam.getStatus(), ChannelOrder::getStatus ,queryParam.getStatus());
+	queryWrapper.ge(null != queryParam && null != queryParam.getStartTime(),  ChannelOrder::getCreatedTime, queryParam.getStartTime());
+	queryWrapper.le(null != queryParam && null != queryParam.getEndTime(), ChannelOrder::getCreatedTime, queryParam.getEndTime());
+	queryWrapper.like(null != queryParam && StringUtils.isNotBlank(queryParam.getTitle()), ChannelOrder::getTitle, queryParam.getTitle());
     queryWrapper.orderByDesc(ChannelOrder::getCreatedTime);
     List<ChannelOrder> channelOrders = channelOrderService.list(queryWrapper);
     List<ChannelOrderVO> channelOrderVOList = mapperFacade.mapAsList(channelOrders, ChannelOrderVO.class);

+ 196 - 224
mp-admin/src/main/java/com/qs/mp/web/controller/api/admin/UserDeliverOrderMgrController.java

@@ -7,19 +7,15 @@ import com.qs.mp.admin.domain.param.UserDeliverOrderShipParam;
 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.enums.BusinessType;
 import com.qs.mp.common.enums.ErrorCodeEnum;
-import com.qs.mp.pay.service.IWalletService;
 import com.qs.mp.user.domain.UserDeliverOrder;
 import com.qs.mp.user.domain.UserDeliverOrderItem;
 import com.qs.mp.user.domain.excel.DeliverOrderExcel;
 import com.qs.mp.user.domain.vo.OrderDeliverItemVO;
 import com.qs.mp.user.domain.vo.UserDeliverOrderVO;
-import com.qs.mp.user.service.IUserAddrService;
 import com.qs.mp.user.service.IUserDeliverOrderItemService;
 import com.qs.mp.user.service.IUserDeliverOrderService;
-import com.qs.mp.user.service.IUserPrizeStorageService;
 import com.qs.mp.utils.ExcelUtil;
 import com.qs.mp.web.controller.common.BaseApiController;
 import io.swagger.annotations.Api;
@@ -45,224 +41,200 @@ import org.springframework.web.bind.annotation.RestController;
 @AllArgsConstructor
 public class UserDeliverOrderMgrController extends BaseApiController {
 
-  @Autowired
-  private IUserDeliverOrderService userDeliverOrderService;
-
-  @Autowired
-  private IUserDeliverOrderItemService userDeliverOrderItemService;
-
-  @Autowired
-  private IUserPrizeStorageService userPrizeStorageService;
-
-  @Autowired
-  private IUserAddrService userAddrService;
-
-  @Autowired
-  private IWalletService walletService;
-
-  @Autowired
-  private MapperFacade mapperFacade;
-
-  @Autowired
-  private RedisCache redisCache;
-
-  /**
-   * 用户提货订单列表
-   */
-  @PostMapping("/list")
-  @ApiOperation(value = "用户提货订单列表", notes = "获取用户提货订单列表")
-  @PreAuthorize("@ss.hasPermi('order:deliver:list')")
-  public TableDataInfo list(@RequestBody UserDeliverOrderQueryParam queryParam) {
-    startPage();
-    QueryWrapper<UserDeliverOrder> queryWrapper = new QueryWrapper<UserDeliverOrder>();
-    queryWrapper.eq(null != queryParam && StringUtils.isNotBlank(queryParam.getOrderId()),
-        "t1.order_id", queryParam.getOrderId());
-    queryWrapper.eq(null != queryParam && null != queryParam.getStatus(), "t1.`status`",
-        queryParam.getStatus());
-    queryWrapper.ge(null != queryParam && null != queryParam.getStartTime(), "t1.created_time",
-        queryParam.getStartTime());
-    queryWrapper.le(null != queryParam && null != queryParam.getEndTime(), "t1.created_time",
-        queryParam.getEndTime());
-    queryWrapper.like(null != queryParam && StringUtils.isNotBlank(queryParam.getNickName()),
-        "t2.nick_name", queryParam.getNickName());
-    queryWrapper.like(null != queryParam && StringUtils.isNotBlank(queryParam.getTitle()),
-        "t3.title", queryParam.getTitle());
-    queryWrapper.orderByDesc("t1.order_id");
-    List<UserDeliverOrderVO> userDeliverOrderVOList = userDeliverOrderService.selectUserDeliverOrderVoList(
-        queryWrapper);
-    for (UserDeliverOrderVO userDeliverOrderVO : userDeliverOrderVOList) {
-      userDeliverOrderVO.setItems(
-          userDeliverOrderItemService.list(new LambdaQueryWrapper<UserDeliverOrderItem>()
-              .eq(UserDeliverOrderItem::getOrderId, userDeliverOrderVO.getOrderId())));
-    }
-    TableDataInfo rspData = getDataTable(userDeliverOrderVOList);
-    return rspData;
-  }
-
-  /**
-   * 订单详情
-   */
-  @PostMapping("/detail")
-  @ApiOperation(value = "订单详情", notes = "在订单列表页面查看详情")
-  @PreAuthorize("@ss.hasPermi('order:deliver:query')")
-  public AjaxResult query(@RequestBody UserDeliverOrder order) {
-    if (null == order || StringUtils.isBlank(order.getOrderId())) {
-      return error(ErrorCodeEnum.ERROR_CODE_1001);
-    }
-    LambdaQueryWrapper<UserDeliverOrder> queryWrapper = new LambdaQueryWrapper<UserDeliverOrder>();
-    queryWrapper.eq(UserDeliverOrder::getOrderId, order.getOrderId());
-    UserDeliverOrder userDeliverOrder = userDeliverOrderService.getOne(queryWrapper);
-    UserDeliverOrderVO userDeliverOrderVO = mapperFacade.map(userDeliverOrder,
-        UserDeliverOrderVO.class);
-
-    List<UserDeliverOrderItem> orderItems = userDeliverOrderItemService.list(
-        new LambdaQueryWrapper<UserDeliverOrderItem>()
-            .eq(UserDeliverOrderItem::getOrderId, userDeliverOrderVO.getOrderId()));
-
-    userDeliverOrderVO.setItems(orderItems);
-    // 获取物流详情
-    userDeliverOrderVO.setDeliverList(getDeliverItemList(order.getOrderId(), orderItems));
-    return AjaxResult.success(userDeliverOrderVO);
-  }
-
-  // 获取用户提货订单物流封装列表
-  private List<OrderDeliverItemVO> getDeliverItemList(String orderId,
-      List<UserDeliverOrderItem> orderItems) {
-    List<OrderDeliverItemVO> itemList = new ArrayList<OrderDeliverItemVO>();
-    // 1.查询物流公司信息
-    itemList = userDeliverOrderItemService.selectOrderDeliverItemVOList(orderId);
-    // 2.查询物流包裹内的商品信息
-    for (OrderDeliverItemVO itemVO : itemList) {
-      for (UserDeliverOrderItem item : orderItems) {
-        if (itemVO.getDeliveryFlowId().equals(item.getDeliveryFlowId())) {
-          UserDeliverOrderItem flowItem = new UserDeliverOrderItem();
-          BeanUtils.copyProperties(item, flowItem);
-          itemVO.getItems().add(flowItem);
-        }
-      }
-    }
-    return itemList;
-  }
-
-
-  /**
-   * 订单发货
-   */
-  @Log(title = "用户提货订单发货", businessType = BusinessType.UPDATE)
-  @PostMapping("/ship")
-  @ApiOperation(value = "订单发货", notes = "在订单发货页面提交")
-  @PreAuthorize("@ss.hasPermi('order:deliver:ship')")
-  public AjaxResult ship(@RequestBody UserDeliverOrderShipParam shipParam) {
-    if (null == shipParam || StringUtils.isBlank(shipParam.getOrderId())) {
-      return error(ErrorCodeEnum.ERROR_CODE_1001);
-    }
-    List<UserDeliverOrderItem> itemList = new ArrayList<UserDeliverOrderItem>();
-    if (null != shipParam && null != shipParam.getItemIds()
-        && shipParam.getItemIds().size() > 0) {
-      Date deliveryTime = new Date();
-      for (String itemId : shipParam.getItemIds()) {
-        if (StringUtils.isNotBlank(itemId)) {
-          UserDeliverOrderItem item = new UserDeliverOrderItem();
-          item.setItemId(itemId);
-          item.setDeliveryId(shipParam.getDeliveryId());
-          item.setDeliveryFlowId(shipParam.getDeliveryFlowId());
-          item.setDeliveryTime(deliveryTime);
-          itemList.add(item);
-        }
-      }
-    }
-    if (null != itemList && itemList.size() > 0) {
-      boolean rtn = userDeliverOrderService.userDeliverOrderShip(shipParam.getOrderId(), itemList);
-      return rtn ? AjaxResult.success() : AjaxResult.error("发货失败");
-    }
-    return AjaxResult.error("发货失败");
-  }
-
-  @Log(title = "提货订单导出", businessType = BusinessType.EXPORT)
-  @PostMapping("/export")
-  @PreAuthorize("@ss.hasPermi('order:deliver:export')")
-  public AjaxResult export(@RequestBody UserDeliverOrderQueryParam queryParam) {
-
-    List<DeliverOrderExcel> excelList = new ArrayList<DeliverOrderExcel>();
-    List<UserDeliverOrderVO> listAll = new ArrayList<UserDeliverOrderVO>();
-    // 首先查询要导出的数据总数
-    QueryWrapper<UserDeliverOrder> queryWrapper = new QueryWrapper<UserDeliverOrder>();
-    queryWrapper.eq(null != queryParam && StringUtils.isNotBlank(queryParam.getOrderId()),
-        "t1.order_id", queryParam.getOrderId());
-    queryWrapper.eq(null != queryParam && null != queryParam.getStatus(), "t1.`status`",
-        queryParam.getStatus());
-    queryWrapper.ge(null != queryParam && null != queryParam.getStartTime(), "t1.created_time",
-        queryParam.getStartTime());
-    queryWrapper.le(null != queryParam && null != queryParam.getEndTime(), "t1.created_time",
-        queryParam.getEndTime());
-    queryWrapper.like(null != queryParam && StringUtils.isNotBlank(queryParam.getNickName()),
-        "t2.nick_name", queryParam.getNickName());
-    queryWrapper.like(null != queryParam && StringUtils.isNotBlank(queryParam.getTitle()),
-        "t3.title", queryParam.getTitle());
-    queryWrapper.orderByDesc("t1.order_id");
-    int totalSize = userDeliverOrderService.selectUserDeliverOrderCount(queryWrapper);
-    if (totalSize == 0) {
-      return AjaxResult.error("没有符合条件的用户提货订单");
-    }
-    int pageSize = 2000;
-    if (totalSize > pageSize) {
-      int totalPage = totalSize % pageSize == 0 ? totalSize / pageSize : totalSize / pageSize + 1;
-      for (int i = 0; i < totalPage; i++) {
-        queryWrapper.last("limit " + (i * pageSize) + ", " + pageSize);
-        List<UserDeliverOrderVO> userDeliverOrderVOList = userDeliverOrderService.selectUserDeliverOrderVoList(
-            queryWrapper);
-        for (UserDeliverOrderVO userDeliverOrderVO : userDeliverOrderVOList) {
-          userDeliverOrderVO.setItems(
-              userDeliverOrderItemService.list(new LambdaQueryWrapper<UserDeliverOrderItem>()
-                  .eq(UserDeliverOrderItem::getOrderId, userDeliverOrderVO.getOrderId())));
-        }
-        if (null != userDeliverOrderVOList && userDeliverOrderVOList.size() > 0) {
-          listAll.addAll(userDeliverOrderVOList);
-        }
-      }
-    } else {
-      listAll = userDeliverOrderService.selectUserDeliverOrderVoList(queryWrapper);
-      for (UserDeliverOrderVO userDeliverOrderVO : listAll) {
-        userDeliverOrderVO.setItems(
-            userDeliverOrderItemService.list(new LambdaQueryWrapper<UserDeliverOrderItem>()
-                .eq(UserDeliverOrderItem::getOrderId, userDeliverOrderVO.getOrderId())));
-      }
-    }
-
-    if (null != listAll && listAll.size() > 0) {
-      listAll.sort(Comparator.comparing(UserDeliverOrderVO::getOrderId));
-      for (UserDeliverOrderVO deliverOrder : listAll) {
-        if (null != deliverOrder && StringUtils.isNotBlank(deliverOrder.getOrderId())
-            && StringUtils.isNotBlank(deliverOrder.getReceiver())
-            && StringUtils.isNotBlank(deliverOrder.getTel())
-            && StringUtils.isNotBlank(deliverOrder.getProvince())
-            && StringUtils.isNotBlank(deliverOrder.getCity())
-            && StringUtils.isNotBlank(deliverOrder.getArea())
-            && StringUtils.isNotBlank(deliverOrder.getAddress()) && null != deliverOrder.getItems()
-            && deliverOrder.getItems().size() > 0) {
-          for (UserDeliverOrderItem userDeliverOrderItem : deliverOrder.getItems()) {
-            if (null != userDeliverOrderItem) {
-              DeliverOrderExcel deliverOrderExcel = new DeliverOrderExcel();
-              deliverOrderExcel.setTitle(userDeliverOrderItem.getTitle());
-              deliverOrderExcel.setProperties(userDeliverOrderItem.getProperties());
-              deliverOrderExcel.setGoodsNum(userDeliverOrderItem.getGoodsNum());
-              deliverOrderExcel.setCreatedTime(deliverOrder.getCreatedTime());
-              deliverOrderExcel.setOrderId(deliverOrder.getOrderId());
-              deliverOrderExcel.setReceiver(deliverOrder.getReceiver());
-              deliverOrderExcel.setTel(deliverOrder.getTel());
-              String address = deliverOrder.getProvince() + deliverOrder.getCity()
-                  + deliverOrder.getArea() + deliverOrder.getAddress();
-              deliverOrderExcel.setAddress(address);
-              deliverOrderExcel.setStatus(deliverOrder.getStatus().getDesc());
-              deliverOrderExcel.setItemStatus(
-                  StringUtils.isNotBlank(userDeliverOrderItem.getDeliveryFlowId()) ? "已发货" : "未发货");
-              excelList.add(deliverOrderExcel);
-            }
-          }
-        }
-      }
-    }
-    ExcelUtil<DeliverOrderExcel> util = new ExcelUtil<DeliverOrderExcel>(DeliverOrderExcel.class);
-    return util.exportExcel(excelList, "用户提货订单导出", false);
-  }
+	@Autowired
+	private IUserDeliverOrderService userDeliverOrderService;
+
+	@Autowired
+	private IUserDeliverOrderItemService userDeliverOrderItemService;
+
+//	@Autowired
+//	private IUserPrizeStorageService userPrizeStorageService;
+//
+//	@Autowired
+//	private IUserAddrService userAddrService;
+//
+//	@Autowired
+//	private IWalletService walletService;
+
+	@Autowired
+	private MapperFacade mapperFacade;
+
+//	@Autowired
+//	private RedisCache redisCache;
+
+	/**
+	 * 用户提货订单列表
+	 */
+	@PostMapping("/list")
+	@ApiOperation(value = "用户提货订单列表", notes = "获取用户提货订单列表")
+	@PreAuthorize("@ss.hasPermi('order:deliver:list')")
+	public TableDataInfo list(@RequestBody UserDeliverOrderQueryParam queryParam) {
+		startPage();
+		QueryWrapper<UserDeliverOrder> queryWrapper = new QueryWrapper<UserDeliverOrder>();
+		queryWrapper.eq(null != queryParam && StringUtils.isNotBlank(queryParam.getOrderId()), "t1.order_id", queryParam.getOrderId());
+		queryWrapper.eq(null != queryParam && null != queryParam.getStatus(), "t1.`status`", queryParam.getStatus());
+		queryWrapper.ge(null != queryParam && null != queryParam.getStartTime(), "t1.created_time", queryParam.getStartTime());
+		queryWrapper.le(null != queryParam && null != queryParam.getEndTime(), "t1.created_time", queryParam.getEndTime());
+		queryWrapper.like(null != queryParam && StringUtils.isNotBlank(queryParam.getNickName()), "t2.nick_name", queryParam.getNickName());
+		queryWrapper.like(null != queryParam && StringUtils.isNotBlank(queryParam.getTitle()), "t3.title", queryParam.getTitle());
+		queryWrapper.orderByDesc("t1.order_id");
+		List<UserDeliverOrderVO> userDeliverOrderVOList = userDeliverOrderService.selectUserDeliverOrderVoList(queryWrapper);
+		for (UserDeliverOrderVO userDeliverOrderVO : userDeliverOrderVOList) {
+			userDeliverOrderVO.setItems(userDeliverOrderItemService.list(new LambdaQueryWrapper<UserDeliverOrderItem>()
+					.eq(UserDeliverOrderItem::getOrderId, userDeliverOrderVO.getOrderId())));
+		}
+		TableDataInfo rspData = getDataTable(userDeliverOrderVOList);
+		return rspData;
+	}
+
+	/**
+	 * 订单详情
+	 */
+	@PostMapping("/detail")
+	@ApiOperation(value = "订单详情", notes = "在订单列表页面查看详情")
+	@PreAuthorize("@ss.hasPermi('order:deliver:query')")
+	public AjaxResult query(@RequestBody UserDeliverOrder order) {
+		if (null == order || StringUtils.isBlank(order.getOrderId())) {
+			return error(ErrorCodeEnum.ERROR_CODE_1001);
+		}
+		UserDeliverOrderVO userDeliverOrderVO = userDeliverOrderService.selectUserDeliverOrderVo(order.getOrderId());
+		if (null == userDeliverOrderVO || StringUtils.isBlank(userDeliverOrderVO.getOrderId())) {
+			return error(ErrorCodeEnum.ERROR_CODE_1001);
+		}
+		List<UserDeliverOrderItem> orderItems = userDeliverOrderItemService.list(new LambdaQueryWrapper<UserDeliverOrderItem>()
+				.eq(UserDeliverOrderItem::getOrderId, userDeliverOrderVO.getOrderId()));
+		userDeliverOrderVO.setItems(orderItems);
+		// 获取物流详情
+		userDeliverOrderVO.setDeliverList(getDeliverItemList(order.getOrderId(), orderItems));
+		return AjaxResult.success(userDeliverOrderVO);
+	}
+
+	// 获取用户提货订单物流封装列表
+	private List<OrderDeliverItemVO> getDeliverItemList(String orderId, List<UserDeliverOrderItem> orderItems) {
+		List<OrderDeliverItemVO> itemList = new ArrayList<OrderDeliverItemVO>();
+		// 1.查询物流公司信息
+		itemList = userDeliverOrderItemService.selectOrderDeliverItemVOList(orderId);
+		// 2.查询物流包裹内的商品信息
+		for (OrderDeliverItemVO itemVO : itemList) {
+			for (UserDeliverOrderItem item : orderItems) {
+				if (itemVO.getDeliveryFlowId().equals(item.getDeliveryFlowId())) {
+					UserDeliverOrderItem flowItem = new UserDeliverOrderItem();
+					BeanUtils.copyProperties(item, flowItem);
+					itemVO.getItems().add(flowItem);
+				}
+			}
+		}
+		return itemList;
+	}
+
+	/**
+	 * 订单发货
+	 */
+	@Log(title = "用户提货订单发货", businessType = BusinessType.UPDATE)
+	@PostMapping("/ship")
+	@ApiOperation(value = "订单发货", notes = "在订单发货页面提交")
+	@PreAuthorize("@ss.hasPermi('order:deliver:ship')")
+	public AjaxResult ship(@RequestBody UserDeliverOrderShipParam shipParam) {
+		if (null == shipParam || StringUtils.isBlank(shipParam.getOrderId())) {
+			return error(ErrorCodeEnum.ERROR_CODE_1001);
+		}
+		List<UserDeliverOrderItem> itemList = new ArrayList<UserDeliverOrderItem>();
+		if (null != shipParam && null != shipParam.getItemIds() && shipParam.getItemIds().size() > 0) {
+			Date deliveryTime = new Date();
+			for (String itemId : shipParam.getItemIds()) {
+				if (StringUtils.isNotBlank(itemId)) {
+					UserDeliverOrderItem item = new UserDeliverOrderItem();
+					item.setItemId(itemId);
+					item.setDeliveryId(shipParam.getDeliveryId());
+					item.setDeliveryFlowId(shipParam.getDeliveryFlowId());
+					item.setDeliveryTime(deliveryTime);
+					itemList.add(item);
+				}
+			}
+		}
+		if (null != itemList && itemList.size() > 0) {
+			boolean rtn = userDeliverOrderService.userDeliverOrderShip(shipParam.getOrderId(), itemList);
+			return rtn ? AjaxResult.success() : AjaxResult.error("发货失败");
+		}
+		return AjaxResult.error("发货失败");
+	}
+
+	@Log(title = "提货订单导出", businessType = BusinessType.EXPORT)
+	@PostMapping("/export")
+	@PreAuthorize("@ss.hasPermi('order:deliver:export')")
+	public AjaxResult export(@RequestBody UserDeliverOrderQueryParam queryParam) {
+
+		List<DeliverOrderExcel> excelList = new ArrayList<DeliverOrderExcel>();
+		List<UserDeliverOrderVO> listAll = new ArrayList<UserDeliverOrderVO>();
+		// 首先查询要导出的数据总数
+		QueryWrapper<UserDeliverOrder> queryWrapper = new QueryWrapper<UserDeliverOrder>();
+		queryWrapper.eq(null != queryParam && StringUtils.isNotBlank(queryParam.getOrderId()), "t1.order_id", queryParam.getOrderId());
+		queryWrapper.eq(null != queryParam && null != queryParam.getStatus(), "t1.`status`", queryParam.getStatus());
+		queryWrapper.ge(null != queryParam && null != queryParam.getStartTime(), "t1.created_time", queryParam.getStartTime());
+		queryWrapper.le(null != queryParam && null != queryParam.getEndTime(), "t1.created_time", queryParam.getEndTime());
+		queryWrapper.like(null != queryParam && StringUtils.isNotBlank(queryParam.getNickName()), "t2.nick_name", queryParam.getNickName());
+		queryWrapper.like(null != queryParam && StringUtils.isNotBlank(queryParam.getTitle()), "t3.title", queryParam.getTitle());
+		queryWrapper.orderByDesc("t1.order_id");
+		int totalSize = userDeliverOrderService.selectUserDeliverOrderCount(queryWrapper);
+		if (totalSize == 0) {
+			return AjaxResult.error("没有符合条件的用户提货订单");
+		}
+		int pageSize = 2000;
+		if (totalSize > pageSize) {
+			int totalPage = totalSize % pageSize == 0 ? totalSize / pageSize : totalSize / pageSize + 1;
+			for (int i = 0; i < totalPage; i++) {
+				queryWrapper.last("limit " + (i * pageSize) + ", " + pageSize);
+				List<UserDeliverOrderVO> userDeliverOrderVOList = userDeliverOrderService.selectUserDeliverOrderVoList(queryWrapper);
+				for (UserDeliverOrderVO userDeliverOrderVO : userDeliverOrderVOList) {
+					userDeliverOrderVO.setItems(userDeliverOrderItemService.list(new LambdaQueryWrapper<UserDeliverOrderItem>()
+									.eq(UserDeliverOrderItem::getOrderId, userDeliverOrderVO.getOrderId())));
+				}
+				if (null != userDeliverOrderVOList && userDeliverOrderVOList.size() > 0) {
+					listAll.addAll(userDeliverOrderVOList);
+				}
+			}
+		} else {
+			listAll = userDeliverOrderService.selectUserDeliverOrderVoList(queryWrapper);
+			for (UserDeliverOrderVO userDeliverOrderVO : listAll) {
+				userDeliverOrderVO.setItems(userDeliverOrderItemService.list(new LambdaQueryWrapper<UserDeliverOrderItem>()
+								.eq(UserDeliverOrderItem::getOrderId, userDeliverOrderVO.getOrderId())));
+			}
+		}
+
+		if (null != listAll && listAll.size() > 0) {
+			listAll.sort(Comparator.comparing(UserDeliverOrderVO::getOrderId));
+			for (UserDeliverOrderVO deliverOrder : listAll) {
+				if (null != deliverOrder && StringUtils.isNotBlank(deliverOrder.getOrderId())
+						&& StringUtils.isNotBlank(deliverOrder.getReceiver())
+						&& StringUtils.isNotBlank(deliverOrder.getTel())
+						&& StringUtils.isNotBlank(deliverOrder.getProvince())
+						&& StringUtils.isNotBlank(deliverOrder.getCity())
+						&& StringUtils.isNotBlank(deliverOrder.getArea())
+						&& StringUtils.isNotBlank(deliverOrder.getAddress()) && null != deliverOrder.getItems()
+						&& deliverOrder.getItems().size() > 0) {
+					for (UserDeliverOrderItem userDeliverOrderItem : deliverOrder.getItems()) {
+						if (null != userDeliverOrderItem) {
+							DeliverOrderExcel deliverOrderExcel = new DeliverOrderExcel();
+							deliverOrderExcel.setTitle(userDeliverOrderItem.getTitle());
+							deliverOrderExcel.setProperties(userDeliverOrderItem.getProperties());
+							deliverOrderExcel.setGoodsNum(userDeliverOrderItem.getGoodsNum());
+							deliverOrderExcel.setCreatedTime(deliverOrder.getCreatedTime());
+							deliverOrderExcel.setOrderId(deliverOrder.getOrderId());
+							deliverOrderExcel.setReceiver(deliverOrder.getReceiver());
+							deliverOrderExcel.setTel(deliverOrder.getTel());
+							String address = deliverOrder.getProvince() + deliverOrder.getCity()
+									+ deliverOrder.getArea() + deliverOrder.getAddress();
+							deliverOrderExcel.setAddress(address);
+							deliverOrderExcel.setStatus(deliverOrder.getStatus().getDesc());
+							deliverOrderExcel.setItemStatus(
+									StringUtils.isNotBlank(userDeliverOrderItem.getDeliveryFlowId()) ? "已发货" : "未发货");
+							excelList.add(deliverOrderExcel);
+						}
+					}
+				}
+			}
+		}
+		ExcelUtil<DeliverOrderExcel> util = new ExcelUtil<DeliverOrderExcel>(DeliverOrderExcel.class);
+		return util.exportExcel(excelList, "用户提货订单导出", false);
+	}
 }

+ 46 - 0
mp-service/src/main/java/com/qs/mp/admin/domain/param/ChannelOrderQueryParam.java

@@ -0,0 +1,46 @@
+package com.qs.mp.admin.domain.param;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.util.Date;
+
+import lombok.Data;
+
+/**
+ * @describe 经销商订单列表查询参数
+ * @auther quanshu
+ * @create 2022-03-07 20:43:44
+ */
+@ApiModel(value = "经销商订单列表查询参数")
+@Data
+public class ChannelOrderQueryParam {
+
+
+
+	@ApiModelProperty(value = "商品名称", required = false)
+	private String title;
+
+	@ApiModelProperty(value = "订单编号", required = false)
+	private String orderId;
+	
+	@ApiModelProperty(value = "经销商ID", required = false)
+	private Long channelId;
+
+	@ApiModelProperty(value = "订单状态", required = false)
+	private Integer status;
+	
+	/**
+	 * 下单区间-开始时间
+	 */
+	@ApiModelProperty(value = "开始时间", required = false)
+	private Date startTime;
+
+	/**
+	 * 下单区间-截止时间
+	 */
+	@ApiModelProperty(value = "截止时间", required = false)
+	private Date endTime;
+
+
+}

+ 9 - 0
mp-service/src/main/java/com/qs/mp/user/mapper/UserDeliverOrderMapper.java

@@ -34,4 +34,13 @@ public interface UserDeliverOrderMapper extends BaseMapper<UserDeliverOrder> {
 	 * @return
 	 */
 	public int selectUserDeliverOrderCount(@Param(Constants.WRAPPER) Wrapper<UserDeliverOrder> wrapper);
+	
+	
+	/**
+	 * 获取用户提货订单信息VO
+	 * 
+	 * @param wrapper
+	 * @return
+	 */
+	public UserDeliverOrderVO selectUserDeliverOrderVo(@Param("orderId") String orderId);
 }

+ 9 - 0
mp-service/src/main/java/com/qs/mp/user/service/IUserDeliverOrderService.java

@@ -67,6 +67,15 @@ public interface IUserDeliverOrderService extends IService<UserDeliverOrder> {
 	public int selectUserDeliverOrderCount(Wrapper<UserDeliverOrder> wrapper);
 	
 	
+	/**
+	 * 获取用户提货订单信息VO
+	 * 
+	 * @param wrapper
+	 * @return
+	 */
+	public UserDeliverOrderVO selectUserDeliverOrderVo(String orderId);
+	
+	
 	/**
 	 * 用户提货订单发货
 	 * @param orderId

+ 7 - 0
mp-service/src/main/java/com/qs/mp/user/service/impl/UserDeliverOrderServiceImpl.java

@@ -171,4 +171,11 @@ public class UserDeliverOrderServiceImpl extends ServiceImpl<UserDeliverOrderMap
 		}
 		return false;
 	}
+
+	@Override
+	public UserDeliverOrderVO selectUserDeliverOrderVo(String orderId) {
+		return getBaseMapper().selectUserDeliverOrderVo(orderId);
+	}
+	
+	
 }

+ 9 - 0
mp-service/src/main/resources/mapper/user/UserDeliverOrderMapper.xml

@@ -46,5 +46,14 @@
 		${ew.customSqlSegment}
 	</select>
 	
+	 <!-- 查询用户提货订单列表 -->
+    <select id="selectUserDeliverOrderVo" resultType="com.qs.mp.user.domain.vo.UserDeliverOrderVO">
+		select t1.* , t2.nick_name nickName
+		from mp_user_deliver_order t1
+		left join sys_user t2 on t1.user_id = t2.user_id
+		where t1.order_id = #{orderId}
+	</select>
+	
+	
 
 </mapper>