Advertisement
Guest User

Api.php

a guest
Aug 3rd, 2017
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.77 KB | None | 0 0
  1. <?php
  2. defined('BASEPATH') OR exit('No direct script access allowed');
  3.  
  4.  
  5. class Api extends REST_Controller {
  6.  
  7.  
  8.  
  9.  
  10. public function index()
  11. {
  12. $this->load->view('json');
  13.  
  14.  
  15. }
  16.  
  17.  
  18. public function login()
  19. {
  20. $this->form_validation->set_rules('username', 'username', 'required|max_length[256]');
  21. $this->form_validation->set_rules('password','password', 'required|min_length[2]|max_length[256]');
  22. return Validation::validate($this, '', '', function($token, $output)
  23. {
  24. $username = $this->input->post('username');
  25. $password = $this->input->post('password');
  26. $id = $this->M_api->login($username, $password);
  27. if ($id != false) {
  28. $token = array();
  29. $token['id'] = $id;
  30. $output['status'] = true;
  31. $output['username'] = $username;
  32. $output['token'] = JWT::encode($token, $this->config->item('jwt_key'));
  33. }
  34. else
  35. {
  36. $output['errors'] = '{"type": "invalid"}';
  37. }
  38. return $output;
  39. });
  40. }
  41.  
  42.  
  43. public function list_produk()
  44. {
  45. return Validation::validate($this, 'user', 'read', function($token, $output)
  46. {
  47. $list = $this->M_api->get_list_produk();
  48. foreach($list->result() as $data)
  49. {
  50. $output[] = array('id_produk' => $data->id_produk,
  51. 'nama' => $data->nama,
  52. 'harga' => $data->harga
  53. );
  54. $output['status'] = true;
  55. }
  56. return $output;
  57. });
  58. }
  59.  
  60.  
  61. public function detail_produk()
  62. {
  63. $this->form_validation->set_rules('id_produk', 'id_produk', 'required|max_length[256]');
  64. return Validation::validate($this, 'user', 'read', function($token, $output)
  65. {
  66. $detail = $this->M_api->detail_produk($this->input->post('id_produk'));
  67. foreach($detail->result() as $data)
  68. {
  69. $output = array('id_produk' => $data->id_produk,
  70. 'nama' => $data->nama,
  71. 'deskripsi' => $data->deskripsi,
  72. 'harga' => $data->harga
  73. );
  74. $output['status'] = true;
  75. }
  76. return $output;
  77. });
  78. }
  79.  
  80.  
  81. public function transaksi()
  82. {
  83. $this->form_validation->set_rules('order', 'order', 'required');
  84. return Validation::validate($this, 'user', 'read', function($token, $output)
  85. {
  86. $parse = json_decode($this->input->post('order',true),true);
  87. $id_user = $parse[0]['id_user'];
  88. $lokasi = $parse[0]['lokasi'];
  89. $alamat = $parse[0]['alamat'];
  90. $detail = $parse[0]['myorder'];
  91. $total = $detail['total'];
  92.  
  93.  
  94.  //insert tabel transaksi
  95. $insert_trans = array('tanggal' => date('Y-m-d'),
  96. 'id_user' => $id_user,
  97. 'total' => $total,
  98. 'lokasi' => $lokasi,
  99. 'alamat' => $alamat
  100. );
  101.  
  102.  
  103. $this->db->insert('transaksi',$insert_trans);
  104. $id_transaksi = $this->db->insert_id();
  105.  
  106.  
  107. foreach ($detail['detail'] as $data) {
  108. $nama[] = $data['nama'];
  109. $id_produk[] = $data['id_menu'];
  110. $qty[] = $data['qty'];
  111. $insert_det = array('id_transaksi' => $id_transaksi,
  112. 'id_produk' => $data['id_menu'],
  113. 'qty' => $data['qty'],
  114. );
  115. $this->db->insert('detail_transaksi',$insert_det);
  116. }
  117. $output['pesan'] = "berhasil";
  118. $output['status'] = true;
  119. return $output;
  120. });
  121. }
  122.  
  123.  
  124. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement