Dashboard sipadu mbip
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

StoreCompoundEPBT.php 16KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323
  1. <?php
  2. namespace App\Jobs;
  3. use Carbon\Carbon;
  4. use Illuminate\Bus\Queueable;
  5. use Illuminate\Queue\SerializesModels;
  6. use Illuminate\Queue\InteractsWithQueue;
  7. use Illuminate\Contracts\Queue\ShouldQueue;
  8. use Illuminate\Foundation\Bus\Dispatchable;
  9. use Illuminate\Http\Request;
  10. use App\SiteSetting;
  11. use App\Model\Staff;
  12. use App\Model\StaffDetail;
  13. use App\Model\Module\Department;
  14. use App\Model\Module\DeedLaw;
  15. use App\Model\Module\Faulty;
  16. use App\Model\Module\Compound;
  17. use App\Model\Module\ConfidentialFile;
  18. use App\Model\Module\History;
  19. use App\Model\Module\SubHistory;
  20. use App\Model\Module\Memo;
  21. use App\Model\Module\Attachment;
  22. use App\Jobs\UpdateCompoundPrice;
  23. class StoreCompoundEPBT implements ShouldQueue
  24. {
  25. use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
  26. protected $request, $kpd, $no_badan, $enf_nama, $kesalahan;
  27. /**
  28. * Create a new job instance.
  29. *
  30. * @return void
  31. */
  32. public function __construct(array $request_, $kpd_, $enf_nama_, $no_badan_, $kesalahan_)
  33. {
  34. $this->request = $request_;
  35. $this->kpd = $kpd_;
  36. $this->enf_nama = $enf_nama_;
  37. $this->no_badan = $no_badan_;
  38. $this->kesalahan= $kesalahan_;
  39. }
  40. /**
  41. * Execute the job.
  42. *
  43. * @return void
  44. */
  45. public function handle()
  46. {
  47. // $faulty = Faulty::with('DeedLaw', 'Department')->where('_id', $this->seksyen_kesalahan)->first();
  48. $compound = Compound::with('Department','DeedLaw','Faulty')->where('kpd',$this->kpd)->first();
  49. //get ePBT MBIP faulty lists
  50. $client = new \GuzzleHttp\Client();
  51. $result = $client->request('GET', 'http://218.208.81.239:81/appsepbtkompaun_ws/getinfokompaun/infokompaun?infokompaun[]=352405067769401&infokompaun[]=ekpn_kesalahan');
  52. $response = json_decode($result->getBody()->getContents());
  53. $now = Carbon::now()->toDateTimeString();
  54. if(!empty($response))
  55. {
  56. $k = [];
  57. foreach($response as $key => $r)
  58. {
  59. //if($this->kesalahan == $r->kesalahan)
  60. if($this->kesalahan == $this->kesalahan)
  61. {
  62. if($compound->jenis == 'Parkir')
  63. {
  64. array_push($k,
  65. $this->kpd, //no kompaun
  66. 'KPD', //jenis kompaun
  67. $r->fk_akta, //kod akta
  68. strtoupper($r->kesalahan), //keterangan kesalahan
  69. $compound->created_at->toDateString(), //tarikh
  70. $compound->created_at->toTimeString(), //masa
  71. 14, //tempoh
  72. $compound->nama_jalan .' , '. $compound->nama_taman,//namajalan, namataman
  73. 10,//kodbandar
  74. 'K',//jenis
  75. strtoupper($compound->plate_no), //no plat
  76. $compound->jumlah_asal_kompaun, //jumlah kompaun
  77. strtoupper($this->no_badan), //no badan
  78. '-', //no pembantu penguatkuasa
  79. strtoupper($this->enf_nama), //nama enforcer
  80. $now, //time created epbt
  81. $r->kod, //kod kesalahan
  82. $compound->nama, //nama pesalah
  83. $compound->nama_jalan,//nama jalan - alamat pesalah
  84. $compound->nama_taman,//nama taman - alamat pesalah
  85. '81300', //postcode
  86. $compound->nama_kawasan,//bandar
  87. 'JOHOR', //negeri
  88. 'B', //notis
  89. 'NULL', //notisamaran
  90. 'NULL', //latitud
  91. 'NULL', //longitud
  92. 'NULL', //device
  93. strtoupper($compound->no_cukai_jalan), //mo cukai jalan
  94. strtoupper($compound->plate_no), //no plat
  95. 'NULL', //no kupon
  96. strtoupper($compound->jenis_kenderaan), //jenis kenderaan
  97. strtoupper($compound->warna_kenderaan), //warna kenderaan
  98. strtoupper($compound->no_parking), //no petak parking
  99. 'NULL' //kod petak
  100. );
  101. }
  102. elseif($compound->jenis == 'Pelbagai_KT')
  103. {
  104. array_push($k,
  105. $this->kpd, //no kompaun
  106. 'KPD', //jenis kompaun
  107. $r->fk_akta, //kod akta
  108. strtoupper($r->kesalahan), //keterangan kesalahan
  109. $compound->created_at->toDateString(), //tarikh
  110. $compound->created_at->toTimeString(), //masa
  111. 14, //tempoh
  112. $compound->nama_jalan .' , '. $compound->nama_taman,//namajalan, namataman
  113. 10,//kodbandar
  114. 'K',//jenis
  115. strtoupper($compound->plate_no), //no plat
  116. $compound->jumlah_asal_kompaun, //jumlah kompaun
  117. strtoupper($this->no_badan), //no badan
  118. '-', //no pembantu penguatkuasa
  119. strtoupper($this->enf_nama), //nama enforcer
  120. $now, //time created epbt
  121. $r->kod, //kod kesalahan
  122. $compound->nama, //nama pesalah
  123. $compound->nama_jalan,//nama jalan - alamat pesalah
  124. $compound->nama_taman,//nama taman - alamat pesalah
  125. '81300', //postcode
  126. $compound->nama_kawasan,//bandar
  127. 'JOHOR', //negeri
  128. 'B', //notis
  129. 'NULL', //notisamaran
  130. 'NULL', //latitud
  131. 'NULL', //longitud
  132. 'NULL', //device
  133. strtoupper($compound->no_cukai_jalan), //mo cukai jalan
  134. strtoupper($compound->plate_no), //no plat
  135. 'NULL', //no kupon
  136. strtoupper($compound->jenis_kenderaan), //jenis kenderaan
  137. strtoupper($compound->warna_kenderaan), //warna kenderaan
  138. strtoupper($compound->no_parking), //no petak parking
  139. 'NULL' //kod petak
  140. );
  141. }
  142. elseif($compound->jenis == 'Pelbagai_JPB')
  143. {
  144. array_push($k,
  145. $this->kpd, //no kompaun
  146. 'KPD', //jenis kompaun
  147. $r->fk_akta, //kod akta
  148. strtoupper($r->kesalahan), //keterangan kesalahan
  149. $compound->created_at->toDateString(), //tarikh
  150. $compound->created_at->toTimeString(), //masa
  151. 14, //tempoh
  152. $compound->nama_jalan .' , '. $compound->nama_taman,//namajalan, namataman
  153. 10,//kodbandar
  154. 'K',//jenis
  155. strtoupper($compound->plate_no), //no plat
  156. $compound->jumlah_asal_kompaun, //jumlah kompaun
  157. strtoupper($this->no_badan), //no badan
  158. '-', //no pembantu penguatkuasa
  159. strtoupper($this->enf_nama), //nama enforcer
  160. $now, //time created epbt
  161. $r->kod, //kod kesalahan
  162. $compound->nama, //nama pesalah
  163. $compound->nama_jalan,//nama jalan - alamat pesalah
  164. $compound->nama_taman,//nama taman - alamat pesalah
  165. '81300', //postcode
  166. $compound->nama_kawasan,//bandar
  167. 'JOHOR', //negeri
  168. 'B', //notis
  169. 'NULL', //notisamaran
  170. 'NULL', //latitud
  171. 'NULL', //longitud
  172. 'NULL', //device
  173. strtoupper($compound->no_cukai_jalan), //mo cukai jalan
  174. strtoupper($compound->plate_no), //no plat
  175. 'NULL', //no kupon
  176. strtoupper($compound->jenis_kenderaan), //jenis kenderaan
  177. strtoupper($compound->warna_kenderaan), //warna kenderaan
  178. strtoupper($compound->no_parking), //no petak parking
  179. 'NULL' //kod petak
  180. );
  181. }
  182. elseif($compound->jenis == 'Pelbagai_PA')
  183. {
  184. array_push($k,
  185. $this->kpd, //no kompaun
  186. 'KPD', //jenis kompaun
  187. $r->fk_akta, //kod akta
  188. strtoupper($r->kesalahan), //keterangan kesalahan
  189. $compound->created_at->toDateString(), //tarikh
  190. $compound->created_at->toTimeString(), //masa
  191. 14, //tempoh
  192. $compound->nama_jalan .' , '. $compound->nama_taman,//namajalan, namataman
  193. 10,//kodbandar
  194. 'K',//jenis
  195. strtoupper($compound->plate_no), //no plat
  196. $compound->jumlah_asal_kompaun, //jumlah kompaun
  197. strtoupper($this->no_badan), //no badan
  198. '-', //no pembantu penguatkuasa
  199. strtoupper($this->enf_nama), //nama enforcer
  200. $now, //time created epbt
  201. $r->kod, //kod kesalahan
  202. $compound->nama, //nama pesalah
  203. $compound->nama_jalan,//nama jalan - alamat pesalah
  204. $compound->nama_taman,//nama taman - alamat pesalah
  205. '81300', //postcode
  206. $compound->nama_kawasan,//bandar
  207. 'JOHOR', //negeri
  208. 'B', //notis
  209. 'NULL', //notisamaran
  210. 'NULL', //latitud
  211. 'NULL', //longitud
  212. 'NULL', //device
  213. strtoupper($compound->no_cukai_jalan), //mo cukai jalan
  214. strtoupper($compound->plate_no), //no plat
  215. 'NULL', //no kupon
  216. strtoupper($compound->jenis_kenderaan), //jenis kenderaan
  217. strtoupper($compound->warna_kenderaan), //warna kenderaan
  218. strtoupper($compound->no_parking), //no petak parking
  219. 'NULL' //kod petak
  220. );
  221. }
  222. elseif($compound->jenis == 'Pelbagai_LESEN')
  223. {
  224. array_push($k,
  225. $this->kpd, //no kompaun
  226. 'KPD', //jenis kompaun
  227. $r->fk_akta, //kod akta
  228. strtoupper($r->kesalahan), //keterangan kesalahan
  229. $compound->created_at->toDateString(), //tarikh
  230. $compound->created_at->toTimeString(), //masa
  231. 14, //tempoh
  232. $compound->nama_jalan .' , '. $compound->nama_taman,//namajalan, namataman
  233. 10,//kodbandar
  234. 'K',//jenis
  235. strtoupper($compound->plate_no), //no plat
  236. $compound->jumlah_asal_kompaun, //jumlah kompaun
  237. strtoupper($this->no_badan), //no badan
  238. '-', //no pembantu penguatkuasa
  239. strtoupper($this->enf_nama), //nama enforcer
  240. $now, //time created epbt
  241. $r->kod, //kod kesalahan
  242. $compound->nama, //nama pesalah
  243. $compound->nama_jalan,//nama jalan - alamat pesalah
  244. $compound->nama_taman,//nama taman - alamat pesalah
  245. '81300', //postcode
  246. $compound->nama_kawasan,//bandar
  247. 'JOHOR', //negeri
  248. 'B', //notis
  249. 'NULL', //notisamaran
  250. 'NULL', //latitud
  251. 'NULL', //longitud
  252. 'NULL', //device
  253. strtoupper($compound->no_cukai_jalan), //mo cukai jalan
  254. strtoupper($compound->plate_no), //no plat
  255. 'NULL', //no kupon
  256. strtoupper($compound->jenis_kenderaan), //jenis kenderaan
  257. strtoupper($compound->warna_kenderaan), //warna kenderaan
  258. strtoupper($compound->no_parking), //no petak parking
  259. 'NULL' //kod petak
  260. );
  261. }
  262. $urlQueryString = '';
  263. for ($i=0; $i < count($k); $i++) {
  264. if($i == 0)
  265. {
  266. $urlQueryString = $urlQueryString . '?';
  267. }
  268. else
  269. {
  270. $urlQueryString = $urlQueryString . '&';
  271. }
  272. $urlQueryString = $urlQueryString . 'KompaunDetails[]=' . $k[$i];
  273. // bla/bla/my/registerkompaunDetails?KompaunDetails[]=KP45&KompaunDetails[]=ayu
  274. }
  275. try {
  276. $client = new \GuzzleHttp\Client();
  277. $result = $client->request('GET', 'http://218.208.81.239:81/appsepbtkompaun_ws/registerkompaun/registerkompaunDetails' . $urlQueryString);
  278. } catch (Throwable $e) {
  279. report($e);
  280. return true;
  281. }
  282. }
  283. else
  284. {
  285. Log::info("Rekod kesalahan tidak dijumpai!");
  286. }
  287. }
  288. }
  289. else
  290. {
  291. Log::info("Gagal untuk mendapatkan senarai kesalahan ePBT MBIP!");
  292. }
  293. }
  294. }