public function getPosts()
 {
     $query = new \yii\db\Query();
     $query->select('posts.*, user_name, category_name')->from('posts')->leftJoin('users', ' posts.post_author = users.id')->innerJoin('posts_category', ' posts.post_category = posts_category.id');
     $command = $query->createCommand();
     return $posts_category = $command->queryAll();
 }
示例#2
0
 public static function findRecursive($children_ids, $direct = 'up', $only_leaf = false)
 {
     $placeholders = !empty($children_ids) ? str_repeat('?,', count($children_ids) - 1) . '?' : false;
     $first_param = $direct === 'up' ? 'id' : 'parent_id';
     $second_param = $direct === 'up' ? 'parent_id' : 'id';
     $sql = 'WITH RECURSIVE tree AS (
                 SELECT
                 *,
                 0 AS level
                 FROM rubric' . ($placeholders ? ' WHERE ' . $first_param . ' IN (' . $placeholders . ')' : '') . ' UNION
                 SELECT
                   parent.*,
                   child.level + 1 AS level
                 FROM rubric AS parent
                 JOIN tree AS child ON child.' . $second_param . ' = parent.' . $first_param . '
             )
            SELECT DISTINCT t.id, t.title, t.parent_id ' . ' FROM tree as t' . ($only_leaf ? ' LEFT OUTER JOIN tree AS r ON t.id = r.parent_id WHERE r.parent_id  IS NULL' : '') . ' ORDER BY id ASC;';
     $query = new \yii\db\Query();
     $command = $query->createCommand()->setSql($sql);
     if ($placeholders) {
         foreach ($children_ids as $i => $children) {
             $command->bindValue($i + 1, $children);
         }
     }
     $rubric = $command->queryAll();
     //        var_export($sql); die();
     return $rubric;
 }
示例#3
0
 public function actionEmpinforeport()
 {
     $employee_data = $selected_list = array();
     if (!empty(Yii::$app->request->post('e_info'))) {
         $selected_list = Yii::$app->request->post('e_info');
         $employee_d = new \yii\db\Query();
         $employee_d->select('*')->from('emp_master emp')->join('join', 'emp_info e_info', 'e_info.emp_info_id = emp.emp_master_emp_info_id')->join('join', 'emp_department emp_dep', 'emp_dep.emp_department_id = emp.emp_master_department_id ')->join('join', 'emp_designation emp_des', 'emp_des.emp_designation_id = emp.emp_master_designation_id ')->join('join', 'emp_category emp_cat', 'emp_cat.emp_category_id = emp. 	emp_master_category_id')->leftJoin('emp_address eadd', 'eadd.emp_address_id = emp.emp_master_emp_address_id')->where(['emp.is_status' => 0])->andFilterWhere(['emp.emp_master_department_id' => Yii::$app->request->post('department')])->andFilterWhere(['emp.emp_master_designation_id' => Yii::$app->request->post('designation')])->andFilterWhere(['emp.emp_master_emp_address_id' => Yii::$app->request->post('city')])->andFilterWhere(['emp.emp_master_category_id' => Yii::$app->request->post('category')])->andFilterWhere(['e_info.emp_gender' => Yii::$app->request->post('gender')]);
         $command = $employee_d->createCommand();
         $employee_data = $command->queryAll();
         Yii::$app->session->set('data["empData"]', $employee_data);
         Yii::$app->session->set('data["selection"]', $selected_list);
         if (empty($employee_data)) {
             \Yii::$app->getSession()->setFlash('emperror', "<i class='fa fa-exclamation-triangle'></i> <b>" . Yii::t('report', 'No Record Found For This Criteria.') . "</b>");
             return $this->redirect(['empinforeport']);
         }
         return $this->render('emp_info_report', ['employee_data' => $employee_data, 'selected_list' => $selected_list]);
     } else {
         if (Yii::$app->request->get('exportExcel')) {
             $file = $this->renderPartial('emp_info_report_excel', array('employee_data' => Yii::$app->session->get('data["empData"]'), 'selected_list' => Yii::$app->session->get('data["selection"]')));
             $fileName = "Employee_info_report" . date('YmdHis') . '.xls';
             $options = ['mimeType' => 'application/vnd.ms-excel'];
             return Yii::$app->excel->exportExcel($file, $fileName, $options);
         } else {
             if (Yii::$app->request->get('exportPDF')) {
                 $html = $this->renderPartial('emp_info_report_pdf', array('employee_data' => Yii::$app->session->get('data["empData"]'), 'selected_list' => Yii::$app->session->get('data["selection"]')));
                 ob_clean();
                 return Yii::$app->pdf->exportData('Employee Info Report', 'Employee_info_report', $html);
             }
         }
     }
     return $this->render('emp_report_view', ['selected_list' => $selected_list]);
 }
示例#4
0
 public function actionSortPosts($sort_id)
 {
     $query = new \yii\db\Query();
     $query->select('posts.*, user_name, category_name')->from('posts')->leftJoin('users', ' posts.post_author = users.user_id')->innerJoin('posts_category', ' posts.post_category = posts_category.category_id')->WHERE("posts_category.category_id=" . $sort_id);
     $command = $query->createCommand();
     $sort_posts = $command->queryAll();
     return $this->render('index', ['posts' => $sort_posts, 'posts_category' => $this->getPostsCategory()]);
 }
 /**
  * Displays a single ReportClassified model.
  * @param integer $id
  * @return mixed
  */
 public function actionView($id)
 {
     $queryReport = new \yii\db\Query();
     $queryReport->select(['report_classified.id', 'report_classified.message', 'report_classified.email_reporter', 'report_classified.create_at', 'report_classified.update_at', 'report_classified.checked', 'report_classified.type', 'report_classified.classified_id', 'subject_report.subject'])->from('report_classified')->join('JOIN', 'subject_report', 'subject_report.id = report_classified.subject_id')->where(['report_classified.id' => $id])->all();
     $commandReport = $queryReport->createCommand();
     $dataReport = $commandReport->queryAll();
     return $this->render('view', ['dataReport' => $dataReport]);
 }
示例#6
0
 public function actionCustomers()
 {
     $query = new \yii\db\Query();
     $query->select('*')->from('customers')->limit(10);
     $query->createCommand();
     $dataProvider = new ActiveDataProvider(['query' => $query, 'pagination' => false]);
     return $this->renderPartial('latest-customers', ['dataProvider' => $dataProvider]);
 }
 /**
  * Displays a single Classified model.
  * @param integer $id
  * @return mixed
  */
 public function actionView($id)
 {
     // $modelReport = new \common\models\ClassifiedReport();
     $queryView = new \yii\db\Query();
     $queryView->select(['classified.id', 'classified.title', 'classified.description', 'main_category.main_category', 'category.category', 'country.country', 'region.region', 'city.city', 'classified.price', 'classified.create_at', 'classified.update_at', 'classified.user_id', 'classified.is_status', 'classified.type'])->from('classified')->join('JOIN', 'main_category', 'main_category.id = classified.main_category_id')->join('JOIN', 'category', 'category.id = classified.category_id')->join('JOIN', 'country', 'country.id = classified.country_id')->join('JOIN', 'region', 'region.id = classified.region_id')->join('JOIN', 'city', 'city.id = classified.city_id')->where(['classified.id' => $id])->all();
     $commandView = $queryView->createCommand();
     $dataView = $commandView->queryAll();
     return $this->render('view', ['dataView' => $dataView]);
 }
示例#8
0
 public function actionContact($id)
 {
     $modelCover = new Profile();
     $modelCover = $this->findModel($id);
     //query model
     $query = new \yii\db\Query();
     $query->select(['profile.name', 'profile.image_profile', 'profile.public_email', 'profile.phone_number', 'profile.gender', 'profile.facebook_url', 'profile.twitter_url', 'profile.instagram_url', 'city.city', 'region.region', 'country.country', 'user.created_at', 'user.id'])->from('profile')->join('JOIN', 'user', 'user.id = profile.user_id')->join('JOIN', 'city', 'city.id = profile.city_id')->join('JOIN', 'region', 'region.id = profile.region_id')->join('JOIN', 'country', 'country.id = profile.country_id')->where(['user_id' => $id])->all();
     $command = $query->createCommand();
     $data = $command->queryAll();
     return $this->render('contact', ['modelCover' => $modelCover, 'data' => $data]);
 }
示例#9
0
 public function sum($type, $date_from, $date_to)
 {
     //$date_from = "01-01-$yaer 00:00:00";
     //$date_to = "31-12-$yaer 23:59:59";
     $query = new \yii\db\Query();
     $query->select("sum(`leadsum`) AS lead,{{%transactions}}.type,{{%transactions}}.valuedate")->from('{{%transactions}}');
     $query->join = [['LEFT JOIN', '{{%accounts}}', '{{%accounts}}.id=account_id']];
     $query->groupBy = "{{%accounts}}.type";
     $query->where("{{%accounts}}.type = :type");
     $query->andWhere("valuedate>=:date_from");
     $query->andWhere("valuedate<=:date_to");
     $query->params([':date_from' => $date_from, ':date_to' => $date_to, ':type' => $type]);
     $command = $query->createCommand();
     return $command->queryScalar();
 }
示例#10
0
 public function actionStuinforeport()
 {
     $student_data = $selected_list = [];
     $model = new StuMaster();
     $info = new StuInfo();
     if ($model->load(Yii::$app->request->post()) && $info->load(Yii::$app->request->post())) {
         if (Yii::$app->request->isAjax) {
             \Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
             return ActiveForm::validateMultiple([$model, $info]);
         }
         $selected_list = $_POST['s_info'];
         $query1 = new \yii\db\Query();
         $query1->select('*')->from('stu_master stu')->join('join', 'stu_info s_info', 's_info.stu_info_id = stu.stu_master_stu_info_id')->join('join', 'stu_address add', 'add.stu_address_id = stu.stu_master_stu_address_id')->where(['stu.is_status' => 0])->andFilterWhere(['stu.stu_master_course_id' => $model->stu_master_course_id])->andFilterWhere(['stu.stu_master_batch_id' => $model->report_batch_id])->andFilterWhere(['stu.stu_master_section_id' => $model->report_section_id])->andFilterWhere(['add.stu_cadd_city' => $model->report_city])->andFilterWhere(['s_info.stu_gender' => $info->stu_gender]);
         $command = $query1->createCommand();
         $student_data = $command->queryAll();
         Yii::$app->session->set('data["stuData"]', $student_data);
         Yii::$app->session->set('data["selection"]', $selected_list);
         if (empty($student_data)) {
             \Yii::$app->getSession()->setFlash('studerror', "<i class='fa fa-exclamation-triangle'></i> <b> " . Yii::t('report', 'No Record Found For This Criteria.') . "</b>");
             return $this->redirect(['stuinforeport']);
         }
         return $this->render('stu_info_report', ['student_data' => $student_data, 'selected_list' => $selected_list]);
     } else {
         if (Yii::$app->request->get('exportExcel')) {
             $file = $this->renderPartial('stu_info_report_excel', array('student_data' => Yii::$app->session->get('data["stuData"]'), 'selected_list' => Yii::$app->session->get('data["selection"]')));
             $fileName = "Employee_info_report" . date('YmdHis') . '.xls';
             $options = ['mimeType' => 'application/vnd.ms-excel'];
             return Yii::$app->excel->exportExcel($file, $fileName, $options);
         } else {
             if (Yii::$app->request->get('exportPDF')) {
                 $html = $this->renderPartial('stu_info_report_pdf', array('student_data' => Yii::$app->session->get('data["stuData"]'), 'selected_list' => Yii::$app->session->get('data["selection"]')));
                 ob_clean();
                 return Yii::$app->pdf->exportData('Employee Info Report', 'Employee_info_report', $html);
             }
         }
     }
     return $this->render('stu_report_view', ['model' => $model, 'info' => $info, 'selected_list' => $selected_list]);
 }
