当前位置: 首页>>代码示例>>PHP>>正文


PHP Invoice::add_item方法代码示例

本文整理汇总了PHP中Invoice::add_item方法的典型用法代码示例。如果您正苦于以下问题:PHP Invoice::add_item方法的具体用法?PHP Invoice::add_item怎么用?PHP Invoice::add_item使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Invoice的用法示例。


在下文中一共展示了Invoice::add_item方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: pay_subscription

 public static function pay_subscription($subscription_id, $month, $account_from, $finish_month = false)
 {
     /* Pak de rekeningnummer van CityPark. */
     $account_to = Config::$bank_account;
     /* Haal de maand prijs op en vermenigvuldig dit met $month. */
     $amount = $month * Settings::get('citypark_subscription_month_cost');
     /* Kijken of we de laatste paar dagen moeten berekenen. */
     if ($finish_month) {
         /* Haal totaal aantal dagen op van deze maand. */
         $days_in_month = Date('t');
         /* Bereken het resterende aantal dagen op van deze maand. */
         $days = $days_in_month - Date('j');
         /* Bereken de kosten van 1 dag deze maand. */
         $amount_one_day = $amount / $days_in_month;
         /* Bereken de kosten van de overgebleven dagen. */
         $amount_left = $amount_one_day * $days;
         /* Rond het getal af omhoog, en replace een eventuele komma met een punt. */
         $amount = str_replace(',', '.', round($amount_left, 2, PHP_ROUND_HALF_UP));
     }
     /* Kijken of de transactie is gelukt. */
     if (Bank_api::transfer($amount, $account_from, $account_to)) {
         /* Succesvol overgemaakt, update query maken. */
         $update = Database::query("UPDATE subscription SET last_paid = NOW() WHERE sub_number = " . Database::escape($subscription_id));
         /* Kijken of de query is gelukt. */
         if ($update) {
             /* Customer ID ophalen. */
             $select = Database::query("SELECT customer_id FROM subscription WHERE sub_number = " . Database::escape($subscription_id) . " LIMIT 1");
             /* Kijken of de select query gelukt is. */
             if ($select) {
                 /* Haal de customer ID op. */
                 $cid = $select->fetch_object()->customer_id;
                 /* Probeer onderstaande. */
                 try {
                     /* Nieuw invoice object aanmaken. */
                     $invoice = new Invoice();
                     /* Nieuw factuur aanmaken. */
                     $invoice_id = $invoice->new_invoice($cid);
                     /* Factuur regel aanmaken. */
                     /* $amount bevat in dit geval de prijs wat er betaald is. */
                     $invoice->add_item('Abonnement kosten', 'Van ' . Date('d-m-Y') . ' tot ' . Date('t-m-Y') . '.', '1', $amount);
                     /* Factuur als betaald instellen. */
                     $invoice->set_paid();
                 } catch (Exception $e) {
                     /* Er ging wat fout bij het aanmaken van het factuur. */
                     throw new Exception($e->getMessage());
                 }
                 /* Return een true. */
                 return true;
             } else {
                 /* Foutmelding. */
                 throw new Exception('Er ging wat fout bij het ophalen van uw gegevens voor het factuur.<br />' . Database::error());
             }
         } else {
             /* Query is gefaalt, gooi foutmelding. */
             throw new Exception('Er ging wat fout bij het updaten van de betaling in de database.<br />' . Database::error());
         }
     } else {
         /* Kon niet overmaken. */
         return false;
     }
 }
开发者ID:roaldnefs,项目名称:parkingcity,代码行数:61,代码来源:class.payment.php

