220 lines
7.2 KiB
JavaScript
220 lines
7.2 KiB
JavaScript
var external_employee_editMode = "CREATE";
|
|
var external_employee_API = "/api/external_employee/";
|
|
|
|
//================= Form Data Customizaiton =========================================
|
|
|
|
function DropDownClearFormAndFeedWithDataexternal_employee(d, result, x, y, z, i) {
|
|
var employee_type_id = getUrlParameter("employee_type_id");
|
|
$(d).html('');
|
|
$(d).append($("<option></option>")
|
|
.attr("value", "")
|
|
.text("กรุณาเลือก"));
|
|
$.each(result[z], function (key, value) {
|
|
|
|
if (employee_type_id.toString() === value["employee_type_id"].toString()) {
|
|
$(d).append($("<option></option>")
|
|
.attr("value", value[x])
|
|
.text(value[y]));
|
|
}
|
|
});
|
|
|
|
$(d).val(i);
|
|
}
|
|
|
|
function external_employee_FeedDataToSearchForm(data) {
|
|
//console.log(data);
|
|
DropDownClearFormAndFeedWithDataexternal_employee($("#eva_performance_criteria_id"), data, "id", "document_name", "eva_performance_criteria_id", "");
|
|
|
|
}
|
|
|
|
function external_employee_FeedDataToForm(data) {
|
|
$("#external_employee_id").val(data.id);
|
|
$("#external_employee_position_number").val(data.position_number);
|
|
$("#external_employee_position_name").val(data.position_name);
|
|
$("#external_employee_fullname").val(data.fullname);
|
|
$("#external_employee_employee_type").val(data.employee_type);
|
|
$("#external_employee_position_type").val(data.position_type);
|
|
|
|
}
|
|
|
|
function external_employee_GetFromForm() {
|
|
var external_employeeObject = new Object();
|
|
external_employeeObject.id = $("#external_employee_id").val();
|
|
external_employeeObject.position_number = $("#external_employee_position_number").val();
|
|
external_employeeObject.position_name = $("#external_employee_position_name").val();
|
|
external_employeeObject.fullname = $("#external_employee_fullname").val();
|
|
external_employeeObject.employee_type = $("#external_employee_employee_type").val();
|
|
external_employeeObject.position_type = $("#external_employee_position_type").val();
|
|
|
|
|
|
return external_employeeObject;
|
|
}
|
|
|
|
function external_employee_InitialForm(s) {
|
|
var successFunc = function (result) {
|
|
external_employee_FeedDataToSearchForm(result);
|
|
endLoad();
|
|
};
|
|
startLoad();
|
|
AjaxGetRequest(apisite + external_employee_API + "GetBlankItem", successFunc, AlertDanger);
|
|
}
|
|
|
|
//================= Form Mode Setup and Flow =========================================
|
|
|
|
function external_employee_GoCreate() {
|
|
// Incase model popup
|
|
external_employee_SetCreateForm(true);
|
|
|
|
// Incase open new page
|
|
//window_open(appsite+"/external_employeeView/external_employee_d");
|
|
}
|
|
|
|
function external_employee_GoEdit(a) {
|
|
// Incase model popup
|
|
external_employee_SetEditForm(a);
|
|
|
|
// Incase open new page
|
|
//window_open(appsite+"/external_employeeView/external_employee_d?id=" + a);
|
|
}
|
|
|
|
function external_employee_SetEditForm(a) {
|
|
var successFunc = function (result) {
|
|
external_employee_editMode = "UPDATE";
|
|
external_employee_FeedDataToForm(result);
|
|
$("#external_employeeModel").modal("show");
|
|
endLoad();
|
|
};
|
|
startLoad();
|
|
AjaxGetRequest(apisite + external_employee_API + a, successFunc, AlertDanger);
|
|
}
|
|
|
|
function external_employee_SetCreateForm(s) {
|
|
external_employee_editMode = "CREATE";
|
|
external_employee_InitialForm(s);
|
|
}
|
|
|
|
function external_employee_RefreshTable() {
|
|
// Incase model popup
|
|
external_employee_DoSearch();
|
|
|
|
// Incase open new page
|
|
//window.parent.external_employee_DoSearch();
|
|
}
|
|
|
|
//================= Update and Delete =========================================
|
|
|
|
function external_employee_PutUpdate() {
|
|
var data = external_employee_GetFromForm();
|
|
|
|
//Update Mode
|
|
if (external_employee_editMode === "UPDATE") {
|
|
var successFunc1 = function (result) {
|
|
$("#external_employeeModel").modal("hide");
|
|
AlertSuccess(result.code + " " + result.message);
|
|
external_employee_RefreshTable();
|
|
endLoad();
|
|
};
|
|
startLoad();
|
|
AjaxPutRequest(apisite + external_employee_API + data.id, data, successFunc1, AlertDanger);
|
|
}
|
|
// Create mode
|
|
else {
|
|
var successFunc2 = function (result) {
|
|
$("#external_employeeModel").modal("hide");
|
|
AlertSuccess(result.code + " " + result.message);
|
|
external_employee_RefreshTable();
|
|
endLoad();
|
|
};
|
|
startLoad();
|
|
AjaxPostRequest(apisite + external_employee_API, data, successFunc2, AlertDanger);
|
|
}
|
|
}
|
|
|
|
function external_employee_GoDelete(a) {
|
|
if (confirm('คุณต้องการลบข้อมูล ใช่หรือไม่?')) {
|
|
var successFunc = function (result) {
|
|
$("#external_employeeModel").modal("hide");
|
|
AlertSuccess(result.code + " " + result.message);
|
|
external_employee_RefreshTable();
|
|
endLoad();
|
|
};
|
|
startLoad();
|
|
AjaxDeleteRequest(apisite + external_employee_API + a, null, successFunc, AlertDanger);
|
|
}
|
|
}
|
|
|
|
//================= Data Table =========================================
|
|
|
|
var external_employeeTableV;
|
|
|
|
var external_employee_setupTable = function (result) {
|
|
tmp = '"';
|
|
external_employeeTableV = $('#external_employeeTable').DataTable({
|
|
"processing": true,
|
|
"serverSide": false,
|
|
"data": result,
|
|
"select": {
|
|
"style": 'multi'
|
|
},
|
|
"columns": [
|
|
{ "data": "" },
|
|
{ "data": "position_number" },
|
|
{ "data": "position_name" },
|
|
{ "data": "fullname" }
|
|
],
|
|
"columnDefs": [
|
|
{
|
|
targets: 0,
|
|
data: "",
|
|
defaultContent: '',
|
|
orderable: false,
|
|
className: 'select-checkbox'
|
|
}],
|
|
"language": {
|
|
"url": appsite + "/DataTables-1.10.16/thai.json"
|
|
},
|
|
"paging": true,
|
|
"searching": true
|
|
});
|
|
endLoad();
|
|
};
|
|
|
|
function external_employee_InitiateDataTable() {
|
|
startLoad();
|
|
AjaxGetRequest(apisite + "/api/external_employee", external_employee_setupTable, AlertDanger);
|
|
}
|
|
|
|
function external_employee_DoSearch() {
|
|
var s = $("#external_employee_search_box").val();
|
|
var external_employee_reload = function (result) {
|
|
external_employeeTableV.destroy();
|
|
external_employee_setupTable(result);
|
|
endLoad();
|
|
};
|
|
startLoad();
|
|
AjaxGetRequest(apisite + "/api/external_employee?employee_type=" + s, external_employee_reload, AlertDanger);
|
|
}
|
|
|
|
function external_employee_GetSelect(f) {
|
|
if ($("#eva_performance_criteria_id").val() === "") {
|
|
alert("กรุณาเลือก เกณฑ์การประเมิน");
|
|
} else {
|
|
var external_employee_selectitem = [];
|
|
$.each(external_employeeTableV.rows('.selected').data(), function (key, value) {
|
|
external_employee_selectitem.push(value[f]);
|
|
});
|
|
|
|
window.parent.AddMultiple(external_employee_selectitem, $("#eva_performance_criteria_id").val());
|
|
window_close();
|
|
}
|
|
}
|
|
|
|
//================= File Upload =========================================
|
|
|
|
|
|
|
|
//================= Multi-Selection Function =========================================
|
|
|
|
|
|
|