mirror of
https://gitee.com/binary/weixin-java-tools.git
synced 2025-08-23 22:11:40 +08:00
#924 增加卡券删除功能
This commit is contained in:
parent
24619d666f
commit
58faf5a891
@ -27,6 +27,11 @@ public interface WxMpCardService {
|
||||
*/
|
||||
String CARD_CODE_UNAVAILABLE = "https://api.weixin.qq.com/card/code/unavailable";
|
||||
|
||||
/**
|
||||
* 卡券删除
|
||||
*/
|
||||
String CARD_DELETE = "https://api.weixin.qq.com/card/delete";
|
||||
|
||||
/**
|
||||
* 得到WxMpService
|
||||
*/
|
||||
@ -189,4 +194,12 @@ public interface WxMpCardService {
|
||||
*/
|
||||
String unavailableCardCode(String cardId, String code, String reason) throws WxErrorException;
|
||||
|
||||
/**
|
||||
* 删除卡券接口
|
||||
* @param cardId
|
||||
* @return
|
||||
* @throws WxErrorException
|
||||
*/
|
||||
WxMpCardDeleteResult deleteCard(String cardId) throws WxErrorException;
|
||||
|
||||
}
|
||||
|
@ -1,18 +1,6 @@
|
||||
package me.chanjar.weixin.mp.api.impl;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.concurrent.locks.Lock;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.google.gson.JsonObject;
|
||||
import com.google.gson.JsonParser;
|
||||
import com.google.gson.JsonPrimitive;
|
||||
import com.google.gson.*;
|
||||
import com.google.gson.reflect.TypeToken;
|
||||
import me.chanjar.weixin.common.bean.WxCardApiSignature;
|
||||
import me.chanjar.weixin.common.error.WxError;
|
||||
@ -22,14 +10,15 @@ import me.chanjar.weixin.common.util.crypto.SHA1;
|
||||
import me.chanjar.weixin.common.util.http.SimpleGetRequestExecutor;
|
||||
import me.chanjar.weixin.mp.api.WxMpCardService;
|
||||
import me.chanjar.weixin.mp.api.WxMpService;
|
||||
import me.chanjar.weixin.mp.bean.card.WxMpCardCreateMessage;
|
||||
import me.chanjar.weixin.mp.bean.card.WxMpCardCreateResult;
|
||||
import me.chanjar.weixin.mp.bean.card.WxMpCardLandingPageCreateRequest;
|
||||
import me.chanjar.weixin.mp.bean.card.WxMpCardLandingPageCreateResult;
|
||||
import me.chanjar.weixin.mp.bean.card.WxMpCardQrcodeCreateResult;
|
||||
import me.chanjar.weixin.mp.bean.card.WxMpCardResult;
|
||||
import me.chanjar.weixin.mp.bean.card.*;
|
||||
import me.chanjar.weixin.mp.enums.TicketType;
|
||||
import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.concurrent.locks.Lock;
|
||||
|
||||
/**
|
||||
* Created by Binary Wang on 2016/7/27.
|
||||
@ -325,4 +314,15 @@ public class WxMpCardServiceImpl implements WxMpCardService {
|
||||
jsonRequest.addProperty("reason", reason);
|
||||
return this.wxMpService.post(CARD_CODE_UNAVAILABLE, GSON.toJson(jsonRequest));
|
||||
}
|
||||
|
||||
@Override
|
||||
public WxMpCardDeleteResult deleteCard(String cardId) throws WxErrorException {
|
||||
if (StringUtils.isEmpty(cardId)) {
|
||||
throw new WxErrorException(WxError.builder().errorCode(41012).errorMsg("cardId不能为空").build());
|
||||
}
|
||||
JsonObject param = new JsonObject();
|
||||
param.addProperty("card_id", cardId);
|
||||
String response = this.wxMpService.post(CARD_DELETE, param.toString());
|
||||
return WxMpCardDeleteResult.fromJson(response);
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,25 @@
|
||||
package me.chanjar.weixin.mp.bean.card;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @description 卡券返回结果基础类
|
||||
* @author: fanxl
|
||||
* @date: 2019/1/22 0022 10:08
|
||||
*/
|
||||
public class BaseWxMpCardResult implements Serializable {
|
||||
|
||||
/**
|
||||
* 错误码
|
||||
*/
|
||||
private Integer errcode;
|
||||
|
||||
/**
|
||||
* 错误信息
|
||||
*/
|
||||
private String errmsg;
|
||||
|
||||
public boolean isSuccess() {
|
||||
return 0 == errcode;
|
||||
}
|
||||
}
|
@ -0,0 +1,21 @@
|
||||
package me.chanjar.weixin.mp.bean.card;
|
||||
|
||||
import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder;
|
||||
|
||||
/**
|
||||
* @description 删除卡券结果
|
||||
* @author: fanxl
|
||||
* @date: 2019/1/22 0022 10:24
|
||||
*/
|
||||
public class WxMpCardDeleteResult extends BaseWxMpCardResult {
|
||||
|
||||
public static WxMpCardDeleteResult fromJson(String json) {
|
||||
return WxMpGsonBuilder.create().fromJson(json, WxMpCardDeleteResult.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return WxMpGsonBuilder.create().toJson(this);
|
||||
}
|
||||
|
||||
}
|
@ -1,29 +1,16 @@
|
||||
package me.chanjar.weixin.mp.api.impl;
|
||||
|
||||
import org.testng.annotations.*;
|
||||
|
||||
import com.google.inject.Inject;
|
||||
import me.chanjar.weixin.common.bean.WxCardApiSignature;
|
||||
import me.chanjar.weixin.common.error.WxErrorException;
|
||||
import me.chanjar.weixin.mp.api.WxMpService;
|
||||
import me.chanjar.weixin.mp.api.test.ApiTestModule;
|
||||
import me.chanjar.weixin.mp.bean.card.BaseInfo;
|
||||
import me.chanjar.weixin.mp.bean.card.CashCard;
|
||||
import me.chanjar.weixin.mp.bean.card.CashCardCreateRequest;
|
||||
import me.chanjar.weixin.mp.bean.card.DateInfo;
|
||||
import me.chanjar.weixin.mp.bean.card.DiscountCard;
|
||||
import me.chanjar.weixin.mp.bean.card.DiscountCardCreateRequest;
|
||||
import me.chanjar.weixin.mp.bean.card.GeneralCard;
|
||||
import me.chanjar.weixin.mp.bean.card.GeneralCardCreateRequest;
|
||||
import me.chanjar.weixin.mp.bean.card.GiftCard;
|
||||
import me.chanjar.weixin.mp.bean.card.GiftCardCreateRequest;
|
||||
import me.chanjar.weixin.mp.bean.card.GrouponCard;
|
||||
import me.chanjar.weixin.mp.bean.card.GrouponCardCreateRequest;
|
||||
import me.chanjar.weixin.mp.bean.card.Sku;
|
||||
import me.chanjar.weixin.mp.bean.card.WxMpCardCreateMessage;
|
||||
import me.chanjar.weixin.mp.bean.card.WxMpCardResult;
|
||||
import me.chanjar.weixin.mp.bean.card.*;
|
||||
import org.testng.annotations.Guice;
|
||||
import org.testng.annotations.Test;
|
||||
|
||||
import static org.testng.AssertJUnit.*;
|
||||
import static org.testng.AssertJUnit.assertEquals;
|
||||
import static org.testng.AssertJUnit.assertNotNull;
|
||||
|
||||
/**
|
||||
* 测试代码仅供参考,未做严格测试,因原接口作者并未提供单元测试代码
|
||||
@ -210,4 +197,13 @@ public class WxMpCardServiceImplTest {
|
||||
generalMessage.setCardCreateRequest(generalCardCreateRequest);
|
||||
System.out.println(this.wxService.getCardService().createCard(generalMessage));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testDeleteCard() throws Exception {
|
||||
String cardId = "pwkrWjtw7W4_l50kCQcZ1in1yS6g";
|
||||
WxMpCardDeleteResult result = this.wxService.getCardService().deleteCard(cardId);
|
||||
assertEquals(result.isSuccess(), true);
|
||||
System.out.println(result);
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user