- 优化订单查询,和 convert 转换

This commit is contained in:
sin 2019-03-24 16:58:24 +08:00
parent 6cc00a373b
commit e9b5adeac3
26 changed files with 211 additions and 116 deletions

View File

@ -1,4 +1,4 @@
package cn.iocoder.mall.order; package cn.iocoder.mall.order.application;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;

View File

@ -1,4 +1,4 @@
package cn.iocoder.mall.order.config; package cn.iocoder.mall.order.application.config;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.*; import org.springframework.web.servlet.config.annotation.*;

View File

@ -1,4 +1,4 @@
package cn.iocoder.mall.order.config; package cn.iocoder.mall.order.application.config;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;

View File

@ -1,4 +1,4 @@
package cn.iocoder.mall.order.controller.admins; 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;
@ -6,10 +6,10 @@ import cn.iocoder.mall.order.api.dto.OrderItemUpdateDTO;
import cn.iocoder.mall.order.api.dto.OrderLogisticsUpdateDTO; import cn.iocoder.mall.order.api.dto.OrderLogisticsUpdateDTO;
import cn.iocoder.mall.order.api.dto.OrderPageBO; import cn.iocoder.mall.order.api.dto.OrderPageBO;
import cn.iocoder.mall.order.api.dto.OrderQueryDTO; import cn.iocoder.mall.order.api.dto.OrderQueryDTO;
import cn.iocoder.mall.order.convert.OrderConvert; import cn.iocoder.mall.order.application.convert.OrderConvertAPP;
import cn.iocoder.mall.order.vo.OrderItemUpdateVO; import cn.iocoder.mall.order.application.vo.OrderItemUpdateVO;
import cn.iocoder.mall.order.vo.OrderLogisticsVO; import cn.iocoder.mall.order.application.vo.OrderLogisticsVO;
import cn.iocoder.mall.order.vo.OrderPageQueryVO; import cn.iocoder.mall.order.application.vo.OrderPageQueryVO;
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,23 +34,23 @@ public class AdminsOrderController {
@GetMapping("page") @GetMapping("page")
@ApiOperation("订单列表") @ApiOperation("订单列表")
public CommonResult<List<OrderPageBO>> getOrderPage(@RequestBody OrderPageQueryVO orderPageQueryVO) { public CommonResult<List<OrderPageBO>> getOrderPage(@Validated OrderPageQueryVO orderPageQueryVO) {
OrderQueryDTO orderQueryDTO = OrderConvert.INSTANCE.convertPageBO(orderPageQueryVO); OrderQueryDTO orderQueryDTO = OrderConvertAPP.INSTANCE.convertPageBO(orderPageQueryVO);
CommonResult<List<OrderPageBO>> result = orderService.getOrderPage(orderQueryDTO); CommonResult<List<OrderPageBO>> result = orderService.getOrderPage(orderQueryDTO);
return result; return result;
} }
@PutMapping("order/update") @PutMapping("order_item/update")
@ApiOperation("订单item更新") @ApiOperation("订单item更新")
public CommonResult updateOrderItem(@RequestBody @Validated OrderItemUpdateVO orderItemUpdateVO) { public CommonResult updateOrderItem(@RequestBody @Validated OrderItemUpdateVO orderItemUpdateVO) {
OrderItemUpdateDTO dto = OrderConvert.INSTANCE.convertPageBO(orderItemUpdateVO); OrderItemUpdateDTO dto = OrderConvertAPP.INSTANCE.convertPageBO(orderItemUpdateVO);
return orderService.updateOrderItem(dto); return orderService.updateOrderItem(dto);
} }
@PutMapping("logistics/update") @PutMapping("logistics/update")
@ApiOperation("订单物流更新") @ApiOperation("订单物流更新")
public CommonResult updateLogistics(@RequestBody @Validated OrderLogisticsVO orderLogisticsVO) { public CommonResult updateLogistics(@RequestBody @Validated OrderLogisticsVO orderLogisticsVO) {
OrderLogisticsUpdateDTO dto = OrderConvert.INSTANCE.convertPageBO(orderLogisticsVO); OrderLogisticsUpdateDTO dto = OrderConvertAPP.INSTANCE.convertPageBO(orderLogisticsVO);
return orderService.updateLogistics(dto); return orderService.updateLogistics(dto);
} }
} }

View File

