瀏覽代碼

pull request (#163)

* 新增两个接口:获取设备绑定的用户、获取用户绑定的设备

* update

* 申请设备二维码接口的返回格式有变动,做出相应更改。
master
F.Dong 8 年之前
committed by Binary Wang
父節點
當前提交
6847a41759
共有 6 個文件被更改,包括 158 次插入21 次删除
  1. +19
    -0
      weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpDeviceService.java
  2. +18
    -4
      weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/impl/WxMpDeviceServiceImpl.java
  3. +12
    -10
      weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/device/BaseResp.java
  4. +46
    -0
      weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/device/WxDeviceBindDeviceResult.java
  5. +56
    -0
      weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/device/WxDeviceOpenIdResult.java
  6. +7
    -7
      weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/device/WxDeviceQrCodeResult.java

+ 19
- 0
weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpDeviceService.java 查看文件

@@ -76,5 +76,24 @@ public interface WxMpDeviceService {
*/
WxDeviceBindResult compelUnbind(WxDeviceBind wxDeviceBind) throws WxErrorException;

/**
* <pre>
* 通过device type和device id 获取设备主人的openid
* 详情请见:http://iot.weixin.qq.com/wiki/new/index.html?page=3-4-11
* </pre>
* @param deviceType 设备类型,目前为"公众账号原始ID"
* @param deviceId 设备ID
* @return WxDeviceOpenIdResult
*/
WxDeviceOpenIdResult getOpenId(String deviceType,String deviceId) throws WxErrorException;

/**
* <pre>
* 通过openid获取用户在当前devicetype下绑定的deviceid列表`
* 详情请见:http://iot.weixin.qq.com/wiki/new/index.html?page=3-4-12
* </pre>
* @param openId 要查询的用户的openid
* @return WxDeviceBindDeviceResult
*/
WxDeviceBindDeviceResult getBindDevice(String openId) throws WxErrorException;
}

+ 18
- 4
weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/impl/WxMpDeviceServiceImpl.java 查看文件

@@ -23,7 +23,7 @@ public class WxMpDeviceServiceImpl implements WxMpDeviceService {
@Override
public TransMsgResp transMsg(WxDeviceMsg msg) throws WxErrorException {
String url = API_URL_PREFIX + "/transmsg";
String response = this.wxMpService.post(url,msg.toJson());
String response = this.wxMpService.post(url, msg.toJson());
return TransMsgResp.fromJson(response);
}

@@ -37,21 +37,21 @@ public class WxMpDeviceServiceImpl implements WxMpDeviceService {
@Override
public WxDeviceAuthorizeResult authorize(WxDeviceAuthorize wxDeviceAuthorize) throws WxErrorException {
String url = API_URL_PREFIX + "/authorize_device";
String response = this.wxMpService.post(url,wxDeviceAuthorize.toJson());
String response = this.wxMpService.post(url, wxDeviceAuthorize.toJson());
return WxDeviceAuthorizeResult.fromJson(response);
}

@Override
public WxDeviceBindResult bind(WxDeviceBind wxDeviceBind) throws WxErrorException {
String url = API_URL_PREFIX + "/bind";
String response = this.wxMpService.post(url,wxDeviceBind.toJson());
String response = this.wxMpService.post(url, wxDeviceBind.toJson());
return WxDeviceBindResult.fromJson(response);
}

@Override
public WxDeviceBindResult compelBind(WxDeviceBind wxDeviceBind) throws WxErrorException {
String url = API_URL_PREFIX + "/compel_bind";
String response = this.wxMpService.post(url,wxDeviceBind.toJson());
String response = this.wxMpService.post(url, wxDeviceBind.toJson());
return WxDeviceBindResult.fromJson(response);
}

@@ -68,5 +68,19 @@ public class WxMpDeviceServiceImpl implements WxMpDeviceService {
String response = this.wxMpService.post(url, wxDeviceBind.toJson());
return WxDeviceBindResult.fromJson(response);
}

@Override
public WxDeviceOpenIdResult getOpenId(String deviceType, String deviceId) throws WxErrorException {
String url = API_URL_PREFIX + "/get_openid";
String response = this.wxMpService.get(url, "device_type=" + deviceType + "&device_id=" + deviceId);
return WxDeviceOpenIdResult.fromJson(response);
}

@Override
public WxDeviceBindDeviceResult getBindDevice(String openId) throws WxErrorException {
String url = API_URL_PREFIX+"/get_bind_device";
String response = this.wxMpService.get(url,"openid="+openId);
return WxDeviceBindDeviceResult.fromJson(response);
}
}


+ 12
- 10
weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/device/BaseResp.java 查看文件

@@ -38,23 +38,25 @@ public class BaseResp extends AbstractDeviceBean{
}

private class BaseInfo {
private String device_type;
private String device_id;
@SerializedName("device_type")
private String deviceType;
@SerializedName("device_id")
private String deviceId;

public String getDevice_type() {
return device_type;
public String getDeviceType() {
return deviceType;
}

public void setDevice_type(String device_type) {
this.device_type = device_type;
public void setDeviceType(String deviceType) {
this.deviceType = deviceType;
}

public String getDevice_id() {
return device_id;
public String getDeviceId() {
return deviceId;
}

public void setDevice_id(String device_id) {
this.device_id = device_id;
public void setDeviceId(String deviceId) {
this.deviceId = deviceId;
}
}
}

+ 46
- 0
weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/device/WxDeviceBindDeviceResult.java 查看文件

@@ -0,0 +1,46 @@
package me.chanjar.weixin.mp.bean.device;

import com.google.gson.annotations.SerializedName;
import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder;

import java.util.List;

/**
* Created by keungtung on 16/12/2016.
*/
public class WxDeviceBindDeviceResult extends AbstractDeviceBean {
@SerializedName("resp_msg")
private RespMsg respMsg;
@SerializedName("openid")
private String openId;
@SerializedName("device_list")
private List<Device> devices;

public static WxDeviceBindDeviceResult fromJson(String json) {
return WxMpGsonBuilder.create().fromJson(json, WxDeviceBindDeviceResult.class);
}

private class Device {
@SerializedName("device_type")
private String deviceType;
@SerializedName("device_id")
private String deviceId;

public String getDeviceType() {
return deviceType;
}

public void setDeviceType(String deviceType) {
this.deviceType = deviceType;
}

public String getDeviceId() {
return deviceId;
}

public void setDeviceId(String deviceId) {
this.deviceId = deviceId;
}
}

}

+ 56
- 0
weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/device/WxDeviceOpenIdResult.java 查看文件

@@ -0,0 +1,56 @@
package me.chanjar.weixin.mp.bean.device;

import com.google.gson.annotations.SerializedName;
import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder;

import java.util.List;

/**
* Created by keungtung on 16/12/2016.
*/
public class WxDeviceOpenIdResult extends AbstractDeviceBean {
@SerializedName("errcode")
private Integer errCode;
@SerializedName("errmsg")
private String errMsg;
@SerializedName("open_id")
private List<String> openIds;
@SerializedName("resp_msg")
private RespMsg respMsg;

public static WxDeviceOpenIdResult fromJson(String json) {
return WxMpGsonBuilder.create().fromJson(json, WxDeviceOpenIdResult.class);
}

public Integer getErrCode() {
return errCode;
}

public void setErrCode(Integer errCode) {
this.errCode = errCode;
}

public String getErrMsg() {
return errMsg;
}

public void setErrMsg(String errMsg) {
this.errMsg = errMsg;
}

public List<String> getOpenIds() {
return openIds;
}

public void setOpenIds(List<String> openIds) {
this.openIds = openIds;
}

public RespMsg getRespMsg() {
return respMsg;
}

public void setRespMsg(RespMsg respMsg) {
this.respMsg = respMsg;
}
}

+ 7
- 7
weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/device/WxDeviceQrCodeResult.java 查看文件

@@ -6,15 +6,15 @@ import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder;
/**
* Created by keungtung on 10/12/2016.
*/
public class WxDeviceQrCodeResult extends AbstractDeviceBean{
public class WxDeviceQrCodeResult extends AbstractDeviceBean {
@SerializedName("deviceid")
private String deviceId;
@SerializedName("qrticket")
private String qrTicket;
@SerializedName("devicelicence")
private String deviceLicence;
@SerializedName("resp_msg")
private RespMsg respMsg;
@SerializedName("base_resp")
private BaseResp baseResp;

public static WxDeviceQrCodeResult fromJson(String json) {
return WxMpGsonBuilder.INSTANCE.create().fromJson(json, WxDeviceQrCodeResult.class);
@@ -28,12 +28,12 @@ public class WxDeviceQrCodeResult extends AbstractDeviceBean{
this.deviceLicence = deviceLicence;
}

public RespMsg getRespMsg() {
return respMsg;
public BaseResp getBaseResp() {
return baseResp;
}

public void setRespMsg(RespMsg respMsg) {
this.respMsg = respMsg;
public void setBaseResp(BaseResp baseResp) {
this.baseResp = baseResp;
}

public String getDeviceId() {


Loading…
取消
儲存