[扩展推荐] Eloquent 复式记账生成符合 IFRS 规范的报表

Laravel

Eloquent IFRS 扩展由 Edward Mungai 编写,该扩展主要实现了用于生成符合 IFRS 规范报表的复式记账方法。

根据文档说明: introduction,该扩展主要用于帮助您生成符合要求的报告:

该扩展 Eloquent IFRS 完全兼容 Laravel 应用和 Lumen API 应用。

该扩展实现了统一的接口,并提供完整的 Account 系统,从而实现与现有业务逻辑的解耦,可以无缝集成到您现有的应用。

下面是一些应用场景事例:

use IFRS\Models\Account;
use IFRS\models\LineItem;

$bankAccount = new Account([
    'name' => "Sales Account",
    'account_type' => Account::BANK,
])->save();

// 这里的 save 方法不会立即记录该信息
$cashSale = new CashSale([
    'account_id' => $bankAccount->id,
    'date' => Carbon::now(),
    'narration' => "Example Cash Sale",
])->save();

//只有通过 post 提交的信息才会记录
$cashSaleLineItem = new LineItem([
    'vat_id' => $outputVat->id,
    'account_id' => $revenueAccount->id,
    'vat_account_id' => $salesVatAccount->id,
    'description' => "Example Cash Sale Line Item",
    'quantity' => 1,
    'amount' => 100,
])->save();

$cashSale->addLineItem($cashSaleLineItem);
$cashSale->post();

下面是一个收支报表的事例:

use IFRS\Reports\IncomeStatement;

$incomeStatement = new IncomeStatement(
    "2020-01-01",   // Report start date
    "2020-12-31",   // Report end date
)->getSections();// Fetch balances from the ledger and store them internally

/**
* 该事例仅用于演示和调试,切勿应用于生产环境
*/
dd($incomeStatement->toString());

公司范例
收入证明
For the Period: Jan 01 2020 to Dec 31 2020

营收证明
    Operating Revenue        200 (100 cash sales + 100 credit sales)

营收费用
    Operating Expense        100 (cash purchase)
                        ---------------
营收利润      100

非营业收入
    非营业收入    0
                        ---------------
收益总计                100

非营业费用
    直接费用          0
    简介费用         0
    其他费用            0
                        ---------------
费用总计              0
                        ---------------
净利润                   100
                        ===============

以上数据来自于项目: readme,仅作为事例使用。详情请查阅该应用的文档。

这个扩展特别之处在于,该扩展作者之前从事与财务工作,后来转为开发,从更专业的角度来处理财务相关问题。看到其他行业的专业人员借助于 Laravel 实现自己的想法真是太好了。

更多详细信息请查阅: ekmungai/eloquent-ifrs.

本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://laravel-news.com/eloquent-double...

译文地址:https://learnku.com/laravel/t/44680

本文为协同翻译文章,如您发现瑕疵请点击「改进」按钮提交优化建议
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!