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