refactor(curd): 移除生成模板与框架页面 data-auth 声明(含 uploadfile 权限映射回归本页节点的行为变化说明)

- CURD 生成模板 index.code 删除 6 个 data-auth 属性行,生成页面零权限声明
- extend/base 13 个列表页 index.html 清理全部 data-auth-* 声明(含注释文本同步改写)
- system/host/index.js 的 set-master 按钮 auth 改写为全节点 'system.host/setMaster'
  (驼峰动作段逐字保留,parseNodeStr 仅 snake 化控制器段);system/auth 的
  assignUsers 解析后与注册节点逐字相等,无需改写
- 行为变化:system/uploadfile 页原 data-auth-add/edit/delete 误映射 system.menu/*
  (上游模板复制残留),删除后按钮按本页 system.uploadfile/* 节点判定——该页
  控制器仅注册 delete 动作,非超管用户的添加按钮从此正确隐藏(现状是
  有 system.menu/add 权限即显示但点击被后端拒绝),data-auth-edit 为死属性
  (本页无编辑按钮)
- VersionBase::VERSION v2.7.0 → v2.8.0,使 admin-core.js 静态引用缓存键
  (?t=get_site_version_key())失效,防下游升级后旧缓存 js 叠加新布局导致
  非超管按钮全隐
This commit is contained in:
augushong
2026-10-04 01:31:36 +00:00
parent fa89908c4b
commit 45bc4a7f43
16 changed files with 5 additions and 60 deletions

View File

@@ -1,12 +1,6 @@
<div class="layuimini-container"> <div class="layuimini-container">
<div class="layuimini-main"> <div class="layuimini-main">
<table id="currentTable" class="layui-table layui-hide" <table id="currentTable" class="layui-table layui-hide"
data-auth-index="{:auth('{{controllerUrl}}/index')}"
data-auth-add="{:auth('{{controllerUrl}}/add')}"
data-auth-edit="{:auth('{{controllerUrl}}/edit')}"
data-auth-delete="{:auth('{{controllerUrl}}/delete')}"
data-auth-export="{:auth('{{controllerUrl}}/export')}"
data-auth-modify="{:auth('{{controllerUrl}}/modify')}"
lay-filter="currentTable"> lay-filter="currentTable">
</table> </table>
</div> </div>

View File

@@ -1,10 +1,6 @@
<div class="layuimini-container"> <div class="layuimini-container">
<div class="layuimini-main"> <div class="layuimini-main">
<table id="currentTable" class="layui-table layui-hide" <table id="currentTable" class="layui-table layui-hide"
data-auth-add="{:auth('mall.cate/add')}"
data-auth-edit="{:auth('mall.cate/edit')}"
data-auth-delete="{:auth('mall.cate/delete')}"
data-auth-modify="{:auth('mall.cate/modify')}"
lay-filter="currentTable"> lay-filter="currentTable">
</table> </table>
</div> </div>

View File

@@ -1,11 +1,6 @@
<div class="layuimini-container"> <div class="layuimini-container">
<div class="layuimini-main"> <div class="layuimini-main">
<table id="currentTable" class="layui-table layui-hide" <table id="currentTable" class="layui-table layui-hide"
data-auth-add="{:auth('mall.goods/add')}"
data-auth-edit="{:auth('mall.goods/edit')}"
data-auth-delete="{:auth('mall.goods/delete')}"
data-auth-stock="{:auth('mall.goods/stock')}"
data-auth-modify="{:auth('mall.goods/modify')}"
lay-filter="currentTable"> lay-filter="currentTable">
</table> </table>
</div> </div>
@@ -67,7 +62,7 @@
</div> </div>
</div> </div>
<!-- 底部:创建时间 + 操作按钮组(_operatHtml 为操作列渲染产物: <!-- 底部:创建时间 + 操作按钮组(_operatHtml 为操作列渲染产物:
编辑/入库/详情/删除,已按 data-auth-* 裁剪权限),点击行为由 编辑/入库/详情/删除,已按当前登录者权限裁剪),点击行为由
框架页面级委托承接 --> 框架页面级委托承接 -->
<div class="ua-data-card-footer goodscard-footer"> <div class="ua-data-card-footer goodscard-footer">
<span class="ua-data-card-time goodscard-time">{{ d.create_time }}</span> <span class="ua-data-card-time goodscard-time">{{ d.create_time }}</span>

View File

@@ -1,10 +1,6 @@
<div class="layuimini-container"> <div class="layuimini-container">
<div class="layuimini-main"> <div class="layuimini-main">
<table id="currentTable" class="layui-table layui-hide" <table id="currentTable" class="layui-table layui-hide"
data-auth-add="{:auth('mall.tag/add')}"
data-auth-edit="{:auth('mall.tag/edit')}"
data-auth-delete="{:auth('mall.tag/delete')}"
lay-filter="currentTable"> lay-filter="currentTable">
</table> </table>
</div> </div>

View File

@@ -1,6 +1,6 @@
<div class="layuimini-container"> <div class="layuimini-container">
<div class="layuimini-main"> <div class="layuimini-main">
<table id="currentTable" class="layui-table layui-hide" data-auth-add="{:auth('system.admin/add')}" data-auth-edit="{:auth('system.admin/edit')}" data-auth-delete="{:auth('system.admin/delete')}" data-auth-password="{:auth('system.admin/password')}" data-auth-modify="{:auth('system.admin/modify')}" lay-filter="currentTable"> <table id="currentTable" class="layui-table layui-hide" lay-filter="currentTable">
</table> </table>
</div> </div>
</div> </div>
@@ -64,7 +64,7 @@
</div> </div>
<!-- 底部:上边框分隔,左创建时间(模型获取器已格式化)右操作按钮组 <!-- 底部:上边框分隔,左创建时间(模型获取器已格式化)右操作按钮组
(_operatHtml 为操作列渲染产物:编辑/设置密码/删除,已按 (_operatHtml 为操作列渲染产物:编辑/设置密码/删除,已按
data-auth-* 裁剪权限),点击行为由框架页面级委托承接 --> 当前登录者权限裁剪),点击行为由框架页面级委托承接 -->
<div class="usercard-footer"> <div class="usercard-footer">
<span class="usercard-time">{{ d.create_time }}</span> <span class="usercard-time">{{ d.create_time }}</span>
<div class="ua-data-card-operat usercard-operat" v-html="d._operatHtml"></div> <div class="ua-data-card-operat usercard-operat" v-html="d._operatHtml"></div>

View File

@@ -1,12 +1,6 @@
<div class="layuimini-container"> <div class="layuimini-container">
<div class="layuimini-main"> <div class="layuimini-main">
<table id="currentTable" class="layui-table layui-hide" <table id="currentTable" class="layui-table layui-hide"
data-auth-add="{:auth('system.auth/add')}"
data-auth-edit="{:auth('system.auth/edit')}"
data-auth-delete="{:auth('system.auth/delete')}"
data-auth-authorize="{:auth('system.auth/authorize')}"
data-auth-assignUsers="{:auth('system.auth/assignUsers')}"
data-auth-modify="{:auth('system.auth/modify')}"
lay-filter="currentTable"> lay-filter="currentTable">
</table> </table>
</div> </div>

View File

@@ -1,9 +1,6 @@
<div class="layuimini-container"> <div class="layuimini-container">
<div class="layuimini-main"> <div class="layuimini-main">
<table id="currentTable" class="layui-table layui-hide" <table id="currentTable" class="layui-table layui-hide"
data-auth-index="{:auth('system.host/index')}"
data-auth-set-master="{:auth('system.host/setMaster')}"
data-auth-modify="{:auth('system.host/modify')}"
lay-filter="currentTable"> lay-filter="currentTable">
</table> </table>
</div> </div>

View File

@@ -30,7 +30,7 @@ $(function(){
field: function(data) { field: function(data) {
return {node_id: data.node_id}; return {node_id: data.node_id};
}, },
auth: 'set-master', auth: 'system.host/setMaster',
class: 'layui-btn layui-btn-xs layui-btn-warm', class: 'layui-btn layui-btn-xs layui-btn-warm',
title: '确认将该节点设为主节点?切换后原主节点将变为从节点。', title: '确认将该节点设为主节点?切换后原主节点将变为从节点。',
_if: function(data) { _if: function(data) {

View File

@@ -1,12 +1,6 @@
<div class="layuimini-container"> <div class="layuimini-container">
<div class="layuimini-main"> <div class="layuimini-main">
<table id="currentTable" class="layui-table layui-hide" <table id="currentTable" class="layui-table layui-hide"
data-auth-index="{:auth('system.mcp_key/index')}"
data-auth-add="{:auth('system.mcp_key/add')}"
data-auth-edit="{:auth('system.mcp_key/edit')}"
data-auth-delete="{:auth('system.mcp_key/delete')}"
data-auth-modify="{:auth('system.mcp_key/modify')}"
data-auth-authorize="{:auth('system.mcp_key/authorize')}"
lay-filter="currentTable"> lay-filter="currentTable">
</table> </table>
</div> </div>

View File

@@ -1,8 +1,6 @@
<div class="layuimini-container"> <div class="layuimini-container">
<div class="layuimini-main"> <div class="layuimini-main">
<table id="currentTable" class="layui-table layui-hide" <table id="currentTable" class="layui-table layui-hide"
data-auth-index="{:auth('system.mcp_log/index')}"
data-auth-delete="{:auth('system.mcp_log/delete')}"
lay-filter="currentTable"> lay-filter="currentTable">
</table> </table>
</div> </div>

View File

@@ -9,10 +9,6 @@
<div class="layuimini-container"> <div class="layuimini-container">
<div class="layuimini-main"> <div class="layuimini-main">
<table id="currentTable" class="layui-table layui-hide" <table id="currentTable" class="layui-table layui-hide"
data-auth-add="{:auth('system.menu/add')}"
data-auth-edit="{:auth('system.menu/edit')}"
data-auth-delete="{:auth('system.menu/delete')}"
data-auth-modify="{:auth('system.menu/modify')}"
lay-filter="currentTable"> lay-filter="currentTable">
</table> </table>
</div> </div>

View File

@@ -1,10 +1,6 @@
<div class="layuimini-container"> <div class="layuimini-container">
<div class="layuimini-main"> <div class="layuimini-main">
<table id="currentTable" class="layui-table layui-hide" <table id="currentTable" class="layui-table layui-hide"
data-auth-add="{:auth('system.quick/add')}"
data-auth-edit="{:auth('system.quick/edit')}"
data-auth-delete="{:auth('system.quick/delete')}"
data-auth-modify="{:auth('system.quick/modify')}"
lay-filter="currentTable"> lay-filter="currentTable">
</table> </table>
</div> </div>

View File

@@ -17,12 +17,6 @@
</div> </div>
<table id="currentTable" class="layui-table layui-hide" <table id="currentTable" class="layui-table layui-hide"
data-auth-index="{:auth('system.timer_config/index')}"
data-auth-edit="{:auth('system.timer_config/edit')}"
data-auth-read="{:auth('system.timer_config/read')}"
data-auth-export="{:auth('system.timer_config/export')}"
data-auth-modify="{:auth('system.timer_config/modify')}"
data-auth-trigger="{:auth('system.timer_config/trigger')}"
lay-filter="currentTable"> lay-filter="currentTable">
</table> </table>
</div> </div>

View File

@@ -1,8 +1,6 @@
<div class="layuimini-container"> <div class="layuimini-container">
<div class="layuimini-main"> <div class="layuimini-main">
<table id="currentTable" class="layui-table layui-hide" <table id="currentTable" class="layui-table layui-hide"
data-auth-index="{:auth('system.timer_log/index')}"
data-auth-read="{:auth('system.timer_log/read')}"
lay-filter="currentTable"> lay-filter="currentTable">
</table> </table>
</div> </div>

View File

@@ -1,9 +1,6 @@
<div class="layuimini-container"> <div class="layuimini-container">
<div class="layuimini-main"> <div class="layuimini-main">
<table id="currentTable" class="layui-table layui-hide" <table id="currentTable" class="layui-table layui-hide"
data-auth-add="{:auth('system.menu/add')}"
data-auth-edit="{:auth('system.menu/edit')}"
data-auth-delete="{:auth('system.menu/delete')}"
lay-filter="currentTable"> lay-filter="currentTable">
</table> </table>
</div> </div>

View File

@@ -27,7 +27,7 @@ use think\console\Output;
*/ */
class VersionBase extends Command class VersionBase extends Command
{ {
public const VERSION = 'v2.7.0'; public const VERSION = 'v2.8.0';
public const PRODUCT_VERSION = ''; public const PRODUCT_VERSION = '';