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.FinVoucherDto;
|
import com.ruoyi.account.bean.dto.financial.FinVoucherPageDto;
|
import com.ruoyi.account.bean.dto.financial.FinVoucherStatusDto;
|
import com.ruoyi.account.bean.vo.financial.FinVoucherDetailVo;
|
import com.ruoyi.account.pojo.financial.FinVoucher;
|
import com.ruoyi.account.service.financial.FinVoucherService;
|
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.*;
|
|
/**
|
* 凭证控制器。
|
*/
|
@RestController
|
@RequestMapping("/financial/voucher")
|
@RequiredArgsConstructor
|
@Tag(name = "财务管理-凭证")
|
public class FinVoucherController {
|
|
private final FinVoucherService finVoucherService;
|
|
@GetMapping("/page")
|
@Operation(summary = "凭证分页查询")
|
public R<IPage<FinVoucher>> page(Page<FinVoucher> page, FinVoucherPageDto queryDto) {
|
return R.ok(finVoucherService.pageList(page, queryDto));
|
}
|
|
@PostMapping("/add")
|
@Log(title = "凭证", businessType = BusinessType.INSERT)
|
@Operation(summary = "新增凭证")
|
public R<Boolean> add(@RequestBody FinVoucherDto dto) {
|
return R.ok(finVoucherService.addVoucher(dto));
|
}
|
|
@PutMapping("/update")
|
@Log(title = "凭证", businessType = BusinessType.UPDATE)
|
@Operation(summary = "修改凭证")
|
public R<Boolean> update(@RequestBody FinVoucherDto dto) {
|
return R.ok(finVoucherService.updateVoucher(dto));
|
}
|
|
@PostMapping("/post")
|
@Log(title = "凭证过账", businessType = BusinessType.UPDATE)
|
@Operation(summary = "凭证过账")
|
public R<Boolean> post(@RequestBody FinVoucherStatusDto dto) {
|
return R.ok(finVoucherService.postVoucher(dto.getId()));
|
}
|
|
@PostMapping("/cancel")
|
@Log(title = "凭证作废", businessType = BusinessType.UPDATE)
|
@Operation(summary = "凭证作废")
|
public R<Boolean> cancel(@RequestBody FinVoucherStatusDto dto) {
|
return R.ok(finVoucherService.cancelVoucher(dto.getId()));
|
}
|
|
@GetMapping("/detail/{id}")
|
@Operation(summary = "凭证详情")
|
public R<FinVoucherDetailVo> detail(@PathVariable("id") Long id) {
|
return R.ok(finVoucherService.detail(id));
|
}
|
}
|