|
@@ -1,6 +1,8 @@
|
|
|
package com.qs.mp.web.controller.api.user;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.alibaba.fastjson.serializer.SerializerFeature;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.qs.mp.channel.domain.ChannelOrder;
|
|
|
import com.qs.mp.channel.domain.ChannelOrderItem;
|
|
@@ -12,6 +14,8 @@ import com.qs.mp.common.core.redis.RedisCache;
|
|
|
import com.qs.mp.common.enums.BizTypeEnum;
|
|
|
import com.qs.mp.common.enums.PrizeStorageStatusEnum;
|
|
|
import com.qs.mp.common.exception.ServiceException;
|
|
|
+import com.qs.mp.common.service.IDeliveryCompanyService;
|
|
|
+import com.qs.mp.common.utils.StringUtils;
|
|
|
import com.qs.mp.framework.redis.RedisKey;
|
|
|
import com.qs.mp.pay.service.IWalletService;
|
|
|
import com.qs.mp.user.domain.UserAddr;
|
|
@@ -29,12 +33,15 @@ import com.qs.mp.utils.SecurityUtils;
|
|
|
import com.qs.mp.web.controller.common.BaseApiController;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.Arrays;
|
|
|
import java.util.List;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
import javax.validation.Valid;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
import ma.glasnost.orika.MapperFacade;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.util.CollectionUtils;
|
|
|
import org.springframework.web.bind.annotation.PostMapping;
|
|
|
import org.springframework.web.bind.annotation.RequestBody;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
@@ -62,6 +69,9 @@ public class UserDeliverOrderController extends BaseApiController {
|
|
|
@Autowired
|
|
|
private IWalletService walletService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private IDeliveryCompanyService deliveryCompanyService;
|
|
|
+
|
|
|
@Autowired
|
|
|
private MapperFacade mapperFacade;
|
|
|
|
|
@@ -75,16 +85,22 @@ public class UserDeliverOrderController extends BaseApiController {
|
|
|
@ApiOperation(value = "订单列表" , notes = "获取所有订单信息")
|
|
|
public TableDataInfo list(@RequestBody JSONObject param) {
|
|
|
Long userId = SecurityUtils.getLoginUser().getUserId();
|
|
|
- Integer status = param.getInteger("status");
|
|
|
+ String status = param.getString("status");
|
|
|
+ List<Integer> statusList = new ArrayList<>();
|
|
|
+ if (StringUtils.isNotBlank(status)) {
|
|
|
+ String[] arr = status.split(",");
|
|
|
+ for (int i = 0; i < arr.length; i++) {
|
|
|
+ statusList.add(Integer.valueOf(arr[i]));
|
|
|
+ }
|
|
|
+ }
|
|
|
startPage();
|
|
|
List<UserDeliverOrder> deliverOrders = userDeliverOrderService.list(
|
|
|
new LambdaQueryWrapper<UserDeliverOrder>().eq(UserDeliverOrder::getUserId, userId)
|
|
|
- .eq(null != status, UserDeliverOrder::getStatus, status)
|
|
|
+ .in(!CollectionUtils.isEmpty(statusList), UserDeliverOrder::getStatus, statusList)
|
|
|
.orderByDesc(UserDeliverOrder::getCreatedTime));
|
|
|
List<DeliverOrderVO> deliverOrderVOList = mapperFacade.mapAsList(deliverOrders, DeliverOrderVO.class);
|
|
|
for (DeliverOrderVO deliverOrderVO : deliverOrderVOList) {
|
|
|
- deliverOrderVO.setItems(userDeliverOrderItemService.list(new LambdaQueryWrapper<UserDeliverOrderItem>()
|
|
|
- .eq(UserDeliverOrderItem::getOrderId, deliverOrderVO.getOrderId())));
|
|
|
+ deliverOrderVO.setItems(userDeliverOrderItemService.selectUserDeliverOrderItemVOList(deliverOrderVO.getOrderId()));
|
|
|
}
|
|
|
TableDataInfo rspData = getDataTable(deliverOrders);
|
|
|
rspData.setRows(deliverOrderVOList);
|
|
@@ -101,8 +117,8 @@ public class UserDeliverOrderController extends BaseApiController {
|
|
|
UserDeliverOrder deliverOrder = userDeliverOrderService.getOne(new LambdaQueryWrapper<UserDeliverOrder>()
|
|
|
.eq(UserDeliverOrder::getOrderId, order.getOrderId()).eq(UserDeliverOrder::getUserId, userId));
|
|
|
DeliverOrderVO deliverOrderVO = mapperFacade.map(deliverOrder, DeliverOrderVO.class);
|
|
|
- deliverOrderVO.setItems(userDeliverOrderItemService.list(new LambdaQueryWrapper<UserDeliverOrderItem>()
|
|
|
- .eq(UserDeliverOrderItem::getOrderId, deliverOrderVO.getOrderId())));
|
|
|
+ deliverOrderVO.setItems(userDeliverOrderItemService.selectUserDeliverOrderItemVOList(deliverOrder.getOrderId()));
|
|
|
+ deliverOrderVO.setDeliverList(userDeliverOrderItemService.getDeliverItemList(order.getOrderId(), deliverOrderVO.getItems()));
|
|
|
return AjaxResult.success(deliverOrderVO);
|
|
|
}
|
|
|
|