Ejemplo n.º 1
0
  // グループ登録
  public void insertGroup(
      String uid,
      String gname,
      FormFile picpath,
      List<String> num,
      List<Object> authList,
      GroupForm groupForm)
      throws IOException, Exception {
    // グループIDの最大値を取得する。
    List<BeanMap> results = getGid();
    String newgid = "g" + results.get(0).get("newid").toString();
    String absolutePicPass = "";

    // 画像のアップロード(画像パス名の長さが0以上ならupload)
    // null対策
    if (picpath != null) {
      if (picpath.getFileName().length() > 0) {
        absolutePicPass = picupload(newgid, picpath);
      }
    }

    FrontierGroup fg = new FrontierGroup();
    fg.frontierdomain = appDefDto.FP_CMN_HOST_NAME;
    fg.gid = newgid;
    fg.gname = gname;
    fg.pic = absolutePicPass;
    fg.joinnumber = num.size();
    fg.entid = uid;
    fg.updid = uid;

    // グループ登録
    jdbcManager.updateBySqlFile("/data/insFrontierGroup.sql", fg).execute();

    // グループメンバー登録
    FrontierGroupJoin fgj = new FrontierGroupJoin();
    for (int i = 0; i < num.size(); i++) {
      insertGroupMember(newgid, uid, num.get(i), getManageFlg(authList, num.get(i)), fgj);
    }

    // グループに登録された場合、フォロー関係のあった人が同じグループの場合削除する
    FrontierGroupJoin fgj2 = new FrontierGroupJoin();
    for (int i = 0; i < num.size(); i++) {
      deleteFollow(newgid, num.get(i), fgj2, uid);
    }

    // グループに登録された場合、フォロー関係のあった人が同じグループの場合削除する場合もあるのでフォロー数、フォロワ数を更新
    FrontierGroupJoin fgj3 = new FrontierGroupJoin();
    for (int i = 0; i < num.size(); i++) {
      updMemberFollow(uid, num.get(i), fgj3);
    }

    // 登録したグループIDをsessionに格納する
    groupForm.gid = newgid;
  }