Commit e41ba509 by xyy

新增储值卡的case

parent fe50320d
......@@ -81,8 +81,9 @@ public class TestPurchaseByDeposit extends BaseTestImpl {
//查询启用中的储值卡,获取储值卡id
String cardId = XMJSONPath.readPath(cardTools.fetchPageOfMemberCard("DEPOSIT_CARD",info), "$.result.records[0].id");
String latestSnapshotId = XMJSONPath.readPath(cardTools.fetchDetailById(cardId,info), "$.result.latestSnapshotId");
//购买1张储值卡
cardTools.signOrderDeposit(cardId,memberId,"0.00","1000.00",info);
cardTools.signOrderDeposit(cardId,latestSnapshotId,memberId,"0.00","1000.00",info);
//获取C端第1张可使用的储值卡
depositCardId = XMJSONPath.readPath(minCardTools.listUserUsableDepositCard(memberId, paymentScenario), "$.result.applicableList[0].id");
}
......
......@@ -52,7 +52,7 @@ public class TestSingleReserveByDeposit extends BaseTestImpl {
@BeforeMethod
@Override
public void beforeTest(){
setTestInfo(ApiModule.Lunar_Reserve,"API_createSingleReserve", LoginAccount.GYM_MINIAPPC, Terminal.minApp,"xym");
setTestInfo(ApiModule.Lunar_Reserve,"API_createSingleReserve", LoginAccount.GYM_MINIAPPC, Terminal.minApp,"xyy");
super.beforeTest();
}
@Test(description = "小程序使用储值卡单次预约私教课")
......@@ -78,8 +78,9 @@ public class TestSingleReserveByDeposit extends BaseTestImpl {
//查询启用中的储值卡,获取储值卡id
String cardId = XMJSONPath.readPath(cardTools.fetchPageOfMemberCard("DEPOSIT_CARD",info), "$.result.records[0].id");
String latestSnapshotId = XMJSONPath.readPath(cardTools.fetchDetailById(cardId,info), "$.result.latestSnapshotId");
//购买1张储值卡
cardTools.signOrderDeposit(cardId,memberId,"0.00","1000.00",info);
cardTools.signOrderDeposit(cardId,latestSnapshotId,memberId,"0.00","1000.00",info);
//获取C端第1张可使用的储值卡
depositCardId = XMJSONPath.readPath(minCardTools.listUserUsableDepositCard(memberId, "SINGLE_PAY_RESERVE"), "$.result.applicableList[0].id");
}
......
package com.xiaomai.cases.polar.applet;
import com.alibaba.fastjson.JSONObject;
import com.xiaomai.enums.ApiModule;
import com.xiaomai.enums.LoginAccount;
import com.xiaomai.enums.RequestType;
......@@ -9,7 +8,6 @@ import com.xiaomai.utils.RandomStringUtil;
import com.xiaomai.utils.XMBaseTest;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
/**
* @Author zxy
......@@ -52,12 +50,14 @@ public class TestSetPageConfig extends XMBaseTest {
}
//@Test(description = "修改小程序页面配置-我的"),json一直在更新,每次上线后脚本的json不更新就会产生脏数据,先注释掉
// @Test(description = "修改小程序页面配置-我的")//json一直在更新,每次上线后脚本的json不更新就会产生脏数据,先注释掉
public void testSetStyleConfig_2(){
String shareText = "自动化脚本我的页面分享"+RandomStringUtil.randomString(5);
String body = "{\"tenantId\":\"1800375402938871809\",\"tenantType\":\"STUDIO\",\"config\":{\"shareSetting\":{\"shareText\":\""+shareText+"\",\"shareUrl\":\"\"},\"memberAssets\":[{\"code\":\"MEMBER_CARD\",\"visible\":true,\"title\":\"会员卡\"},{\"code\":\"EXPERIENCE_CARD\",\"visible\":true,\"title\":\"体验卡\"},{\"code\":\"TRAINING_CAMP\",\"visible\":true,\"title\":\"训练营\"}],\"bgSetting\":{\"selected\":\"DEFAULT\",\"bgUrl\":\"https://image.xiaomaiketang.com/xm/internal/TRcJHBMjyj.png\"},\"commonlyEntry\":[{\"code\":\"MY_ORDER\",\"visible\":true,\"title\":\"我的订单\"},{\"code\":\"MY_BOOKING\",\"visible\":true,\"title\":\"我的预约\"},{\"code\":\"SCAN_CODE_SIGNIN\",\"visible\":true,\"title\":\"扫码签到\"}]},\"pageKey\":\"MINE\"}";
// String body = "{\"tenantId\":\"1800375402938871809\",\"tenantType\":\"STUDIO\",\"config\":{\"shareSetting\":{\"shareText\":\""+shareText+"\",\"shareUrl\":\"\"},\"memberAssets\":[{\"code\":\"MEMBER_CARD\",\"visible\":true,\"title\":\"会员卡\"},{\"code\":\"EXPERIENCE_CARD\",\"visible\":true,\"title\":\"体验卡\"},{\"code\":\"TRAINING_CAMP\",\"visible\":true,\"title\":\"训练营\"}],\"bgSetting\":{\"selected\":\"DEFAULT\",\"bgUrl\":\"https://image.xiaomaiketang.com/xm/internal/TRcJHBMjyj.png\"},\"commonlyEntry\":[{\"code\":\"MY_ORDER\",\"visible\":true,\"title\":\"我的订单\"},{\"code\":\"MY_BOOKING\",\"visible\":true,\"title\":\"我的预约\"},{\"code\":\"SCAN_CODE_SIGNIN\",\"visible\":true,\"title\":\"扫码签到\"}]},\"pageKey\":\"MINE\"}";
String body ="{\"tenantId\":\"1800375402938871809\",\"tenantType\":\"STUDIO\",\"config\":{\"shareSetting\":{\"shareText\":\"一起来运动,探索更好的自己吧~\",\"shareUrl\":\"\"},\"memberAssets\":[{\"code\":\"CARD_PACKAGE\",\"visible\":true,\"title\":\"卡包\"},{\"code\":\"COUPON\",\"visible\":false,\"title\":\"优惠券\"},{\"code\":\"TRAINING_CAMP\",\"visible\":true,\"title\":\"训练营\"}],\"bgSetting\":{\"selected\":\"DEFAULT\",\"bgUrl\":\"https://image.xiaomaiketang.com/xm/internal/TRcJHBMjyj.png\"},\"commonlyEntry\":[{\"code\":\"MY_ORDER\",\"visible\":true,\"title\":\"我的订单\"},{\"code\":\"MY_BOOKING\",\"visible\":true,\"title\":\"我的预约\"},{\"code\":\"MY_ELECONTRACT\",\"visible\":true,\"title\":\"我的合同\"},{\"code\":\"SCAN_CODE_SIGNIN\",\"visible\":true,\"title\":\"扫码签到\"},{\"code\":\"BODY_RECORD\",\"visible\":true,\"title\":\"体测记录\"},{\"code\":\"FACE_INFO\",\"visible\":true,\"title\":\"人脸信息\"}]},\"pageKey\":\"MINE\"}";
xmAppApi.doRequest(RequestType.JSON,params,body,headers).assetsSuccess(true);
Assert.assertEquals(appletTools.getPageConfig("MINE").getJSONObject("result").getJSONObject("shareSetting").getString("shareText"),shareText);
......
......@@ -13,6 +13,7 @@ import com.xiaomai.utils.XMBaseTest;
import org.springframework.stereotype.Component;
import java.math.BigDecimal;
import java.util.UUID;
@Component("orderTools")
public class OrderTools extends XMBaseTest {
......@@ -427,11 +428,55 @@ public class OrderTools extends XMBaseTest {
}
/**
* @param
* @description: 获取订单详情
* @param id:主键ID(创建订单获取的result)
* @author: yangfangfang
* 创建订单使用储值卡抵扣
* @param dataUserInfos
* @return
**/
public String signOrder(String memberId,String memberCardId,String cardSnapshotId,String price,String depositCardId,String depositCardName,DataUserInfo...dataUserInfos) {
dataApi.setApiModule(ApiModule.Polar_Finance)
.setApiName("API_signOrder")
.setTerminal(Terminal.B);
super.beforeDataRequest(dataUserInfos);
JSONObject cardChange = new JSONObject();
cardChange.put("quantity","10");//课程可使用次数
cardChange.put("entryQuantity","30");//30天有效期
cardChange.put("price",price);
cardChange.put("validPeriod","30");
cardChange.put("totalPrice",price);
cardChange.put("latestSnapshotId",cardSnapshotId);
JSONObject card = new JSONObject();
card.put("cardId",memberCardId);
card.put("cardSnapshotId",cardSnapshotId);
card.put("cardChange",cardChange);
card.put("activatePattern","PURCHASE");//
card.put("commodityCardType","MEMBER_CARD");
JSONObject jsonObject = new JSONObject();
jsonObject.put("card",card);
jsonObject.put("memberId",memberId);
jsonObject.put("receivableAmount",0);
jsonObject.put("paymentWays",new JSONArray());
jsonObject.put("depositCardId",depositCardId);
jsonObject.put("depositCardName",depositCardName);
jsonObject.put("depositAmount",price);
jsonObject.put("salesmanId",dataApi.getLoginInfo().getAdminId());
jsonObject.put("operationTime", TimeUtils.getCurrentTime());
jsonObject.put("objectId", UUID.randomUUID().toString());
jsonObject.put("studioId",dataApi.getLoginInfo().getStudioId());
jsonObject.put("operatorId",dataApi.getLoginInfo().getAdminId());
jsonObject.put("brandId",dataApi.getLoginInfo().getBrandId());
dataApi.doRequest(RequestType.JSON, dataparams,jsonObject.toJSONString(), dataheadrs).assetsSuccess(true);
return dataApi.getBodyInJSON().getString("result");
}
/**
* @param
* @description: 获取订单详情
* @param id:主键ID(创建订单获取的result)
* @author: yangfangfang
**/
public JSONObject getDetail(String id,DataUserInfo...dataUserInfos){
dataApi.setApiModule(ApiModule.Polar_Finance)
......
package com.xiaomai.cases.polar.finance.order;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.xiaomai.cases.polar.member.Tools;
import com.xiaomai.cases.polar.memberCard.CardTools;
import com.xiaomai.enums.ApiModule;
import com.xiaomai.enums.LoginAccount;
import com.xiaomai.enums.RequestType;
import com.xiaomai.enums.Terminal;
import com.xiaomai.utils.RandomStringUtil;
import com.xiaomai.utils.TimeUtils;
import com.xiaomai.utils.XMBaseTest;
import com.xiaomai.utils.XMJSONPath;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import javax.annotation.Resource;
import java.util.UUID;
public class TestRefundOrderByDeposit extends XMBaseTest {
String memberId;
@Resource(name = "tools")
Tools tools;
@Resource(name = "orderTools")
OrderTools orderTools;
@Resource(name = "cardTools")
CardTools cardTools;
@BeforeMethod
public void beforeTest(){
xmAppApi.setApiModule(ApiModule.Polar_Finance)
.setApiName("API_refundOrder")
.setLoginUser(LoginAccount.GYM_PROD)
.setTerminal(Terminal.B);
dal.setCase_owner("xyy")
.setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
}
@Test(description = "购买储值卡->使用储值购买会员卡->退会员卡->作废退会员卡->作废会员卡->作废储值卡")
public void testRefundOrder_memberCard() throws InterruptedException{
//定义会员名称和手机号
String name = "储值卡会员"+ RandomStringUtil.randomString(3);
String phone = RandomStringUtil.randomMobile("266");
//获取会员id,没有则新建一个
int memberTotal = Integer.parseInt(tools.search("NORMAL","NORMAL").getJSONObject("result").getString("total"));
if (memberTotal == 0) {
memberId = tools.create(name,phone).getString("result");
}
memberId = tools.search("NORMAL","NORMAL").getJSONObject("result").getJSONArray("records").getJSONObject(0).getString("id");
//获取启用中的会员卡id及价格
String memberCardId = XMJSONPath.readPath(cardTools.fetchPageOfMemberCard("MEMBER_CARD"), "$.result.records[0].id") ;
String price = XMJSONPath.readPath(cardTools.fetchPageOfMemberCard("MEMBER_CARD"), "$.result.records[0].price");
String cardSnapshotId = XMJSONPath.readPath(cardTools.fetchDetailById(memberCardId), "$.result.latestSnapshotId");
//获取启用中的储值卡id
String cardId = XMJSONPath.readPath(cardTools.fetchPageOfMemberCard("DEPOSIT_CARD"), "$.result.records[0].id");
String latestSnapshotId = XMJSONPath.readPath(cardTools.fetchDetailById(cardId), "$.result.latestSnapshotId");
//1.购储值卡,获取购卡订单id
String voucherId = cardTools.signOrderDeposit(cardId,latestSnapshotId,memberId,"0.00",price);
Thread.sleep(3000);
//通过搜索接口查询该会员名下第1张已售卖的储值卡
String benefitId = XMJSONPath.readPath(orderTools.fetchUserCardList("DEPOSIT",memberId,"NORMAL"),"$.result[0].depositBenefit.id");
String depositCardId = XMJSONPath.readPath(orderTools.fetchUserCardList("DEPOSIT",memberId,"NORMAL"),"$.result[0].id");
String depositCardName = XMJSONPath.readPath(orderTools.fetchUserCardList("DEPOSIT",memberId,"NORMAL"),"$.result[0].title");
//先查询消耗记录的条数
int num = Integer.parseInt(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,depositCardId),"$.result.total"));
//2.使用储值卡购买会员卡产生的订单id
String orderId = orderTools.signOrder(memberId,memberCardId,cardSnapshotId,price,depositCardId,depositCardName);
String memberCardNo = XMJSONPath.readPath(orderTools.fetchUserCardList("MEMBER",memberId,"NORMAL"),"$.result[0].id");
//储值卡消耗记录新增1条,类型为签单,消耗金额
Assert.assertTrue(Integer.parseInt(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,depositCardId), "$.result.total")) ==num+1);
Assert.assertEquals(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,depositCardId), "$.result.records[0].consumeType"),"DEPOSIT_SIGN_ORDER");
Assert.assertEquals(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,depositCardId), "$.result.records[0].changeOfGiveBalance"),"-"+price);
//3.退会员卡
JSONObject card = new JSONObject();
card.put("giftQuantity",0);
card.put("memberCardId",memberCardNo);
card.put("quantity",10);
card.put("entryQuantity",0);
card.put("entryGiftQuantity",0);
card.put("refundAmount",0);
card.put("entryRefundAmount",0);
card.put("commodityCardType","MEMBER_CARD");
JSONObject jsonObject = new JSONObject();
jsonObject.put("operationTime", TimeUtils.getCurrentTime());
jsonObject.put("card",card);
jsonObject.put("objectId", UUID.randomUUID().toString());
jsonObject.put("studioId",xmAppApi.getLoginInfo().getStudioId());
jsonObject.put("memberId",memberId);
jsonObject.put("receivableAmount",0);
jsonObject.put("operatorId",xmAppApi.getLoginInfo().getAdminId());
jsonObject.put("paymentWays",new JSONArray());
jsonObject.put("depositRechargeAmount",0);
jsonObject.put("depositGiveAmount",price);
jsonObject.put("depositCardId",depositCardId);
jsonObject.put("brandId",xmAppApi.getLoginInfo().getBrandId());
//调用请求
xmAppApi.doRequest(RequestType.JSON,params,jsonObject.toJSONString(),headers).assetsSuccess(true);
String refundOrderId = XMJSONPath.readPath(xmAppApi.getBodyInJSON(), "$.result");
//储值卡消耗记录新增1条,类型为退单,增加金额
Assert.assertTrue(Integer.parseInt(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,depositCardId), "$.result.total")) ==num+2);
Assert.assertEquals(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,depositCardId), "$.result.records[0].consumeType"),"DEPOSIT_REFUND_ORDER");
Assert.assertEquals(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,depositCardId), "$.result.records[0].changeOfGiveBalance"),price);
//4.作废退会员卡
orderTools.discard(refundOrderId,"其他","自动化作废退会员卡订单");
//储值卡消耗记录新增1条,类型为作废退单,消耗金额
Assert.assertTrue(Integer.parseInt(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,depositCardId), "$.result.total")) ==num+3);
Assert.assertEquals(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,depositCardId), "$.result.records[0].consumeType"),"DEPOSIT_DISCARD_REFUND_ORDER");
Assert.assertEquals(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,depositCardId), "$.result.records[0].changeOfGiveBalance"),"-"+price);
//5.作废会员卡
orderTools.discard(orderId,"其他","自动化作废会员卡订单");
//储值卡消耗记录新增1条,类型为作废签单,增加金额
Assert.assertTrue(Integer.parseInt(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,depositCardId), "$.result.total")) ==num+4);
Assert.assertEquals(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,depositCardId), "$.result.records[0].consumeType"),"DEPOSIT_DISCARD_SIGN_ORDER");
Assert.assertEquals(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,depositCardId), "$.result.records[0].changeOfGiveBalance"),price);
//6.作废储值卡
orderTools.discard(voucherId,"其他","自动化作废储值卡订单");
//储值卡消耗记录新增1条,类型为退单,消耗金额
Assert.assertTrue(Integer.parseInt(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,depositCardId), "$.result.total")) ==num+5);
Assert.assertEquals(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,depositCardId), "$.result.records[0].consumeType"),"DISCARD_ORDER");
Assert.assertEquals(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,depositCardId), "$.result.records[0].changeOfGiveBalance"),"-"+price);
}
}
package com.xiaomai.cases.polar.finance.order;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.xiaomai.cases.polar.member.Tools;
import com.xiaomai.cases.polar.memberCard.CardTools;
import com.xiaomai.enums.ApiModule;
import com.xiaomai.enums.LoginAccount;
import com.xiaomai.enums.RequestType;
import com.xiaomai.enums.Terminal;
import com.xiaomai.utils.RandomStringUtil;
import com.xiaomai.utils.XMBaseTest;
import com.xiaomai.utils.XMJSONPath;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import javax.annotation.Resource;
import java.util.UUID;
public class TestRefundOrderDeposit extends XMBaseTest {
String memberId;
String price = "100.00";//储值卡价格
@Resource(name = "tools")
Tools tools;
@Resource(name = "orderTools")
OrderTools orderTools;
@Resource(name = "cardTools")
CardTools cardTools;
@BeforeMethod
public void beforeTest(){
xmAppApi.setApiModule(ApiModule.Polar_Finance)
.setApiName("API_refundOrderDeposit")
.setLoginUser(LoginAccount.GYM_PROD)
.setTerminal(Terminal.B);
dal.setCase_owner("xyy")
.setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
}
@Test(description = "购买储值卡->退储值卡->作废退卡->作废购卡")
public void testRefundOrderDeposit() throws InterruptedException {
//定义会员名称和手机号
String name = "储值卡会员"+ RandomStringUtil.randomString(3);
String phone = RandomStringUtil.randomMobile("266");
//获取会员id,没有则新建一个
int memberTotal = Integer.parseInt(tools.search("NORMAL","NORMAL").getJSONObject("result").getString("total"));
if (memberTotal == 0) {
memberId = tools.create(name,phone).getString("result");
}
memberId = tools.search("NORMAL","NORMAL").getJSONObject("result").getJSONArray("records").getJSONObject(0).getString("id");
//查询启用中的储值卡,获取储值卡id
String cardId = XMJSONPath.readPath(cardTools.fetchPageOfMemberCard("DEPOSIT_CARD"), "$.result.records[0].id");
String latestSnapshotId = XMJSONPath.readPath(cardTools.fetchDetailById(cardId), "$.result.latestSnapshotId");
//1.购储值卡,获取购卡订单id
String voucherId = cardTools.signOrderDeposit(cardId,latestSnapshotId,memberId,"0.00",price);
Thread.sleep(3000);
//通过搜索接口查询该会员名下第1张已售卖的储值卡
String benefitId = XMJSONPath.readPath(orderTools.fetchUserCardList("DEPOSIT",memberId,"NORMAL"),"$.result[0].depositBenefit.id");
String memberCardId = XMJSONPath.readPath(orderTools.fetchUserCardList("DEPOSIT",memberId,"NORMAL"),"$.result[0].id");
//先查询消耗记录的条数
int num = Integer.parseInt(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,memberCardId),"$.result.total"));
//2.退储值卡
JSONObject card = new JSONObject();
card.put("giftAmount",price);
card.put("memberCardId",memberCardId);
card.put("rechargeAmount",0);
card.put("refundAmount",0);
card.put("commodityCardType","DEPOSIT_CARD");
JSONObject jsonObject = new JSONObject();
jsonObject.put("operationTime",System.currentTimeMillis());
jsonObject.put("card",card);
jsonObject.put("objectId", UUID.randomUUID().toString());
jsonObject.put("studioId",xmAppApi.getLoginInfo().getStudioId());
jsonObject.put("memberId",memberId);
jsonObject.put("receivableAmount",0);
jsonObject.put("operatorId",xmAppApi.getLoginInfo().getAdminId());
jsonObject.put("paymentWays",new JSONArray());
jsonObject.put("brandId",xmAppApi.getLoginInfo().getBrandId());
//调用请求
xmAppApi.doRequest(RequestType.JSON,params,jsonObject.toJSONString(),headers).assetsSuccess(true);
String refundOrderId = XMJSONPath.readPath(xmAppApi.getBodyInJSON(), "$.result");
//订单状态为已退款
Assert.assertEquals(XMJSONPath.readPath(orderTools.getDetail(refundOrderId), "$.result.state"), "PAID");
Assert.assertEquals(XMJSONPath.readPath(orderTools.getDetail(refundOrderId),"$.result.type"),"REFUND");
//储值卡状态=已退卡,剩余金额=0
Assert.assertEquals(XMJSONPath.readPath(cardTools.memberCardFindDetailById(memberCardId),"$.result.state"),"REFUNDED");
Assert.assertEquals(XMJSONPath.readPath(cardTools.memberCardFindDetailById(memberCardId),"$.result.price"),"0.00");
//储值卡消耗记录新增1条,并且类型为退卡,退款金额=购买金额
Assert.assertTrue(Integer.parseInt(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,memberCardId), "$.result.total")) ==num+1);
Assert.assertEquals(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,memberCardId), "$.result.records[0].consumeType"),"REFUND");
Assert.assertEquals(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,memberCardId), "$.result.records[0].changeOfGiveBalance"),"-"+price);
//3.作废退卡
orderTools.discard(refundOrderId,"其他","自动化作废退储值卡订单");
Thread.sleep(3000);
//储值卡状态生效中
Assert.assertEquals(XMJSONPath.readPath(cardTools.memberCardFindDetailById(memberCardId),"$.result.state"),"NORMAL");
//储值卡消耗记录新增1条,并且类型为取消退卡
Assert.assertTrue(Integer.parseInt(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,memberCardId), "$.result.total")) ==num+2);
Assert.assertEquals(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,memberCardId), "$.result.records[0].consumeType"),"CANCEL_REFUND");
Assert.assertEquals(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,memberCardId), "$.result.records[0].changeOfGiveBalance"),price);
//4.作废购卡
orderTools.discard(voucherId,"其他","自动化作废储值卡订单");
Thread.sleep(3000);
//check储值卡状态为已作废
Assert.assertEquals(XMJSONPath.readPath(cardTools.memberCardFindDetailById(memberCardId),"$.result.state"),"DISCARD");
//check剩余金额=0
Assert.assertEquals(XMJSONPath.readPath(cardTools.memberCardFindDetailById(memberCardId),"$.result.depositBenefit.leftBalance"),"0.00");
//check消耗记录有1条作废订单记录
Assert.assertTrue(Integer.parseInt(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,memberCardId), "$.result.total")) ==num+3);
Assert.assertEquals(XMJSONPath.readPath(cardTools.fetchPageOfConsumeRecord(benefitId,memberCardId),"$.result.records[0].consumeType"),"DISCARD_ORDER");
}
}
......@@ -134,9 +134,9 @@ public class CardTools extends XMBaseTest {
/**
* b端购买储值卡
* @param dataUserInfos
* @return
* @return 订单id
*/
public void signOrderDeposit(String depositCardId,String memberId,String rechargeAmount,String giftAmount,DataUserInfo... dataUserInfos) {
public String signOrderDeposit(String cardId,String cardSnapshotId,String memberId,String rechargeAmount,String giftAmount,DataUserInfo... dataUserInfos) {
dataApi.setApiModule(ApiModule.Polar_Card)
.setApiName("API_signOrderDeposit")
.setTerminal(Terminal.B);
......@@ -148,8 +148,8 @@ public class CardTools extends XMBaseTest {
cardChange.put("rechargeAmount",rechargeAmount);//实充金额
JSONObject card = new JSONObject();
card.put("cardId",depositCardId);
card.put("cardSnapshotId",depositCardId);
card.put("cardId",cardId);
card.put("cardSnapshotId",cardSnapshotId);
card.put("cardChange",cardChange);
card.put("commodityCardType","DEPOSIT_CARD");
......@@ -171,10 +171,15 @@ public class CardTools extends XMBaseTest {
jsonObject.put("memberId", memberId);
jsonObject.put("receivableAmount",rechargeAmount);//应收金额
jsonObject.put("operatorId", dataApi.getLoginInfo().getAdminId());
jsonObject.put("paymentWays",paymentWays);//支付方式
jsonObject.put("brandId",dataApi.getLoginInfo().getBrandId());
if (rechargeAmount=="0.00"){
jsonObject.put("paymentWays",new JSONArray());//支付方式
}else {
jsonObject.put("paymentWays",paymentWays);//支付方式
}
dataApi.doRequest(RequestType.JSON, dataparams, jsonObject.toJSONString(), dataheadrs).assetsSuccess(true);
return dataApi.getBodyInJSON().getString("result");
}
/**
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment