工单系统(navgcn_ticket)
插件简介
本插件为 Xiuno X / XIUNOX 论坛提供完整的工单反馈能力。前台用户可提交带图片附件的工单、查看处理进度与回复;后台管理员可回复工单、流转状态、批量处理,并通过站内通知与邮件通知同步告知双方。
当前版本:1.2.3
主要功能
前台提交工单:标题、联系邮箱、问题描述,支持图片上传与即时预览
用户工单列表与详情:状态标签、图片放大查看、操作日志
管理员处理:回复工单、状态变更、删除工单、批量操作
通知体系:新工单通知管理员;回复/状态变更通知对应用户
邮件通知:异步邮件队列,SMTP 配置后自动发信,不阻塞用户操作
显示控制:支持在顶部导航栏、个人中心侧边栏、发现页显示/隐藏入口
参数配置:每日提交上限、图片体积/数量限制、通知开关等
安装与卸载
安装
上传插件到
plugin/navgcn_ticket/在后台“插件管理”中安装并启用
如需邮件通知,请在站点根目录配置
conf/smtp.conf.php
卸载
在后台“插件管理”中卸载
插件会自动删除数据表、配置项与编译缓存
上传附件目录
upload/plugin/navgcn_ticket/保留不删,避免误删用户图片
使用说明
用户端
通过顶部导航或发现页进入“工单中心”
提交工单后可在列表查看状态,详情页可追加回复
仅能查看和操作本人提交的工单
管理端
后台侧边栏“工单管理”进入管理列表
支持按状态、时间、关键词筛选,支持批量改状态/删除
进入工单详情可回复、变更状态、删除工单
后台设置页可调整限制项与显示开关
前台入口
工单列表:
ticket提交工单:
ticket-submit工单详情:
ticket-view-{ticketid}
后台入口
工单管理列表:
ticket_admin参数配置:
ticket_admin&tab=settings
技术说明
遵循 XIUNOX 插件开发规范,使用
db_*系列函数操作数据库(表名不含前缀)所有 hook 局部变量均使用插件前缀
$_ticket_*,与宿主及其他插件作用域完全隔离所有 PHP hook 以
<?php exit;开头防直接访问;.htmhook 仅用<?php所有共享作用域
.htmhook(顶部导航 / 后台侧栏 / 发现页)调用 Service 前均有class_exists守卫与兜底加载,编译缓存任何代际下都不会产生Class not foundfatal前台页面统一使用
layout_three_column.inc.htm三栏骨架,模板自含 header / footer所有 POST 操作均经过
CsrfService::check()验证,表单带 CSRF Token输出转义统一
esc_html()/esc_attr()/esc_js()(含 JS 字符串字面量)前端使用 Bootstrap 5 + Tabler Icons,交互使用原生 JS,无 jQuery / Alpine.js
后台页面原生 JS + Bootstrap,轻提示用
XN.toast(),确认弹窗用XN.confirm()(均带降级兜底)表单提交按钮统一禁用 + loading 状态,防止重复提交
分页与筛选 URL 的参数分隔符根据
url()返回值是否含?动态决定后台筛选表单由 JS 拦截构建双
?格式 URL,保证路由信息不丢失数据库表使用
utf8mb4字符集,结构变更走upgrade.php幂等迁移图片上传按年月分目录存储,自动生成缩略图
邮件通知采用异步发送,避免阻塞用户操作
通知链接使用核心
absolute_url()生成,兼容子目录部署状态流转与回复均记录操作日志
数据表
表名 | 用途 |
|---|---|
| 工单主表 |
| 工单回复表 |
| 附件表 |
| 操作日志表 |
自检报告
检查日期
2026-08-22
检查依据
XIUNOX 插件开发规范(
xiunox-plugin-devskill)AI 协作硬规则(
references/ai-rules.md)项目规范(
rules/project_rules.md)修复与反思规则(
rules/bugfix_rules.md)代码风格规则(
rules/ponytail.md)
检查范围
插件元数据与目录结构
安装 / 卸载 / 升级脚本
Service 层、路由、hook、模板、静态资源
与其他插件共存时的作用域隔离、路由注册、编译产物一致性
运行时验证(清缓存重编译后逐页实测)




版本:v1.2.3
适用版本:1.1
开发者:cywxmz


