yeg
2026-09-07 fc717ad1098711df4c50e8e1a7531a9ff32173da
补齐拼接报表指定版本打印权限
1个文件已添加
1个文件已修改
13 ■■■■■ 已修改文件
ruoyi-admin/src/main/java/com/battery/business/web/SpliceReportController.java 1 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/resources/db/migration-final/V18__splice_report_print_permission.sql 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/battery/business/web/SpliceReportController.java
@@ -11,6 +11,7 @@
 @GetMapping("/{id}/editing") @PreAuthorize("@ss.hasPermi('system:splice-report:edit')") public AjaxResult editing(@PathVariable long id){return success(service.get(id,null));}
 @GetMapping("/{id}/versions") @PreAuthorize("@ss.hasPermi('system:splice-report:query')") public AjaxResult history(@PathVariable long id){return success(reports.history(id));}
 @GetMapping("/{id}/versions/{version}") @PreAuthorize("@ss.hasPermi('system:splice-report:query')") public AjaxResult version(@PathVariable long id,@PathVariable int version){return success(service.get(id,version));}
 /** 仅按导出权限读取指定冻结版本;来源测试删除后仍可打印,不登记下载结果。 */
 @GetMapping("/{id}/versions/{version}/print") @PreAuthorize("@ss.hasPermi('system:splice-report:export')") public AjaxResult print(@PathVariable long id,@PathVariable int version){return success(service.get(id,version));}
 @PostMapping("/{id}/versions") @PreAuthorize("@ss.hasPermi('system:splice-report:edit')") public AjaxResult edit(@PathVariable long id,@Valid @RequestBody SpliceReportRequest.Edit r){return success(service.edit(id,r,getUserId(),getUsername()));}
 @PostMapping("/{id}/refresh-source") @PreAuthorize("@ss.hasPermi('system:splice-report:edit')") public AjaxResult refresh(@PathVariable long id,@RequestBody java.util.Map<String,Object> body){return success(service.refresh(id,((Number)body.get("baseVersionNo")).intValue(),String.valueOf(body.getOrDefault("changeSummary","")),getUserId(),getUsername()));}
ruoyi-admin/src/main/resources/db/migration-final/V18__splice_report_print_permission.sql
New file
@@ -0,0 +1,12 @@
-- 既有 V17 未创建正式拼接菜单,指定版本查看与打印必须使用接口对应的权限。
SET @splice_analysis_menu_id = (SELECT menu_id FROM sys_menu WHERE path='data-analysis' AND parent_id=0 LIMIT 1);
INSERT INTO sys_menu(menu_name,parent_id,order_num,path,menu_type,visible,status,perms,create_by,create_time)
SELECT '拼接报表',@splice_analysis_menu_id,3,'report-splice','C','0','0','','system',UTC_TIMESTAMP(3)
WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE path='report-splice' AND parent_id=@splice_analysis_menu_id);
SET @splice_print_menu_id = (SELECT menu_id FROM sys_menu WHERE path='report-splice' AND parent_id=@splice_analysis_menu_id LIMIT 1);
INSERT INTO sys_menu(menu_name,parent_id,order_num,path,menu_type,visible,status,perms,create_by,create_time)
SELECT '查看',@splice_print_menu_id,1,'#','F','0','0','system:splice-report:query','system',UTC_TIMESTAMP(3)
WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE perms='system:splice-report:query');
INSERT INTO sys_menu(menu_name,parent_id,order_num,path,menu_type,visible,status,perms,create_by,create_time)
SELECT '导出',@splice_print_menu_id,5,'#','F','0','0','system:splice-report:export','system',UTC_TIMESTAMP(3)
WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE perms='system:splice-report:export');