rolecode/php-minimax

本包最新版本(0.1.4)没有提供许可证信息。

0.1.4 2023-01-30 12:29 UTC

This package is auto-updated.

Last update: 2024-09-29 05:57:12 UTC


README

该库仍在开发中,功能有限。未来将添加更多功能。

摘要

  1. 安装
  2. 使用示例
  3. 许可证

安装

您可以使用composer安装库

composer require rolecode/php-minimax

使用示例

基本设置

    // Create minimax instance.
    $minimax = new MinimaxClient( "YOUR_MINIMAX_CLIENT_ID", "YOUR_MINIMAX_CLIENT_PASSWORD", "YOUR_MINIMAX_USER_NAME", "YOUR_MINIMAX_USER_PASSWORD" );

    // Retrieve organisations. 
    $organisations =  $minimax->organisations->all();

    // Organisation must be set before performing other calls. 
    $minimax->setOrganisationId( "YOUR_ORGANISATION_ID" );

文档编号

    $documentNumberingsAll = $minimax->documentNumberings->all();
    $documentNumberingId = $documentNumberings[0]->DocumentNumberingId;
    $documentNumberingRetrievedById = $minimax->documentNumberings->retrieve( $documentNumberingId );

员工

    $allEmployees = $minimax->employees->all();
    $employeeId = $employees[0]->EmployeeId;
    $employeeRetrievedById = $minimax->employees->retrieve( $employeeId );

报告模板

    // List of request params: https://moj.minimax.si/SI/API/Help/Api/GET-api-orgs-organisationId-report-templates
    $reportTemplatesAll = $minimax->reportTemplates->all( ['SearchString' => 'IR'] );
    $reportTemplateId = $reportTemplates[0]->ReportTemplateId;
    $reportTemplateRetrievedById = $minimax->reportTemplates->retrieve( $reportTemplateId );

员工

    $employeesAll = $minimax->employees->all();
    $employeeId = $employees[0]->EmployeeId;
    $employeeRetrievedById = $minimax->employees->retrieve( $employeeId );

项目

    $items = $minimax->items->all( ['SearchString' => '111'] );
    $itemRetrievedById = $minimax->items->retrieveById( "INSERT_ID" );
    $itemRetrievedByCode = $minimax->items->retrieveByCode( "INSERT_CODE" );
    
    // Prepare item and create it.
    $item = new Item();
    $item->Name = "Example item.";
    $item->Code = 1;
    $item->ItemType = ItemType::GOOD;
    $item->VatRate = new mMApiFkField( 36 );
    $item->Currency = new mMApiFkField( 7 );
    $createdItem = $minimax->items->create( $item );
    
    // Update item.
    $item = $minimax->items->retrieveById( "INSERT_ID" );
    $item->Name = "New item name";
    $updatedItem = $minimax->items->update( $item );

    // Delete item.
    $minimax->items->delete( "ID" );

税率

    $vatRates = $minimax->vatRates->all();
    $vatRateStandard = $minimax->vatRates->retrieveByCode( VatRateCode::STANDARD );

已开票

    $invoicesAll = $minimax->issuedInvoices->all();
    $invoiceRetrievedById = $minimax->issuedInvoices->retrieveById( "INSERT_ID" );

    // Create invoice.
    // First prepare invoice rows.
    $invoiceRows = [];
    $row = new IssuedInvoiceRow();
    $row->RowNumber = 1;
    $row->Item = new mMApiFkField( "INSERT_ITEM_ID" );
    $row->Quantity = 1;
    $row->Price = 1;
    $row->PriceWithVAT = 1.22;
    $row->Value = $row->PriceWithVAT;
    $row->VatRate = new mMApiFkField( $vatRateStandard->VatRateId );
    $row->VATPercent = $vatRateStandard->Percent;
    $invoiceRows[] = $row;


    // Prepare invoice payments.
    $invoicePayments = [];
    $row = new IssuedInvoicePaymentMethod();
    $row->PaymentMethod = new mMApiFkField( $paymentMethod->PaymentMethodId );
    $row->AlreadyPaid = "D";
    $invoicePayments[] = $row;

    // Prepare invoice object.
    $invoice = new IssuedInvoice();
    $invoice->InvoiceType = "R";
    $invoice->Customer = new mMApiFkField( $customer->CustomerId );
    $invoice->DateIssued = date( Date::DATE_FORMAT );
    $invoice->DateTransactionFrom = $invoice->DateIssued;
    $invoice->DateTransaction = $invoice->DateIssued;
    $invoice->DateDue = date( Date::DATE_FORMAT )( Date::DATE_FORMAT );
    $invoice->IssuedInvoiceRows = $invoiceRows;
    $invoice->IssuedInvoicePaymentMethods = $invoicePayments;

    // Create invoice.
    $invoice = $minimax->issuedInvoices->create( $invoice );

    // Issue and generate pdf for invoice.
    $invoice = $minimax->issuedInvoices->performAction( $invoice->IssuedInvoiceId, $invoice->RowVersion, "issueAndGeneratepdf" );

    // Retrieve invoice document pdf.
    $documentId = $invoice->Document->ID;
    $documentAttachmentId = $invoice->InvoiceAttachment->ID;
    $documentAttachment = $minimax->documentAttachments->retrieve( $documentId, $documentAttachmentId );

   // Save file to disk.
    file_put_contents($documentAttachment->FileName, $documentAttachment->getDecodedAttachmentData());

许可证

本库在MIT许可证(MIT)下提供。有关更多信息,请参阅许可证文件。