Facebook
From Emerald Crow, 1 Year ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 84
  1. var table;
  2.  
  3. $(document).ready(function () {
  4.  
  5.     var fieldControl = permissionFieldControl("Beacon_List", ["Edit_Record"]);
  6.  
  7.     initUserCorporation();
  8.  
  9.     $("#selectCorporation").change(function (e) {
  10.         e.preventDefault();
  11.         UpdateList();
  12.  
  13.     });
  14.  
  15.     table = $('.recordTable').DataTable({
  16.         "ajax": {
  17.             "url": getUrl(),
  18.             "type": "GET",
  19.             "datatype": "json"
  20.         },
  21.         "oLanguage": {
  22.             "sProcessing": "" + loc_Loading + "...",
  23.             "oPaginate": false,
  24.             "sEmptyTable": "<div><img src='../../img/table_empty.svg'/></div><div>" + loc_NoRecordsFound + "</div>",
  25.             "sSearch": "" + loc_Search + ":",
  26.             "sZeroRecords": "<div><img src='../../img/table_empty.svg'/></div><div>" + loc_NoRecordsFound + "</div>",
  27.             "sInfo": "_TOTAL_ kayıt arasından _START_ ile _END_ arasındaki kayıtlar gösteriliyor.",
  28.             "sInfoEmpty": "" + loc_NoRecordsFound + "",
  29.             "sLengthMenu": "_MENU_"
  30.         },
  31.         "buttons": [
  32.             {
  33.                 "extend": 'print',
  34.                 "exportOptions": { "columns": [0, 1, 2, 3, 4, 5, 6, 7, 8] }
  35.             },
  36.             {
  37.                 "extend": 'excelHtml5',
  38.                 "exportOptions": { "columns": [0, 1, 2, 3, 4, 5, 6, 7, 8] }
  39.             },
  40.             {
  41.                 "extend": 'csvHtml5',
  42.                 "exportOptions": { "columns": [0, 1, 2, 3, 4, 5, 6, 7, 8] }
  43.             },
  44.             {
  45.                 "extend": 'pdfHtml5',
  46.                 "exportOptions": { "columns": [0, 1, 2, 3, 4, 5, 6, 7, 8] }
  47.             }
  48.         ],
  49.         "processing": false,
  50.         "responsive": true,
  51.         "bInfo": false,
  52.         "bFilter": true,
  53.         "bLengthChange": false,
  54.         "searching": true,
  55.         "order": [],
  56.         "lengthMenu": [[10, 30, 50, -1], [10, 30, 50, "Tümü"]],
  57.         "pageLength": 10,
  58.         "fnDrawCallback": function (oSettings) {
  59.             popoverTrigger();
  60.             var paginate = $(oSettings.nTableWrapper).find('.dataTables_paginate')
  61.             if (oSettings._iDisplayLength > oSettings.fnRecordsDisplay()) {
  62.                 paginate.hide();
  63.             } else {
  64.                 paginate.show()
  65.             }
  66.         },
  67.  
  68.         "columns": [
  69.             { "orderable": true, "data": "corporationName" },
  70.             {
  71.                 "orderable": true, "data": "isCommonWorkplace", "createdCell": function (td, cellData, rowData, row, col) {
  72.                     $(td).html('');
  73.                     $(td).append(dTableStatusYesNoFieldControl(rowData.isCommonWorkplace));
  74.                 }
  75.             },
  76.             {
  77.                 "orderable": true, "data": "isCommonPersonnel", "createdCell": function (td, cellData, rowData, row, col) {
  78.                     $(td).html('');
  79.                     $(td).append(dTableStatusYesNoFieldControl(rowData.isCommonPersonnel));
  80.                 }
  81.             },
  82.             { "orderable": true, "data": "macAdress" },
  83.             {
  84.                 "orderable": true, "data": null, "render": function (rowData, row, col) {
  85.                     if (rowData.beaconUUID != null) {
  86.                         return ('<span style="display:flex;justify-content: center;">' + rowData.beaconUUID + '</span>');
  87.  
  88.                     }
  89.                     else {
  90.                         return ('<span style="display:flex;justify-content: center;"><strong>-</strong></span>');
  91.                     }
  92.                 }
  93.             },
  94.             {
  95.                 "orderable": true, "data": null, "render": function (rowData, row, col) {
  96.                     if (rowData.beaconMajorId != null) {
  97.                         return ('<span style="display:flex;justify-content: center;">' + rowData.beaconMajorId+'</span>');
  98.  
  99.                     }
  100.                     else {
  101.                         return ('<span style="display:flex;justify-content: center;"><strong>-</strong></span>');
  102.                     }
  103.                 }
  104.             },
  105.             {
  106.                 "orderable": true, "data": null, "render": function (rowData, row, col) {
  107.                     if (rowData.beaconMinorId != null) {
  108.                         return ('<span style="display:flex;justify-content: center;">' + rowData.beaconMinorId + '</span>');
  109.  
  110.                     }
  111.                     else {
  112.                         return ('<span style="display:flex;justify-content: center;"><strong>-</strong></span>');
  113.                     }
  114.                 }
  115.             },
  116.             { "orderable": true, "data": "description" },
  117.             {
  118.                 "orderable": true, "data": "isActive", "createdCell": function (td, cellData, rowData, row, col) {
  119.                     $(td).html('');
  120.                     $(td).append(dTableStatusFieldControl(rowData.isActive));
  121.                 }
  122.             },
  123.             {
  124.                 "orderable": false, "data": null, "createdCell": function (td, cellData, rowData, row, col) {
  125.                     $(td).html('');
  126.                     if (fieldControl.Edit_Record != 'IsHidden') {
  127.  
  128.                        
  129.                         var btnEdit = $('<a class="btn icon-circle btn-sm mr-10 ' + (fieldControl.Edit_Record == 'IsDisabled' ? "disabled" : "") + '" data-title="' + loc_Edit + '"><i class="fa fa-pencil-square-o"></i></a>').data("data-id", rowData.id).data("data-controller", "beacon").data("data-action", "Edit").click(recordEdit);
  130.                         $(td).append(btnEdit);
  131.  
  132.  
  133.                         if (!rowData.isCommonWorkplace) {
  134.                             var btnMatchWorkplace = $('<a class="btn icon-circle btn-sm mr-10 ' + (fieldControl.Edit_Record == 'IsDisabled' ? "disabled" : "") + '" data-title="' + loc_MatchingWorkplace + '"><i class="fa fa-building"></i></a>').data("data-id", rowData.id).data("data-controller", "beacon").data("data-action", "MatchWorkplace").data("data-hash", "workplaceMatching").click(getWorkplaceList);
  135.                             $(td).append(btnMatchWorkplace);
  136.                         }
  137.                         if (!rowData.isCommonPersonnel) {
  138.                             var btnMatchPersonnel = $('<a class="btn icon-circle btn-sm mr-10 ' + (fieldControl.Detail === 'IsDisabled' ? "disabled" : "") + '" data-title="' + loc_MatchingPersonnel + '"><i class="fa fa-user"></i></a>')
  139.                                 .data("data-id", rowData.id)
  140.                                 .data("data-controller", "beacon")
  141.                                 .data("data-action", "MatchPersonnel")
  142.                                 .click(getPersonnelList);
  143.                             $(td).append(btnMatchPersonnel);
  144.                         }
  145.                     }
  146.  
  147.  
  148.                 }
  149.             }
  150.         ]
  151.     });
  152.  
  153.     tableOptionActions(table);
  154.  
  155. });
  156.  
  157.  
  158. function UpdateList() {
  159.     table.ajax.url(getUrl());
  160.     table.ajax.reload();
  161. }
  162.  
  163. function ClearList() {
  164.     table.clear().draw();
  165. }
  166.  
  167. function getUrl() {
  168.     var url = "/beacon/BeaconListData?CorporationId=" + $("#selectCorporation").val();
  169.     return url;
  170. }
  171.  
  172. function getWorkplaceList() {
  173.     var id = $(this).data("data-id");
  174.     var controller = $(this).data("data-controller");
  175.     var action = $(this).data("data-action");
  176.  
  177.     $.ajax({
  178.         url: '/' + controller + '/' + action + '?beaconId=' + id,
  179.         type: 'get',
  180.         success: function (result) {
  181.             $('#ajax-modal').html(result);
  182.             $('#ajax-modal').modal({
  183.                 closeExisting: false,
  184.             });
  185.         }
  186.     });
  187. }
  188.  
  189. function getPersonnelList() {
  190.     var id = $(this).data("data-id");
  191.     var controller = $(this).data("data-controller");
  192.     var action = $(this).data("data-action");
  193.  
  194.     $.ajax({
  195.         url: '/' + controller + '/' + action + '?beaconId=' + id,
  196.         type: 'get',
  197.         success: function (result) {
  198.             $('#ajax-modal').html(result);
  199.             $('#ajax-modal').modal({
  200.                 closeExisting: false,
  201.             });
  202.         }
  203.     });
  204. }
  205.  
  206. function initUserCorporation() {
  207.     $('#selectCorporation').val(userCorpId).trigger("chosen:updated");
  208.  
  209. }
  210.