package com.battery.business.web; import com.battery.business.report.SpliceFieldTemplateService; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import jakarta.validation.Valid; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; /** 拼接模板沿用所属报表动作权限,不接触其他类型模板。 */ @RestController @RequestMapping("/system/splice-report/templates") public class SpliceFieldTemplateController extends BaseController { private final SpliceFieldTemplateService service; public SpliceFieldTemplateController(SpliceFieldTemplateService service) { this.service = service; } /** 查看、新增或编辑权限均可读取拼接模板。 */ @GetMapping @PreAuthorize("@ss.hasAnyPermi('system:splice-report:query,system:splice-report:add,system:splice-report:edit')") public AjaxResult list() { return success(service.list()); } /** 新增只接收字段结构。 */ @PostMapping @PreAuthorize("@ss.hasPermi('system:splice-report:add')") public AjaxResult create(@Valid @RequestBody SpliceFieldTemplateService.Request request) { return success(service.create(request, getUserId(), getUsername())); } /** 显式更新不会改变已保存版本。 */ @PutMapping("/{id}") @PreAuthorize("@ss.hasPermi('system:splice-report:edit')") public AjaxResult update(@PathVariable long id, @Valid @RequestBody SpliceFieldTemplateService.Request request) { service.update(id, request); return success(); } }