tripsdoc

transaksi/tambah.php

Dec 12th, 2016
553
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 10.56 KB | None | 0 0
  1. <?php
  2. date_default_timezone_set('Asia/Jakarta');
  3. ?>
  4. <script type="text/javascript">
  5.             $(function() {
  6.                 $("#datepicker").datepicker({
  7.                     dateFormat: 'yy-mm-dd'
  8.                 });
  9.                
  10.             });
  11. </script>
  12. <div class="col-md-20">
  13.     <div class="panel panel-default">
  14.         <div class="panel-body">
  15.             <form class="form-horizontal" id="form_transaksi" role="form">
  16.             <div class="col-md-8">
  17.             <!-- <div class="panel panel-default">
  18.                               <div class="panel-body"> -->
  19.                             <!-- <div class="form-group">
  20.                               <label class="control-label col-md-4"
  21.                                 for="tgl_transaksi">Tgl.Transaksi :</label>
  22.                               <div class="col-md-5">
  23.                                 <input type="text" class="form-control"
  24.                                     name="tgl_transaksi" value="<?= date('d-m-Y') ?>"
  25.                                     readonly="readonly">
  26.                               </div>
  27.                             </div> -->
  28.                 <div class="input-group">
  29.                     <input type="hidden" class="form-control" name="id_user" id="id_user" value="<?php echo $query; ?>"></input>
  30.                 </div>
  31.                 <div class="input-group">
  32.                     <label for="tanggal">Tanggal Transaksi</label>
  33.                     <input type="text" class="form-control" id="datepicker" placeholder="Pickup Date" name="datepicker" value="<?php echo $waktu = $this->createDate = date("Y-m-d"); ?>"/>
  34.                 </div>
  35.                 <div class="input-group">
  36.                     <input type="hidden" class="form-control" name="waktu" id="waktu" value="<?php echo $waktu = $this->createDate = date("H:i:s"); ?>"></input>
  37.                 </div>
  38.                 <div class="input-group">
  39.                     <label for="id_barang">Kode Barang</label>
  40.                     <input list="list_barang" class="form-control reset"
  41.                                     placeholder="Isi id..." name="id_barang" id="id_barang"
  42.                                     autocomplete="off" onchange="showBarang(this.value)">
  43.                                   <datalist id="list_barang">
  44.                                     <?php foreach ($barang as $barang): ?>
  45.                                         <option value="<?= $barang['kode'] ?>"><?= $barang['nama'] ?></option>
  46.                                     <?php endforeach ?>
  47.                                   </datalist>
  48.                 </div>
  49.                 <div id="barang">
  50.                 <div class="input-group">
  51.                     <label for="nama_barang">Nama Barang</label>
  52.                     <input type="text" class="form-control reset" name="nama_barang" id="nama_barang" readonly="readonly"/>
  53.                 </div>
  54.                 <div class="input-group">
  55.                     <label for="harga_barang">Harga Barang</label>
  56.                     <input type="text" class="form-control reset" name="harga_barang" id="harga_barang" readonly="readonly"/>
  57.                 </div>
  58.                 <div class="input-group">
  59.                     <label for="qty">Quantity</label>
  60.                     <input type="number" class="form-control reset"
  61.                                         autocomplete="off" onchange="subTotal(this.value)"
  62.                                         onkeyup="subTotal(this.value)" id="qty" min="0"
  63.                                         name="qty" placeholder="Isi qty...">
  64.                 </div>
  65.                 </div>
  66.                 <div class="input-group">
  67.                     <label for="sub_total">Sub Total</label>
  68.                     <input type="text" class="form-control reset" placeholder="Sub Total" name="sub_total" id="sub_total" readonly="readonly"/>
  69.                 </div>
  70.                 <p>
  71.                 <div class="form-group">
  72.                     <div class="col-md-offset-0 col-md-1">
  73.                         <button type="button" class="btn btn-primary"
  74.                         id="tambah" onclick="addbarang()">
  75.                         <i class="fa fa-cart-plus"></i> Tambah</button>
  76.                     </div>
  77.                     <div class="col-md-offset-1 col-md-3">
  78.                         <button type="button" class="btn btn-primary"
  79.                         id="tambah" onclick="myFunction()">
  80.                         <i class="fa fa-cart-plus"></i> Reset</button>
  81.                     </div>
  82.                 </div>
  83.                 </div><!-- end col-md-8 -->
  84.                 <!-- Menghitung Transaksi -->
  85.                 <div class="col-md-4 mb">
  86.                             <div class="col-md-12">
  87.                                 <div class="form-group">
  88.                                   <label for="total" class="besar">Total (Rp) :</label>
  89.                                     <input type="text" class="form-control input-lg"
  90.                                     name="total" id="total" placeholder="0"
  91.                                     readonly="readonly"  value="<?= number_format(
  92.                                     $this->cart->total(), 0 , '' , '.' ); ?>">
  93.                                 </div>
  94.                                 <div class="form-group">
  95.                                   <label for="bayar" class="besar">Bayar (Rp) :</label>
  96.                                     <input type="text" class="form-control input-lg uang"
  97.                                         name="bayar" placeholder="0" autocomplete="off"
  98.                                         id="bayar" onkeyup="showKembali(this.value)">
  99.                                 </div>
  100.                                 <div class="form-group">
  101.                                   <label for="kembali" class="besar">Kembali (Rp) :</label>
  102.                                     <input type="text" class="form-control input-lg"
  103.                                     name="kembali" id="kembali" placeholder="0"
  104.                                     readonly="readonly">
  105.                                 </div>
  106.                             </div>
  107.                         </div>
  108.             </form>
  109.             <!--Table Menggunakan AJAX -->
  110.             <table id="table_transaksi" class="table table-striped table-bordered">
  111.                 <thead>
  112.                     <tr>
  113.                         <th>No</th>
  114.                         <th>ID Kasir</th>
  115.                         <th>Tanggal</th>
  116.                         <th>Waktu</th>
  117.                         <th>Kode Barang</th>
  118.                         <th>Nama Barang</th>
  119.                         <th>Harga</th>
  120.                         <th>Jumlah</th>
  121.                         <th>Sub Total</th>
  122.                         <th>Aksi</th>
  123.                     </tr>
  124.                 </thead>
  125.                 <tbody>
  126.                 </tbody>
  127.             </table>
  128.             <table>
  129.             <tr>
  130.                 <th></th>
  131.                 <th></th>
  132.             </tr>
  133.             <tr>
  134.                 <td style="padding: 5px;">
  135.                     <form method="post" action="<?= base_url() ?>transaksi/addPenjualan">
  136.                         <input type="submit" class="btn btn-primary btn-lg"
  137.                         id="selesai" value="Selesai" disabled="disabled" >
  138.                         </input>
  139.                     </form>
  140.                 </td>
  141.                 <td style="padding: 5px;">
  142.                     <form method="post" action="<?= base_url() ?>transaksi/batalPenjualan">
  143.                         <input type="submit" class="btn btn-danger btn-lg"
  144.                         id="batal" value="Batal">
  145.                         </input>
  146.                     </form>
  147.                 </td>
  148.             </tr>
  149.         </div>
  150.     </div>
  151. </div>
  152.    
  153.     <script type="text/javascript">
  154.  
  155.  
  156.     function myFunction()
  157.     {
  158.         document.getElementById("tanggal").reset();
  159.         document.getElementById("id_barang").reset();
  160.         document.getElementById("nama_barang").reset();
  161.         document.getElementById("harga_barang").reset();
  162.         document.getElementById("qty").reset();
  163.         document.getElementById("sub_total").reset();
  164.     }
  165.     function showBarang(str)
  166.     {
  167.  
  168.         if (str == "") {
  169.             $('#nama_barang').val('');
  170.             $('#harga_barang').val('');
  171.             $('#qty').val('');
  172.             $('#sub_total').val('');
  173.             $('#reset').hide();
  174.             return;
  175.         } else {
  176.           if (window.XMLHttpRequest) {
  177.               // code for IE7+, Firefox, Chrome, Opera, Safari
  178.                xmlhttp = new XMLHttpRequest();
  179.           } else {
  180.               // code for IE6, IE5
  181.               xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  182.           }
  183.           xmlhttp.onreadystatechange = function() {
  184.                if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
  185.                   document.getElementById("barang").innerHTML =
  186.                   xmlhttp.responseText;
  187.               }
  188.           }
  189.           xmlhttp.open("GET", "<?= base_url(
  190.             'Transaksi/getbarang') ?>/"+str,true);
  191.           xmlhttp.send();
  192.         }
  193.     }
  194.  
  195.     function subTotal(qty)
  196.     {
  197.  
  198.         var harga = $('#harga_barang').val().replace(".", "").replace(".", "");
  199.  
  200.         $('#sub_total').val(convertToRupiah(harga*qty));
  201.     }
  202.  
  203.     function convertToRupiah(angka)
  204.     {
  205.  
  206.         var rupiah = '';    
  207.         var angkarev = angka.toString().split('').reverse().join('');
  208.        
  209.         for(var i = 0; i < angkarev.length; i++)
  210.           if(i%3 == 0) rupiah += angkarev.substr(i,3)+'.';
  211.        
  212.         return rupiah.split('',rupiah.length-1).reverse().join('');
  213.    
  214.     }
  215.  
  216.     var table;
  217.     $(document).ready(function() {
  218.  
  219.       showKembali($('#bayar').val());
  220.  
  221.       table = $('#table_transaksi').DataTable({
  222.         paging: false,
  223.         "info": false,
  224.         "searching": false,
  225.         "processing": true, //Feature control the processing indicator.
  226.         "serverSide": true, //Feature control DataTables'
  227.         // server-side processing mode.
  228.        
  229.         // Load data for the table's content from an Ajax source
  230.         "ajax": {
  231.             "url": "<?= site_url('Transaksi/ajax_list_transaksi')?>",
  232.             "type": "POST"
  233.         },
  234.  
  235.         //Set column definition initialisation properties.
  236.         "columnDefs": [
  237.         {
  238.           "targets": [ 0,1,2,3,4,5,6,7,8,9 ], //last column
  239.           "orderable": false, //set not orderable
  240.         },
  241.         ],
  242.  
  243.       });
  244.     });
  245.  
  246.     function reload_table()
  247.     {
  248.  
  249.       table.ajax.reload(null,false); //reload datatable ajax
  250.    
  251.     }
  252.  
  253.     function addbarang()
  254.     {
  255.         var id_barang = $('#id_barang').val();
  256.         var qty = $('#qty').val();
  257.         if (id_barang == '') {
  258.           $('#id_barang').focus();
  259.         }else if(qty == ''){
  260.           $('#qty').focus();
  261.         }else{
  262.        // ajax adding data to database
  263.           $.ajax({
  264.             url : "<?= site_url('Transaksi/addbarang')?>",
  265.             type: "POST",
  266.             data: $('#form_transaksi').serialize(),
  267.             dataType: "JSON",
  268.             success: function(data)
  269.             {
  270.                //reload ajax table
  271.                reload_table();
  272.             },
  273.             error: function (jqXHR, textStatus, errorThrown)
  274.             {
  275.                 alert('Error adding data');
  276.             }
  277.         });
  278.  
  279.           showTotal();
  280.           showKembali($('#bayar').val());
  281.           //mereset semua value setelah btn tambah ditekan
  282.           $('.reset').val('');
  283.         };
  284.     }
  285.  
  286.     function deletebarang(id,sub_total)
  287.     {
  288.         // ajax delete data to database
  289.           $.ajax({
  290.             url : "<?= site_url('Transaksi/deletebarang')?>/"+id,
  291.             type: "POST",
  292.             dataType: "JSON",
  293.             success: function(data)
  294.             {
  295.                reload_table();
  296.             },
  297.             error: function (jqXHR, textStatus, errorThrown)
  298.             {
  299.                 alert('Error deleting data');
  300.             }
  301.         });
  302.  
  303.           var ttl = $('#total').val().replace(".", "");
  304.  
  305.           $('#total').val(convertToRupiah(ttl-sub_total));
  306.  
  307.           showKembali($('#bayar').val());
  308.     }
  309.  
  310.     function showTotal()
  311.     {
  312.  
  313.         var total = $('#total').val().replace(".", "").replace(".", "");
  314.  
  315.         var sub_total = $('#sub_total').val().replace(".", "").replace(".", "");
  316.  
  317.         $('#total').val(convertToRupiah((Number(total)+Number(sub_total))));
  318.  
  319.     }
  320.  
  321.     //maskMoney
  322.     $('.uang').maskMoney({
  323.         thousands:'.',
  324.         decimal:',',
  325.         precision:0
  326.     });
  327.  
  328.     function showKembali(str)
  329.     {
  330.         var total = $('#total').val().replace(".", "").replace(".", "");
  331.         var bayar = str.replace(".", "").replace(".", "");
  332.         var kembali = bayar-total;
  333.  
  334.         $('#kembali').val(convertToRupiah(kembali));
  335.  
  336.         if (kembali >= 0) {
  337.           $('#selesai').removeAttr("disabled");
  338.         }else{
  339.           $('#selesai').attr("disabled","disabled");
  340.         };
  341.  
  342.         if (total == '0') {
  343.           $('#selesai').attr("disabled","disabled");
  344.         };
  345.     }
  346.  
  347.     </script>
Add Comment
Please, Sign In to add comment