示例2: print_array

    print_array(Invoice::get($id));
} else {
    echo "failed";
    exit;
}
?>
</p><p style="font-weight: bold;">Add an item... </p><p><?php 
if (Invoice::add_item($id, 270.98, 23, 'some references')) {
    print_array(Invoice::get_items_of($id));
} else {
    echo "failed";
    exit;
}
?>
</p><p style="font-weight: bold;">Add another item... </p><p><?php 
if (Invoice::add_item($id, 0.05, 93, 'some other charges')) {
    print_array(Invoice::get_items_of($id));
} else {
    echo "failed";
    exit;
}
?>
</p><p style="font-weight: bold;">Pay an invoice... </p><p><?php 
$data = array();
$data['id'] = $id;
$data['paid_on'] = sql_date_add(today(), 30, 'day');
$data['paid_through'] = 'CHQ';
$data['paid_id'] = 'a_cheque_number';
if (Invoice::update($data)) {
    print_array(Invoice::get($id));
} else {
开发者ID:pamalite,项目名称:yel,代码行数:31,代码来源:invoice.php

示例3: Employer

if ($_POST['action'] == 'buy_subscriptions') {
    $mysqli = Database::connect();
    $employer = new Employer($_POST['id']);
    // 1. generate invoice in the system
    $data = array();
    $data['issued_on'] = today();
    $data['type'] = 'J';
    $data['employer'] = $_POST['id'];
    $data['payable_by'] = sql_date_add($data['issued_on'], $employer->get_payment_terms_days(), 'day');
    $invoice = Invoice::create($data);
    if ($invoice === false) {
        echo 'ko';
        exit;
    }
    $desc = $_POST['period'] . ' month(s) of subscription';
    $item_added = Invoice::add_item($invoice, $_POST['amount'], '1', $desc);
    $items = array();
    $items[0]['itemdesc'] = $desc;
    $items[0]['amount'] = number_format($_POST['price'], '2', '.', ', ');
    $items[1]['itemdesc'] = 'Administration Fee';
    $items[1]['amount'] = number_format($_POST['admin_fee'], '2', '.', ', ');
    // 2. generate the PDF version to be attached to sales.xx and the employer
    $branch_raw = $employer->get_branch();
    $sales = 'sales.' . strtolower($branch_raw[0]['country']) . '@yellowelevator.com';
    $branch_raw[0]['address'] = str_replace(array("\r\n", "\r"), "\n", $branch_raw[0]['address']);
    $branch_raw['address_lines'] = explode("\n", $branch_raw[0]['address']);
    $currency = $_POST['currency'];
    $pdf = new SubscriptionInvoice();
    $pdf->AliasNbPages();
    $pdf->SetAuthor('Yellow Elevator. This invoice was automatically generated. Signature is not required.');
    $pdf->SetTitle($GLOBALS['COMPANYNAME'] . ' - Invoice ' . pad($invoice, 11, '0'));
开发者ID:pamalite,项目名称:yel,代码行数:31,代码来源:slots_action.php

示例4: pad

 }
 if ($is_replacement && !$is_free_replacement) {
     $referral_desc = 'Replacement fee for Invoice: ' . pad($previous_invoice, 11, '0');
 }
 $item_added = Invoice::add_item($invoice, $subtotal, $_POST['id'], $referral_desc);
 if (!$item_added) {
     echo "ko";
     exit;
 }
 if (!$is_free_replacement) {
     $item_added = Invoice::add_item($invoice, $discount, $_POST['id'], 'Discount');
     if (!$item_added) {
         echo "ko";
         exit;
     }
     $item_added = Invoice::add_item($invoice, $extra_charges, $_POST['id'], 'Extra charges');
     if (!$item_added) {
         echo "ko";
         exit;
     }
 } else {
     if ($credit_amount > 0) {
         $credit_note_desc = 'Refund of balance for Invoice: ' . pad($previous_invoice, 11, '0');
         $filename = generate_random_string_of(8) . '.' . generate_random_string_of(8);
         $issued_on = today();
         $expire_on = sql_date_add($issued_on, 30, 'day');
         Invoice::accompany_credit_note_with($previous_invoice, $invoice, $issued_on, $credit_amount);
         $branch = $employer->get_branch();
         $sales = 'sales.' . strtolower($branch[0]['country']) . '@yellowelevator.com';
         $branch[0]['address'] = str_replace(array("\r\n", "\r"), "\n", $branch[0]['address']);
         $branch['address_lines'] = explode("\n", $branch[0]['address']);
开发者ID:pamalite,项目名称:yel,代码行数:31,代码来源:referrals_action.php

示例5: log_activity

 if (!$invoice) {
     log_activity('Cannot create blank invoice. All the jobs for employer: ' . $id . ' skipped.', 'yellowel_job_invoice_generator.log');
     continue;
 }
 log_activity('Created a blank invoice with ID: ' . $invoice, 'yellowel_job_invoice_generator.log');
 log_activity('Entering inner main loop...', 'yellowel_job_invoice_generator.log');
 $sub_query = '';
 foreach ($jobs as $i => $job) {
     $desc = '[' . $job['id'] . '] ' . $job['title'];
     $total_fee = 10;
     if (count($extensions) > 0 && !empty($extensions)) {
         if (array_key_exists($job['id'], $extensions)) {
             $total_fee += 10 * $extensions[$job['id']];
         }
     }
     $item_added = Invoice::add_item($invoice, $total_fee, $job['id'], $desc);
     if (!$item_added) {
         log_activity('Cannot create invoice item of job: ' . $job['id'] . '. The rest of the jobs for employer: ' . $id . ' skipped.', 'yellowel_job_invoice_generator.log');
         continue;
     }
     $sub_query .= $job['id'];
     if ($i < count($jobs) - 1) {
         $sub_query .= ", ";
     }
 }
 if (!empty($sub_query)) {
     log_activity('All invoice items created successfully for employer: ' . $id, 'yellowel_job_invoice_generator.log');
     $sub_query = '(' . $sub_query . ')';
     $query = "UPDATE jobs SET invoiced = 'Y' WHERE id IN " . $sub_query;
     if (!$mysqli->execute($query)) {
         log_activity('Cannot mark jobs for employer: ' . $id . ' as invoiced. Jobs: ' . $sub_query, 'yellowel_job_invoice_generator.log');
开发者ID:pamalite,项目名称:yel,代码行数:31,代码来源:generate_job_invoices.php


注:本文中的Invoice::add_item方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。