diff --git a/_unfinished.html b/_unfinished.html index c361db3..4c12d4d 100644 --- a/_unfinished.html +++ b/_unfinished.html @@ -9,15 +9,6 @@ la construction d'un bâtiment destiné à être amorti)
-{{#form on="transfer"}} - {{if $_POST.selected == null}} -Vous n'avez sélectionné aucune écriture !
- {{else}} - {{:assign doc_list=$_POST.selected|implode:","}} - {{:redirect to="transfer.html?doc=%s"|args:$doc_list}} - {{/if}} -{{/form}} - {{:include file="_get_config.html" keep="module.config"}} {{:assign saved_hides=$module.config.hides}} {{:assign var="user_hides" from="saved_hides.%s"|args:$logged_user.id}} @@ -30,7 +21,7 @@ {{else}} {{:assign unhide=1}} {{/if}} - {{:assign var="user_hides.unhide_unfinished" value=$unhide}} + {{:assign var="user_hides.unhide_unfinished" value=$unhide"}} {{:assign var="saved_hides.%s"|args:$logged_user.id value=$user_hides}} {{:save key="config" hides=$saved_hides}} {{/if}} @@ -73,83 +64,57 @@ account.id as account_id, account.code as account_code, account.label as account_label, - line.debit AS debit, + sum(line.debit) AS debit, trans.id_year as trans_id_year FROM acc_transactions AS trans INNER JOIN acc_transactions_lines AS line ON line.id_transaction = trans.id INNER JOIN acc_accounts AS account ON line.id_account = account.id INNER JOIN acc_years AS years ON trans.id_year = years.id WHERE !condition + GROUP BY trans.id ORDER BY trans.date DESC; !condition=$condition assign="immo_line" }} - {{* document associé *}} - {{#load type="immo" where="$$.line = :line_id" :line_id=$immo_line_id assign="info_immo"}} - {{:assign var="immo_line.doc_id" value=$info_immo.id}} - {{* *}} - {{if $status == "unfinished"}} - {{* voir si l'immo a été ventilée *}} - {{:assign var="immo_line.allocated_amount" value=0}} - {{#load type="immo" where="$$.line = :immo_line_id AND ($$.status = 'inprogress' OR $$.status = "transferred")" :immo_line_id=$immo_line_id}} - {{:assign var="immo_line.allocated_amount" value="%d+%d"|math:$immo_line.allocated_amount:$amount}} - {{/load}} - {{elseif $status == 'ignored'}} - {{:assign nb_ignored="%d + 1"|math:$nb_ignored}} - {{if $unhide == null}} - {{:continue}} - {{/if}} - {{/if}} - {{else}} - {{* cas d'une immo sans doc associé => créer le doc *}} - {{:save - key=""|uuid - validate_schema="asset.schema.json" - type="immo" - line=$immo_line_id|intval - duration=0 - status="unfinished" - assign_new_id="immo_doc_id" - }} - {{:assign var="immo_line.doc_id" value=$immo_doc_id|intval}} + {{* voir si l'écriture a été marquée ignorée *}} + {{:assign var="immo_line.ignore" value=false}} + {{#load type="immo" assign="info_immo" where="$$.line = :line_id AND $$.status = 'ignored'" :line_id=$immo_line_id|intval}} + {{:assign var="immo_line.ignore" value=true}} {{/load}} - - {{if $info_immo.status == 'transferred'}} + {{if $immo_line.ignore}} + {{:assign nb_ignored="%d + 1"|math:$nb_ignored}} + {{/if}} + {{if $immo_line.ignore && $unhide == null}} {{:continue}} {{/if}} - {{if $immo_line.allocated_amount == $debit}} + + {{* + TODO cas où : + - il y a (au moins) une écriture d'avoir + *}} + + {{* voir s'il existe une écriture qui solde l'immobilisation (voir ci-dessus) *}} + {{#select + count(*) AS count + FROM acc_transactions AS trans + INNER JOIN acc_transactions_lines AS line ON line.id_transaction = trans.id + INNER JOIN acc_accounts AS account ON line.id_account = account.id + WHERE line.credit = :amount AND code = :account_code + ; + :amount = $debit + :account_code = $account_code + }} + {{:assign count=$count}} + {{/select}} + + {{* S'il y a plus d'une écriture de même montant on ne peut pas décider *}} + {{if $count == 1}} {{:continue}} {{/if}} {{:assign var="immo_lines." value=$immo_line}} {{/select}} -{{* lister les immos incorporées de la balance d'ouverture *}} -{{#load type="immo" where="$$.status='inprogress'" assign="unfinished_immo"}} - {{* chercher l'écriture dont est tirée l'immo *}} - {{#select - trans.id as trans_id, - line.id as immo_line_id, - account.id as account_id, - account.code as account_code, - account.label as account_label, - trans.id_year as trans_id_year - FROM acc_transactions AS trans - INNER JOIN acc_transactions_lines AS line ON line.id_transaction = trans.id - INNER JOIN acc_accounts AS account ON line.id_account = account.id - INNER JOIN acc_years AS years ON trans.id_year = years.id - WHERE line.id = :unfinished_immo_line; - :unfinished_immo_line = $unfinished_immo.line - assign="immo_line" - }} - {{:assign var="immo_line.trans_label" value=$unfinished_immo.label}} - {{:assign var="immo_line.trans_date" value=$unfinished_immo.date_achat}} - {{:assign var="immo_line.debit" value=$unfinished_immo.amount}} - {{:assign var="immo_line.doc_id" value=$id}} - {{:assign var="immo_lines." value=$immo_line}} - {{/select}} -{{/load}} -