/** * Display a listing of the resource. * * @return Response */ public function index() { // Using factory // Getting an instance of a model User example $user = ModelFactory::getInstance('User'); // Getting an instance of a Library String $stringLib = LibraryFactory::getInstance('String'); // Getting an instance of a Filter DateRange $dateRange = FilterFactory::getInstance('DateRange'); // Getting an instance of a Type User $userType = TypeFactory::getInstance('User'); // Perform an access check AccessCheckFactory::getInstance('User')->canAccess(auth()->user()->id, 'view'); // Using facade // Getting an instance of a model User example $user = \Model::getInstance('User'); // Getting an instance of a Library String $stringLib = \Library::getInstance('String'); // Getting an instance of a Filter DateRange $dateRange = \Filter::getInstance('DateRange'); // Getting an instance of a Type User $userType = \Type::getInstance('User'); // Passing data to view example $this->view->fullname = auth()->user()->fullname; // Perform an access check \AccessCheck::getInstance('User')->canAccess(1, 'view'); return $this->view('dashboard'); }
/** * Display a listing of the resource. * * @return Response */ public function index() { // Getting an instance of a model User example $user = ModelFactory::getInstance('User'); // Getting an instance of a Library String $stringLib = LibraryFactory::getInstance('String'); // Getting an instance of a Filter DateRange $dateRange = FilterFactory::getInstance('DateRange'); // Getting an instance of a Type User $userType = TypeFactory::getInstance('User'); // Passing data to view example $this->view->fullname = auth()->user()->firstname . ' ' . auth()->user()->lastname; return $this->view('dashboard'); }
/** * Return prepared statement for material price list * @return unknown */ public function getPreparedMaterialPriceList() { $select = ' app_item_master.item_code, app_item_master.description, app_item_price.uom_code, app_item_master.segment_code, app_item_price.unit_price, app_item_price.customer_price_group, app_item_price.effective_date_from, app_item_price.effective_date_to, app_area.area_name, app_item_master.sfa_modified_date, IF(app_item_master.status=\'A\',\'Active\',IF(app_item_master.status=\'I\',\'Inactive\',\'Deleted\')) status '; $prepare = \DB::table('app_item_price')->selectRaw($select)->join('app_item_master', 'app_item_master.item_code', '=', 'app_item_price.item_code')->join('app_customer', 'app_customer.customer_price_group', '=', 'app_item_price.customer_price_group')->join('app_area', 'app_customer.area_code', '=', 'app_area.area_code'); $salesmanFilter = FilterFactory::getInstance('Select'); $prepare = $salesmanFilter->addFilter($prepare, 'salesman_code'); $itemFilter = FilterFactory::getInstance('Select'); $prepare = $itemFilter->addFilter($prepare, 'item_code'); $areaFilter = FilterFactory::getInstance('Select'); $prepare = $areaFilter->addFilter($prepare, 'area', function ($self, $model) { return $model->where('app_area.area_code', '=', $self->getValue()); }); $statusFilter = FilterFactory::getInstance('Select'); $prepare = $statusFilter->addFilter($prepare, 'status'); $companyCodeFilter = FilterFactory::getInstance('Select'); $prepare = $companyCodeFilter->addFilter($prepare, 'company_code', function ($self, $model) { return $model->where('app_customer.customer_code', 'like', $self->getValue() . '%'); }); $invoiceDateFilter = FilterFactory::getInstance('DateRange'); $prepare = $invoiceDateFilter->addFilter($prepare, 'sfa_modified_date', function ($self, $model) { return $model->whereBetween('app_item_master.sfa_modified_date', $self->formatValues($self->getValue())); }); $effectiveDateFromFilter = FilterFactory::getInstance('DateRange'); $prepare = $effectiveDateFromFilter->addFilter($prepare, 'effective_date1', function ($self, $model) { return $model->whereBetween('app_item_price.effective_date_from', $self->formatValues($self->getValue())); }); $effectiveDateToFilter = FilterFactory::getInstance('DateRange'); $prepare = $effectiveDateToFilter->addFilter($prepare, 'effective_date2', function ($self, $model) { return $model->whereBetween('app_item_price.effective_date_to', $self->formatValues($self->getValue())); }); $segmentFilter = FilterFactory::getInstance('Select'); $prepare = $segmentFilter->addFilter($prepare, 'segment_code', function ($self, $model) { return $model->where('app_item_master.segment_code', '=', $self->getValue()); }); $prepare->where('app_item_price.status', '=', 'A'); $prepare->where('app_item_master.status', '=', 'A'); $prepare->where('app_customer.status', '=', 'A'); $prepare->where('app_area.status', '=', 'A'); $prepare->groupBy('app_item_price.item_code'); $prepare->groupBy('app_item_master.description'); $prepare->groupBy('app_item_price.uom_code'); $prepare->groupBy('app_item_master.segment_code'); $prepare->groupBy('app_item_price.unit_price'); $prepare->groupBy('app_item_price.customer_price_group'); $prepare->groupBy('app_item_price.effective_date_from'); $prepare->groupBy('app_item_price.effective_date_to'); $prepare->groupBy('app_area.area_name'); $prepare->groupBy('app_item_price.sfa_modified_date'); $prepare->groupBy('app_item_price.status'); if (!$this->hasAdminRole() && auth()->user()) { $codes = $this->getAlikeAreaCode(auth()->user()->location_assignment_code); $prepare->whereIn('app_area.area_code', $codes); } return $prepare; }
public function getUsers() { $select = ' user.id, user.created_at, CONCAT(user.firstname,\' \',user.lastname) fullname, app_area.area_name, IF(user.location_assignment_type = 1, \'Permanent\', IF(user.location_assignment_type = 2, \'Reassigned\', IF(user.location_assignment_type = 3, \'Temporary\', \'\'))) assignment, user_group.name role, user.status, user.email '; $prepare = \DB::table('user')->selectRaw($select)->leftJoin('user_group', 'user.user_group_id', '=', 'user_group.id')->leftJoin('app_area', 'app_area.area_code', '=', 'user.location_assignment_code'); $fnameFilter = FilterFactory::getInstance('Text'); $prepare = $fnameFilter->addFilter($prepare, 'fullname', function ($filter, $model) { return $model->where(function ($query) use($filter) { $query->where('user.firstname', 'like', '%' . $filter->getValue() . '%')->where('user.lastname', 'like', '%' . $filter->getValue() . '%', 'or'); }); }); $roleFilter = FilterFactory::getInstance('Select'); $prepare = $roleFilter->addFilter($prepare, 'user_group_id'); $createdFilter = FilterFactory::getInstance('DateRange'); $prepare = $createdFilter->addFilter($prepare, 'created_at', function ($filter, $model) { return $model->whereBetween(\DB::raw('DATE(user.created_at)'), $filter->getValue()); }); $branchFilter = FilterFactory::getInstance('Select'); $prepare = $branchFilter->addFilter($prepare, 'location_assignment_code'); $assignmentFilter = FilterFactory::getInstance('Select'); $prepare = $assignmentFilter->addFilter($prepare, 'location_assignment_type'); $exclude = [1, auth()->user()->id]; $prepare->whereNotIn('user.id', $exclude); $prepare->whereNull('user.deleted_at'); //dd($prepare->toSql()); $result = $this->paginate($prepare); $items = $result->items(); foreach ($items as $k => $item) { if ($item->status == 'A') { $items[$k]->active = true; } else { $items[$k]->active = false; } } $data['records'] = $items; $data['total'] = $result->total(); return response()->json($data); }