@ -1,4 +1,4 @@
package cn.iocoder.mall.order.controller.users; package cn.iocoder.mall.order.application.controller.users;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;

View File

@ -0,0 +1,34 @@
package cn.iocoder.mall.order.application.convert;
import cn.iocoder.mall.order.api.dto.OrderItemUpdateDTO;
import cn.iocoder.mall.order.api.dto.OrderLogisticsUpdateDTO;
import cn.iocoder.mall.order.api.dto.OrderQueryDTO;
import cn.iocoder.mall.order.application.vo.OrderItemUpdateVO;
import cn.iocoder.mall.order.application.vo.OrderLogisticsVO;
import cn.iocoder.mall.order.application.vo.OrderPageQueryVO;
import org.mapstruct.Mapper;
import org.mapstruct.Mappings;
import org.mapstruct.factory.Mappers;
/**
* application 订单 convert
*
* TODO 这种方式 文件名不能一样哈!
*
* @author Sin
* @time 2019-03-24 10:45
*/
@Mapper
public interface OrderConvertAPP {
OrderConvertAPP INSTANCE = Mappers.getMapper(OrderConvertAPP.class);
@Mappings({})
OrderQueryDTO convertPageBO(OrderPageQueryVO orderPageQueryVO);
@Mappings({})
OrderLogisticsUpdateDTO convertPageBO(OrderLogisticsVO orderLogisticsVO);
@Mappings({})
OrderItemUpdateDTO convertPageBO(OrderItemUpdateVO orderItemUpdateVO);
}

View File

@ -1,4 +1,4 @@
package cn.iocoder.mall.order.vo; 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;

View File

@ -1,4 +1,4 @@
package cn.iocoder.mall.order.vo; 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;

View File

@ -1,6 +1,5 @@
package cn.iocoder.mall.order.vo; package cn.iocoder.mall.order.application.vo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;

View File

@ -56,7 +56,7 @@ public interface OrderService {
* - 联系人电话 * - 联系人电话
* - 联系人姓名 * - 联系人姓名
*/ */
CommonResult updateLogistics(OrderLogisticsDTO orderLogisticsDTO); CommonResult updateLogistics(OrderLogisticsUpdateDTO orderLogisticsDTO);
/** /**
* 删除订单 * 删除订单

View File

@ -10,7 +10,9 @@ package cn.iocoder.mall.order.api.constant;
*/ */
public enum OrderErrorCodeEnum { public enum OrderErrorCodeEnum {
ORDER_ITEM_ONLY_ONE(1000001000, "订单Item只有一个"), ORDER_ITEM_ONLY_ONE(1000001000, "订单Item只有一个!"),
ORDER_GET_SKU_FAIL(1000001001, "获取商品失败!"),
ORDER_GET_SKU_NOT_EXISTENT(1000001002, "获取的商品不存在!"),
; ;
private final int code; private final int code;

View File

@ -10,8 +10,8 @@ public enum OrderHasReturnExchangeEnum {
NO(1, "没有"), NO(1, "没有"),
RETURN_GOODS(2, "退货"), RETURN_GOODS(2, "退货"),
EXCHANGE_GOODS(2, "换货"), EXCHANGE_GOODS(3, "换货"),
RETURN_EXCHANGE_GOODS(2, "退换货"); RETURN_EXCHANGE_GOODS(4, "退换货");
/** /**
* 状态值 * 状态值

View File

@ -10,7 +10,7 @@ import java.io.Serializable;
* @author Sin * @author Sin
* @time 2019-03-17 20:22 * @time 2019-03-17 20:22
*/ */
public class OrderLogisticsDTO implements Serializable { public class OrderLogisticsUpdateDTO implements Serializable {
/** /**
* 订单 id * 订单 id
@ -42,7 +42,6 @@ public class OrderLogisticsDTO implements Serializable {
/** /**
* 物流编号 * 物流编号
*/ */
@NotNull
private String logisticsNo; private String logisticsNo;
@Override @Override
@ -61,7 +60,7 @@ public class OrderLogisticsDTO implements Serializable {
return id; return id;
} }
public OrderLogisticsDTO setId(Integer id) { public OrderLogisticsUpdateDTO setId(Integer id) {
this.id = id; this.id = id;
return this; return this;
} }
@ -70,7 +69,7 @@ public class OrderLogisticsDTO implements Serializable {
return areaNo; return areaNo;
} }
public OrderLogisticsDTO setAreaNo(String areaNo) { public OrderLogisticsUpdateDTO setAreaNo(String areaNo) {
this.areaNo = areaNo; this.areaNo = areaNo;
return this; return this;
} }
@ -79,7 +78,7 @@ public class OrderLogisticsDTO implements Serializable {
return name; return name;
} }
public OrderLogisticsDTO setName(String name) { public OrderLogisticsUpdateDTO setName(String name) {
this.name = name; this.name = name;
return this; return this;
} }
@ -88,7 +87,7 @@ public class OrderLogisticsDTO implements Serializable {
return mobile; return mobile;
} }
public OrderLogisticsDTO setMobile(String mobile) { public OrderLogisticsUpdateDTO setMobile(String mobile) {
this.mobile = mobile; this.mobile = mobile;
return this; return this;
} }
@ -97,7 +96,7 @@ public class OrderLogisticsDTO implements Serializable {
return address; return address;
} }
public OrderLogisticsDTO setAddress(String address) { public OrderLogisticsUpdateDTO setAddress(String address) {
this.address = address; this.address = address;
return this; return this;
} }
@ -106,7 +105,7 @@ public class OrderLogisticsDTO implements Serializable {
return logisticsNo; return logisticsNo;
} }
public OrderLogisticsDTO setLogisticsNo(String logisticsNo) { public OrderLogisticsUpdateDTO setLogisticsNo(String logisticsNo) {
this.logisticsNo = logisticsNo; this.logisticsNo = logisticsNo;
return this; return this;
} }

