Переглянути джерело

渠道商列表及用户提货订单列表

Liugl 3 роки тому
батько
коміт
1bf4b7e4f0

+ 103 - 0
mp-admin/src/main/java/com/qs/mp/web/controller/api/admin/ChannelOrderMgrController.java

@@ -0,0 +1,103 @@
+package com.qs.mp.web.controller.api.admin;
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.qs.mp.channel.domain.ChannelOrder;
+import com.qs.mp.channel.domain.ChannelOrderItem;
+import com.qs.mp.channel.domain.vo.ChannelOrderVO;
+import com.qs.mp.channel.service.IChannelOrderItemService;
+import com.qs.mp.channel.service.IChannelOrderService;
+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.ErrorCodeEnum;
+import com.qs.mp.web.controller.common.BaseApiController;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import java.util.List;
+import lombok.AllArgsConstructor;
+import ma.glasnost.orika.MapperFacade;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+
+@RestController
+@RequestMapping("/api/v1/admin/channel/order")
+@Api(tags = "渠道订单管理接口")
+@AllArgsConstructor
+public class ChannelOrderMgrController extends BaseApiController {
+
+  @Autowired
+  private IChannelOrderService channelOrderService;
+
+  @Autowired
+  private IChannelOrderItemService channelOrderItemService;
+
+  @Autowired
+  private MapperFacade mapperFacade;
+
+  @Autowired
+  private RedisCache redisCache;
+
+  /**
+   * 订单列表
+   */
+  @PostMapping("/list")
+  @ApiOperation(value = "订单列表" , notes = "获取所有订单信息")
+  public TableDataInfo list(@RequestBody JSONObject param) {
+   // Long channelId = SecurityUtils.getLoginUser().getChannelId();
+    Integer status = param.getInteger("status");
+    startPage();
+    LambdaQueryWrapper<ChannelOrder> queryWrapper = new LambdaQueryWrapper<ChannelOrder>();
+    // queryWrapper.eq(ChannelOrder::getChannelId, channelId);
+    queryWrapper.eq(null != status, ChannelOrder::getStatus, status);
+    queryWrapper.orderByDesc(ChannelOrder::getCreatedTime);
+    List<ChannelOrder> channelOrders = channelOrderService.list(queryWrapper);
+    List<ChannelOrderVO> channelOrderVOList = mapperFacade.mapAsList(channelOrders, ChannelOrderVO.class);
+    for (ChannelOrderVO channelOrderVO : channelOrderVOList) {
+      channelOrderVO.setItems(channelOrderItemService.list(new LambdaQueryWrapper<ChannelOrderItem>()
+          .eq(ChannelOrderItem::getOrderId, channelOrderVO.getOrderId())));
+    }
+    TableDataInfo rspData = getDataTable(channelOrders);
+    rspData.setRows(channelOrderVOList);
+    return rspData;
+  }
+
+  /**
+   * 订单详情
+   */
+  @PostMapping("/detail")
+  @ApiOperation(value = "订单详情" , notes = "在订单列表页面查看详情")
+  public AjaxResult query(@RequestBody ChannelOrder order) {
+    if(null == order || StringUtils.isBlank(order.getOrderId())) {
+    	return error(ErrorCodeEnum.ERROR_CODE_1001);
+    }    
+    LambdaQueryWrapper<ChannelOrder> queryWrapper = new LambdaQueryWrapper<ChannelOrder>();
+    queryWrapper.eq(ChannelOrder::getOrderId, order.getOrderId());
+    
+    ChannelOrder channelOrder = channelOrderService.getOne(queryWrapper);
+    ChannelOrderVO channelOrderVO = mapperFacade.map(channelOrder, ChannelOrderVO.class);
+    channelOrderVO.setItems(channelOrderItemService.list(new LambdaQueryWrapper<ChannelOrderItem>()
+        .eq(ChannelOrderItem::getOrderId, channelOrderVO.getOrderId())));
+    return AjaxResult.success(channelOrderVO);
+  }
+
+  
+
+  /**
+   * 订单发货
+   */
+  @PostMapping("/ship")
+  @ApiOperation(value = "订单发货" , notes = "在订单发货页面提交")
+  public AjaxResult ship(@RequestBody ChannelOrder order) {
+
+    return AjaxResult.success();
+  }
+
+
+}

+ 124 - 0
mp-admin/src/main/java/com/qs/mp/web/controller/api/admin/UserDeliverOrderController.java

