Introduction status dans schéma immobilisation

This commit is contained in:
Jean-Christophe Engel 2025-04-23 11:11:28 +02:00
parent fb0d34a4f4
commit 31a0371ae2
5 changed files with 36 additions and 31 deletions

View File

@ -1,10 +1,4 @@
{{* -*- brindille -*- *}} {{* -*- brindille -*- *}}
{{:admin_header title="Ajout immobilisation" current="module_amortissement"}}
{{* barre de navigation *}}
{{if ! $dialog}}
{{:include file="_nav.html" current="index"}}
{{/if}}
{{:read file="./defaut.json" assign="config_json"}} {{:read file="./defaut.json" assign="config_json"}}
{{:assign config_defaut=$config_json|json_decode}} {{:assign config_defaut=$config_json|json_decode}}
@ -27,7 +21,7 @@
{{* ne pas amortir *}} {{* ne pas amortir *}}
{{:assign duration=0}} {{:assign duration=0}}
{{:assign date_debut=$ligne_immo.date_achat|parse_date}} {{:assign date_debut=$ligne_immo.date_achat|parse_date}}
{{:assign noamort=true}} {{:assign status="ignored"}}
{{else}} {{else}}
{{* vérifier que la date d'acquisition est antérieure à la date de mise en service *}} {{* vérifier que la date d'acquisition est antérieure à la date de mise en service *}}
{{:assign date_debut=$_POST.date_mes|or:$_POST.date_achat|parse_date}} {{:assign date_debut=$_POST.date_mes|or:$_POST.date_achat|parse_date}}
@ -37,7 +31,7 @@
{{:error message="Erreur : la date de mise en service (%s) ne peut être antérieure à la date d'acquisition (%s)"|args:$dd:$da}} {{:error message="Erreur : la date de mise en service (%s) ne peut être antérieure à la date d'acquisition (%s)"|args:$dd:$da}}
{{/if}} {{/if}}
{{:assign duration=$_POST.duree|intval}} {{:assign duration=$_POST.duree|intval}}
{{:assign noamort=false}} {{:assign status="managed"}}
{{/if}} {{/if}}
{{* déterminer le numéro des comptes au cas où la clé serait un identifiant *}} {{* déterminer le numéro des comptes au cas où la clé serait un identifiant *}}
@ -103,7 +97,7 @@
line=$immo_id line=$immo_id
duration=$duration duration=$duration
date=$date_debut date=$date_debut
noamort=$noamort status=$status
}} }}
{{if $_POST.no_amort}} {{if $_POST.no_amort}}
{{:assign amort="autres"}} {{:assign amort="autres"}}
@ -113,12 +107,23 @@
{{:redirect force="index.html?ok=1&msg=immobilisation&amort=%s"|args:$amort}} {{:redirect force="index.html?ok=1&msg=immobilisation&amort=%s"|args:$amort}}
{{/form}} {{/form}}
{{:admin_header title="Ajout immobilisation" current="module_amortissement"}}
{{* barre de navigation *}}
{{if ! $dialog}}
{{:include file="_nav.html" current="index"}}
{{/if}}
{{:form_errors}} {{:form_errors}}
{{* formulaire d'ajout d'immobilisation *}} {{* formulaire d'ajout d'immobilisation *}}
{{:assign var="bank_account.512" value="512 — Banques"}} {{:assign var="bank_account.512" value="512 — Banques"}}
{{:assign var="immo_account.2" value="2 — Classe 2 — Comptes d'immobilisations"}} {{:assign var="immo_account.2" value="2 — Classe 2 — Comptes d'immobilisations"}}
{{* À TESTER : remplacer code compte par identifiant ?
{{:assign var="bank_account.553" value="512A — Compte courant"}}
{{:assign var="immo_account.2" value="Comptes d'immobilisations"}}
*}}
{{#select id,label FROM acc_projects WHERE archived = 0;}} {{#select id,label FROM acc_projects WHERE archived = 0;}}
{{:assign var="projects.%d"|args:$id value=$label}} {{:assign var="projects.%d"|args:$id value=$label}}
{{/select}} {{/select}}
@ -190,9 +195,7 @@ function setDate(b_date, button_names) {
const button = document.querySelector("button[data-name=" + name + "]"); const button = document.querySelector("button[data-name=" + name + "]");
const b_value = button.value; const b_value = button.value;
const new_value = b_value.replace(/date=[0-9]+-[0-9]+-[0-9]+/, 'date=' + new_date); const new_value = b_value.replace(/date=[0-9]+-[0-9]+-[0-9]+/, 'date=' + new_date);
console.log(" date = " + new_date + " old_val = " + b_value + " new_val = " + new_value);
button.setAttribute('value', new_value); button.setAttribute('value', new_value);
console.log("button_value = " + button.value);
} }
} }

