Files
double-entry-accounting/accounting/__pycache__/api.cpython-311.pyc

55 lines
10 KiB
Plaintext
Raw Normal View History

2025-05-08 16:12:33 +12:00
<EFBFBD>
<00>(h<><00><00>l<00>ddlZddlmZddlmZddlmZmZmZmZm Z m
Z
m Z ddl Z Gd<05>d<06><00>ZdS)<07>N)<01> sessionmaker)<01>datetime)<07>Account<6E> BankAccount<6E>BankTransaction<6F> JournalEntry<72>JournalEntryLine<6E>ReconciliationReport<72>ReconciliationMatchc<00><><00>eZdZd<01>Zejej<00><00><00>d<02><00><00><00><00>Zejej<00><00><00>d<03><00><00><00><00>Z ejej<00>
<00><00>ej<00><00><00>d<04><00><00><00><00><00><00>Z ejd<05><00><00>Z ejej<00><00><00>d<06><00><00><00><00>Z ejej<00>
<00><00>ej<00><00><00>d<07><00><00><00><00><00><00>Zejej<00>
<00><00>ej<00><00><00>d<08><00><00><00><00><00><00>Zejej<00><00><00>d <09><00><00><00><00>Zejd
<EFBFBD><00><00>Zd S) <0C> AccountingAPIc<00>R<00>||_t|<01><01><00>}|<02><00>|_dS)N)<01>bind)<03> db_enginer<00>session)<03>selfr<00>Sessions <20>K/home/guisea/Projects/python/apps/double-entry-accounting/accounting/api.py<70>__init__zAccountingAPI.__init__
s*<00><00>"<22><04><0E><1E>I<EFBFBD>.<2E>.<2E>.<2E><07><1E>w<EFBFBD>y<EFBFBD>y<EFBFBD><04> <0C> <0C> <0C>c<00> <00>ddd<03>S)N<>successzAccounting API is running<6E><02>status<75>message<67><00>rs r<00>indexzAccountingAPI.indexs<00><00>$<24>0K<30>L<>L<>Lrc<00><><00>tjjdkrtjd<02><00><00>|j<00>t <00><00><00><00><00>}d<03>|D<00><00>S)N<>GET<45><54>c<00>P<00>g|]#}|j|j|j|j|jd<00><05><02>$S)<01><05>id<69>name<6D> bank_name<6D>account_number<65>currencyr#<00><02>.0<EFBFBD>as r<00>
<listcomp>z/AccountingAPI.bank_accounts.<locals>.<listcomp>sK<00><00><1D><1D><1D> <10> <14>$<24><15>F<EFBFBD><1A><1B><1F>.<2E><19>
<EFBFBD> 
<EFBFBD>
<EFBFBD><1D><1D>r)<08>cherrypy<70>request<73>method<6F> HTTPErrorr<00>queryr<00>all<6C>r<00>accountss r<00> bank_accountszAccountingAPI.bank_accountssj<00><00> <14> <1B> "<22>e<EFBFBD> +<2B> +<2B><1A>$<24>S<EFBFBD>)<29>)<29> )<29><17><<3C>%<25>%<25>k<EFBFBD>2<>2<>6<>6<>8<>8<><08><1D><1D> <1C> <1D><1D><1D> rc <00>b<00>tjjdkrtjd<02><00><00>tjj}t |d|d|d|<01>dd<07><00><00><08><00>}|j<00>|<02><00>|j<00> <00><00>d |j
d
<EFBFBD>S) N<>POSTr!r%r&r'r(<00>USD)r%r&r'r(r<00>rr$) r-r.r/r0<00>jsonr<00>getr<00>add<64>commitr$<00>r<00>data<74>accounts r<00>add_bank_accountzAccountingAPI.add_bank_account$s<><00><00> <14> <1B> "<22>f<EFBFBD> ,<2C> ,<2C><1A>$<24>S<EFBFBD>)<29>)<29> )<29><17><1F>$<24><04><1D><15>f<EFBFBD><1C><1A>;<3B>'<27><1F> 0<>1<><19>X<EFBFBD>X<EFBFBD>j<EFBFBD>%<25>0<>0<> 
<EFBFBD>
<EFBFBD>
<EFBFBD><07> <0A> <0C><18><18><17>!<21>!<21>!<21> <0C> <0C><1B><1B><1D><1D><1D>#<23>7<EFBFBD>:<3A>6<>6<>6rc<00>V<00>dtjjd<dtjjd<dS)Nz POST, OPTIONS<4E>Allow<6F> Content-Type<70>Access-Control-Allow-Headers<72>)r-<00>response<73>headersrs r<00>add_bank_account_optionsz&AccountingAPI.add_bank_account_options7s(<00><00>-<<3C><08><19>!<21>'<27>*<2A>DR<44><08><19>!<21>"@<40>A<><11>rrc<00><><00>tjjdkrtjd<02><00><00>|j<00>t <00><00><00><00><00>}d<03>|D<00><00>S)Nr r!c <00>|<00>g|]9}|j|j|j|j|jrt |j<00><00>ndd<01><05><02>:S)r)r$r%<00>code<64>type<70>balance)r$r%rL<00> account_typerN<00>floatr)s rr,z*AccountingAPI.accounts.<locals>.<listcomp>Es^<00><00><1D><1D><1D> <10> <14>$<24><15>F<EFBFBD><15>F<EFBFBD><15>N<EFBFBD>+,<2C>9<EFBFBD>;<3B>u<EFBFBD>Q<EFBFBD>Y<EFBFBD>'<27>'<27>'<27>!<21> 
<EFBFBD>
<EFBFBD><1D><1D>r)r-r.r/r0rr1rr2r3s rr4zAccountingAPI.accounts>sj<00><00> <14> <1B> "<22>e<EFBFBD> +<2B> +<2B><1A>$<24>S<EFBFBD>)<29>)<29> )<29><17><<3C>%<25>%<25>g<EFBFBD>.<2E>.<2E>2<>2<>4<>4<><08><1D><1D> <1C> <1D><1D><1D> rc<00>`<00>tjjdkrtjd<02><00><00>tjj}t |d|d|d|<01>d<06><00><00><07><00>}|j<00>|<02><00>|j<00> <00><00>d|j
d <09>S)
Nr7r!r%rMrL<00> parent_id)r%rOrLrRrr9) r-r.r/r0r:rr;rr<r=r$r>s r<00> add_accountzAccountingAPI.add_accountMs<><00><00> <14> <1B> "<22>f<EFBFBD> ,<2C> ,<2C><1A>$<24>S<EFBFBD>)<29>)<29> )<29><17><1F>$<24><04><19><15>f<EFBFBD><1C><1D>f<EFBFBD><1C><15>f<EFBFBD><1C><1A>h<EFBFBD>h<EFBFBD>{<7B>+<2B>+<2B> 
<EFBFBD>
<EFBFBD>
<EFBFBD><07> <0A> <0C><18><18><17>!<21>!<21>!<21> <0C> <0C><1B><1B><1D><1D><1D>#<23>7<EFBFBD>:<3A>6<>6<>6rc<00><><00>tjjdkrtjd<02><00><00>tjj}t d<03>|dD<00><00><00><00>}t d<05>|dD<00><00><00><00>}t ||z
<00><00>dkrddd <09>Sttj |d
d <0B><00><00>
<00><00>|<01> d d <0A><00>|<01> dd <0A><00><00><0F><00>}|j <00> |<04><00>|dD]<5D>}t||d|d|d<00><13><00>}|j <00> |<06><00>|j <00>t <00><00><00> |d<00><00>}|dr|xj|dz c_<00><>|xj|dzc_<00><>|j <00><00><00>d|jd<15>S)Nr7r!c3<00>6K<00>|]}|d<00>
|dV<00><00>dS<00><03>is_debit<69>amountNr<00>r*<00>lines r<00> <genexpr>z2AccountingAPI.add_journal_entry.<locals>.<genexpr>hs0<00><00><00><00>W<>W<>T<EFBFBD>d<EFBFBD>:<3A>FV<46>W<>$<24>x<EFBFBD>.<2E>W<>W<>W<>W<>W<>Wr<00>linesc3<00>6K<00>|]}|d<00>
|dV<00><00>dSrVrrYs rr[z2AccountingAPI.add_journal_entry.<locals>.<genexpr>is1<00><00><00><00>\<5C>\<5C>d<EFBFBD>4<EFBFBD>PZ<50>K[<5B>\<5C>4<EFBFBD><08>><3E>\<5C>\<5C>\<5C>\<5C>\<5C>\rg{<14>G<EFBFBD>z<EFBFBD>?<3F>errorzDebits and credits must balancer<00>datez%Y-%m-%d<> referencerF<00> description)r_r`ra<00>
account_idrXrW)<04> journal_entryrbrXrWrr9)r-r.r/r0r:<00>sum<75>absrr<00>strptimer_r;rr<r r1rrNr=r$)rr?<00> total_debit<69> total_credit<69>entry<72> line_datarZr@s r<00>add_journal_entryzAccountingAPI.add_journal_entry`s<><00><00> <14> <1B> "<22>f<EFBFBD> ,<2C> ,<2C><1A>$<24>S<EFBFBD>)<29>)<29> )<29><17><1F>$<24><04><19>W<>W<>T<EFBFBD>'<27>]<5D>W<>W<>W<>W<>W<> <0B><1A>\<5C>\<5C>d<EFBFBD>7<EFBFBD>m<EFBFBD>\<5C>\<5C>\<5C>\<5C>\<5C> <0C> <0E>{<7B>\<5C>)<29> *<2A> *<2A>T<EFBFBD> 1<> 1<>%<25>2S<32>T<>T<> T<><1C><19>"<22>4<EFBFBD><06><<3C><1A><<3C><<3C>A<>A<>C<>C<><1A>h<EFBFBD>h<EFBFBD>{<7B>B<EFBFBD>/<2F>/<2F><1C><08><08><1D><02>3<>3<>
<EFBFBD>
<EFBFBD>
<EFBFBD><05>
<0A> <0C><18><18><15><1F><1F><1F><1D>g<EFBFBD><1D> 7<> 7<>I<EFBFBD>#<23>#<23>$<24>\<5C>2<> <20><18>*<2A>"<22>:<3A>.<2E> <0E><0E><0E>D<EFBFBD> <11>L<EFBFBD> <1C> <1C>T<EFBFBD> "<22> "<22> "<22><1A>l<EFBFBD>(<28>(<28><17>1<>1<>5<>5<>i<EFBFBD> <0C>6M<36>N<>N<>G<EFBFBD><18><1A>$<24> 7<><17><0F><0F>9<EFBFBD>X<EFBFBD>#6<>6<><0F><0F><0F><17><0F><0F>9<EFBFBD>X<EFBFBD>#6<>6<><0F><0F><0F> <0C> <0C><1B><1B><1D><1D><1D>#<23>5<EFBFBD>8<EFBFBD>4<>4<>4rc<00><><00>tjjdkrtjd<02><00><00>|j<00>t <00><00><00><00><00>}d<03>|D<00><00>S)Nr r!c<00><><00>g|]?}|j|j<00><00><00>|j|jd<00>|jD<00><00>d<01><05><02>@S)c<00>R<00>g|]$}|jt|j<00><00>|jd<00><03><02>%S))rbrXrW)rbrPrXrW)r*<00>ls rr,z<AccountingAPI.journal_entries.<locals>.<listcomp>.<listcomp><3E>sF<00><00> <20> <20> <20><14> <20>l<EFBFBD><1F><01><08>/<2F>/<2F><1D>J<EFBFBD><0E><0E> <20> <20> r)r$r_rar`r\)r$r_<00> isoformatrar`r\)r*<00>es rr,z1AccountingAPI.journal_entries.<locals>.<listcomp><3E>sq<00><00>
<1C>
<1C>
<1C><10><14>$<24><15>F<EFBFBD>$<24>$<24>&<26>&<26><1C>=<3D><1A><1B> <20> <20><19>w<EFBFBD>  <20> <20> <20>

<EFBFBD>

<EFBFBD>
<1C>
<1C>
r)r-r.r/r0rr1rr2)r<00>entriess r<00>journal_entrieszAccountingAPI.journal_entries<65>sj<00><00> <14> <1B> "<22>e<EFBFBD> +<2B> +<2B><1A>$<24>S<EFBFBD>)<29>)<29> )<29><16>,<2C>$<24>$<24>\<5C>2<>2<>6<>6<>8<>8<><07>
<1C>
<1C><1B>
<1C>
<1C>
<1C>
rc<00><><00>tjjdkr*dtjjd<dtjjd<dStjd<07><00><00>)N<>OPTIONSzGET, POST, OPTIONSrCrDrErFi<>)r-r.r/rGrHr0)r<00>args<67>kwargss r<00>defaultzAccountingAPI.default<6C>sJ<00><00> <13> <1B> "<22>i<EFBFBD> /<2F> /<2F>1E<31>H<EFBFBD> <1D> %<25>g<EFBFBD> .<2E>HV<48>H<EFBFBD> <1D> %<25>&D<> E<><15>2<EFBFBD><16> <20><13>%<25>%<25>%rN)<12>__name__<5F>
__module__<EFBFBD> __qualname__rr-<00>expose<73>tools<6C>json_outrr5<00>json_inrArIr4rSrkrsrxrrrr r s&<00><00><00><00><00><00>!<21>!<21>!<21>
<0E>_<EFBFBD> <0A>^<5E><1C><1C><1E><1E>M<01>M<01><1F><1E><15>_<EFBFBD>M<01><0E>_<EFBFBD> <0A>^<5E><1C><1C><1E><1E> <1D> <1D><1F><1E><15>_<EFBFBD> <1D><0E>_<EFBFBD> <0A>^<5E><1B><1B><1D><1D> <0A>^<5E><1C><1C><1E><1E> 7<> 7<><1F><1E><1E><1D><15>_<EFBFBD> 7<> <0E>_<EFBFBD><12><12><15>_<EFBFBD><12> <0E>_<EFBFBD> <0A>^<5E><1C><1C><1E><1E> <1D> <1D><1F><1E><15>_<EFBFBD> <1D><0E>_<EFBFBD> <0A>^<5E><1B><1B><1D><1D> <0A>^<5E><1C><1C><1E><1E> 7<> 7<><1F><1E><1E><1D><15>_<EFBFBD> 7<> <0E>_<EFBFBD> <0A>^<5E><1B><1B><1D><1D> <0A>^<5E><1C><1C><1E><1E>"5<>"5<><1F><1E><1E><1D><15>_<EFBFBD>"5<>H<0E>_<EFBFBD> <0A>^<5E><1C><1C><1E><1E><1C><1C><1F><1E><15>_<EFBFBD><1C>$<0E>_<EFBFBD>&<26>&<26><15>_<EFBFBD>&<26>&<26>&rr )r-<00>sqlalchemy.ormrr<00>accounting.modelsrrrrr r
r <00>
simplejsonr:r rrr<00><module>r<>s<><00><01><0F><0F><0F><0F>'<27>'<27>'<27>'<27>'<27>'<27><1D><1D><1D><1D><1D><1D><18><18><18><18><18><18><18><18><18><18><18><18><18><18><18><18><18><18><19><19><19><19>X&<26>X&<26>X&<26>X&<26>X&<26>X&<26>X&<26>X&<26>X&<26>X&r