Advertisement
wildanfuady

Controller Peminjaman

Oct 14th, 2019
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.19 KB | None | 0 0
  1. <?php
  2. class Peminjaman extends CI_Controller {
  3.  
  4. function __construct(){
  5. parent::__construct();
  6. # Load model, helper dan library
  7. $this->load->model('m_get');
  8. $this->load->model('m_web');
  9. $this->load->library('upload');
  10. $this->load->library('PHPExcel');
  11. }
  12. function index()
  13. {
  14. if($this->session->userdata('user_level') != 45){
  15. redirect(base_url('login'));
  16. } else {
  17. $data['jenis'] = "Peminjaman Barang";
  18. $data['judul'] = "Peminjaman Barang - Wintaris";
  19. $data['desc'] = "Mengelola data peminjaman barang";
  20. $data['content'] = $this->m_web->join2();
  21. $data['content2'] = $this->m_web->read('tbl_barang');
  22. $data['content3'] = $this->m_web->read('tbl_jaminan_peminjaman');
  23. $data['content4'] = $this->m_web->read('tbl_keperluan_peminjaman');
  24. $this->load->view('v_adminweb', $data);
  25. }
  26. }
  27. function export()
  28. {
  29. if($this->session->userdata('user_level') != 45){
  30. redirect(base_url('login'));
  31. } else {
  32. error_reporting(E_ALL);
  33. ini_set('display_errors', TRUE);
  34. ini_set('display_startup_errors', TRUE);
  35. date_default_timezone_set('Europe/London');
  36.  
  37. if (PHP_SAPI == 'cli')
  38. die('This example should only be run from a Web Browser');
  39. // Create new PHPExcel object
  40. $objPHPExcel = new PHPExcel();
  41. // Add some data
  42. $objPHPExcel->setActiveSheetIndex(0)
  43. ->setCellValue('A1', 'LAPORAN PEMINJAMAN BARANG')
  44. ->setCellValue('A2', 'No')
  45. ->setCellValue('B2', 'Kode Pinjam')
  46. ->setCellValue('C2', 'Nama Barang')
  47. ->setCellValue('D2', 'Tanggal Pinjam')
  48. ->setCellValue('E2', 'Peminjam')
  49. ->setCellValue('F2', 'Jumlah Pinjam')
  50. ->setCellValue('G2', 'Tanggal Kembali')
  51. ->setCellValue('H2', 'Jaminan')
  52. ->setCellValue('I2', 'Keperluan')
  53. ->setCellValue('J2', 'Status');
  54. $data = $this->m_web->join8();
  55. $no = 1;
  56. $brs = 3;
  57. foreach ($data->result_array() as $i) {
  58. $tgl1 = tgl_indo($i['peminjaman_tgl']);
  59. $tgl2 = tgl_indo($i['peminjaman_tgl_kembali']);
  60. $objPHPExcel->setActiveSheetIndex(0)
  61. ->setCellValue('A'.$brs, $no)
  62. ->setCellValue('B'.$brs, $i['peminjaman_kode'])
  63. ->setCellValue('C'.$brs, $i['barang_nama'])
  64. ->setCellValue('D'.$brs, $tgl1)
  65. ->setCellValue('E'.$brs, $i['peminjaman_peminjam'])
  66. ->setCellValue('F'.$brs, $i['peminjaman_jml'])
  67. ->setCellValue('G'.$brs, $tgl2)
  68. ->setCellValue('H'.$brs, $i['jaminan_nama'])
  69. ->setCellValue('I'.$brs, $i['keperluan_nama'])
  70. ->setCellValue('J'.$brs, $i['peminjaman_status']);
  71. $brs++;
  72. $no++;
  73. }
  74. // Rename worksheet
  75. $objPHPExcel->getActiveSheet()->setTitle('Simple');
  76. // Set active sheet index to the first sheet, so Excel opens this as the first sheet
  77. $objPHPExcel->setActiveSheetIndex(0);
  78. /*// Save Excel 2007 file*/
  79. $acak = rand(00,99);
  80. $jam = date('H:i:s');
  81. // Redirect output to a client’s web browser (Excel2007)
  82. header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
  83. header('Content-Disposition: attachment;filename="laporan-peminjaman-barang-'.$acak.'.xls"');
  84. header('Cache-Control: max-age=0');
  85. // If you're serving to IE 9, then the following may be needed
  86. header('Cache-Control: max-age=1');
  87. // If you're serving to IE over SSL, then the following may be needed
  88. header ('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past
  89. header ('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); // always modified
  90. header ('Cache-Control: cache, must-revalidate'); // HTTP/1.1
  91. header ('Pragma: public'); // HTTP/1.0
  92. $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
  93. $objWriter->save('php://output');
  94. exit;
  95. if($objWriter) {
  96. echo $this->session->set_flashdata(array('msg' => 'export', 'flash'=> 'Peminjaman Barang'));
  97. redirect(base_url('peminjaman'));
  98. } else {
  99. redirect(base_url('errors'));
  100. }
  101. }
  102. }
  103. function add()
  104. {
  105. if($this->session->userdata('user_level') != 45){
  106. redirect(base_url('login'));
  107. } else {
  108. $kd_pinjam = rand(111111, 999999);
  109. $kd_barang = strip_tags($this->input->post('kd_barang'));
  110. $jumlah_pinjam = strip_tags($this->input->post('jml_pinjam'));
  111. $peminjam = strip_tags($this->input->post('peminjam'));
  112. $tgl_pinjam = date('Y-m-d', strtotime($this->input->post('tgl_pinjam')));
  113. $tgl_kembali = date('Y-m-d', strtotime($this->input->post('tgl_kembali')));
  114. $jaminan = strip_tags($this->input->post('jaminan'));
  115. $keperluan = strip_tags($this->input->post('keperluan'));
  116. $l_jml_barang = $this->m_web->read_barang($kd_barang);
  117. $t_jml_barang = $l_jml_barang->barang_jml;
  118. if($jumlah_pinjam > $t_jml_barang){
  119. echo $this->session->set_flashdata(array('msg' => 'gagal-stok', 'flash'=> 'Peminjaman Barang'));
  120. redirect(base_url('peminjaman?core=hjfghdbvcghtresfghjjhgfdsdrtgvccdc'));
  121. } else {
  122. $data = array(
  123. 'peminjaman_kode' => $kd_pinjam,
  124. 'barang_kode' => $kd_barang,
  125. 'peminjaman_tgl' => $tgl_pinjam,
  126. 'peminjaman_peminjam' => $peminjam,
  127. 'peminjaman_jml' => $jumlah_pinjam,
  128. 'peminjaman_tgl_kembali' => $tgl_kembali,
  129. 'peminjaman_jaminan' => $jaminan,
  130. 'peminjaman_keperluan' => $keperluan,
  131. 'peminjaman_status' => 'invalid'
  132. );
  133. // Insert data
  134. $this->m_web->insert('tbl_peminjaman_barang', $data);
  135. // Kurangi stok barang
  136. $total_jml_barang = $t_jml_barang-$jumlah_pinjam;
  137. // Update stok barang
  138. $upd_data = array(
  139. 'barang_jml' => $total_jml_barang
  140. );
  141. $this->m_web->update_stok_barang($kd_barang, 'tbl_barang', $upd_data);
  142. // Redirect
  143. echo $this->session->set_flashdata(array('msg' => 'tambah', 'flash'=> 'Peminjaman Barang'));
  144. redirect(base_url('peminjaman'));
  145. }
  146. }
  147. }
  148. function edit($kd_pinjam)
  149. {
  150. if($this->session->userdata('user_level') != 45){
  151. redirect(base_url('login'));
  152. } else {
  153. // Update stok
  154. $t_jml_pinjam = $this->m_web->read_jml_pinjam($kd_pinjam);
  155. $total_jml_pinjam = $t_jml_pinjam->peminjaman_jml;
  156. $kd_barang = $t_jml_pinjam->barang_kode;
  157. // echo $kd_barang;
  158. // echo $total_jml_pinjam;
  159. // Kembalikan jumlah stok
  160. $l_jml_barang = $this->m_web->read_barang($kd_barang);
  161. $t_jml_barang = $l_jml_barang->barang_jml;
  162. // echo $t_jml_barang;
  163. // Hitung
  164. $hitung = $total_jml_pinjam+$t_jml_barang;
  165. // echo $hitung;
  166. $upd_stok = array(
  167. 'barang_jml' => $hitung
  168. );
  169. $data = array(
  170. 'peminjaman_status' => 'valid'
  171. );
  172. $this->m_web->update_peminjaman($kd_pinjam, 'tbl_peminjaman_barang', $data);
  173. $this->m_web->update_stok_barang($kd_barang, 'tbl_barang', $upd_stok);
  174. echo $this->session->set_flashdata(array('msg' => 'edit', 'flash'=> 'Peminjaman Barang'));
  175. redirect(base_url('peminjaman'));
  176. }
  177. }
  178. function delete($id)
  179. {
  180. if($this->session->userdata('user_level') != 45){
  181. redirect(base_url('login'));
  182. } else {
  183. $this->m_web->delete_peminjaman('tbl_peminjaman_barang', $id);
  184. echo $this->session->set_flashdata(array('msg' => 'hapus', 'flash'=> 'Peminjaman Barang'));
  185. redirect(base_url('peminjaman'));
  186. }
  187. }
  188. }
  189. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement