Files
Backend-Api/ServiceHost/wwwroot/AssetsAdminNew/WorkFlow/js/ModalEmployeeEdit.js
2025-05-06 18:18:20 +03:30

155 lines
5.0 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
$(document).ready(function () {
$("#militaryStatus").select2({
language: "fa",
dir: "rtl",
minimumResultsForSearch: Infinity
});
$(".date").each(function () {
let element = $(this);
element.on('input', function () {
let value = convertPersianNumbersToEnglish(element.val());
element.val(value);
});
new Cleave(this, {
delimiters: ['/', '/'],
blocks: [4, 2, 2],
numericOnly: true
});
// new Cleave(this, {
// date: true,
// delimiter: '/',
// datePattern: ['Y', 'm', 'd']
// });
});
});
$(".closeCustomModal").on('click', function() {
$('#customModal').removeClass('show');
});
$("#btnEditSaveEmployee").on('click', function () {
var gender = $("input[name='Command.Gender']:checked").val();
var nationality = $("input[name='Command.Nationality']:checked").val();
var firstName = $("#FName").val().trim();
var lastName = $("#LName").val().trim();
var nationalCode = $("#NationalCode").val().trim();
var idNumber = $("#IdNumber").val().trim();
var fatherName = $("#FatherName").val().trim();
var birthDate = $("#BirthDate").val().trim();
var maritalStatus = $("input[name='Command.MaritalStatus']:checked").val();
var militaryService = $("#militaryStatus").val();
if (!gender) {
validateField("input[name='Command.Gender']", "لطفا جنسیت را انتخاب کنید.");
return false;
}
if (!maritalStatus) {
validateField("input[name='Command.MaritalStatus']", "لطفا وضعیت تاهل را مشخص کنید.");
return false;
}
if (!nationality) {
validateField("input[name='Command.Nationality']", "لطفا ملیت را مشخص کنید.");
return false;
}
if (firstName === "") {
validateField("#FName", "لطفا نام را وارد کنید.");
return false;
}
if (lastName === "") {
validateField("#LName", "لطفا نام خانوادگی را وارد کنید.");
return false;
}
if (nationalCode === "") {
validateField("#NationalCode", "لطفا شماره ملی خود را وارد کنید.");
return false;
} else if (!/^\d{10}$/.test(nationalCode)) {
validateField("#NationalCode", "شماره ملی باید ۱۰ رقم باشد.");
return false;
}
if (idNumber === "") {
validateField("#IdNumber", "لطفا شماره شناسنامه را وارد کنید.");
return false;
}
if (fatherName === "") {
validateField("#FatherName", "لطفا نام پدر را مشخص کنید.");
return false;
}
if (birthDate === "") {
validateField("#BirthDate", "لطفا تاریخ تولد را وارد کنید.");
return false;
} else if (!/^\d{4}[-\/]\d{2}[-\/]\d{2}$/.test(birthDate) || birthDate.length !== 10) {
validateField("#BirthDate", "تاریخ تولد را به درستی وارد کنید.");
return false;
}
if (militaryService === "" && gender === "مرد") {
validateField("#militaryStatus", "لطفا وضعیت نظام وظیفه را مشخص کنید.");
return false;
}
var loading = $('#btnEditSaveEmployee .spinner-loading');
$('#btnEditSaveEmployee').addClass('disable');
loading.show();
var data = $('#create-employee-form').serialize();
$.ajax({
async: true,
dataType: 'json',
type: 'POST',
url: saveEditEmployee,
data: data,
headers: { "RequestVerificationToken": `${antiForgeryToken}` },
success: function (response) {
if (response.success) {
$('.alert-success-msg').show();
$('.alert-success-msg p').text(response.message);
setTimeout(function () {
$('.alert-success-msg').hide();
$('.alert-success-msg p').text('');
}, 2000);
$(`.btnSendToChecker[data-index="${getIndexForEmployeeEdit}"]`).removeClass("disable");
loading.hide();
$('#customModal').removeClass('show');
} else {
$('.alert-msg').show();
$('.alert-msg p').text(response.message);
setTimeout(function () {
$('.alert-msg').hide();
$('.alert-msg p').text('');
}, 3000);
loading.hide();
$('#btnEditSaveEmployee').removeClass('disable');
}
},
failure: function (response) {
console.log(5, response);
loading.hide();
}
});
});
function validateField(selector, message) {
$(selector).addClass("errored");
$('.alert-msg').show();
$('.alert-msg p').text(message);
setTimeout(function () {
$('.alert-msg').hide();
$('.alert-msg p').text("");
$(selector).removeClass("errored");
}, 3500);
}