Advertisement
yhoezt_27

Untitled

Mar 1st, 2019
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 36.43 KB | None | 0 0
  1. INPUT BASE ARRAY
  2.  
  3. (1) Halaman index :
  4.  
  5. <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); ?>
  6.  
  7.  
  8. <div class="row">
  9. <div class="col-md-12 col-sm-12 col-xs-12">
  10. <div class="x-panel">
  11. <div class="x_title">
  12. <h2><?php echo $title?></h2>
  13. <div class="item form-group pull-right">
  14. <button type="button" id="btn-delete" class="btn btn-danger pull-right">
  15. <span class="glyphicon glyphicon-erase"></span>Delete
  16. </button>
  17. <button type="button" id="btn-tambah" class="btn btn-success pull-right">
  18. <span class="glyphicon glyphicon-plus"></span>Tambah
  19. </button>
  20. <button type="button" id="btn-browse" class="btn btn-default pull-right">
  21. <span class="glyphicon glyphicon-search"></span>Browse
  22. </button>
  23. <div id="itemasset" class="pull-right">
  24. <?php echo form_dropdown("nm_item",array('Pilih Item Asset'=>'Pilih Kategori Asset Dahulu'),"",'class ="form-control" id="item_id" disabled')?>
  25. </div>
  26. <div id="ktgrasset" class="pull-right">
  27. <?php echo form_dropdown("nm_ktgr_assets",$ktgr_asset,"",'class ="form-control" id="ktgr_assets_id" onChange="tampil_itemasset()"');?>
  28. </div>
  29. </div>
  30. <div class="clearfix"></div>
  31. </div>
  32. <div class="x_content">
  33. <div id="view">
  34. <table id="asset_sewa" class="display" width="100%" cellspacing="0">
  35. <thead>
  36. <tr class="headings">
  37. <th>
  38. <div>
  39. <input type="checkbox" id="check-all">
  40. </div>
  41. </th>
  42. <th>No</th>
  43. <th>Bulan/Tahun Perolehan</th>
  44. <th>Item Asset</th>
  45. <th>Kategori Asset</th>
  46. <th>Start Sewa</th>
  47. <th>End Sewa</th>
  48. <th>Pemilik</th>
  49. <th>Foto</th>
  50. <th>AtCost</th>
  51. <th>Status Approval</th>
  52. <th colspan = "2" class="text-center"><span class="glyphicon glyphicon-cog"></span></th>
  53. </tr>
  54. </thead>
  55. <tbody>
  56. <?php
  57. if ($data_awal->num_rows() > 0)
  58. {
  59. $i=1;
  60. foreach($data_awal->result_array() as $keys=>$key)
  61. {
  62. if ($i%2 == 0)
  63. $class = "odd pointer";
  64. else $class = "even pointer";
  65.  
  66. if ($key['status_approval'] == '0')
  67. $status_approval = 'PENDING';
  68. else $status_approval = 'VALID';
  69. ?>
  70. <tr class="<?php echo $class?>">
  71. <td><div><input type="checkbox" class="data-check" value="<?php print $key['id_asset']?>"></div></td>
  72. <td class="align-middle"><?php print $key['id_asset']?></td>
  73. <td class="align-middle"><?php print $this->auth->formatTanggal($key['bln_thn_perolehan']);?></td>
  74. <td class="align-middle"><?php print $key['item']?></td>
  75. <td class="align-middle"><?php print $key['ktgr_assets']?></td>
  76. <td class="align-middle"><?php print $this->auth->formatTanggal($key['start_sewa'])?></td>
  77. <td class="align-middle"><?php print $this->auth->formatTanggal($key['end_sewa'])?></td>
  78. <td class="align-middle"><?php print $key['pemilik']?></td>
  79. <td class="align-middle">
  80. <?php
  81. if (!is_null($key['foto']))
  82. {
  83. $image_properties = array(
  84. 'src' => base_url($key['foto']),
  85. 'height' => '60',
  86. 'width' => '60',
  87. 'rel' => 'lightbox',
  88. );
  89. print img($image_properties);
  90. }
  91. else print '';
  92. ?>
  93. </td>
  94. <td class="align-middle"><?php print $this->auth->buatRp($key['at_cost'])?></td>
  95. <td class="align-middle"><?php print $status_approval?></td>
  96. <td class="align-middle text-center">
  97. <a href="javascript:void();" onclick="edit(<?php echo $key['id_asset']; ?>);" class="btn btn-default" title="Edit"><span class="glyphicon glyphicon-pencil"></span></a>
  98. </td>
  99. </tr>
  100. <?php
  101. $i++;
  102. }
  103. }
  104. ?>
  105. </tbody>
  106. </table>
  107. </div>
  108. </div>
  109. </div>
  110. </div>
  111. </div>
  112.  
  113. <script>
  114. var table;
  115. var getIDAsset;
  116. var save_method;
  117.  
  118. function edit(id)
  119. {
  120. $.ajax({
  121. url : "<?php echo site_url('asset_sewa/ajax_edit/')?>/" + id,
  122. type: "GET",
  123. dataType: "JSON",
  124. success: function(response)
  125. {
  126. if (response.status == 'true')
  127. {
  128. save_method = 'update';
  129. $('#form-id')[0].reset(); // reset form on modals
  130. var blnthn = new Date(response.data.bln_thn_perolehan);
  131. var new_blnthn = blnthn.toString('dd-MM-yyyy');
  132. var startsewa = new Date(response.data.start_sewa);
  133. var new_startsewa = startsewa.toString('dd-MM-yyyy');
  134. var endsewa = new Date(response.data.end_sewa);
  135. var new_endsewa = endsewa.toString('dd-MM-yyyy');
  136.  
  137. $('[name="id_asset_edit"]').val(response.data.id_asset);
  138. $('[name="bln_thn_perolehan_edit"]').val(new_blnthn);
  139. $('#bln_thn_perolehan_edit').attr('readonly','readonly');
  140. $('[name="asset_edit"]').val(response.data.item);
  141. $('#asset_edit').attr('readonly','readonly');
  142. $('[name="kategori_asset_edit"]').val(response.data.ktgr_assets);
  143. $('#kategori_asset_edit').attr('readonly','readonly');
  144. $('[name="start_sewa_edit"]').val(new_startsewa);
  145. $('[name="end_sewa_edit"]').val(new_endsewa);
  146. $('[name="pemilik_edit"]').val(response.data.pemilik);
  147. $('[name="at_cost_edit"]').val(formatRupiah(response.data.at_cost));
  148.  
  149. if (response.data.status_approval == 0)
  150. status = "PENDING";
  151. else status = "VALID";
  152. $('[name="status_approval_edit"]').val(status);
  153. $("#form-add").hide();
  154. $("#form-edit").show();
  155. $('#modal-id').modal('show'); // show bootstrap modal when complete loaded
  156. $('.modal-title').text('Edit Item Asset'); // Set title to Bootstrap modal title
  157. }
  158. else
  159. {
  160. alert(response.pesan);
  161. location.href = location.pathname;
  162. }
  163. },
  164. error: function (jqXHR, textStatus, errorThrown)
  165. {
  166. alert(jqXHR.responseText);
  167. }
  168. });
  169. }
  170.  
  171. function formatRupiah(angka, prefix)
  172. {
  173. var number_string = angka.replace(/[^,\d]/g, '').toString(),
  174. split = number_string.split(','),
  175. sisa = split[0].length % 3,
  176. rupiah = split[0].substr(0, sisa),
  177. ribuan = split[0].substr(sisa).match(/\d{3}/gi);
  178.  
  179. if (ribuan) {
  180. separator = sisa ? '.' : '';
  181. rupiah += separator + ribuan.join('.');
  182. }
  183.  
  184. rupiah = split[1] != undefined ? rupiah + ',' + split[1] : rupiah;
  185. return prefix == undefined ? rupiah : (rupiah ? 'Rp. ' + rupiah : '');
  186. }
  187.  
  188. function tampil_itemasset(){
  189. var selectValues = $("#ktgr_assets_id").val();
  190. if (selectValues == 0){
  191. var msg = "<br><select name=\"nm_item\" disabled><option value=\"Pilih Item Asset\">Pilih Kategori Asset Dahulu</option></select>";
  192. $('#itemasset').html(msg);
  193. }else{
  194. var ktgr_assets_id = {ktgr_assets_id:$("#ktgr_assets_id").val()};
  195. $('#item_id').attr("disabled",true);
  196. $.ajax({
  197. type: "POST",
  198. url : "<?php echo site_url('asset_sewa/select_itemasset')?>",
  199. data: ktgr_assets_id,
  200. success: function(msg){
  201. $('#itemasset').html(msg);
  202. }
  203. });
  204. }
  205.  
  206. return false;
  207. };
  208.  
  209. function tampil_itemasset1(){
  210. var selectValues = $("#id_ktgr_assets").val();
  211. if (selectValues == 0){
  212. var msg = "<br><select name=\"id_item\" disabled><option value=\"Pilih Item Asset\">Pilih Kategori Asset Dahulu</option></select>";
  213. $('#item_asset').html(msg);
  214. }else{
  215. var id_ktgr_assets = {id_ktgr_assets:$("#id_ktgr_assets").val()};
  216. $('#id_item').attr("disabled",true);
  217. $.ajax({
  218. type: "POST",
  219. url : "<?php echo site_url('asset_sewa/select_itemasset')?>",
  220. data: id_ktgr_assets,
  221. success: function(msg){
  222. $('#item_asset').html(msg);
  223. }
  224. });
  225. }
  226.  
  227. return false;
  228. };
  229.  
  230. $(document).ready(function(){
  231.  
  232. var daysToAdd = 4;
  233. var addBtn = $('#btn-tambah');
  234. var addButton = $('#btn_add');
  235. var btnsave = $('#btnSave');
  236. var btnDelete = $('#btn-delete');
  237. var btnStart = $('#btn-start');
  238. var btnBrowse = $('#btn-browse');
  239. var getIDAsbb;
  240. var maxField;
  241. var valid_1;
  242. var valid_2;
  243.  
  244. var oTable = $('#asset_sewa').dataTable({
  245. "aoColumnDefs": [
  246. {
  247. "orderable": true,
  248. 'bSortable': false,
  249. 'aTargets': [0]
  250. } //disables sorting for column one
  251. ],
  252. 'iDisplayLength': 10,
  253. "sPaginationType": "full_numbers"
  254. });
  255.  
  256. $("#check-all").click(function () {
  257. $(".data-check").prop('checked', $(this).prop('checked'));
  258. });
  259.  
  260. var tanpa_rupiah = document.getElementById('at_cost');
  261. tanpa_rupiah.addEventListener('keyup', function(e)
  262. {
  263. tanpa_rupiah.value = formatRupiah(this.value);
  264. });
  265.  
  266. var tanpa_rupiah_1 = document.getElementById('at_cost_edit');
  267. tanpa_rupiah_1.addEventListener('keyup', function(e)
  268. {
  269. tanpa_rupiah_1.value = formatRupiah(this.value);
  270. });
  271.  
  272. $("#txtFromDate, #start_sewa_edit").datepicker({
  273. onSelect: function (selected) {
  274. var dtMax = new Date(selected);
  275. dtMax.setDate(dtMax.getDate() + daysToAdd);
  276. var dd = dtMax.getDate();
  277. var mm = dtMax.getMonth() + 1;
  278. var y = dtMax.getFullYear();
  279. var dtFormatted = mm + '/'+ dd + '/'+ y;
  280. $("#txtToDate").datepicker("option", "minDate", dtFormatted);
  281. },
  282. dateFormat: 'dd-mm-yy'
  283. });
  284.  
  285. $("#txtToDate, #end_sewa_edit").datepicker({
  286. onSelect: function (selected) {
  287. var dtMax = new Date(selected);
  288. dtMax.setDate(dtMax.getDate() - daysToAdd);
  289. var dd = dtMax.getDate();
  290. var mm = dtMax.getMonth() + 1;
  291. var y = dtMax.getFullYear();
  292. var dtFormatted= mm + '/'+ dd + '/'+ y;
  293. $("#txtFromDate").datepicker("option", "maxDate", dtFormatted)
  294. },
  295. dateFormat: 'dd-mm-yy'
  296. });
  297.  
  298. $("#bln_thn_peroleh").datepicker({dateFormat: 'dd-mm-yy'});
  299. $("#izin_thn_asbb").datepicker({dateFormat: 'dd-mm-yy'});
  300.  
  301. $(addBtn).on('click', function(e){
  302. $(btnSave).attr('disabled',true);
  303. save_method = 'add';
  304.  
  305. $('#form-id')[0].reset(); // reset form on modals
  306. $('#modal-id').modal('show');
  307. $('#modal-id').fullscreen();
  308. $("#form-add").show();
  309. $("#form-edit").hide();
  310. $("#asbtb").hide();
  311. $("#asbb").hide();
  312. $("#astb").hide();
  313. $('.modal-title').text('Tambah Data');
  314. //alert('tambah');
  315. });
  316.  
  317. $(addButton).on('click', function(e){
  318.  
  319. if ($("#id_ktgr_assets").val() != 0)
  320. {
  321. if ($("#id_item").val() != 0)
  322. {
  323. if ($.trim($("#txtFromDate").val()).length > 0)
  324. {
  325. if ($.trim($("#txtToDate").val()).length > 0)
  326. {
  327. if ($.trim($("#bln_thn_peroleh").val()).length > 0)
  328. {
  329. if ($.trim($("#at_cost").val()).length > 0)
  330. {
  331. if (($("#jml_data").val() >= 1) && ($("#jml_data").val() <= 100))
  332. {
  333. if (confirm('Data sudah benar ?'))
  334. {
  335. $("#id_ktgr_assets").attr("disabled",true);
  336. $("#id_item").attr("disabled",true);
  337. $("#txtFromDate").attr("readonly",true);
  338. $("#txtToDate").attr("readonly",true);
  339. $("#pemilik").attr("readonly",true);
  340. $("#bln_thn_peroleh").attr("readonly",true);
  341. $("#at_cost").attr("readonly",true);
  342. $("#jml_data").attr("readonly",true);
  343. $(addButton).attr("disabled",true);
  344.  
  345. getIDAsset = $("#id_ktgr_assets").val();
  346.  
  347. maxField = $("#jml_data").val();
  348.  
  349. if (getIDAsset == '3')
  350. {
  351. $(btnSave).attr('disabled',false);
  352. $("#asbtb").show();
  353. $("#asbb").hide();
  354. $("#astb").hide();
  355. var wrapper = $('.field_wrapper_asbtb'); //Input field wrapper
  356. for(i=1; i<=maxField; i++)
  357. {
  358. $(wrapper).append(
  359. '<div class="item form-group">'+
  360. '<label class="control-label col-md-3">Data['+i+']</label>'+
  361. '<div class="col-md-2"><input type="text" class="form-control" name="Id[]" placeholder = "IDAsset" id="id'+i+'"/></div>'+
  362. '<div class="col-md-2"><input type="text" class="form-control" placeholder = "Luas" name="luas[]" id="luas'+i+'"/></div>'+
  363. '<div class="col-md-2"><input type="text" class="form-control" placeholder = "Jenis" name="jenis[]" id="jenis'+i+'"/></div>'+
  364. '<div class="col-md-3"><input type="file" name="input01[]" id="input01'+i+'"/></div>'+
  365. '</div>'
  366. );
  367. }
  368. $("#child-form-asbtb").show();
  369. }
  370. }
  371. }
  372. else alert('Jumlah data minimal 1, maximal 100');
  373. }
  374. else alert('Harap tentukan at_cost');
  375. }
  376. else alert('Harap tentukan bln-tahun perolehan');
  377. }
  378. else alert('Harap tentukan batas awal sewa');
  379. }
  380. else alert('Harap tentukan batas awal sewa');
  381. }
  382. else alert('Harap tentukan Item Asset');
  383. }
  384. else alert('Harap tentukan Kategori Asset');
  385. });
  386.  
  387. $(btnsave).on('click', function(e){
  388. var data = new FormData();
  389. var simpan = 0;
  390. if (save_method == 'add')
  391. {
  392. url = "<?php echo site_url('asset_sewa/tambah')?>";
  393. data.append('id_ktgr_assets', $("#id_ktgr_assets").val());
  394. data.append('id_item', $("#id_item").val());
  395. data.append('txtFromDate', $("#txtFromDate").val());
  396. data.append('txtToDate', $("#txtToDate").val());
  397. data.append('pemilik', $("#pemilik").val());
  398. data.append('bln_thn_peroleh', $("#bln_thn_peroleh").val());
  399. data.append('jml_data', $("#jml_data").val());
  400. data.append('at_cost', $("#at_cost").val());
  401.  
  402. if (getIDAsset == '3')
  403. {
  404. if ($.trim($("#deskripsi_asbtb").val()).length > 0)
  405. {
  406. if ($.trim($("#alamat_asbtb").val()).length > 0)
  407. {
  408. if ($("#id_lokasi").val() > 0)
  409. {
  410. for (i=1; i<=maxField; i++)
  411. {
  412. if ($.trim($("#id"+i).val()).length > 0)
  413. {
  414. if ($.trim($("#luas"+i).val()).length > 0)
  415. {
  416. if ($.trim($("#jenis"+i).val()).length > 0)
  417. {
  418. if($("#input01"+i)[0].files[0].length > 0)
  419. {
  420. data.append('Id[]', $("#id"+i).val()+';'+$("#luas"+i).val()+';'+$("#jenis"+i).val()+';'+$("#input01"+i)[0].files[0]);
  421. }
  422. else
  423. {
  424. data.append('Id[]', $("#id"+i).val()+';'+$("#luas"+i).val()+';'+$("#jenis"+i).val());
  425. }
  426. }
  427. }
  428. }
  429. }
  430.  
  431. data.append('alamat_asbtb', $("#alamat_asbtb").val());
  432. data.append('id_lokasi', $("#id_lokasi").val());
  433. data.append('deskripsi_asbtb', $("#deskripsi_asbtb").val());
  434. simpan = 1;
  435. }
  436. else alert('Harap tentukan lokasi asset');
  437. }
  438. else alert('Harap tentukan alamat');
  439. }
  440. else alert('Harap tentukan deskripsi/judul');
  441.  
  442.  
  443. }
  444. }
  445.  
  446. if (simpan == 1)
  447. {
  448. $.ajax({
  449. url : url,
  450. type: "POST",
  451. data: data,
  452. enctype: 'multipart/form-data',
  453. processData: false,
  454. contentType: false,
  455. dataType: "json",
  456. beforeSend: function(e) {
  457. if(e && e.overrideMimeType) {
  458. e.overrideMimeType("application/json;charset=UTF-8");
  459. }
  460. },
  461. success: function(respon){
  462. $('#modal-id').on('hidden.bs.modal', function (e) {
  463. $(this)
  464. .find("input,select")
  465. .val('')
  466. .end()
  467. })
  468. if(respon.status == "sukses"){
  469. $("#view").html(respon.html);
  470. location.href = location.pathname;
  471. $("#modal-id").modal('hide');
  472. }else{
  473. alert(respon.pesan);
  474. location.href = location.pathname;
  475. }
  476. },
  477. error: function (jqXHR, textStatus, errorThrown)
  478. {
  479. alert(jqXHR.responseText);
  480. }
  481. });
  482. }
  483.  
  484. });
  485. });
  486. </script>
  487.  
  488. <!-- Bootstrap modal -->
  489. <div class="modal fade modal-fullscreen" id="modal-id" tabindex="-1" role="dialog">
  490. <div class="modal-dialog text-justify">
  491. <div class="modal-content">
  492. <div class="modal-header">
  493. <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
  494. <h3 class="modal-title"></h3>
  495. </div>
  496. <div class="modal-body form">
  497. <div class="x_panel">
  498. <div class="x_content">
  499. <form action="#" id="form-id" class="form-horizontal form-label-left" enctype="multipart/form-data">
  500. <div class="form-body">
  501. <div id="form-add">
  502. <div class="item form-group">
  503. <label class="control-label col-md-3">Kategori Asset</label>
  504. <div class="col-md-9">
  505. <div id="ktgr_asset"><?php echo form_dropdown("id_ktgr_assets",$ktgr_asset,"",'class ="form-control" id="id_ktgr_assets" onChange="tampil_itemasset1()"')?></div>
  506. </div>
  507. </div>
  508. <div class="item form-group">
  509. <label class="control-label col-md-3">Item Asset</label>
  510. <div class="col-md-9">
  511. <div id="item_asset"><?php echo form_dropdown("id_item",array('Pilih Item Asset'=>'Pilih Kategori Asset Dahulu'),"",'class ="form-control" id="id_item" disabled')?></div>
  512. </div>
  513. </div>
  514. <div class="item form-group">
  515. <label class="control-label col-md-3">Masa Berlaku Sewa</label>
  516. <div id="masa_sewa_start" class="col-md-4"><input type="text" id="txtFromDate" name="txtFromDate" class="form-control" placeholder="Start Date"/></div>
  517. <div id="masa_sewa_end" class="col-md-5"><input type="text" id="txtToDate" name="txtToDate" class="form-control" placeholder="End Date"/></div>
  518. </div>
  519. <div class="item form-group">
  520. <label class="control-label col-md-3">Pemilik</label>
  521. <div class="col-md-9">
  522. <input name="pemilik" class="form-control" type="text" id="pemilik">
  523. </div>
  524. </div>
  525. <div class="item form-group">
  526. <label class="control-label col-md-3">Bulan-Tahun Perolehan</label>
  527. <div class="col-md-9">
  528. <input name="bln_thn_peroleh" class="form-control" type="text" id="bln_thn_peroleh">
  529. </div>
  530. </div>
  531. <div class="item form-group">
  532. <label class="control-label col-md-3">At Cost</label>
  533. <div class="col-md-9">
  534. <input name="at_cost" class="form-control" type="text" id="at_cost">
  535. </div>
  536. </div>
  537.  
  538. <div class="form-group" id="add_data">
  539. <label class="col-sm-3 control-label">Jumlah Data</label>
  540. <div class="col-sm-9">
  541. <div class="input-group">
  542. <input type="number" class="form-control" id="jml_data" min="1" max="100">
  543. <span class="input-group-btn">
  544. <button type="button" class="btn btn-primary" id="btn_add">Add Data</button>
  545. </span>
  546. </div>
  547. </div>
  548. </div>
  549.  
  550. <div id="asbtb">
  551. <div class="item form-group">
  552. <label class="control-label col-md-3">Deskripsi</label>
  553. <div class="col-md-9">
  554. <input name="deskripsi_asbtb" class="form-control" type="text" id="deskripsi_asbtb">
  555. </div>
  556. </div>
  557. <div class="item form-group">
  558. <label class="control-label col-md-3">Lokasi</label>
  559. <div class="col-md-9">
  560. <div id="lokasi_asbtb"><?php echo form_dropdown("id_lokasi",$lokasi,"",'class ="form-control" id="id_lokasi"')?></div>
  561. </div>
  562. </div>
  563. <div class="item form-group">
  564. <label class="control-label col-md-3">Alamat</label>
  565. <div class="col-md-9">
  566. <input name="alamat_asbtb" class="form-control" type="text" id="alamat_asbtb">
  567. </div>
  568. </div>
  569. <div id="child-form-asbtb">
  570. <div class="field_wrapper_asbtb"></div>
  571. </div>
  572. </div>
  573.  
  574. </div>
  575. <div id="form-edit">
  576. <input type="hidden" name="id_asset_edit" id="id_asset_edit" value="">
  577. <div class="item form-group">
  578. <label class="control-label col-md-3">Kategori Asset</label>
  579. <div class="col-md-9">
  580. <input name="kategori_asset_edit" class="form-control" type="text" id="kategori_asset_edit">
  581. </div>
  582. </div>
  583. <div class="item form-group">
  584. <label class="control-label col-md-3">Item Asset</label>
  585. <div class="col-md-9">
  586. <input name="asset_edit" class="form-control" type="text" id="asset_edit">
  587. </div>
  588. </div>
  589. <div class="item form-group">
  590. <label class="control-label col-md-3">Bulan-Tahun Perolehan</label>
  591. <div class="col-md-9">
  592. <input name="bln_thn_perolehan_edit" class="form-control" type="text" id="bln_thn_perolehan_edit">
  593. </div>
  594. </div>
  595. <div class="item form-group">
  596. <label class="control-label col-md-3">Masa Berlaku Sewa</label>
  597. <div id="masa_sewa_start" class="col-md-4"><input type="text" id="start_sewa_edit" name="start_sewa_edit" class="form-control"/></div>
  598. <div id="masa_sewa_end" class="col-md-5"><input type="text" id="end_sewa_edit" name="end_sewa_edit" class="form-control"/></div>
  599. </div>
  600. <div class="item form-group">
  601. <label class="control-label col-md-3">Pemilik</label>
  602. <div class="col-md-9">
  603. <input name="pemilik_edit" class="form-control" type="text" id="pemilik_edit">
  604. </div>
  605. </div>
  606. <div class="item form-group">
  607. <label class="control-label col-md-3">At-Cost</label>
  608. <div class="col-md-9">
  609. <input name="at_cost_edit" class="form-control" type="text" id="at_cost_edit">
  610. </div>
  611. </div>
  612.  
  613. </div>
  614. </form>
  615. </div></div>
  616. </div>
  617. <div class="modal-footer">
  618. <button type="button" id="btnSave" class="btn btn-primary">Simpan</button>
  619. <button type="button" class="btn btn-danger" data-dismiss="modal" id="btnCancel" >Cancel</button>
  620. </div>
  621. </div><!-- /.modal-content -->
  622. </div><!-- /.modal-dialog -->
  623. </div><!-- /.modal -->
  624. <!-- End Bootstrap modal -->
  625.  
  626. (2) Halaman Logic :
  627.  
  628. <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
  629.  
  630. class Asset_sewa extends CI_Controller
  631. {
  632. private $table = 'tb_asset';
  633. private $primary = 'id_asset';
  634.  
  635. function __construct()
  636. {
  637. parent::__construct();
  638. $this->load->library(array('template'));
  639.  
  640. $user = $this->session->userdata('username');
  641. if ($user)
  642. {
  643. $lvl = $this->session->userdata('level');
  644. if($lvl != '3')
  645. {
  646. redirect('temp/index');
  647. }
  648. }
  649. else redirect('web');
  650. }
  651.  
  652. function index()
  653. {
  654. if (!isset($_POST['milik']) && !isset($_POST['id_ktgr']) && !isset($_POST['id_item']))
  655. {
  656. $data_awal = $this->m_all->cari('2',$this->session->userdata('namauser'),'','','','milik','update_user','',$this->table);
  657. $data['data_awal'] = $data_awal;
  658. $data['title']="Data Item Asset Sewa";
  659. $data['ktgr_asset']=$this->m_all->getList('tb_ktgr_assets', 'id_ktgr_assets', NULL, NULL);
  660. $data['lokasi']=$this->m_all->getList('tb_lokasi','id_lokasi',NULL,NULL);
  661. $data['user_ktr_pusat']=$this->m_all->getList('user_kantor','id_user',NULL,'1');
  662. $data['ukuran']=$this->m_all->getList('tb_ukuran','id_ukuran',NULL, NULL);
  663.  
  664. $this->template->display('asset_sewa/index',$data);
  665. }
  666. else
  667. {
  668. $respon = array('status'=>'sukses','url_redirect'=>site_url('data_asset_'.$_POST['id_ktgr'].'/index/'.$_POST['milik'].'/'.$_POST['id_item']));
  669. echo json_encode($respon);
  670. }
  671. }
  672.  
  673. function select_itemasset()
  674. {
  675. if('IS_AJAX')
  676. {
  677. if (isset($_POST['id_ktgr_assets']) && !empty($_POST['id_ktgr_assets']))
  678. {
  679. $ktgr_asset = $_POST['id_ktgr_assets'];
  680. $alamat = 'asset_sewa/select_itemasset';
  681. }
  682. else if (isset($_POST['ktgr_assets_id']) && !empty($_POST['ktgr_assets_id']))
  683. {
  684. $ktgr_asset = $_POST['ktgr_assets_id'];
  685. $alamat = 'asset_sewa/select_itemasset1';
  686. }
  687. else
  688. {
  689. $ktgr_asset = '';
  690. $alamat = '';
  691. }
  692.  
  693. if ($ktgr_asset != '')
  694. {
  695. $data['itemasset'] = $this->m_all->getList('tb_item_asset','id_item', '', $ktgr_asset);
  696. //$data['option_kota'] = $this->MChain->getKotaList();
  697. $this->load->view($alamat,$data);
  698. }
  699. }
  700. else echo 'ajax gagal';
  701. }
  702.  
  703. function cek_approval()
  704. {
  705. $cek_approval = $this->m_all->cek('2','ap_level','user_aplikasi');
  706. if ($cek_approval->num_rows() > 0)
  707. $response = array('status'=>'true');
  708. else $response = array('status'=>'false');
  709.  
  710. echo json_encode($response);
  711. }
  712.  
  713. function tambah()
  714. {
  715. $cek_approval = $this->m_all->cek('2','ap_level','user_aplikasi');
  716. if ($cek_approval->num_rows() > 0)
  717. {
  718. $this->m_all->delete_all('tb_temp_asset');
  719.  
  720. $id_ktgr_assets = $this->input->post('id_ktgr_assets');
  721. $id_item = $this->input->post('id_item');
  722. $bln_thn_peroleh = $this->input->post('bln_thn_peroleh');
  723. $jml_input = $this->input->post('jml_data');
  724. $date_awal_sewa = $this->input->post('txtFromDate');
  725. $date_akhir_sewa = $this->input->post('txtToDate');
  726. $pemilik = db_clean($this->input->post('pemilik'));
  727. $at_cost = db_clean($this->input->post('at_cost'));
  728. $month = date("m", strtotime($bln_thn_peroleh));
  729. $year = date("y", strtotime($bln_thn_peroleh));
  730.  
  731. $id = $this->auth->get_jumlah($this->primary, $this->table) + 1;
  732. $info_asset = array(
  733. 'id_asset' => $id,
  734. 'bln_thn_perolehan' => date('Y-m-d', strtotime($bln_thn_peroleh)),
  735. 'asset_id' => $id_item,
  736. 'ktgr_asset' => $id_ktgr_assets,
  737. 'jml_data' => $jml_input,
  738. 'milik' => '2',
  739. 'pemilik' => $pemilik,
  740. 'start_sewa' => date('Y-m-d', strtotime($date_awal_sewa)),
  741. 'end_sewa' => date('Y-m-d', strtotime($date_akhir_sewa)),
  742. 'at_cost' => preg_replace("/[^a-zA-Z0-9]/", "", $at_cost)
  743. );
  744.  
  745. $this->m_all->simpan($info_asset, 'tb_temp_asset');
  746.  
  747. $cek_asset = $this->m_all->cek($id_item,'id_item','tb_item_asset');
  748. foreach ($cek_asset->result() as $cs)
  749. {
  750. $db_item = $cs->item;
  751. $db_ktgrasset = $cs->ktgr_assets;
  752. }
  753.  
  754. if ($id_ktgr_assets == '3')
  755. {
  756. $id_asset = $this->input->post('Id');
  757. if (count($id_asset))
  758. {
  759. $deskripsi = db_clean($this->input->post('deskripsi_asbtb'));
  760. $alamat = db_clean($this->input->post('alamat_asbtb'));
  761. $lokasi = $this->input->post('id_lokasi');
  762. $target_foto = "data/ft_3/";
  763.  
  764. $i=1;
  765. foreach ($id_asset as $keys=>$key)
  766. {
  767. $var = explode(';', $key);
  768. $cek = $this->m_all->cek(str_replace(' ', '', $var[0]), 'kode_jurnal', 'tb_kdasbtb');
  769. if ($cek->num_rows() == 0)
  770. {
  771. if (!empty($var[0]) || !is_null($var[0]))
  772. {
  773. $id_dtasset = $this->auth->get_jumlah('id_dtasset','tb_kdasset') + 1;
  774. $info_kdasset = array(
  775. 'id_dtasset' => $id_dtasset,
  776. 'no_dtasset' => $this->auth->create_id_asset("GLI",$month.'-'.$year,$id_item,8,$id_dtasset),
  777. 'kode_asset' => $id,
  778. 'kode_jurnal' => $var[0]
  779. );
  780. $this->m_all->simpan($info_kdasset, 'tb_kdasset');
  781.  
  782. if (!empty($var[1]) || !is_null($var[1]))
  783. $luas = $var[1];
  784. else $luas = null;
  785. if (!empty($var[2]) || !is_null($var[2]))
  786. $jenis = $var[2];
  787. else $jenis = null;
  788.  
  789. //1 MARET 2018, SEMENTARA WAKTU FOTO & SURAT DI-NULL-KAN, SEBAB BUTUH MULTI-UPLOAD
  790. if (isset($_FILES[$var[3]]))
  791. {
  792. $info_kdasbtb = array(
  793. 'kode_jurnal' => $var[0],
  794. 'deskripsi' => $deskripsi,
  795. 'alamat' => $alamat,
  796. 'lokasi' => $lokasi,
  797. 'luas' => $luas,
  798. 'jenis' => $jenis,
  799. 'foto' => '1'//$this->auth->fileupload($_FILES[$var[3]], $var[0].'_'.date("YmdHis").rand(1000,9999), $target_foto)
  800. );
  801. }
  802. else
  803. {
  804. $info_kdasbtb = array(
  805. 'kode_jurnal' => $var[0],
  806. 'deskripsi' => $deskripsi,
  807. 'alamat' => $alamat,
  808. 'lokasi' => $lokasi,
  809. 'luas' => $luas,
  810. 'jenis' => $jenis,
  811. 'foto' => '0'
  812. );
  813. }
  814. $this->m_all->simpan($info_kdasbtb, 'tb_kdasbtb');
  815. }
  816. $i++;
  817. }
  818.  
  819. }
  820. $status_simpan = true;
  821. $data_asset = $this->m_all->get_by_id('tb_temp_asset', 'id_asset', $id);
  822. $info_asset_1 = array(
  823. 'id_asset' => $data_asset->id_asset,
  824. 'bln_thn_perolehan' => $data_asset->bln_thn_perolehan,
  825. 'asset_id' => $data_asset->asset_id,
  826. 'ktgr_asset' => $data_asset->ktgr_asset,
  827. 'jml_data' => $data_asset->jml_data,
  828. 'milik' => $data_asset->milik,
  829. 'pemilik' => $data_asset->pemilik,
  830. 'start_sewa' => $data_asset->start_sewa,
  831. 'end_sewa' => $data_asset->end_sewa,
  832. 'at_cost' => $data_asset->at_cost,
  833. 'depreciation' => '0',
  834. 'update_date' => date('Y-m-d H:i:s', now()),
  835. 'update_user' => $this->session->userdata('namauser')
  836. );
  837. $this->m_all->simpan($info_asset_1, $this->table);
  838. $this->m_all->hapus($id, NULL, $this->primary, NULL, 'tb_temp_asset');
  839. }
  840. else $status_simpan = false;
  841. }
  842.  
  843. if ($status_simpan == true)
  844. {
  845. foreach ($cek_approval->result() as $cp)
  846. {
  847. $get_approval = $cp->ap_username;
  848.  
  849. $message1 = '<p> Kepada Yth : '.$cp->nm_user.'</p>';
  850. $message1.= '<p> Lokasi : '.$cp->lokasi.'</p>';
  851. $message1.= '<p> Posisi : '.$cp->posisi.'</p>';
  852. $message1.= '<p></p>';
  853. $message1.= '<p> Penambahan Data Asset Sewa</p>';
  854. $message1.= '<p> Data Asset : </p>';
  855. $message1.= '<p> ID Asset : '.$id.'</p>';
  856. $message1.= '<p> Item Asset : '.$db_item.'</p>';
  857. $message1.= '<p> Kategori Asset : '.$db_ktgrasset.'</p>';
  858. $message1.= '<p> Sejumlah : '.$jml_input.'</p>';
  859. $message1.= '<p></p>';
  860. $message1.= '<p> Harap, agar di-validkan</p>';
  861. $message1.= '<p> Terima Kasih </p>';
  862. $message1.= '<p>'.$this->session->userdata('namauser').'</p>';
  863. }
  864.  
  865. if ($this->auth->send_email($this->session->userdata('username'), $this->session->userdata('password'), $this->session->userdata('namauser'), $get_approval, 'Konfirmasi Penambahan Asset Sewa', $message1))
  866. $status_approval = '1';
  867. else $status_approval = '0';
  868.  
  869. $konfirm_id = $this->auth->get_jumlah('konfirm_id','tb_konfirmasi') + 1;
  870. $info_pesan = array(
  871. 'konfirm_id' => $konfirm_id,
  872. 'konfirm_jdl' => 'Konfirmasi Penambahan Asset Sewa',
  873. 'konfirm_isi' => $message1,
  874. 'konfirm_from' => $this->session->userdata('username'),
  875. 'konfirm_to' => $get_approval
  876. );
  877.  
  878. $this->m_all->simpan($info_pesan, 'tb_konfirmasi');
  879.  
  880. $info_log_admin = array(
  881. 'id_log' => $this->auth->get_jumlah('id_log','tb_log_admin') + 1,
  882. 'status' => '1 ; status_kirim_approval '.$status_approval,
  883. 'konfirm_id' => $konfirm_id,
  884. 'isi_table' => $message1,
  885. 'from_table' => $this->table,
  886. 'update_user' => $this->session->userdata('username')
  887. );
  888.  
  889. $this->m_all->simpan($info_log_admin, 'tb_log_admin');
  890.  
  891. ob_start();
  892. $html = ob_get_contents();
  893. ob_end_clean();
  894.  
  895. $respon = array('status'=>'sukses','pesan'=>'Data berhasil di-simpan', 'html'=>$html);
  896. }
  897. else $respon = array('status'=>'gagal','pesan'=>'Data gagal di-simpan');
  898. }
  899. else $respon = array('status'=>'gagal','pesan'=>'Harap lengkapi data/APPROVAL belum di-setting - ADMIN');
  900.  
  901. echo json_encode($respon);
  902. }
  903.  
  904. function ajax_edit($id)
  905. {
  906. $cek_approval = $this->m_all->cek('2','ap_level','user_aplikasi');
  907. if ($cek_approval->num_rows() > 0)
  908. {
  909. $data = $this->m_all->get_by_id($this->table, $this->primary, $id);
  910. $response = array('status'=>'true','data'=>$data);
  911. }
  912. else $response = array('status'=>'false','pesan'=>'Harap setting User_Aplikasi Level APPROVAL terlebih dahulu - ADMIN');
  913.  
  914. echo json_encode($response);
  915. }
  916.  
  917. function edit()
  918. {
  919. $cek_approval = $this->m_all->cek('2','ap_level','user_aplikasi');
  920. if ($cek_approval->num_rows() > 0)
  921. {
  922. $id_asset = $this->input->post('id_asset_edit');
  923. $at_cost = preg_replace("/[^A-Za-z0-9\-\*\&\ ]/", "", db_clean($this->input->post('at_cost_edit')));
  924. $start_sewa = date('Y-m-d', strtotime($this->input->post('start_sewa_edit')));
  925. $end_sewa = date('Y-m-d', strtotime($this->input->post('end_sewa_edit')));
  926. $pemilik = db_clean($this->input->post('pemilik_edit'));
  927.  
  928. $info_edit = array(
  929. 'pemilik' => $pemilik,
  930. 'start_sewa' => $start_sewa,
  931. 'end_sewa' => $end_sewa,
  932. 'at_cost' => $at_cost,
  933. 'update_user' => $this->session->userdata('username')
  934. );
  935.  
  936. $this->m_all->update($id_asset, $info_edit, $this->primary, $this->table);
  937.  
  938. foreach ($cek_approval->result() as $cp)
  939. {
  940. $get_approval = $cp->ap_username;
  941.  
  942. $message1 = '<p> Kepada Yth : '.$cp->nm_user.'</p>';
  943. $message1.= '<p> Lokasi : '.$cp->lokasi.'</p>';
  944. $message1.= '<p> Posisi : '.$cp->posisi.'</p>';
  945. $message1.= '<p></p>';
  946. $message1.= '<p> Edit Data Asset Sewa</p>';
  947. $message1.= '<p> Data Asset : </p>';
  948. $message1.= '<p> ID Asset : '.$id_asset.'</p>';
  949. $message1.= '<p></p>';
  950. $message1.= '<p> Harap, agar di-validkan</p>';
  951. $message1.= '<p> Terima Kasih </p>';
  952. $message1.= '<p>'.$this->session->userdata('namauser').'</p>';
  953. }
  954.  
  955. if ($this->auth->send_email($this->session->userdata('username'), $this->session->userdata('password'), $this->session->userdata('namauser'), $get_approval, 'Konfirmasi Edit Asset Sewa', $message1))
  956. $status_approval = '1';
  957. else $status_approval = '0';
  958.  
  959. $konfirm_id = $this->auth->get_jumlah('konfirm_id','tb_konfirmasi') + 1;
  960. $info_pesan = array(
  961. 'konfirm_id' => $konfirm_id,
  962. 'konfirm_jdl' => 'Konfirmasi Edit Asset Sewa',
  963. 'konfirm_isi' => $message1,
  964. 'konfirm_from' => $this->session->userdata('username'),
  965. 'konfirm_to' => $get_approval
  966. );
  967.  
  968. $this->m_all->simpan($info_pesan, 'tb_konfirmasi');
  969.  
  970. $info_log_admin = array(
  971. 'id_log' => $this->auth->get_jumlah('id_log','tb_log_admin') + 1,
  972. 'status' => '2 ; status_kirim_approval '.$status_approval,
  973. 'konfirm_id' => $konfirm_id,
  974. 'isi_table' => $message1,
  975. 'from_table' => $this->table,
  976. 'update_user' => $this->session->userdata('username')
  977. );
  978.  
  979. $this->m_all->simpan($info_log_admin, 'tb_log_admin');
  980.  
  981. ob_start();
  982. $html = ob_get_contents();
  983. ob_end_clean();
  984.  
  985. $respon = array('status'=>'sukses','pesan'=>'Data berhasil di-update', 'html'=>$html);
  986. }
  987. else $respon = array('status'=>'gagal','pesan'=>'Harap lengkapi data/APPROVAL belum di-setting - ADMIN');
  988.  
  989. echo json_encode($respon);
  990. }
  991.  
  992. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement