#516 实现修改门店网络WiFi信息的接口

This commit is contained in:
Binary Wang 2019-06-30 23:14:21 +08:00
parent 7ac670b287
commit 37f5e59fbd
4 changed files with 49 additions and 3 deletions

View File

@ -45,4 +45,22 @@ public interface WxMpWifiService {
* @throws WxErrorException 异常
*/
WxMpWifiShopDataResult getShopWifiInfo(int shopId) throws WxErrorException;
/**
* <pre>
* 修改门店网络信息.
* 通过此接口修改门店的网络信息包括网络名称ssid或密码需注意
* 只有门店下已添加Wi-Fi网络信息才能调用此接口修改网络信息添加方式请参考添加密码型设备"添加portal型设备”接口文档。
* 网络信息修改后密码型设备需同步修改所有设备的ssid或密码portal型设备需修改所有设备的ssid并按照硬件鉴权协议接口修改第二步改造移动端portal页面中的ssid参数否则将无法正常连网
* 文档地址https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1457435413
* </pre>
*
* @param shopId 门店ID
* @param oldSsid 旧的ssid
* @param ssid 无线网络设备的ssid32个字符以内ssid支持中文但可能因设备兼容性问题导致显示乱码或无法连接等问题相关风险自行承担 当门店下是portal型设备时ssid必填当门店下是密码型设备时ssid选填且ssid和密码必须有一个以大写字母WX开头
* @param password 无线网络设备的密码8-24个字符不能包含中文字符 当门店下是密码型设备时才可填写password且ssid和密码必须有一个以大写字母WX开头
* @return 是否更新成功
* @throws WxErrorException .
*/
boolean updateShopWifiInfo(int shopId, String oldSsid, String ssid, String password) throws WxErrorException;
}

View File

@ -8,8 +8,7 @@ import me.chanjar.weixin.mp.api.WxMpWifiService;
import me.chanjar.weixin.mp.bean.wifi.WxMpWifiShopDataResult;
import me.chanjar.weixin.mp.bean.wifi.WxMpWifiShopListResult;
import static me.chanjar.weixin.mp.enums.WxMpApiUrl.Wifi.BIZWIFI_SHOP_GET;
import static me.chanjar.weixin.mp.enums.WxMpApiUrl.Wifi.BIZWIFI_SHOP_LIST;
import static me.chanjar.weixin.mp.enums.WxMpApiUrl.Wifi.*;
/**
* <pre>
@ -37,4 +36,21 @@ public class WxMpWifiServiceImpl implements WxMpWifiService {
json.addProperty("shop_id", shopId);
return WxMpWifiShopDataResult.fromJson(this.wxMpService.post(BIZWIFI_SHOP_GET, json.toString()));
}
@Override
public boolean updateShopWifiInfo(int shopId, String oldSsid, String ssid, String password) throws WxErrorException {
JsonObject json = new JsonObject();
json.addProperty("shop_id", shopId);
json.addProperty("old_ssid", oldSsid);
json.addProperty("ssid", ssid);
if (password != null) {
json.addProperty("password", password);
}
try {
this.wxMpService.post(BIZWIFI_SHOP_UPDATE, json.toString());
return true;
} catch (WxErrorException e) {
throw e;
}
}
}

View File

@ -391,7 +391,12 @@ public interface WxMpApiUrl {
/**
* get.
*/
BIZWIFI_SHOP_GET(API_DEFAULT_HOST_URL, "/bizwifi/shop/get");
BIZWIFI_SHOP_GET(API_DEFAULT_HOST_URL, "/bizwifi/shop/get"),
/**
* upadte.
*/
BIZWIFI_SHOP_UPDATE(API_DEFAULT_HOST_URL, "/bizwifi/shop/update");
private String prefix;
private String path;

View File

@ -43,6 +43,13 @@ public class WxMpWifiServiceImplTest {
System.out.println(wifiInfo);
}
@Test
public void testUpdateShopWifiInfo() throws WxErrorException {
final boolean result = this.wxService.getWifiService()
.updateShopWifiInfo(123, "123", "345", null);
assertThat(result).isTrue();
}
public static class MockTest {
private WxMpService wxService = mock(WxMpService.class);