@@ -0,0 +1,124 @@
+package com.qs.mp.web.controller.api.admin;
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.qs.mp.channel.domain.param.OrderPayParam;
+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.BizTypeEnum;
+import com.qs.mp.common.enums.ErrorCodeEnum;
+import com.qs.mp.common.enums.PrizeStorageStatusEnum;
+import com.qs.mp.common.exception.ServiceException;
+import com.qs.mp.framework.redis.RedisKey;
+import com.qs.mp.pay.service.IWalletService;
+import com.qs.mp.user.domain.UserAddr;
+import com.qs.mp.user.domain.UserDeliverOrder;
+import com.qs.mp.user.domain.UserDeliverOrderItem;
+import com.qs.mp.user.domain.UserPrizeStorage;
+import com.qs.mp.user.domain.param.DeliverOrderParam;
+import com.qs.mp.user.domain.vo.DeliverOrderSettleVO;
+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.SecurityUtils;
+import com.qs.mp.web.controller.common.BaseApiController;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import java.util.List;
+import java.util.concurrent.TimeUnit;
+import javax.validation.Valid;
+import lombok.AllArgsConstructor;
+import ma.glasnost.orika.MapperFacade;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+
+@RestController
+@RequestMapping("/api/v1/admin/deliver/order")
+@Api(tags = "用户提货订单接口")
+@AllArgsConstructor
+public class UserDeliverOrderController 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 = "获取所有订单信息")
+  public TableDataInfo list(@RequestBody JSONObject param) {
+   // Long channelId = SecurityUtils.getLoginUser().getChannelId();
+    Integer status = param.getInteger("status");
+    startPage();
+    LambdaQueryWrapper<UserDeliverOrder> queryWrapper = new LambdaQueryWrapper<UserDeliverOrder>();
+    // queryWrapper.eq(UserDeliverOrder::getChannelId, channelId);
+    queryWrapper.eq(null != status, UserDeliverOrder::getStatus, status);
+    queryWrapper.orderByDesc(UserDeliverOrder::getCreatedTime);
+    List<UserDeliverOrder> userDeliverOrders = userDeliverOrderService.list(queryWrapper);
+    List<UserDeliverOrderVO> userDeliverOrderVOList = mapperFacade.mapAsList(userDeliverOrders, UserDeliverOrderVO.class);
+    for (UserDeliverOrderVO userDeliverOrderVO : userDeliverOrderVOList) {
+      userDeliverOrderVO.setItems(userDeliverOrderItemService.list(new LambdaQueryWrapper<UserDeliverOrderItem>()
+          .eq(UserDeliverOrderItem::getOrderId, userDeliverOrderVO.getOrderId())));
+    }
+    TableDataInfo rspData = getDataTable(userDeliverOrders);
+    rspData.setRows(userDeliverOrderVOList);
+    return rspData;
+  }
+
+  /**
+   * 订单详情
+   */
+  @PostMapping("/detail")
+  @ApiOperation(value = "订单详情" , notes = "在订单列表页面查看详情")
+  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);
+    userDeliverOrderVO.setItems(userDeliverOrderItemService.list(new LambdaQueryWrapper<UserDeliverOrderItem>()
+        .eq(UserDeliverOrderItem::getOrderId, userDeliverOrderVO.getOrderId())));
+    return AjaxResult.success(userDeliverOrderVO);
+  }
+
+  
+
+  /**
+   * 订单发货
+   */
+  @PostMapping("/ship")
+  @ApiOperation(value = "订单发货" , notes = "在订单发货页面提交")
+  public AjaxResult ship(@RequestBody UserDeliverOrder order) {
+
+    return AjaxResult.success();
+  }
+}

+ 19 - 0
mp-service/src/main/java/com/qs/mp/user/domain/vo/UserDeliverOrderVO.java

@@ -0,0 +1,19 @@
+package com.qs.mp.user.domain.vo;
+
+import java.util.List;
+
+import com.qs.mp.user.domain.UserDeliverOrder;
+import com.qs.mp.user.domain.UserDeliverOrderItem;
+
+import lombok.Data;
+
+
+/**
+ * @author liugl
+ * @Date 2022/3/17
+ */
+@Data
+public class UserDeliverOrderVO extends UserDeliverOrder{
+
+	private List<UserDeliverOrderItem> items;
+}