$(document).ready(async function () { /* سلکت شدن ماه جاری */ const monthSelect = document.getElementById('month-select'); monthSelect.value = currentMonth; /* سلکت شدن ماه جاری */ const { year, month, employer, employerName, workshopAndArchive, workshopAndArchiveName, adminPersonnel, status } = getSearchParamsFromUrl(); $('#year-select').val(year !== "0" ? year : Number($('#year-select').val())); $("#month-select").val(month !== "0" ? month : currentMonth); $("#employer-select").val(employer); $("#workshop-select").val(workshopAndArchive); $('#year-select-mobile').val(year !== "0" ? year : Number($('#year-select').val())); $("#month-select-mobile").val(month !== "0" ? month : currentMonth); $("#employer-select-mobile").val(employer); $("#workshop-select-mobile").val(workshopAndArchive); if (workshopAndArchive && workshopAndArchiveName) { const option = new Option(workshopAndArchiveName, workshopAndArchive, true, true); $("#workshop-select").append(option).trigger('change'); $("#workshop-select-mobile").append(option).trigger('change'); } if (employer && employerName) { const option = new Option(employerName, employer, true, true); $("#employer-select").append(option).trigger('change'); $("#employer-select-mobile").append(option).trigger('change'); } $("#admin-personnel-select").val(adminPersonnel); $("#admin-personnel-select-mobile").val(adminPersonnel); $("#status-select").val(status !== "" ? status : 2); $("#status-select-mobile").val(status !== "" ? status : 2); if (year !== "0" || month !== '0' || employer !== '0' || workshopAndArchive !== '0' || adminPersonnel !== '0' || status !== '') { $('.btn-clear-filter').removeClass('disable'); } else { $('.btn-clear-filter').addClass('disable'); } $(".EmployerSelect2Option").select2({ language: "fa", dir: "rtl", ajax: { url: employerSelectListUrl, dataType: 'json', delay: 250, data: function (params) { return { search: params.term }; }, processResults: function (response) { const originalList = response.data.map(item => ({ id: item.id, text: item.name })); const manualItems = [ { id: 0, text: 'انتخاب کارفرما ...' } ]; const finalList = manualItems.concat(originalList); return { results: finalList }; }, cache: false }, minimumInputLength: 0 //dropdownParent: $('#MainModal') }); $(".EmployerSelect2OptionMobile").select2({ language: "fa", dir: "rtl", ajax: { url: employerSelectListUrl, dataType: 'json', delay: 250, data: function (params) { return { search: params.term }; }, processResults: function (response) { const originalList = response.data.map(item => ({ id: item.id, text: item.name })); const manualItems = [ { id: 0, text: 'انتخاب کارفرما ...' } ]; const finalList = manualItems.concat(originalList); return { results: finalList }; }, cache: false }, minimumInputLength: 0, dropdownParent: $('#searchModal') }); $(".WorkshopSelect2Option").select2({ language: "fa", dir: "rtl", ajax: { url: workshopSelectListUrl, dataType: 'json', delay: 250, data: function (params) { return { search: params.term }; }, processResults: function (response) { const originalList = response.data.map(item => ({ id: item.id, text: item.name + " - " + item.archiveCode })); const manualItems = [ { id: 0, text: 'انتخاب نام کارگاه /شماره بایگانی ...' } ]; const finalList = manualItems.concat(originalList); return { results: finalList }; }, cache: false }, minimumInputLength: 0 //dropdownParent: $('#MainModal') }); $(".WorkshopSelect2OptionMobile").select2({ language: "fa", dir: "rtl", ajax: { url: workshopSelectListUrl, dataType: 'json', delay: 250, data: function (params) { return { search: params.term }; }, processResults: function (response) { const originalList = response.data.map(item => ({ id: item.id, text: item.name + " - " + item.archiveCode })); const manualItems = [ { id: 0, text: 'انتخاب نام کارگاه /شماره بایگانی ...' } ]; const finalList = manualItems.concat(originalList); return { results: finalList }; }, cache: false }, minimumInputLength: 0, dropdownParent: $('#searchModal') }); $(".AdminPersonnelNameSelect2Option").select2({ language: "fa", dir: "rtl" //dropdownParent: $('#MainModal') }); $(".AdminPersonnelNameSelect2OptionMobile").select2({ language: "fa", dir: "rtl", dropdownParent: $('#MainModal') }); $("#status-select").select2({ language: "fa", dir: "rtl" //dropdownParent: $('#MainModal') }); $("#status-select-mobile").select2({ language: "fa", dir: "rtl", dropdownParent: $('#searchModal') }); $("#year-select").select2({ language: "fa", dir: "rtl" //dropdownParent: $('#MainModal') }); $("#year-select-mobile").select2({ language: "fa", dir: "rtl", dropdownParent: $('#searchModal') }); $("#month-select").select2({ language: "fa", dir: "rtl" //dropdownParent: $('#MainModal') }); $("#month-select-mobile").select2({ language: "fa", dir: "rtl", dropdownParent: $('#searchModal') }); await ajaxAdminPersonnel(); await loadMonthlyOverviewData(); }); // Open Div Mobile $(document).on('click', '.monthly-table__row', function () { var container = $(this).closest('.monthly-table__container'); var toggleDiv = container.find('.monthly-table__toggle'); var isOpen = toggleDiv.hasClass('show'); // Close all $('.monthly-table__toggle.show').removeClass('show'); // Open this one only if it wasn't already open if (!isOpen) { toggleDiv.addClass('show'); } }); $(document).on('click', '.btn-search-click, .btn-search-click-mobile', function () { const { year, month, employer, employerName, workshopAndArchive, workshopAndArchiveName, adminPersonnel, status } = getSearchParamsFromUrl(); var filterYear = year; var filterMonth = month; var filterEmployer = employer; var filterEmployerName = employerName; var filterWorkshopAndArchive = workshopAndArchive; var filterWorkshopAndArchiveName = workshopAndArchiveName; var filterAdminPersonnel = adminPersonnel; var filterStatus = status; if (window.matchMedia('(max-width: 767px)').matches) { filterYear = $('#year-select-mobile').val(); filterMonth = $('#month-select-mobile').val(); filterEmployer = $('#employer-select-mobile').val(); filterEmployerName = $('#employer-select-mobile').select2('data')[0].text; filterWorkshopAndArchive = $('#workshop-select-mobile').val(); filterWorkshopAndArchiveName = $("#workshop-select-mobile").select2('data')[0].text; filterAdminPersonnel = $('#admin-personnel-select-mobile').val(); filterStatus = $('#status-select-mobile').val(); } else { filterYear = $('#year-select').val(); filterMonth = $('#month-select').val(); filterEmployer = $('#employer-select').val(); filterEmployerName = $('#employer-select').select2('data')[0].text; filterWorkshopAndArchive = $('#workshop-select').val(); filterWorkshopAndArchiveName = $("#workshop-select").select2('data')[0].text; filterAdminPersonnel = $('#admin-personnel-select').val(); filterStatus = $('#status-select').val(); } if (filterYear !== "0" || filterMonth !== '0' || filterEmployer !== '0' || filterWorkshopAndArchive !== '0' || filterAdminPersonnel !== '0' || filterStatus !== '') { $('.btn-clear-filter').removeClass('disable'); } else { $('.btn-clear-filter').addClass('disable'); } paramsUrl(filterYear, filterMonth, filterEmployer, filterEmployerName, filterWorkshopAndArchive, filterWorkshopAndArchiveName, filterAdminPersonnel, filterStatus); var isMobile = window.matchMedia('(max-width: 767px)').matches; if (isMobile) { $('#searchModal').modal('hide'); } loadMonthlyOverviewData(); }); $(document).on('click', '.btn-clear-filter', function () { $('.btn-clear-filter').addClass('disable'); //$('.employeeName').val(''); $('#searchModal').modal('hide'); loadMonthlyOverviewData(); }); $(document).on('click', '.js-document-click', function () { $('.js-document-click').removeClass('tab-bar__tab--active'); $(this).addClass('tab-bar__tab--active'); var statusValue = $(this).prop('value'); var isMobile = window.matchMedia('(max-width: 767px)').matches; $(".monthly-table__body").hide(); $(".card-container").hide(); switch (statusValue) { case "0": !isMobile ? $('#load-data-html-step0').show() : $('#load-data-html-step0-mobile').show(); !isMobile ? $('#overviewSteps').show() : $('#overviewSteps-mobile').show(); !isMobile ? $('#overviewAll').hide() : $('#overviewAll-mobile').hide(); break; case "1": !isMobile ? $('#load-data-html-step1').show() : $('#load-data-html-step1-mobile').show(); !isMobile ? $('#overviewSteps').show() : $('#overviewSteps-mobile').show(); !isMobile ? $('#overviewAll').hide() : $('#overviewAll-mobile').hide(); break; case "2": !isMobile ? $('#load-data-html-step2').show() : $('#load-data-html-step2-mobile').show(); !isMobile ? $('#overviewSteps').show() : $('#overviewSteps-mobile').show(); !isMobile ? $('#overviewAll').hide() : $('#overviewAll-mobile').hide(); break; case "3": !isMobile ? $('#load-data-html-step3').show() : $('#load-data-html-step3-mobile').show(); !isMobile ? $('#overviewSteps').show() : $('#overviewSteps-mobile').show(); !isMobile ? $('#overviewAll').hide() : $('#overviewAll-mobile').hide(); break; case "4": !isMobile ? $('#load-data-html-step4').show() : $('#load-data-html-step4-mobile').show(); !isMobile ? $('#overviewSteps').show() : $('#overviewSteps-mobile').show(); !isMobile ? $('#overviewAll').hide() : $('#overviewAll-mobile').hide(); break; case "5": !isMobile ? $('#load-data-html-stepAll').show() : $('#load-data-html-stepAll-mobile').show(); !isMobile ? $('#overviewAll').show() : $('#overviewAll-mobile').show(); !isMobile ? $('#overviewSteps').hide() : $('#overviewSteps-mobile').hide(); break; default: } }); async function loadMonthlyOverviewData() { $('#load-data-html-step0').html(''); $('#load-data-html-step1').html(''); $('#load-data-html-step2').html(''); $('#load-data-html-step3').html(''); $('#load-data-html-step4').html(''); $('#load-data-html-stepAll').html(''); $("#loadingSkeleton").show(); var html = ''; const { year, month, employer, employerName, workshopAndArchive, workshopAndArchiveName, adminPersonnel, status } = getSearchParamsFromUrl(); var searchModel = { 'Year': year !== "0" ? year : Number($('#year-select').val()), 'Month': month !== "0" ? month : Number($('#month-select').val()), 'WorkshopId': workshopAndArchive, 'EmployerId': employer, 'AdminAccountId': adminPersonnel !== "0" ? adminPersonnel : adminAccountId, 'ActivationStatus': Number(status) }; try { const response = await ajax.get(loadMonthlyOverviewDataUrl, searchModel, true); var responseData = response.data; var countStatusStep0 = responseData.filter(x => x.status === 0).length; $("#step0-badge").text(countStatusStep0).toggle(countStatusStep0 > 0); var countStatusStep1 = responseData.filter(x => x.status === 1).length; $("#step1-badge").text(countStatusStep1).toggle(countStatusStep1 > 0); var countStatusStep2 = responseData.filter(x => x.status === 2).length; $("#step2-badge").text(countStatusStep2).toggle(countStatusStep2 > 0); var countStatusStep3 = responseData.filter(x => x.status === 3).length; $("#step3-badge").text(countStatusStep3).toggle(countStatusStep3 > 0); var countStatusStep4 = responseData.filter(x => x.status === 4).length; $("#step4-badge").text(countStatusStep4).toggle(countStatusStep4 > 0); var countStatusStep5 = responseData.length; $("#step5-badge").text(countStatusStep5).toggle(countStatusStep5 > 0); if (responseData.length > 0) { initialDocument(responseData); monthlyOverviewStatusDocument(responseData); allWorkshops(responseData); } else { html += `