refactor(ticket): move the config tab into the SPA ticket center
users.php → 工单管理 的「配置」Tab 只管理部门 / 状态 / 预设回复三块 DB 字典,与 SPA「工单中心」已有的 8 个标量配置分裂成两处;且同一套 CRUD 在 admin_post 与 TicketConfigRest 里各写了一遍,REST 侧此前 没有任何调用方。 - 删除原生 config tab:UsersMenusTicketsConfig.php 整份移除, UsersMenusTicketsCenter 由 512 行降到 251 行(六个写处理方法、 分发分支、十条提示码与 ticket_delete_button 一并清理) - SPA /users/ticket 改为 customPage:内嵌 SchemaPage 承载原有 8 字段, 三块字典改为 n-data-table + n-modal + n-dialog,取色器/管理员多选/ 拖拽排序替代原生手填表单 - TicketConfigRest 成为三块字典的唯一实现,新增 api/modules/tickets.js 封装 aksrt/v1/admin/tickets* - 双向深链:原生页跳 SPA 配置页,SPA 页跳回原生工单列表 契约测试同步更新,并新增 ticket-spa-config-contract 守护接线。 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
d32bdc0581
commit
e7ca0ee5df
19 files changed
+1074
-509
No files matched your search
@@ -205,7 +205,6 @@ trait UsersMenusTicketsList {
|
||||
$html .= '<input type="hidden" name="action" value="aksrt_ticket_update" />';
|
||||
$html .= '<input type="hidden" name="ticket_action" value="reply" />';
|
||||
$html .= '<input type="hidden" name="ticket_id" value="' . esc_attr((string) $id) . '" />';
|
||||
$html .= '<input type="hidden" name="ticket_tab" value="tickets" />';
|
||||
$html .= wp_nonce_field('aksrt_ticket_reply_' . $id, '_wpnonce', true, false);
|
||||
$html .= '<p><textarea name="content" rows="3" class="large-text" placeholder="' . esc_attr__('填写回复内容', 'aksrt') . '"></textarea></p>';
|
||||
$html .= '<p><button type="submit" class="button button-primary">' . esc_html__('提交回复', 'aksrt') . '</button></p>';
|
||||
@@ -217,7 +216,6 @@ trait UsersMenusTicketsList {
|
||||
$html .= '<input type="hidden" name="action" value="aksrt_ticket_update" />';
|
||||
$html .= '<input type="hidden" name="ticket_action" value="status" />';
|
||||
$html .= '<input type="hidden" name="ticket_id" value="' . esc_attr((string) $id) . '" />';
|
||||
$html .= '<input type="hidden" name="ticket_tab" value="tickets" />';
|
||||
$html .= wp_nonce_field('aksrt_ticket_status_' . $id, '_wpnonce', true, false);
|
||||
$html .= '<p><label>' . esc_html__('状态', 'aksrt') . ' <select name="status">';
|
||||
foreach (\AKSRT\Ticket\TicketStatusService::all() as $row) {
|
||||
@@ -259,7 +257,6 @@ trait UsersMenusTicketsList {
|
||||
$html .= '<input type="hidden" name="action" value="aksrt_ticket_update" />';
|
||||
$html .= '<input type="hidden" name="ticket_action" value="note" />';
|
||||
$html .= '<input type="hidden" name="ticket_id" value="' . esc_attr((string) $id) . '" />';
|
||||
$html .= '<input type="hidden" name="ticket_tab" value="tickets" />';
|
||||
$html .= wp_nonce_field('aksrt_ticket_note_' . $id, '_wpnonce', true, false);
|
||||
$html .= '<p><input type="text" name="content" class="large-text" placeholder="' . esc_attr__('添加内部备注(用户不可见)', 'aksrt') . '" /> '
|
||||
. '<button type="submit" class="button">' . esc_html__('添加备注', 'aksrt') . '</button></p>';
|
||||
|
||||
Reference in new issue
Block a user