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
69c0e8a0
Commit
69c0e8a0
authored
Dec 08, 2020
by
缪晖
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
群收款金额扣除微信平台优惠及商户优惠
parent
9ce4acdf
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
61 additions
and
11 deletions
+61
-11
order-application-service/src/main/java/cn/freemud/enums/ResponseResult.java
+1
-0
order-application-service/src/main/java/cn/freemud/service/impl/CollageOrderServiceImpl.java
+38
-3
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
+10
-0
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/BuySendPromotionService.java
+7
-3
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/TwoNDiscountServiceImpl.java
+5
-5
No files found.
order-application-service/src/main/java/cn/freemud/enums/ResponseResult.java
View file @
69c0e8a0
...
@@ -159,6 +159,7 @@ public enum ResponseResult {
...
@@ -159,6 +159,7 @@ public enum ResponseResult {
ORDER_TAKE_OUT_TIME_ERROR
(
"450062"
,
"你的外卖送达时间异常,请重新选择!"
),
ORDER_TAKE_OUT_TIME_ERROR
(
"450062"
,
"你的外卖送达时间异常,请重新选择!"
),
ORDER_TAKE_OUT_ADDRESS_NOT_VALID
(
"45063"
,
"收货地址校验失败"
),
ORDER_TAKE_OUT_ADDRESS_NOT_VALID
(
"45063"
,
"收货地址校验失败"
),
ORDER_PICK_UP_GOOD_NO
(
"45064"
,
"更新取餐码失败"
),
ORDER_PICK_UP_GOOD_NO
(
"45064"
,
"更新取餐码失败"
),
ORDER_GROUP_BUY_LIST_EMPTY
(
"45069"
,
"付款人列表为空,无法发起群收款"
),
/**
/**
* 支付
* 支付
...
...
order-application-service/src/main/java/cn/freemud/service/impl/CollageOrderServiceImpl.java
View file @
69c0e8a0
...
@@ -26,6 +26,8 @@ import com.freemud.api.assortment.datamanager.entity.vo.AssortmentCustomerInfoVo
...
@@ -26,6 +26,8 @@ import com.freemud.api.assortment.datamanager.entity.vo.AssortmentCustomerInfoVo
import
com.freemud.api.assortment.datamanager.manager.customer.AssortmentCustomerInfoManager
;
import
com.freemud.api.assortment.datamanager.manager.customer.AssortmentCustomerInfoManager
;
import
com.freemud.application.sdk.api.ordercenter.enums.ResponseResultEnum
;
import
com.freemud.application.sdk.api.ordercenter.enums.ResponseResultEnum
;
import
com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderCostResp
;
import
com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderCostResp
;
import
com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderSettlementResp
;
import
com.freemud.sdk.api.assortment.order.enums.OldOrderAccountType
;
import
com.freemud.sdk.api.assortment.order.request.order.BaseQueryOrderRequest
;
import
com.freemud.sdk.api.assortment.order.request.order.BaseQueryOrderRequest
;
import
com.freemud.sdk.api.assortment.order.request.order.GroupBuyRequest
;
import
com.freemud.sdk.api.assortment.order.request.order.GroupBuyRequest
;
import
com.freemud.sdk.api.assortment.order.response.order.GroupBuyResponse
;
import
com.freemud.sdk.api.assortment.order.response.order.GroupBuyResponse
;
...
@@ -113,6 +115,12 @@ public class CollageOrderServiceImpl implements CollageOrderService {
...
@@ -113,6 +115,12 @@ public class CollageOrderServiceImpl implements CollageOrderService {
List
<
GroupBuyDto
>
list
=
new
ArrayList
<>();
List
<
GroupBuyDto
>
list
=
new
ArrayList
<>();
GroupBuyDto
groupBuyDto
;
GroupBuyDto
groupBuyDto
;
List
<
String
>
payerUserIdList
=
productList
.
stream
().
filter
(
product
->
!
order
.
getUserId
().
equals
(
product
.
getUserId
())).
map
(
QueryOrdersResponse
.
DataBean
.
OrderBean
.
ProductBean
::
getUserId
).
distinct
().
collect
(
Collectors
.
toList
());
List
<
String
>
payerUserIdList
=
productList
.
stream
().
filter
(
product
->
!
order
.
getUserId
().
equals
(
product
.
getUserId
())).
map
(
QueryOrdersResponse
.
DataBean
.
OrderBean
.
ProductBean
::
getUserId
).
distinct
().
collect
(
Collectors
.
toList
());
// 付款人列表为空时直接返回错误提示
if
(
null
==
payerUserIdList
||
payerUserIdList
.
isEmpty
())
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_GROUP_BUY_LIST_EMPTY
);
}
for
(
String
payerUserId
:
payerUserIdList
)
{
for
(
String
payerUserId
:
payerUserIdList
)
{
groupBuyDto
=
new
GroupBuyDto
();
groupBuyDto
=
new
GroupBuyDto
();
groupBuyDto
.
setUserId
(
payerUserId
);
groupBuyDto
.
setUserId
(
payerUserId
);
...
@@ -128,7 +136,17 @@ public class CollageOrderServiceImpl implements CollageOrderService {
...
@@ -128,7 +136,17 @@ public class CollageOrderServiceImpl implements CollageOrderService {
// 运费均摊时算上拼单发起人
// 运费均摊时算上拼单发起人
deliveryAmount
=
Math
.
floorDiv
(
deliveryPrice
.
longValue
(),
payerUserIdList
.
size
()
+
1
);
deliveryAmount
=
Math
.
floorDiv
(
deliveryPrice
.
longValue
(),
payerUserIdList
.
size
()
+
1
);
}
}
groupBuyDto
.
setAmount
(
itemAmount
+
packAmount
+
deliveryAmount
);
// 微信拼单优惠分摊
Long
wechatDiscountAmount
=
0L
;
if
(
order
.
getOrderSettlementDetailList
()
!=
null
&&
!
order
.
getOrderSettlementDetailList
().
isEmpty
())
{
List
<
OrderSettlementResp
>
settlements
=
order
.
getOrderSettlementDetailList
().
stream
().
filter
(
settlement
->
(
OldOrderAccountType
.
WEIXIN
.
equals
(
settlement
.
getSettlementType
()))).
collect
(
Collectors
.
toList
());
for
(
OrderSettlementResp
settlement
:
settlements
)
{
wechatDiscountAmount
+=
settlement
.
getShopDiscountAmount
()
+
settlement
.
getPlatformDiscountAmount
();
}
wechatDiscountAmount
=
Math
.
floorDiv
(
wechatDiscountAmount
,
payerUserIdList
.
size
()
+
1
);
}
groupBuyDto
.
setAmount
(
itemAmount
+
packAmount
+
deliveryAmount
-
wechatDiscountAmount
);
groupBuyDto
.
setNickName
(
productList
.
stream
().
filter
(
product
->
payerUserId
.
equals
(
product
.
getUserId
())).
findFirst
().
get
().
getNickName
());
groupBuyDto
.
setNickName
(
productList
.
stream
().
filter
(
product
->
payerUserId
.
equals
(
product
.
getUserId
())).
findFirst
().
get
().
getNickName
());
groupBuyDto
.
setPhotoUrl
(
productList
.
stream
().
filter
(
product
->
payerUserId
.
equals
(
product
.
getUserId
())).
findFirst
().
get
().
getPhotoUrl
());
groupBuyDto
.
setPhotoUrl
(
productList
.
stream
().
filter
(
product
->
payerUserId
.
equals
(
product
.
getUserId
())).
findFirst
().
get
().
getPhotoUrl
());
list
.
add
(
groupBuyDto
);
list
.
add
(
groupBuyDto
);
...
@@ -180,9 +198,16 @@ public class CollageOrderServiceImpl implements CollageOrderService {
...
@@ -180,9 +198,16 @@ public class CollageOrderServiceImpl implements CollageOrderService {
List
<
GroupBuyRequest
.
UserInfo
>
userInfoList
=
new
ArrayList
<>();
List
<
GroupBuyRequest
.
UserInfo
>
userInfoList
=
new
ArrayList
<>();
List
<
QueryOrdersResponse
.
DataBean
.
OrderBean
.
ProductBean
>
productList
=
order
.
getProductList
();
List
<
QueryOrdersResponse
.
DataBean
.
OrderBean
.
ProductBean
>
productList
=
order
.
getProductList
();
List
<
OrderSettlementResp
>
settlementList
=
order
.
getOrderSettlementDetailList
();
// 群收款支付用户列表
// 群收款支付用户列表
List
<
String
>
payerOpenIdList
=
productList
.
stream
().
filter
(
product
->
!
userInfo
.
getMemberId
().
equals
(
product
.
getUserId
())).
map
(
QueryOrdersResponse
.
DataBean
.
OrderBean
.
ProductBean
::
getOpenId
).
distinct
().
collect
(
Collectors
.
toList
());
List
<
String
>
payerOpenIdList
=
productList
.
stream
().
filter
(
product
->
!
userInfo
.
getMemberId
().
equals
(
product
.
getUserId
())).
map
(
QueryOrdersResponse
.
DataBean
.
OrderBean
.
ProductBean
::
getOpenId
).
distinct
().
collect
(
Collectors
.
toList
());
// 付款人列表为空时直接返回错误提示
if
(
null
==
payerOpenIdList
||
payerOpenIdList
.
isEmpty
())
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_GROUP_BUY_LIST_EMPTY
);
}
// 组装群收款付款人列表
// 组装群收款付款人列表
GroupBuyRequest
.
UserInfo
groupBuyUserInfo
;
GroupBuyRequest
.
UserInfo
groupBuyUserInfo
;
for
(
String
payerOpenId
:
payerOpenIdList
)
{
for
(
String
payerOpenId
:
payerOpenIdList
)
{
...
@@ -192,12 +217,22 @@ public class CollageOrderServiceImpl implements CollageOrderService {
...
@@ -192,12 +217,22 @@ public class CollageOrderServiceImpl implements CollageOrderService {
Long
packAmount
=
productList
.
stream
().
filter
(
product
->
(
payerOpenId
.
equals
(
product
.
getOpenId
())
&&
null
!=
product
.
getPackPrice
())).
map
(
QueryOrdersResponse
.
DataBean
.
OrderBean
.
ProductBean
::
getPackPrice
).
reduce
(
Long:
:
sum
).
orElse
(
0L
);
Long
packAmount
=
productList
.
stream
().
filter
(
product
->
(
payerOpenId
.
equals
(
product
.
getOpenId
())
&&
null
!=
product
.
getPackPrice
())).
map
(
QueryOrdersResponse
.
DataBean
.
OrderBean
.
ProductBean
::
getPackPrice
).
reduce
(
Long:
:
sum
).
orElse
(
0L
);
// 运费分摊
// 运费分摊
Long
deliveryAmount
=
0L
;
Long
deliveryAmount
=
0L
;
if
(
order
.
getOrderCostDetailList
()
!=
null
)
{
if
(
order
.
getOrderCostDetailList
()
!=
null
&&
!
order
.
getOrderCostDetailList
().
isEmpty
()
)
{
OrderCostResp
orderCostResp
=
order
.
getOrderCostDetailList
().
stream
().
filter
(
detail
->
(
detail
.
getCostType
().
equals
(
2
)
&&
detail
.
getBillType
().
equals
(
1
))).
findFirst
().
orElse
(
new
OrderCostResp
());
OrderCostResp
orderCostResp
=
order
.
getOrderCostDetailList
().
stream
().
filter
(
detail
->
(
detail
.
getCostType
().
equals
(
2
)
&&
detail
.
getBillType
().
equals
(
1
))).
findFirst
().
orElse
(
new
OrderCostResp
());
BigDecimal
deliveryPrice
=
orderCostResp
.
getActualCostAmount
()
==
null
?
new
BigDecimal
(
0
)
:
orderCostResp
.
getActualCostAmount
();
BigDecimal
deliveryPrice
=
orderCostResp
.
getActualCostAmount
()
==
null
?
new
BigDecimal
(
0
)
:
orderCostResp
.
getActualCostAmount
();
deliveryAmount
=
Math
.
floorDiv
(
deliveryPrice
.
longValue
(),
payerOpenIdList
.
size
()
+
1
);
deliveryAmount
=
Math
.
floorDiv
(
deliveryPrice
.
longValue
(),
payerOpenIdList
.
size
()
+
1
);
}
}
Long
amount
=
itemAmount
+
packAmount
+
deliveryAmount
;
// 微信拼单优惠分摊
Long
wechatDiscountAmount
=
0L
;
if
(
order
.
getOrderSettlementDetailList
()
!=
null
&&
!
order
.
getOrderSettlementDetailList
().
isEmpty
())
{
List
<
OrderSettlementResp
>
settlements
=
order
.
getOrderSettlementDetailList
().
stream
().
filter
(
settlement
->
(
OldOrderAccountType
.
WEIXIN
.
equals
(
settlement
.
getSettlementType
()))).
collect
(
Collectors
.
toList
());
for
(
OrderSettlementResp
settlement
:
settlements
)
{
wechatDiscountAmount
+=
settlement
.
getShopDiscountAmount
()
+
settlement
.
getPlatformDiscountAmount
();
}
wechatDiscountAmount
=
Math
.
floorDiv
(
wechatDiscountAmount
,
payerOpenIdList
.
size
()
+
1
);
}
Long
amount
=
itemAmount
+
packAmount
+
deliveryAmount
-
wechatDiscountAmount
;
groupBuyUserInfo
=
new
GroupBuyRequest
.
UserInfo
();
groupBuyUserInfo
=
new
GroupBuyRequest
.
UserInfo
();
groupBuyUserInfo
.
setOpenid
(
payerOpenId
);
groupBuyUserInfo
.
setOpenid
(
payerOpenId
);
groupBuyUserInfo
.
setAmount
(
Integer
.
parseInt
(
String
.
valueOf
(
amount
)));
groupBuyUserInfo
.
setAmount
(
Integer
.
parseInt
(
String
.
valueOf
(
amount
)));
...
...
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
View file @
69c0e8a0
...
@@ -176,6 +176,8 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -176,6 +176,8 @@ public class OrderServiceImpl implements Orderservice {
private
String
cloudPrintQueue
;
private
String
cloudPrintQueue
;
@Value
(
"${mq.cloud_print_exchange}"
)
@Value
(
"${mq.cloud_print_exchange}"
)
private
String
cloud_print_exchange
;
private
String
cloud_print_exchange
;
@Value
(
"${collage.pre_order_pay.goods_tag}"
)
private
String
collageGoodsTag
;
@Autowired
@Autowired
...
@@ -2392,6 +2394,14 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -2392,6 +2394,14 @@ public class OrderServiceImpl implements Orderservice {
OrderPayResponse
orderPayResponse
;
OrderPayResponse
orderPayResponse
;
try
{
try
{
UnifiedOrderRequest
request
=
orderAdapter
.
convent2UnifiedOrderRequest
(
orderBean
,
paymentRequest
,
orderBean
.
getAmount
(),
cardAmount
,
transId
,
partnerPayOvertime
);
UnifiedOrderRequest
request
=
orderAdapter
.
convent2UnifiedOrderRequest
(
orderBean
,
paymentRequest
,
orderBean
.
getAmount
(),
cardAmount
,
transId
,
partnerPayOvertime
);
// add by miaohui for 拼单群收款判断拼单人数大于1时参与微信平台补贴活动,创建预支付时上送goodsTag,后续抽成促销服务活动时删除此逻辑 start
if
(
null
!=
orderBean
.
getMarketingType
()
&&
OrderMarketType
.
COLLAGE
.
getIndex
()
==
orderBean
.
getMarketingType
())
{
// 拼单人数大于1人时参加拼单补贴
if
(
null
!=
orderBean
.
getProductList
()
&&
orderBean
.
getProductList
().
stream
().
map
(
QueryOrdersResponse
.
DataBean
.
OrderBean
.
ProductBean
::
getUserId
).
distinct
().
collect
(
Collectors
.
toList
()).
size
()
>
1
)
{
request
.
setGoodsTag
(
collageGoodsTag
);
}
}
// add by miaohui for 拼单群收款判断拼单人数大于1时参与微信平台补贴活动,创建预支付时上送goodsTag,后续抽成促销服务活动时删除此逻辑 end
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
UnifiedOrderResponse
>
responseBase
=
standardPaymentService
.
unifiedOrder
(
request
,
trackingNo
);
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
UnifiedOrderResponse
>
responseBase
=
standardPaymentService
.
unifiedOrder
(
request
,
trackingNo
);
if
(!
ResponseCodeConstant
.
RESPONSE_SUCCESS_STR
.
equals
(
responseBase
.
getCode
()))
{
if
(!
ResponseCodeConstant
.
RESPONSE_SUCCESS_STR
.
equals
(
responseBase
.
getCode
()))
{
log
.
error
(
"支付SDK返回信息错误,trackingNo:{} request:{} response:{}"
,
trackingNo
,
JSONObject
.
toJSONString
(
request
),
JSONObject
.
toJSONString
(
responseBase
));
log
.
error
(
"支付SDK返回信息错误,trackingNo:{} request:{} response:{}"
,
trackingNo
,
JSONObject
.
toJSONString
(
request
),
JSONObject
.
toJSONString
(
responseBase
));
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/BuySendPromotionService.java
View file @
69c0e8a0
...
@@ -237,19 +237,23 @@ public class BuySendPromotionService implements IPromotionService {
...
@@ -237,19 +237,23 @@ public class BuySendPromotionService implements IPromotionService {
}
}
if
(
manyOrSingle
)
{
if
(
manyOrSingle
)
{
// 多规格
// 多规格
if
(!
Objects
.
equals
(
sendGoodsMap
.
get
(
cartGood
.
getSkuId
()).
get
OriginalGoodsUid
(),
cartGood
.
getCartGoodsUi
d
()))
{
if
(!
Objects
.
equals
(
sendGoodsMap
.
get
(
cartGood
.
getSkuId
()).
get
GoodsId
(),
cartGood
.
getSkuI
d
()))
{
return
;
return
;
}
}
}
else
{
}
else
{
// 单品
// 单品
if
(!
Objects
.
equals
(
sendGoodsMap
.
get
(
cartGood
.
getSpuId
()).
getOriginalGoodsUid
(),
cartGood
.
getCartGoodsUid
()))
{
List
<
String
>
spuIds
=
newCartGoodsList
.
stream
().
map
(
CartGoods:
:
getSpuId
).
collect
(
Collectors
.
toList
());
if
(
spuIds
.
contains
(
cartGood
.
getSpuId
()))
{
return
;
return
;
}
}
}
}
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
SendActivity
.
SendGoods
sendGoods
=
sendGoodsMap
.
get
(
cartGood
.
getGoodsId
());
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
SendActivity
.
SendGoods
sendGoods
=
sendGoodsMap
.
get
(
cartGood
.
getGoodsId
());
if
(
cartGood
.
getCartGoodsUid
().
equals
(
sendGoods
.
getOriginalGoodsUid
()))
{
return
;
}
String
s
=
currentSubName
(
cartGood
);
String
s
=
currentSubName
(
cartGood
);
CartGoods
newCartGoods
=
shoppingCartConvertAdapter
.
convent2CartGoods
(
cartGood
,
sendGoods
.
getNowPrice
());
CartGoods
newCartGoods
=
shoppingCartConvertAdapter
.
convent2CartGoods
(
cartGood
,
sendGoods
.
getNowPrice
());
newCartGoods
.
setOriginalGoodsUid
(
sendGoods
Map
.
get
(
cartGood
.
getSpuId
())
.
getOriginalGoodsUid
());
newCartGoods
.
setOriginalGoodsUid
(
sendGoods
.
getOriginalGoodsUid
());
newCartGoods
.
setClassificationId
(
cartGood
.
getClassificationId
());
newCartGoods
.
setClassificationId
(
cartGood
.
getClassificationId
());
newCartGoods
.
setClassificationName
(
cartGood
.
getClassificationName
());
newCartGoods
.
setClassificationName
(
cartGood
.
getClassificationName
());
newCartGoods
.
setQty
(
sendGoods
.
getSendNumber
()
>
0
?
sendGoods
.
getSendNumber
()
:
SEND_NUMBER
);
newCartGoods
.
setQty
(
sendGoods
.
getSendNumber
()
>
0
?
sendGoods
.
getSendNumber
()
:
SEND_NUMBER
);
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/TwoNDiscountServiceImpl.java
View file @
69c0e8a0
...
@@ -81,12 +81,12 @@ public class TwoNDiscountServiceImpl implements IPromotionService {
...
@@ -81,12 +81,12 @@ public class TwoNDiscountServiceImpl implements IPromotionService {
return
null
;
return
null
;
}
}
List
<
ApportionGoodsDetail
>
list
=
Lists
.
newArrayList
();
List
<
ApportionGoodsDetail
>
list
=
Lists
.
newArrayList
();
for
(
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
ApportionGoods
apportionGood
:
calculationDiscountResult
.
getApportion
Goods
())
{
for
(
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
Goods
apportionGood
:
calculationDiscountResult
.
get
Goods
())
{
if
(!
CollectionUtils
.
isEmpty
(
apportionGood
.
get
ApportionDetail
s
()))
{
if
(!
CollectionUtils
.
isEmpty
(
apportionGood
.
get
Discount
s
()))
{
for
(
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
ApportionGoods
.
ApportionDetails
apportionDetail
:
apportionGood
.
getApportionDetail
s
())
{
for
(
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
Goods
.
GoodsDiscount
apportionDetail
:
apportionGood
.
getDiscount
s
())
{
if
(
apportionDetail
.
get
Activity
Type
().
equals
(
ActivityTypeEnum
.
TYPE_53
.
getCode
()))
{
if
(
apportionDetail
.
getType
().
equals
(
ActivityTypeEnum
.
TYPE_53
.
getCode
()))
{
ApportionGoodsDetail
apportionGoodsDetail
=
new
ApportionGoodsDetail
();
ApportionGoodsDetail
apportionGoodsDetail
=
new
ApportionGoodsDetail
();
apportionGoodsDetail
.
setActivityApportionAmount
(
apportionDetail
.
get
ActivityApportionAm
ount
());
apportionGoodsDetail
.
setActivityApportionAmount
(
apportionDetail
.
get
Disc
ount
());
apportionGoodsDetail
.
setActivityCode
(
apportionDetail
.
getActivityCode
());
apportionGoodsDetail
.
setActivityCode
(
apportionDetail
.
getActivityCode
());
apportionGoodsDetail
.
setActivityName
(
apportionDetail
.
getActivityName
());
apportionGoodsDetail
.
setActivityName
(
apportionDetail
.
getActivityName
());
apportionGoodsDetail
.
setGoodsId
(
apportionGood
.
getGoodsId
());
apportionGoodsDetail
.
setGoodsId
(
apportionGood
.
getGoodsId
());
...
...
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