package com.ruoyi.account.controller;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.ruoyi.account.dto.AccountTransferDto;
|
import com.ruoyi.account.pojo.Account;
|
import com.ruoyi.account.pojo.AccountIncome;
|
import com.ruoyi.account.service.AccountIncomeService;
|
import com.ruoyi.account.service.AccountService;
|
import com.ruoyi.common.utils.SecurityUtils;
|
import com.ruoyi.framework.security.LoginUser;
|
import com.ruoyi.framework.web.domain.AjaxResult;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.util.CollectionUtils;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.annotation.Resource;
|
import javax.servlet.http.HttpServletResponse;
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* 财务管理--资金管理
|
*/
|
@RestController
|
@RequestMapping("/finance/funds")
|
@Api(tags = "财务管理--资金管理")
|
public class AccountController {
|
|
@Resource
|
private AccountService accountService;
|
|
|
/**
|
* 新增流水(自动补全收支方向)
|
* @param account
|
* @return
|
*/
|
@PostMapping("/add")
|
@ApiOperation("新增流水")
|
public AjaxResult add(@RequestBody Account account) {
|
return AjaxResult.success(accountService.saveFlow(account));
|
}
|
|
/**
|
* 转账(生成成对流水)
|
* @param dto
|
* @return
|
*/
|
@PostMapping("/transfer")
|
@ApiOperation("转账")
|
public AjaxResult transfer(@RequestBody AccountTransferDto dto) {
|
return AjaxResult.success(accountService.transfer(dto));
|
}
|
|
/**
|
* 删除
|
* @param ids
|
* @return
|
*/
|
@DeleteMapping()
|
@ApiOperation("删除")
|
public AjaxResult delQualityInspect(@RequestBody List<Integer> ids) {
|
if(CollectionUtils.isEmpty(ids)){
|
return AjaxResult.error("请选择至少一条数据");
|
}
|
if (accountService.listByIds(ids).stream().anyMatch(item -> "2".equals(item.getFlowType()))) {
|
return AjaxResult.error("转账成对流水不可单独删除");
|
}
|
// 删除普通资金流水;转账流水必须保持成对完整
|
return AjaxResult.success(accountService.removeBatchByIds(ids));
|
}
|
|
/**
|
* 修改
|
* @param account
|
* @return
|
*/
|
@PutMapping()
|
@ApiOperation("修改")
|
public AjaxResult update(@RequestBody Account account) {
|
return AjaxResult.success(accountService.updateFlow(account));
|
}
|
|
/**
|
*分页查询
|
* @param page
|
* @return
|
*/
|
@GetMapping("/page")
|
@ApiOperation("分页查询")
|
public AjaxResult accountListPage(Page page,Account account) {
|
return AjaxResult.success(accountService.accountListPage(page,account));
|
}
|
|
|
|
}
|