public function viewGetPhanLoai($em_id = 0, $thang = 0, $nam = 0)
 {
     if ($em_id) {
         $danhgiaModel = new Front_Model_DanhGia();
         $danh_gia = $danhgiaModel->fetchRow("dg_em_id= {$em_id} and dg_thang={$thang} and dg_nam={$nam}");
         if ($danh_gia) {
             return $danh_gia;
         }
         return false;
     }
     return false;
 }
 public function jqaddstatusAction()
 {
     $this->_helper->layout()->disableLayout();
     $process_status = 0;
     $new_status = '';
     if ($this->_request->isPost()) {
         $em_id = $this->_arrParam['em_id'];
         $thang = $this->_arrParam['dg_thang'];
         $nam = $this->_arrParam['dg_nam'];
         $c_status = strtoupper(trim($this->_arrParam['dg_status']));
         $danhgiaModel = new Front_Model_DanhGia();
         $check_row = $danhgiaModel->fetchRow("dg_em_id={$em_id} and dg_thang={$thang} and dg_nam={$nam}");
         if ($check_row) {
             $process_status = $danhgiaModel->update(array('dg_don_vi_status' => $c_status), "dg_id={$check_row->dg_id} and (dg_ptccb_status='' or dg_ptccb_status IS NULL)");
         } else {
             if ($c_status) {
                 $current_time = new Zend_Db_Expr('NOW()');
                 $process_status = $danhgiaModel->insert(array('dg_em_id' => $em_id, 'dg_thang' => $thang, 'dg_nam' => $nam, 'dg_cong_viec' => '', 'dg_ket_qua_cong_viec' => 0, 'dg_don_vi_status' => $c_status, 'dg_date_modifyed' => $current_time, 'dg_date_created' => $current_time));
             }
         }
         if ($process_status) {
             $new_status = $c_status;
             $users = $this->_helper->GlobalHelpers->checkToChucUsers(4003);
             $current_time = new Zend_Db_Expr('NOW()');
             $thongbao_model = new Front_Model_ThongBao();
             $data = array();
             $data['tb_from'] = 0;
             $data['tb_tieu_de'] = '[Thông báo] Duyệt đánh giá phân loại.';
             $data['tb_noi_dung'] = 'Có đơn đánh giá phân phân loại theo tháng mới<br/> Bạn hãy <strong><a href="' . $this->view->baseUrl('tochuccanbo/duyetphanloai') . '">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);
             }
         }
     }
     if ($new_status == 'O') {
         $new_status = '-';
     }
     $this->view->new_status = $new_status;
     $this->view->process_status = $process_status;
 }
 public function auto03Action()
 {
     $translate = Zend_Registry::get('Zend_Translate');
     $this->view->title = 'Tính lương hệ số 0.3 - ' . $translate->_('TEXT_DEFAULT_TITLE');
     $this->view->headTitle($this->view->title);
     $layoutPath = APPLICATION_PATH . '/templates/' . TEMPLATE_USED;
     $option = array('layout' => '1_column/layout', 'layoutPath' => $layoutPath);
     Zend_Layout::startMvc($option);
     $auth = Zend_Auth::getInstance();
     $identity = $auth->getIdentity();
     $my_id = $identity->em_id;
     $date = new Zend_Date();
     $date->subMonth(1);
     $thang = $this->_getParam('thang', $date->toString('M'));
     $nam = $this->_getParam('nam', $date->toString('Y'));
     $emModel = new Front_Model_Employees();
     $phongbanModel = new Front_Model_Phongban();
     $chucvuModel = new Front_Model_Chucvu();
     $hesocbModel = new Front_Model_HeSo();
     $hesoModel = new Front_Model_EmployeesHeso();
     $bangluongModel = new Front_Model_BangLuong();
     $danhgiaModel = new Front_Model_DanhGia();
     $lastHeSoLuong = $hesocbModel->fetchOneData(array('hs_ngay_bat_dau' => date("{$nam}-{$thang}-1")), 'hs_ngay_bat_dau DESC');
     $he_so_tang_them = 0.5;
     $he_so_phan_loai = array('O' => 0, 'A' => 1.2, 'B' => 1, 'C' => 0.8, 'D' => 0);
     $pb_selected = $this->_getParam('phongban', 0);
     $phong_ban_id = $list_phongban_selected = $phong_ban = array();
     $phong_ban_id[] = $pb_selected;
     $list_phongban_selected = $phongbanModel->fetchDataStatus($pb_selected, $phong_ban);
     $list_chuc_vu = $chucvuModel->fetchAll();
     $list_nhan_vien = $phong_ban_options = array();
     $list_phong_ban_option = $phongbanModel->fetchData(0, $phong_ban_options);
     if (sizeof($list_phongban_selected)) {
         foreach ($list_phongban_selected as $phong_ban_info) {
             $phong_ban_id[] = $phong_ban_info->pb_id;
         }
     }
     $phong_ban_id = implode(',', $phong_ban_id);
     if ($pb_selected) {
         $list_nhan_vien = $emModel->fetchAll("em_phong_ban in ({$phong_ban_id}) and em_status=1");
     }
     if ($this->_request->isPost()) {
         $item = $this->getRequest()->getPost('cid');
         foreach ($item as $k => $v) {
             $bang_luong = $bangluongModel->fetchByDate($v, "{$nam}-{$thang}-01 00:00:00", "{$nam}-{$thang}-31 23:59:59");
             $danh_gia = $danhgiaModel->fetchRow("dg_em_id= {$v} and dg_thang={$thang} and dg_nam={$nam}");
             if ($bang_luong && $danh_gia && $danh_gia->dg_ptccb_status != '') {
                 $luong_thu_viec = 0;
                 $luong_toi_thieu = $bang_luong->bl_luong_toi_thieu;
                 //luong co ban
                 $giai_doan = $bang_luong->bl_giai_doan;
                 //0: chinh thuc, 1: thu viec
                 $loai_luong = $bang_luong->bl_loai_luong;
                 //0: bien che, 1: hop dong
                 $luong_thu_viec = $bang_luong->bl_luong_thu_viec;
                 //so phan tram so voi luong chinh
                 $he_so_luong = $bang_luong->bl_hs_luong;
                 $bhxh = $bang_luong->bl_bhxh;
                 $bhyt = $bang_luong->bl_bhyt;
                 $hs_pc_chuc_vu = $bang_luong->bl_hs_pc_cong_viec;
                 $hs_pc_trach_nhiem = $bang_luong->bl_hs_pc_trach_nhiem;
                 $hs_pc_khu_vuc = $bang_luong->bl_hs_pc_khu_vuc;
                 $hs_pc_tnvk_phan_tram = $bang_luong->bl_hs_pc_tnvk;
                 $hs_pc_tham_nien_phan_tram = $bang_luong->bl_tham_nien;
                 $uu_dai_nghe = $bang_luong->bl_hs_pc_udn;
                 $cong_vu = $bang_luong->bl_hs_pc_cong_vu;
                 $hs_pc_khac = $bang_luong->bl_hs_pc_khac;
                 $he_so_tang_them = $bang_luong->bl_pc_tang_them;
                 $hs_pc_khac_type = $bang_luong->bl_pc_khac_type;
                 $hs_pc_thu_hut_phan_tram = $bang_luong->bl_pc_thu_hut;
                 $tong_hs_luong_pc = $bang_luong->bl_tong_he_so;
                 $tong_hs_luong_pc_ca_nhan = $bang_luong->bl_tong_he_so_ca_nhan;
                 $tong_hs_luong_pc_plld = $bang_luong->bl_tong_he_so_plld;
                 $tam_chi_dau_vao = $bang_luong->bl_tam_chi_dau_vao;
                 $phan_loai = $danh_gia->dg_ptccb_status;
                 $phan_loai_he_so = $he_so_phan_loai[$phan_loai];
                 $luong_toi_thieu_sau_bh = (int) ($luong_toi_thieu * (100 - ($bhxh + $bhyt)) / 100);
                 $luong_toi_thieu_bhyt = (int) ($luong_toi_thieu * (100 - $bhyt) / 100);
                 $pc_trach_nhiem = $pc_cong_vu = $pc_khac = $pc_kiem_nhiem = $pc_uu_dai_nghe = $luong_toi_thieu;
                 $pc_chuc_vu = $pc_tnvk = $pc_thu_hut = $pc_tham_nien = $luong_toi_thieu_sau_bh;
                 $pc_khu_vuc = $luong_toi_thieu_bhyt;
                 if (!$giai_doan && !$loai_luong) {
                     $hs_pc_tnvk = ($he_so_luong + $hs_pc_chuc_vu) * $hs_pc_tnvk_phan_tram / 100;
                 } else {
                     $hs_pc_tnvk = $hs_pc_chuc_vu * $hs_pc_tnvk_phan_tram / 100;
                 }
                 if (!$giai_doan) {
                     $hs_pc_tham_nien = ($he_so_luong + $hs_pc_chuc_vu + $hs_pc_tnvk) * $hs_pc_tham_nien_phan_tram / 100;
                 } else {
                     $hs_pc_tham_nien = ($hs_pc_chuc_vu + $hs_pc_tnvk) * $hs_pc_tham_nien_phan_tram / 100;
                 }
                 $hs_pc_thu_hut = ($he_so_luong + $hs_pc_chuc_vu + $hs_pc_tnvk) * $hs_pc_thu_hut_phan_tram / 100;
                 $hs_pc_uu_dai_nghe = ($he_so_luong + $hs_pc_chuc_vu + $hs_pc_tnvk) * $uu_dai_nghe / 100;
                 $thanh_tien_pc_khac = $hs_pc_khac * $pc_khac;
                 $hs_pc_khac_he_so = $hs_pc_khac;
                 if ($hs_pc_khac_type) {
                     $thanh_tien_pc_khac = $thanh_tien_pc_khac / 100;
                     $hs_pc_khac_he_so = $hs_pc_khac / 100;
                 }
                 $tong_hs_luong_pc = $he_so_luong + $hs_pc_chuc_vu + $hs_pc_trach_nhiem + $hs_pc_khu_vuc + $hs_pc_tnvk + $hs_pc_tham_nien + $hs_pc_uu_dai_nghe + $hs_pc_khac_he_so + $hs_pc_thu_hut;
                 $tong_hs_luong_pc_ca_nhan = $he_so_luong + $hs_pc_chuc_vu + $hs_pc_khu_vuc + $hs_pc_tnvk + $hs_pc_uu_dai_nghe;
                 $tong_hs_luong_pc_plld = $tong_hs_luong_pc_ca_nhan * $phan_loai_he_so;
                 $tam_chi_dau_vao = $tong_hs_luong_pc * $luong_toi_thieu * 0.5;
                 $data = array('bl_ptccb_id' => $my_id, 'bl_phan_loai' => $phan_loai, 'bl_phan_loai_he_so' => $phan_loai_he_so, 'bl_tong_he_so' => $tong_hs_luong_pc, 'bl_tong_he_so_ca_nhan' => $tong_hs_luong_pc_ca_nhan, 'bl_tong_he_so_plld' => $tong_hs_luong_pc_plld, 'bl_tam_chi_dau_vao' => $tam_chi_dau_vao);
                 $bl_id = $bang_luong->bl_id;
                 $bangluongModel->update($data, "bl_id={$bl_id}");
             }
         }
     }
     $this->view->list_nhan_vien = $list_nhan_vien;
     $this->view->thang = $thang;
     $this->view->nam = $nam;
     $this->view->pb_id = $pb_selected;
     $this->view->list_phong_ban_option = $list_phong_ban_option;
     $this->view->list_chuc_vu = $list_chuc_vu;
 }
 public function updatestatusAction()
 {
     $this->_helper->layout()->disableLayout();
     $process_status = 0;
     if ($this->_request->isPost()) {
         $thang = (int) $this->_request->getParam('thang', 0);
         $nam = (int) $this->_request->getParam('nam', 0);
         $phongban = (int) $this->_request->getParam('phongban', 0);
         $status = (int) $this->_request->getParam('status', 0);
         $danhgiaModel = new Front_Model_DanhGia();
         $item = $this->getRequest()->getPost('cid');
         foreach ($item as $k => $v) {
             $find_row = $danhgiaModel->fetchRow("dg_em_id={$v} and dg_thang={$thang} and dg_nam={$nam}");
             if ($find_row) {
                 if ($status) {
                     $process_status = $danhgiaModel->update(array('dg_ptccb_status' => $find_row->dg_don_vi_status), "dg_id={$find_row->dg_id}");
                 } else {
                     $process_status = $danhgiaModel->update(array('dg_ptccb_status' => '', 'dg_don_vi_status' => ''), "dg_id={$find_row->dg_id}");
                 }
                 if ($process_status) {
                     $thongbao_model = new Front_Model_ThongBao();
                     $current_time = new Zend_Db_Expr('NOW()');
                     if (!$status) {
                         $em_info = $this->view->viewGetEmployeeInfo($find_row->dg_em_id);
                         $data = array();
                         $data['tb_from'] = 0;
                         $data['tb_tieu_de'] = '[Thông báo] Phòng tổ chức không duyệt đánh giá phân loại.';
                         $data['tb_noi_dung'] = 'Đánh giá phân phân loại theo tháng của bạn tháng ' . $thang . '-' . $nam . ' không được duyệt.<br/> Yêu cầu bạn hãy <strong><a href="' . $this->view->baseUrl('canhan/danhgiaphanloai') . '">click vào đây</a></strong> để xét chỉnh sửa.';
                         $data['tb_status'] = 0;
                         $data['tb_date_added'] = $current_time;
                         $data['tb_date_modified'] = $current_time;
                         $data['tb_to'] = $find_row->dg_em_id;
                         $thongbao_model->insert($data);
                         $data['tb_noi_dung'] = 'Đánh giá phân loại của <strong>' . $em_info->em_ho . ' ' . $em_info->em_ten . '</strong> tháng ' . $thang . '-' . $nam . ' phòng tổ chức không duyệt.<br/> Bạn hãy <strong><a href="' . $this->view->baseUrl('donvi/duyetphanloai') . '">click vào đây</a></strong> để xét duyệt lại.';
                         $don_vi_user = $this->_helper->GlobalHelpers->checkDonViUsers($find_row->dg_em_id, 3005);
                         foreach ($don_vi_user as $user) {
                             $data['tb_to'] = $user->em_id;
                             $thongbao_model->insert($data);
                         }
                     }
                 }
             }
         }
         $this->_redirect('tochuccanbo/duyetphanloai/index/thang/' . $thang . '/nam/' . $nam . '/phongban/' . $phongban);
     }
 }
 public function indexAction()
 {
     $translate = Zend_Registry::get('Zend_Translate');
     $this->view->title = 'Tự đánh giá phân loại - ' . $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);
     $this->view->page = $this->_page;
     $date = new Zend_Date();
     $date->subMonth(1);
     $thang = $this->_getParam('thang', $date->toString("M"));
     $nam = $this->_getParam('nam', $date->toString("Y"));
     $auth = Zend_Auth::getInstance();
     $identity = $auth->getIdentity();
     $em_id = $identity->em_id;
     $danhgiaModel = new Front_Model_DanhGia();
     $danh_gia = $danhgiaModel->fetchOneData(array('dg_em_id' => $em_id, 'dg_thang' => $thang, 'dg_nam' => $nam));
     $tieuchiModel = new Front_Model_TieuChiDanhGiaCB();
     $list_tieuchi = $tieuchiModel->fetchData(array('tcdgcb_status' => 1), 'tcdgcb_order ASC');
     $ketquaModel = new Front_Model_DanhGiaKetQuaCV();
     $list_ketqua = $ketquaModel->fetchData(array('dgkqcv_status' => 1), 'dgkqcv_order ASC');
     $error_message = array();
     $success_message = '';
     if ($this->_request->isPost()) {
         $cong_viec = $this->_arrParam['d_cong_viec'];
         $kq_cong_viec = $this->_arrParam['d_kq_cong_viec'];
         $ngay_nghi = $this->_arrParam['d_ngay_nghi'];
         $ly_do_nghi = $this->_arrParam['d_ly_do'];
         $y_thuc_tn = $this->_arrParam['d_y_thuc'];
         $khuyet_diem = $this->_arrParam['d_khuyet_diem'];
         $tc_danh_gia = serialize($this->_arrParam['d_tieu_chi']);
         $ghi_chu = $this->_arrParam['d_ghi_chu'];
         $phan_loai = $this->_arrParam['d_phan_loai'];
         $current_time = new Zend_Db_Expr('NOW()');
         if ($danh_gia && ($danh_gia->dg_don_vi_status != '' || $danh_gia->dg_ptccb_status != '')) {
             $error_message[] = 'Đánh giá phân loại đã được duyệt nên không thể thay đổi.';
         }
         if (!$cong_viec) {
             $error_message[] = 'Công việc trong tháng không được để trống';
         }
         if (!sizeof($error_message)) {
             if ($danh_gia) {
                 $danhgiaModel->update(array('dg_cong_viec' => $cong_viec, 'dg_ket_qua_cong_viec' => $kq_cong_viec, 'dg_so_ngay_nghi' => $ngay_nghi, 'dg_ly_do_nghi' => $ly_do_nghi, 'dg_y_thuc_xay_dung' => $y_thuc_tn, 'dg_khuyet_diem' => $khuyet_diem, 'dg_tc_danh_gia' => $tc_danh_gia, 'dg_ghi_chu' => $ghi_chu, 'dg_phan_loai' => $phan_loai, 'dg_date_modifyed' => $current_time), 'dg_id=' . $danh_gia->dg_id);
             } else {
                 $danhgiaModel->insert(array('dg_em_id' => $em_id, 'dg_thang' => $thang, 'dg_nam' => $nam, 'dg_cong_viec' => $cong_viec, 'dg_ket_qua_cong_viec' => $kq_cong_viec, 'dg_so_ngay_nghi' => $ngay_nghi, 'dg_ly_do_nghi' => $ly_do_nghi, 'dg_y_thuc_xay_dung' => $y_thuc_tn, 'dg_khuyet_diem' => $khuyet_diem, 'dg_tc_danh_gia' => $tc_danh_gia, 'dg_ghi_chu' => $ghi_chu, 'dg_phan_loai' => $phan_loai, 'dg_date_modifyed' => $current_time, 'dg_date_created' => $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 đánh giá phân loại.';
         $data['tb_noi_dung'] = 'Có khai báo đánh giá phân loại mới.<br/> Bạn hãy <strong><a href="' . $this->view->baseUrl('donvi/duyetphanloai') . '">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 = 'Đã cập nhật thành công.';
         $danh_gia = $danhgiaModel->fetchOneData(array('dg_em_id' => $em_id, 'dg_thang' => $thang, 'dg_nam' => $nam));
     }
     if ($danh_gia) {
         $this->_arrParam['d_cong_viec'] = $danh_gia->dg_cong_viec;
         $this->_arrParam['d_kq_cong_viec'] = $danh_gia->dg_ket_qua_cong_viec;
         $this->_arrParam['d_ngay_nghi'] = $danh_gia->dg_so_ngay_nghi;
         $this->_arrParam['d_ly_do'] = $danh_gia->dg_ly_do_nghi;
         $this->_arrParam['d_y_thuc'] = $danh_gia->dg_y_thuc_xay_dung;
         $this->_arrParam['d_khuyet_diem'] = $danh_gia->dg_khuyet_diem;
         $this->_arrParam['d_tieu_chi'] = unserialize($danh_gia->dg_tc_danh_gia);
         $this->_arrParam['d_ghi_chu'] = $danh_gia->dg_ghi_chu;
         $this->_arrParam['d_phan_loai'] = $danh_gia->dg_phan_loai;
     }
     $this->view->tieu_chi = $list_tieuchi;
     $this->view->ket_qua = $list_ketqua;
     $this->view->success_message = $success_message;
     $this->view->error_message = $error_message;
     $this->view->thang = $thang;
     $this->view->nam = $nam;
     $this->view->danh_gia = $danh_gia;
     $this->view->arrParam = $this->_arrParam;
 }