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>
|