NonInventPurchasingSystem/CPRNIMS.WebApps/wwwroot/JsFunctions/PR/PopulateDropdown.js
2026-01-20 07:44:30 +08:00

179 lines
6.2 KiB
JavaScript

function populateItemCategSelect() {
$.ajax({
url: endpoint.GetItemCateg,
success: function (response) {
if (response && response.success && Array.isArray(response.data)) {
var $itemCategoryName = $('#itemCategorySelect');
$itemCategoryName.empty();
response.data.forEach(function (item) {
var option = $('<option></option>')
.attr('value', item.itemCategoryId)
.text(item.itemCategoryName);
$itemCategoryName.append(option);
});
if (response.data.length > 0) {
var firstItem = response.data[0];
$itemCategoryName.val(firstItem.itemCategoryId);
$('#ItemCategoryId2').val(firstItem.itemCategoryId);
}
} else {
console.error('Invalid data format received:', response);
}
},
error: function (error) {
console.error('Error fetching batch numbers:', error);
}
});
}
function populateItemCateg() {
$.ajax({
url: endpoint.GetItemCateg,
success: function (data) {
if (data && data.success && Array.isArray(data.data)) {
var categs = data.data;
$('#ItemCategory').empty();
categs.forEach(function (item) {
$('#ItemCategory').append($('<option>', {
value: item.itemCategoryId,
text: item.itemCategoryName
}));
});
if (categs.length > 0) {
$('#ItemCategory').val(categs[0].itemCategoryId);
$('#ItemCategoryId').val(categs[0].itemCategoryId);
}
} else {
console.error('Invalid data format received:', data);
}
},
error: function (error) {
console.error('Error fetching batch numbers:', error);
}
});
}
function populateItemColor() {
$("#itemColorName").autocomplete({
source: function (request, response) {
$.ajax({
url: endpoint.GetItemColor,
data: { query: request.term },
success: function (result) {
if (result && result.success && Array.isArray(result.data)) {
var formattedData = result.data.map(item => ({
label: item.label || '',
value: item.value !== undefined && item.value !== null ? item.value.toString() : ''
}));
response(formattedData);
} else {
console.error('Invalid data format received:', result);
response([]);
}
}
});
},
minLength: 2,
select: function (event, ui) {
$('#itemColorName').val(ui.item.label);
$('#itemColorId').val(ui.item.value);
return false;
},
focus: function (event, ui) {
event.preventDefault();
},
messages: {
noResults: '',
results: function (count) {
return count + (count > 1 ? ' results' : ' result');
}
}
});
}
function populateItemLocalization() {
$("#itemLocalName").autocomplete({
source: function (request, response) {
$.ajax({
url: endpoint.GetItemLocalization,
data: { query: request.term },
success: function (result) {
if (result && result.success && Array.isArray(result.data)) {
var formattedData = result.data.map(item => ({
label: item.label || '',
value: item.value !== undefined && item.value !== null ? item.value.toString() : ''
}));
response(formattedData);
} else {
console.error('Invalid data format received:', result);
response([]);
}
}
});
},
minLength: 2,
select: function (event, ui) {
$('#itemLocalName').val(ui.item.label);
$('#itemLocalId').val(ui.item.value);
return false;
},
focus: function (event, ui) {
event.preventDefault();
},
messages: {
noResults: '',
results: function (count) {
return count + (count > 1 ? ' results' : ' result');
}
}
});
}
function populateItemUOM() {
$("#uomName").autocomplete({
source: function (request, response) {
$.ajax({
url: endpoint.GetItemUOM,
data: { query: request.term },
success: function (result) {
if (result && result.success && Array.isArray(result.data)) {
var formattedData = result.data.map(item => ({
label: item.label || '',
value: item.value !== undefined && item.value !== null ? item.value.toString() : ''
}));
response(formattedData);
} else {
console.error('Invalid data format received:', result);
response([]);
}
}
});
},
minLength: 2,
select: function (event, ui) {
$('#uomName').val(ui.item.label);
$('#uomId').val(ui.item.value);
return false;
},
focus: function (event, ui) {
event.preventDefault();
},
open: function () {
var dropdown = $(".ui-autocomplete");
dropdown.css({
"max-height": "200px",
"overflow-y": "auto"
});
},
messages: {
noResults: '',
results: function (count) {
return count + (count > 1 ? ' results' : ' result');
}
}
});
}