EIOS/inc/iup_zamdekan.php

277 lines
15 KiB
PHP
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
//$_SESSION['user']['teacher']['fakultet']
//надо отображать только тех студентов которые выбрали предмет из факультетат зам декана
$zamdeknaprav = iup_get_zamdeknaprav($_SESSION['user']['teacher']['fakultet']);
//$zamdeknaprav = iup_get_zamdeknaprav_old($_SESSION['user']['teacher']['fakultet']);
if(isset($_POST['zdk_student_save'])){//сохранение формы
$id_zayavka = (int)$_POST['id_zayavka'];
post_save_prpr($id_zayavka);
$des = 'show';
}
if(isset($_POST['zdk_student_sendattest'])){//отправка на аттестационную комиссию
$id_zayavka = (int)$_POST['id_zayavka'];
post_save_prpr($id_zayavka);
$sql = 'UPDATE '.$TB['iup_studentzayavks'].' SET status=2 WHERE id='.$id_zayavka.' AND status=0';
$rez = $DB->QUR($sql);
if($rez){
$msg['msg'][]='Заявка студента одобрена!';
send_email_iup($id_zayavka);
$sql = 'INSERT INTO '.$TB['iup_statuses'].' VALUES(0,'.time().','.$id_zayavka.','.$_SESSION['user']['id'].',0,2,"")';
$rez = $DB->QUR($sql);
if($rez){ $msg['msg'][]='Время изменения статуса сохранено!';}
else{ $msg['err'][]='Время изменения статуса не сохранено!'; }
save_logs('ИУП: отправка на аттестационную комиссию №'.$id_zayavka);
}else{
$msg['err'][]='Заявка студента не одобрена! Ошибка БД!!!';
}
$des = 'show';
}
if(isset($_POST['zdk_student_otkaz'])){//Отказ заявки студента
$id_zayavka = (int)$_POST['id_zayavka'];
$descrip = get_data_fu($_POST['descrip']);
$sql = 'UPDATE '.$TB['iup_studentzayavks'].' SET status=-2 WHERE id='.$id_zayavka.' AND status=0';
$rez = $DB->QUR($sql);
if($rez){
$msg['msg'][]='Заявка студента отклонена!';
$sql = 'INSERT INTO '.$TB['iup_statuses'].' VALUES(0,'.time().','.$id_zayavka.','.$_SESSION['user']['id'].',0,-2,"'.$descrip.'")';
$rez = $DB->QUR($sql);
if($rez){ $msg['msg'][]='Время изменения статуса сохранено!';}
else{ $msg['err'][]='Время изменения статуса не сохранено!'; }
save_logs('ИУП: Отказ заявки студента №'.$id_zayavka);
}else{
$msg['err'][]='Заявка студента не отклонена! Ошибка БД!!!';
}
$des = 'show';
}
if($des=='del_iup'){
$id = $id_zayavka = (int)$_GET['id'];
$sql = 'UPDATE '.$TB['iup_studentzayavks'].' SET status=-20 WHERE id='.$id_zayavka.' LIMIT 1';
$rez = $DB->QUR($sql);
if($rez){}
$des = 'show';
}
if($des == 'edit'||$des == 'editadmin'){
$id = $id_zayavka = (int)$_GET['id'];
if($des == 'edit')
$sql = 'SELECT * FROM '.$TB['iup_studentzayavks'].' WHERE id='.$id.' AND status=0';
//$sql = 'SELECT * FROM '.$TB['iup_studentzayavks'].' WHERE id='.$id;
else {
$sql = 'SELECT * FROM ' . $TB['iup_studentzayavks'] . ' WHERE id=' . $id;
$des = 'edit';
}
$rez = $DB->QUR_SEL($sql);
//echo $sql.'<pre>'.print_r($rez,1).'</pre>';exit();
if($rez){
$val = $rez[1];
$val['data_c'] = date('H:i:s d.m.Y',$val['data_c']);
$val['diplom_data'] = date('d.m.Y',$val['diplom_data']);
$sql = 'SELECT * FROM '.$TB['iup_studentzayavks_files'].' WHERE id_studentzayavks='.$val['id'].' ORDER BY data_c';
$rez = $DB->QUR_SEL($sql);
//echo $sql.'<pre>'.print_r($rez,1).'</pre>';exit();
//SELECT * FROM acs_iup_studentzayavks_files WHERE id_studentzayavks=7288 ORDER BY data_c
//Array(
// [0] => 3
// [1] => Array(
// [id] => 24403 [data_c] => 1693053203 [id_user] => 33448 [id_studentzayavks] => 7288
// [tipfile] => Справка о периоде обучения из исходной организации
// [file] => upload/iup/33448/Spravkaoperiodeobucheniya.pdf [status] => 1
// )
// [2] => Array(
// [id] => 24404 [data_c] => 1693053203 [id_user] => 33448 [id_studentzayavks] => 7288
// [tipfile] => Справка о периоде обучения из исходной организации
// [file] => upload/iup/33448/Sidorovaskanidokumentov.pdf [status] => 1
// )
// [3] => Array(
// [id] => 24405 [data_c] => 1693053203 [id_user] => 33448 [id_studentzayavks] => 7288
// [tipfile] => Документы подтверждающие личные данные
// [file] => upload/iup/33448/099C435C-A789-4C87-B436-BF5BECA6FA34.jpeg [status] => 1
// )
//)
if($rez){foreach($rez as $k => $v)if($k){
$v['data_c'] = date('H:i:s d.m.Y',$v['data_c']);
$val['files'][]=$v;
}}
//echo $sql.'<pre>'.print_r($val,1).'</pre>';exit();
//SELECT * FROM acs_iup_studentzayavks_files WHERE id_studentzayavks=7288 ORDER BY data_c
//Array(
// [id] => 7288 [data_c] => 15:33:23 26.08.2023 [id_user] => 33448
// [fio] => Сидорова Татьяна Евгеньевна [pred_obraz] => продолжаю обучение
// [obraz_uchr] => АНО ВО МГЭУ [diplom_seriya] =>
// [diplom_nomer] => [diplom_data] => 26.08.2023
// [pret_naprav] => ТД:Таможенное дело:Товароведение и экспертиза в таможенном деле:Специалитет
// [pret_kurs] => 3 [pret_fo] => заочная
// [status] => 0 [tel] => 89282753153 [pret_format] => [perevod] => 1
// [files] => Array(...)
//)
$val['plans'] = iup_plans_get_all();
//получим предметы по привязке ЗАЯВКИ к УЧ.ПЛАНУ
$predmets = iup_get_predmets_BYzp($id_zayavka);
if(!count($predmets)) {
//надо получить все предметы из заявки и назначить преподов для каждого предмета!
$predmets = iup_get_predmets($_SESSION['user']['teacher']['fakultet'], $val['pret_naprav'], $val['pret_kurs'], $val['pret_fo']); //1-чтобы не кэшировало!
}
//if(!count($predmets)){
// $predmets = iup_get_predmets($_SESSION['user']['teacher']['fakultet'],$val['pret_naprav'],($val['pret_kurs']-1),$val['pret_fo']);
//}
//echo '<pre>'.print_r($predmets,1).$_SESSION['user']['teacher']['fakultet'].'</pre>'; exit();
$val['predmets_prepod'] = iup_get_prepod_for_predmet($predmets,$id);
//echo '<pre>'.print_r($val['predmets_prepod'],1).'</pre>';exit();
$zayavka = $val;
//echo '<pre>'.print_r($zayavka,1).'</pre>';exit();
$smarty->assign('zayavka',$zayavka);
}else{
$des = 'show';
}
}
if($des == 'show'){
$fakultet = addslashes(htmlspecialchars($_SESSION['user']['teacher']['fakultet']));
if(isset($_POST['fio_save'])){
$dek = addslashes(htmlspecialchars($_POST['fio_dek']));
$pak = addslashes(htmlspecialchars($_POST['fio_pak']));
$sek = addslashes(htmlspecialchars($_POST['fio_sek']));
$tmp = "";
$sql = 'SELECT * FROM '.$ST['dbpf'].'_iup_fios WHERE fakultet="'.$fakultet.'"';
$rez = $DB->QUR_SEL($sql);
if($rez&&$rez[0]>0){
$sql = 'UPDATE '.$ST['dbpf'].'_iup_fios SET dek="'.$dek.'",pak="'.$pak.'",sek="'.$sek.'" WHERE id='.$rez[1]['id'].' LIMIT 1';
$rez = $DB->QUR($sql);
}else{
$sql = 'INSERT INTO '.$ST['dbpf'].'_iup_fios VALUES(0,'.time().',"'.$fakultet.'","'.$dek.'","'.$pak.'","'.$sek.'","");';
$rez = $DB->QUR($sql);
}
}
$fios=array();
$sql = 'SELECT * FROM '.$ST['dbpf'].'_iup_fios WHERE fakultet="'.$fakultet.'"';
$rez = $DB->QUR_SEL($sql);
if($rez){
foreach($rez as $key => $val)if($key){
$fios = $val;
}
}
$smarty->assign('fios',$fios);
$zayavks=array();
if($_SESSION['user']['teacher']['fakultet']=='Филиал МГТУ'){
$sql = 'SELECT * FROM '.$TB['iup_studentzayavks'].' WHERE (pret_naprav LIKE "%'.implode('%" OR pret_naprav LIKE "%',$zamdeknaprav).'%") AND status>-10 ORDER BY data_c DESC LIMIT 400';//echo $sql;
}else{
//print_r($zamdeknaprav);
//$sql = 'SELECT * FROM '.$TB['iup_studentzayavks'].' WHERE (pret_naprav LIKE "%:'.implode('%" OR pret_naprav LIKE "%:',$zamdeknaprav).'%") AND pret_naprav NOT LIKE "Фс:%" ORDER BY data_c DESC'; //echo $sql; // AND (pret_naprav not LIKE "Фс:%")//AND status=0
$sql = 'SELECT * FROM '.$TB['iup_studentzayavks'].' WHERE (pret_naprav LIKE "%:'.implode('%" OR pret_naprav LIKE "%:',$zamdeknaprav).'%") AND (pret_naprav not LIKE "Фс:%") AND status>-10 ORDER BY data_c DESC LIMIT 400';
//echo $sql;
//$sql = 'SELECT * FROM '.$TB['iup_studentzayavks'].' WHERE (pret_naprav LIKE "%:'.implode('%" OR pret_naprav LIKE "%:',$zamdeknaprav).'%") ORDER BY data_c DESC'; //echo $sql; AND (pret_naprav not LIKE "Фс:%")//AND status=0
//echo '<pre>'.$sql.'</pre>';
//if (in_array("Сервис", $zamdeknaprav)) $sql = 'SELECT * FROM '.$TB['iup_studentzayavks'].' WHERE (pret_naprav LIKE "%:'.implode('%" OR pret_naprav LIKE "%:',$zamdeknaprav).'%" OR pret_naprav LIKE "%:Землеустройство%") AND pret_naprav NOT LIKE "Фс:%" ORDER BY data_c DESC';
if (in_array("Фармация", $zamdeknaprav)) $sql = 'SELECT * FROM '.$TB['iup_studentzayavks'].' WHERE (pret_naprav LIKE "%:Фармация%") AND status>-10 ORDER BY data_c DESC';
//SELECT * FROM acs_iup_studentzayavks WHERE (pret_naprav LIKE "%:Экономика%" OR pret_naprav LIKE "%:Реклама и связи с общественностью%" OR pret_naprav LIKE "%:Сервис%" OR pret_naprav LIKE "%:Сервис%" OR pret_naprav LIKE "%:Туризм%" OR pret_naprav LIKE "%:Гостиничное дело%") AND (pret_naprav not LIKE "Фс:%") ORDER BY data_c DESC
}
//echo $sql; exit();
//SELECT * FROM acs_iup_studentzayavks WHERE (pret_naprav LIKE "%%") AND status>-10 ORDER BY data_c DESC LIMIT 400
$rez = $DB->QUR_SEL($sql);
if($rez){
foreach($rez as $key => $val)if($key){
$val['data_c'] = date('H:i:s d.m.Y',$val['data_c']);
$zayavks[] = $val;
}
}
//$smarty->assign('test',print_r($zamdeknaprav));
$smarty->assign('auser',$_SESSION['user']);
$smarty->assign('zayavks',$zayavks);
}
if($des == 'attved1'){//ПРОТОКОЛ 1
$id = (int)$_GET['id'];
print_vedomost($id,1,'tpl_iup_attved1.html');
exit();
}
if($des == 'attved2'){//ПРОТОКОЛ 2
$id = (int)$_GET['id'];
print_vedomost($id,2,'tpl_iup_attved2.html');
exit();
}
if($des == 'attved3'){//ПРОТОКОЛ 3
$id = (int)$_GET['id'];
print_vedomost($id,3,'tpl_iup_attved3.html');
exit();
}
$smarty->assign('zamdeknaprav',$zamdeknaprav);
$smarty->assign('page',$page);
$smarty->assign('des',$des);
$smarty->assign('msg',$msg);
$maincontent = $smarty->fetch('tpl_iup_main.html');
function post_save_prpr($id_zayavka){//надо сохранить связку предмет препод
GLOBAL $ST,$TB,$DB;
//echo $id_zayavka.'<pre>'.print_r($_POST,1).'</pre>'; exit();
//Array(
// [pr_teach] => Array(
// [141870] => Array(
// [predmet] => Array( [key] => 141870 [name] => Рынок ценных бумаг )
// [prepod] => Array ( [id] => 356 )
// [prepodfio] => Кадакоева Галина Владимировна
// [ocenka] => 0
// )
//[153416] => Array(
// [predmet] => Array(
// [key] => 153416
// [name] => Иностранный язык
// )
// [prepod] => Array(
// [id] => 570
// )
// [prepodfio] => Шадже Зариет Мухамчериевна
// [ocenka] => 0
//)
foreach($_POST['pr_teach'] as $key => $val){
$prepod_id=0;
if($val['prepodfio']!=''){
//if($val['prepod']['id']==''||$val['prepod']['id']=='0'){//узнаем ИД препода
$fio = mysql_escape_string($val['prepodfio']);
$sql1 = 'SELECT u.id as uid,u.fio, t.id as tid FROM '.$ST['dbpf'].'_users as u,'.$ST['dbpf'].'_teachers as t WHERE fio LIKE "%'.$fio.'%" AND u.id=t.id_user LIMIT 2';
$rez1 = $DB->QUR_SEL($sql1);
if($rez1){
foreach($rez1 as $key1 => $val1)if ($key1){
$prepod_id=$val1['uid'];
}
}
/*}else{
$prepod_id=$val['prepod']['id'];
}*/
$sql = 'SELECT id FROM `'.$TB['iup_zamdekan'].'` WHERE id_studentzayavks='.$id_zayavka.' AND predmet_id='.$val['predmet']['key'].'';
$rez = $DB->QUR_SEL($sql);
if($rez){//есть уже назначения
$sql = 'UPDATE `'.$TB['iup_zamdekan'].'` SET data_c='.time().',prepod_id='.$prepod_id.',prepod_name="'.addslashes($val['prepodfio']).'" WHERE id='.$rez[1]['id'].' LIMIT 1';
$rez = $DB->QUR($sql); //echo $sql.'<pre>'.print_r($rez,1).'</pre>';
save_logs('ИУП: связку предмет препод обновление заявка №'.$id_zayavka.' предмет№'.$val['predmet']['key'].' предмет:'.$val['predmet']['name'].' препод№'.$prepod_id.' преподФИО:'.$val['prepodfio']);
}else{//нет назначений
$sql = 'INSERT INTO `'.$TB['iup_zamdekan'].'` VALUES(0,'.time().','.$_SESSION['user']['id'].','.$id_zayavka.','.$val['predmet']['key'].',"'.addslashes($val['predmet']['name']).'",'.$prepod_id.',"'.addslashes($val['prepodfio']).'")';
$rez = $DB->QUR($sql); //echo $sql.'<pre>'.print_r($rez,1).'</pre>';
save_logs('ИУП: связку предмет препод добавление заявка №'.$id_zayavka.' предмет№'.$val['predmet']['key'].' предмет:'.$val['predmet']['name'].' препод№'.$prepod_id.' преподФИО:'.$val['prepodfio']);
}
}
//echo $sql;exit();
//перезачет дисциплины
$ocenka = $val['ocenka'];
if (($ocenka == "зачтено")||($ocenka == "удовлетворительно")||($ocenka == "хорошо")||($ocenka == "отлично") ){
$sql = 'INSERT INTO `'.$TB['iup_ocenki'].'` VALUES (0, '.time().','.$id_zayavka.', '.$prepod_id.', "'.$ocenka.'", "'.addslashes($val['predmet']['name']).'", '.$val['predmet']['key'].', "1", '.time().', "0", "Перезачет", "", "", "")';
$rez = $DB->QUR($sql);
//echo $sql.'<pre>'.print_r($rez,1).'</pre>';
save_logs('ИУП: перезачет дисциплины №'.$id_zayavka.' предмет№'.$val['predmet']['key'].' предмет:'.$val['predmet']['name'].' препод№'.$prepod_id.' преподФИО:'.$val['prepodfio']);
}
}
}