订单详情接口调整
This commit is contained in:
@@ -87,12 +87,8 @@ public class TradeOrderController {
|
||||
// 查询订单项
|
||||
List<TradeOrderItemDO> orderItems = tradeOrderQueryService.getOrderItemListByOrderId(id);
|
||||
|
||||
// 拼接数据
|
||||
// MemberUserRespDTO user = memberUserApi.getUser(order.getUserId()).getCheckedData();
|
||||
// MemberUserRespDTO brokerageUser = order.getBrokerageUserId() != null ?
|
||||
// memberUserApi.getUser(order.getBrokerageUserId()).getCheckedData() : null;
|
||||
List<TradeOrderLogDO> orderLogs = tradeOrderLogService.getOrderLogListByOrderId(id);
|
||||
return success(TradeOrderConvert.INSTANCE.convert(order, orderItems, orderLogs, null, null));
|
||||
return success(TradeOrderConvert.INSTANCE.convert(order, orderItems, orderLogs));
|
||||
}
|
||||
|
||||
// // 获得交易订单统计
|
||||
|
||||
@@ -6,30 +6,95 @@ import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
// 管理后台 - 交易订单的详情 Response VO
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class TradeOrderDetailRespVO extends TradeOrderBaseVO {
|
||||
public class TradeOrderDetailRespVO {
|
||||
|
||||
//基本信息
|
||||
private TradeOrderBaseInfo tradeOrderInfoBase;
|
||||
//商品信息
|
||||
private TradeProductInfo tradeProductInfo;
|
||||
//服务信息
|
||||
private TradeServeInfo tradeServeInfo;
|
||||
//扩展服务信息
|
||||
private String tradeExtendServeInfo;
|
||||
private TradeExtendServeInfo tradeExtendServeInfo;
|
||||
//附加费信息
|
||||
private String tradeExtendCostInfo;
|
||||
|
||||
//配送信息
|
||||
private TradeDeliveryInfo tradeDeliveryInfo;
|
||||
|
||||
private TradeExtendCostInfo tradeExtendCostInfo;
|
||||
|
||||
|
||||
/**
|
||||
* 订单基本信息
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
class TradeProductInfo{
|
||||
public static class TradeOrderBaseInfo{
|
||||
//订单id
|
||||
private String id;
|
||||
//订单编号
|
||||
private String orderNo;
|
||||
//订单状态
|
||||
private String orderStatus;
|
||||
//订单类型
|
||||
private String orderType;
|
||||
//订单类目
|
||||
private String orderCategoryNameAndId;
|
||||
//订单来源
|
||||
private String orderTerminal;
|
||||
//用户信息
|
||||
private String userInfo;
|
||||
|
||||
//取消时间
|
||||
private String cancelTime;
|
||||
//取消原因
|
||||
private String cancelReason;
|
||||
//商家备注
|
||||
private String merchantRemark;
|
||||
|
||||
//退款时间
|
||||
private String refundTime;
|
||||
|
||||
//保障时间
|
||||
private String propertyTime;
|
||||
//保障状态
|
||||
private String propertyStatus;
|
||||
|
||||
//订单总价
|
||||
private Integer price;
|
||||
//优惠金额
|
||||
private Integer discountPrice;
|
||||
//实付金额
|
||||
private Integer payPrice;
|
||||
//退款金额
|
||||
private Integer refundPrice;
|
||||
//实收金额
|
||||
private Integer livePrice;
|
||||
|
||||
//支付方式(支付宝微信)
|
||||
private String payType;
|
||||
//支付渠道 (线上线下)
|
||||
private String payChannelCode;
|
||||
//交易流水号
|
||||
private String payOrderId;
|
||||
//支付时间
|
||||
private LocalDateTime payTime;
|
||||
|
||||
//创建时间
|
||||
private LocalDateTime createTime;
|
||||
//完成时间
|
||||
private LocalDateTime finishTime;
|
||||
|
||||
}
|
||||
/**
|
||||
* 商品信息
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class TradeProductInfo{
|
||||
|
||||
//店铺log
|
||||
private String shopLogoUrl;
|
||||
@@ -76,86 +141,195 @@ public class TradeOrderDetailRespVO extends TradeOrderBaseVO {
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 服务信息(殡葬专属字段)
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
class TradeOrderBaseInfo{
|
||||
//订单id
|
||||
private String id;
|
||||
//订单编号
|
||||
private String orderNo;
|
||||
//订单状态
|
||||
private String orderStatus;
|
||||
//订单类型
|
||||
private String orderType;
|
||||
//订单类目
|
||||
private String orderCategoryNameAndId;
|
||||
//订单来源
|
||||
private String orderTerminal;
|
||||
//用户信息
|
||||
private String userInfo;
|
||||
public class TradeServeInfo{
|
||||
// 内部存储动态属性的 Map,键为属性名称,值为属性值
|
||||
private Map<String, Object> properties;
|
||||
/**
|
||||
* 构造方法:初始化动态属性 Map
|
||||
*/
|
||||
public TradeServeInfo() {
|
||||
properties = new HashMap<>();
|
||||
}
|
||||
|
||||
//取消时间
|
||||
private LocalDateTime cancelTime;
|
||||
//取消原因
|
||||
private String cancelReason;
|
||||
//商家备注
|
||||
private String merchantRemark;
|
||||
/**
|
||||
* setProperty 方法:添加或更新指定属性
|
||||
*
|
||||
* @param key 属性名称
|
||||
* @param value 属性值
|
||||
*/
|
||||
public void setProperty(String key, Object value) {
|
||||
if (key == null) {
|
||||
throw new IllegalArgumentException("属性名称不能为 null");
|
||||
}
|
||||
properties.put(key, value);
|
||||
}
|
||||
|
||||
//退款时间
|
||||
private String refundTime;
|
||||
/**
|
||||
* getProperty 方法:获取指定属性的值
|
||||
*
|
||||
* @param key 属性名称
|
||||
* @return 属性值;若不存在则返回 null
|
||||
*/
|
||||
public Object getProperty(String key) {
|
||||
if (key == null) {
|
||||
return null;
|
||||
}
|
||||
return properties.get(key);
|
||||
}
|
||||
|
||||
//保障时间
|
||||
private String propertyTime;
|
||||
//保障状态
|
||||
private String propertyStatus;
|
||||
|
||||
//订单总价
|
||||
private String price;
|
||||
//优惠金额
|
||||
private String discountPrice;
|
||||
//实付金额
|
||||
private Integer payPrice;
|
||||
//退款金额
|
||||
private String refundPrice;
|
||||
//实收金额
|
||||
private String livePrice;
|
||||
|
||||
//支付方式(支付宝微信)
|
||||
private String payType;
|
||||
//支付渠道 (线上线下)
|
||||
private String payChannelCode;
|
||||
//交易流水号
|
||||
private String payOrderId;
|
||||
//支付时间
|
||||
private LocalDateTime payTime;
|
||||
|
||||
//创建时间
|
||||
private LocalDateTime createTime;
|
||||
//完成时间
|
||||
private LocalDateTime finishTime;
|
||||
/**
|
||||
* removeProperty 方法:删除指定属性
|
||||
*
|
||||
* @param key 属性名称
|
||||
* @return 删除的属性值;若属性不存在则返回 null
|
||||
*/
|
||||
public Object removeProperty(String key) {
|
||||
if (key == null) {
|
||||
return null;
|
||||
}
|
||||
return properties.remove(key);
|
||||
}
|
||||
|
||||
/**
|
||||
* getProperties 方法:返回所有动态属性的 Map
|
||||
*
|
||||
* @return 内部存储属性的 Map
|
||||
*/
|
||||
public Map<String, Object> getProperties() {
|
||||
return properties;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 服务信息(殡葬专属字段)
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
class TradeDeliveryInfo{
|
||||
//承运方
|
||||
private String logisticsName;
|
||||
//送货方式
|
||||
private String logisticsType;
|
||||
//送货上门
|
||||
private String logisticsNum;
|
||||
//收货人
|
||||
private String receiverName;
|
||||
//收货手机
|
||||
private String receiverMobile;
|
||||
//收货地址
|
||||
private String receiverDetailAddress;
|
||||
//快递详情
|
||||
private String deliveryDetail;
|
||||
public class TradeExtendServeInfo{
|
||||
// 内部存储动态属性的 Map,键为属性名称,值为属性值
|
||||
private Map<String, Object> properties;
|
||||
/**
|
||||
* 构造方法:初始化动态属性 Map
|
||||
*/
|
||||
public TradeExtendServeInfo() {
|
||||
properties = new HashMap<>();
|
||||
}
|
||||
|
||||
/**
|
||||
* setProperty 方法:添加或更新指定属性
|
||||
*
|
||||
* @param key 属性名称
|
||||
* @param value 属性值
|
||||
*/
|
||||
public void setProperty(String key, Object value) {
|
||||
if (key == null) {
|
||||
throw new IllegalArgumentException("属性名称不能为 null");
|
||||
}
|
||||
properties.put(key, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* getProperty 方法:获取指定属性的值
|
||||
*
|
||||
* @param key 属性名称
|
||||
* @return 属性值;若不存在则返回 null
|
||||
*/
|
||||
public Object getProperty(String key) {
|
||||
if (key == null) {
|
||||
return null;
|
||||
}
|
||||
return properties.get(key);
|
||||
}
|
||||
|
||||
/**
|
||||
* removeProperty 方法:删除指定属性
|
||||
*
|
||||
* @param key 属性名称
|
||||
* @return 删除的属性值;若属性不存在则返回 null
|
||||
*/
|
||||
public Object removeProperty(String key) {
|
||||
if (key == null) {
|
||||
return null;
|
||||
}
|
||||
return properties.remove(key);
|
||||
}
|
||||
|
||||
/**
|
||||
* getProperties 方法:返回所有动态属性的 Map
|
||||
*
|
||||
* @return 内部存储属性的 Map
|
||||
*/
|
||||
public Map<String, Object> getProperties() {
|
||||
return properties;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* 服务信息(殡葬专属字段)
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class TradeExtendCostInfo{
|
||||
// 内部存储动态属性的 Map,键为属性名称,值为属性值
|
||||
private Map<String, Object> properties;
|
||||
/**
|
||||
* 构造方法:初始化动态属性 Map
|
||||
*/
|
||||
public TradeExtendCostInfo() {
|
||||
properties = new HashMap<>();
|
||||
}
|
||||
|
||||
/**
|
||||
* setProperty 方法:添加或更新指定属性
|
||||
*
|
||||
* @param key 属性名称
|
||||
* @param value 属性值
|
||||
*/
|
||||
public void setProperty(String key, Object value) {
|
||||
if (key == null) {
|
||||
throw new IllegalArgumentException("属性名称不能为 null");
|
||||
}
|
||||
properties.put(key, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* getProperty 方法:获取指定属性的值
|
||||
*
|
||||
* @param key 属性名称
|
||||
* @return 属性值;若不存在则返回 null
|
||||
*/
|
||||
public Object getProperty(String key) {
|
||||
if (key == null) {
|
||||
return null;
|
||||
}
|
||||
return properties.get(key);
|
||||
}
|
||||
|
||||
/**
|
||||
* removeProperty 方法:删除指定属性
|
||||
*
|
||||
* @param key 属性名称
|
||||
* @return 删除的属性值;若属性不存在则返回 null
|
||||
*/
|
||||
public Object removeProperty(String key) {
|
||||
if (key == null) {
|
||||
return null;
|
||||
}
|
||||
return properties.remove(key);
|
||||
}
|
||||
|
||||
/**
|
||||
* getProperties 方法:返回所有动态属性的 Map
|
||||
*
|
||||
* @return 内部存储属性的 Map
|
||||
*/
|
||||
public Map<String, Object> getProperties() {
|
||||
return properties;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -73,6 +73,24 @@ public interface TradeOrderConvert {
|
||||
TradeOrderPageRespVO convert(TradeOrderDO order, TradeOrderItemDO items);
|
||||
//endregion
|
||||
|
||||
//region 订单详情
|
||||
|
||||
default TradeOrderDetailRespVO convert(TradeOrderDO order, List<TradeOrderItemDO> orderItems,List<TradeOrderLogDO> orderLogs) {
|
||||
//
|
||||
TradeOrderDetailRespVO orderVO = convert2(order, orderItems);
|
||||
return orderVO;
|
||||
}
|
||||
|
||||
@Mappings({
|
||||
@Mapping(source = "order", target = "tradeOrderInfoBase"),
|
||||
})
|
||||
TradeOrderDetailRespVO convert2(TradeOrderDO order, List<TradeOrderItemDO> items);
|
||||
@Mappings({
|
||||
@Mapping(source = "items", target = "tradeOrderInfoBase"),
|
||||
})
|
||||
TradeOrderDetailRespVO convert3(TradeOrderItemDO items);
|
||||
//endregion
|
||||
|
||||
@Mappings({
|
||||
@Mapping(target = "id", ignore = true),
|
||||
@Mapping(source = "userId", target = "userId"),
|
||||
@@ -126,23 +144,11 @@ public interface TradeOrderConvert {
|
||||
|
||||
// ProductPropertyValueDetailRespVO convert(ProductPropertyValueDetailRespDTO bean);
|
||||
|
||||
default TradeOrderDetailRespVO convert(TradeOrderDO order, List<TradeOrderItemDO> orderItems,
|
||||
List<TradeOrderLogDO> orderLogs,
|
||||
MemberUserRespDTO user, MemberUserRespDTO brokerageUser) {
|
||||
TradeOrderDetailRespVO orderVO = convert2(order, orderItems);
|
||||
// // 处理收货地址
|
||||
// orderVO.setReceiverAreaName(AreaUtils.format(order.getReceiverAreaId()));
|
||||
// // 处理用户信息
|
||||
// orderVO.setUser(convert(user));
|
||||
// orderVO.setBrokerageUser(convert(brokerageUser));
|
||||
// // 处理日志
|
||||
// orderVO.setLogs(convertList03(orderLogs));
|
||||
return orderVO;
|
||||
}
|
||||
|
||||
|
||||
List<TradeOrderDetailRespVO> convertList03(List<TradeOrderLogDO> orderLogs);
|
||||
|
||||
TradeOrderDetailRespVO convert2(TradeOrderDO order, List<TradeOrderItemDO> items);
|
||||
|
||||
|
||||
MemberUserRespVO convert(MemberUserRespDTO bean);
|
||||
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
package com.tashow.cloud.trade.dal.dataobject.order;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.KeySequence;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.tashow.cloud.common.enums.UserTypeEnum;
|
||||
@@ -13,7 +12,7 @@ import lombok.*;
|
||||
*
|
||||
* @author 陈賝
|
||||
*/
|
||||
@TableName("trade_order_log")
|
||||
@TableName("tz_trade_order_log")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
|
||||
Reference in New Issue
Block a user