public function action_register() { $employee = \Model_Employee::query()->where(['user_id' => \Auth::get_user()->id, 'seller_id' => \Session::get('seller')->id])->get_one(); $store = false; if ($employee) { $store = \Model_Store::query()->where(['seller_id' => \Session::get('seller')->id, 'manager_id' => $employee->id])->get_one(); } $create_flag = false; if (\Input::method() == 'POST') { $data = \Input::post(); if (!$employee) { $employee = \Model_Employee::forge(); } $employee->set(['user_id' => \Auth::get_user()->id, 'seller_id' => \Session::get('seller')->id, 'no' => time(), 'work_tel' => $data['work_tel'], 'work_phone' => $data['work_phone']]); if ($employee->save()) { if (!$store) { $create_flag = true; $store = \Model_Store::forge(); } $store->set(['manager_id' => $employee->id, 'seller_id' => \Session::get('seller')->id, 'no' => time(), 'name' => $data['name'], 'tel' => $data['tel'], 'phone' => $data['phone']]); if ($store->save()) { if ($create_flag) { //发送发货模板消息 $params = ['first' => ['value' => '您推荐的一个会员已成功申请店铺!', 'color' => '#D02090'], 'keyword1' => ['value' => \Auth::get_user()->username, 'color' => '#D02090'], 'keyword2' => ['value' => $data['work_phone'], 'color' => '#D02090'], 'keyword3' => ['value' => date('Y年m月d日 H时i分s秒'), 'color' => '#D02090'], 'remark' => ['value' => '', 'color' => '#D02090']]; $this->sendMsgTemplate('x8ykw2fHARq6QYKFWUJZjU3M6beYxoimtKJNWQWF4XQ', $params, 'http://ticket.wangxiaolei.cn'); } } } } $params = ['employee' => $employee, 'store' => $store, 'people' => \Model_People::query()->where('parent_id', \Auth::get_user()->id)->get_one()]; \View::set_global($params); $this->template->content = \View::forge("{$this->theme}/register"); }
public function action_login() { if (\Auth::check()) { $redirect = "/admin"; if (isset($data['to_url'])) { $redirect = $data['to_url']; } \Response::redirect($redirect); } \View::set_global(array('menu' => 'admin-home', 'title' => '登录系统', 'action' => 'login')); if (\Input::method() == 'POST') { if (\Auth::login()) { if (\Auth::get_user()->username == 'admin') { \Response::redirect('/admin'); } $employee = \Model_Employee::query()->where('parent_id', \Auth::get_user()->id)->get_one(); if (!$employee) { \Session::set_flash('msg', ['status' => 'err', 'msg' => '非法登录,多次尝试登录,您的帐户将被封锁!', 'title' => '警告', 'sub_title' => '非法登录', 'icon' => 'exclamation-circle', 'color' => '#d9534f']); return $this->not_login_alert(); } // 保存会话信息: 当前登录人员的身份、所属商户、微信公众号信息 \Session::set('seller', $employee->seller); \Session::set('people', $employee->people); \Session::set('employee', $employee); // 查询当前商户默认公众号信息 $accounts = \Model_WXAccount::query()->where(['seller_id' => $employee->seller->id])->get(); $account = false; if (count($accounts) > 1) { foreach ($accounts as $item) { if ($account->is_default == 1) { $account = $item; break; } } } else { $account = current($accounts); } \Session::set('WXAccount', $account); //获取API访问令牌 $result = \handler\common\UrlTool::request(\Config::get('base_url') . 'api/token.json?user_id=' . \Auth::get_user()->id); $token = json_decode($result->body); \Session::set('access_token', $token->access_token); $redirect = "/admin"; if (isset($data['to_url'])) { $redirect = $data['to_url']; } \Response::redirect($redirect); } \Session::set_flash('msg', array('status' => 'err', 'msg' => '登录失败', 'errcode' => 20)); } return \Response::forge(\View::forge("ace/login")); }
/** * View Staff Profile * * @author David Stansfield */ public function action_view($empID = 0) { if ((int) $empID == 0) { return; } $Employee = Employee::forge($empID); // -- Create a new Profile Data // ---------------------------- $departmentsList = array(); $departmentsList = Model_Department::loadDepartments((int) $Employee->center_id); $taxCodes = Model_Employee::loadTaxCodes(); $this->template->title = 'View Profile | Human Resources'; $this->template->content = \View::forge('profiles/view_profile', array('empID' => (int) $empID, 'employeeDeatils' => $Employee->getDetails(), 'taxAndPay' => $Employee->getTaxAndPay(), 'jobRole' => $Employee->getJobRole(), 'profileCompleted' => $Employee->profileCompleted(), 'departmentsList' => $departmentsList, 'taxCodes' => $taxCodes)); }
public function action_index() { echo '<pre>'; echo Fuel::VERSION . "\n"; echo setlocale(LC_ALL, '') . "\n"; echo Date::forge()->format('mysql') . "\n"; echo ini_get('default_charset') . "\n"; echo '</pre>'; $cd = '10001'; $result = Model_Employee::find_by_cd($cd); foreach ($result->as_array() as $row) { echo $row['lname'] . "\n"; echo $row['fname'] . "\n"; } echo count($result); }
public function action_create($id = null) { parent::has_access("add_leave"); is_null($id) and Response::redirect('leaves'); $data['employees'] = Model_Employee::find('all', array('where' => array('id' => $id))); if (Input::method() == 'POST') { $dol_date = Input::post('dol_date'); foreach ($dol_date as $var_dol_date) { $var_dol_month = Input::post('dol_month'); $var_dol_year = Input::post('dol_year'); $var_dol = $var_dol_year . '-' . $var_dol_month . '-' . $var_dol_date; $leave = Model_Leave::forge(array('employee_id' => $id, 'date_of_leave' => $var_dol, 'time' => '8', 'type' => Input::post('type'))); if ($leave and $leave->save()) { Session::set_flash('success', 'Added leave for employee #' . $id . '.'); } else { Session::set_flash('error', 'Could not save leave.'); } } Response::redirect('leaves/view/' . $id); } $this->template->title = "Leaves"; $this->template->content = View::forge('leaves/create', $data); }
public function action_print($id = null, $month = null, $year = null) { parent::has_access("print_salary_statement"); (is_null($id) or is_null($month) or is_null($year)) and Response::redirect('salaries'); $data['rename'] = Model_Rename::find('first'); $data['company'] = Model_Company::find('first', array('where' => array('city' => "Bangalore"))); $data['employee'] = Model_Employee::find('first', array('where' => array('id' => $id))); if (!($data['salary'] = Model_Salary::find('first', array('where' => array(array('employee_id' => $id), array('month' => $month), array('year' => $year)))))) { Session::set_flash('error', 'Could not find salary #' . $id); Response::redirect('salaries'); } $data['fytd'] = $this->findFYTD($id, $month, $year); return Response::forge(View::forge('salaries/payslip', $data)); }
public function action_delete($id = null) { parent::has_access("archive_employee"); is_null($id) and Response::redirect('employees'); if ($employee = Model_Employee::find($id)) { $employee->activity_status = "delete"; if ($employee->save()) { Session::set_flash('success', 'Deleted employee #' . $id); } else { Session::set_flash('error', 'Could not delete employee #' . $id); } } else { Session::set_flash('error', 'Could not find employee #' . $id); } if ($salaries = Model_Salary::find('all', array('where' => array('employee_id' => $id)))) { foreach ($salaries as $salary) { $salary->lock = "delete"; $salary->save(); } } else { // Session::set_flash('error', 'Could not delete employee #' . $id); } Response::redirect('employees/viewarchive'); }
function init() { parent::init(); $this->addCondition('status', 'Active'); }
public function action_delete($id = null) { is_null($id) and Response::redirect('employees'); if ($employee = Model_Employee::find($id)) { $employee->delete(); Session::set_flash('success', 'Deleted employee #' . $id); } else { Session::set_flash('error', 'Could not delete employee #' . $id); } Response::redirect('employees'); }
/** * Change Job Position * * @author David Stansfield */ public function changeJobPosition($positionLevelID = 0) { Model_Employee::changeJobPosition((int) $positionLevelID); return true; }
/** * 根据查询条件、排序条件获取数据 * @param $fields String 显示字段列表 * @param $params Array 查询条件 * @param $tables Array 多表查询 * @param $order_by Array 排序字段(array('字段名' => 'ASC|DESC')) * @param $limit int 限制条数 * @param $page int 分页状态(0.不分页 1.分页) */ public static function getItems($fields = '*', $params = array(), $tables = array(), $order_by = array(), $limit = 0, $page = 0) { $items = Model_Employee::query(); //判断是否多表查询 if ($tables) { $items->related($tables); } if (!isset($params['is_delete'])) { $params['is_delete'] = 0; } //判断是否有查询条件 if ($params) { foreach ($params as $key => $value) { if (is_array($value)) { $items->where($key, $value[0], $value[1]); } else { $items->where($key, $value); } } } //判断是否有排序条件 if ($order_by) { foreach ($order_by as $key => $value) { if (is_numeric($key)) { $items->order_by($value); } else { $items->order_by($key, $value); } } } if ($limit) { $items->limit($limit); } //判断是否分页 if ($page) { return $items; } else { return $items->get(); } }
public function action_addStaffPick($id) { is_null($id) and Response::redirect('employee'); $employee = Model_Employee::find($id); if (Input::method() == "POST") { try { $file = Input::file('pick_photo_file'); $config = array('path' => "/var/www/html/uploads/staffpick_cover/", 'ext_whitelist' => array('jpg', 'jpeg', 'png'), 'file_chmod' => 0777, 'auto_rename' => true, 'overwrite' => true, 'randomize' => true, 'create_path' => true); Upload::process($config); if (Upload::is_valid()) { Upload::save(); $pick_photo = Upload::get_files()[0]; $pick = Model_EmployeePick::forge(array('employee_id' => Input::post('employee_id'), 'pick_type' => Input::post('pick_type'), 'pick_date' => Input::post('pick_date'), 'pick_photo' => $pick_photo ? $pick_photo['saved_as'] : "", 'pick_is_active' => Input::post('pick_is_active'), 'created_at' => time())); if ($pick && $pick->save()) { $titles = Input::post('skill_title'); $levels = Input::post('skill_level'); foreach ($titles as $key => $val) { if (!strlen($val)) { continue; } $skill = Model_EmployeePickSkill::forge(array('pick_id' => $pick->id, 'skill_title' => $val, 'skill_level' => $levels[$key], 'created_at' => time())); $skill->save(); } Session::set_flash('success', 'Added employee #' . $id . ' to Staff Picks.'); Response::redirect('employee/staffPicks'); } else { Session::set_flash('error', 'Could not save employee pick.'); } } } catch (Exception $e) { die($e->getMessage()); } } $data['employee'] = $employee; $skills = Model_Skill::get_computer_skills($id); $data['skills'] = $skills; $this->theme->set_template('edit'); $this->theme->get_template()->set_global('employee', $employee, false); $this->theme->get_template()->set_global('skills', $skills, false); $this->theme->get_template()->set_global('provinces', Model_Province::get_provinces('th')); $this->theme->get_template()->set_global('current_menu', "Employees"); $this->theme->get_template()->set_global('current_menu_desc', "จัดการผู้ใช้งานที่เป็นผู้หางานทั้งหมดในระบบ"); $this->theme->get_template()->set('breadcrumb', array(array('title' => "Home", 'icon' => "fa-home", 'link' => Uri::create('home'), 'active' => false), array('title' => "Employees", 'icon' => "fa-users", 'link' => Uri::create('employee'), 'active' => false), array('title' => "Add Staff Pick", 'icon' => "fa-plus", 'link' => "", 'active' => true))); $this->theme->set_partial('sidebar', 'common/sidebar'); $this->theme->set_partial('left', 'employee/add_staff_pick')->set($data); }
protected function hasPrivilege(array $roles) { return in_array($this->employee->getRole(), $roles); }