public function post(Request $request) { $rules = array('datetime' => 'required', 'txncode' => 'required', 'entrytype' => 'required'); $validator = Validator::make($request->all(), $rules); if ($validator->fails()) { $respone = array('code' => '400', 'status' => 'error', 'message' => 'Error on validation'); } else { $employee = Employee::with('branch')->where('rfid', '=', $request->input('rfid'))->get(); if (!isset($employee[0])) { // employee does not exist having the RFID submitted $respone = array('code' => '401', 'status' => 'error', 'message' => 'Invalid RFID: ' . $request->input('rfid'), 'data' => ''); } else { $timelog = new Timelog(); //$timelog->employeeid = $request->get('employeeid'); $timelog->employeeid = $employee[0]->id; $timelog->datetime = $request->input('datetime'); $timelog->txncode = $request->input('txncode'); $timelog->entrytype = $request->input('entrytype'); //$timelog->terminalid = $request->get('terminalid'); $timelog->terminal = gethostname(); $timelog->id = strtoupper(Timelog::get_uid()); if ($timelog->save()) { $respone = array('code' => '200', 'status' => 'success', 'message' => 'Record saved!'); $datetime = explode(' ', $timelog->datetime); $txncode = $timelog->txncode == 'to' ? 'Time Out' : 'Time In'; $data = array('empno' => $employee[0]->code, 'lastname' => $employee[0]->lastname, 'firstname' => $employee[0]->firstname, 'middlename' => $employee[0]->middlename, 'position' => $employee[0]->position, 'date' => $datetime[0], 'time' => $datetime[1], 'txncode' => $timelog->txncode, 'txnname' => $txncode, 'branch' => $employee[0]->branch->code, 'timelogid' => $timelog->id); $respone['data'] = $data; } else { $respone = array('code' => '400', 'status' => 'error', 'message' => 'Error on saving locally!'); } } } return json_encode($respone); }
public function makeEditView(Request $request, $id) { //$branches = Branch::orderBy('code')->get(); $employee = Employee::with(['branch' => function ($query) { $query->select('code', 'descriptor', 'addr1', 'id'); }])->where('id', $id)->get()->first(); return view('masterfiles.employee.edit')->with('employee', $employee)->with('branches', $this->branches); }
private function empGrpByDept() { $depts = [['name' => 'Dining', 'employees' => [], 'deptid' => ['75B34178674011E596ECDA40B3C0AA12', '201E68D4674111E596ECDA40B3C0AA12']], ['name' => 'Kitchen', 'employees' => [], 'deptid' => ['71B0A2D2674011E596ECDA40B3C0AA12']]]; for ($i = 0; $i <= 1; $i++) { $employees = Employee::with('position')->select('lastname', 'firstname', 'positionid', 'employee.id')->join('position', 'position.id', '=', 'employee.positionid')->where('branchid', $this->branchid)->whereIn('deptid', $depts[$i]['deptid'])->orderBy('position.ordinal', 'ASC')->get(); $depts[$i]['employees'] = $employees; } return $depts; }
public function getByField($field, $value) { $employee = Employee::with('position')->where($field, '=', $value)->first(); if ($employee) { $respone = array('code' => '200', 'status' => 'success', 'message' => 'Hello ' . $employee->firstname . '=)', 'data' => $employee->toArray()); } else { $respone = array('code' => '404', 'status' => 'danger', 'message' => 'Invalid RFID! Record no found.', 'data' => ''); } return $respone; }
/** * Get the validation rules that apply to the request. * * @return array */ public function rules() { $rules = ['id_number' => 'required|numeric', 'email' => 'required|email|unique:users,email', 'first_name' => 'required|max:255', 'middle_name' => 'max:255', 'last_name' => 'required|max:255', 'sex' => 'required|in:Male,Female', 'birthday' => 'required|date', 'shift_id' => 'required|numeric', 'group_id' => 'required|numeric']; // update mode $e = Employee::with('user')->find(Input::get('empId')); if ($e && $e->user) { $rules['email'] = $rules['email'] . ',' . $e->user->id; } return $rules; }
/** * Just dump a json of an object. * * @param $id * * @return mixed */ public function show($id) { return Employee::with('addresses', 'courses')->findOrFail($id); }
function save(array $params) { $response = new ResponseEntity(); DB::transaction(function () use(&$response, $params) { $empId = isset($params['empId']) ? intval($params['empId']) : 0; $idNumber = Config::get('hris_system.employee_id_prefix') . $params['id_number']; $existingEmp = Employee::with('user')->find($empId); // check for duplicate id_number $tempEmp = Employee::where('id_number', '=', $idNumber)->first(); if ($tempEmp) { if (!$existingEmp) { // new $response->setMessages(['id_number' => ['Id number is already taken']]); return $response; } else { if ($existingEmp && $existingEmp->id != $tempEmp->id) { // update $response->setMessages(['id_number' => ['Id number is already taken']]); return $response; } } } if ($empId > 0 && !$existingEmp) { // check when updating $response->setMessages(['Employee is not available!']); return $response; } else { // employee user account $user = $existingEmp ? $existingEmp->user : new User(); $user->email = $params['email']; if (!$existingEmp) { // for new employee user account $user->password = Hash::make($idNumber); //default password is the ID Number of the employee $user->active = '1'; } $user->save(); // clear user group UserGroup::where('user_id', $user->id)->delete(); // assign group $ug = new UserGroup(); $ug->user_id = $user->id; $ug->group_id = $params['group_id']; $ug->save(); // employee records $employee = $existingEmp ? $existingEmp : new Employee(); $employee->user_id = $user->id; $employee->id_number = $idNumber; $employee->first_name = $params['first_name']; $employee->last_name = $params['last_name']; if (isset($params['middle_name'])) { $employee->middle_name = $params['middle_name']; } if (isset($params['supervisor_id'])) { $employee->supervisor_id = $params['supervisor_id']; } $employee->sex = $params['sex']; $employee->birthday = Carbon::createFromFormat('m/d/Y', $params['birthday']); $employee->shift_id = $params['shift_id']; $employee->active = $existingEmp ? $existingEmp->active : '1'; $ok = $employee->save(); if ($ok) { $response->setSuccess(true); $response->setData(['empId' => $employee->id]); $response->setMessages(['Employee successfully ' . ($existingEmp ? 'saved' : 'created')]); } else { $response->setMessages(['Failed to ' . ($existingEmp ? 'save' : 'create') . ' employee!']); } } }); return $response; }
public function index() { $status = Config::get('common.status'); $employees = Employee::with('designation')->latest()->paginate(Config::get('common.pagination')); return view('employees.index', compact('employees', 'status')); }
/** * Process datatables ajax request. * * @return \Illuminate\Http\JsonResponse */ public function anyData() { return Datatables::of(Employee::with(['position', 'branch'])->select('*'))->make(true); }
function findById($id) { return Employee::with('user', 'shift')->find($id); }
public function byDepartment(Request $request) { $department = new Department(); $d1 = array_flatten($department->whereNotIn('code', ['KIT'])->orderBy('code', 'DESC')->get(['id'])->toArray()); $depts = [['name' => 'Dining', 'employees' => [], 'deptid' => $d1], ['name' => 'Kitchen', 'employees' => [], 'deptid' => ['71B0A2D2674011E596ECDA40B3C0AA12']]]; for ($i = 0; $i <= 1; $i++) { $employees = Employee::with('position')->select('lastname', 'firstname', 'positionid', 'employee.id')->join('position', 'position.id', '=', 'employee.positionid')->where('branchid', $request->user()->branchid)->whereIn('deptid', $depts[$i]['deptid'])->orderBy('employee.lastname', 'ASC')->orderBy('employee.firstname', 'ASC')->get(); $depts[$i]['employees'] = $employees; } return $depts; }