package com.ruoyi.account.controller.financial; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.account.bean.dto.financial.FinIdBatchDto; import com.ruoyi.account.bean.dto.financial.FinIntangibleAssetDto; import com.ruoyi.account.pojo.financial.FinIntangibleAsset; import com.ruoyi.account.service.financial.FinIntangibleAssetService; import com.ruoyi.framework.aspectj.lang.annotation.Log; import com.ruoyi.framework.aspectj.lang.enums.BusinessType; import com.ruoyi.framework.web.domain.R; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import java.util.Arrays; /** * 无形资产控制器。 */ @RestController @RequestMapping("/financial/intangibleAsset") @RequiredArgsConstructor @Tag(name = "财务管理-无形资产") public class FinIntangibleAssetController { private final FinIntangibleAssetService finIntangibleAssetService; @GetMapping("/page") @Operation(summary = "无形资产分页查询") public R> page(Page page, FinIntangibleAssetDto queryDto) { return R.ok(finIntangibleAssetService.pageList(page, queryDto)); } @PostMapping("/add") @Log(title = "无形资产", businessType = BusinessType.INSERT) @Operation(summary = "新增无形资产") public R add(@RequestBody FinIntangibleAssetDto dto) { return R.ok(finIntangibleAssetService.add(dto)); } @PutMapping("/update") @Log(title = "无形资产", businessType = BusinessType.UPDATE) @Operation(summary = "修改无形资产") public R update(@RequestBody FinIntangibleAssetDto dto) { return R.ok(finIntangibleAssetService.update(dto)); } @DeleteMapping("/delete") @Log(title = "无形资产", businessType = BusinessType.DELETE) @Operation(summary = "删除无形资产") public R delete(@RequestParam("ids") Long[] ids) { return R.ok(finIntangibleAssetService.deleteByIds(Arrays.asList(ids))); } @PostMapping("/amortize") @Log(title = "无形资产摊销计提", businessType = BusinessType.UPDATE) @Operation(summary = "无形资产按月计提摊销") public R amortize(@RequestBody(required = false) FinIdBatchDto dto) { return R.ok(finIntangibleAssetService.amortize(dto == null ? null : dto.getIds())); } }