175 lines
4.7 KiB
HTML
175 lines
4.7 KiB
HTML
<form class="layui-form page-content p-4">
|
||
<input
|
||
type="hidden"
|
||
name="id"
|
||
id="id"
|
||
value="<?php echo isset($view['id']) ? $view['id'] : ''; ?>"
|
||
/>
|
||
<h3 class="h3-title">工单详情 - ID:{$view['id']}</h3>
|
||
<table class="layui-table layui-table-form">
|
||
<tr>
|
||
<td class="layui-td-gray-2">工单状态</td>
|
||
<td>
|
||
<?php
|
||
$statusMap = [
|
||
0 =>
|
||
"未解决", 1 => "解决中", 2 => "已解决", 3 => "已关闭" ]; $statusClass =
|
||
isset($view['status']) ? 'gdzt gd-' . intval($view['status']) : '';
|
||
$statusText = (isset($view['status']) &&
|
||
isset($statusMap[$view['status']])) ? $statusMap[$view['status']] : '-';
|
||
?>
|
||
<span class="<?php echo $statusClass; ?>"
|
||
><?php echo $statusText; ?></span
|
||
>
|
||
</td>
|
||
<td class="layui-td-gray-2">隶属项目</td>
|
||
<td>{$view['project_id']}</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="layui-td-gray-2">提交人</td>
|
||
<td>{$view['creater']}</td>
|
||
<td class="layui-td-gray-2">提交人项目ID</td>
|
||
<td>{$view['uid']}</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="layui-td-gray-2">联系电话</td>
|
||
<td>{$view['contact']}</td>
|
||
<td class="layui-td-gray-2">电子邮箱</td>
|
||
<td>{$view['email']}</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="layui-td-gray-2">提交时间</td>
|
||
<td>{$view['sub_time']}</td>
|
||
<td class="layui-td-gray-2">分派处理人</td>
|
||
<td>
|
||
<?php echo isset($view['solve']) && $view['solve'] !== '' ? $view['solve'] : '暂无'; ?>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="layui-td-gray-2">问题类型</td>
|
||
<td>{$view['problemtype']}</td>
|
||
<td class="layui-td-gray-2">项目工单ID</td>
|
||
<td>{$view['project_order_id']}</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="layui-td-gray-2">项目问题</td>
|
||
<td colspan="4">
|
||
<div id="workorder-content">
|
||
<?= $view['content'] ?>
|
||
</div>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="layui-td-gray-2">备注</td>
|
||
<td colspan="4">{$view.remark}</td>
|
||
</tr>
|
||
</table>
|
||
</form>
|
||
|
||
<script>
|
||
// 获取URL参数id
|
||
function getQueryId() {
|
||
var match = window.location.pathname.match(/\/edit\/id\/(\d+)/);
|
||
return match ? match[1] : "";
|
||
}
|
||
var id = getQueryId();
|
||
// 赋值给input(如果不是php渲染,也可保留此段,防止页面未渲染id时赋值)
|
||
document.addEventListener("DOMContentLoaded", function () {
|
||
var idInput = document.getElementById("id");
|
||
if (idInput && !idInput.value) {
|
||
idInput.value = id;
|
||
}
|
||
});
|
||
|
||
layui.use(["form", "layer", "upload"], function () {
|
||
var form = layui.form,
|
||
layer = layui.layer,
|
||
upload = layui.upload;
|
||
|
||
layer.photos({
|
||
photos: "#workorder-content",
|
||
anim: 5,
|
||
});
|
||
|
||
var selectedFile = null; // 用于存储选择的文件
|
||
|
||
form.render();
|
||
|
||
// 监听提交事件
|
||
form.on("submit(webform)", function (data) {
|
||
// 发送请求并处理响应
|
||
fetch("/download/index/edit?id=" + idValue, {
|
||
method: "POST",
|
||
body: JSON.stringify({
|
||
id: document.getElementById("id").value,
|
||
name: document.getElementById("name").value,
|
||
cid: document.querySelector('select[name="cid"]').value,
|
||
version: document.querySelector('input[name="version"]').value,
|
||
path: document.querySelector('input[name="path"]').value,
|
||
download_url: document.querySelector('input[name="download_url"]')
|
||
.value,
|
||
download_code: document.querySelector('input[name="download_code"]')
|
||
.value,
|
||
description: document.querySelector('textarea[name="description"]')
|
||
.value,
|
||
update_time: updateTime,
|
||
}),
|
||
|
||
headers: {
|
||
"Content-Type": "application/json",
|
||
},
|
||
})
|
||
.then((response) => response.json())
|
||
.then((result) => {
|
||
layer.msg(result.msg);
|
||
if (result.code === 2) {
|
||
setTimeout(function () {
|
||
// document.querySelector("form").reset();
|
||
// location.reload(); // 刷新页面
|
||
}, 1000);
|
||
}
|
||
});
|
||
|
||
return false;
|
||
});
|
||
});
|
||
</script>
|
||
<style>
|
||
.layui-table td {
|
||
height: 40px;
|
||
}
|
||
.gdzt {
|
||
padding: 3px 5px;
|
||
border-radius: 4px;
|
||
}
|
||
|
||
.gd-0 {
|
||
color: #555;
|
||
background-color: #eee;
|
||
}
|
||
|
||
.gd-1 {
|
||
color: #fff;
|
||
background-color: #1e9fff;
|
||
}
|
||
|
||
.gd-2 {
|
||
color: #fff;
|
||
background-color: #16b777;
|
||
}
|
||
|
||
.gd-3 {
|
||
color: #fff;
|
||
background-color: #a233c6;
|
||
}
|
||
.pt-1 {
|
||
margin-top: 15px;
|
||
}
|
||
.page-content img {
|
||
padding: 15px;
|
||
}
|
||
.layui-layer-shade {
|
||
background-color: rgba(0, 0, 0, 0.5) !important;
|
||
}
|
||
</style>
|