358 lines
11 KiB
JavaScript
358 lines
11 KiB
JavaScript
var table;
|
||
$(document).ready(function () {
|
||
table = $("#example").DataTable({
|
||
dom: "<lf<t>ip>",
|
||
scrollX: true,
|
||
lengthMenu: [
|
||
[10, 25, 50, -1],
|
||
[10, 25, 50, "All"],
|
||
],
|
||
ajax: {
|
||
// ajax: "data/objects.txt",
|
||
url: "https://rms.rmto.ir/api/public/accident-points",
|
||
type: "GET",
|
||
},
|
||
language: {
|
||
sEmptyTable: "هیچ دادهای در جدول وجود ندارد",
|
||
sInfo: "نمایش _START_ تا _END_ از _TOTAL_ ردیف",
|
||
sInfoEmpty: "نمایش 0 تا 0 از 0 ردیف",
|
||
sInfoFiltered: "(فیلتر شده از _MAX_ ردیف)",
|
||
sInfoPostFix: "",
|
||
sInfoThousands: ",",
|
||
sLengthMenu: "نمایش _MENU_ ردیف",
|
||
sLoadingRecords: "در حال بارگذاری...",
|
||
sProcessing: "در حال پردازش...",
|
||
sSearch: "جستجو:",
|
||
sZeroRecords: "رکوردی با این مشخصات پیدا نشد",
|
||
oPaginate: {
|
||
sFirst: "برگهی نخست",
|
||
sLast: "برگهی آخر",
|
||
sPrevious: "قبلی",
|
||
sNext: "بعدی",
|
||
},
|
||
oAria: {
|
||
sSortAscending: ": فعال سازی نمایش به صورت صعودی",
|
||
sSortDescending: ": فعال سازی نمایش به صورت نزولی",
|
||
},
|
||
},
|
||
columns: [
|
||
{ data: "id" },
|
||
{ data: "province" },
|
||
{ data: "axis_name" },
|
||
{ data: "geometric_desc" },
|
||
{ data: "target" },
|
||
{ data: "operation" },
|
||
{ data: "actions" },
|
||
{ data: "cost" },
|
||
{ data: "progress" },
|
||
{ data: "end_date" },
|
||
{
|
||
data: "accident251_point",
|
||
render: function (data) {
|
||
if (data != null) {
|
||
return `بله`;
|
||
} else {
|
||
return "خیر";
|
||
}
|
||
},
|
||
},
|
||
|
||
{ data: "updated_at" },
|
||
{ data: "lat" },
|
||
{ data: "lng" },
|
||
{
|
||
className: "text-center",
|
||
data: null,
|
||
render: function (data) {
|
||
return `
|
||
<div class="d-flex justify-content-center parent-btn">
|
||
<button class="btn-dataTable edit_btn" title="بروزرسانی"><i class="fa fa-tasks icon-btnTable"></i></button>
|
||
<div class="line-btn-table"></div>
|
||
<button class="btn-dataTable location-button" title="مشاهده مکانی پروژه" ><i class="fa fa-eye icon-btnTable"></i></button>
|
||
<div class="line-btn-table"></div>
|
||
<button class="btn-dataTable image-show" title="مشاهده عکس ها" ><i class="fa fa-image icon-btnTable"></i></button>
|
||
</div>
|
||
|
||
`;
|
||
},
|
||
},
|
||
],
|
||
columnDefs: [
|
||
{
|
||
targets: [12],
|
||
visible: false,
|
||
searchable: false,
|
||
},
|
||
{
|
||
targets: [13],
|
||
visible: false,
|
||
searchable: false,
|
||
},
|
||
],
|
||
});
|
||
$("#example").on("click", "button.edit_btn", function () {
|
||
|
||
$("#allpointedit").modal("show");
|
||
tr = $(this).closest("tr");
|
||
row = table.row(tr);
|
||
|
||
|
||
|
||
operationKol = row.data().operation;
|
||
// $(".amaliat-input").val(operationKol);
|
||
|
||
end_dateKol = row.data().end_date;
|
||
// $(".date-input").val(end_dateKol);
|
||
|
||
costKol = row.data().cost;
|
||
// $(".etebarat-input").val(costKol);
|
||
|
||
latKol = row.data().lat;
|
||
// $(".lat-input").val(latKol);
|
||
|
||
lngKol = row.data().lng;
|
||
// $(".lng-input").val(lngKol);
|
||
|
||
actionsKol = row.data().actions;
|
||
// $(".eqdamat-input").val(actionsKol);
|
||
|
||
targetKol = row.data().target;
|
||
// $(".hadaf-input").val(targetKol);
|
||
|
||
progressKol = row.data().progress;
|
||
// $(".pishraft-input").val(progressKol);
|
||
// $(".pishraft-input").html(progressKol);
|
||
|
||
|
||
|
||
|
||
// let valueprogress = "";
|
||
// let contentData = this.options.content;
|
||
// $("#allpointid").val(contentData.id);
|
||
$("#allpointid").val(row.data().id);
|
||
$("#allend-date").persianDatepicker({
|
||
format: "MMMM YY",
|
||
autoClose: true,
|
||
viewMode: "month",
|
||
dayPicker: {
|
||
enabled: false,
|
||
},
|
||
});
|
||
|
||
// if (contentData.accident251_point) {
|
||
$("#alloperation").val(
|
||
operationKol
|
||
);
|
||
$("#alltarget").val(targetKol);
|
||
$("#allaction").val(actionsKol);
|
||
$("#allcost").val(costKol);
|
||
//$("#allcost").attr('min', contentData.accident251_point.cost);
|
||
$("#allend-date").val(end_dateKol);
|
||
// valueprogress = contentData.accident251_point.progress;
|
||
// } else {
|
||
// $("#alloperation").val("-");
|
||
// $("#alltarget").val("-");
|
||
// $("#allaction").val("-");
|
||
// $("#allcost").val(contentData.cost);
|
||
// $("#allcost").val(contentData.cost);
|
||
// //$("#allcost").attr('min', contentData.cost);
|
||
// $("#allend-date").val("-");
|
||
// valueprogress = contentData.progress;
|
||
// }
|
||
|
||
$("#allac-point-lat").val(latKol);
|
||
$("#allac-point-lng").val(lngKol);
|
||
|
||
let test =
|
||
'<div class="project-slider status-slider-body pr-2 pl-2 mb-5 mt-1">\
|
||
<input class="allex2" type="text" data-slider-step="1" data-slider-value="' +
|
||
progressKol +
|
||
'"/></div> ';
|
||
|
||
$("#allsliderphysici").empty();
|
||
|
||
$("#allsliderphysici").append(
|
||
'<label class="allslider-label" for="inputAddress2"> پیشرفت فیزیکی</label>'
|
||
);
|
||
$("#allsliderphysici").append(test);
|
||
|
||
$(".allex2").slider({
|
||
min: 0,
|
||
max: 100,
|
||
formatter: function (value) {
|
||
return value + "%";
|
||
},
|
||
tooltip: "always",
|
||
tooltip_position: "bottom",
|
||
});
|
||
});
|
||
|
||
|
||
});
|
||
|
||
|
||
$("#alleditpoints").on("click", function () {
|
||
saveAccidentEditedPoint();
|
||
});
|
||
|
||
function checkPersianWordValidation(str) {
|
||
let reg = /^[\u0600-\u06FF\s\.]+$/;
|
||
|
||
if (!reg.test(str)) {
|
||
return false;
|
||
}
|
||
return true;
|
||
}
|
||
|
||
function saveAccidentEditedPoint() {
|
||
if (accidentEditedPointValidate()) {
|
||
formData = new FormData();
|
||
|
||
formData.append("operation", $("#alloperation").val());
|
||
formData.append("target", $("#alltarget").val());
|
||
formData.append("actions", $("#allaction").val());
|
||
formData.append("progress", $(".allex2").slider("getValue"));
|
||
formData.append("cost", $("#allcost").val());
|
||
formData.append("end_date", $("#allend-date").val());
|
||
|
||
let lat = $("#allac-point-lat").val().slice(1, -1);
|
||
let lng = $("#allac-point-lng").val().slice(1, -1);
|
||
lat = lat.replace(/_/g, "");
|
||
lng = lng.replace(/_/g, "");
|
||
formData.append("lat", lat);
|
||
formData.append("lng", lng);
|
||
|
||
for (let i = 0; i < $("input[name=allmodalUpFile]")[0].files.length; i++) {
|
||
formData.append(
|
||
"point_files_" + i,
|
||
$("input[name=allmodalUpFile]")[0].files[i]
|
||
);
|
||
}
|
||
|
||
//if ($('.allex2').slider('getValue') >= $('.allex2').attr('data-slider-value')) {
|
||
$("#allpointedit").modal("hide");
|
||
showLoaderScreen();
|
||
console.log("heyo", $("#allpointid").val());
|
||
|
||
$.ajax({
|
||
url: "/accident-points/" + $("#allpointid").val(),
|
||
type: "POST",
|
||
headers: {
|
||
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
|
||
},
|
||
data: formData,
|
||
cache: false,
|
||
contentType: false,
|
||
processData: false,
|
||
success: function (result) {
|
||
|
||
ajaxcalltable();
|
||
//console.log(result);
|
||
// showRoadAccidentLayerWithoutCluster();
|
||
},
|
||
error: function (error) {
|
||
//console.log(error);
|
||
hideLoaderScreen();
|
||
},
|
||
});
|
||
/*} else {
|
||
$('#allsliderphysici').find('.allslider-label').text('پŪŲ´Ų±ŁŲŖ ŁŪŲ²ŪŚ©Ū (مقدار Ų¬ŲÆŪŲÆ نباŪŲÆ Ų§Ų² ŲÆŲ±ŲµŲÆ Ł‚ŲØŁ„Ū Ś©Ł…ŲŖŲ± ŲØŲ§Ų´ŲÆ)');
|
||
$('#allsliderphysici').find('.allslider-label').css('color', 'red');
|
||
}*/
|
||
}
|
||
}
|
||
|
||
function accidentEditedPointValidate() {
|
||
let isValidate = true;
|
||
|
||
if (
|
||
!$("#alloperation").val() ||
|
||
!checkPersianWordValidation($("#alloperation").val())
|
||
) {
|
||
$("#alloperation").addClass("is-invalid");
|
||
isValidate = false;
|
||
} else {
|
||
$("#alloperation").removeClass("is-invalid");
|
||
}
|
||
|
||
if (
|
||
!$("#alltarget").val() ||
|
||
!checkPersianWordValidation($("#alltarget").val())
|
||
) {
|
||
$("#alltarget").addClass("is-invalid");
|
||
isValidate = false;
|
||
} else {
|
||
$("#alltarget").removeClass("is-invalid");
|
||
}
|
||
|
||
if (
|
||
!$("#allaction").val() ||
|
||
!checkPersianWordValidation($("#allaction").val())
|
||
) {
|
||
$("#allaction").addClass("is-invalid");
|
||
isValidate = false;
|
||
} else {
|
||
$("#allaction").removeClass("is-invalid");
|
||
}
|
||
|
||
if (!$("#allcost").val()) {
|
||
$("#allcost").addClass("is-invalid");
|
||
isValidate = false;
|
||
} else {
|
||
$("#allcost").removeClass("is-invalid");
|
||
}
|
||
|
||
if (!$("#allend-date").val()) {
|
||
$("#allend-date").addClass("is-invalid");
|
||
isValidate = false;
|
||
} else {
|
||
$("#allend-date").removeClass("is-invalid");
|
||
}
|
||
|
||
if (!$("#allac-point-lat").val()) {
|
||
$("#allac-point-lat").addClass("is-invalid");
|
||
isValidate = false;
|
||
} else {
|
||
$("#allac-point-lat").removeClass("is-invalid");
|
||
}
|
||
|
||
if (!$("#allac-point-lng").val()) {
|
||
$("#allac-point-lng").addClass("is-invalid");
|
||
isValidate = false;
|
||
} else {
|
||
$("#allac-point-lng").removeClass("is-invalid");
|
||
}
|
||
|
||
return isValidate;
|
||
}
|
||
|
||
function showLoaderScreen() {
|
||
$(".starter-loader-container").css("display", "flex").hide().fadeIn();
|
||
}
|
||
|
||
function hideLoaderScreen() {
|
||
$(".starter-loader-container").fadeOut();
|
||
}
|
||
|
||
function ajaxcalltable() {
|
||
$.ajax({
|
||
url: "https://rms.rmto.ir/api/public/accident-points",
|
||
type: "GET",
|
||
success: function (result) {
|
||
// console.log(result.data[0]);
|
||
$("#example").dataTable().fnClearTable();
|
||
$("#example").dataTable().fnAddData(result.data);
|
||
|
||
hideLoaderScreen();
|
||
|
||
// Swal.fire({
|
||
// icon: "success",
|
||
// title: "ثبت موفقیت آمیز",
|
||
// text: "اطلاعات اولیه با موفقیت ثبت گردید!",
|
||
// confirmButtonText: "بستن",
|
||
// });
|
||
|
||
// $("#stepModalmaintenance").modal("hide");
|
||
},
|
||
});
|
||
} |