コード例 #1
0
ファイル: User.java プロジェクト: LAOSChool/Android
  public static User parseFromJson(String jsonString) {
    try {
      User user = new User();
      JSONObject mainObject = new JSONObject(jsonString);
      user.setId(mainObject.getInt("id"));
      user.setSso_id(mainObject.getString("sso_id"));
      user.setFullname(mainObject.getString("fullname"));
      user.setNickname(mainObject.getString("nickname"));
      user.setPhone(mainObject.getString("phone"));
      user.setState(mainObject.getString("state"));
      user.setSchool_id(mainObject.getInt("school_id"));
      user.setRoles(mainObject.getString("roles"));
      user.setSchoolName(mainObject.getString("schoolName"));
      user.setPhoto(mainObject.getString("photo"));
      user.setGender(mainObject.getString("gender"));
      // User detail
      UserDetail userDetail = new UserDetail();
      userDetail.setAddr1(mainObject.getString("addr1"));
      userDetail.setAddr2(mainObject.getString("addr2"));
      userDetail.setPhone(mainObject.getString("phone"));
      userDetail.setExt(mainObject.getString("ext"));
      userDetail.setPhoto(mainObject.getString("photo"));
      userDetail.setBirthday(mainObject.getString("birthday"));
      userDetail.setGender(mainObject.getString("gender"));
      userDetail.setEmail(mainObject.getString("email"));
      // Class
      JSONArray classarray = mainObject.getJSONArray("classes");
      List<Class> classes = new ArrayList<Class>();
      for (int i = 0; i < classarray.length(); i++) {
        JSONObject eclassObj = classarray.getJSONObject(i);
        Class eclass = new Class();
        eclass.setId(eclassObj.getInt("id"));
        eclass.setSchool_id(eclassObj.getInt("school_id"));
        eclass.setTitle(eclassObj.getString("title"));
        eclass.setLocation(eclassObj.getString("location"));
        try {
          eclass.setTerm(eclassObj.getInt("term"));
        } catch (JSONException e) {
          Log.w("UserProfile", "term in class is null");
        }
        eclass.setYears(eclassObj.getString("years"));
        eclass.setYear_id(eclassObj.getInt("year_id"));
        eclass.setStart_dt(eclassObj.getString("start_dt"));
        eclass.setEnd_dt(eclassObj.getString("end_dt"));
        eclass.setHead_teacher_id(eclassObj.getInt("head_teacher_id"));
        eclass.setHeadTeacherName(eclassObj.getString("headTeacherName"));
        classes.add(eclass);
        Log.d("", eclass.toString());
      }

      // user.setEclass(eclass);
      user.setUserDetail(userDetail);
      user.setClasses(classes);
      if (classes.size() > 0) user.setEclass(classes.get(0));
      // Return user
      return user;
    } catch (JSONException e) {
      e.printStackTrace();
      return null;
    }
  }