View File

@ -10,6 +10,7 @@ import java.util.Date;
* @time 2019-03-23 14:30 * @time 2019-03-23 14:30
*/ */
public class OrderPageBO implements Serializable { public class OrderPageBO implements Serializable {
/** /**
* id * id
*/ */
@ -29,7 +30,7 @@ public class OrderPageBO implements Serializable {
/** /**
* 交易金额 * 交易金额
*/ */
private Integer money; private Integer price;
/// ///
/// 时间信息 /// 时间信息
@ -77,18 +78,6 @@ public class OrderPageBO implements Serializable {
* 备注 * 备注
*/ */
private String remark; private String remark;
/**
* 创建时间
*/
private Date createTime;
/**
* 更新时间
*/
private Date updateTime;
/**
* 删除
*/
private Integer deleted;
@Override @Override
public String toString() { public String toString() {
@ -97,7 +86,7 @@ public class OrderPageBO implements Serializable {
", userId=" + userId + ", userId=" + userId +
", orderLogisticsId=" + orderLogisticsId + ", orderLogisticsId=" + orderLogisticsId +
", orderNo='" + orderNo + '\'' + ", orderNo='" + orderNo + '\'' +
", money=" + money + ", price=" + price +
", paymentTime=" + paymentTime + ", paymentTime=" + paymentTime +
", deliveryTime=" + deliveryTime + ", deliveryTime=" + deliveryTime +
", receiverTime=" + receiverTime + ", receiverTime=" + receiverTime +
@ -105,9 +94,6 @@ public class OrderPageBO implements Serializable {
", hasReturnExchange=" + hasReturnExchange + ", hasReturnExchange=" + hasReturnExchange +
", status=" + status + ", status=" + status +
", remark='" + remark + '\'' + ", remark='" + remark + '\'' +
", createTime=" + createTime +
", updateTime=" + updateTime +
", deleted=" + deleted +
'}'; '}';
} }
@ -147,12 +133,12 @@ public class OrderPageBO implements Serializable {
return this; return this;
} }
public Integer getMoney() { public Integer getPrice() {
return money; return price;
} }
public OrderPageBO setMoney(Integer money) { public OrderPageBO setPrice(Integer price) {
this.money = money; this.price = price;
return this; return this;
} }
@ -218,31 +204,4 @@ public class OrderPageBO implements Serializable {
this.remark = remark; this.remark = remark;
return this; return this;
} }
public Date getCreateTime() {
return createTime;
}
public OrderPageBO setCreateTime(Date createTime) {
this.createTime = createTime;
return this;
}
public Date getUpdateTime() {
return updateTime;
}
public OrderPageBO setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
return this;
}
public Integer getDeleted() {
return deleted;
}
public OrderPageBO setDeleted(Integer deleted) {
this.deleted = deleted;
return this;
}
} }

View File

@ -24,6 +24,14 @@ public class OrderQueryDTO implements Serializable {
* 用户 id * 用户 id
*/ */
private Integer userId; private Integer userId;
/**
* 物流id
*/
private Integer orderLogisticsId;
/**
* 是否退换货
*/
private Integer hasReturnExchange;
/** /**
* 付款时间待发货 * 付款时间待发货
*/ */
@ -38,10 +46,11 @@ public class OrderQueryDTO implements Serializable {
* 删除状态 * 删除状态
*/ */
private Integer deleted; private Integer deleted;
/**
@NotNull(message = "页码不能为空") * 状态
*/
private Integer status;
private Integer pageNo; private Integer pageNo;
@NotNull(message = "每页条数不能为空")
private Integer pageSize; private Integer pageSize;
@Override @Override
@ -50,11 +59,14 @@ public class OrderQueryDTO implements Serializable {
"id=" + id + "id=" + id +
", orderNo='" + orderNo + '\'' + ", orderNo='" + orderNo + '\'' +
", userId=" + userId + ", userId=" + userId +
", orderLogisticsId=" + orderLogisticsId +
", hasReturnExchange=" + hasReturnExchange +
", startPaymentTime=" + startPaymentTime + ", startPaymentTime=" + startPaymentTime +
", endPaymentTime=" + endPaymentTime + ", endPaymentTime=" + endPaymentTime +
", startCreateTime=" + startCreateTime + ", startCreateTime=" + startCreateTime +
", endCreateTime=" + endCreateTime + ", endCreateTime=" + endCreateTime +
", deleted=" + deleted + ", deleted=" + deleted +
", status=" + status +
", pageNo=" + pageNo + ", pageNo=" + pageNo +
", pageSize=" + pageSize + ", pageSize=" + pageSize +
'}'; '}';
@ -87,6 +99,24 @@ public class OrderQueryDTO implements Serializable {
return this; return this;
} }
public Integer getOrderLogisticsId() {
return orderLogisticsId;
}
public OrderQueryDTO setOrderLogisticsId(Integer orderLogisticsId) {
this.orderLogisticsId = orderLogisticsId;
return this;
}
public Integer getHasReturnExchange() {
return hasReturnExchange;
}
public OrderQueryDTO setHasReturnExchange(Integer hasReturnExchange) {
this.hasReturnExchange = hasReturnExchange;
return this;
}
public Date getStartPaymentTime() { public Date getStartPaymentTime() {
return startPaymentTime; return startPaymentTime;
} }
@ -132,6 +162,15 @@ public class OrderQueryDTO implements Serializable {
return this; return this;
} }
public Integer getStatus() {
return status;
}
public OrderQueryDTO setStatus(Integer status) {
this.status = status;
return this;
}
public Integer getPageNo() { public Integer getPageNo() {
return pageNo; return pageNo;
} }

View File

@ -90,6 +90,12 @@
<version>1.0-SNAPSHOT</version> <version>1.0-SNAPSHOT</version>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<dependency>
<groupId>cn.iocoder.mall</groupId>
<artifactId>product-service-api</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
</dependencies> </dependencies>
<build> <build>

View File

@ -1,4 +1,4 @@
package cn.iocoder.mall.order.convert; package cn.iocoder.mall.order.application.convert;
import cn.iocoder.mall.order.api.dto.OrderPageBO; import cn.iocoder.mall.order.api.dto.OrderPageBO;
import cn.iocoder.mall.order.dataobject.OrderDO; import cn.iocoder.mall.order.dataobject.OrderDO;

View File

@ -1,4 +1,4 @@
package cn.iocoder.mall.order.convert; package cn.iocoder.mall.order.application.convert;
import cn.iocoder.mall.order.api.dto.OrderCreateItemDTO; import cn.iocoder.mall.order.api.dto.OrderCreateItemDTO;
import cn.iocoder.mall.order.api.dto.OrderItemUpdateDTO; import cn.iocoder.mall.order.api.dto.OrderItemUpdateDTO;

View File

@ -1,4 +1,4 @@
package cn.iocoder.mall.order.convert; package cn.iocoder.mall.order.application.convert;
import cn.iocoder.mall.order.api.dto.OrderCreateDTO; import cn.iocoder.mall.order.api.dto.OrderCreateDTO;
import cn.iocoder.mall.order.api.dto.OrderLogisticsUpdateDTO; import cn.iocoder.mall.order.api.dto.OrderLogisticsUpdateDTO;

View File

@ -55,5 +55,5 @@ public interface OrderMapper {
* @param orderQueryDTO * @param orderQueryDTO
* @return * @return
*/ */
List<OrderDO> selectPage(OrderQueryDTO orderQueryDTO, int offset, int pageSize); List<OrderDO> selectPage(OrderQueryDTO orderQueryDTO);
} }

View File

@ -31,7 +31,7 @@ public class OrderDO extends DeletableDO {
/** /**
* 交易金额 * 交易金额
*/ */
private Integer money; private Integer price;
/// ///
/// 时间信息 /// 时间信息
@ -87,7 +87,7 @@ public class OrderDO extends DeletableDO {
", userId=" + userId + ", userId=" + userId +
", orderLogisticsId=" + orderLogisticsId + ", orderLogisticsId=" + orderLogisticsId +
", orderNo='" + orderNo + '\'' + ", orderNo='" + orderNo + '\'' +
", money=" + money + ", price=" + price +
", paymentTime=" + paymentTime + ", paymentTime=" + paymentTime +
", deliveryTime=" + deliveryTime + ", deliveryTime=" + deliveryTime +
", receiverTime=" + receiverTime + ", receiverTime=" + receiverTime +
@ -134,12 +134,12 @@ public class OrderDO extends DeletableDO {
return this; return this;
} }
public Integer getMoney() { public Integer getPrice() {
return money; return price;
} }
public OrderDO setMoney(Integer money) { public OrderDO setPrice(Integer price) {
this.money = money; this.price = price;
return this; return this;
} }

View File

@ -0,0 +1,40 @@
package cn.iocoder.mall.order.mock;
import cn.iocoder.common.framework.vo.CommonResult;
import cn.iocoder.mall.product.api.ProductSpuService;
import cn.iocoder.mall.product.api.bo.ProductSpuDetailBO;
import cn.iocoder.mall.product.api.bo.ProductSpuPageBO;
import cn.iocoder.mall.product.api.dto.ProductSpuAddDTO;
import cn.iocoder.mall.product.api.dto.ProductSpuPageDTO;
import cn.iocoder.mall.product.api.dto.ProductSpuUpdateDTO;
/**
* @author Sin
* @time 2019-03-24 15:24
*/
public class ProductSpuServiceMock implements ProductSpuService {
@Override
public CommonResult<ProductSpuDetailBO> getProductSpu(Integer id) {
return null;
}
@Override
public CommonResult<ProductSpuDetailBO> addProductSpu(Integer adminId, ProductSpuAddDTO productSpuAddDTO) {
return null;
}
@Override
public CommonResult<Boolean> updateProductSpu(Integer adminId, ProductSpuUpdateDTO productSpuUpdateDTO) {
return null;
}
@Override
public CommonResult<Boolean> updateProductSpuSort(Integer adminId, Integer spuId, Integer sort) {
return null;
}
@Override
public CommonResult<ProductSpuPageBO> getProductSpuPage(ProductSpuPageDTO productSpuPageDTO) {
return null;
}
}

View File

@ -10,9 +10,9 @@ 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;
import cn.iocoder.mall.order.api.dto.*; import cn.iocoder.mall.order.api.dto.*;
import cn.iocoder.mall.order.convert.OrderConvert; import cn.iocoder.mall.order.application.convert.OrderConvert;
import cn.iocoder.mall.order.convert.OrderItemConvert; import cn.iocoder.mall.order.application.convert.OrderItemConvert;
import cn.iocoder.mall.order.convert.OrderLogisticsConvert; import cn.iocoder.mall.order.application.convert.OrderLogisticsConvert;
import cn.iocoder.mall.order.dao.OrderItemMapper; import cn.iocoder.mall.order.dao.OrderItemMapper;
import cn.iocoder.mall.order.dao.OrderLogisticsMapper; import cn.iocoder.mall.order.dao.OrderLogisticsMapper;
import cn.iocoder.mall.order.dao.OrderMapper; import cn.iocoder.mall.order.dao.OrderMapper;
@ -49,15 +49,12 @@ public class OrderServiceImpl implements OrderService {
@Override @Override
public CommonResult<List<OrderPageBO>> getOrderPage(OrderQueryDTO orderQueryDTO) { public CommonResult<List<OrderPageBO>> getOrderPage(OrderQueryDTO orderQueryDTO) {
int offset = orderQueryDTO.getPageNo() * orderQueryDTO.getPageSize();
int pageSize = orderQueryDTO.getPageSize();
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(Collections.EMPTY_LIST);
} }
List<OrderDO> orderDOList = orderMapper.selectPage(orderQueryDTO, offset, pageSize); List<OrderDO> orderDOList = orderMapper.selectPage(orderQueryDTO);
List<OrderPageBO> orderPageBOList = OrderConvert.INSTANCE.convertPageBO(orderDOList); List<OrderPageBO> orderPageBOList = OrderConvert.INSTANCE.convertPageBO(orderDOList);
return CommonResult.success(orderPageBOList); return CommonResult.success(orderPageBOList);
} }
@ -69,6 +66,23 @@ public class OrderServiceImpl implements OrderService {
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);
// TODO: 2019-03-24 sin 校验商品是否存在
// for (OrderItemDO orderItemDO : orderItemDOList) {
// CommonResult<ProductSpuDetailBO> result = productSpuService.getProductSpu(orderItemDO.getSkuId());
//
// // 有任何商品获取失败或者为 null都直接返回失败
// if (result.isError()) {
// return ServiceExceptionUtil.error(OrderErrorCodeEnum.ORDER_GET_SKU_FAIL.getCode());
// }
//
// if (result.getData() == null) {
// return ServiceExceptionUtil.error(OrderErrorCodeEnum.ORDER_GET_SKU_NOT_EXISTENT.getCode());
// }
//
// ProductSpuDetailBO spuDetailBO = result.getData();
// orderItemDO.setPrice(1000);
// }
// 物流信息 // 物流信息
orderLogisticsDO orderLogisticsDO
.setLogisticsNo("") .setLogisticsNo("")
@ -81,7 +95,7 @@ public class OrderServiceImpl implements OrderService {
.setUserId(userId) .setUserId(userId)
.setOrderLogisticsId(orderLogisticsDO.getId()) .setOrderLogisticsId(orderLogisticsDO.getId())
.setOrderNo(UUID.randomUUID().toString().replace("-", "")) .setOrderNo(UUID.randomUUID().toString().replace("-", ""))
.setMoney(-1) // 先设置一个默认值金额在下面计算 .setPrice(-1) // 先设置一个默认值金额在下面计算
.setClosingTime(null) .setClosingTime(null)
.setDeliveryTime(null) .setDeliveryTime(null)
.setPaymentTime(null) .setPaymentTime(null)
@ -119,7 +133,7 @@ public class OrderServiceImpl implements OrderService {
orderMapper.updateById( orderMapper.updateById(
new OrderDO() new OrderDO()
.setId(orderDO.getId()) .setId(orderDO.getId())
.setMoney(totalAmount) .setPrice(totalAmount)
); );
// TODO: 2019-03-17 Sin 需要发送 创建成果 MQ 消息 // TODO: 2019-03-17 Sin 需要发送 创建成果 MQ 消息
@ -128,7 +142,7 @@ public class OrderServiceImpl implements OrderService {
new OrderBO() new OrderBO()
.setId(orderDO.getId()) .setId(orderDO.getId())
.setOrderNo(orderDO.getOrderNo()) .setOrderNo(orderDO.getOrderNo())
.setMoney(orderDO.getMoney()) .setMoney(orderDO.getPrice())
); );
} }
@ -136,6 +150,9 @@ public class OrderServiceImpl implements OrderService {
public CommonResult updateOrderItem(OrderItemUpdateDTO orderUpdateDTO) { public CommonResult updateOrderItem(OrderItemUpdateDTO orderUpdateDTO) {
OrderItemDO orderItemDO = OrderItemConvert.INSTANCE.convert(orderUpdateDTO); OrderItemDO orderItemDO = OrderItemConvert.INSTANCE.convert(orderUpdateDTO);
orderItemMapper.updateById(orderItemDO); orderItemMapper.updateById(orderItemDO);
// TODO: 2019-03-24 sin 需要重新计算金额
// TODO: 2019-03-24 sin 需要记录日志
return CommonResult.success(null); return CommonResult.success(null);
} }
@ -169,7 +186,7 @@ public class OrderServiceImpl implements OrderService {
orderMapper.updateById( orderMapper.updateById(
new OrderDO() new OrderDO()
.setId(orderId) .setId(orderId)
.setMoney(totalAmount) .setPrice(totalAmount)
); );
return CommonResult.success(null); return CommonResult.success(null);
} }

