public function addAction() { $translate = Zend_Registry::get('Zend_Translate'); $this->view->title = 'Quản lý làm thêm giờ - ' . $translate->_('TEXT_DEFAULT_TITLE'); $this->view->headTitle($this->view->title); $layoutPath = APPLICATION_PATH . '/templates/' . TEMPLATE_USED; $option = array('layout' => 'canhan/layout', 'layoutPath' => $layoutPath); Zend_Layout::startMvc($option); $auth = Zend_Auth::getInstance(); $identity = $auth->getIdentity(); $em_id = $identity->em_id; $error_message = array(); $success_message = ''; $ltgModel = new Front_Model_LamThemGio(); if ($this->_request->isPost()) { $ltg_date = trim($this->_arrParam['ltg_date']); $ltg_chi_tiet = trim($this->_arrParam['ltg_chi_tiet']); $ltg_gio_bat_dau = $this->_arrParam['ltg_gio_bat_dau']; $ltg_phut_bat_dau = $this->_arrParam['ltg_phut_bat_dau']; $ltg_gio_ket_thuc = $this->_arrParam['ltg_gio_ket_thuc']; $ltg_phut_ket_thuc = $this->_arrParam['ltg_phut_ket_thuc']; $ltg_gio_bat_dau_chieu = $this->_arrParam['ltg_gio_bat_dau_chieu']; $ltg_phut_bat_dau_chieu = $this->_arrParam['ltg_phut_bat_dau_chieu']; $ltg_gio_ket_thuc_chieu = $this->_arrParam['ltg_gio_ket_thuc_chieu']; $ltg_phut_ket_thuc_chieu = $this->_arrParam['ltg_phut_ket_thuc_chieu']; if (!$ltg_date) { $error_message[] = 'Ngày làm thêm giờ không được để trống.'; } if (!$ltg_chi_tiet) { $error_message[] = 'Chi tiết công việc không được để trống.'; } if (!$ltg_gio_bat_dau && !$ltg_gio_bat_dau_chieu || !$ltg_gio_ket_thuc && !$ltg_gio_ket_thuc_chieu) { $error_message[] = 'Phải chọn giờ làm buổi sáng hoặc chiều'; } if ($ltg_gio_bat_dau && !$ltg_gio_ket_thuc || $ltg_gio_ket_thuc && !$ltg_gio_bat_dau) { $error_message[] = 'Khai báo giờ làm buổi sáng không chính xác'; } if ($ltg_gio_bat_dau_chieu && !$ltg_gio_ket_thuc_chieu || $ltg_gio_ket_thuc_chieu && !$ltg_gio_bat_dau_chieu) { $error_message[] = 'Khai báo giờ làm buổi chiều không chính xác'; } if ($ltg_gio_ket_thuc < $ltg_gio_bat_dau || $ltg_gio_ket_thuc == $ltg_gio_bat_dau && $ltg_phut_bat_dau > $ltg_phut_ket_thuc) { $error_message[] = 'Giờ kết thúc lớn hơn giờ bắt đầu.'; } if ($ltg_gio_ket_thuc_chieu < $ltg_gio_bat_dau_chieu || $ltg_gio_ket_thuc_chieu == $ltg_gio_bat_dau_chieu && $ltg_phut_bat_dau_chieu > $ltg_phut_ket_thuc_chieu) { $error_message[] = 'Giờ kết thúc phải lớn hơn giờ bắt đầu.'; } if (!sizeof($error_message)) { $current_time = new Zend_Db_Expr('NOW()'); $ltg_date = str_replace('/', '-', $ltg_date); $ltg_date = date('Y-m-d', strtotime($ltg_date)); $ltgModel->insert(array('ltg_em_id' => $em_id, 'ltg_chi_tiet' => $ltg_chi_tiet, 'ltg_ngay' => $ltg_date, 'ltg_gio_bat_dau' => $ltg_gio_bat_dau, 'ltg_phut_bat_dau' => $ltg_phut_bat_dau, 'ltg_gio_ket_thuc' => $ltg_gio_ket_thuc, 'ltg_phut_ket_thuc' => $ltg_phut_ket_thuc, 'ltg_gio_bat_dau_chieu' => $ltg_gio_bat_dau_chieu, 'ltg_phut_bat_dau_chieu' => $ltg_phut_bat_dau_chieu, 'ltg_gio_ket_thuc_chieu' => $ltg_gio_ket_thuc_chieu, 'ltg_phut_ket_thuc_chieu' => $ltg_phut_ket_thuc_chieu, 'ltg_date_added' => $current_time)); $users = $this->_helper->GlobalHelpers->checkDonViUsers($em_id, 3005); $thongbao_model = new Front_Model_ThongBao(); $data = array(); $data['tb_from'] = 0; $data['tb_tieu_de'] = '[Thông báo] Duyệt khai báo làm thêm giờ.'; $data['tb_noi_dung'] = 'Có khai báo làm thêm giờ mới<br/> Bạn hãy <strong><a href="' . $this->view->baseUrl('donvi/duyetthemgio') . '">click vào đây</a></strong> để xét duyệt.'; $data['tb_status'] = 0; $data['tb_date_added'] = $current_time; $data['tb_date_modified'] = $current_time; foreach ($users as $user) { $data['tb_to'] = $user->em_id; $thongbao_model->insert($data); } $success_message = 'Đã khai báo thành công.'; } } $this->view->page = $this->_page; $this->view->success_message = $success_message; $this->view->error_message = $error_message; }