From 59a02d641539901383fa4c2de118e1d7efa33e60 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期一, 19 一月 2026 17:50:04 +0800
Subject: [PATCH] 资金管理+财务对账

---
 src/main/java/com/ruoyi/account/mapper/AccountMapper.java                          |   19 ++
 src/main/java/com/ruoyi/account/pojo/AccountReconciliation.java                    |   88 +++++++++++
 src/main/java/com/ruoyi/account/service/impl/AccountReconciliationServiceImpl.java |   21 ++
 src/main/java/com/ruoyi/account/service/impl/AccountServiceImpl.java               |   36 ++++
 src/main/java/com/ruoyi/account/service/AccountReconciliationService.java          |   10 +
 src/main/java/com/ruoyi/account/mapper/AccountReconciliationMapper.java            |   11 +
 src/main/java/com/ruoyi/account/controller/AccountReconciliationController.java    |   79 +++++++++
 src/main/java/com/ruoyi/account/service/AccountService.java                        |   16 ++
 src/main/java/com/ruoyi/account/controller/AccountController.java                  |   83 ++++++++++
 src/main/java/com/ruoyi/account/pojo/Account.java                                  |   94 +++++++++++
 10 files changed, 457 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/ruoyi/account/controller/AccountController.java b/src/main/java/com/ruoyi/account/controller/AccountController.java