View File

@ -3,7 +3,7 @@
<mapper namespace="cn.iocoder.mall.order.dao.OrderMapper"> <mapper namespace="cn.iocoder.mall.order.dao.OrderMapper">
<sql id="FIELDS"> <sql id="FIELDS">
id, user_id, order_logistics_id, order_no, money, payment_time, id, user_id, order_logistics_id, order_no, price, payment_time,
delivery_time, receiver_time, closing_time, has_return_exchange, delivery_time, receiver_time, closing_time, has_return_exchange,
status, remark, create_time, update_time, `deleted` status, remark, create_time, update_time, `deleted`
</sql> </sql>
@ -13,12 +13,12 @@
--> -->
<insert id="insert" parameterType="OrderDO" useGeneratedKeys="true" keyColumn="id" keyProperty="id"> <insert id="insert" parameterType="OrderDO" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
INSERT INTO `order` ( INSERT INTO `order` (
user_id, order_logistics_id, order_no, money, payment_time, user_id, order_logistics_id, order_no, price, payment_time,
delivery_time, receiver_time, closing_time, delivery_time, receiver_time, closing_time,
has_return_exchange, status, remark, has_return_exchange, status, remark,
create_time, update_time, `deleted` create_time, update_time, `deleted`
) VALUES ( ) VALUES (
#{orderLogisticsId}, #{userId}, #{orderNo}, #{money}, #{paymentTime}, #{orderLogisticsId}, #{userId}, #{orderNo}, #{price}, #{paymentTime},
#{deliveryTime}, #{receiverTime}, #{closingTime}, #{deliveryTime}, #{receiverTime}, #{closingTime},
#{hasReturnExchange}, #{status}, #{remark}, #{hasReturnExchange}, #{status}, #{remark},
#{createTime}, #{updateTime}, #{deleted} #{createTime}, #{updateTime}, #{deleted}
@ -36,8 +36,8 @@
<if test="orderNo != null"> <if test="orderNo != null">
, order_no = #{orderNo} , order_no = #{orderNo}
</if> </if>
<if test="money != null"> <if test="price != null">
, money = #{money} , price = #{price}
</if> </if>
-- time -- time
<if test="paymentTime != null"> <if test="paymentTime != null">
@ -97,22 +97,22 @@
查询条件 查询条件
--> -->
<sql id="selectWhere"> <sql id="selectWhere">
<if test="id"> <if test="id != null">
AND `id` = #{id} AND `id` = #{id}
</if> </if>
<if test="userId"> <if test="userId != null">
AND `user_id` = #{userId} AND `user_id` = #{userId}
</if> </if>
<if test="orderLogisticsId"> <if test="orderLogisticsId != null">
AND `order_logistics_id` = #{orderLogisticsId} AND `order_logistics_id` = #{orderLogisticsId}
</if> </if>
<if test="orderNo"> <if test="orderNo != null">
AND `order_no` = #{orderNo} AND `order_no` = #{orderNo}
</if> </if>
<if test="hasReturnExchange"> <if test="hasReturnExchange != null">
AND `has_return_exchange` = #{hasReturnExchange} AND `has_return_exchange` = #{hasReturnExchange}
</if> </if>
<if test="status"> <if test="status != null">
AND `status` = #{status} AND `status` = #{status}
</if> </if>
</sql> </sql>
@ -124,7 +124,7 @@
SELECT SELECT
COUNT(*) COUNT(*)
FROM `order` FROM `order`
WHERE WHERE 1 = 1
<include refid="selectWhere" /> <include refid="selectWhere" />
</select> </select>
@ -135,9 +135,9 @@
SELECT SELECT
<include refid="FIELDS" /> <include refid="FIELDS" />
FROM `order` FROM `order`
WHERE WHERE 1 = 1
<include refid="selectWhere" /> <include refid="selectWhere" />
LIMIT LIMIT ${pageNo * pageSize}, ${pageSize}
</select> </select>