EIOS/inc/iup_zamdekan.php

277 lines
15 KiB
PHP
Raw Normal View History

2023-12-28 15:39:22 +03:00
<?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']);
}
}
}