Dashboard sipadu mbip
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

ApplicationController.php 4.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. <?php
  2. namespace App\Http\Controllers\api;
  3. use Illuminate\Http\Request;
  4. use App\Http\Controllers\Api\BaseController;
  5. use Config;
  6. use File;
  7. use Carbon\Carbon;
  8. use App\Model\Staff;
  9. use App\Model\StaffDetail;
  10. use App\Model\User;
  11. use App\Model\UserDetail;
  12. class ApplicationController extends BaseController
  13. {
  14. /**
  15. * Create a user list controller.
  16. *
  17. * @return json
  18. */
  19. public function appList()
  20. {
  21. $nested_data = array();
  22. $curr = Carbon::now()->getTimestamp();
  23. $staff = Staff::with('StaffDetail')->where('roles_access','PenguatKuasa')->withTrashed()->orderBy('updated_at', 'desc')->get();
  24. foreach($staff as $s) {
  25. $n1 = ''; $status = 'Aktif';
  26. $reg_time = $s->updated_at;
  27. $expiry_date = $reg_time->addDays(3);
  28. $expiry_date = $expiry_date->getTimestamp();
  29. if($curr < $expiry_date) {
  30. $n1 = "Baru/";
  31. }else{
  32. $n1 = "";
  33. }
  34. if ($s->trashed()) {
  35. $status = 'Tidak Aktif';
  36. }
  37. array_push($nested_data, array(
  38. '#' => $n1,
  39. 'nama' => $s->StaffDetail->full_name,
  40. 'identity' => $s->StaffDetail->identity,
  41. 'email' => $s->StaffDetail->email,
  42. 'mobile' => $s->StaffDetail->email,
  43. 'daftar' => $s->StaffDetail->created_at->format('d M Y - H:i:s a'),
  44. 'kategori' => 'PenguatKuasa',
  45. 'status' => $status,
  46. 'updated_at' => $s->StaffDetail->updated_at,
  47. ));
  48. }
  49. $user = User::with('UserDetail')->withTrashed()->orderBy('updated_at', 'desc')->get();
  50. foreach($user as $u) {
  51. $n1 = ''; $status = 'Aktif';
  52. $reg_time = $u->updated_at;
  53. $expiry_date = $reg_time->addDays(3);
  54. $expiry_date = $expiry_date->getTimestamp();
  55. if($curr < $expiry_date) {
  56. $n1 = "Baru/";
  57. }else{
  58. $n1 = "";
  59. }
  60. if ($u->trashed()) {
  61. $status = 'Tidak Aktif';
  62. }
  63. array_push($nested_data, array(
  64. '#' => $n1,
  65. 'nama' => $u->UserDetail->full_name,
  66. 'identity' => $u->UserDetail->identity,
  67. 'email' => $u->UserDetail->email,
  68. 'mobile' => $u->UserDetail->email,
  69. 'daftar' => $s->UserDetail->created_at,
  70. 'kategori' => 'Pengguna',
  71. 'status' => $status,
  72. 'updated_at' => $u->UserDetail->updated_at,
  73. ));
  74. }
  75. array_multisort(array_map(function($element) {
  76. return $element['updated_at'];
  77. }, $nested_data), SORT_DESC, $nested_data);
  78. return \DataTables::of($nested_data)->make(true);
  79. }
  80. public function officerAppList($jbkod)
  81. {
  82. $nested_data = array();
  83. $curr = Carbon::now()->getTimestamp();
  84. $staff = Staff::with(['StaffDetail' => function($q) use($jbkod){
  85. $q->where('jbkod',$jbkod);
  86. }])->where('roles_access','PenguatKuasa')->withTrashed()->orderBy('updated_at', 'desc')->get();
  87. foreach($staff as $s) {
  88. $n1 = ''; $status = 'Aktif';
  89. $reg_time = $s->updated_at;
  90. $expiry_date = $reg_time->addDays(3);
  91. $expiry_date = $expiry_date->getTimestamp();
  92. if($curr < $expiry_date) {
  93. $n1 = "Baru/";
  94. }else{
  95. $n1 = "";
  96. }
  97. if ($s->trashed()) {
  98. $status = 'Tidak Aktif';
  99. }
  100. if(!empty($s->StaffDetail)){
  101. array_push($nested_data, array(
  102. '#' => $n1,
  103. 'nama' => $s->StaffDetail->full_name,
  104. 'identity' => $s->StaffDetail->identity,
  105. 'email' => $s->StaffDetail->email,
  106. 'mobile' => $s->StaffDetail->email,
  107. 'daftar' => $s->StaffDetail->created_at->format('d M Y - H:i:s a'),
  108. 'kategori' => 'PenguatKuasa',
  109. 'status' => $status,
  110. 'updated_at' => $s->StaffDetail->updated_at,
  111. ));
  112. }
  113. }
  114. $user = User::with('UserDetail')->withTrashed()->orderBy('updated_at', 'desc')->get();
  115. foreach($user as $u) {
  116. $n1 = ''; $status = 'Aktif';
  117. $reg_time = $u->updated_at;
  118. $expiry_date = $reg_time->addDays(3);
  119. $expiry_date = $expiry_date->getTimestamp();
  120. if($curr < $expiry_date) {
  121. $n1 = "Baru/";
  122. }else{
  123. $n1 = "";
  124. }
  125. if ($u->trashed()) {
  126. $status = 'Tidak Aktif';
  127. }
  128. array_push($nested_data, array(
  129. '#' => $n1,
  130. 'nama' => $u->UserDetail->full_name,
  131. 'identity' => $u->UserDetail->identity,
  132. 'email' => $u->UserDetail->email,
  133. 'mobile' => $u->UserDetail->email,
  134. 'daftar' => $s->UserDetail->created_at,
  135. 'kategori' => 'Pengguna',
  136. 'status' => $status,
  137. 'updated_at' => $u->UserDetail->updated_at,
  138. ));
  139. }
  140. array_multisort(array_map(function($element) {
  141. return $element['updated_at'];
  142. }, $nested_data), SORT_DESC, $nested_data);
  143. return \DataTables::of($nested_data)->make(true);
  144. }
  145. }