/** * Список поданных заявок для админа. */ public function action_index_by_admin() { $user = Model_User::create(); $udata = (object) $user->getAuth(); $app = Model_Application::create(); $request = $this->getRequest(); //echo '<pre>';var_dump($request );echo '</pre>'; //die(); $params = array(); ($requestData = $request->post) || ($requestData = $request->get); $params['sort_field'] = isset($requestData['sort_field']) ? $requestData['sort_field'] : 'fio'; $params['sort_direction'] = isset($requestData['sort_field']) ? $requestData['sort_direction'] : 'asc'; $params['filter_status'] = isset($requestData['filter_status']) ? $requestData['filter_status'] : 'work'; $params['filter_name'] = isset($requestData['sort_field']) ? $requestData['filter_name'] : 'all'; $params['filter_object_type'] = isset($requestData['sort_field']) ? $requestData['filter_object_type'] : 'all'; $params['filter_object_id'] = isset($requestData['sort_field']) ? $requestData['filter_object_id'] : 'all'; $params['page'] = isset($requestData['page']) && $requestData['save_page_num'] ? intval($requestData['page']) : 0; //print_r($params); $appsFull = $app->getAllAppsInfo($params['sort_field'], $params['sort_direction'], $params['filter_status'], $params['filter_name'], $params['filter_object_type'], $params['filter_object_id'], $params['page']); $apps =& $appsFull['data']; $pageCount = ceil($appsFull['count'] / Model_Application::APPS_ON_PAGE); foreach ($apps as $i => $a) { if ($a['status'] == 'accepted') { $modelEducProg = Model_Education_Programs::create(); if ($a['type'] == 'program') { $apps[$i]['paid_type'] = $modelEducProg->getProgramPaidType($a['object_id']); } elseif ($a['type'] == 'discipline') { $programId = $modelEducProg->getProgramIdByDiscipline($a['object_id']); $apps[$i]['paid_type'] = $modelEducProg->getProgramPaidType($programId); } } elseif ($a['status'] == 'signed') { $apps[$i] = $app->addInfoIntoKortegAboutPaidState($a); } } $listObjects = $app->getListObjectsApps(); $listNames = $app->getListUsersApps(); $listPrograms = array(); $listDisciplines = array(); foreach ($listObjects as $korteg) { if ($korteg['type'] == 'program') { $listPrograms[] = array('object_id' => $korteg['object_id'], 'title' => $korteg['program_title']); } else { if ($korteg['type'] == 'discipline') { $listDisciplines[] = array('object_id' => $korteg['object_id'], 'title' => $korteg['discipline_title']); } } } $this->set('applications', $apps); $this->set('statuses', Model_Application::getStatusMap()); $this->set('listNames', $listNames); $this->set('listPrograms', $listPrograms); $this->set('listDisciplines', $listDisciplines); $this->set('invalidMaterialsForms', array()); $this->set('links', Resources::getInstance()->links); $this->set('sortField', $params['sort_field']); $this->set('sortDirection', $params['sort_direction']); $this->set('filterStatus', $params['filter_status']); $this->set('filterName', $params['filter_name']); $this->set('filterObjectType', $params['filter_object_type']); $this->set('filterObjectId', $params['filter_object_id']); $this->set('page', $params['page']); $this->set('pageCount', $pageCount); $contract = Model_Contract::create(); $requestData = $request->files; if (empty($requestData)) { $this->render('applications/index_by_admin'); } // загрузка договора $invalidMaterialsForms = array(); foreach ($request->files as $key => $item) { //list($empty_str,$app_id) = (split('fileReference',$key)); list($empty_str, $app_id) = explode('fileReference', $key); } $request->set('get', array('filename' => $request->files['fileReference' . $app_id]['name'], 'sort_field' => $params['sort_field'], 'sort_direction' => $params['sort_direction'], 'filterStatus' => $params['filter_status'], 'filterName' => $params['filter_name'], 'filterObjectType' => $params['filter_object_type'], 'filterObjectId ' => $params['filter_object_id'])); $contractForm = Form_Contract_Upload::create(''); $contractForm->setMethod(Form_Abstract::METHOD_GET); if (!$contractForm->validate($request)) { $invalidMaterialsForms[] = $contractForm; } else { $postman = Resources::getInstance()->postman; $postman->sendContractStudent($udata->email, $request->files['fileReference' . $app_id]['tmp_name']); $contract->addContract($request->files['fileReference' . $app_id], $app_id); } if (!empty($invalidMaterialsForms)) { $this->set('invalidMaterialsForms', $invalidMaterialsForms); $this->render('educational_materials/upload'); } $links = Resources::getInstance()->links; $this->flash('Договор успешно загружен', $links->get('admin.applications'), 3); }
/** * редактирование группы точек */ public function action_edit_dots_group() { $params = $this->request->post('params'); $result = Model_Contract::editDotsGroup($params); if (!empty($result)) { $this->jsonResult(false); } $this->jsonResult(true); }
/** * список выставленных счетов по контракту */ public function action_bills_list() { $params = ['contract_id' => $this->request->post('contract_id'), 'offset' => $this->request->post('offset'), 'pagination' => true]; list($history, $more) = Model_Contract::getBillsList($params); if (empty($history)) { $this->jsonResult(false); } $this->jsonResult(true, ['items' => $history, 'more' => $more]); }