copainfo / invoice-module
一个用于生成发票的模块
V1.1.0
2023-05-17 17:33 UTC
Requires
- php: ^8.1
- spipu/html2pdf: ^5.2
- squizlabs/php_codesniffer: ^3.7
Requires (Dev)
- fakerphp/faker: ^1.22
- phpro/grumphp: ^1.16
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^10.1
This package is auto-updated.
Last update: 2024-09-30 01:57:35 UTC
README
InvoiceModule 是一个 PDF 格式的发票生成器。
此生成器使用 php 8.1。
它依赖于库 Html2Pdf,该库可以将 HTML 4.01 代码转换为 PDF。
所需配置
InvoiceModule 需要 PHP >8.1 和 Composer。
您还需要至少以下 PHP 扩展
- gd
- mbstring
安装
您必须使用 Composer 来安装 InvoiceModule。
如果您不知道 Composer 是什么
-
您可以在 https://getcomposer.org.cn/doc/ 上找到文档
-
您可以在 https://packagist.org.cn/ 上找到所有可用的软件包
composer require copainfo/invoice-module
使用方法
为了自定义发票,您需要进行以下两个修改
示例
模板
一个示例模板在此处可用: 模板
此模板生成的无参数发票类似于此文件: Pdf
接口
一个示例接口在此处可用: 接口
此接口生成的发票类似于此文件: Pdf
使用方法
使用示例接口的示例。
$detail = new DetailsTableExemple(); // On crée un Objet Qui implement l'interface $builder = new InvoiceBuilder($detail); // On crée un invoiceBuilder $detail->setProductList([ // On ajoute des produits au tableau des produits [ "product"=>"Product 1", "description"=>"first Product", "PUHT"=>100, "TVA"=>20, "quantity"=>2, ], [ "product"=>"Product 2", "description"=>"next Product", "PUHT"=>100, "TVA"=>20, "quantity"=>2, ] ]); $builder->setInvoiceInfo("1", "Test", new DateTime()); // On donne les informations de la facture $builder->setIssuerInfo( // On donne les informations de l'entreprise "Nom de l'entreprise", "25 rue de l'adresse ", "65214 VilleIci", "06 06 06 06 06", "900 367 004 00653", "SARL", "1000 €", "VilleIci", "900 367 004 00653", "900 367 004 00653" ); $builder->setCustomerInfo(// On donne les informations du client "Nom du client", "65 rue de l'adresse", "65214 VilleIci", "06 06 06 06 06", "mail@mail.com", ); $invoicePdf = $builder->getInvoice( // Ici, on crée la facture "TestTemplate", // avec le template : TestTemplate. ["LOGOSRC" => "./logo.png"] // on donne les valeurs des paramètres personnalisés );
getInvoice 函数方法返回 PDF 文件的内容。