View File

@ -26,7 +26,7 @@
{{* ne pas amortir *}} {{* ne pas amortir *}}
{{:assign duration=0}} {{:assign duration=0}}
{{:assign date_debut=$ligne_immo.date_achat|parse_date}} {{:assign date_debut=$ligne_immo.date_achat|parse_date}}
{{:assign noamort=true}} {{:assign status="ignored"}}
{{else}} {{else}}
{{* vérifier que la date d'acquisition est antérieure à la date de mise en service *}} {{* vérifier que la date d'acquisition est antérieure à la date de mise en service *}}
{{:assign date_debut=$_POST.date_mes|or:$ligne_immo.date_achat|parse_date}} {{:assign date_debut=$_POST.date_mes|or:$ligne_immo.date_achat|parse_date}}
@ -39,7 +39,7 @@
{{if $duration <= 0}} {{if $duration <= 0}}
{{:error message="Erreur : la durée d'amortissement doit être strictement positive"}} {{:error message="Erreur : la durée d'amortissement doit être strictement positive"}}
{{/if}} {{/if}}
{{:assign noamort=false}} {{:assign status="managed"}}
{{/if}} {{/if}}
{{* enregistrer les infos de l'immobilisation *}} {{* enregistrer les infos de l'immobilisation *}}
@ -51,7 +51,7 @@
line=$immo_id line=$immo_id
duration=$duration duration=$duration
date=$date_debut date=$date_debut
noamort=$noamort status=$status
}} }}
{{if $_POST.no_amort}} {{if $_POST.no_amort}}

View File

