- 添加发货功能

This commit is contained in:
sin
2019-04-05 17:51:37 +08:00
parent 8b11176353
commit 10807b0c6f
11 changed files with 229 additions and 117 deletions

View File

@@ -7,12 +7,13 @@ import cn.iocoder.mall.order.api.bo.OrderPageBO;
import cn.iocoder.mall.order.api.bo.OrderRecipientBO;
import cn.iocoder.mall.order.api.dto.*;
import cn.iocoder.mall.order.application.convert.OrderConvertAPP;
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 cn.iocoder.mall.order.application.convert.OrderDeliveryConvert;
import cn.iocoder.mall.order.application.po.OrderDeliverPO;
import cn.iocoder.mall.order.application.po.OrderItemUpdatePO;
import cn.iocoder.mall.order.application.po.OrderLogisticsPO;
import cn.iocoder.mall.order.application.po.OrderPageQueryPO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -35,7 +36,7 @@ public class AdminsOrderController {
@GetMapping("page")
@ApiOperation("订单列表")
public CommonResult<OrderPageBO> getOrderPage(@Validated OrderPageQueryVO orderPageQueryVO) {
public CommonResult<OrderPageBO> getOrderPage(@Validated OrderPageQueryPO orderPageQueryVO) {
OrderQueryDTO orderQueryDTO = OrderConvertAPP.INSTANCE.convertPageBO(orderPageQueryVO);
return orderService.getOrderPage(orderQueryDTO);
}
@@ -52,6 +53,12 @@ public class AdminsOrderController {
return orderService.getOrderRecipientBO(orderId);
}
@PostMapping("order_deliver")
@ApiOperation("订单发货")
public CommonResult<OrderRecipientBO> orderDeliver(@RequestBody @Validated OrderDeliverPO orderDeliverPO) {
return orderService.orderDelivery(OrderDeliveryConvert.INSTANCE.convert(orderDeliverPO));
}
@PutMapping("update_remark")
@ApiOperation("更新-更新订单备注")
public CommonResult updateRemark(@RequestParam("orderId") Integer orderId,
@@ -78,14 +85,14 @@ public class AdminsOrderController {
@PutMapping("order_item/update")
@ApiOperation("更新-订单item")
public CommonResult updateOrderItem(@RequestBody @Validated OrderItemUpdateVO orderItemUpdateVO) {
public CommonResult updateOrderItem(@RequestBody @Validated OrderItemUpdatePO orderItemUpdateVO) {
OrderItemUpdateDTO dto = OrderConvertAPP.INSTANCE.convertPageBO(orderItemUpdateVO);
return orderService.updateOrderItem(dto);
}
@PutMapping("logistics/update")
@ApiOperation("更新-订单物流")
public CommonResult updateLogistics(@RequestBody @Validated OrderLogisticsVO orderLogisticsVO) {
public CommonResult updateLogistics(@RequestBody @Validated OrderLogisticsPO orderLogisticsVO) {
OrderLogisticsUpdateDTO dto = OrderConvertAPP.INSTANCE.convertPageBO(orderLogisticsVO);
return orderService.updateLogistics(dto);
}

View File

@@ -3,9 +3,9 @@ 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 cn.iocoder.mall.order.application.po.OrderItemUpdatePO;
import cn.iocoder.mall.order.application.po.OrderPageQueryPO;
import cn.iocoder.mall.order.application.po.OrderLogisticsPO;
import org.mapstruct.Mapper;
import org.mapstruct.Mappings;
import org.mapstruct.factory.Mappers;
@@ -24,11 +24,11 @@ public interface OrderConvertAPP {
OrderConvertAPP INSTANCE = Mappers.getMapper(OrderConvertAPP.class);
@Mappings({})
OrderQueryDTO convertPageBO(OrderPageQueryVO orderPageQueryVO);
OrderQueryDTO convertPageBO(OrderPageQueryPO orderPageQueryVO);
@Mappings({})
OrderLogisticsUpdateDTO convertPageBO(OrderLogisticsVO orderLogisticsVO);
OrderLogisticsUpdateDTO convertPageBO(OrderLogisticsPO orderLogisticsVO);
@Mappings({})
OrderItemUpdateDTO convertPageBO(OrderItemUpdateVO orderItemUpdateVO);
OrderItemUpdateDTO convertPageBO(OrderItemUpdatePO orderItemUpdateVO);
}

View File

@@ -0,0 +1,20 @@
package cn.iocoder.mall.order.application.convert;
import cn.iocoder.mall.order.api.dto.OrderDeliveryDTO;
import cn.iocoder.mall.order.application.po.OrderDeliverPO;
import org.mapstruct.Mapper;
import org.mapstruct.Mappings;
import org.mapstruct.factory.Mappers;
/**
* @author Sin
* @time 2019-04-05 17:00
*/
@Mapper
public interface OrderDeliveryConvert {
OrderDeliveryConvert INSTANCE = Mappers.getMapper(OrderDeliveryConvert.class);
@Mappings({})
OrderDeliveryDTO convert(OrderDeliverPO orderDeliverPO);
}

View File

@@ -0,0 +1,89 @@
package cn.iocoder.mall.order.application.po;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;
/**
* 订单发货
*
* @author Sin
* @time 2019-04-05 16:55
*/
@ApiModel(description = "订单发货PO")
public class OrderDeliverPO implements Serializable {
/**
* 订单编号
*/
@ApiModelProperty("订单id")
@NotNull(message = "orderId不能为空")
private Integer orderId;
/**
* 物流 (字典)
*/
@ApiModelProperty("物流商家")
@NotNull(message = "必须选择商家")
private Integer logistics;
/**
* 物流编号
*/
@ApiModelProperty("物流单号")
@NotNull(message = "没有物流单号")
private String logisticsNo;
/**
* 订单 items
*/
@ApiModelProperty("订单items")
@NotNull(message = "没有选择发货的商品")
private List<Integer> orderItemIds;
@Override
public String toString() {
return "OrderDeliverPO{" +
"orderId=" + orderId +
", logistics=" + logistics +
", logisticsNo='" + logisticsNo + '\'' +
", orderItemIds=" + orderItemIds +
'}';
}
public Integer getOrderId() {
return orderId;
}
public OrderDeliverPO setOrderId(Integer orderId) {
this.orderId = orderId;
return this;
}
public Integer getLogistics() {
return logistics;
}
public OrderDeliverPO setLogistics(Integer logistics) {
this.logistics = logistics;
return this;
}
public String getLogisticsNo() {
return logisticsNo;
}
public OrderDeliverPO setLogisticsNo(String logisticsNo) {
this.logisticsNo = logisticsNo;
return this;
}
public List<Integer> getOrderItemIds() {
return orderItemIds;
}
public OrderDeliverPO setOrderItemIds(List<Integer> orderItemIds) {
this.orderItemIds = orderItemIds;
return this;
}
}