Gia Phả Dòng Họ
✦ ✦ ✦

GIA PHẢ DÒNG HỌ NGUYỄN

Lưu giữ và tôn vinh cội nguồn — Từ thế kỷ XIX đến nay

Danh Sách Thành Viên

Sơ Đồ Cây Gia Phả

Nhấn vào mỗi thành viên để xem chi tiết.

Sơ Đồ Xương Cá (Nhánh Dòng Họ)

Trực quan hóa các nhánh gia tộc theo từng thế hệ.

Thống Kê Gia Tộc

Phân Bố Theo Thế Hệ

🔔 📢 Welcome to Blog's Điều Khiển — Chúc bạn một ngày tốt lành! ☀️

Chủ Nhật, 24 tháng 5, 2026

Script app 1

 function doGet(e) {


  const SHEET_ID =
  "1BRK_2ogI8lovstdaQf3vo70Sq37zE24HwdNOeeeVFHY";

  const SHEET_NAME =
  "DB1";

  try {

    const sheet = SpreadsheetApp
      .openById(SHEET_ID)
      .getSheetByName(SHEET_NAME);

    const rows =
    sheet.getDataRange().getValues();

    const stt =
    e.parameter.stt || "";

    const result = [];

    for (let i = 1; i < rows.length; i++) {

      if (String(rows[i][0]) === String(stt)) {

        result.push({

          stt: rows[i][0],
          ho: rows[i][1],
          ten: rows[i][2],
          sdt: rows[i][3],
          email: rows[i][4],
          congty: rows[i][5],
          noilamviec: rows[i][6],
          diachi: rows[i][7],
          honnhan: rows[i][8],
          ghichu: rows[i][9]

        });

      }

    }

    return ContentService
      .createTextOutput(
        JSON.stringify(result)
      )
      .setMimeType(
        ContentService.MimeType.JSON
      );

  }

  catch(err){

    return ContentService
      .createTextOutput(
        JSON.stringify({
          error: String(err)
        })
      )
      .setMimeType(
        ContentService.MimeType.JSON
      );

  }

}



function doPost(e){

  const PASSWORD = "lop85";

  const SHEET_ID =
  "1BRK_2ogI8lovstdaQf3vo70Sq37zE24HwdNOeeeVFHY";

  const SHEET_NAME =
  "DB1";

  try{

    const sheet = SpreadsheetApp
      .openById(SHEET_ID)
      .getSheetByName(SHEET_NAME);

    const data =
    JSON.parse(e.postData.contents);

    if(data.password !== PASSWORD){

      return ContentService
        .createTextOutput(
          "Sai mật khẩu"
        );

    }

    const rows =
    sheet.getDataRange().getValues();

    for(let i=1;i<rows.length;i++){

      if(String(rows[i][0]) === String(data.stt)){

        sheet.getRange(i+1,2)
        .setValue(data.ho || "");

        sheet.getRange(i+1,3)
        .setValue(data.ten || "");

        sheet.getRange(i+1,4)
        .setValue(data.sdt || "");

        sheet.getRange(i+1,5)
        .setValue(data.email || "");

        sheet.getRange(i+1,6)
        .setValue(data.congty || "");

        sheet.getRange(i+1,7)
        .setValue(data.noilamviec || "");

        sheet.getRange(i+1,8)
        .setValue(data.diachi || "");

        sheet.getRange(i+1,9)
        .setValue(data.honnhan || "");

        sheet.getRange(i+1,10)
        .setValue(data.ghichu || "");

        return ContentService
          .createTextOutput(
            "Cập nhật thành công"
          );

      }

    }

    return ContentService
      .createTextOutput(
        "Không tìm thấy STT"
      );

  }

  catch(err){

    return ContentService
      .createTextOutput(
        "Lỗi: " + err
      );

  }

}
0 nhận xét