@ -23,10 +23,10 @@
{{:read file="./defaut.json" assign="config_json"}} {{:read file="./defaut.json" assign="config_json"}}
{{:assign config_defaut=$config_json|json_decode}} {{:assign config_defaut=$config_json|json_decode}}
{{:assign var="prefix_array" value=$config_defaut.prefixes|keys}} {{:assign var="prefix_array" value=$config_defaut.prefixes|keys}}
{{:assign quote="'"}}
{{:assign condition="("}} {{:assign condition="("}}
{{#foreach from=$prefix_array item="code"}} {{#foreach from=$prefix_array item="code"}}
{{:assign condition=$condition|cat:" account.code LIKE "|cat:$quote|cat:$code|cat:"%"|cat:$quote|cat:" OR "}} {{:assign code=$code|cat:"%"|quote_sql}}
{{:assign condition=$condition|cat:" account.code LIKE "|cat:$code|cat:" OR "}}
{{/foreach}} {{/foreach}}
{{:assign condition=$condition|cat:"0)"}} {{:assign condition=$condition|cat:"0)"}}
{{:assign condition=$condition|cat:" AND debit > 0 AND NOT (trans.status & 16)"}} {{:assign condition=$condition|cat:" AND debit > 0 AND NOT (trans.status & 16)"}}
@ -53,18 +53,14 @@
{{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$account_id:$trans_id_year}} {{:assign compte_url="%s/acc/accounts/journal.php?id=%s&year=%s"|args:$admin_url:$account_id:$trans_id_year}}
{{* voir si l'immo est prise en charge *}} {{* voir si l'immo est prise en charge *}}
{{#load type="immo" where="$$.line = :line_id" :line_id=$immo_id|intval}} {{#load type="immo" where="$$.line = :line_id" :line_id=$immo_id|intval}}
{{if $noamort}} {{:assign status=$status}}
{{:assign amortissable="non"}}
{{else}}
{{:assign amortissable="oui"}}
{{/if}}
{{else}} {{else}}
{{:assign amortissable="nsp"}} {{:assign status="nsp"}}
{{/load}} {{/load}}
{{if $status != "ignored" && $status != "nsp"}}
{{if $amortissable == "oui"}}
{{:continue}} {{:continue}}
{{/if}} {{/if}}
{{*:debug immo_id=$immo_id status=$status*}}
{{* voir s'il existe des écritures d'amortissement associées *}} {{* voir s'il existe des écritures d'amortissement associées *}}
{{#select {{#select
@ -110,7 +106,7 @@
<td><a href={{$compte_url}}>{{$account_code}}</a></td> <td><a href={{$compte_url}}>{{$account_code}}</a></td>
<td>{{$account_label}}</td> <td>{{$account_label}}</td>
<td class="actions"> <td class="actions">
{{if $amortissable == "nsp"}} {{if $status == "nsp"}}
{{:linkbutton {{:linkbutton
label="Ajouter infos" label="Ajouter infos"
href="add_infos.html?immo_id=%s&amort=1"|args:$immo_id href="add_infos.html?immo_id=%s&amort=1"|args:$immo_id

View File

@ -30,7 +30,7 @@
{{* ne pas amortir *}} {{* ne pas amortir *}}
{{:assign duration=0}} {{:assign duration=0}}
{{:assign date_debut=$ligne_immo.date_achat|parse_date}} {{:assign date_debut=$ligne_immo.date_achat|parse_date}}
{{:assign noamort=true}} {{:assign status="ignored"}}
{{else}} {{else}}
{{* vérifier que la date d'acquisition est antérieure à la date de mise en service *}} {{* vérifier que la date d'acquisition est antérieure à la date de mise en service *}}
{{:assign date_debut=$_POST.date_mes|or:$ligne_immo.date_achat|parse_date}} {{:assign date_debut=$_POST.date_mes|or:$ligne_immo.date_achat|parse_date}}
@ -43,7 +43,7 @@
{{if $duration <= 0}} {{if $duration <= 0}}
{{:error message="Erreur : la durée d'amortissement doit être strictement positive"}} {{:error message="Erreur : la durée d'amortissement doit être strictement positive"}}
{{/if}} {{/if}}
{{:assign noamort=false}} {{:assign status="managed"}}
{{/if}} {{/if}}
{{* enregistrer les infos modifiées de l'immobilisation *}} {{* enregistrer les infos modifiées de l'immobilisation *}}
@ -54,7 +54,7 @@
line=$immo_id line=$immo_id
duration=$duration duration=$duration
date=$date_debut date=$date_debut
noamort=$noamort status=$status
}} }}
{{if $_POST.no_amort}} {{if $_POST.no_amort}}
@ -81,7 +81,12 @@
<fieldset id="infos_immo"> <fieldset id="infos_immo">
<legend></legend> <legend></legend>
<dl> <dl>
{{:input id="no_amort" type="checkbox" value=1 name="no_amort" label="Ne pas amortir" default=$checked help="Cocher pour ne pas amortir" onclick="toggleInputs('infos_immo','f_no_amort_1')"}} {{if $checked}}
{{:assign helptext = "Dé-cocher pour amortir"}}
{{else}}
{{:assign helptext = "Cocher pour ne pas amortir"}}
{{/if}}
{{:input id="no_amort" type="checkbox" value=1 name="no_amort" label="Ne pas amortir" default=$checked help=$helptext onclick="toggleInputs('infos_immo','f_no_amort_1')"}}
{{:input type="date" name="date_mes" label="Date de mise en service" default=$info_immo.date disabled=$disabled help="à renseigner uniquement si différente de la date d'acquisition"}} {{:input type="date" name="date_mes" label="Date de mise en service" default=$info_immo.date disabled=$disabled help="à renseigner uniquement si différente de la date d'acquisition"}}
{{:input type="number" name="duree" label="Durée d'amortissement" default=$info_immo.duration required=true min=1 disabled=$disabled}} {{:input type="number" name="duree" label="Durée d'amortissement" default=$info_immo.duration required=true min=1 disabled=$disabled}}
</dl> </dl>

View File

@ -19,8 +19,9 @@
"type" : ["string", "null"], "type" : ["string", "null"],
"format" : "date" "format" : "date"
}, },
"noamort" : { "status" : {
"type" : ["null", "boolean"] "type" : ["string", "null"],
"enum" : ["managed", "archived", "ignored"]
} }
}, },
"required": ["type", "line", "duration", "date"] "required": ["type", "line", "duration", "date"]