Changeset - a135e71a4a31
[Not reviewed]
0 3 0
Brett Smith - 6 years ago 2018-09-28 12:31:24
brettcsmith@brettcsmith.org
nbpy2017: Handle complimentary tickets.

The conference is offering these to people who proposed talks this year.
3 files changed with 23 insertions and 20 deletions:
0 comments (0 inline, 0 general)
import2ledger/importers/nbpy2017.py
Show inline comments
...
 
@@ -82,14 +82,17 @@ class Invoice2017:
 
        self.shirts_sold = decimal.Decimal(0)
 
        self.shirt_rate = self.STANDARD_SHIRT_RATE
 
        for description, qty, unit_price, total in rows_text:
 
            if qty is None:
 
                continue
 
            total = strparse.currency_decimal(total)
 
            self.amount += total
 
            if description.startswith('Ticket - '):
 
                self.tickets_sold += 1
 
                if total > 0:
 
                    self.tickets_sold += 1
 
            elif description.startswith('T-Shirt - '):
 
                self.shirts_sold += 1
 
            elif description.startswith('Early Bird ('):
 
                self.ticket_rate = self.DISCOUNT_TICKET_RATE
 
            if qty:
 
                self.amount += strparse.currency_decimal(total)
 

	
 
    def _read_invoice_activity(self, table, first_row_text, rows_text):
 
        self.actions = [{
tests/data/imports.yml
Show inline comments
...
 
@@ -238,9 +238,9 @@
 
    - payee: Python Person C
 
      ledger template: nbpy2017 invoice ledger entry
 
      date: !!python/object/apply:datetime.date [2017, 9, 5]
 
      amount: !!python/object/apply:decimal.Decimal ["55.00"]
 
      tickets_sold: !!python/object/apply:decimal.Decimal ["1"]
 
      ticket_rate: !!python/object/apply:decimal.Decimal ["21.25"]
 
      amount: !!python/object/apply:decimal.Decimal ["30.00"]
 
      tickets_sold: !!python/object/apply:decimal.Decimal ["0"]
 
      ticket_rate: !!python/object/apply:decimal.Decimal ["42.50"]
 
      shirts_sold: !!python/object/apply:decimal.Decimal ["1"]
 
      shirt_rate: !!python/object/apply:decimal.Decimal ["25.50"]
 
      status: Invoice
...
 
@@ -250,9 +250,9 @@
 
    - payee: Python Person C
 
      ledger template: nbpy2017 payment ledger entry
 
      date: !!python/object/apply:datetime.date [2017, 9, 5]
 
      amount: !!python/object/apply:decimal.Decimal ["55.00"]
 
      tickets_sold: !!python/object/apply:decimal.Decimal ["1"]
 
      ticket_rate: !!python/object/apply:decimal.Decimal ["21.25"]
 
      amount: !!python/object/apply:decimal.Decimal ["30.00"]
 
      tickets_sold: !!python/object/apply:decimal.Decimal ["0"]
 
      ticket_rate: !!python/object/apply:decimal.Decimal ["42.50"]
 
      shirts_sold: !!python/object/apply:decimal.Decimal ["1"]
 
      shirt_rate: !!python/object/apply:decimal.Decimal ["25.50"]
 
      status: Payment
tests/data/nbpy2017c.html
Show inline comments
...
 
@@ -172,10 +172,10 @@
 
          <th class="text-right">Total</th>
 
        </tr>
 
          <tr>
 
            <td>Ticket - Unaffiliated Individual</td>
 
            <td>Ticket - Talk Proposer</td>
 
            <td class="text-right">1</td>
 
            <td class="text-right">$50.00</td>
 
            <td class="text-right">$50.00</td>
 
            <td class="text-right">$0.00</td>
 
            <td class="text-right">$0.00</td>
 
          </tr>
 
          <tr>
 
            <td>T-Shirt - Men&#39;s/Straight Cut Size M</td>
...
 
@@ -184,18 +184,18 @@
 
            <td class="text-right">$30.00</td>
 
          </tr>
 
          <tr>
 
            <td>Early Bird (Ticket - Unaffiliated Individual)</td>
 
            <td>Tutorials - Notify me when tutorials are open</td>
 
            <td class="text-right">1</td>
 
            <td class="text-right">$-25.00</td>
 
            <td class="text-right">$-25.00</td>
 
            <td class="text-right">$-0.00</td>
 
            <td class="text-right">$-0.00</td>
 
          </tr>
 
        <tr>
 
          <th colspan="3">TOTAL</th>
 
          <td class="text-right">$55.00</td>
 
          <td class="text-right">$30.00</td>
 
        </tr>
 
    <tr>
 
      <td colspan="3">Includes donation eligible for tax deduction in the USA:</td>
 
      <td class="text-right">$8.25</td>
 
      <td class="text-right">$4.25</td>
 
    </tr>
 
      </table>
 
    </div>
...
 
@@ -210,7 +210,7 @@
 
        </tr>
 
        <tr>
 
          <td colspan="3">Balance due:</td>
 
          <td class="text-right">$55.00</td>
 
          <td class="text-right">$30.00</td>
 
        </tr>
 
      </table>
 
    </div>
...
 
@@ -227,12 +227,12 @@
 
      <tr>
 
        <td>Sept. 5, 2017, 9:14 p.m.</td>
 
        <td>Paid with Stripe reference: ch_daer0ahwoh9oDeiqu2eimoD7</td>
 
        <td>55.00</td>
 
        <td>30.00</td>
 
      </tr>
 
      <tr>
 
        <td>Sept. 8, 2017, 3:20 p.m.</td>
 
        <td>Generated credit note 31</td>
 
        <td>-55.00</td>
 
        <td>-30.00</td>
 
      </tr>
 
  </table>
 
      </div>
0 comments (0 inline, 0 general)