- 修改订单 page 返回类,增加 total 条数

This commit is contained in:
sin 2019-03-28 00:44:52 +08:00
parent e2a19a1d9d
commit 1900ccafe2
8 changed files with 345 additions and 195 deletions

View File

@ -2,14 +2,12 @@ package cn.iocoder.mall.order.application.controller.admins;
import cn.iocoder.common.framework.vo.CommonResult; import cn.iocoder.common.framework.vo.CommonResult;
import cn.iocoder.mall.order.api.OrderService; import cn.iocoder.mall.order.api.OrderService;
import cn.iocoder.mall.order.api.dto.OrderItemUpdateDTO; import cn.iocoder.mall.order.api.dto.*;
import cn.iocoder.mall.order.api.dto.OrderLogisticsUpdateDTO;
import cn.iocoder.mall.order.api.dto.OrderPageBO;
import cn.iocoder.mall.order.api.dto.OrderQueryDTO;
import cn.iocoder.mall.order.application.convert.OrderConvertAPP; import cn.iocoder.mall.order.application.convert.OrderConvertAPP;
import cn.iocoder.mall.order.application.vo.OrderItemUpdateVO; import cn.iocoder.mall.order.application.vo.OrderItemUpdateVO;
import cn.iocoder.mall.order.application.vo.OrderLogisticsVO; import cn.iocoder.mall.order.application.vo.OrderLogisticsVO;
import cn.iocoder.mall.order.application.vo.OrderPageQueryVO; import cn.iocoder.mall.order.application.vo.OrderPageQueryVO;
import cn.iocoder.mall.order.application.vo.OrderPageVO;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -34,10 +32,9 @@ public class AdminsOrderController {
@GetMapping("page") @GetMapping("page")
@ApiOperation("订单列表") @ApiOperation("订单列表")
public CommonResult<List<OrderPageBO>> getOrderPage(@Validated OrderPageQueryVO orderPageQueryVO) { public CommonResult<OrderPageBO> getOrderPage(@Validated OrderPageQueryVO orderPageQueryVO) {
OrderQueryDTO orderQueryDTO = OrderConvertAPP.INSTANCE.convertPageBO(orderPageQueryVO); OrderQueryDTO orderQueryDTO = OrderConvertAPP.INSTANCE.convertPageBO(orderPageQueryVO);
CommonResult<List<OrderPageBO>> result = orderService.getOrderPage(orderQueryDTO); return orderService.getOrderPage(orderQueryDTO);
return result;
} }
@PutMapping("order_item/update") @PutMapping("order_item/update")

View File

@ -2,6 +2,7 @@ package cn.iocoder.mall.order.application.vo;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
@ -34,16 +35,27 @@ public class OrderPageQueryVO implements Serializable {
* 付款时间待发货 * 付款时间待发货
*/ */
@ApiModelProperty("start付款时间") @ApiModelProperty("start付款时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date startPaymentTime; private Date startPaymentTime;
@ApiModelProperty("end付款时间") @ApiModelProperty("end付款时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date endPaymentTime; private Date endPaymentTime;
/** /**
* 创建时间 * 创建时间
*/ */
@ApiModelProperty("start订单创建时间") @ApiModelProperty("start订单创建时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date startCreateTime; private Date startCreateTime;
@ApiModelProperty("end订单创建时间") @ApiModelProperty("end订单创建时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date endCreateTime; private Date endCreateTime;
/**
* 结束时间
*/
@ApiModelProperty("start成交时间")
private Date startClosingTime;
@ApiModelProperty("end成交时间")
private Date endClosingTime;
/** /**
* 删除状态 * 删除状态
*/ */
@ -64,6 +76,8 @@ public class OrderPageQueryVO implements Serializable {
", endPaymentTime=" + endPaymentTime + ", endPaymentTime=" + endPaymentTime +
", startCreateTime=" + startCreateTime + ", startCreateTime=" + startCreateTime +
", endCreateTime=" + endCreateTime + ", endCreateTime=" + endCreateTime +
", startClosingTime=" + startClosingTime +
", endClosingTime=" + endClosingTime +
", deleted=" + deleted + ", deleted=" + deleted +
", pageNo=" + pageNo + ", pageNo=" + pageNo +
", pageSize=" + pageSize + ", pageSize=" + pageSize +
@ -133,6 +147,24 @@ public class OrderPageQueryVO implements Serializable {
return this; return this;
} }
public Date getStartClosingTime() {
return startClosingTime;
}
public OrderPageQueryVO setStartClosingTime(Date startClosingTime) {
this.startClosingTime = startClosingTime;
return this;
}
public Date getEndClosingTime() {
return endClosingTime;
}
public OrderPageQueryVO setEndClosingTime(Date endClosingTime) {
this.endClosingTime = endClosingTime;
return this;
}
public Integer getDeleted() { public Integer getDeleted() {
return deleted; return deleted;
} }

View File

@ -0,0 +1,70 @@
package cn.iocoder.mall.order.application.vo;
import cn.iocoder.mall.order.api.dto.OrderBO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.List;
/**
* 订单分页 vo
*
* @author Sin
* @time 2019-03-27 21:23
*/
@ApiModel("订单VO")
public class OrderPageVO implements Serializable {
/**
* 分页
*/
@ApiModelProperty("分页下表当前")
private Integer pageNo;
/**
* 总条数
*/
@ApiModelProperty("总条数")
private Integer total;
/**
* 订单 list
*/
@ApiModelProperty("订单信息")
private List<OrderBO> orders;
@Override
public String toString() {
return "OrderPageVO{" +
"pageNo=" + pageNo +
", total=" + total +
", orders=" + orders +
'}';
}
public Integer getPageNo() {
return pageNo;
}
public OrderPageVO setPageNo(Integer pageNo) {
this.pageNo = pageNo;
return this;
}
public Integer getTotal() {
return total;
}
public OrderPageVO setTotal(Integer total) {
this.total = total;
return this;
}
public List<OrderBO> getOrders() {
return orders;
}
public OrderPageVO setOrders(List<OrderBO> orders) {
this.orders = orders;
return this;
}
}

View File

@ -1,7 +1,6 @@
package cn.iocoder.mall.order.api; package cn.iocoder.mall.order.api;
import cn.iocoder.common.framework.vo.CommonResult; import cn.iocoder.common.framework.vo.CommonResult;
import cn.iocoder.mall.order.api.bo.OrderBO;
import cn.iocoder.mall.order.api.dto.*; import cn.iocoder.mall.order.api.dto.*;
import java.util.List; import java.util.List;
@ -20,7 +19,7 @@ public interface OrderService {
* @param orderQueryDTO * @param orderQueryDTO
* @return * @return
*/ */
CommonResult<List<OrderPageBO>> getOrderPage(OrderQueryDTO orderQueryDTO); CommonResult<OrderPageBO> getOrderPage(OrderQueryDTO orderQueryDTO);
/** /**
* 订单 - 创建 * 订单 - 创建
@ -29,7 +28,7 @@ public interface OrderService {
* @param orderCreateDTO * @param orderCreateDTO
* @return * @return
*/ */
CommonResult<OrderBO> createOrder(Integer userId, OrderCreateDTO orderCreateDTO); CommonResult<cn.iocoder.mall.order.api.bo.OrderBO> createOrder(Integer userId, OrderCreateDTO orderCreateDTO);
/** /**
* 订单item - 更新 * 订单item - 更新

View File

@ -0,0 +1,207 @@
package cn.iocoder.mall.order.api.dto;
import java.io.Serializable;
import java.util.Date;
/**
* 订单 page
*
* @author Sin
* @time 2019-03-23 14:30
*/
public class OrderBO implements Serializable {
/**
* id
*/
private Integer id;
/**
* 用户编号
*/
private Integer userId;
/**
* 物流id
*/
private Integer orderLogisticsId;
/**
* 订单编号
*/
private String orderNo;
/**
* 交易金额
*/
private Integer price;
///
/// 时间信息
/**
* 付款时间待发货
*/
private Date paymentTime;
/**
* 发货时间待收货
*/
private Date deliveryTime;
/**
* 收货时间已签收
*/
private Date receiverTime;
/**
* 成交时间用户确认收货 -> status = 已完成
*/
private Date closingTime;
///
/// 其他
/**
* 是否退货
*
* - 0没有
* - 1换货
* - 2退货
* - 3换货 + 退货
*/
private Integer hasReturnExchange;
/**
* 状态(如果有多个商品分开发货需要全部商品发完才会改变状态)
*
* - 0待付款
* - 1待发货
* - 2待收获
* - 3已完成
* - 4已关闭
*/
private Integer status;
/**
* 备注
*/
private String remark;
@Override
public String toString() {
return "OrderPageBO{" +
"id=" + id +
", userId=" + userId +
", orderLogisticsId=" + orderLogisticsId +
", orderNo='" + orderNo + '\'' +
", price=" + price +
", paymentTime=" + paymentTime +
", deliveryTime=" + deliveryTime +
", receiverTime=" + receiverTime +
", closingTime=" + closingTime +
", hasReturnExchange=" + hasReturnExchange +
", status=" + status +
", remark='" + remark + '\'' +
'}';
}
public Integer getId() {
return id;
}
public OrderBO setId(Integer id) {
this.id = id;
return this;
}
public Integer getUserId() {
return userId;
}
public OrderBO setUserId(Integer userId) {
this.userId = userId;
return this;
}
public Integer getOrderLogisticsId() {
return orderLogisticsId;
}
public OrderBO setOrderLogisticsId(Integer orderLogisticsId) {
this.orderLogisticsId = orderLogisticsId;
return this;
}
public String getOrderNo() {
return orderNo;
}
public OrderBO setOrderNo(String orderNo) {
this.orderNo = orderNo;
return this;
}
public Integer getPrice() {
return price;
}
public OrderBO setPrice(Integer price) {
this.price = price;
return this;
}
public Date getPaymentTime() {
return paymentTime;
}
public OrderBO setPaymentTime(Date paymentTime) {
this.paymentTime = paymentTime;
return this;
}
public Date getDeliveryTime() {
return deliveryTime;
}
public OrderBO setDeliveryTime(Date deliveryTime) {
this.deliveryTime = deliveryTime;
return this;
}
public Date getReceiverTime() {
return receiverTime;
}
public OrderBO setReceiverTime(Date receiverTime) {
this.receiverTime = receiverTime;
return this;
}
public Date getClosingTime() {
return closingTime;
}
public OrderBO setClosingTime(Date closingTime) {
this.closingTime = closingTime;
return this;
}
public Integer getHasReturnExchange() {
return hasReturnExchange;
}
public OrderBO setHasReturnExchange(Integer hasReturnExchange) {
this.hasReturnExchange = hasReturnExchange;
return this;
}
public Integer getStatus() {
return status;
}
public OrderBO setStatus(Integer status) {
this.status = status;
return this;
}
public String getRemark() {
return remark;
}
public OrderBO setRemark(String remark) {
this.remark = remark;
return this;
}
}

View File

@ -1,207 +1,48 @@
package cn.iocoder.mall.order.api.dto; package cn.iocoder.mall.order.api.dto;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.List;
/** /**
* 订单 page * 订单分页
* *
* @author Sin * @author Sin
* @time 2019-03-23 14:30 * @time 2019-03-27 21:27
*/ */
public class OrderPageBO implements Serializable { public class OrderPageBO implements Serializable {
/** /**
* id * 总条数
*/ */
private Integer id; private Integer total;
/** /**
* 用户编号 * 订单列表
*/ */
private Integer userId; private List<OrderBO> orders;
/**
* 物流id
*/
private Integer orderLogisticsId;
/**
* 订单编号
*/
private String orderNo;
/**
* 交易金额
*/
private Integer price;
///
/// 时间信息
/**
* 付款时间待发货
*/
private Date paymentTime;
/**
* 发货时间待收货
*/
private Date deliveryTime;
/**
* 收货时间已签收
*/
private Date receiverTime;
/**
* 成交时间用户确认收货 -> status = 已完成
*/
private Date closingTime;
///
/// 其他
/**
* 是否退货
*
* - 0没有
* - 1换货
* - 2退货
* - 3换货 + 退货
*/
private Integer hasReturnExchange;
/**
* 状态(如果有多个商品分开发货需要全部商品发完才会改变状态)
*
* - 0待付款
* - 1待发货
* - 2待收获
* - 3已完成
* - 4已关闭
*/
private Integer status;
/**
* 备注
*/
private String remark;
@Override @Override
public String toString() { public String toString() {
return "OrderPageBO{" + return "OrderPageBO{" +
"id=" + id + "total=" + total +
", userId=" + userId + ", orders=" + orders +
", orderLogisticsId=" + orderLogisticsId +
", orderNo='" + orderNo + '\'' +
", price=" + price +
", paymentTime=" + paymentTime +
", deliveryTime=" + deliveryTime +
", receiverTime=" + receiverTime +
", closingTime=" + closingTime +
", hasReturnExchange=" + hasReturnExchange +
", status=" + status +
", remark='" + remark + '\'' +
'}'; '}';
} }
public Integer getId() { public Integer getTotal() {
return id; return total;
} }
public OrderPageBO setId(Integer id) { public OrderPageBO setTotal(Integer total) {
this.id = id; this.total = total;
return this; return this;
} }
public Integer getUserId() { public List<OrderBO> getOrders() {
return userId; return orders;
} }
public OrderPageBO setUserId(Integer userId) { public OrderPageBO setOrders(List<OrderBO> orders) {
this.userId = userId; this.orders = orders;
return this;
}
public Integer getOrderLogisticsId() {
return orderLogisticsId;
}
public OrderPageBO setOrderLogisticsId(Integer orderLogisticsId) {
this.orderLogisticsId = orderLogisticsId;
return this;
}
public String getOrderNo() {
return orderNo;
}
public OrderPageBO setOrderNo(String orderNo) {
this.orderNo = orderNo;
return this;
}
public Integer getPrice() {
return price;
}
public OrderPageBO setPrice(Integer price) {
this.price = price;
return this;
}
public Date getPaymentTime() {
return paymentTime;
}
public OrderPageBO setPaymentTime(Date paymentTime) {
this.paymentTime = paymentTime;
return this;
}
public Date getDeliveryTime() {
return deliveryTime;
}
public OrderPageBO setDeliveryTime(Date deliveryTime) {
this.deliveryTime = deliveryTime;
return this;
}
public Date getReceiverTime() {
return receiverTime;
}
public OrderPageBO setReceiverTime(Date receiverTime) {
this.receiverTime = receiverTime;
return this;
}
public Date getClosingTime() {
return closingTime;
}
public OrderPageBO setClosingTime(Date closingTime) {
this.closingTime = closingTime;
return this;
}
public Integer getHasReturnExchange() {
return hasReturnExchange;
}
public OrderPageBO setHasReturnExchange(Integer hasReturnExchange) {
this.hasReturnExchange = hasReturnExchange;
return this;
}
public Integer getStatus() {
return status;
}
public OrderPageBO setStatus(Integer status) {
this.status = status;
return this;
}
public String getRemark() {
return remark;
}
public OrderPageBO setRemark(String remark) {
this.remark = remark;
return this; return this;
} }
} }

View File

@ -1,6 +1,6 @@
package cn.iocoder.mall.order.application.convert; package cn.iocoder.mall.order.application.convert;
import cn.iocoder.mall.order.api.dto.OrderPageBO; import cn.iocoder.mall.order.api.dto.OrderBO;
import cn.iocoder.mall.order.dataobject.OrderDO; import cn.iocoder.mall.order.dataobject.OrderDO;
import org.mapstruct.Mapper; import org.mapstruct.Mapper;
import org.mapstruct.Mappings; import org.mapstruct.Mappings;
@ -20,5 +20,5 @@ public interface OrderConvert {
OrderConvert INSTANCE = Mappers.getMapper(OrderConvert.class); OrderConvert INSTANCE = Mappers.getMapper(OrderConvert.class);
@Mappings({}) @Mappings({})
List<OrderPageBO> convertPageBO(List<OrderDO> orderDOList); List<OrderBO> convertPageBO(List<OrderDO> orderDOList);
} }

View File

@ -5,7 +5,6 @@ import cn.iocoder.common.framework.util.ServiceExceptionUtil;
import cn.iocoder.common.framework.vo.CommonResult; import cn.iocoder.common.framework.vo.CommonResult;
import cn.iocoder.mall.order.OrderCommon; import cn.iocoder.mall.order.OrderCommon;
import cn.iocoder.mall.order.api.OrderService; import cn.iocoder.mall.order.api.OrderService;
import cn.iocoder.mall.order.api.bo.OrderBO;
import cn.iocoder.mall.order.api.constant.OrderErrorCodeEnum; import cn.iocoder.mall.order.api.constant.OrderErrorCodeEnum;
import cn.iocoder.mall.order.api.constant.OrderHasReturnExchangeEnum; import cn.iocoder.mall.order.api.constant.OrderHasReturnExchangeEnum;
import cn.iocoder.mall.order.api.constant.OrderStatusEnum; import cn.iocoder.mall.order.api.constant.OrderStatusEnum;
@ -47,21 +46,26 @@ public class OrderServiceImpl implements OrderService {
private OrderCommon orderCommon; private OrderCommon orderCommon;
@Override @Override
public CommonResult<List<OrderPageBO>> getOrderPage(OrderQueryDTO orderQueryDTO) { public CommonResult<OrderPageBO> getOrderPage(OrderQueryDTO orderQueryDTO) {
int totalCount = orderMapper.selectPageCount(orderQueryDTO); int totalCount = orderMapper.selectPageCount(orderQueryDTO);
if (totalCount == 0) { if (totalCount == 0) {
return CommonResult.success(Collections.EMPTY_LIST); return CommonResult.success(new OrderPageBO().setTotal(0));
} }
List<OrderDO> orderDOList = orderMapper.selectPage(orderQueryDTO); List<OrderDO> orderDOList = orderMapper.selectPage(orderQueryDTO);
List<OrderPageBO> orderPageBOList = OrderConvert.INSTANCE.convertPageBO(orderDOList); List<OrderBO> orderPageBOList = OrderConvert.INSTANCE.convertPageBO(orderDOList);
return CommonResult.success(orderPageBOList);
return CommonResult.success(
new OrderPageBO()
.setTotal(totalCount)
.setOrders(orderPageBOList)
);
} }
@Override @Override
@Transactional @Transactional
public CommonResult<OrderBO> createOrder(Integer userId, OrderCreateDTO orderCreateDTO) { public CommonResult<cn.iocoder.mall.order.api.bo.OrderBO> createOrder(Integer userId, OrderCreateDTO orderCreateDTO) {
List<OrderCreateItemDTO> orderItemDTOList = orderCreateDTO.getOrderItems(); List<OrderCreateItemDTO> orderItemDTOList = orderCreateDTO.getOrderItems();
OrderLogisticsDO orderLogisticsDO = OrderLogisticsConvert.INSTANCE.convert(orderCreateDTO); OrderLogisticsDO orderLogisticsDO = OrderLogisticsConvert.INSTANCE.convert(orderCreateDTO);
List<OrderItemDO> orderItemDOList = OrderItemConvert.INSTANCE.convert(orderItemDTOList); List<OrderItemDO> orderItemDOList = OrderItemConvert.INSTANCE.convert(orderItemDTOList);
@ -139,7 +143,7 @@ public class OrderServiceImpl implements OrderService {
// TODO: 2019-03-17 Sin 需要发送 创建成果 MQ 消息 // TODO: 2019-03-17 Sin 需要发送 创建成果 MQ 消息
return CommonResult.success( return CommonResult.success(
new OrderBO() new cn.iocoder.mall.order.api.bo.OrderBO()
.setId(orderDO.getId()) .setId(orderDO.getId())
.setOrderNo(orderDO.getOrderNo()) .setOrderNo(orderDO.getOrderNo())
.setMoney(orderDO.getPrice()) .setMoney(orderDO.getPrice())