示例#11
0
 public function _getStatusPerson()
 {
     $persons = \app\models\PersTasks::find()->where(['TASK_ID' => $this->ID, 'DEL_TRACT_ID' => 0])->all();
     if ($persons) {
         $list = '';
         foreach ($persons as $person) {
             $query = new \yii\db\Query();
             $query->select('*')->from('STIGIT.V_F_PERS')->where('TN = \'' . $person->TN . '\'');
             $command = $query->createCommand();
             $data = $command->queryOne();
             //$list .= '<nobr><a href="'.Url::to(['user', 'id'=>$person->TN]).'">'.$data['FAM'].' '.mb_substr($data['IMJ'], 0, 1, 'UTF-8').'. '.mb_substr($data['OTCH'], 0, 1, 'UTF-8').'.</a></nobr><br>';
             //get current state
             $pers_tasks = \app\models\PersTasks::find()->where(['TASK_ID' => $this->ID, 'TN' => $person->TN, 'DEL_TRACT_ID' => 0])->one();
             $task_state = \app\models\TaskStates::find()->where(['IS_CURRENT' => 1, 'PERS_TASKS_ID' => $pers_tasks->ID, 'TASK_ID' => $this->ID])->one();
             if ($task_state) {
                 $state = $task_state->getState_name_state_colour_without_text();
                 $state_date = $task_state->getStateDate();
             } else {
                 $state = '';
                 $state_date = '';
             }
             $list .= '<nobr>' . $state . '&nbsp;<a href="' . Url::to(['user', 'id' => $person->TN]) . '">' . $data['FIO'] . '</a></nobr><br>';
         }
         return $list;
     } else {
         $podr = \app\models\PodrTasks::find()->where(['TASK_ID' => $this->ID])->all();
         if ($podr) {
             $list = '';
             foreach ($podr as $task) {
                 $query = new \yii\db\Query();
                 $query->select('*')->from('STIGIT.V_F_PODR')->where('KODZIFR = \'' . trim($task->KODZIFR) . '\'');
                 $command = $query->createCommand();
                 $data = $command->queryOne();
                 if (isset($data['NAIMPODR'])) {
                     $list .= $data['NAIMPODR'] . "<br>";
                 }
             }
             return $list;
         }
     }
 }
示例#12
0
        if ($data) {
            $task_confirms_list .= '{value: ' . $data['code'] . ', label: \'' . $data['name'] . '\'},';
            $chk_task_confirms .= '$("#agreed-podr-check-list-update").find("#checkbox_' . $data['code'] . '").prop("checked", true);';
        }
    }
} else {
    $task_confirms_list = '';
    $chk_task_confirms = '';
}
if ($task_docs_recvrs) {
    $task_docs_recvrs_list = '';
    $chk_task_docs_recvrs = '';
    foreach ($task_docs_recvrs as $podr) {
        $query = new \yii\db\Query();
        $query->select('NAIMPODR AS name, KODPODR AS id, KODRODIT as parent, KODZIFR as code')->from('STIGIT.V_F_PODR')->where('KODZIFR = \'' . trim($podr->KODZIFR) . '\'');
        $command = $query->createCommand();
        $data = $command->queryOne();
        if ($data) {
            $task_docs_recvrs_list .= '{value: ' . $data['code'] . ', label: \'' . $data['name'] . '\'},';
            $chk_task_docs_recvrs .= '$("#transmitted-podr-check-list-update").find("#checkbox_' . $data['code'] . '").prop("checked", true);';
        }
    }
} else {
    $task_docs_recvrs_list = '';
    $chk_task_docs_recvrs = '';
}
echo $this->registerJs("\r\n\t\t\t\tfunction _selectPodrUpdate() {\r\n\t\t\t\t\tvar selected = [];\r\n\t\t\t\t\tvar selected_values = {};\r\n\t\t\t\t\t\$('#podr-check-list-update input:checked').each(function() {\r\n\t\t\t\t\t    selected.push({value: \$(this).attr('value'), label:\$(this).attr('data-title')});\r\n\t\t\t\t\t    selected_values[\$(this).attr('value')] = \$(this).attr('data-title');\r\n\t\t\t\t\t});\r\n\t\t\t\t\t\r\n\t\t\t\t\t\$('#tasks-podr_list').tokenfield('setTokens', selected);\r\n\t\t\t        \$('#podr-select-modal-update').modal('hide');\r\n\r\n\t\t\t        //create persons tree\r\n\t\t\t        \$.ajax({\r\n\t\t\t        \ttype: \"POST\",\r\n\t\t\t        \tdataType: 'json',\r\n\t\t\t        \turl: \"index.php?r=site/getpersons\",\r\n\t\t\t        \tdata: \"selected_podr=\"+JSON.stringify(selected_values),\r\n\t\t\t        \tsuccess: function(data,status){\r\n\t\t\t        \t\t\$('#persons-check-list-update').html(data);\r\n\t\t\t        \t\t\$('#persons-check-list-update').tree({checkbox: false});\r\n\t\t\t        \t\t" . $chk_pers_list . "\r\n\t\t\t        \t}\r\n\t\t\t        });\r\n\t\t\t    }\r\n\r\n\r\n\t\t\t\t\$('#issue-cancel-update-button, #close-label-issue-update').click(function () {\r\n\t\t\t\t   \tbootbox.confirm({size: 'small', message: \"Вы уверены, что хотите закрыть форму редактирования задания?\", callback: function(result) {\r\n\t\t\t\t\t  \tif(result == true) {\r\n\t\t\t\t\t  \t\t\$('#issue-update-modal').modal('hide');\r\n\t\t\t\t\t  \t}\t\r\n\t\t\t\t\t}}); \r\n\t\t\t\t});\r\n\r\n\t\t\t\t\$('#add-podr-button-update').click(function(){\r\n\t\t\t\t\t\$(\"#podr-select-modal-update\").modal();\r\n\t\t\t\t});\t\t\r\n\t\t\t\t\$('#podr-check-list-update').tree({checkbox: false});\r\n\r\n\t\t\t\t\$(\"#podr-check-list-update\").find(\".checkbox-podr-link\").click(function(){\r\n\t\t\t    \tvar link_id = \$(this).attr('data-id');\r\n\t\t\t    \t\$(\"#checkbox_\"+link_id).prop(\"checked\", true);\r\n\t\t\t    \t_selectPodrUpdate();\r\n\t\t\t    \treturn false;\r\n\t\t\t    });\r\n\t\t\t\t\r\n\t\t\t\t\$('#tasks-podr_list').tokenfield();\r\n\t\t\t\t\$('#tasks-podr_list').tokenfield('setTokens', [" . substr_replace($podr_tasks_list, "", -1) . "]);\r\n\t\t\t\t//set checked in modal podr window\r\n\t\t\t\t" . $chk_podr_list . "\r\n\r\n\t\t    \t\$('#tasks-podr_list').on('tokenfield:removetoken', function (e) {\r\n\t\t    \t\t\$('#tasks-persons_list').val('');\r\n\t\t    \t\t\$('#tasks-persons_list').tokenfield('setTokens', []);\r\n\t\t    \t\t\$(\"#persons-check-list-update\").find('input[type=checkbox]').removeAttr('checked');\r\n\t\t    \t\t\$(\"#persons-check-list-update\").html('<div class=\"alert alert-warning\" role=\"alert\">Пожалуйста, сначала укажите подразделения</div>');\r\n\t\t        \t\r\n\t\t    \t});\r\n\t\t\t\t\$('#tasks-podr_list').on('tokenfield:removedtoken', function (e) {\r\n\t\t\t\t\t\$(\"#podr-check-list-update\").find('#checkbox_'+e.attrs.value).removeAttr('checked');\r\n\t\t\t\t\t//_selectPodrUpdate();\r\n\t\t\t\t});\r\n\t\t\t\t\r\n\r\n\t\t\t\t\r\n\t\t\t\t\$(\"#add-persons-button-update\").click(function(){\r\n\t\t\t\t\t\$(\"#persons-select-modal-update\").modal();\r\n\t\t\t\t});\r\n\r\n\t\t\t\t\$('#tasks-persons_list').tokenfield();\r\n\t\t\t\t\$('#tasks-persons_list').tokenfield('setTokens', [" . substr_replace($pers_tasks_list, "", -1) . "]);\r\n\r\n\t\t\t\t\$('#tasks-persons_list').on('tokenfield:removedtoken', function (e) {\r\n\t\t\t\t\t\$(\"#persons-check-list-update\").find('#checkbox_'+e.attrs.value).removeAttr('checked');\r\n\t\t\t\t\t\r\n\t\t\t\t});\r\n\t\t\t\t\r\n\t\t\t\t\$('#podr-check-list-update').tree({checkbox: false});\r\n\t\t\t\tvar selected_values = {};\r\n\t\t\t\t\$('#podr-check-list-update input:checked').each(function() {\r\n\t\t\t\t    selected_values[\$(this).attr('value')] = \$(this).attr('data-title');\r\n\t\t\t\t});\r\n\t\t\t\tvar csrfToken = \$('meta[name=\"csrf-token\"]').attr(\"content\");\r\n\t\t\t    \$.ajax({\r\n\t\t        \ttype: \"POST\",\r\n\t\t        \tdataType: 'json',\r\n\t\t        \turl: \"index.php?r=site/getpersons\",\r\n\t\t        \tdata: \"selected_podr=\"+JSON.stringify(selected_values)+\"&_csrf=\"+csrfToken,\r\n\t\t        \tsuccess: function(data,status){\r\n\t\t        \t\t\$('#persons-check-list-update').html(data);\r\n\t\t        \t\t\$('#persons-check-list-update').tree({checkbox: false});\r\n\t\t        \t},\r\n\t\t        \tcomplete: function() {\r\n\t\t        \t\t" . $chk_pers_list . "\r\n\t\t        \t}\r\n\t\t\t    });\r\n\r\n\t\t\t\t\$('#select-persons-update-btn').click(function(){\r\n\t\t\t    \tvar selected = [];\r\n\t\t\t    \t\$('#persons-check-list-update input:checked').each(function() {\r\n\t\t\t\t\t    selected.push({value: \$(this).attr('value'), label:\$(this).attr('data-title')});\r\n\t\t\t\t\t});\r\n\t\t\t\t\t\$('#tasks-persons_list').tokenfield('setTokens', selected);\r\n\t\t\t        \$('#persons-select-modal-update').modal('hide');\r\n\t\t\t    });\r\n\t\t\t\t\r\n\r\n\t\t\t\t//for agreed\r\n\t\t\t\tfunction _selectPodrUpdateAgreed() {\r\n\t\t\t\t\tvar selected = [];\r\n\t\t\t\t\tvar selected_values = {};\r\n\t\t\t\t\t\$('#agreed-podr-check-list-update input:checked').each(function() {\r\n\t\t\t\t\t    selected.push({value: \$(this).attr('value'), label:\$(this).attr('data-title')});\r\n\t\t\t\t\t    selected_values[\$(this).attr('value')] = \$(this).attr('data-title');\r\n\t\t\t\t\t});\r\n\t\t\t\t\t\r\n\t\t\t\t\t\$('#tasks-agreed_podr_list').tokenfield('setTokens', selected);\r\n\t\t\t        \$('#agreed-podr-select-modal-update').modal('hide');\r\n\t\t\t    }\r\n\r\n\t\t\t\t\$('#add-agreed-podr-button-update').click(function(){\r\n\t\t\t\t\t\$(\"#agreed-podr-select-modal-update\").modal();\r\n\t\t\t\t});\t\r\n\t\t\t\t\$('#agreed-podr-check-list-update').tree({checkbox: false});\r\n\r\n\t\t\t\t\$(\"#agreed-podr-check-list-update\").find(\".checkbox-podr-link-agreed\").click(function(){\r\n\t\t\t    \tvar link_id = \$(this).attr('data-id');\r\n\t\t\t    \t\r\n\t\t\t    \t\$(\"#agreed-podr-check-list-update\").find(\"#checkbox_\"+link_id).prop(\"checked\", true);\r\n\t\t\t    \t_selectPodrUpdateAgreed();\r\n\t\t\t    \treturn false;\r\n\t\t\t    });\r\n\t\t\t\t\$('#tasks-agreed_podr_list').tokenfield();\r\n\t\t\t\t\$('#tasks-agreed_podr_list').tokenfield('setTokens', [" . substr_replace($task_confirms_list, "", -1) . "]);\r\n\t\t\t\t//set checked in modal podr window\r\n\t\t\t\t" . $chk_task_confirms . "\r\n\r\n\t\t\t\t\$('#tasks-agreed_podr_list').on('tokenfield:removedtoken', function (e) {\r\n\t\t\t\t\t\$(\"#agreed-podr-check-list-update\").find('#checkbox_'+e.attrs.value).removeAttr('checked');\r\n\t\t\t\t\t_selectPodrUpdateAgreed();\r\n\t\t\t\t});\r\n\r\n\t\t\t\t//for transmitted\r\n\t\t\t\tfunction _selectPodrUpdateTransmitted() {\r\n\t\t\t\t\tvar selected = [];\r\n\t\t\t\t\tvar selected_values = {};\r\n\t\t\t\t\t\$('#transmitted-podr-check-list-update input:checked').each(function() {\r\n\t\t\t\t\t    selected.push({value: \$(this).attr('value'), label:\$(this).attr('data-title')});\r\n\t\t\t\t\t    selected_values[\$(this).attr('value')] = \$(this).attr('data-title');\r\n\t\t\t\t\t});\r\n\t\t\t\t\t\r\n\t\t\t\t\t\$('#tasks-transmitted_podr_list').tokenfield('setTokens', selected);\r\n\t\t\t        \$('#transmitted-podr-select-modal-update').modal('hide');\r\n\t\t\t    }\r\n\r\n\t\t\t\t\$('#add-transmitted-podr-button-update').click(function(){\r\n\t\t\t\t\t\$(\"#transmitted-podr-select-modal-update\").modal();\r\n\t\t\t\t});\t\r\n\t\t\t\t\$('#transmitted-podr-check-list-update').tree({checkbox: false});\r\n\r\n\t\t\t\t\$(\"#transmitted-podr-check-list-update\").find(\".checkbox-podr-link-transmitted\").click(function(){\r\n\t\t\t    \tvar link_id = \$(this).attr('data-id');\r\n\t\t\t    \t\r\n\t\t\t    \t\$(\"#transmitted-podr-check-list-update\").find(\"#checkbox_\"+link_id).prop(\"checked\", true);\r\n\t\t\t    \t_selectPodrUpdateTransmitted();\r\n\t\t\t    \treturn false;\r\n\t\t\t    });\r\n\t\t\t\t\$('#tasks-transmitted_podr_list').tokenfield();\r\n\t\t\t\t\$('#tasks-transmitted_podr_list').tokenfield('setTokens', [" . substr_replace($task_docs_recvrs_list, "", -1) . "]);\r\n\t\t\t\t//set checked in modal podr window\r\n\t\t\t\t" . $chk_task_docs_recvrs . "\r\n\r\n\t\t\t\t\$('#tasks-transmitted_podr_list').on('tokenfield:removedtoken', function (e) {\r\n\t\t\t\t\t\$(\"#transmitted-podr-check-list-update\").find('#checkbox_'+e.attrs.value).removeAttr('checked');\r\n\t\t\t\t\t_selectPodrUpdateTransmitted();\r\n\t\t\t\t});\r\n\r\n\t\t\t", View::POS_END, 'modal_js');
?>

