123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172 |
- <?php
-
- namespace App\Http\Controllers\api;
-
- use Illuminate\Http\Request;
- use App\Http\Controllers\Api\BaseController;
-
- use Config;
- use File;
- use Carbon\Carbon;
-
- use App\Model\Staff;
- use App\Model\StaffDetail;
- use App\Model\User;
- use App\Model\UserDetail;
-
- class ApplicationController extends BaseController
- {
-
- /**
- * Create a user list controller.
- *
- * @return json
- */
- public function appList()
- {
- $nested_data = array();
- $curr = Carbon::now()->getTimestamp();
-
- $staff = Staff::with('StaffDetail')->where('roles_access','PenguatKuasa')->withTrashed()->orderBy('updated_at', 'desc')->get();
- foreach($staff as $s) {
- $n1 = ''; $status = 'Aktif';
- $reg_time = $s->updated_at;
- $expiry_date = $reg_time->addDays(3);
- $expiry_date = $expiry_date->getTimestamp();
-
- if($curr < $expiry_date) {
- $n1 = "Baru/";
- }else{
- $n1 = "";
- }
-
- if ($s->trashed()) {
- $status = 'Tidak Aktif';
- }
-
- array_push($nested_data, array(
- '#' => $n1,
- 'nama' => $s->StaffDetail->full_name,
- 'identity' => $s->StaffDetail->identity,
- 'email' => $s->StaffDetail->email,
- 'mobile' => $s->StaffDetail->email,
- 'daftar' => $s->StaffDetail->created_at->format('d M Y - H:i:s a'),
- 'kategori' => 'PenguatKuasa',
- 'status' => $status,
- 'updated_at' => $s->StaffDetail->updated_at,
- ));
- }
-
- $user = User::with('UserDetail')->withTrashed()->orderBy('updated_at', 'desc')->get();
- foreach($user as $u) {
- $n1 = ''; $status = 'Aktif';
- $reg_time = $u->updated_at;
- $expiry_date = $reg_time->addDays(3);
- $expiry_date = $expiry_date->getTimestamp();
-
- if($curr < $expiry_date) {
- $n1 = "Baru/";
- }else{
- $n1 = "";
- }
-
- if ($u->trashed()) {
- $status = 'Tidak Aktif';
- }
-
- array_push($nested_data, array(
- '#' => $n1,
- 'nama' => $u->UserDetail->full_name,
- 'identity' => $u->UserDetail->identity,
- 'email' => $u->UserDetail->email,
- 'mobile' => $u->UserDetail->email,
- 'daftar' => $s->UserDetail->created_at,
- 'kategori' => 'Pengguna',
- 'status' => $status,
- 'updated_at' => $u->UserDetail->updated_at,
- ));
- }
-
- array_multisort(array_map(function($element) {
- return $element['updated_at'];
- }, $nested_data), SORT_DESC, $nested_data);
-
- return \DataTables::of($nested_data)->make(true);
- }
-
- public function officerAppList($jbkod)
- {
- $nested_data = array();
- $curr = Carbon::now()->getTimestamp();
-
- $staff = Staff::with(['StaffDetail' => function($q) use($jbkod){
- $q->where('jbkod',$jbkod);
- }])->where('roles_access','PenguatKuasa')->withTrashed()->orderBy('updated_at', 'desc')->get();
- foreach($staff as $s) {
- $n1 = ''; $status = 'Aktif';
- $reg_time = $s->updated_at;
- $expiry_date = $reg_time->addDays(3);
- $expiry_date = $expiry_date->getTimestamp();
-
- if($curr < $expiry_date) {
- $n1 = "Baru/";
- }else{
- $n1 = "";
- }
-
- if ($s->trashed()) {
- $status = 'Tidak Aktif';
- }
-
- if(!empty($s->StaffDetail)){
- array_push($nested_data, array(
- '#' => $n1,
- 'nama' => $s->StaffDetail->full_name,
- 'identity' => $s->StaffDetail->identity,
- 'email' => $s->StaffDetail->email,
- 'mobile' => $s->StaffDetail->email,
- 'daftar' => $s->StaffDetail->created_at->format('d M Y - H:i:s a'),
- 'kategori' => 'PenguatKuasa',
- 'status' => $status,
- 'updated_at' => $s->StaffDetail->updated_at,
- ));
- }
- }
-
- $user = User::with('UserDetail')->withTrashed()->orderBy('updated_at', 'desc')->get();
- foreach($user as $u) {
- $n1 = ''; $status = 'Aktif';
- $reg_time = $u->updated_at;
- $expiry_date = $reg_time->addDays(3);
- $expiry_date = $expiry_date->getTimestamp();
-
- if($curr < $expiry_date) {
- $n1 = "Baru/";
- }else{
- $n1 = "";
- }
-
- if ($u->trashed()) {
- $status = 'Tidak Aktif';
- }
-
- array_push($nested_data, array(
- '#' => $n1,
- 'nama' => $u->UserDetail->full_name,
- 'identity' => $u->UserDetail->identity,
- 'email' => $u->UserDetail->email,
- 'mobile' => $u->UserDetail->email,
- 'daftar' => $s->UserDetail->created_at,
- 'kategori' => 'Pengguna',
- 'status' => $status,
- 'updated_at' => $u->UserDetail->updated_at,
- ));
- }
-
- array_multisort(array_map(function($element) {
- return $element['updated_at'];
- }, $nested_data), SORT_DESC, $nested_data);
-
- return \DataTables::of($nested_data)->make(true);
- }
- }
|