new file mode 100644
index 0000000..50f1b60
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/controller/AccountController.java
@@ -0,0 +1,83 @@
+package com.ruoyi.account.controller;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+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()
+    @ApiOperation("鏂板")
+    public AjaxResult add(@RequestBody Account account) {
+        return AjaxResult.success(accountService.save(account));
+    }
+
+    /**
+     * 鍒犻櫎
+     * @param ids
+     * @return
+     */
+    @DeleteMapping()
+    @ApiOperation("鍒犻櫎")
+    public AjaxResult delQualityInspect(@RequestBody List<Integer> ids) {
+        if(CollectionUtils.isEmpty(ids)){
+            return AjaxResult.error("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�");
+        }
+        //鍒犻櫎妫�楠屽崟
+        return AjaxResult.success(accountService.removeBatchByIds(ids));
+    }
+
+    /**
+     * 淇敼
+     * @param account
+     * @return
+     */
+    @PutMapping()
+    @ApiOperation("淇敼")
+    public AjaxResult update(@RequestBody Account account) {
+        return AjaxResult.success(accountService.updateById(account));
+    }
+
+    /**
+     *鍒嗛〉鏌ヨ
+     * @param page
+     * @return
+     */
+    @GetMapping("/page")
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    public AjaxResult accountListPage(Page page) {
+        return AjaxResult.success(accountService.page(page));
+    }
+
+
+
+}
diff --git a/src/main/java/com/ruoyi/account/controller/AccountReconciliationController.java b/src/main/java/com/ruoyi/account/controller/AccountReconciliationController.java
new file mode 100644
index 0000000..77ceec9
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/controller/AccountReconciliationController.java
@@ -0,0 +1,79 @@
+package com.ruoyi.account.controller;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.account.pojo.Account;
+import com.ruoyi.account.pojo.AccountReconciliation;
+import com.ruoyi.account.service.AccountReconciliationService;
+import com.ruoyi.account.service.AccountService;
+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 java.util.List;
+
+/**
+ * 璐㈠姟绠$悊--璐㈠姟瀵硅处
+ */
+@RestController
+@RequestMapping("/finance/reconciliation")
+@Api(tags = "璐㈠姟绠$悊--璐㈠姟瀵硅处")
+public class AccountReconciliationController {
+
+    @Resource
+    private AccountReconciliationService accountReconciliationService;
+
+
+    /**
+     * 鏂板
+     * @param accountReconciliation
+     * @return
+     */
+    @PostMapping()
+    @ApiOperation("鏂板")
+    public AjaxResult add(@RequestBody AccountReconciliation accountReconciliation) {
+        return AjaxResult.success(accountReconciliationService.save(accountReconciliation));
+    }
+
+    /**
+     * 鍒犻櫎
+     * @param ids
+     * @return
+     */
+    @DeleteMapping()
+    @ApiOperation("鍒犻櫎")
+    public AjaxResult delQualityInspect(@RequestBody List<Integer> ids) {
+        if(CollectionUtils.isEmpty(ids)){
+            return AjaxResult.error("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�");
+        }
+        //鍒犻櫎妫�楠屽崟
+        return AjaxResult.success(accountReconciliationService.removeBatchByIds(ids));
+    }
+
+    /**
+     * 淇敼
+     * @param accountReconciliation
+     * @return
+     */
+    @PutMapping()
+    @ApiOperation("淇敼")
+    public AjaxResult update(@RequestBody AccountReconciliation accountReconciliation) {
+        return AjaxResult.success(accountReconciliationService.updateById(accountReconciliation));
+    }
+
+    /**
+     *鍒嗛〉鏌ヨ
+     * @param page
+     * @return
+     */
+    @GetMapping("/page")
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    public AjaxResult accountListPage(Page page) {
+        return AjaxResult.success(accountReconciliationService.page(page));
+    }
+
+
+
+}
diff --git a/src/main/java/com/ruoyi/account/mapper/AccountMapper.java b/src/main/java/com/ruoyi/account/mapper/AccountMapper.java
new file mode 100644
index 0000000..63a5f7c
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/mapper/AccountMapper.java
@@ -0,0 +1,19 @@
+package com.ruoyi.account.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.account.dto.AccountDto2;
+import com.ruoyi.account.pojo.Account;
+import com.ruoyi.account.pojo.AccountIncome;
+import com.ruoyi.dto.DateQueryDto;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+@Mapper
+public interface AccountMapper extends BaseMapper<Account> {
+
+}
diff --git a/src/main/java/com/ruoyi/account/mapper/AccountReconciliationMapper.java b/src/main/java/com/ruoyi/account/mapper/AccountReconciliationMapper.java
new file mode 100644
index 0000000..18fbf2c
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/mapper/AccountReconciliationMapper.java
@@ -0,0 +1,11 @@
+package com.ruoyi.account.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.account.pojo.Account;
+import com.ruoyi.account.pojo.AccountReconciliation;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface AccountReconciliationMapper extends BaseMapper<AccountReconciliation> {
+
+}
diff --git a/src/main/java/com/ruoyi/account/pojo/Account.java b/src/main/java/com/ruoyi/account/pojo/Account.java
new file mode 100644
index 0000000..77c4336
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/pojo/Account.java
@@ -0,0 +1,94 @@
+package com.ruoyi.account.pojo;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.dto.DateQueryDto;
+import com.ruoyi.framework.aspectj.lang.annotation.Excel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * 璐㈠姟绠$悊--璧勯噾绠$悊
+ * account
+ */
+@TableName(value = "account")
+@Data
+public class Account  implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 搴忓彿
+     */
+    @TableId(type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 鏃ユ湡
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date accountDate;
+
+    /**
+     * 绫诲瀷
+     */
+    @Excel(name = "绫诲瀷",readConverterExp = "0=閿�鍞敹鍏�,1=鏈嶅姟鏀跺叆,2=鍏朵粬鏀跺叆")
+    @NotBlank(message = "绫诲瀷涓嶈兘涓虹┖!!")
+    private String typeText;
+
+    /**
+     * 閲戦
+     */
+    @Excel(name = "閲戦")
+    private BigDecimal amount;
+
+    /**
+     * 璐︽埛
+     */
+    @Excel(name = "璐︽埛")
+    private String account;
+
+    /**
+     * 寰�鏉ュ崟浣�
+     */
+    @Excel(name = "寰�鏉ュ崟浣�")
+    private String counterparty;
+
+    /**
+     * 澶囨敞
+     */
+    @Excel(name = "澶囨敞")
+    private String remark;
+
+
+
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    @TableField(fill = FieldFill.INSERT)
+    private LocalDateTime createTime;
+
+    @ApiModelProperty(value = "鍒涘缓鐢ㄦ埛")
+    @TableField(fill = FieldFill.INSERT)
+    private Integer createUser;
+
+    @ApiModelProperty(value = "淇敼鏃堕棿")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private LocalDateTime updateTime;
+
+    @ApiModelProperty(value = "淇敼鐢ㄦ埛")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Integer updateUser;
+
+    @ApiModelProperty(value = "绉熸埛ID")
+    @TableField(fill = FieldFill.INSERT)
+    private Long tenantId;
+
+
+}
diff --git a/src/main/java/com/ruoyi/account/pojo/AccountReconciliation.java b/src/main/java/com/ruoyi/account/pojo/AccountReconciliation.java
new file mode 100644
index 0000000..6b87dc3
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/pojo/AccountReconciliation.java
@@ -0,0 +1,88 @@
+package com.ruoyi.account.pojo;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.framework.aspectj.lang.annotation.Excel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * 璐㈠姟绠$悊--璐㈠姟瀵硅处
+ * account
+ */
+@TableName(value = "account_reconciliation")
+@Data
+public class AccountReconciliation implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 搴忓彿
+     */
+    @TableId(type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 鏃ユ湡
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date accountDate;
+
+    /**
+     * 绫诲瀷
+     */
+    @Excel(name = "绫诲瀷",readConverterExp = "0=閿�鍞敹鍏�,1=鏈嶅姟鏀跺叆,2=鍏朵粬鏀跺叆")
+    @NotBlank(message = "绫诲瀷涓嶈兘涓虹┖!!")
+    private String status;
+
+    /**
+     * 閲戦
+     */
+    @Excel(name = "閲戦")
+    private BigDecimal amount;
+
+
+    /**
+     * 寰�鏉ュ崟浣�
+     */
+    @Excel(name = "寰�鏉ュ崟浣�")
+    private String counterparty;
+
+    /**
+     * 澶囨敞
+     */
+    @Excel(name = "澶囨敞")
+    private String remark;
+
+
+
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    @TableField(fill = FieldFill.INSERT)
+    private LocalDateTime createTime;
+
+    @ApiModelProperty(value = "鍒涘缓鐢ㄦ埛")
+    @TableField(fill = FieldFill.INSERT)
+    private Integer createUser;
+
+    @ApiModelProperty(value = "淇敼鏃堕棿")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private LocalDateTime updateTime;
+
+    @ApiModelProperty(value = "淇敼鐢ㄦ埛")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Integer updateUser;
+
+    @ApiModelProperty(value = "绉熸埛ID")
+    @TableField(fill = FieldFill.INSERT)
+    private Long tenantId;
+
+
+}
diff --git a/src/main/java/com/ruoyi/account/service/AccountReconciliationService.java b/src/main/java/com/ruoyi/account/service/AccountReconciliationService.java
new file mode 100644
index 0000000..f40505b
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/service/AccountReconciliationService.java
@@ -0,0 +1,10 @@
+package com.ruoyi.account.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.account.pojo.Account;
+import com.ruoyi.account.pojo.AccountReconciliation;
+
+public interface AccountReconciliationService extends IService<AccountReconciliation> {
+
+
+}
diff --git a/src/main/java/com/ruoyi/account/service/AccountService.java b/src/main/java/com/ruoyi/account/service/AccountService.java
new file mode 100644
index 0000000..1ce60e6
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/service/AccountService.java
@@ -0,0 +1,16 @@
+package com.ruoyi.account.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.account.dto.AccountDto3;
+import com.ruoyi.account.pojo.Account;
+import com.ruoyi.account.pojo.AccountIncome;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+
+public interface AccountService extends IService<Account> {
+
+
+}
diff --git a/src/main/java/com/ruoyi/account/service/impl/AccountReconciliationServiceImpl.java b/src/main/java/com/ruoyi/account/service/impl/AccountReconciliationServiceImpl.java
new file mode 100644
index 0000000..3228171
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/service/impl/AccountReconciliationServiceImpl.java
@@ -0,0 +1,21 @@
+package com.ruoyi.account.service.impl;
+
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.account.mapper.AccountMapper;
+import com.ruoyi.account.mapper.AccountReconciliationMapper;
+import com.ruoyi.account.pojo.Account;
+import com.ruoyi.account.pojo.AccountReconciliation;
+import com.ruoyi.account.service.AccountReconciliationService;
+import com.ruoyi.account.service.AccountService;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+
+@AllArgsConstructor
+@Service
+public class AccountReconciliationServiceImpl extends ServiceImpl<AccountReconciliationMapper, AccountReconciliation> implements AccountReconciliationService {
+
+
+
+
+}
diff --git a/src/main/java/com/ruoyi/account/service/impl/AccountServiceImpl.java b/src/main/java/com/ruoyi/account/service/impl/AccountServiceImpl.java
new file mode 100644
index 0000000..c24f295
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/service/impl/AccountServiceImpl.java
@@ -0,0 +1,36 @@
+package com.ruoyi.account.service.impl;
+
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.account.dto.AccountDto3;
+import com.ruoyi.account.mapper.AccountIncomeMapper;
+import com.ruoyi.account.mapper.AccountMapper;
+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.poi.ExcelUtil;
+import com.ruoyi.dto.DateQueryDto;
+import com.ruoyi.project.system.domain.SysDictData;
+import com.ruoyi.project.system.mapper.SysDictDataMapper;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+
+import javax.servlet.http.HttpServletResponse;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.List;
+
+@AllArgsConstructor
+@Service
+public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> implements AccountService {
+
+
+
+
+}

--
Gitblit v1.9.3