<div class="modal fade" id="podr-select-modal-update" role="dialog" aria-labelledby="podr-select-modal-label">
	<div class="modal-dialog" role="document">
示例#13
0
 public function search($params)
 {
     $query = Tasks::find();
     //формируем провайдер
     $dataProvider = new ActiveDataProvider(['query' => $query]);
     //задание сортировки по умолчанию
     $dataProvider->sort->attributes = ['TASKS.ID' => ['asc' => ['TASKS.ID' => SORT_ASC], 'desc' => ['TASKS.ID' => SORT_DESC]]];
     $dataProvider->sort->defaultOrder = ['TASKS.ID' => SORT_DESC];
     //overdue issues filter
     if (isset($params['overdue']) && $params['overdue'] == 1) {
         $tasks = \app\models\Tasks::find()->all();
         $list = [];
         foreach ($tasks as $task) {
             $id = $task->ID;
             $persons = \app\models\PersTasks::find()->where(['TASK_ID' => $id, 'DEL_TRACT_ID' => 0])->all();
             if ($persons) {
                 $states_array = [];
                 foreach ($persons as $person) {
                     $pers_tasks = \app\models\PersTasks::find()->where(['TASK_ID' => $id, 'TN' => $person->TN, 'DEL_TRACT_ID' => 0])->one();
                     $task_state = \app\models\TaskStates::find()->where(['IS_CURRENT' => 1, 'PERS_TASKS_ID' => $pers_tasks->ID, 'TASK_ID' => $id])->one();
                     if ($task_state) {
                         $states_array[] = $task_state->STATE_ID;
                     } else {
                         $list[] = $id;
                     }
                 }
                 if (!empty($states_array)) {
                     $min_state = min($states_array);
                     $state = \app\models\States::findOne($min_state);
                 }
             }
             if (isset($state)) {
                 if ($state->ID != 7 || $state->ID != 9) {
                     $list[] = $id;
                 }
             }
         }
         $list = array_unique($list);
         $query->andFilterWhere(['TASKS.ID' => $list]);
         $now = date("Y-m-d");
         $query->andFilterWhere(['<', 'TASKS.DEADLINE', new \yii\db\Expression("to_date('" . $now . "','{$this->dateFormat}')")]);
         $query->joinWith('perstasks');
         $query->andFilterWhere(['PERS_TASKS.TN' => \Yii::$app->user->id]);
     }
     //own issues filter
     if (isset($params['own_issues']) && $params['own_issues'] == 1) {
         $query->joinWith('perstasks');
         $query->andFilterWhere(['PERS_TASKS.TN' => \Yii::$app->user->id]);
     }
     if (isset($params['for_person']) && $params['for_person'] != '') {
         $query->joinWith('perstasks');
         $query->andFilterWhere(['PERS_TASKS.TN' => $params['for_person']]);
     }
     if (isset($params['for_podr']) && $params['for_podr'] != '') {
         $query->joinWith('podrtasks');
         $query->andFilterWhere(['PODR_TASKS.KODZIFR' => $params['for_podr']]);
     }
     //podr issues filter
     if (isset($params['podr_issues']) && $params['podr_issues'] == 1) {
         //check permission
         $permissions_podr_tasks_my = \app\models\Permissions::find()->where('(SUBJECT_TYPE = :subject_type and SUBJECT_ID = :user_id and DEL_TRACT_ID = :del_tract and PERM_LEVEL != :perm_level and ACTION_ID = :action) or
             (SUBJECT_TYPE = :subject_type_dolg and SUBJECT_ID = :id_dolg and DEL_TRACT_ID = :del_tract and PERM_LEVEL != :perm_level and ACTION_ID = :action)', ['subject_type_dolg' => 1, 'id_dolg' => \Yii::$app->session->get('user.user_iddolg'), 'action' => 21, 'subject_type' => 2, 'user_id' => \Yii::$app->user->id, 'del_tract' => 0, 'perm_level' => 0])->one();
         if ($permissions_podr_tasks_my) {
             if ($permissions_podr_tasks_my->PERM_LEVEL == 1 || $permissions_podr_tasks_my->PERM_LEVEL == 2) {
                 //get podr id of this user
                 $query_dao = new \yii\db\Query();
                 $query_dao->select('*')->from('STIGIT.V_F_PERS')->where('TN = \'' . \Yii::$app->user->id . '\'');
                 $command = $query_dao->createCommand();
                 $data = $command->queryOne();
                 //вот тут решить что означает выданные моему подразделению
                 $query->joinWith('podrtasks');
                 $query->andFilterWhere(['PODR_TASKS.KODZIFR' => trim($data['KODZIFR'])]);
             } else {
                 throw new \yii\web\ForbiddenHttpException('У Вас нет прав на "Выданные любым задания"');
             }
         } else {
             throw new \yii\web\ForbiddenHttpException('У Вас нет прав на "Выданные любым задания"');
         }
     }
     //tasks my filter
     if (isset($params['tasks_my']) && $params['tasks_my'] == 1) {
         //check permission
         $permissions_podr_tasks_my = \app\models\Permissions::find()->where('(SUBJECT_TYPE = :subject_type and SUBJECT_ID = :user_id and DEL_TRACT_ID = :del_tract and PERM_LEVEL != :perm_level and ACTION_ID = :action) or
         (SUBJECT_TYPE = :subject_type_dolg and SUBJECT_ID = :id_dolg and DEL_TRACT_ID = :del_tract and PERM_LEVEL != :perm_level and ACTION_ID = :action)', ['subject_type_dolg' => 1, 'id_dolg' => \Yii::$app->session->get('user.user_iddolg'), 'action' => 23, 'subject_type' => 2, 'user_id' => \Yii::$app->user->id, 'del_tract' => 0, 'perm_level' => 0])->one();
         if ($permissions_podr_tasks_my) {
             if ($permissions_podr_tasks_my->PERM_LEVEL == 1 || $permissions_podr_tasks_my->PERM_LEVEL == 2) {
                 //get all current user transactions
                 $transactions = \app\models\Transactions::find()->where(['TN' => \Yii::$app->user->id])->all();
                 if ($transactions) {
                     $transactions_array = [];
                     foreach ($transactions as $transaction) {
                         $transactions_array[] = $transaction->ID;
                     }
                     $query->andFilterWhere(['TRACT_ID' => $transactions_array]);
                 }
             } else {
                 throw new \yii\web\ForbiddenHttpException('У Вас нет прав на "Выданные лично задания"');
             }
         } else {
             throw new \yii\web\ForbiddenHttpException('У Вас нет прав на "Выданные лично задания"');
         }
     }
     if (!($this->load($params) && $this->validate())) {
         return $dataProvider;
     }
     //проверяем существует ли фильтр и добавляем его в запрос провайдера для каждого из полей фильтра
     if (!empty($this->states)) {
         $query->joinWith('taskstates');
         $query->andFilterWhere(['TASK_STATES.STATE_ID' => $this->states]);
     }
     if (!empty($this->podr_list)) {
         $podr_list = array_map('trim', explode(',', $this->podr_list));
         $query->joinWith('podrtasks');
         $query->andFilterWhere(['PODR_TASKS.KODZIFR' => $podr_list]);
     }
     if (!empty($this->agreed_podr_list)) {
         $agreed_podr_list = array_map('trim', explode(',', $this->agreed_podr_list));
         $query->joinWith('taskconfirms');
         $query->andFilterWhere(['TASK_CONFIRMS.KODZIFR' => $agreed_podr_list]);
     }
     if (!empty($this->persons_list)) {
         $persons_list = array_map('trim', explode(',', $this->persons_list));
         $query->joinWith('perstasks');
         $query->andFilterWhere(['PERS_TASKS.TN' => $persons_list]);
     }
     if (!empty($this->documentation)) {
         $query->joinWith('taskdocs');
         $query->andFilterWhere(['TASK_DOCS.DOC_CODE' => $this->documentation]);
     }
     if ($this->deadline_from != '' && $this->deadline_to != '') {
         $deadline_from = explode('-', $this->deadline_from);
         $deadline_from_formatted = $deadline_from[2] . '-' . $deadline_from[1] . '-' . $deadline_from[0];
         $deadline_to = explode('-', $this->deadline_to);
         $deadline_to_formatted = $deadline_to[2] . '-' . $deadline_to[1] . '-' . $deadline_to[0];
         $query->andFilterWhere(['>=', 'DEADLINE', new \yii\db\Expression("to_date('" . $deadline_from_formatted . "','{$this->dateFormat}')")])->andFilterWhere(['<=', 'DEADLINE', new \yii\db\Expression("to_date('" . $deadline_to_formatted . "','{$this->dateFormat}')")]);
     } else {
         if ($this->deadline_from != '' && $this->deadline_to == '') {
             $deadline_from = explode('-', $this->deadline_from);
             $deadline_from_formatted = $deadline_from[2] . '-' . $deadline_from[1] . '-' . $deadline_from[0];
             $query->andFilterWhere(['>=', 'DEADLINE', new \yii\db\Expression("to_date('" . $deadline_from_formatted . "','{$this->dateFormat}')")]);
         } else {
             if ($this->deadline_from == '' && $this->deadline_to != '') {
                 $deadline_to = explode('-', $this->deadline_to);
                 $deadline_to_formatted = $deadline_to[2] . '-' . $deadline_to[1] . '-' . $deadline_to[0];
                 $query->andFilterWhere(['<=', 'DEADLINE', new \yii\db\Expression("to_date('" . $deadline_to_formatted . "','{$this->dateFormat}')")]);
             }
         }
     }
     if ($this->task_type_date_3_from != '' && $this->task_type_date_3_to != '') {
         $query->joinWith('datetype3');
         $task_type_date_3_from = explode('-', $this->task_type_date_3_from);
         $task_type_date_3_from_formatted = $task_type_date_3_from[2] . '-' . $task_type_date_3_from[1] . '-' . $task_type_date_3_from[0];
         $task_type_date_3_to = explode('-', $this->task_type_date_3_to);
         $task_type_date_3_to_formatted = $task_type_date_3_to[2] . '-' . $task_type_date_3_to[1] . '-' . $task_type_date_3_to[0];
         $query->andFilterWhere(['>=', 'TASK_DATES.TASK_TYPE_DATE', new \yii\db\Expression("to_date('" . $task_type_date_3_from_formatted . "','{$this->dateFormat}')")])->andFilterWhere(['<=', 'TASK_DATES.TASK_TYPE_DATE', new \yii\db\Expression("to_date('" . $task_type_date_3_to_formatted . "','{$this->dateFormat}')")]);
     } else {
         if ($this->task_type_date_3_from != '' && $this->task_type_date_3_to == '') {
             $query->joinWith('datetype3');
             $task_type_date_3_from = explode('-', $this->task_type_date_3_from);
             $task_type_date_3_from_formatted = $task_type_date_3_from[2] . '-' . $task_type_date_3_from[1] . '-' . $task_type_date_3_from[0];
             $query->andFilterWhere(['>=', 'TASK_DATES.TASK_TYPE_DATE', new \yii\db\Expression("to_date('" . $task_type_date_3_from_formatted . "','{$this->dateFormat}')")]);
         } else {
             if ($this->task_type_date_3_from == '' && $this->task_type_date_3_to != '') {
                 $query->joinWith('datetype3');
                 $task_type_date_3_to = explode('-', $this->task_type_date_3_to);
                 $task_type_date_3_to_formatted = $task_type_date_3_to[2] . '-' . $task_type_date_3_to[1] . '-' . $task_type_date_3_to[0];
                 $query->andFilterWhere(['<=', 'TASK_DATES.TASK_TYPE_DATE', new \yii\db\Expression("to_date('" . $task_type_date_3_to_formatted . "','{$this->dateFormat}')")]);
             }
         }
     }
     if ($this->task_type_date_1_from != '' && $this->task_type_date_1_to != '') {
         $query->joinWith('datetype1');
         $task_type_date_1_from = explode('-', $this->task_type_date_1_from);
         $task_type_date_1_from_formatted = $task_type_date_1_from[2] . '-' . $task_type_date_1_from[1] . '-' . $task_type_date_1_from[0];
         $task_type_date_1_to = explode('-', $this->task_type_date_1_to);
         $task_type_date_1_to_formatted = $task_type_date_1_to[2] . '-' . $task_type_date_1_to[1] . '-' . $task_type_date_1_to[0];
         $query->andFilterWhere(['>=', 'TASK_DATES.TASK_TYPE_DATE', new \yii\db\Expression("to_date('" . $task_type_date_1_from_formatted . "','{$this->dateFormat}')")])->andFilterWhere(['<=', 'TASK_DATES.TASK_TYPE_DATE', new \yii\db\Expression("to_date('" . $task_type_date_1_to_formatted . "','{$this->dateFormat}')")]);
     } else {
         if ($this->task_type_date_1_from != '' && $this->task_type_date_1_to == '') {
             $query->joinWith('datetype1');
             $task_type_date_1_from = explode('-', $this->task_type_date_1_from);
             $task_type_date_1_from_formatted = $task_type_date_1_from[2] . '-' . $task_type_date_1_from[1] . '-' . $task_type_date_1_from[0];
             $query->andFilterWhere(['>=', 'TASK_DATES.TASK_TYPE_DATE', new \yii\db\Expression("to_date('" . $task_type_date_1_from_formatted . "','{$this->dateFormat}')")]);
         } else {
             if ($this->task_type_date_1_from == '' && $this->task_type_date_1_to != '') {
                 $query->joinWith('datetype1');
                 $task_type_date_1_to = explode('-', $this->task_type_date_1_to);
                 $task_type_date_1_to_formatted = $task_type_date_1_to[2] . '-' . $task_type_date_1_to[1] . '-' . $task_type_date_1_to[0];
                 $query->andFilterWhere(['<=', 'TASK_DATES.TASK_TYPE_DATE', new \yii\db\Expression("to_date('" . $task_type_date_1_to_formatted . "','{$this->dateFormat}')")]);
             }
         }
     }
     if ($this->task_type_date_4_from != '' && $this->task_type_date_4_to != '') {
         $query->joinWith('datetype4');
         $task_type_date_4_from = explode('-', $this->task_type_date_4_from);
         $task_type_date_4_from_formatted = $task_type_date_4_from[2] . '-' . $task_type_date_4_from[1] . '-' . $task_type_date_4_from[0];
         $task_type_date_4_to = explode('-', $this->task_type_date_4_to);
         $task_type_date_4_to_formatted = $task_type_date_4_to[2] . '-' . $task_type_date_4_to[1] . '-' . $task_type_date_4_to[0];
         $query->andFilterWhere(['>=', 'TASK_DATES.TASK_TYPE_DATE', new \yii\db\Expression("to_date('" . $task_type_date_4_from_formatted . "','{$this->dateFormat}')")])->andFilterWhere(['<=', 'TASK_DATES.TASK_TYPE_DATE', new \yii\db\Expression("to_date('" . $task_type_date_4_to_formatted . "','{$this->dateFormat}')")]);
     } else {
         if ($this->task_type_date_4_from != '' && $this->task_type_date_4_to == '') {
             $query->joinWith('datetype4');
             $task_type_date_4_from = explode('-', $this->task_type_date_4_from);
             $task_type_date_4_from_formatted = $task_type_date_4_from[2] . '-' . $task_type_date_4_from[1] . '-' . $task_type_date_4_from[0];
             $query->andFilterWhere(['>=', 'TASK_DATES.TASK_TYPE_DATE', new \yii\db\Expression("to_date('" . $task_type_date_4_from_formatted . "','{$this->dateFormat}')")]);
         } else {
             if ($this->task_type_date_4_from == '' && $this->task_type_date_4_to != '') {
                 $query->joinWith('datetype4');
                 $task_type_date_4_to = explode('-', $this->task_type_date_4_to);
                 $task_type_date_4_to_formatted = $task_type_date_4_to[2] . '-' . $task_type_date_4_to[1] . '-' . $task_type_date_4_to[0];
                 $query->andFilterWhere(['<=', 'TASK_DATES.TASK_TYPE_DATE', new \yii\db\Expression("to_date('" . $task_type_date_4_to_formatted . "','{$this->dateFormat}')")]);
             }
         }
     }
     if ($this->task_type_date_2_from != '' && $this->task_type_date_2_to != '') {
         $query->joinWith('datetype2');
         $task_type_date_2_from = explode('-', $this->task_type_date_2_from);
         $task_type_date_2_from_formatted = $task_type_date_2_from[2] . '-' . $task_type_date_2_from[1] . '-' . $task_type_date_2_from[0];
         $task_type_date_2_to = explode('-', $this->task_type_date_2_to);
         $task_type_date_2_to_formatted = $task_type_date_2_to[2] . '-' . $task_type_date_2_to[1] . '-' . $task_type_date_2_to[0];
         $query->andFilterWhere(['>=', 'TASK_DATES.TASK_TYPE_DATE', new \yii\db\Expression("to_date('" . $task_type_date_2_from_formatted . "','{$this->dateFormat}')")])->andFilterWhere(['<=', 'TASK_DATES.TASK_TYPE_DATE', new \yii\db\Expression("to_date('" . $task_type_date_2_to_formatted . "','{$this->dateFormat}')")]);
     } else {
         if ($this->task_type_date_2_from != '' && $this->task_type_date_2_to == '') {
             $query->joinWith('datetype2');
             $task_type_date_2_from = explode('-', $this->task_type_date_2_from);
             $task_type_date_2_from_formatted = $task_type_date_2_from[2] . '-' . $task_type_date_2_from[1] . '-' . $task_type_date_2_from[0];
             $query->andFilterWhere(['>=', 'TASK_DATES.TASK_TYPE_DATE', new \yii\db\Expression("to_date('" . $task_type_date_2_from_formatted . "','{$this->dateFormat}')")]);
         } else {
             if ($this->task_type_date_2_from == '' && $this->task_type_date_2_to != '') {
                 $query->joinWith('datetype2');
                 $task_type_date_2_to = explode('-', $this->task_type_date_2_to);
                 $task_type_date_2_to_formatted = $task_type_date_2_to[2] . '-' . $task_type_date_2_to[1] . '-' . $task_type_date_2_to[0];
                 $query->andFilterWhere(['<=', 'TASK_DATES.TASK_TYPE_DATE', new \yii\db\Expression("to_date('" . $task_type_date_2_to_formatted . "','{$this->dateFormat}')")]);
             }
         }
     }
     $query->andFilterWhere(['like', 'SOURCENUM', $this->SOURCENUM]);
     $query->andFilterWhere(['like', 'TASK_TEXT', $this->TASK_TEXT]);
     $query->andFilterWhere(['or like', 'PEOORDERNUM', $this->PEOORDERNUM]);
     $query->andFilterWhere(['or like', 'ORDERNUM', $this->ORDERNUM]);
     $query->andFilterWhere(['like', 'TASK_NUMBER', $this->TASK_NUMBER]);
     $query->andFilterWhere(['like', 'LOWER(DESIGNATION)', mb_strtolower($this->DESIGNATION, 'UTF-8')]);
     return $dataProvider;
 }
示例#14
0
 public function actionLogin()
 {
     $this->layout = 'empty';
     if (!\Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     $model = new LoginForm();
     if ($model->load(Yii::$app->request->post()) && $model->login()) {
         //записываем в таблицу TRANSACTIONS данные
         $transactions = new Transactions();
         $transactions->TN = new \yii\db\Expression('TO_NUMBER(' . \Yii::$app->user->id . ')');
         $transactions->TRACT_DATETIME = new \yii\db\Expression('SYSDATE');
         $transactions->USER_IP = $_SERVER['REMOTE_ADDR'];
         $transactions->insert();
         //заносим в сессию данные пользователя
         $query = new \yii\db\Query();
         $query->select('*')->from('STIGIT.V_DOLG_PODR')->innerJoin('STIGIT.V_F_SHRAS', 'STIGIT.V_DOLG_PODR.IDDOLG = STIGIT.V_F_SHRAS.IDDOLG ')->where('TN = \'' . \Yii::$app->user->id . '\'');
         $command = $query->createCommand();
         $user_dolg_podr_data = $command->queryAll();
         $user_dolg_podr_data_block = 'табельный номер: <b>' . \Yii::$app->user->id . '</b>';
         if ($user_dolg_podr_data) {
             $iddolg_array = [];
             $idpodr_array = [];
             foreach ($user_dolg_podr_data as $data_dolg_podr) {
                 if (!empty($data_dolg_podr['NAIMDOLG'])) {
                     if (!in_array($data_dolg_podr['IDDOLG'], $iddolg_array)) {
                         $user_dolg_podr_data_block .= ', должность <b>' . $data_dolg_podr['NAIMDOLG'] . '</b>';
                         $iddolg_array[] = $data_dolg_podr['IDDOLG'];
                         \Yii::$app->session->set('user.user_iddolg', $data_dolg_podr['IDDOLG']);
                     }
                 }
                 if (!empty($data_dolg_podr['KODPODR_M'])) {
                     if (!in_array($data_dolg_podr['KODPODR_M'], $idpodr_array)) {
                         //get podr
                         $query_kodzifr = new \yii\db\Query();
                         $query_kodzifr->select('NAIMPODR AS naimpodr, KODZIFR as kodzifr')->from('STIGIT.V_F_PODR')->where('KODPODR = \'' . $data_dolg_podr['KODPODR_M'] . '\'');
                         $command_kodzifr = $query_kodzifr->createCommand();
                         $naimpodr_data = $command_kodzifr->queryOne();
                         if ($naimpodr_data) {
                             $user_dolg_podr_data_block .= '<br>руководимое подразделение: <b>' . $naimpodr_data['naimpodr'] . '</b>';
                             \Yii::$app->session->set('user.user_boss_of', $naimpodr_data['kodzifr']);
                         }
                         $idpodr_array[] = $data_dolg_podr['KODPODR_M'];
                     }
                 }
             }
         }
         \Yii::$app->session->set('user.user_dolg_podr_data_block', $user_dolg_podr_data_block);
         return $this->goBack();
     } else {
         return $this->render('login', ['model' => $model]);
     }
 }
示例#15
0
 public function actionNikIbuList($q = null, $id = null)
 {
     \Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
     $out = ['results' => ['id' => '', 'text' => '']];
     if (!is_null($q)) {
         $query = new \yii\db\Query();
         $query->select('base.nik AS id, base.nik AS text')->from('base')->innerJoin('base_updatable', 'base.nik = base_updatable.nik')->andWhere(['base_updatable.status_keluarga' => 2, 'base.jenis_kelamin' => 2])->andWhere(['like', 'base.nik', $q])->limit(20);
         $command = $query->createCommand();
         $data = $command->queryAll();
         $out['results'] = array_values($data);
     } elseif ($id > 0) {
         $out['results'] = ['id' => $id, 'text' => BaseUpdatable::find($id)->nik];
     }
     return $out;
 }
示例#16
0
 /**
  * Detail
  * Status : Oke
  * @return mixed
  */
 public function actionDetailClassified($id)
 {
     $modelReport = new \common\models\ReportClassified();
     $query = new \yii\db\Query();
     $query->select(['classified.id', 'classified.title', 'classified.description', 'classified.price', 'classified.create_at', 'classified.user_id', 'classified.type', 'main_category.main_category', 'category.category', 'country.country', 'region.region', 'city.city'])->from('classified')->join('JOIN', 'category', 'category.id = classified.category_id')->join('JOIN', 'main_category', 'main_category.id = classified.main_category_id')->join('JOIN', 'country', 'country.id = classified.country_id')->join('JOIN', 'region', 'region.id = classified.region_id')->join('JOIN', 'city', 'city.id = classified.city_id')->where(['classified.id' => $id])->all();
     $command = $query->createCommand();
     $data = $command->queryAll();
     return $this->render('detail-classified', ['data' => $data, 'modelReport' => $modelReport]);
 }
 public function actionFind($q = null, $id = null)
 {
     \Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
     $out = ['results' => ['id' => '', 'nombre' => '']];
     if (!is_null($q)) {
         $query = new \yii\db\Query();
         $query->select('id, nombre')->from('persona')->where(['like', 'nombre', $q])->limit(10);
         $command = $query->createCommand();
         $data = $command->queryAll();
         $out['results'] = array_values($data);
     } elseif ($id > 0) {
         $out['results'] = ['id' => $id, 'nombre' => Persona::find($id)->nombre];
     }
     return $out;
 }
示例#18
0
 public function actionAjaxSearchAddons()
 {
     Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
     $result = ['more' => false, 'results' => []];
     $search = Yii::$app->request->get('search');
     if (!empty($search['term'])) {
         $query = new \yii\db\Query();
         $query->select('id, name as text, price, currency_id')->from(Addon::tableName())->andWhere(['like', 'name', $search['term']])->orderBy(['name' => SORT_ASC]);
         $command = $query->createCommand();
         $data = $command->queryAll();
         $data = array_map(function ($item) {
             $currency = Currency::findById($item['currency_id']);
             $price = $currency->format($item['price']);
             $item['text'] .= ' - ' . $price;
             return $item;
         }, $data);
         $result['results'] = array_values($data);
     }
     return $result;
 }
示例#19
0
                    echo $dataUserFree['name'];
                    ?>
</a></li>
                                                                <?php 
                }
            }
        } elseif ($row['type'] == 1) {
            // Query user, cek {username} user
            $query = new yii\db\Query();
            $query->select(['username', 'id'])->from('user')->where(['id' => $row['user_id']]);
            $command = $query->createCommand();
            $dataUserLogin = $command->queryAll();
            //query profile, cek {name} profile
            $queryProfile = new yii\db\Query();
            $queryProfile->select(['profile.user_id', 'profile.name'])->from('profile')->where(['user_id' => $row['user_id']]);
            $commandProfile = $queryProfile->createCommand();
            $dataProfile = $commandProfile->queryAll();
            foreach ($dataProfile as $dataProfile) {
                if ($dataProfile['name'] == null) {
                    foreach ($dataUserLogin as $dataUserLogin) {
                        if ($row['user_id'] == $dataUserLogin['id']) {
                            ?>
                                                                        <li><i class="fa fa-user"></i> Posted by : <a href="#"><?php 
                            echo $dataUserLogin['username'];
                            ?>
</a></li>
                                                                        <?php 
                        }
                    }
                } else {
                    if ($row['user_id'] == $dataProfile['user_id']) {
示例#20
0
文件: index.php 项目: deviardn/diadoo
<?php 
echo $this->render('_cover', ['modelCover' => $modelCover]);
?>

<div class="row">
    <div class="col-lg-12">
        <div class="panel">
            <div class="panel-heading text-center">

                <?php 
//query user
$queryUser = new \yii\db\Query();
$queryUser->select(['user.username'])->from('user')->where(['id' => $modelCover->user_id])->all();
$commandUser = $queryUser->createCommand();
$dataUser = $commandUser->queryAll();
?>
                
                <?php 
foreach ($data as $row) {
    ?>

                    <?php 
    if (empty($row['name'])) {
        ?>
                        <h2>Hello, I am <strong><?php 
        foreach ($dataUser as $dataUser) {
            echo $dataUser['username'];
        }
        ?>
</strong></h2>
示例#21
0
 public function actionSearch($q = null, $id = null, $type = 0)
 {
     \Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
     $out = ['results' => ['id' => '', 'text' => '']];
     if (!is_null($q)) {
         $query = new \yii\db\Query();
         $query->select('id, name AS text')->from('{{%accounts}}')->where('name LIKE "%' . $q . '%"')->andWhere(['type' => $type])->limit(20);
         $command = $query->createCommand();
         $data = $command->queryAll();
         $out['results'] = array_values($data);
     } elseif ($id > 0) {
         $out['results'] = ['id' => $id, 'text' => Accounts::find($id)->name];
     }
     return $out;
 }
示例#22
0
 public function actionExcel()
 {
     /*
         Проверка на доступ пользователя к странице
     */
     $permissions_report_task_search = \app\models\Permissions::find()->where('(SUBJECT_TYPE = :subject_type and SUBJECT_ID = :user_id and DEL_TRACT_ID = :del_tract and PERM_LEVEL != :perm_level and ACTION_ID = :action) or
                                     (SUBJECT_TYPE = :subject_type_dolg and SUBJECT_ID = :dolg_id and DEL_TRACT_ID = :del_tract and PERM_LEVEL != :perm_level and ACTION_ID = :action)', ['subject_type_dolg' => 1, 'dolg_id' => \Yii::$app->session->get('user.user_iddolg'), 'action' => 82, 'subject_type' => 2, 'user_id' => \Yii::$app->user->id, 'del_tract' => 0, 'perm_level' => 0])->one();
     if ($permissions_report_task_search) {
         /*
             Проверяем получены ли идентификаторы заданий для формирования отчета
         */
         if (Yii::$app->request->get('ids')) {
             $issues_ids = Yii::$app->request->get('ids');
             $issues_ids = explode(',', $issues_ids);
             /*
                 Делаем выборку необходимых заданий
             */
             $model = \app\models\Tasks::find()->where(['ID' => $issues_ids])->all();
             if ($model) {
                 // Создаем объект класса PHPExcel
                 $xls = new \PHPExcel();
                 // Устанавливаем индекс активного листа
                 $xls->setActiveSheetIndex(0);
                 // Получаем активный лист
                 $sheet = $xls->getActiveSheet();
                 // Подписываем лист
                 $sheet->setTitle('Отчет по отобранным заданиям');
                 $sheet->getStyle('A1')->getFont()->setBold(true);
                 // Вставляем текст в ячейку A1
                 $sheet->setCellValue("A1", 'Отчет по отобранным заданиям');
                 $sheet->getStyle('A1')->getFill()->setFillType(\PHPExcel_Style_Fill::FILL_SOLID);
                 $sheet->getStyle('A1')->getFill()->getStartColor()->setRGB('EEEEEE');
                 // Объединяем ячейки
                 $sheet->mergeCells('A1:I1');
                 // Выравнивание текста
                 $sheet->getStyle('A1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
                 // Формируем шапку
                 $sheet->setCellValue("A2", 'Заказ ПЭО');
                 $sheet->setCellValue("B2", 'Номер заказа');
                 $sheet->setCellValue("C2", 'Проект/Тема');
                 $sheet->setCellValue("D2", 'Обозначение');
                 $sheet->setCellValue("E2", 'Наименование');
                 $sheet->setCellValue("F2", 'Срок выполнения');
                 $sheet->setCellValue("G2", 'Статус');
                 $sheet->setCellValue("H2", 'Ф.И.О. и Дата');
                 $sheet->setCellValue("I2", 'Форматов А4');
                 /* устанавливаем ширину колонок и стили*/
                 $sheet->getStyle('A2:I2')->getFont()->setBold(true);
                 $sheet->getColumnDimension('A')->setAutoSize(true);
                 $sheet->getColumnDimension('B')->setAutoSize(true);
                 $sheet->getColumnDimension('C')->setAutoSize(true);
                 $sheet->getColumnDimension('D')->setAutoSize(true);
                 $sheet->getColumnDimension('E')->setAutoSize(true);
                 $sheet->getColumnDimension('F')->setAutoSize(true);
                 $sheet->getColumnDimension('G')->setWidth(20);
                 $sheet->getColumnDimension('H')->setAutoSize(true);
                 $sheet->getColumnDimension('I')->setAutoSize(true);
                 $row_number = 3;
                 foreach ($model as $task) {
                     $sheet->setCellValue("A" . $row_number, $task->PEOORDERNUM);
                     $sheet->setCellValue("B" . $row_number, $task->ORDERNUM);
                     $sheet->setCellValue("C" . $row_number, '');
                     $sheet->setCellValue("D" . $row_number, $task->TASK_NUMBER);
                     $sheet->setCellValue("E" . $row_number, 'Задание');
                     $sheet->setCellValue("F" . $row_number, \Yii::$app->formatter->asDate($task->DEADLINE, 'php:d-m-Y'));
                     //вставляем информацию по статусам
                     $task_states = \app\models\TaskStates::find()->where(['TASK_ID' => $task->ID])->orderBy('STATE_ID ASC')->all();
                     if ($task_states) {
                         foreach ($task_states as $state) {
                             $state_date = $state->getStateDate();
                             $logo = new \PHPExcel_Worksheet_Drawing();
                             $logo->setPath(Yii::getAlias('@webroot') . '/images/items_status/' . $state->getStateColour() . '.png');
                             $logo->setCoordinates("G" . $row_number);
                             $logo->setOffsetX(5);
                             $logo->setOffsetY(2);
                             $logo->setResizeProportional(true);
                             $logo->setWidth(16);
                             $logo->setWorksheet($sheet);
                             $sheet->setCellValue("G" . $row_number, '        ' . $state->getStateName());
                             $pers_tasks = \app\models\PersTasks::findOne($state->PERS_TASKS_ID);
                             $query = new \yii\db\Query();
                             $query->select('*')->from('STIGIT.V_F_PERS')->where('TN = \'' . $pers_tasks->TN . '\'');
                             $command = $query->createCommand();
                             $data = $command->queryOne();
                             $sheet->setCellValue("H" . $row_number, $data['FIO'] . ' ' . $state_date);
                             $task_docs = \app\models\TaskDocs::find()->where(['PERS_TASKS_ID' => $state->PERS_TASKS_ID])->one();
                             if ($task_docs) {
                                 $quantity = $task_docs->FORMAT_QUANTITY;
                             } else {
                                 $quantity = 0;
                             }
                             $sheet->setCellValue("I" . $row_number, $quantity);
                             $row_number++;
                         }
                     }
                     $row_number++;
                 }
                 //стили для рамки таблицы
                 $styleArray = array('borders' => array('allborders' => array('style' => \PHPExcel_Style_Border::BORDER_THIN)));
                 $total_rows = $row_number - 1;
                 $sheet->getStyle('A1:I' . $total_rows)->applyFromArray($styleArray);
                 //параметры страницы для печати - альбомная
                 $xls->getActiveSheet()->getPageSetup()->setOrientation(\PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
                 $xls->getActiveSheet()->getPageSetup()->setPaperSize(\PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4);
                 $xls->getActiveSheet()->getPageSetup()->setFitToPage(true);
                 $xls->getActiveSheet()->getPageSetup()->setFitToWidth(1);
                 $xls->getActiveSheet()->getPageSetup()->setFitToHeight(0);
                 // Выводим HTTP-заголовки
                 header("Expires: Mon, 1 Apr 1974 05:00:00 GMT");
                 header("Last-Modified: " . gmdate("D,d M YH:i:s") . " GMT");
                 header("Cache-Control: no-cache, must-revalidate");
                 header("Pragma: no-cache");
                 header("Content-type: application/vnd.ms-excel");
                 header("Content-Disposition: attachment; filename=report.xls");
                 //Выводим содержимое файла
                 $objWriter = new \PHPExcel_Writer_Excel5($xls);
                 $objWriter->save('php://output');
             } else {
                 /*
                     Вызываем эксепшн в случае, если были переданы не верные параметры заданий
                 */
                 throw new \yii\web\NotFoundHttpException('Что-то пошло не так. Пожалуйста, обратитесь к администратору системы.');
             }
         }
     } else {
         /*
             Вызываем эксепшн в случае, если доступ к формированию отчета запрещен
         */
         throw new \yii\web\ForbiddenHttpException('У Вас нет прав на редактирование "Формирование отчета"');
     }
 }
示例#23
0
 public function actionSelectedStudentList()
 {
     if (!empty($_REQUEST['studentlistexport'])) {
         $query = $_SESSION['query'];
         $selected_list = $_SESSION['selected_list'];
         $query1 = new \yii\db\Query();
         $query1->select('*')->from('stu_master stu')->join('join', 'stu_info s_info', 's_info.stu_info_id = stu.stu_master_stu_info_id')->join('join', 'stu_address add', 'add.stu_address_id = stu.stu_master_stu_address_id')->where($query . 'stu.is_status = 0');
         $command = $query1->createCommand();
         $student_data = $command->queryAll();
         $html = $this->renderPartial('stu_info_report_pdf', array('student_data' => $student_data, 'selected_list' => $selected_list));
         ob_clean();
         return Yii::$app->pdf->exportData('Student Info Report', 'Student_info_report', $html);
     } else {
         if (!empty($_REQUEST['studentlistexcelexport'])) {
             $query = $_SESSION['query'];
             $selected_list = $_SESSION['selected_list'];
             $query1 = new \yii\db\Query();
             $query1->select('*')->from('stu_master stu')->join('join', 'stu_info s_info', 's_info.stu_info_id = stu.stu_master_stu_info_id')->join('join', 'stu_address add', 'add.stu_address_id = stu.stu_master_stu_address_id')->where($query . 'stu.is_status = 0');
             $command = $query1->createCommand();
             $student_data = $command->queryAll();
             $file = $this->renderPartial('stu_info_report_excel', array('student_data' => $student_data, 'selected_list' => $selected_list));
             $fileName = "Student_info_report" . date('YmdHis') . '.xls';
             $options = ['mimeType' => 'application/vnd.ms-excel'];
             return Yii::$app->excel->exportExcel($file, $fileName, $options);
         } else {
             $query = $_SESSION['query'];
             $selected_list = null;
         }
     }
 }
 public function _checkPermissions($action, $task_id)
 {
     switch ($action) {
         case 'open_issue_modal':
             //проверка прав на просмотр задания (в модальном окне)
             $permissions_for_open_issue_modal = \app\models\Permissions::find()->where('(SUBJECT_TYPE = :subject_type and SUBJECT_ID = :user_id and ACTION_ID = :action and DEL_TRACT_ID = :del_tract and PERM_LEVEL != :perm_level and PERM_TYPE = :perm_type)  or 
                                                                                     (SUBJECT_TYPE = :subject_type_dolg and SUBJECT_ID = :dolg_id and ACTION_ID = :action and DEL_TRACT_ID = :del_tract and PERM_LEVEL != :perm_level and PERM_TYPE = :perm_type)', ['subject_type_dolg' => 1, 'dolg_id' => \Yii::$app->session->get('user.user_iddolg'), 'perm_type' => 1, 'subject_type' => 2, 'user_id' => \Yii::$app->user->id, 'del_tract' => 0, 'perm_level' => 0, 'action' => 3])->one();
             if ($permissions_for_open_issue_modal) {
                 //в случае если есть доступ на просмотр данных о задании
                 $user_in_persons_or_podr_list = false;
                 //получаем массив подразделений задания
                 $podr_tasks = \app\models\PodrTasks::find()->where(['TASK_ID' => $task_id, 'DEL_TRACT_ID' => 0])->all();
                 if ($podr_tasks) {
                     // если существуют подразделения, то формируем их список
                     $podr_list_kodzifr_array = [];
                     foreach ($podr_tasks as $task) {
                         //обходим список подразделений
                         $query = new \yii\db\Query();
                         $query->select('*')->from('STIGIT.V_F_PODR')->where('KODZIFR = \'' . trim($task->KODZIFR) . '\'');
                         $command = $query->createCommand();
                         $data = $command->queryOne();
                         if (isset($data['KODZIFR'])) {
                             // проверяем на существование названия подразделения (на момент разработки не для всех были названия)
                             $podr_list_kodzifr_array[] = $data['KODZIFR'];
                         }
                     }
                 }
                 //проверяем входит ли данный пользователь в список исполнителей задания
                 //получаем список пользователей, кому назначено задание
                 $pers_tasks = \app\models\PersTasks::find()->where(['TASK_ID' => $task_id, 'DEL_TRACT_ID' => 0])->all();
                 if ($pers_tasks) {
                     // если существуют исполнители, то формируем их список
                     $persons_array = [];
                     foreach ($pers_tasks as $task) {
                         $query = new \yii\db\Query();
                         $query->select('*')->from('STIGIT.V_F_PERS')->where('TN = \'' . $task->TN . '\'');
                         $command = $query->createCommand();
                         $data = $command->queryOne();
                         $persons_array[] = $data['TN'];
                     }
                     //проверяем, входит ли пользователь в этот список
                     if (in_array(\Yii::$app->user->id, $persons_array)) {
                         //пользователь входит в список исполнителей
                         $user_in_persons_or_podr_list = true;
                     }
                 } else {
                     //в этом случае, задания назначено всем исполнителям из списка подразделений задания
                     $persons_array = [];
                     //обходим массив подразделений для проверки, входит ли в него текущий пользователь
                     $ids = join(',', $podr_list_kodzifr_array);
                     $query = new \yii\db\Query();
                     $query->select('*')->from('STIGIT.V_F_PERS')->where('TN = \'' . \Yii::$app->user->id . '\' and KODZIFR in (' . $ids . ')');
                     $command = $query->createCommand();
                     $data = $command->queryAll();
                     if (!empty($data)) {
                         // проверяем вхождение пользователя в список исполнителей подразделений задания
                         $user_in_persons_or_podr_list = true;
                         // текущий пользователь входит в подразделения, указанные в задании
                     }
                 }
                 //проверяем, является ли пользователь начальником подразделений, указанных в задании
                 //получаем список подчиненных подразделений
                 $user_boss_of = \Yii::$app->session->get('user.user_boss_of');
                 if (!empty($user_boss_of) && !$user_in_persons_or_podr_list) {
                     //проверяем, является ли пользователь начальником подразделений, указанных в задании
                     if (in_array($user_boss_of, $podr_list_kodzifr_array)) {
                         //пользователь является руководителем, но не входит в спиок исполнителей или указанных подразделений
                         //осуществляем проверку прав на 'podr_tasks_my_edit'
                         $permissions_for_open_issue_modal_for_boss = \app\models\Permissions::find()->where('(SUBJECT_TYPE = :subject_type and SUBJECT_ID = :user_id and ACTION_ID = :action and DEL_TRACT_ID = :del_tract and PERM_LEVEL != :perm_level and PERM_TYPE = :perm_type)  or 
                                                                                         (SUBJECT_TYPE = :subject_type_dolg and SUBJECT_ID = :dolg_id and ACTION_ID = :action and DEL_TRACT_ID = :del_tract and PERM_LEVEL != :perm_level and PERM_TYPE = :perm_type)', ['subject_type_dolg' => 1, 'dolg_id' => \Yii::$app->session->get('user.user_iddolg'), 'perm_type' => 1, 'subject_type' => 2, 'user_id' => \Yii::$app->user->id, 'del_tract' => 0, 'perm_level' => 0, 'action' => 101])->one();
                         if ($permissions_for_open_issue_modal_for_boss) {
                             //пользователю разрешен просмотр и редактирование заданий своего подразделения
                             $user_in_persons_or_podr_list = true;
                         }
                     }
                 }
                 if ($user_in_persons_or_podr_list) {
                     //пользователь имеет доступ к заданию, так как входит в список исполнителей выбранного задания, либо находится в составе подразделей задания,
                     //либо является руководителем подразделений, указанных в задании
                     return true;
                 }
             } else {
                 return false;
             }
             break;
         case 'open_issue_modal_in_current_status':
             //проверка прав на просмотр задания (в модальном окне) в текущем статусе задания
             //получаем текущий статус задания для данного пользователя
             $current_status = self::_getCurrentTaskStatusForCurrentUser($task_id);
             if ($current_status != 'empty_status' && $current_status != 'user_not_in_persons_list') {
                 //проверяем есть ли доступ у пользователя к заданию в текущем статусе
                 $permissions_for_open_issue_modal_in_current_status = \app\models\Permissions::find()->where('(SUBJECT_TYPE = :subject_type and SUBJECT_ID = :user_id and DEL_TRACT_ID = :del_tract and PERM_LEVEL != :perm_level and ACTION_ID = :action and PERM_TYPE = :perm_type) or
                                                                                         (SUBJECT_TYPE = :subject_type_dolg and SUBJECT_ID = :id_dolg and DEL_TRACT_ID = :del_tract and PERM_LEVEL != :perm_level and ACTION_ID = :action and PERM_TYPE = :perm_type)', ['subject_type_dolg' => 1, 'id_dolg' => \Yii::$app->session->get('user.user_iddolg'), 'perm_type' => 2, 'subject_type' => 2, 'user_id' => \Yii::$app->user->id, 'del_tract' => 0, 'perm_level' => 0, 'action' => $current_status])->one();
                 if ($permissions_for_open_issue_modal_in_current_status) {
                     //досутп на просмотр в текущем статусе разрешен
                     return 'true';
                 } else {
                     $state = \app\models\States::findOne($current_status);
                     return 'У Вас нет прав на "Форма свойств задания" в статусе "' . $state->STATE_NAME . '"';
                 }
             } elseif ($current_status == 'empty_status') {
                 //устанавливаем статус "Принято при первом открытии задания"
                 $pers_tasks = \app\models\PersTasks::find()->where(['TASK_ID' => $task_id, 'TN' => \Yii::$app->user->id, 'DEL_TRACT_ID' => 0])->one();
                 $transactions = \app\models\Transactions::find()->where(['TN' => \Yii::$app->user->id])->orderBy('ID DESC')->one();
                 //пишем первый статус в БД
                 $task_states = new \app\models\TaskStates();
                 $task_states->TASK_ID = $task_id;
                 $task_states->STATE_ID = 1;
                 $task_states->TRACT_ID = $transactions->ID;
                 $task_states->IS_CURRENT = 1;
                 if ($pers_tasks->ID) {
                     // устанавливаем pers_tasks id
                     $task_states->PERS_TASKS_ID = $pers_tasks->ID;
                 }
                 $task_states->save();
                 //разрешаем пользователю смотреть информацию по заданию
                 return 'true';
             } elseif ($current_status == 'user_not_in_persons_list') {
                 //пользователь не стоит в списке исполнителей задания
                 //проверяем, если он руководитель показываем информацию по заданию (остальные пользователи сбда не попадут из-за проверки выше)
                 return 'true_for_boss';
             }
             break;
         case 'update_issue':
             //проверяем, есть ли доступ на редактирование задания для исполнителей
             $permissions_for_update_issue = \app\models\Permissions::find()->where('(SUBJECT_TYPE = :subject_type and SUBJECT_ID = :user_id and ACTION_ID = :action and DEL_TRACT_ID = :del_tract and PERM_LEVEL = :perm_level and PERM_TYPE = :perm_type)  or 
                                                                                     (SUBJECT_TYPE = :subject_type_dolg and SUBJECT_ID = :dolg_id and ACTION_ID = :action and DEL_TRACT_ID = :del_tract and PERM_LEVEL = :perm_level and PERM_TYPE = :perm_type)', ['subject_type_dolg' => 1, 'dolg_id' => \Yii::$app->session->get('user.user_iddolg'), 'perm_type' => 1, 'subject_type' => 2, 'user_id' => \Yii::$app->user->id, 'del_tract' => 0, 'perm_level' => 2, 'action' => 3])->one();
             //проверка доступа на редактирование для руководителей
             $permissions_for_update_issue_boss = \app\models\Permissions::find()->where('(SUBJECT_TYPE = :subject_type and SUBJECT_ID = :user_id and ACTION_ID = :action and DEL_TRACT_ID = :del_tract and PERM_LEVEL = :perm_level and PERM_TYPE = :perm_type)  or 
                                                                                     (SUBJECT_TYPE = :subject_type_dolg and SUBJECT_ID = :dolg_id and ACTION_ID = :action and DEL_TRACT_ID = :del_tract and PERM_LEVEL = :perm_level and PERM_TYPE = :perm_type)', ['subject_type_dolg' => 1, 'dolg_id' => \Yii::$app->session->get('user.user_iddolg'), 'perm_type' => 1, 'subject_type' => 2, 'user_id' => \Yii::$app->user->id, 'del_tract' => 0, 'perm_level' => 2, 'action' => 101])->one();
             //проверяем кто редактирует задание
             $pers_tasks = \app\models\PersTasks::find()->where(['TASK_ID' => $task_id, 'DEL_TRACT_ID' => 0])->all();
             if ($pers_tasks) {
                 // если существуют исполнители, то формируем их список
                 $persons_array = [];
                 foreach ($pers_tasks as $task) {
                     $query = new \yii\db\Query();
                     $query->select('*')->from('STIGIT.V_F_PERS')->where('TN = \'' . $task->TN . '\'');
                     $command = $query->createCommand();
                     $data = $command->queryOne();
                     $persons_array[] = $data['TN'];
                 }
                 //проверяем, входит ли пользователь в этот список
                 if (in_array(\Yii::$app->user->id, $persons_array)) {
                     //пользователь входит в список исполнителей
                     $user_is_person = 1;
                 } else {
                     $user_is_person = 0;
                 }
             }
             if ($permissions_for_update_issue && $user_is_person == 1) {
                 return 'update_issue_for_person';
             } elseif ($permissions_for_update_issue_boss && $user_is_person == 0) {
                 return 'update_issue_for_boss';
             } else {
                 return false;
             }
             break;
     }
 }
示例#25
0
 public function actionMobilelistxxx()
 {
     $this->layout = 'wapy';
     //        $gh_id = U::getSessionParam('gh_id');
     //        $openid = U::getSessionParam('openid');
     $gh_id = MGh::GH_XIANGYANGUNICOM;
     $openid = MGh::GH_XIANGYANGUNICOM_OPENID_KZENG;
     Yii::$app->wx->setGhId($gh_id);
     $models = MItem::find()->where(['kind' => MItem::ITEM_KIND_MOBILE])->orderBy(['price' => SORT_ASC])->all();
     $query = new \yii\db\Query();
     $query->select('*')->from(\app\models\MActivity::tableName())->where(['status' => 1])->orderBy(['id' => SORT_DESC])->all();
     $rows = $query->createCommand()->queryAll();
     foreach ($models as &$model) {
         foreach ($rows as &$row) {
             $ids = explode(",", $row['iids']);
             if (in_array($model['iid'], $ids)) {
                 $model['price'] = $model['price'] * $row['discount'] / 10;
                 $model['title_hint'] = "<span class='activity'>限时促销!</span>&nbsp;&nbsp;" . $model['title_hint'];
             }
         }
     }
     return $this->render('mobilelist', ['gh_id' => $gh_id, 'openid' => $openid, 'models' => $models]);
 }
示例#26
0
<?php

use yii\helpers\Html;
$adminUser = array_keys(\Yii::$app->authManager->getRolesByUser(Yii::$app->user->getId()));
$stu_guard = new \yii\db\Query();
$stu_guard->select('*')->from('stu_guardians sg')->where(['sg.guardia_stu_master_id' => $_REQUEST['id']]);
$command = $stu_guard->createCommand();
$stu_data = $command->queryAll();
?>

<div class="row">
  <div class="col-xs-12 col-md-12 col-lg-12">
	<h2 class="page-header">
	<i class="fa fa-info-circle"></i> <?php 
echo Html::encode(Yii::t('stu', 'Guardians Details'));
?>
	<div class="<?php 
echo Yii::$app->language == 'ar' ? 'pull-left' : 'pull-right';
?>
">
	<?php 
if (Yii::$app->user->can('/student/stu-master/addguardian')) {
    ?>
		<?php 
    echo Html::a('<i class="fa fa-user-plus"></i> ' . Yii::t('stu', 'Add Guardian'), ['addguardian', 'sid' => $model->stu_master_id], ['class' => 'btn-sm btn btn-primary text-warning', 'id' => 'update-guard-data']);
    ?>
	<?php 
}
?>
	</div>
	</h2>
示例#27
0
文件: left.php 项目: deviardn/diadoo
</p>
            <?php 
    } else {
        ?>
                <p><?php 
        echo $row['name'];
        ?>
</p>
            <?php 
    }
    ?>
                
                 <?php 
    $queryJoined = new yii\db\Query();
    $queryJoined->select(['created_at'])->from('user')->where(['id' => Yii::$app->user->identity->id])->all();
    $commandJoined = $queryJoined->createCommand();
    $dataJoined = $commandJoined->queryAll();
    ?>
                
                <?php 
    foreach ($dataJoined as $rowJoined) {
        ?>
                
                <p>Joined : <?php 
        echo Yii::$app->formatter->format($rowJoined['created_at'], 'date');
        ?>
</p>
            <?php 
    }
    ?>
示例#28
0
文件: view.php 项目: deviardn/diadoo
            echo $dataUser['id'];
            ?>
" target="_blank" class="btn btn-sm bg-orange btn-flat no-margin pull-right">Go to my page <i class="fa fa-arrow-circle-o-right"></i></a>
                                    </div>
                                <?php 
        }
        ?>

                            <?php 
    } else {
        ?>

                                <?php 
        $queryUserFree = new yii\db\Query();
        $queryUserFree->select(['name', 'email', 'phone'])->from('classified_guest')->where(['id' => $dataView['user_id']])->all();
        $commandUserFree = $queryUserFree->createCommand();
        $dataUserFree = $commandUserFree->queryAll();
        ?>

                                <?php 
        foreach ($dataUserFree as $dataUserFree) {
            ?>
                                    <div style="margin-top: 0px; text-align: center">
                                        <p><b><?php 
            echo $dataUserFree['name'];
            ?>
</b></p>
                                    </div>
                                    <div>
                                        Phone : <?php 
            echo $dataUserFree['phone'];
示例#29
0
 /**
  * TODO: Only translate tags urls if tag is available for the specific language
  * @param integer $limit
  * @return array
  */
 public function getAllTags($limit = 20)
 {
     if ($this->allTags == null) {
         $allTags = array();
         $query = new \yii\db\Query();
         $query->select('tags_list')->from('blog_post_lang')->innerJoin('blog_post', 'blog_post.id=blog_post_lang.blog_post_id')->where(['is_published' => true])->andWhere(['<>', 'blog_post_lang.slug', ''])->andWhere(['blog_post_lang.language' => Yii::$app->language]);
         $command = $query->createCommand();
         $posts = $command->queryAll();
         foreach ($posts as $post) {
             $tags_array = explode(",", $post['tags_list']);
             foreach ($tags_array as $tag) {
                 $tag = trim($tag);
                 if (!empty($tag)) {
                     if (!isset($allTags[$tag])) {
                         $allTags[$tag] = 1;
                     } else {
                         $allTags[$tag] = $allTags[$tag] + 1;
                     }
                 }
             }
         }
         arsort($allTags);
         $this->allTags = array_keys($allTags);
         $this->allTags = array_slice($this->allTags, 0, $limit);
     }
     return $this->allTags;
 }
示例#30
0
 public function actionSelectedEmployeeList()
 {
     if (!empty($_REQUEST['employeelistexport'])) {
         $query = null;
         $query = $_SESSION['query'];
         $selected_list = $_SESSION['selected_list'];
         $query1 = new \yii\db\Query();
         $query1->select('*')->from('emp_master emp')->join('join', 'emp_info e_info', 'e_info.emp_info_id = emp.emp_master_emp_info_id')->join('join', 'emp_department emp_dep', 'emp_dep.emp_department_id = emp.emp_master_department_id ')->join('join', 'emp_designation emp_des', 'emp_des.emp_designation_id = emp.emp_master_designation_id ')->join('join', 'emp_category emp_cat', 'emp_cat.emp_category_id = emp. 	emp_master_category_id')->leftJoin('emp_address eadd', 'eadd.emp_address_id = emp.emp_master_emp_address_id')->where($query . 'emp.is_status = 0');
         $command = $query1->createCommand();
         $employee_data = $command->queryAll();
         $html = $this->renderPartial('emp_info_report_pdf', array('employee_data' => $employee_data, 'selected_list' => $selected_list));
         ob_clean();
         return Yii::$app->pdf->exportData('Employee Info Report', 'Employee_info_report', $html);
     } else {
         if (!empty($_REQUEST['employeelistexcelexport'])) {
             $query = null;
             $query = $_SESSION['query'];
             $selected_list = $_SESSION['selected_list'];
             $query1 = new \yii\db\Query();
             $query1->select('*')->from('emp_master emp')->join('join', 'emp_info e_info', 'e_info.emp_info_id = emp.emp_master_emp_info_id')->join('join', 'emp_department emp_dep', 'emp_dep.emp_department_id = emp.emp_master_department_id ')->join('join', 'emp_designation emp_des', 'emp_des.emp_designation_id = emp.emp_master_designation_id ')->join('join', 'emp_category emp_cat', 'emp_cat.emp_category_id = emp. 	emp_master_category_id')->leftJoin('emp_address eadd', 'eadd.emp_address_id = emp.emp_master_emp_address_id')->where($query . 'emp.is_status = 0');
             $command = $query1->createCommand();
             $employee_data = $command->queryAll();
             $file = $this->renderPartial('emp_info_report_excel', array('employee_data' => $employee_data, 'selected_list' => $selected_list));
             $fileName = "Employee_info_report" . date('YmdHis') . '.xls';
             $options = ['mimeType' => 'application/vnd.ms-excel'];
             return Yii::$app->excel->exportExcel($file, $fileName, $options);
         } else {
             $query = $_SESSION['query'];
             $selected_list = null;
         }
     }
 }