Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
X
xm-sportstest
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
xiamai-test
xm-sportstest
Commits
695e0af7
Commit
695e0af7
authored
Jan 03, 2025
by
yangfangfang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
物品
parent
5e953052
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
168 additions
and
92 deletions
+168
-92
src/main/java/com/xiaomai/cases/polar/goods/TestGoodsOrder.java
+2
-16
src/main/java/com/xiaomai/cases/polar/goods/TestGoodsOrderByDeposit.java
+163
-73
src/main/java/com/xiaomai/cases/polar/goods/TestModifyGoods.java
+3
-3
No files found.
src/main/java/com/xiaomai/cases/polar/goods/TestGoodsOrder.java
View file @
695e0af7
...
@@ -95,10 +95,6 @@ public class TestGoodsOrder extends XMBaseTest {
...
@@ -95,10 +95,6 @@ public class TestGoodsOrder extends XMBaseTest {
JSONObject
beforeGetCostData_type
=
financeDataTools
.
getCostData_type
(
"DAY"
,
"GOODS"
,
TimeUtils
.
getTodayTime
(),
TimeUtils
.
getTodayEndTime
());
JSONObject
beforeGetCostData_type
=
financeDataTools
.
getCostData_type
(
"DAY"
,
"GOODS"
,
TimeUtils
.
getTodayTime
(),
TimeUtils
.
getTodayEndTime
());
BigDecimal
beforeConfirmedAmount
=
new
BigDecimal
(
beforeGetCostData_type
.
getJSONObject
(
"result"
).
getString
(
"confirmedAmount"
));
//确认收入
BigDecimal
beforeConfirmedAmount
=
new
BigDecimal
(
beforeGetCostData_type
.
getJSONObject
(
"result"
).
getString
(
"confirmedAmount"
));
//确认收入
boolean
checkAllowPurchase
=
Boolean
.
parseBoolean
(
goodCTools
.
checkAllowPurchase
(
id
,
memberId
,
price
,
beforeInventory
,
info
).
getJSONObject
(
"result"
).
getString
(
"success"
));
//校验一下物品购买是否可以通过,为true才可以
if
(
checkAllowPurchase
==
true
)
{
JSONObject
purchaseGoods
=
goodCTools
.
purchaseGoods
(
"0.00"
,
null
,
memberId
,
""
,
price
.
toString
(),
id
,
price
,
1
,
info
);
JSONObject
purchaseGoods
=
goodCTools
.
purchaseGoods
(
"0.00"
,
null
,
memberId
,
""
,
price
.
toString
(),
id
,
price
,
1
,
info
);
String
orderId1
=
purchaseGoods
.
getJSONObject
(
"result"
).
getString
(
"id"
);
String
orderId1
=
purchaseGoods
.
getJSONObject
(
"result"
).
getString
(
"id"
);
...
@@ -157,10 +153,7 @@ public class TestGoodsOrder extends XMBaseTest {
...
@@ -157,10 +153,7 @@ public class TestGoodsOrder extends XMBaseTest {
Assert
.
assertEquals
(
lastConfirmedAmount
,
afterConfirmedAmount
,
"取消购买1个物品的待支付订单后,财务中心-营收明细-物品的确认收入应无变化"
);
Assert
.
assertEquals
(
lastConfirmedAmount
,
afterConfirmedAmount
,
"取消购买1个物品的待支付订单后,财务中心-营收明细-物品的确认收入应无变化"
);
}
else
{
System
.
out
.
println
(
"物品购买校验未通过,不能下单"
);
}
}
}
@Test
(
description
=
"签单单规格:待支付->待补交->作废订单"
)
@Test
(
description
=
"签单单规格:待支付->待补交->作废订单"
)
...
@@ -202,10 +195,6 @@ public class TestGoodsOrder extends XMBaseTest {
...
@@ -202,10 +195,6 @@ public class TestGoodsOrder extends XMBaseTest {
JSONObject
beforeGetCostData_type
=
financeDataTools
.
getCostData_type
(
"DAY"
,
"GOODS"
,
TimeUtils
.
getTodayTime
(),
TimeUtils
.
getTodayEndTime
());
JSONObject
beforeGetCostData_type
=
financeDataTools
.
getCostData_type
(
"DAY"
,
"GOODS"
,
TimeUtils
.
getTodayTime
(),
TimeUtils
.
getTodayEndTime
());
BigDecimal
beforeConfirmedAmount
=
new
BigDecimal
(
beforeGetCostData_type
.
getJSONObject
(
"result"
).
getString
(
"confirmedAmount"
));
//确认收入
BigDecimal
beforeConfirmedAmount
=
new
BigDecimal
(
beforeGetCostData_type
.
getJSONObject
(
"result"
).
getString
(
"confirmedAmount"
));
//确认收入
boolean
checkAllowPurchase
=
Boolean
.
parseBoolean
(
goodCTools
.
checkAllowPurchase
(
id
,
memberId
,
price
,
beforeInventory
,
info
).
getJSONObject
(
"result"
).
getString
(
"success"
));
//校验一下物品购买是否可以通过,为true才可以
if
(
checkAllowPurchase
==
true
)
{
JSONObject
purchaseGoods
=
goodCTools
.
purchaseGoods
(
"0.00"
,
null
,
memberId
,
""
,
price
.
toString
(),
id
,
price
,
1
,
info
);
JSONObject
purchaseGoods
=
goodCTools
.
purchaseGoods
(
"0.00"
,
null
,
memberId
,
""
,
price
.
toString
(),
id
,
price
,
1
,
info
);
String
orderId2
=
purchaseGoods
.
getJSONObject
(
"result"
).
getString
(
"id"
);
String
orderId2
=
purchaseGoods
.
getJSONObject
(
"result"
).
getString
(
"id"
);
...
@@ -294,10 +283,7 @@ public class TestGoodsOrder extends XMBaseTest {
...
@@ -294,10 +283,7 @@ public class TestGoodsOrder extends XMBaseTest {
BigDecimal
discardConfirmedAmount
=
new
BigDecimal
(
discardGetCostData_type
.
getJSONObject
(
"result"
).
getString
(
"confirmedAmount"
));
//确认收入
BigDecimal
discardConfirmedAmount
=
new
BigDecimal
(
discardGetCostData_type
.
getJSONObject
(
"result"
).
getString
(
"confirmedAmount"
));
//确认收入
Assert
.
assertEquals
(
discardConfirmedAmount
,
lastConfirmedAmount
.
subtract
(
unpaidAmount
.
setScale
(
2
,
RoundingMode
.
HALF_UP
)),
"B端作废订单后,财务中心-营收明细-物品的确认收入应减少"
);
Assert
.
assertEquals
(
discardConfirmedAmount
,
lastConfirmedAmount
.
subtract
(
unpaidAmount
.
setScale
(
2
,
RoundingMode
.
HALF_UP
)),
"B端作废订单后,财务中心-营收明细-物品的确认收入应减少"
);
}
else
{
System
.
out
.
println
(
"物品购买校验未通过,不能下单"
);
}
}
}
...
...
src/main/java/com/xiaomai/cases/polar/goods/TestGoodsOrderByDeposit.java
View file @
695e0af7
...
@@ -11,6 +11,7 @@ import com.xiaomai.client.DataUserInfo;
...
@@ -11,6 +11,7 @@ import com.xiaomai.client.DataUserInfo;
import
com.xiaomai.enums.ApiModule
;
import
com.xiaomai.enums.ApiModule
;
import
com.xiaomai.enums.LoginAccount
;
import
com.xiaomai.enums.LoginAccount
;
import
com.xiaomai.enums.Terminal
;
import
com.xiaomai.enums.Terminal
;
import
com.xiaomai.utils.RandomStringUtil
;
import
com.xiaomai.utils.TimeUtils
;
import
com.xiaomai.utils.TimeUtils
;
import
com.xiaomai.utils.XMBaseTest
;
import
com.xiaomai.utils.XMBaseTest
;
import
org.testng.Assert
;
import
org.testng.Assert
;
...
@@ -53,7 +54,7 @@ public class TestGoodsOrderByDeposit extends XMBaseTest {
...
@@ -53,7 +54,7 @@ public class TestGoodsOrderByDeposit extends XMBaseTest {
super
.
beforeTest
();
super
.
beforeTest
();
}
}
@Test
(
description
=
"使用储值卡购买&退货退款->作废退&作废购买"
)
@Test
(
description
=
"使用储值卡购买
单规格
&退货退款->作废退&作废购买"
)
public
void
TestGoodsOrderByDeposit
()
{
public
void
TestGoodsOrderByDeposit
()
{
//涉及到订单的都使用存量物品数据,因为购买过物品就不能被删除了,所以不会买一次新建一个
//涉及到订单的都使用存量物品数据,因为购买过物品就不能被删除了,所以不会买一次新建一个
...
@@ -62,9 +63,10 @@ public class TestGoodsOrderByDeposit extends XMBaseTest {
...
@@ -62,9 +63,10 @@ public class TestGoodsOrderByDeposit extends XMBaseTest {
// "name": "自动化禁用-购买订单单规格1元",
// "name": "自动化禁用-购买订单单规格1元",
// "id": "1874413587237335042",
// "id": "1874413587237335042",
// "name": "自动化禁用-购买订单多规格1元",
// "name": "自动化禁用-购买订单多规格1元",
//存量储值卡:自动化用于物品储值卡1元禁用
//case1:使用储值卡购买非0订单,储值卡全额抵扣->已完成
//case1:使用储值卡购买非0订单,储值卡全额抵扣->已完成
,物品权益到账,储值卡额度减少
//切换端位
//切换端位
info
.
setTerminal
(
Terminal
.
minApp
);
info
.
setTerminal
(
Terminal
.
minApp
);
...
@@ -81,10 +83,10 @@ public class TestGoodsOrderByDeposit extends XMBaseTest {
...
@@ -81,10 +83,10 @@ public class TestGoodsOrderByDeposit extends XMBaseTest {
//获取用户
//获取用户
memberId
=
userTools
.
getMemberInfo
(
info
).
getString
(
"memberId"
);
memberId
=
userTools
.
getMemberInfo
(
info
).
getString
(
"memberId"
);
String
goodsId1
=
"1874413
587237335042
"
;
String
goodsId1
=
"1874413
681302990849
"
;
//获取储值卡
//获取储值卡
JSONObject
tenantMemberCardCommonSearch
=
cardTools
.
tenantMemberCardCommonSearch
(
"DEPOSIT_CARD"
,
"自动化
储值卡1元
"
);
JSONObject
tenantMemberCardCommonSearch
=
cardTools
.
tenantMemberCardCommonSearch
(
"DEPOSIT_CARD"
,
"自动化
用于物品储值卡1元禁用
"
);
String
cardId
=
tenantMemberCardCommonSearch
.
getJSONArray
(
"result"
).
getJSONObject
(
0
).
getString
(
"id"
);
String
cardId
=
tenantMemberCardCommonSearch
.
getJSONArray
(
"result"
).
getJSONObject
(
0
).
getString
(
"id"
);
//获取储值卡详情
//获取储值卡详情
JSONObject
fetchDetailById
=
cardTools
.
fetchDetailById
(
cardId
);
JSONObject
fetchDetailById
=
cardTools
.
fetchDetailById
(
cardId
);
...
@@ -102,9 +104,9 @@ public class TestGoodsOrderByDeposit extends XMBaseTest {
...
@@ -102,9 +104,9 @@ public class TestGoodsOrderByDeposit extends XMBaseTest {
//获取B端商品详情
//获取B端商品详情
JSONObject
getDetail_goods
=
goodTools
.
getDetail_goods
(
goodsId1
);
JSONObject
getDetail_goods
=
goodTools
.
getDetail_goods
(
goodsId1
);
String
id
=
getDetail_goods
.
getJSONObject
(
"result"
).
get
JSONObject
(
"multiSpecInfo"
).
getJSONArray
(
"specCombinationList"
).
getJSONObject
(
0
).
get
String
(
"id"
);
String
id
=
getDetail_goods
.
getJSONObject
(
"result"
).
getString
(
"id"
);
BigDecimal
price
=
new
BigDecimal
(
getDetail_goods
.
getJSONObject
(
"result"
).
getJSONObject
(
"
multiSpecInfo"
).
getJSONArray
(
"specCombinationList"
).
getJSONObject
(
0
).
getString
(
"price"
));
BigDecimal
price
=
new
BigDecimal
(
getDetail_goods
.
getJSONObject
(
"result"
).
getJSONObject
(
"
singleSpecInfo"
).
getString
(
"price"
));
int
beforeInventory
=
Integer
.
parseInt
(
getDetail_goods
.
getJSONObject
(
"result"
).
getJSONObject
(
"
multiSpecInfo"
).
getJSONArray
(
"specCombinationList"
).
getJSONObject
(
0
).
getString
(
"inventory"
));
int
beforeInventory
=
Integer
.
parseInt
(
getDetail_goods
.
getJSONObject
(
"result"
).
getJSONObject
(
"
singleSpecInfo"
).
getString
(
"inventory"
));
try
{
try
{
Thread
.
sleep
(
3000
);
Thread
.
sleep
(
3000
);
...
@@ -116,101 +118,189 @@ public class TestGoodsOrderByDeposit extends XMBaseTest {
...
@@ -116,101 +118,189 @@ public class TestGoodsOrderByDeposit extends XMBaseTest {
JSONObject
beforeGetCostData_type
=
financeDataTools
.
getCostData_type
(
"DAY"
,
"GOODS"
,
TimeUtils
.
getTodayTime
(),
TimeUtils
.
getTodayEndTime
());
JSONObject
beforeGetCostData_type
=
financeDataTools
.
getCostData_type
(
"DAY"
,
"GOODS"
,
TimeUtils
.
getTodayTime
(),
TimeUtils
.
getTodayEndTime
());
BigDecimal
beforeConfirmedAmount
=
new
BigDecimal
(
beforeGetCostData_type
.
getJSONObject
(
"result"
).
getString
(
"confirmedAmount"
));
//确认收入
BigDecimal
beforeConfirmedAmount
=
new
BigDecimal
(
beforeGetCostData_type
.
getJSONObject
(
"result"
).
getString
(
"confirmedAmount"
));
//确认收入
boolean
checkAllowPurchase
=
Boolean
.
parseBoolean
(
goodCTools
.
checkAllowPurchase
(
id
,
memberId
,
price
,
beforeInventory
,
info
).
getJSONObject
(
"result"
).
getString
(
"success"
));
JSONObject
purchaseGoods
=
goodCTools
.
purchaseGoods
(
String
.
valueOf
(
cardPrice
.
add
(
cardBalance
.
setScale
(
2
,
RoundingMode
.
HALF_UP
))),
cardId1
,
memberId
,
""
,
"0.00"
,
id
,
price
,
1
,
info
);
String
signOrderId1
=
purchaseGoods
.
getJSONObject
(
"result"
).
getString
(
"id"
);
//校验一下物品购买是否可以通过,为true才可以
//校验1:获取B端订单详情:已完成状态
if
(
checkAllowPurchase
==
true
)
{
JSONObject
getDetailResult_delinquent
=
orderTools
.
getDetail
(
signOrderId1
);
String
state_delinquent
=
getDetailResult_delinquent
.
getJSONObject
(
"result"
).
getString
(
"state"
);
Assert
.
assertEquals
(
state_delinquent
,
"PAID"
,
"使用储值卡购买订单,全部抵扣完之后生成已完成的物品订单"
);
JSONObject
purchaseGoods
=
goodCTools
.
purchaseGoods
(
String
.
valueOf
(
cardPrice
.
add
(
cardBalance
.
setScale
(
2
,
RoundingMode
.
HALF_UP
))),
cardId1
,
memberId
,
""
,
"0.00"
,
id
,
price
,
1
,
info
);
String
signOrderId1
=
purchaseGoods
.
getJSONObject
(
"result"
).
getString
(
"id"
);
//校验1:获取B端订单详情:已完成状态
//校验2:购买后库存数减少
JSONObject
getDetailResult_delinquent
=
orderTools
.
getDetail
(
signOrderId1
);
//获取B端商品详情
String
state_delinquent
=
getDetailResult_delinquent
.
getJSONObject
(
"result"
).
getString
(
"state"
);
JSONObject
signGetDetail_goods
=
goodTools
.
getDetail_goods
(
goodsId1
);
Assert
.
assertEquals
(
state_delinquent
,
"PAID"
,
"使用储值卡购买订单,全部抵扣完之后生成已完成订单"
);
int
signInventory
=
Integer
.
parseInt
(
signGetDetail_goods
.
getJSONObject
(
"result"
).
getJSONObject
(
"singleSpecInfo"
).
getString
(
"inventory"
));
Assert
.
assertEquals
(
signInventory
,
beforeInventory
-
1
,
"使用储值卡全额抵扣购买物品成功后,物品库存数应减少1个"
);
try
{
try
{
Thread
.
sleep
(
5000
);
Thread
.
sleep
(
5000
);
}
catch
(
InterruptedException
e
)
{
}
catch
(
InterruptedException
e
)
{
throw
new
RuntimeException
(
e
);
throw
new
RuntimeException
(
e
);
}
}
//校验2
:数据中心-财务中心-营收明细-物品的确认收入增加对应的充值金额
//校验3
:数据中心-财务中心-营收明细-物品的确认收入增加对应的充值金额
JSONObject
afterGetCostData_type
=
financeDataTools
.
getCostData_type
(
"DAY"
,
"GOODS"
,
TimeUtils
.
getTodayTime
(),
TimeUtils
.
getTodayEndTime
());
JSONObject
afterGetCostData_type
=
financeDataTools
.
getCostData_type
(
"DAY"
,
"GOODS"
,
TimeUtils
.
getTodayTime
(),
TimeUtils
.
getTodayEndTime
());
BigDecimal
afterConfirmedAmount
=
new
BigDecimal
(
afterGetCostData_type
.
getJSONObject
(
"result"
).
getString
(
"confirmedAmount"
));
//确认收入
BigDecimal
afterConfirmedAmount
=
new
BigDecimal
(
afterGetCostData_type
.
getJSONObject
(
"result"
).
getString
(
"confirmedAmount"
));
//确认收入
Assert
.
assertEquals
(
afterConfirmedAmount
,
beforeConfirmedAmount
.
add
(
cardPrice
.
setScale
(
2
,
RoundingMode
.
HALF_UP
)),
"使用储值卡全额抵扣购买物品,确认收入增加储值卡充值金额"
);
Assert
.
assertEquals
(
afterConfirmedAmount
,
beforeConfirmedAmount
.
add
(
cardPrice
.
setScale
(
2
,
RoundingMode
.
HALF_UP
)),
"使用储值卡全额抵扣购买物品,确认收入增加储值卡充值金额"
);
try
{
try
{
Thread
.
sleep
(
3000
);
Thread
.
sleep
(
3000
);
}
catch
(
InterruptedException
e
)
{
}
catch
(
InterruptedException
e
)
{
throw
new
RuntimeException
(
e
);
throw
new
RuntimeException
(
e
);
}
}
//校验3:储值卡额度减少,剩余充值金额+赠送金额为0
//校验4:储值卡额度减少,剩余充值金额+赠送金额为0
//获取储值卡详情
//获取储值卡详情
JSONObject
fetchDetailById1
=
cardTools
.
memberCardFindDetailById
(
cardId1
);
JSONObject
fetchDetailById1
=
cardTools
.
memberCardFindDetailById
(
cardId1
);
BigDecimal
leftDepositPurchaseBenefitAmount
=
new
BigDecimal
(
fetchDetailById1
.
getJSONObject
(
"result"
).
getJSONObject
(
"depositBenefit"
).
getString
(
"leftPurchaseBalance"
));
BigDecimal
leftDepositPurchaseBenefitAmount1
=
new
BigDecimal
(
fetchDetailById1
.
getJSONObject
(
"result"
).
getJSONObject
(
"depositBenefit"
).
getString
(
"leftPurchaseBalance"
));
BigDecimal
leftDepositGiveBenefitAmount
=
new
BigDecimal
(
fetchDetailById1
.
getJSONObject
(
"result"
).
getJSONObject
(
"depositBenefit"
).
getString
(
"leftGiveBalance"
));
BigDecimal
leftDepositGiveBenefitAmount1
=
new
BigDecimal
(
fetchDetailById1
.
getJSONObject
(
"result"
).
getJSONObject
(
"depositBenefit"
).
getString
(
"leftGiveBalance"
));
BigDecimal
num
=
new
BigDecimal
(
"0.00"
);
BigDecimal
num
=
new
BigDecimal
(
"0.00"
);
Assert
.
assertEquals
(
leftDepositPurchaseBenefitAmount1
,
num
,
"使用储值卡全额抵扣购买物品,所使用的储值卡充值剩余金额应为0"
);
Assert
.
assertEquals
(
leftDepositGiveBenefitAmount1
,
num
,
"使用储值卡全额抵扣购买物品,所使用的储值卡赠送剩余金额应为0"
);
Assert
.
assertEquals
(
leftDepositPurchaseBenefitAmount
,
num
,
"使用储值卡全额抵扣购买物品,所使用的储值卡充值剩余金额应为0"
);
Assert
.
assertEquals
(
leftDepositGiveBenefitAmount
,
num
,
"使用储值卡全额抵扣购买物品,所使用的储值卡赠送剩余金额应为0"
);
//case2:退掉使用储值卡购买非0订单
//拉取这个会员的物品列表
//case2:退掉使用储值卡购买非0订单,物品权益退回,储值卡额度返还
JSONObject
listLeftGoodsItem
=
goodTools
.
listLeftGoodsItem
(
memberId
);
String
refundId
=
listLeftGoodsItem
.
getJSONArray
(
"result"
).
getJSONObject
(
0
).
getString
(
"id"
);
//B端退单时获取订单可退物品(退单界面)
JSONObject
getLeftGoodsItem
=
goodTools
.
getLeftGoodsItem
(
refundId
);
int
quantity
=
Integer
.
parseInt
(
getLeftGoodsItem
.
getJSONObject
(
"result"
).
getString
(
"leftQuantity"
));
BigDecimal
refundAmount
=
new
BigDecimal
(
getLeftGoodsItem
.
getJSONObject
(
"result"
).
getString
(
"leftPaidAmount"
));
String
voucherItemId
=
getLeftGoodsItem
.
getJSONObject
(
"result"
).
getString
(
"id"
);
BigDecimal
receivableAmount
=
new
BigDecimal
(
getLeftGoodsItem
.
getJSONObject
(
"result"
).
getString
(
"leftPaidAmount"
));
BigDecimal
amount
=
new
BigDecimal
(
getLeftGoodsItem
.
getJSONObject
(
"result"
).
getString
(
"leftConsumeAmount"
));
//拉取这个会员的物品列表
JSONObject
listLeftGoodsItem
=
goodTools
.
listLeftGoodsItem
(
memberId
);
String
refundId
=
listLeftGoodsItem
.
getJSONArray
(
"result"
).
getJSONObject
(
0
).
getString
(
"id"
);
//退货退款物品
//B端退单时获取订单可退物品(退单界面)
JSONObject
refundGoods
=
goodTools
.
refundGoods
(
quantity
,
refundAmount
,
true
,
voucherItemId
,
memberId
,
receivableAmount
,
amount
,
"1"
,
cardPrice
,
cardBalance
,
cardId1
);
JSONObject
getLeftGoodsItem
=
goodTools
.
getLeftGoodsItem
(
refundId
);
String
refundOrderId1
=
refundGoods
.
getString
(
"result"
);
int
quantity
=
Integer
.
parseInt
(
getLeftGoodsItem
.
getJSONObject
(
"result"
).
getString
(
"leftQuantity"
));
BigDecimal
refundAmount
=
new
BigDecimal
(
getLeftGoodsItem
.
getJSONObject
(
"result"
).
getString
(
"leftPaidAmount"
));
String
voucherItemId
=
getLeftGoodsItem
.
getJSONObject
(
"result"
).
getString
(
"id"
);
BigDecimal
receivableAmount
=
new
BigDecimal
(
getLeftGoodsItem
.
getJSONObject
(
"result"
).
getString
(
"leftPaidAmount"
));
BigDecimal
amount
=
new
BigDecimal
(
getLeftGoodsItem
.
getJSONObject
(
"result"
).
getString
(
"leftConsumeAmount"
));
//校验:
//退货退款物品
//校验1:获取B端订单详情:退单已完成状态
JSONObject
refundGoods
=
goodTools
.
refundGoods
(
quantity
,
refundAmount
,
true
,
voucherItemId
,
memberId
,
receivableAmount
,
amount
,
"1"
,
cardPrice
,
cardBalance
,
cardId1
);
JSONObject
getDetailResult_refund
=
orderTools
.
getDetail
(
refundOrderId1
);
String
refundOrderId1
=
refundGoods
.
getString
(
"result"
);
String
state_refund
=
getDetailResult_refund
.
getJSONObject
(
"result"
).
getString
(
"state"
);
Assert
.
assertEquals
(
state_refund
,
"PAID"
,
"B端退货退款成功后退单订单状态变为已完成"
);
try
{
//校验:
Thread
.
sleep
(
5000
);
//校验1:获取B端订单详情:退单已完成状态
}
catch
(
InterruptedException
e
)
{
JSONObject
getDetailResult_refund
=
orderTools
.
getDetail
(
refundOrderId1
);
throw
new
RuntimeException
(
e
);
String
state_refund
=
getDetailResult_refund
.
getJSONObject
(
"result"
).
getString
(
"state"
);
}
Assert
.
assertEquals
(
state_refund
,
"PAID"
,
"B端退货退款成功后退单物品订单状态变为已完成"
);
//校验2:数据中心-财务中心-营收明细-物品的确认收入应减少充值金额
//校验2:退货退款后库存数减少
JSONObject
refundAfterGetCostData_type
=
financeDataTools
.
getCostData_type
(
"DAY"
,
"GOODS"
,
TimeUtils
.
getTodayTime
(),
TimeUtils
.
getTodayEndTime
());
//获取B端商品详情
BigDecimal
refundAfterConfirmedAmount
=
new
BigDecimal
(
refundAfterGetCostData_type
.
getJSONObject
(
"result"
).
getString
(
"confirmedAmount"
));
//确认收入
JSONObject
refundGetDetail_goods
=
goodTools
.
getDetail_goods
(
goodsId1
);
Assert
.
assertEquals
(
refundAfterConfirmedAmount
,
afterConfirmedAmount
.
subtract
(
cardPrice
.
setScale
(
2
,
RoundingMode
.
HALF_UP
)),
"退掉使用储值卡全额抵扣购买的物品,确认收入减少储值卡充值金额"
);
int
refundInventory
=
Integer
.
parseInt
(
refundGetDetail_goods
.
getJSONObject
(
"result"
).
getJSONObject
(
"singleSpecInfo"
).
getString
(
"inventory"
));
Assert
.
assertEquals
(
refundInventory
,
signInventory
+
1
,
"使用储值卡全额抵扣购买物品退货退款成功后,物品库存数应增加1个"
);
try
{
Thread
.
sleep
(
5000
);
}
catch
(
InterruptedException
e
)
{
throw
new
RuntimeException
(
e
);
}
//校验3:储值卡额度增加,剩余充值金额+赠送金额增加
//获取储值卡详情
JSONObject
fetchDetailById2
=
cardTools
.
memberCardFindDetailById
(
cardId1
);
BigDecimal
leftDepositPurchaseBenefitAmount1
=
new
BigDecimal
(
fetchDetailById2
.
getJSONObject
(
"result"
).
getJSONObject
(
"depositBenefit"
).
getString
(
"leftPurchaseBalance"
));
BigDecimal
leftDepositGiveBenefitAmount1
=
new
BigDecimal
(
fetchDetailById2
.
getJSONObject
(
"result"
).
getJSONObject
(
"depositBenefit"
).
getString
(
"leftGiveBalance"
));
Assert
.
assertEquals
(
leftDepositPurchaseBenefitAmount1
,
cardPrice
,
"退掉使用储值卡全额抵扣购买的物品,所使用的储值卡充值剩余金额应返回对应的金额"
);
//校验3:数据中心-财务中心-营收明细-物品的确认收入应减少充值金额
Assert
.
assertEquals
(
leftDepositGiveBenefitAmount1
,
cardBalance
,
"使用储值卡全额抵扣购买物品,所使用的储值卡赠送剩余金额应返回对应的金额"
);
JSONObject
refundAfterGetCostData_type
=
financeDataTools
.
getCostData_type
(
"DAY"
,
"GOODS"
,
TimeUtils
.
getTodayTime
(),
TimeUtils
.
getTodayEndTime
());
BigDecimal
refundAfterConfirmedAmount
=
new
BigDecimal
(
refundAfterGetCostData_type
.
getJSONObject
(
"result"
).
getString
(
"confirmedAmount"
));
//确认收入
Assert
.
assertEquals
(
refundAfterConfirmedAmount
,
afterConfirmedAmount
.
subtract
(
cardPrice
.
setScale
(
2
,
RoundingMode
.
HALF_UP
)),
"退掉使用储值卡全额抵扣购买的物品,确认收入减少储值卡充值金额"
);
//校验4:储值卡额度增加,剩余充值金额+赠送金额增加
//获取储值卡详情
JSONObject
fetchDetailById2
=
cardTools
.
memberCardFindDetailById
(
cardId1
);
BigDecimal
leftDepositPurchaseBenefitAmount2
=
new
BigDecimal
(
fetchDetailById2
.
getJSONObject
(
"result"
).
getJSONObject
(
"depositBenefit"
).
getString
(
"leftPurchaseBalance"
));
BigDecimal
leftDepositGiveBenefitAmount2
=
new
BigDecimal
(
fetchDetailById2
.
getJSONObject
(
"result"
).
getJSONObject
(
"depositBenefit"
).
getString
(
"leftGiveBalance"
));
Assert
.
assertEquals
(
leftDepositPurchaseBenefitAmount2
,
cardPrice
,
"退掉使用储值卡全额抵扣购买的物品,所使用的储值卡充值剩余金额应返回对应的金额"
);
Assert
.
assertEquals
(
leftDepositGiveBenefitAmount2
,
cardBalance
,
"使用储值卡全额抵扣购买物品,所使用的储值卡赠送剩余金额应返回对应的金额"
);
//case3:作废退掉使用储值卡购买非0订单,物品权益返还,储值卡额度减少
JSONObject
discardRefundOrder
=
orderTools
.
discard
(
refundOrderId1
,
"重复录入"
,
"已作废物品退货退款订单"
+
RandomStringUtil
.
randomString
(
10
));
//校验:
//校验1:获取B端订单详情:退单已作废状态
JSONObject
getDetailResult_discardRefund
=
orderTools
.
getDetail
(
refundOrderId1
);
String
state_discardRefund
=
getDetailResult_discardRefund
.
getJSONObject
(
"result"
).
getString
(
"state"
);
Assert
.
assertEquals
(
state_discardRefund
,
"DISCARD"
,
"B端作废退货退款订单后,订单状态应由已完成变为已作废"
);
//校验2:退货退款后库存数减少
//获取B端商品详情
JSONObject
disRefundGetDetail_goods
=
goodTools
.
getDetail_goods
(
goodsId1
);
int
disRefundInventory
=
Integer
.
parseInt
(
disRefundGetDetail_goods
.
getJSONObject
(
"result"
).
getJSONObject
(
"singleSpecInfo"
).
getString
(
"inventory"
));
Assert
.
assertEquals
(
disRefundInventory
,
refundInventory
-
1
,
"B端作废退货退款订单后,物品库存数应减少1个"
);
try
{
Thread
.
sleep
(
5000
);
}
catch
(
InterruptedException
e
)
{
throw
new
RuntimeException
(
e
);
}
//校验3:数据中心-财务中心-营收明细-物品的确认收入应增加充值金额
JSONObject
disRefundAfterGetCostData_type
=
financeDataTools
.
getCostData_type
(
"DAY"
,
"GOODS"
,
TimeUtils
.
getTodayTime
(),
TimeUtils
.
getTodayEndTime
());
BigDecimal
disRefundAfterConfirmedAmount
=
new
BigDecimal
(
disRefundAfterGetCostData_type
.
getJSONObject
(
"result"
).
getString
(
"confirmedAmount"
));
//确认收入
Assert
.
assertEquals
(
disRefundAfterConfirmedAmount
,
refundAfterConfirmedAmount
.
add
(
cardPrice
.
setScale
(
2
,
RoundingMode
.
HALF_UP
)),
"作废退掉使用储值卡全额抵扣购买的物品,确认收入增加储值卡充值金额"
);
//校验4:储值卡额度增加,剩余充值金额+赠送金额增加
//获取储值卡详情
JSONObject
fetchDetailById3
=
cardTools
.
memberCardFindDetailById
(
cardId1
);
BigDecimal
leftDepositPurchaseBenefitAmount3
=
new
BigDecimal
(
fetchDetailById3
.
getJSONObject
(
"result"
).
getJSONObject
(
"depositBenefit"
).
getString
(
"leftPurchaseBalance"
));
BigDecimal
leftDepositGiveBenefitAmount3
=
new
BigDecimal
(
fetchDetailById3
.
getJSONObject
(
"result"
).
getJSONObject
(
"depositBenefit"
).
getString
(
"leftGiveBalance"
));
BigDecimal
num1
=
new
BigDecimal
(
"0.00"
);
Assert
.
assertEquals
(
leftDepositPurchaseBenefitAmount3
,
num1
,
"作废退掉使用储值卡全额抵扣购买的物品,所使用的储值卡充值剩余金额应为0"
);
Assert
.
assertEquals
(
leftDepositGiveBenefitAmount3
,
num1
,
"作废退掉使用储值卡全额抵扣购买物品,所使用的储值卡赠送剩余金额应为0"
);
//case4:作废购买订单,物品权益退回,储值卡额度返还
JSONObject
discardSignOrder
=
orderTools
.
discard
(
signOrderId1
,
"重复录入"
,
"已作废物品购买订单"
+
RandomStringUtil
.
randomString
(
10
));
//校验:
//校验1:获取B端订单详情:购买订单已作废状态
JSONObject
getDetailResult_discardSign
=
orderTools
.
getDetail
(
signOrderId1
);
String
state_discardRefund_discardSign
=
getDetailResult_discardSign
.
getJSONObject
(
"result"
).
getString
(
"state"
);
Assert
.
assertEquals
(
state_discardRefund_discardSign
,
"DISCARD"
,
"B端作废购买订单后,签单订单状态由已完成变为已作废"
);
//校验2:退货退款后库存数减少
//获取B端商品详情
JSONObject
disSignGetDetail_goods
=
goodTools
.
getDetail_goods
(
goodsId1
);
int
disSignInventory
=
Integer
.
parseInt
(
disSignGetDetail_goods
.
getJSONObject
(
"result"
).
getJSONObject
(
"singleSpecInfo"
).
getString
(
"inventory"
));
Assert
.
assertEquals
(
disSignInventory
,
disRefundInventory
+
1
,
"B端作废购买订单后,物品库存数应增加1个"
);
try
{
Thread
.
sleep
(
5000
);
}
catch
(
InterruptedException
e
)
{
throw
new
RuntimeException
(
e
);
}
}
//校验3:数据中心-财务中心-营收明细-物品的确认收入应减少充值金额
JSONObject
disSignAfterGetCostData_type
=
financeDataTools
.
getCostData_type
(
"DAY"
,
"GOODS"
,
TimeUtils
.
getTodayTime
(),
TimeUtils
.
getTodayEndTime
());
BigDecimal
disSignAfterConfirmedAmount
=
new
BigDecimal
(
disSignAfterGetCostData_type
.
getJSONObject
(
"result"
).
getString
(
"confirmedAmount"
));
//确认收入
Assert
.
assertEquals
(
disSignAfterConfirmedAmount
,
disRefundAfterConfirmedAmount
.
subtract
(
cardPrice
.
setScale
(
2
,
RoundingMode
.
HALF_UP
)),
"作废使用储值卡全额抵扣购买的物品,确认收入减少储值卡充值金额"
);
//校验4:储值卡额度增加,剩余充值金额+赠送金额增加
//获取储值卡详情
JSONObject
fetchDetailById4
=
cardTools
.
memberCardFindDetailById
(
cardId1
);
BigDecimal
leftDepositPurchaseBenefitAmount4
=
new
BigDecimal
(
fetchDetailById4
.
getJSONObject
(
"result"
).
getJSONObject
(
"depositBenefit"
).
getString
(
"leftPurchaseBalance"
));
BigDecimal
leftDepositGiveBenefitAmount4
=
new
BigDecimal
(
fetchDetailById4
.
getJSONObject
(
"result"
).
getJSONObject
(
"depositBenefit"
).
getString
(
"leftGiveBalance"
));
Assert
.
assertEquals
(
leftDepositPurchaseBenefitAmount4
,
cardPrice
,
"作废使用储值卡全额抵扣购买的物品,所使用的储值卡充值剩余金额应返回对应的金额"
);
Assert
.
assertEquals
(
leftDepositGiveBenefitAmount4
,
cardPrice
,
"作废使用储值卡全额抵扣购买物品,所使用的储值卡赠送剩余金额应返回对应的金额"
);
}
}
}
}
src/main/java/com/xiaomai/cases/polar/goods/TestModifyGoods.java
View file @
695e0af7
...
@@ -598,7 +598,7 @@ public class TestModifyGoods extends XMBaseTest {
...
@@ -598,7 +598,7 @@ public class TestModifyGoods extends XMBaseTest {
}
}
String
name3
=
"自动化多规格编辑
成
单"
;
String
name3
=
"自动化多规格编辑
为
单"
;
//case4:多规格改单规格
//case4:多规格改单规格
...
@@ -648,7 +648,7 @@ public class TestModifyGoods extends XMBaseTest {
...
@@ -648,7 +648,7 @@ public class TestModifyGoods extends XMBaseTest {
//校验1:修改后字段:获取B端物品详情
//校验1:修改后字段:获取B端物品详情
JSONObject
getDetail_goods3
=
goodTools
.
getDetail_goods
(
createGoodsId
).
getJSONObject
(
"result"
);
JSONObject
getDetail_goods3
=
goodTools
.
getDetail_goods
(
createGoodsId
).
getJSONObject
(
"result"
);
Assert
.
assertEquals
(
getDetail_goods3
.
getString
(
"name"
),
"自动化多规格编辑
成
单"
,
"编辑物品名称但详情非编辑后的物品名称"
);
Assert
.
assertEquals
(
getDetail_goods3
.
getString
(
"name"
),
"自动化多规格编辑
为
单"
,
"编辑物品名称但详情非编辑后的物品名称"
);
Assert
.
assertEquals
(
getDetail_goods3
.
getJSONObject
(
"group"
).
getString
(
"id"
),
"1873903328974499841"
,
"编辑物品分组但详情非编辑后的分组"
);
Assert
.
assertEquals
(
getDetail_goods3
.
getJSONObject
(
"group"
).
getString
(
"id"
),
"1873903328974499841"
,
"编辑物品分组但详情非编辑后的分组"
);
Assert
.
assertEquals
(
getDetail_goods3
.
getBoolean
(
"multiSpec"
).
booleanValue
(),
false
,
"编辑成单规格但详情非编辑后的单规格"
);
Assert
.
assertEquals
(
getDetail_goods3
.
getBoolean
(
"multiSpec"
).
booleanValue
(),
false
,
"编辑成单规格但详情非编辑后的单规格"
);
Assert
.
assertEquals
(
getDetail_goods3
.
getString
(
"state"
),
"YES"
,
"编辑成单规格成功后但详情非编辑后的启用状态"
);
Assert
.
assertEquals
(
getDetail_goods3
.
getString
(
"state"
),
"YES"
,
"编辑成单规格成功后但详情非编辑后的启用状态"
);
...
@@ -660,7 +660,7 @@ public class TestModifyGoods extends XMBaseTest {
...
@@ -660,7 +660,7 @@ public class TestModifyGoods extends XMBaseTest {
//校验2:修改后字段:获取C端物品详情
//校验2:修改后字段:获取C端物品详情
JSONObject
getDetail_goodsC3
=
goodCTools
.
getDetail_goods_C
(
createGoodsId
,
info
).
getJSONObject
(
"result"
);
JSONObject
getDetail_goodsC3
=
goodCTools
.
getDetail_goods_C
(
createGoodsId
,
info
).
getJSONObject
(
"result"
);
Assert
.
assertEquals
(
getDetail_goodsC3
.
getString
(
"name"
),
"自动化多规格编辑
成
单"
,
"编辑物品名称但详情非编辑后的物品名称"
);
Assert
.
assertEquals
(
getDetail_goodsC3
.
getString
(
"name"
),
"自动化多规格编辑
为
单"
,
"编辑物品名称但详情非编辑后的物品名称"
);
Assert
.
assertEquals
(
getDetail_goodsC3
.
getJSONObject
(
"group"
).
getString
(
"id"
),
"1873903328974499841"
,
"编辑物品分组但详情非编辑后的分组"
);
Assert
.
assertEquals
(
getDetail_goodsC3
.
getJSONObject
(
"group"
).
getString
(
"id"
),
"1873903328974499841"
,
"编辑物品分组但详情非编辑后的分组"
);
Assert
.
assertEquals
(
getDetail_goodsC3
.
getBoolean
(
"multiSpec"
).
booleanValue
(),
false
,
"编辑成单规格但详情非编辑后的单规格"
);
Assert
.
assertEquals
(
getDetail_goodsC3
.
getBoolean
(
"multiSpec"
).
booleanValue
(),
false
,
"编辑成单规格但详情非编辑后的单规格"
);
Assert
.
assertEquals
(
getDetail_goodsC3
.
getString
(
"state"
),
"YES"
,
"编辑成单规格成功后但详情非编辑后的启用状态"
);
Assert
.
assertEquals
(
getDetail_goodsC3
.
getString
(
"state"
),
"YES"
,
"编辑成单规格成功后但详情非编辑后的启用状态"
);
...
...
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