Why can't I save my data?

Why can’t I save my data? It says duplicate ID code. Even though the code I entered is unique. What did I do wrong? Can you help me?

Code in apps script.

function doGet(e) {
return ManageSheet(e);
}

function doPost(e) {
return ManageSheet(e);
}

function ManageSheet(e) {
var ss = SpreadsheetApp.openByUrl(“building - Google Sheets”);
var sh = ss.getSheetByName(“Sheet1”);

if (e.parameter.func == “Create”) {
var bd_id = e.parameter.bd_id;
var bd_number = e.parameter.bd_number;
var bd_name = e.parameter.bd_name;
var bd_initials = e.parameter.bd_initials;
var bd_image = e.parameter.bd_image;
var bd_link = e.parameter.bd_link;

if (!bd_id || !bd_number || !bd_name || !bd_initials || !bd_image || !bd_link) {
  return ContentService.createTextOutput("Error: Incomplete parameters").setMimeType(ContentService.MimeType.TEXT);
}

var bdIdValues = sh.getRange("A:A").getValues().flat(); // flat() เพื่อแปลงอาร์เรย์ 2 มิติเป็น 1 มิติ
if (bdIdValues.indexOf(bd_id) !== -1) {
  return ContentService.createTextOutput("Error: Duplicate bd_id").setMimeType(ContentService.MimeType.TEXT);
}

sh.appendRow([bd_id, bd_number, bd_name, bd_initials, bd_image, bd_link]);
return ContentService.createTextOutput("Success").setMimeType(ContentService.MimeType.TEXT);

}

else if (e.parameter.func == “ReadAll”) {
var rg = sh.getDataRange().getValues();
var outString = ‘’;
for (var row = 0; row < rg.length; ++row) {
outString += rg[row].join(‘,’) + ‘\n’;
}
return ContentService.createTextOutput(outString).setMimeType(ContentService.MimeType.TEXT);
}

else if (e.parameter.func == “Delete”) {
var bd_id = e.parameter.bd_id;
if (!bd_id) {
return ContentService.createTextOutput(“Error: Missing bd_id parameter”).setMimeType(ContentService.MimeType.TEXT);
}
var rowIndex = parseInt(bd_id) + 1;
sh.deleteRow(rowIndex);
return ContentService.createTextOutput(“Success, requested action completed”).setMimeType(ContentService.MimeType.TEXT);
}

else if (e.parameter.func == “ReadRecord”) {
var bd_id = e.parameter.bd_id;
if (!bd_id) {
return ContentService.createTextOutput(“Error: Missing bd_id parameter”).setMimeType(ContentService.MimeType.TEXT);
}
var rowIndex = parseInt(bd_id) + 1;
var rowData = sh.getRange(rowIndex, 1, 1, sh.getLastColumn()).getValues();
return ContentService.createTextOutput(JSON.stringify(rowData)).setMimeType(ContentService.MimeType.JSON);
}

else if (e.parameter.func == “Update”) {
var bd_id = e.parameter.bd_id;
if (!bd_id) {
return ContentService.createTextOutput(“Error: Missing bd_id parameter”).setMimeType(ContentService.MimeType.TEXT);
}
var bd_number = e.parameter.bd_number;
var bd_name = e.parameter.bd_name;
var bd_initials = e.parameter.bd_initials;
var bd_image = e.parameter.bd_image;
var bd_link = e.parameter.bd_link;

var rowIndex = parseInt(bd_id) + 1;
sh.getRange(rowIndex, 2).setValue(bd_number);
sh.getRange(rowIndex, 3).setValue(bd_name);
sh.getRange(rowIndex, 4).setValue(bd_initials);
sh.getRange(rowIndex, 5).setValue(bd_image);
sh.getRange(rowIndex, 6).setValue(bd_link);
return ContentService.createTextOutput("Success: Updated row with bd_id " + bd_id).setMimeType(ContentService.MimeType.TEXT);

}
}