content: /*
   * 微信公众平台(JAVA) SDK
   *
   * Copyright (c) 2014, Ansitech Network Technology Co.,Ltd All rights reserved.
   * 
   * http://www.weixin4j.org/
   *
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
   *      http://www.apache.org/licenses/LICENSE-2.0
   *
   * Unless required by applicable law or agreed to in writing, software
   * distributed under the License is distributed on an "AS IS" BASIS,
   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   * See the License for the specific language governing permissions and
   * limitations under the License.
   */
  package org.weixin4j.model.user;
  
  /**
   * 微信平台用户管理
   *
   * <p>
   * 通过<tt>Weixin</tt>产生一个请求对象，通过<code>getUser()</code>生成一个<tt>User</tt>，
   * 然后可以调用其他方法</p>
   *
   * @author yangqisheng
   * @since 0.0.1
   */
  public class User {
  
      private String openid;          //用户的标识，对当前公众号唯一
      private String subscribe;       //用户是否订阅该公众号标识，值为0时，代表此用户没有关注该公众号，拉取不到其余信息。
      private String nickname;        //用户的昵称
      private int sex;                //用户的性别，值为1时是男性，值为2时是女性，值为0时是未知
      private String city;            //用户所在城市
      private String country;         //用户所在国家
      private String province;        //用户所在省份
      private String language;        //用户的语言，简体中文为zh_CN
      private String headimgurl;      //用户头像，最后一个数值代表正方形头像大小（有0、46、64、96、132数值可选，0代表640*640正方形头像），用户没有头像时该项为空
      private long subscribe_time;    //用户关注时间，为时间戳。如果用户曾多次关注，则取最后关注时间
      private String unionid;         //只有在用户将公众号绑定到微信开放平台帐号后，才会出现该字段。
      private String remark;          //用户备注
      private String groupid;         //用户分组
      private int[] tagid_list;       //用户被打上的标签ID列表
      private String subscribe_scene; //返回用户关注的渠道来源，ADD_SCENE_SEARCH 公众号搜索，ADD_SCENE_ACCOUNT_MIGRATION 公众号迁移，ADD_SCENE_PROFILE_CARD 名片分享，ADD_SCENE_QR_CODE 扫描二维码，ADD_SCENEPROFILE LINK 图文页内名称点击，ADD_SCENE_PROFILE_ITEM 图文页右上角菜单，ADD_SCENE_PAID 支付后关注，ADD_SCENE_OTHERS 其他
      private String qr_scene;        //二维码扫码场景（开发者自定义）
      private String qr_scene_str;    //二维码扫码场景描述（开发者自定义）
  
      public User() {
      }
  
      /**
       * 获取 用户的标识
       *
       * <p>
       * 对当前公众号唯一</p>
       *
       * @return 用户的标识
       */
      public String getOpenid() {
          return openid;
      }
  
      /**
       * 设置 用户的标识
       *
       * <p>
       * 对当前公众号唯一</p>
       *
       * @param openId 用户的标识
       */
      public void setOpenid(String openId) {
          this.openid = openId;
      }
  
      /**
       * 获取 用户是否订阅该公众号标识
       *
       * <p>
       * 值为0时，代表此用户没有关注该公众号，拉取不到其余信息。</p>
       *
       * @return 用户是否订阅该公众号标识
       */
      public String getSubscribe() {
          return subscribe;
      }
  
      /**
       * 设置 用户是否订阅该公众号标识
       *
       * <p>
       * 值为0时，代表此用户没有关注该公众号，拉取不到其余信息。</p>
       *
       * @param subscribe 用户是否订阅该公众号标识
       */
      public void setSubscribe(String subscribe) {
          this.subscribe = subscribe;
      }
  
      /**
       * 获取 用户的昵称
       *
       * @return 用户的昵称
       */
      public String getNickname() {
          return nickname;
      }
  
      /**
       * 设置 用户的昵称
       *
       * @param nickName 用户的昵称
       */
      public void setNickname(String nickName) {
          this.nickname = nickName;
      }
  
      /**
       * 获取 用户的性别
       *
       * <p>
       * 值为1时是男性，值为2时是女性，值为0时是未知</p>
       *
       * @return 用户的性别
       */
      public int getSex() {
          return sex;
      }
  
      /**
       * 设置 用户的性别
       *
       * <p>
       * 值为1时是男性，值为2时是女性，值为0时是未知</p>
       *
       * @param sex 用户的性别
       */
      public void setSex(int sex) {
          this.sex = sex;
      }
  
      /**
       * 获取 用户所在城市
       *
       * @return 用户所在城市
       */
      public String getCity() {
          return city;
      }
  
      /**
       * 设置 用户所在城市
       *
       * @param city 用户所在城市
       */
      public void setCity(String city) {
          this.city = city;
      }
  
      /**
       * 获取 用户所在国家
       *
       * @return 用户所在国家
       */
      public String getCountry() {
          return country;
      }
  
      /**
       *
       * 设置 用户所在国家
       *
       * @param country 用户所在国家
       */
      public void setCountry(String country) {
          this.country = country;
      }
  
      /**
       *
       * 获取 用户所在省份
       *
       * @return 用户所在省份
       */
      public String getProvince() {
          return province;
      }
  
      /**
       *
       * 设置 用户所在省份
       *
       * @param province 用户所在省份
       */
      public void setProvince(String province) {
          this.province = province;
      }
  
      /**
       * 获取 用户的语言
       *
       * <p>
       * zh_CN 简体，zh_TW 繁体，en 英语</p>
       *
       * @return 用户的语言
       */
      public String getLanguage() {
          return language;
      }
  
      /**
       * 设置 用户的语言
       *
       * <p>
       * zh_CN 简体，zh_TW 繁体，en 英语</p>
       *
       * @param language 用户的语言
       */
      public void setLanguage(String language) {
          this.language = language;
      }
  
      /**
       * 获取 用户头像
       *
       * <p>
       * 最后一个数值代表正方形头像大小（有0、46、64、96、132数值可选， <br>
       * 0代表640*640正方形头像），用户没有头像时该项为空</p>
       *
       * @return 用户头像
       */
      public String getHeadimgurl() {
          return headimgurl;
      }
  
      /**
       * 设置 用户头像
       *
       * <p>
       * 最后一个数值代表正方形头像大小（有0、46、64、96、132数值可选， <br>
       * 0代表640*640正方形头像），用户没有头像时该项为空</p>
       *
       * @param headimgUrl 用户头像
       */
      public void setHeadimgurl(String headimgUrl) {
          this.headimgurl = headimgUrl;
      }
  
      /**
       *
       * 获取 用户关注时间，为时间戳
       *
       * <p>
       * 如果用户曾多次关注，则取最后关注时间</p>
       *
       * @return 用户关注时间，为时间戳
       */
      public long getSubscribe_time() {
          return subscribe_time;
      }
  
      /**
       * 设置 用户关注时间，为时间戳
       *
       * @param subscribeTime 用户关注时间
       */
      public void setSubscribe_time(long subscribeTime) {
          this.subscribe_time = subscribeTime;
      }
  
      /**
       * 获取 用户备注
       *
       * @return 用户备注
       */
      public String getRemark() {
          return remark;
      }
  
      /**
       * 设置 用户备注
       *
       * @param remark 用户备注
       */
      public void setRemark(String remark) {
          this.remark = remark;
      }
  
      public String getGroupid() {
          return groupid;
      }
  
      public void setGroupid(String groupid) {
          this.groupid = groupid;
      }
  
      public int[] getTagid_list() {
          return tagid_list;
      }
  
      public void setTagid_list(int[] tagid_list) {
          this.tagid_list = tagid_list;
      }
  
      public String getUnionid() {
          return unionid;
      }
  
      public void setUnionid(String unionid) {
          this.unionid = unionid;
      }
  
      public String getSubscribe_scene() {
          return subscribe_scene;
      }
  
      public void setSubscribe_scene(String subscribe_scene) {
          this.subscribe_scene = subscribe_scene;
      }
  
      public String getQr_scene() {
          return qr_scene;
      }
  
      public void setQr_scene(String qr_scene) {
          this.qr_scene = qr_scene;
      }
  
      public String getQr_scene_str() {
          return qr_scene_str;
      }
  
      public void setQr_scene_str(String qr_scene_str) {
          this.qr_scene_str = qr_scene_str;
      }
  }
  