Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
O
order-group
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
order-group-application
order-group
Commits
0625bdc0
Commit
0625bdc0
authored
Oct 12, 2020
by
刘鹏飞
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
获取拼单订单详情
parent
c03e8fa7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
532 additions
and
0 deletions
+532
-0
order-application-service/src/main/java/cn/freemud/adapter/OrderAdapter.java
+3
-0
order-application-service/src/main/java/cn/freemud/controller/OrderController.java
+9
-0
order-application-service/src/main/java/cn/freemud/entities/vo/ProductVo.java
+16
-0
order-application-service/src/main/java/cn/freemud/entities/vo/QueryCollageOrderResponseVo.java
+398
-0
order-application-service/src/main/java/cn/freemud/entities/vo/UserProductVo.java
+48
-0
order-application-service/src/main/java/cn/freemud/service/Orderservice.java
+9
-0
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
+49
-0
No files found.
order-application-service/src/main/java/cn/freemud/adapter/OrderAdapter.java
View file @
0625bdc0
...
@@ -1850,6 +1850,9 @@ public class OrderAdapter {
...
@@ -1850,6 +1850,9 @@ public class OrderAdapter {
productVo
.
setSequence
(
productBean
.
getSequence
());
productVo
.
setSequence
(
productBean
.
getSequence
());
productVo
.
setQty
(
productBean
.
getNumber
());
productVo
.
setQty
(
productBean
.
getNumber
());
productVo
.
setSpecification
(
""
);
productVo
.
setSpecification
(
""
);
productVo
.
setUserId
(
productBean
.
getUserId
());
productVo
.
setNickName
(
productBean
.
getNickName
());
productVo
.
setPhotoUrl
(
productBean
.
getPhotoUrl
());
List
<
InventedParentActivityVo
>
inventedParentActivityVos
=
new
ArrayList
<>();
List
<
InventedParentActivityVo
>
inventedParentActivityVos
=
new
ArrayList
<>();
String
attributeNames
=
""
;
String
attributeNames
=
""
;
if
(
StringUtils
.
isNotBlank
(
productBean
.
getAddInfo
())
&&
productBean
.
getAddInfo
().
contains
(
"attributeNames"
))
{
if
(
StringUtils
.
isNotBlank
(
productBean
.
getAddInfo
())
&&
productBean
.
getAddInfo
().
contains
(
"attributeNames"
))
{
...
...
order-application-service/src/main/java/cn/freemud/controller/OrderController.java
View file @
0625bdc0
...
@@ -345,5 +345,14 @@ public class OrderController {
...
@@ -345,5 +345,14 @@ public class OrderController {
return
orderservice
.
mcCafePollingPickUpCode
(
vo
);
return
orderservice
.
mcCafePollingPickUpCode
(
vo
);
}
}
/**
* 获取拼单订单详情
*/
@ApiAnnotation
(
logMessage
=
"collageQueryOrderById"
)
@PostMapping
(
"/collage/queryOrderById"
)
public
BaseResponse
queryCollageOrderById
(
@Validated
@LogParams
@RequestBody
QueryOrderVo
queryOrderVo
)
{
return
orderservice
.
queryCollageOrderById
(
queryOrderVo
.
getOperation
(),
queryOrderVo
.
getSessionId
(),
queryOrderVo
.
getOid
(),
queryOrderVo
.
getPartnerId
(),
queryOrderVo
.
getChannelType
());
}
}
}
order-application-service/src/main/java/cn/freemud/entities/vo/ProductVo.java
View file @
0625bdc0
...
@@ -42,6 +42,22 @@ public class ProductVo {
...
@@ -42,6 +42,22 @@ public class ProductVo {
* 商品spu名称
* 商品spu名称
*/
*/
private
String
spuName
;
private
String
spuName
;
/**
* 加购人ID
*/
private
String
userId
;
/**
* 加购人昵称
*/
private
String
nickName
;
/**
* 加购人头像
*/
private
String
photoUrl
;
/**
/**
* 商品的规格信息加属性信息
* 商品的规格信息加属性信息
*/
*/
...
...
order-application-service/src/main/java/cn/freemud/entities/vo/QueryCollageOrderResponseVo.java
0 → 100644
View file @
0625bdc0
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: QueryOrderResponseVo
* @Package cn.freemud.entities.vo
* @Description:
* @author: liming.guo
* @date: 2018/5/23 14:21
* @version V1.0
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
package
cn
.
freemud
.
entities
.
vo
;
import
cn.freemud.entities.dto.PromotionMessageDto
;
import
com.alibaba.fastjson.annotation.JSONField
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
lombok.Builder
;
import
lombok.Data
;
import
java.util.ArrayList
;
import
java.util.List
;
@Data
public
class
QueryCollageOrderResponseVo
{
private
String
oid
;
/**
* 订单Id二维码
*/
private
String
oidBase64Image
;
private
String
shopId
;
private
String
thirdShopId
;
private
String
shopName
;
private
String
shopAddress
;
private
String
shopPhone
;
private
String
wxappid
;
/**
* 取餐方式 0 立即取餐 1 预约取餐
*/
private
Integer
takeMealType
;
/**
* 取餐方式 描述
*/
private
String
takeMealTypeDesc
;
/**
* 取餐时间
*/
private
String
takeMealTime
;
/**
* 外卖预约
*/
private
String
reserveDeliveryTime
;
/**
* 是否外带 ,打包 1 是 0 否
*/
private
Integer
takeOut
;
/**
* 是否外带 描述
*/
private
String
takeOutDesc
;
/**
* 桌号
*/
private
String
tableNumber
;
/**
* 取餐码
*/
private
String
takeCode
;
/**
* 订单金额
*/
private
Long
amount
;
/**
* 商品总金额 不包括满减,配送费,包装费
*/
private
Long
itemAmount
;
/**
* 优惠总金额
*/
private
Long
discountTotalAmount
;
/**
* 包装费
*/
private
Long
packageAmount
;
/**
* 配送费
*/
private
Long
deliveryAmount
;
/**
* 限时折扣优惠金额
*/
private
Long
discountLimitAmount
;
/**
* 满减总优惠金额V1.5.2增加
*/
private
Long
fullDiscountAmount
;
/**
* 用户积分抵扣金额
*/
private
Long
customerScoreAmount
;
/**
* 用户积分抵扣提示
*/
private
String
customerScorePrompt
;
/**
* 订单类型 enum OrderType
*/
private
Integer
orderType
;
/**
* 订单类型描述
*/
private
String
orderTypeDesc
;
/**
* 订单状态 enum OrderStatus ,DeliverStatus=42 骑手取餐中
*/
private
Integer
orderStatus
;
/**
* 订单状态描述
*/
private
String
orderStatusDesc
;
/**
* 订单状态显示的对应描述
*/
private
String
orderStatusDescText
;
/**
* 取餐排队号 订单详情使用 默认为空
*/
private
String
queueIndex
;
/**
* 申请退款按钮
*/
private
Boolean
buttonRefund
;
/**
* 联系商家按钮
*/
private
Boolean
buttonContactPartner
;
/**
* 评价按钮
*/
private
Boolean
buttonEvaluate
;
/**
* 联系骑手按钮
*/
private
Boolean
buttonContactRider
;
/**
* 取餐码按钮
*/
private
Boolean
buttonMealCode
;
/**
* 支付状态 enum PayStatus
*/
private
Integer
payStatus
;
/**
* 支付状态描述
*/
private
String
payStatusDesc
;
/**
* 支付时间
*/
private
String
payCreateTime
;
/**
* 付款方式 微信支付
*/
private
String
orderPayType
;
/**
* 收货地址id
*/
private
String
receiveId
;
/**
* 支付渠道
*/
@JsonIgnore
@JSONField
(
serialize
=
false
)
private
String
payChannel
;
/**
* 付款单号
*/
private
String
payVoucher
;
/**
* 退款状态 enum refundStatus
*/
private
Integer
refundStatus
;
/**
* 退款状态描述
*/
private
String
refundStatusDesc
;
/**
* 退款原因
*/
private
String
refundReason
;
/**
* 退款文案提示 若48小时后商家未处理,自动同意/拒绝退款
*/
private
String
refundTips
;
/*
* 麦咖啡 外卖单或者自提单文案提示
*/
private
String
mcCafeOrderTag
;
/**
* 退款单
*/
private
String
rid
;
/**
* 申请退款时间 yyyy-MM-dd HH:mm:ss
*/
private
String
refundCreateTime
;
/**
* 订单备注
*/
private
String
orderRemark
;
/**
* 订单创建时间
*/
private
String
orderCreateTime
;
/**
* 订单更新时间
*/
private
String
modifiedTime
;
private
Integer
sex
;
private
String
sexDesc
;
/**
* 收货办公楼
*/
private
String
officeName
;
/**
* 收货地址
*/
private
String
receiveAddress
;
/**
* 收货用户名
*/
private
String
receiveUsername
;
/**
* 收货电话
*/
private
String
receiveMobile
;
private
Integer
distance
;
/**
* 订单是否可申请退款 可申请退款条件 :1 .支付未接单 2. 已接单,制作完成,配送中 ,用户可申请退款
*/
private
Boolean
enableRefund
;
//private List<ProductVo> products;
/**
* 参单用户信息和用户商品信息
*/
private
List
<
UserProductVo
>
userProducts
;
private
List
<
OrderAccountVo
>
orderAccounts
;
private
PromotionMessageDto
promotionMessage
;
/**
* 优惠券信息
*/
private
CouponInfoVo
couponInfo
;
/**
* 是否有裂变活动分享
*/
private
String
activityId
;
/**
* 红包图片
*/
private
String
redpacketsPicture
;
/**
* 是否是第三方配送单
*/
private
Boolean
hasThirdDelivery
;
/**
* 骑手名称 商家自配送名称
*/
private
String
riderName
;
/**
* 骑手文案 商家自配送文案
*/
private
String
riderText
;
/**
* 骑手头像
*/
private
String
riderPhoto
;
/**
* 骑手电话
*/
private
String
riderPhone
;
/**
* 门店首页图片
*/
private
String
shopImageUrl
;
/**
* 门店经度
*/
private
String
longitude
;
/**
* 门店纬度
*/
private
String
latitude
;
/**
* 商品数量
*/
private
Integer
productNum
;
/**
* 订单流转时间
*/
private
ArrayList
<
OrderStatusFlow
>
orderStatusFlows
;
/**
* 取餐页面订单流转状态
*/
private
ArrayList
<
TakeMealFlow
>
takeMealFlows
;
//支付有礼活动名称
private
String
activityName
;
//支付有礼领券集合
private
List
<
PayGiftCouponVo
>
coupons
;
private
PayGiftWechatCouponInfoVo
wechatCouponInfo
;
/**
* 收件人省份
*/
private
String
receiveProvince
;
/**
* 收件人城市
*/
private
String
receiveCity
;
/**
* 收件人区
*/
private
String
receiveRegion
;
/**
* 订单业务类型 1:普通订单 2:虚拟订单 3:会员订单 4:积分商城订单 5:储值卡订单 6:卖券虚拟商品
*/
private
Integer
bizType
;
/**
* 麦咖啡餐道订单号
*/
private
String
downstreamThirdOrderCode
;
@Data
public
static
class
OrderStatusFlow
{
/**
* 时间描述
*/
private
String
status
;
/**
* 时间
*/
private
String
orderTime
;
}
@Data
@Builder
public
static
class
TakeMealFlow
{
/**
* 流程名称
*/
private
String
name
;
/**
* 是否显示
*/
private
Boolean
active
;
/**
* icon图标
*/
private
String
icon
;
}
}
order-application-service/src/main/java/cn/freemud/entities/vo/UserProductVo.java
0 → 100644
View file @
0625bdc0
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: ProductVo
* @Package cn.freemud.entities.vo
* @Description:
* @author: liming.guo
* @date: 2018/5/15 15:11
* @version V1.0
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
package
cn
.
freemud
.
entities
.
vo
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.util.List
;
@Data
public
class
UserProductVo
{
/**
* 加购人ID
*/
private
String
userId
;
/**
* 加购人昵称
*/
private
String
nickName
;
/**
* 加购人头像
*/
private
String
photoUrl
;
/**
* 均摊金额,分
*/
private
BigDecimal
avgAmount
;
/**
* 商品信息
*/
private
List
<
ProductVo
>
products
;
}
order-application-service/src/main/java/cn/freemud/service/Orderservice.java
View file @
0625bdc0
...
@@ -126,4 +126,13 @@ public interface Orderservice {
...
@@ -126,4 +126,13 @@ public interface Orderservice {
BaseResponse
mcCafeQueryOrders
(
McCafeQueryOrderVo
queryOrderVo
);
BaseResponse
mcCafeQueryOrders
(
McCafeQueryOrderVo
queryOrderVo
);
BaseResponse
mcCafePollingPickUpCode
(
MaCafeQueryOrderVo
vo
);
BaseResponse
mcCafePollingPickUpCode
(
MaCafeQueryOrderVo
vo
);
/**
* 通过订单号查询订单详情
*
* @param sessionId 用户会话ID
* @param oid 订单ID
* @return
*/
BaseResponse
queryCollageOrderById
(
Integer
operation
,
String
sessionId
,
String
oid
,
String
partnerId
,
String
channel
);
}
}
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
View file @
0625bdc0
...
@@ -1064,6 +1064,55 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -1064,6 +1064,55 @@ public class OrderServiceImpl implements Orderservice {
return
ResponseUtil
.
success
(
responseMap
);
return
ResponseUtil
.
success
(
responseMap
);
}
}
@Override
public
BaseResponse
queryCollageOrderById
(
Integer
operation
,
String
sessionId
,
String
oid
,
String
partnerId
,
String
channel
)
{
BaseResponse
orderInfoRes
=
this
.
queryOrderById
(
operation
,
sessionId
,
oid
,
partnerId
,
channel
);
if
(!
RESPONSE_SUCCESS_CODE
.
equals
(
orderInfoRes
.
getCode
())
||
orderInfoRes
.
getResult
()
==
null
)
{
return
orderInfoRes
;
}
// 根据用户聚合商品信息,计算分摊
QueryCollageOrderResponseVo
queryCollageOrderResponseVo
=
new
QueryCollageOrderResponseVo
();
QueryOrderResponseVo
queryOrderResponseVo
=
(
QueryOrderResponseVo
)
orderInfoRes
.
getResult
();
List
<
ProductVo
>
productVo
=
queryOrderResponseVo
.
getProducts
();
// 根据用户id分类商品
Map
<
String
,
List
<
ProductVo
>>
orderItemMap
=
productVo
.
stream
().
collect
(
Collectors
.
groupingBy
(
ProductVo:
:
getUserId
));
List
<
UserProductVo
>
userProducts
=
new
ArrayList
<>();
for
(
Map
.
Entry
<
String
,
List
<
ProductVo
>>
m
:
orderItemMap
.
entrySet
()){
List
<
ProductVo
>
products
=
m
.
getValue
();
// 根据行金额计算加和每个会员的分摊金额
BigDecimal
avgAmount
=
new
BigDecimal
(
0
);
for
(
ProductVo
po
:
products
){
avgAmount
.
add
(
new
BigDecimal
(
po
.
getFinalPrice
()));
List
<
ProductVo
>
materialProducts
=
po
.
getSetMaterialProducts
();
for
(
ProductVo
mp
:
materialProducts
){
avgAmount
.
add
(
new
BigDecimal
(
mp
.
getFinalPrice
()));
}
List
<
ProductVo
>
mealProducts
=
po
.
getSetMealProducts
();
for
(
ProductVo
mp:
mealProducts
){
avgAmount
.
add
(
new
BigDecimal
(
mp
.
getFinalPrice
()));
}
}
UserProductVo
userProductVo
=
new
UserProductVo
();
userProductVo
.
setUserId
(
products
.
get
(
0
).
getUserId
());
userProductVo
.
setNickName
(
products
.
get
(
0
).
getNickName
());
userProductVo
.
setPhotoUrl
(
products
.
get
(
0
).
getPhotoUrl
());
userProductVo
.
setProducts
(
products
);
userProductVo
.
setAvgAmount
(
avgAmount
);
userProducts
.
add
(
userProductVo
);
}
JSONObject
.
parseObject
(
JSONObject
.
toJSONString
(
queryOrderResponseVo
),
QueryCollageOrderResponseVo
.
class
);
queryCollageOrderResponseVo
.
setUserProducts
(
userProducts
);
return
ResponseUtil
.
success
(
queryCollageOrderResponseVo
);
}
private
String
getRedpacketsPicture
(
String
activityId
)
{
private
String
getRedpacketsPicture
(
String
activityId
)
{
if
(
StringUtils
.
isNotBlank
(
activityId
))
{
if
(
StringUtils
.
isNotBlank
(
activityId
))
{
try
{
try
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment