diff --git a/_common_detach.html b/_common_detach.html new file mode 100644 index 0000000..b4e80d0 --- /dev/null +++ b/_common_detach.html @@ -0,0 +1,51 @@ +{{* -*- brindille -*- *}} + +{{* + Supprimer l'association entre deux lignes + @param immo_doc_id : id du doc associé à la ligne d'immobilisation + @param line_id : id de la ligne à détacher +*}} +{{* données de l'immobilisation *}} +{{:include file="_get_immo_data.html" immo_doc_id=$immo_doc_id|intval keep="ligne_immo, message"}} +{{if $message != null}} + {{:error message=$message}} +{{/if}} + +{{* chercher la deuxième écriture *}} +{{#select + id_transaction + FROM acc_transactions_lines + WHERE id = :line_id; + :line_id = $line_id|intval +}} + {{:assign trans_id=$id_transaction}} +{{else}} + {{:error message="Écriture non trouvée"}} +{{/select}} + +{{* + chercher les liaisons de l'écriture d'immobilisation + et supprimer la liaison avec la deuxième écriture +*}} +{{#select + CASE links.id_related = :immo_trans_id + WHEN true THEN links.id_transaction + WHEN false THEN links.id_related + END as linked_id + FROM acc_transactions_links as links + WHERE id_transaction = :immo_trans_id or id_related = :immo_trans_id; + :immo_trans_id = $ligne_immo.trans_id + }} + {{if $linked_id != $trans_id}} + {{:assign var="linked_transactions." value=$linked_id}} + {{/if}} +{{/select}} + +{{* Enregistrer les liaisons *}} +{{:api + method="POST" + path="accounting/transaction/%s/transactions"|args:$ligne_immo.trans_id + assign="result" + assign_code="result_code" + transactions=$linked_transactions +}} diff --git a/add_infos.html b/add_infos.html index e06b6bb..382025b 100644 --- a/add_infos.html +++ b/add_infos.html @@ -39,8 +39,11 @@ {{#form on="save"}} + {{if $_POST.classify == null}} + {{:error message="Vous devez faire un choix de classement"}} + {{/if}} - {{if ! $_POST.amortir}} + {{if $_POST.classify == "ignored"}} {{* ne pas amortir *}} {{:assign duration=0}} {{:assign libelle=null}} @@ -48,8 +51,20 @@ {{:assign date_achat=null}} {{:assign date_mes=null}} {{:assign status="ignored"}} + {{elseif $_POST.classify == "archived"}} + {{* immobilisation sortie du bilan *}} + {{:save + key=""|uuid + validate_schema="schema.json" + type="immo" + line=$_GET.immo_line_id|intval + duration=0 + status="archived" + assign_new_id="immo_doc_id" + }} + {{:redirect force="exit_step1.html?immo_doc_id=%s"|args:$immo_doc_id}} {{else}} - + {{* immobilisation amortissable *}} {{if $_POST.date_achat|parse_date > $ligne_immo.date_achat}} {{:assign da=$ligne_immo.date_achat|date_short}} {{:error message="Erreur : la date d'achat (%s) ne peut être postérieure à la date de l'écriture d'immobilisation (%s)"|args:$_POST.date_achat:$da}} @@ -152,10 +167,13 @@