Диплом: Автоматизация учета и обработки заявок пользователей на ТО и ремонт оргтехники (Нelp Desk) в компании АО "РСК "МиГ"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
112
echo "<select size='1' name='req_statuses'>";
echo "<option value='0'>любой</option>";
foreach($data['search']['req_statuses'] as $i => $status)
echo "<option
value='".$status['req_st_id']."'".($_POST['req_statuses']==$status['req_st_id
'] ? ' selected' : '').">".$status['req_st_name']."</option>";
echo "</select>";
echo "</td><td>";
echo "<input name='dF' type='text' placeholder='Дата от'
style='float:left;width:100px;' ".($_POST['dF'] != "" ?
"value='".$_POST['dF']."'" : "").">&nbsp;&nbsp;&nbsp;&nbsp;<input name='dT'
type='text' placeholder='Дата до' style='float:none;width:100px;'
".($_POST['dT'] != "" ? "value='".$_POST['dT']."'" : "").">";
echo "</td></tr>";
echo "<tr><td>Тип проблемы</td><td>Приоритет заявки</td></tr>";
echo "<tr><td>";
echo "<select size='1' name='probl_types'>";
echo "<option value='0'>еще не присвоен</option>";
foreach($data['search']['probl_types'] as $i => $type)
echo "<option
value='".$type['probl_ty_id']."'".($_POST['probl_types']==$type['probl_ty_id'
] ? ' selected' : '').">".$type['probl_ty_name']."</option>";
echo "</select>";
echo "</td><td>";
echo "";
echo "<select size='1' name='req_priorities'>";
echo "<option value='0'>еще не определен</option>";
foreach($data['search']['req_priorities'] as $i => $type)
echo "<option
value='".$type['req_pr_id']."'".($_POST['req_priorities']==$type['req_pr_id']
? ' selected' : '').">".$type['req_pr_name']."</option>";
echo "</select>";
echo "</td></tr>";
echo "<tr>";
echo "<td>Выберите ответственного техника</td>";
echo "<td>Введите часть адреса объекта</td>";
echo "</tr>";
echo "<tr>";
echo "<td>";
echo "<select size='1' name='req_tech'>";
113
echo "<option value='0'>еще не определен</option>";
foreach($data['search']['req_tech'] as $i => $userTech)
echo "<option
value='".$userTech['uid']."'".($_POST['req_tech']==$userTech['uid'] ? '
selected' : '').">".$userTech['fname']." ".$userTech['lname']."
".$userTech['tname']."</option>";
echo "</select>";
echo "</td>";
echo "<td><input name='addr' ".($_POST['addr'] != "" ?
"value='".$_POST['addr']."'" : "")." type='text' placeholder='Часть адреса'
style='width:400px;'></td>";
echo "</tr>";
echo "</table>";
echo "<p><input type='submit' name='btneditrequest' value=' Отфильтровать
'></p>";
echo "</form>";
echo "</div>";
//print_r($data['search']);
// Таблица
echo "<table class='requests'>";
if($this->uValid)
{
$w1 = 3;
$w2 = 7;
$w3 = 22;
$w4 = 10;
$w5 = 5;
$w6 = 13;
$w7 = 5;
$w8 = 4;
$w9 = 4;
$w10 = 4;
}
else
{
$w1 = 3;
$w2 = 10;
$w3 = 24;
$w4 = 15;
$w5 = 10;
114
$w6 = 7;
$w7 = 10;
$w8 = 11;
$w9 = 10;
}
$str = "";
$str .= "<col width='$w1%'>";
$str .= "<col width='$w2%'>";
$str .= "<col width='$w3%'>";
$str .= "<col width='$w4%'>";
$str .= "<col width='$w5%'>";
$str .= "<col width='$w6%'>";
$str .= "<col width='$w7%'>";
$str .= "<col width='$w8%'>";
$str .= "<col width='$w9%'>";
if($this->uValid)
$str .= "<col width='$w10%'>";
echo "<tr>$str</tr>";
$str = "";
$str .= "<th>№</th>";
$str .= "<th>Статус</th>";
$str .= "<th>Описание проблемы</th>";
$str .= "<th>Адрес объекта/цеха/участка</th>";
$str .= "<th>Работник, зарегистрировавший заявку</th>";
$str .= "<th>Комментарий отдела ремонта и обслуживания оргтехники</th>";
$str .= "<th>Стоимость работ, руб.</th>";
$str .= "<th>Файлы</th>";
$str .= "<th>Ист-я</th>";
if($this->uValid)
$str .= "<th>Ред.</th>";
echo "<tr>$str</tr>";
$filepath = $s_pref.'/'.$_SESSION['filepath'].'/';
foreach($data['lst'] as $i => $row)
{
$str = "";
$str .= "<td>".$row['req_id']."</td>";
$str .= "<td>".$row['req_st_name']."</td>";
$str .= "<td>".$row['req_info']."</td>";
$str .= "<td>".$row['obj_addr']."</td>";
115
$str .= "<td>".$row['req_empl']."</td>";
$str .= "<td>".$row['req_comm']."</td>";
$str .= "<td>".$row['req_price']."</td>";
$cnt = count($row['files']);
$str1 = "";
for($i=0, $j=1; $i<$cnt; $i++, $j++)
$str1 .= "<a href='$filepath".$row['files'][$i]['req_fi_name']."'
target='_blank'>Файл$j</a> ";
$str .= "<td>".$str1."</td>";
$str .= "<td>&nbsp;<a href='$s_pref/main/showhistory/".$row['req_id']."'
title='Просмотреть историю по заявке'><img src='$s_pref/images/his.png'
/></a></td>";
if($this->uValid)
$str .= "<td>&nbsp;<a href='$s_pref/user/editrequest/".$row['req_id']."'
title='Редактировать заявку'><img src='$s_pref/images/edit.png' /></a></td>";
echo "<tr>$str</tr>";
}
?>
</table>
Форма редактирования заявки
<h3>Редактирование заявки</h3>
<p>&nbsp;</p>
<?php
$req = $data['req'];
$mess = $data['mess'];
$err = $data['err'];
$utype = $data['type'];
echo "<div class='editrequest'>";
if($mess != '')
echo "<p class='".($err ? 'error' : 'success')."'>$mess</p>";
echo "<form action='$s_pref/user/editrequest/".$req['req_id']."'
method='post'>";
echo "<p>Статус заявки</p>";
if($utype==2)
{
foreach($req['req_statuses'] as $i => $status)
if($req['req_st_id']==$status['req_st_id'])
116
echo "<p class='disabled'>".$status['req_st_name']."</p>";
}
else
{
echo "<select size='1' name='req_statuses'>";
echo "<option value='0'>выберите статус</option>";
foreach($req['req_statuses'] as $i => $status)
echo "<option
value='".$status['req_st_id']."'".($req['req_st_id']==$status['req_st_id'] ?
' selected' : '').">".$status['req_st_name']."</option>";
echo "</select>";
}
echo "<p>&nbsp;</p>";
echo "<p>Приоритет заявки</p>";
if($utype==2)
{
foreach($req['req_priorities'] as $i => $type)
if($req['req_pr_id']==$type['req_pr_id'])
echo "<p class='disabled'>".$type['req_pr_name']."</p>";
}
else
{
echo "<select size='1' name='req_priorities'>";
echo "<option value='0'>выберите приоритет</option>";
foreach($req['req_priorities'] as $i => $type)
echo "<option
value='".$type['req_pr_id']."'".($req['req_pr_id']==$type['req_pr_id'] ? '
selected' : '').">".$type['req_pr_name']."</option>";
echo "</select>";
}
echo "<p>&nbsp;</p>";
echo "<p>Тип проблемы</p>";
if($utype==2)
{
foreach($req['probl_types'] as $i => $type)
if($req['probl_ty_id']==$type['probl_ty_id'])
echo "<p class='disabled'>".$type['probl_ty_name']."</p>";
}
else
{
echo "<select size='1' name='probl_types'>";
117
echo "<option value='0'>выберите тип поломки</option>";
foreach($req['probl_types'] as $i => $type)
echo "<option
value='".$type['probl_ty_id']."'".($req['probl_ty_id']==$type['probl_ty_id']
? ' selected' : '').">".$type['probl_ty_name']."</option>";
echo "</select>";
}
echo "<p>&nbsp;</p>";
echo "<p>Заголовок</p>";
if($utype==2)
echo "<p class='disabled'>".$req['req_info']."</p>";
else
echo "<p><textarea rows='2' cols='112'
name='req_info'>".$req['req_info']."</textarea></p>";
echo "<p>&nbsp;</p>";
echo "<p>Адрес/местоположение объекта/цеха/участка</p>";
if($utype==2)
echo "<p class='disabled'>".$req['obj_addr']."</p>";
else
echo "<p><textarea rows='4' cols='112'
name='obj_addr'>".$req['obj_addr']."</textarea></p>";
echo "<p>&nbsp;</p>";
echo "<p>Работник, зарегистрировавший заявку</p>";
if($utype==2)
echo "<p class='disabled'>".$req['req_empl']."</p>";
else
echo "<p><input type='text' name='req_empl'
value='".$req['req_empl']."'></p>";
echo "<p>&nbsp;</p>";
echo "<p>Комментарий отдела ремонта и обслуживания оргтехники</p>";
if($utype==2 && $req['req_st_id']==7)
echo "<p class='disabled'>".$req['req_comm']."</p>";
else
echo "<p><textarea rows='4' cols='112'
name='req_comm'>".$req['req_comm']."</textarea></p>";
echo "<p>&nbsp;</p>";
echo "<p>Стоимость работ, руб.</p>";
if($utype==2)
echo "<p class='disabled'>".$req['req_price']."</p>";
else
118
echo "<p><input type='text' name='req_price'
value='".$req['req_price']."'></p>";
echo "<p>&nbsp;</p>";
echo "<p>Ответственный за выполнение работ по заявке</p>";
if($utype==2)
{
foreach($req['users'] as $i => $user)
if($req['req_resp_id']==$user['uid'])
echo "<p class='disabled'>".$user['pos'].' ('.$user['lname'].'
'.$user['fname'].' '.$user['tname'].'; тел: '.$user['phone'].")</p>";
}
else
{
echo "<select size='1' name='req_resp_id'>";
echo "<option value='0'>выберите ответственного</option>";
foreach($req['users'] as $i => $user)
echo "<option
value='".$user['uid']."'".($req['req_resp_id']==$user['uid'] ? ' selected' :
'').">".$user['pos'].' ('.$user['lname'].' '.$user['fname'].'
'.$user['tname'].'; тел: '.$user['phone'].")</option>";
echo "</select>";
}
if(!($utype==2 && $req['req_st_id']==7))
{
echo "<p>&nbsp;</p>";
echo "<p><input type='submit' name='btneditrequest' value=' Сохранить
'></p>";
}
echo "</form>";
echo "</div>";
?>
Форма вывода табличных данных
<?php
if($this->err != null && trim($this->err)!= "")
View::showMessage($this->err, "error");
if($this->suc != null && trim($this->suc)!= "")
View::showMessage($this->suc, "success");
if($data == $null || !is_array($data) || !isset($data["status"]))
119
{
View::showMessage("Нет данных для отображения", "error");
}
else if($data["status"] != "ok")
{
switch($data["status"])
{
case "db_err": View::showMessage("Ошибка выполнения запроса к БД", "error");
break;
case "arr_not_equal": View::showMessage("Несовпадение длин массивов
параметров запроса", "error"); break;
default: View::showMessage("Неизвестный код ошибки: ".$data["status"],
"error"); break;
}
}
else
{
$adr = $s_pref."/".str_replace("Controller_", "", $this-
>currController)."/".str_replace("action_", "", $this-
>currAction).(count($this->currParams)>0 ? "/".$this->currParams[0] : "");
$cnt = count($data["names"]);
echo "<h3>".$data["alias"]."</h3>";
if(trim($data["comment"]) != "")
echo "<div class='comment'>".$data["comment"]."</div>";
echo "<p>&nbsp;</p>";
echo "<form action='".$adr."' method='post'>";
$w = 210;
for($i=0; $i<$cnt; $i++)
if($data["hidden"][$i] != 0)
$w += $data["widths"][$i];
echo "<table class='edit_table' style='width:".$w."px;'><tr>";
for($i=0; $i<$cnt; $i++)
if($data["hidden"][$i] != 0)
echo "<col width='".$data["widths"][$i]."'>";
echo "<col width='75'>";
echo "<col width='65'>";
for($i=0; $i<$cnt; $i++)
if($data["hidden"][$i] != 0)
echo "<td>".$data["names"][$i]."</td>";
echo "<td>&nbsp;</td><td>&nbsp;</td></tr>";
120
// строка добавления новой записи
echo "<tr>";
for($i=0; $i<$cnt; $i++)
if($data["hidden"][$i] != 0)
echo "<td><input type='text' name='".$data["fields"][$i]."'
style='width:".($data["widths"][$i]-20)."px;' autocomplete='off'
placeholder='Введите \"".$data["names"][$i]."\"' /></td>";
echo "<td><button type='submit' name='btn_action' value='add'
style='width:65px;'>Добавить</button></td><td>&nbsp;</td></tr>";
// отображаем данные
$cnt1 = count($data["data"]);
for($i=0; $i<$cnt1; $i++)
{
echo "<tr>";
for($j=0; $j<$cnt; $j++)
if($data["hidden"][$j] != 0)
{
if($j==6)
echo "<td>"."******"."</td>";
else
echo "<td>".$data["data"][$i][$j]."</td>";
}
$ed = $adr."/edit/".$data["data"][$i][0];
$ed = str_replace("edit/edit/", "edit/", $ed);
$ed = str_replace("delete/edit/", "edit/", $ed);
$de = $adr."/delete/".$data["data"][$i][0];
$de = str_replace("edit/delete/", "delete/", $de);
$de = str_replace("delete/delete/", "delete/", $de);
echo "<td><a href='".$ed."'>Редак-ть</a></td><td><a
href='".$de."'>Удалить</a></td></tr>";
}
echo "</table>";
echo "</form>";
}
?>
Форма изменения табличных данных
<?php
121
if($this->err != null && trim($this->err)!= "")
View::showMessage($this->err, "error");
if($this->suc != null && trim($this->suc)!= "")
View::showMessage($this->suc, "success");
if($data == $null || !is_array($data) || !isset($data["status"]))
{
View::showMessage("Нет данных для отображения", "error");
}
else if($data["status"] != "ok")
{
switch($data["status"])
{
case "db_err": View::showMessage("Ошибка выполнения запроса к БД", "error");
break;
case "arr_not_equal": View::showMessage("Несовпадение длин массивов
параметров запроса", "error"); break;
default: View::showMessage("Неизвестный код ошибки: ".$data["status"],
"error"); break;
}
}
else
{
$adr = $s_pref."/".str_replace("Controller_", "", $this-
>currController)."/".str_replace("action_", "", $this-
>currAction).(count($this->currParams)>0 ? "/".$this->currParams[0] : "");
$cnt = count($data["fields"]);
echo "<h3>".$data["alias"]."</h3>";
echo "<div class='back'><a href='$adr' title='Вернуться назад'><-- Вернуться
назад</a></div>";
$adr .= "/edit/".$data["data"][0][0];
$adr = str_replace("edit/edit/", "edit/", $adr);
if(trim($data["comment"]) != "")
echo "<div class='comment'>".$data["comment"]."</div>";
echo "<p>&nbsp;</p>";
echo "<form action='".$adr."' method='post'>";
$w = 210;
for($i=0; $i<$cnt; $i++)
if($data["hidden"][$i] != 0)
$w += $data["widths"][$i];
echo "<table class='edit_table' style='width:".$w."px;'><tr>";

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)