diff --git a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/result/WxMpUser.java b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/result/WxMpUser.java index 441f7954..6cd9ca06 100644 --- a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/result/WxMpUser.java +++ b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/result/WxMpUser.java @@ -12,7 +12,7 @@ import java.lang.reflect.Type; import java.util.List; /** - * 微信用户信息 + * 微信用户信息. * * @author chanjarster */ @@ -23,7 +23,14 @@ public class WxMpUser implements Serializable { private Boolean subscribe; private String openId; private String nickname; - private String sex; + /** + * 性别描述信息:男、女、未知等. + */ + private String sexDesc; + /** + * 性别表示:1,2等数字. + */ + private Integer sex; private String language; private String city; private String province; @@ -40,12 +47,12 @@ public class WxMpUser implements Serializable { * */ private String unionId; - private Integer sexId; private String remark; private Integer groupId; private Long[] tagIds; + /** - * 用户特权信息,json 数组,如微信沃卡用户为(chinaunicom) + * 用户特权信息,json 数组,如微信沃卡用户为(chinaunicom). */ private String[] privileges; diff --git a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpUserGsonAdapter.java b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpUserGsonAdapter.java index ed85ad62..c096ab0f 100644 --- a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpUserGsonAdapter.java +++ b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpUserGsonAdapter.java @@ -11,34 +11,39 @@ public class WxMpUserGsonAdapter implements JsonDeserializer { @Override public WxMpUser deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException { JsonObject o = json.getAsJsonObject(); - WxMpUser wxMpUser = new WxMpUser(); + WxMpUser user = new WxMpUser(); Integer subscribe = GsonHelper.getInteger(o, "subscribe"); if (subscribe != null) { - wxMpUser.setSubscribe(!new Integer(0).equals(subscribe)); + user.setSubscribe(!new Integer(0).equals(subscribe)); } - wxMpUser.setCity(GsonHelper.getString(o, "city")); - wxMpUser.setCountry(GsonHelper.getString(o, "country")); - wxMpUser.setHeadImgUrl(GsonHelper.getString(o, "headimgurl")); - wxMpUser.setLanguage(GsonHelper.getString(o, "language")); - wxMpUser.setNickname(GsonHelper.getString(o, "nickname")); - wxMpUser.setOpenId(GsonHelper.getString(o, "openid")); - wxMpUser.setProvince(GsonHelper.getString(o, "province")); - wxMpUser.setSubscribeTime(GsonHelper.getLong(o, "subscribe_time")); - wxMpUser.setUnionId(GsonHelper.getString(o, "unionid")); - Integer sexId = GsonHelper.getInteger(o, "sex"); - wxMpUser.setRemark(GsonHelper.getString(o, "remark")); - wxMpUser.setGroupId(GsonHelper.getInteger(o, "groupid")); - wxMpUser.setTagIds(GsonHelper.getLongArray(o, "tagid_list")); - wxMpUser.setPrivileges(GsonHelper.getStringArray(o, "privilege")); - wxMpUser.setSexId(sexId); - if (new Integer(1).equals(sexId)) { - wxMpUser.setSex("男"); - } else if (new Integer(2).equals(sexId)) { - wxMpUser.setSex("女"); - } else { - wxMpUser.setSex("未知"); + user.setCity(GsonHelper.getString(o, "city")); + user.setCountry(GsonHelper.getString(o, "country")); + user.setHeadImgUrl(GsonHelper.getString(o, "headimgurl")); + user.setLanguage(GsonHelper.getString(o, "language")); + user.setNickname(GsonHelper.getString(o, "nickname")); + user.setOpenId(GsonHelper.getString(o, "openid")); + user.setProvince(GsonHelper.getString(o, "province")); + user.setSubscribeTime(GsonHelper.getLong(o, "subscribe_time")); + user.setUnionId(GsonHelper.getString(o, "unionid")); + user.setRemark(GsonHelper.getString(o, "remark")); + user.setGroupId(GsonHelper.getInteger(o, "groupid")); + user.setTagIds(GsonHelper.getLongArray(o, "tagid_list")); + user.setPrivileges(GsonHelper.getStringArray(o, "privilege")); + + Integer sex = GsonHelper.getInteger(o, "sex"); + user.setSex(sex); + switch (sex) { + case 1: + user.setSexDesc("男"); + break; + case 2: + user.setSexDesc("女"); + break; + default: + user.setSexDesc("未知"); } - return wxMpUser; + + return user; } }