This commit is contained in:
KONE SOREL 2026-03-23 09:42:07 +00:00
parent e5475f3190
commit 4b8041f21d

View File

@ -2,10 +2,7 @@
$idBareme = $_SESSION['idBaremePriseEnCharge'];
$codeGarantie = $this->nettoyer($garantie['codeGarantie']);
$libelleG = $this->nettoyer($garantie['libelle']);
if (est_anglophone()) {
$libelleG = $this->nettoyer($garantie['libelleEng']);
}
if (est_anglophone()) { $libelleG = $this->nettoyer($garantie['libelleEng']); }
?>
<div class="modal-dialog modal-xl border-0" role="document">
@ -13,213 +10,145 @@
<div class="modal-header bg-white border-bottom-0 pt-4 px-4">
<div class="d-flex align-items-center">
<div class="p-2 bg-light rounded-3 me-3">
<i class="fas fa-layer-group text-secondary"></i>
</div>
<div class="p-2 bg-light rounded-3 me-3"><i class="fas fa-cog text-secondary"></i></div>
<div>
<h5 class="fw-bold mb-0 text-uppercase"><?= $libelleG; ?></h5>
<span class="badge bg-light text-muted fw-normal border"><?= $codeGarantie; ?></span>
<small class="text-muted"><?= _("Configuration complète du barème") ?></small>
</div>
</div>
<button type="button" class="btn-close" data-bs-dismiss="modal" onclick="detail_baremepriseencharge(<?= $idBareme ?>);"></button>
</div>
<div class="modal-body bg-body-tertiary p-4">
<input type="hidden" id="datejour" name="datejour" value="<?= dateLang(date('Y/m/d'),$_SESSION['lang']); ?>">
<input type="hidden" id="codeGarantie" name="codeGarantie" value="<?= $codeGarantie; ?>">
<input type="hidden" id="idBaremePriseEnCharge" name="idBaremePriseEnCharge" value="<?= $idBareme ?>">
<input type="hidden" id="datejour" value="<?= dateLang(date('Y/m/d'),$_SESSION['lang']); ?>">
<input type="hidden" id="codeGarantie" value="<?= $codeGarantie; ?>">
<input type="hidden" id="idBaremePriseEnCharge" value="<?= $idBareme ?>">
<div class="accordion accordion-flush" id="accConfigurationGarantie">
<div class="card border-0 shadow-sm mb-3 rounded-3">
<div class="card-header bg-white py-3 cursor-pointer d-flex justify-content-between align-items-center" onclick="afficherMasquerGarantiesBareme();">
<span class="fw-bold text-dark small text-uppercase tracking-wider">
1. <?= _("Règle Standard (Famille)") ?> <span id="garantiesbaremepriseencharge" class="ms-2 badge bg-light text-primary border fw-normal"></span>
</span>
<i id="span_garantie" class="fas fa-chevron-down text-muted small"></i>
</div>
<div id="div_garanties_masquer" class="card-body border-top bg-white" style="display:none;">
<div class="p-3 mb-3 rounded-3 bg-light border-dashed">
<div class="row g-2 mb-2">
<div class="col-md-3">
<label class="form-label text-muted small fw-bold text-uppercase"><?= _("Date Effet") ?></label>
<input type="text" class="form-control border-0 shadow-sm datepicker text-center fw-bold" id="dateEffetFamilleActe" name="dateEffetFamilleActe" required>
</div>
<div class="col-md-3">
<label class="form-label text-muted small fw-bold text-uppercase"><?= _("Plafond Global") ?></label>
<input type="text" class="form-control border-0 shadow-sm text-end fw-bold" id="plafondFamilleActe" name="plafondFamilleActe" onblur="formatMonetaire(this);">
</div>
<div class="col-md-3">
<label class="form-label text-muted small fw-bold text-uppercase"><?= _("Périodicité Plafond") ?></label>
<select class="form-select border-0 shadow-sm fw-bold" id="periodicitePlafondFamilleActe" name="periodicitePlafondFamilleActe">
<?= liste_options($periodicite,"", true) ?>
</select>
</div>
<div class="col-md-3">
<label class="form-label text-muted small fw-bold text-uppercase"><?= _("Nombre d'Actes Max") ?></label>
<div class="input-group shadow-sm">
<input type="number" class="form-control border-0" id="nombreActesFamilleActe" name="nombreActesFamilleActe" value="0">
<select class="form-select border-0 bg-light small" id="periodiciteNombreActesFamilleActe" name="periodiciteNombreActesFamilleActe">
<?= liste_options($periodicite,"", true) ?>
</select>
</div>
</div>
</div>
<div class="row g-2 align-items-end">
<div class="col-md-2">
<label class="form-label text-muted small fw-bold text-uppercase"><?= _("Part Patient (%)") ?></label>
<input type="number" class="form-control border-0 shadow-sm text-center" id="ticketModerateurFamilleActe" name="ticketModerateurFamilleActe" value="0">
</div>
<div class="col-md-2">
<label class="form-label text-muted small fw-bold text-uppercase"><?= _("Forfait TM") ?></label>
<input type="text" class="form-control border-0 shadow-sm text-end" id="forfaitTmGarantie" name="forfaitTmGarantie" onblur="formatMonetaire(this);" value="0">
</div>
<div class="col-md-2">
<label class="form-label text-muted small fw-bold text-uppercase"><?= _("Carence (Mois)") ?></label>
<input type="number" class="form-control border-0 shadow-sm text-center" id="delaiCarenceFamilleActe" name="delaiCarenceFamilleActe" value="0">
</div>
<div class="col-md-2">
<label class="form-label text-muted small fw-bold text-uppercase"><?= _("Âge (Min/Max)") ?></label>
<div class="input-group shadow-sm">
<input type="number" class="form-control border-0 text-center small" id="ageMinimumFamilleActe" name="ageMinimumFamilleActe" value="0" title="Min">
<input type="number" class="form-control border-0 text-center small border-start" id="ageMaximumFamilleActe" name="ageMaximumFamilleActe" value="0" title="Max">
</div>
</div>
<div class="col-md-2">
<label class="form-label text-muted small fw-bold text-uppercase"><?= _("État") ?></label>
<select class="form-select border-0 shadow-sm" id="actifFamilleActe" name="actifFamilleActe">
<?= liste_options($actifFamilleActe,"1", true) ?>
</select>
</div>
<div class="col-md-2">
<button type="button" class="btn btn-dark w-100 fw-bold shadow-sm" id="btn_familleacte" onclick="ajouter_garantie_college();">
<i class="fas fa-check me-1"></i> <?= _("Valider") ?>
</button>
</div>
</div>
</div>
<div id="div_liste_garantie_college" class="table-responsive"></div>
</div>
</div>
<div class="card border-0 shadow-sm mb-3 rounded-3">
<div class="card-header bg-white py-3 cursor-pointer d-flex justify-content-between align-items-center" onclick="afficherMasquerGarantiesBaremeLienParente();">
<span class="fw-bold text-dark small text-uppercase tracking-wider">
2. <?= _("Spécificités par Profil (Parenté)") ?>
<span id="garantiesbaremepriseenchargelienparente" class="ms-2 badge bg-light text-primary border fw-normal"></span>
</span>
<i id="span_garantie_lienparente" class="fas fa-chevron-down text-muted small"></i>
</div>
<input type="hidden" id="masquerGarantieLienParente" value="1">
<div id="div_garanties_lienparente_masquer" class="card-body border-top bg-white" style="display:none;">
<div class="p-3 mb-4 rounded-3 bg-light border-dashed border-1">
<div class="row g-2">
<div class="col-md-3">
<label class="form-label text-muted small fw-bold text-uppercase"><?= _("Profil") ?></label>
<select class="form-select border-0 shadow-sm fw-bold" id="codeLienParente">
<?= liste_options($liens, "", true) ?>
</select>
</div>
<div class="col-md-3">
<label class="form-label text-muted small fw-bold text-uppercase"><?= _("Plafond Spécifique") ?></label>
<input type="text" class="form-control border-0 shadow-sm text-end fw-bold" id="plafondGarantieLienParente" onblur="formatMonetaire(this);">
</div>
<div class="col-md-2">
<label class="form-label text-muted small fw-bold text-uppercase"><?= _("Périodicité") ?></label>
<select class="form-select border-0 shadow-sm" id="periodicitePlafondGarantieLienParente">
<?= liste_options($periodicite,"", true) ?>
</select>
</div>
<div class="col-md-4 d-flex align-items-end">
<button type="button" class="btn btn-dark w-100 fw-bold py-2" onclick="ajouter_garantie_lienparente_college();">
<i class="fas fa-save me-2"></i> <?= _("Enregistrer") ?>
</button>
</div>
</div>
<div class="card border-0 shadow-sm mb-3 rounded-3">
<div class="card-header bg-white py-3 cursor-pointer d-flex justify-content-between align-items-center" onclick="afficherMasquerGarantiesBareme();">
<span class="fw-bold text-dark small text-uppercase">1. <?= _("Règle Standard de la Famille") ?> <span id="garantiesbaremepriseencharge" class="ms-2 badge bg-light text-primary border fw-normal"></span></span>
<i id="span_garantie" class="fas fa-chevron-down text-muted"></i>
</div>
<input type="hidden" id="masquerGarantie" value="1">
<div id="div_garanties_masquer" class="card-body border-top bg-white" style="display:none;">
<div class="p-3 mb-3 rounded-3 bg-light border-dashed">
<div class="row g-2 mb-2">
<div class="col-md-2"><label class="lbl-erp required"><?= _("Effet") ?></label><input type="text" class="form-control datepicker" id="dateEffetFamilleActe"></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Plafond Fam.") ?></label><input type="text" class="form-control text-end fw-bold" id="plafondFamilleActe" onblur="formatMonetaire(this);"></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Période Fam.") ?></label><select class="form-select" id="periodicitePlafondFamilleActe"><?= liste_options($periodicite,"",true) ?></select></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Plafond Bénéf.") ?></label><input type="text" class="form-control text-end" id="plafondBeneficiaireFamilleActe" onblur="formatMonetaire(this);"></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Période Bénéf.") ?></label><select class="form-select" id="periodicitePlafondBeneficiaireFamilleActe"><?= liste_options($periodicite,"",true) ?></select></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Part Patient %") ?></label><input type="number" class="form-control text-center" id="ticketModerateurFamilleActe" value="0"></div>
</div>
<div id="div_liste_garantie_lienparente_college"></div>
</div>
</div>
<div class="card border-0 shadow-sm mb-3 rounded-3">
<div class="card-header bg-white py-3 cursor-pointer d-flex justify-content-between align-items-center" onclick="afficherMasquerActeBareme();">
<span class="fw-bold text-dark small text-uppercase tracking-wider">
3. <?= _("Exceptions par Acte Médical") ?>
<span id="actesbaremepriseencharge" class="ms-2 badge bg-light text-primary border fw-normal"></span>
</span>
<i id="span_acte" class="fas fa-chevron-down text-muted small"></i>
</div>
<input type="hidden" id="masquerActe" value="1">
<div id="div_acte_masquer" class="card-body border-top bg-white" style="display:none;">
<div id="div_maxdateeffetactebareme"></div>
<div class="p-3 mb-4 rounded-3 bg-light border-dashed border-1">
<div class="row g-3">
<div class="col-12">
<label class="form-label text-muted small fw-bold text-uppercase"><?= _("Rechercher l'acte") ?></label>
<?php if($codeGarantie != "HOS"): ?>
<select class="form-select selectpicker border-0 shadow-sm" data-live-search="true" id="codeActe">
<?= liste_options($actesadd,"",false) ?>
</select>
<?php else: ?>
<div class="input-group shadow-sm">
<span class="input-group-text bg-white border-0"><i class="fas fa-search text-muted"></i></span>
<input id="searchInputActe" class="form-control border-0" type="text" placeholder="<?= _("Saisir un acte hospitalier...") ?>" onkeyup="affichelisteactes(this.value, 'acte');">
</div>
<input type="hidden" id="codeActe">
<?php endif; ?>
</div>
<div class="col-md-3">
<label class="form-label text-muted small fw-bold text-uppercase"><?= _("Part Patient (%)") ?></label>
<input type="number" class="form-control border-0 shadow-sm text-center fw-bold" id="ticketModerateurActe" value="0">
</div>
<div class="col-md-9 d-flex align-items-end">
<button type="button" class="btn btn-dark w-100 fw-bold py-2" onclick="ajouter_acte_college();">
<?= _("Appliquer l'exception sur cet acte") ?>
</button>
</div>
</div>
<div class="row g-2 align-items-end">
<div class="col-md-2"><label class="lbl-erp"><?= _("Nbre Actes") ?></label><input type="number" class="form-control" id="nombreActesFamilleActe" value="0"></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Période Nbre") ?></label><select class="form-select" id="periodiciteNombreActesFamilleActe"><?= liste_options($periodicite,"",true) ?></select></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Forfait TM") ?></label><input type="text" class="form-control text-end" id="forfaitTmGarantie" onblur="formatMonetaire(this);" value="0"></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Carence (M)") ?></label><input type="number" class="form-control" id="delaiCarenceFamilleActe" value="0"></div>
<div class="col-md-1"><label class="lbl-erp"><?= _("Âge Min") ?></label><input type="number" class="form-control" id="ageMinimumFamilleActe" value="0"></div>
<div class="col-md-1"><label class="lbl-erp"><?= _("Âge Max") ?></label><input type="number" class="form-control" id="ageMaximumFamilleActe" value="200"></div>
<div class="col-md-2"><button type="button" class="btn btn-dark w-100 fw-bold" onclick="ajouter_garantie_college();"><i class="fas fa-save me-1"></i> <?= _("Valider") ?></button></div>
</div>
<div id="div_liste_actebareme_college"></div>
</div>
<div id="div_liste_garantie_college"></div>
</div>
<div class="card border-0 shadow-sm mb-3 rounded-3 border-start border-danger border-4">
<div class="card-header bg-white py-3 cursor-pointer d-flex justify-content-between align-items-center" onclick="afficherMasquerActeBaremeLienParente();">
<span class="fw-bold text-danger small text-uppercase tracking-wider">
4. <?= _("Précisions Acte & Profil (Priorité Max)") ?>
<span id="actesbaremepriseenchargelienparente" class="ms-2 badge bg-danger-light text-danger border border-danger-subtle fw-normal"></span>
</span>
<i id="span_acte_lienparente" class="fas fa-chevron-down text-muted small"></i>
</div>
<input type="hidden" id="masquerActeLienParente" value="1">
<div id="div_acte_lienparente_masquer" class="card-body border-top bg-white" style="display:none;">
<div id="div_maxdateeffetactebaremelienparente"></div>
<div id="div_liste_actebaremelienparente_college"></div>
</div>
</div>
</div>
<div class="card border-0 shadow-sm mb-3 rounded-3">
<div class="card-header bg-white py-3 cursor-pointer d-flex justify-content-between align-items-center" onclick="afficherMasquerGarantiesBaremeLienParente();">
<span class="fw-bold text-dark small text-uppercase">2. <?= _("Spécificités par Profil (Parenté)") ?> <span id="garantiesbaremepriseenchargelienparente" class="ms-2 badge bg-light text-primary border fw-normal"></span></span>
<i id="span_garantie_lienparente" class="fas fa-chevron-down text-muted"></i>
</div>
<input type="hidden" id="masquerGarantieLienParente" value="1">
<div id="div_garanties_lienparente_masquer" class="card-body border-top bg-white" style="display:none;">
<div class="p-3 mb-3 rounded-3 bg-light border-dashed">
<div class="row g-2">
<div class="col-md-3"><label class="lbl-erp"><?= _("Profil") ?></label><select class="form-select fw-bold" id="codeLienParente"><?= liste_options($liens, "", true) ?></select></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Plafond") ?></label><input type="text" class="form-control text-end fw-bold" id="plafondGarantieLienParente" onblur="formatMonetaire(this);"></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Périodicité") ?></label><select class="form-select" id="periodicitePlafondGarantieLienParente"><?= liste_options($periodicite,"",true) ?></select></div>
<div class="col-md-1"><label class="lbl-erp"><?= _("Nbre") ?></label><input type="number" class="form-control" id="nombreActesGarantieLienParente" value="0"></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Périodicité Nbre") ?></label><select class="form-select" id="periodiciteNombreActesGarantieLienParente"><?= liste_options($periodicite,"",true) ?></select></div>
<div class="col-md-2 d-flex align-items-end"><button type="button" class="btn btn-dark w-100 fw-bold" onclick="ajouter_garantie_lienparente_college();"><?= _("Enregistrer") ?></button></div>
</div>
</div>
<div id="div_liste_garantie_lienparente_college"></div>
</div>
</div>
<div class="card border-0 shadow-sm mb-3 rounded-3">
<div class="card-header bg-white py-3 cursor-pointer d-flex justify-content-between align-items-center" onclick="afficherMasquerActeBareme();">
<span class="fw-bold text-dark small text-uppercase">3. <?= _("Exceptions par Acte Médical") ?> <span id="actesbaremepriseencharge" class="ms-2 badge bg-light text-primary border fw-normal"></span></span>
<i id="span_acte" class="fas fa-chevron-down text-muted"></i>
</div>
<input type="hidden" id="masquerActe" value="1">
<div id="div_acte_masquer" class="card-body border-top bg-white" style="display:none;">
<div class="p-3 mb-3 rounded-3 bg-light border-dashed">
<div class="row g-2 mb-3">
<div class="col-12">
<label class="lbl-erp required"><?= _("Sélection de l'acte") ?></label>
<?php if($codeGarantie != "HOS"): ?>
<select class="form-select selectpicker" data-live-search="true" id="codeActe"><?= liste_options($actesadd,"",false) ?></select>
<?php else: ?>
<input id="searchInputActe" class="form-control" type="text" placeholder="<?= _("Rechercher l'acte...") ?>" onkeyup="affichelisteactes(this.value, 'acte');">
<input type="hidden" id="codeActe">
<?php endif; ?>
</div>
</div>
<div class="row g-2 align-items-end">
<div class="col-md-2"><label class="lbl-erp"><?= _("Plafond Acte") ?></label><input type="text" class="form-control text-end" id="plafondActe" onblur="formatMonetaire(this);"></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Part Patient %") ?></label><input type="number" class="form-control text-center" id="ticketModerateurActe" value="0"></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Forfait TM") ?></label><input type="text" class="form-control text-end" id="forfaitTmActe" onblur="formatMonetaire(this);" value="0"></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Âge Min") ?></label><input type="number" class="form-control" id="ageMinimumActe" value="0"></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Âge Max") ?></label><input type="number" class="form-control" id="ageMaximumActe" value="200"></div>
<div class="col-md-2"><button type="button" class="btn btn-dark w-100 fw-bold" onclick="ajouter_acte_college();"><?= _("Valider") ?></button></div>
</div>
</div>
<div id="div_liste_actebareme_college"></div>
</div>
</div>
<div class="card border-0 shadow-sm mb-3 rounded-3 border-start border-danger border-4">
<div class="card-header bg-white py-3 cursor-pointer d-flex justify-content-between align-items-center" onclick="afficherMasquerActeBaremeLienParente();">
<span class="fw-bold text-danger small text-uppercase">4. <?= _("Précisions Acte & Profil (Priorité Max)") ?> <span id="actesbaremepriseenchargelienparente" class="ms-2 badge bg-danger-light text-danger border border-danger-subtle fw-normal"></span></span>
<i id="span_acte_lienparente" class="fas fa-chevron-down text-muted"></i>
</div>
<input type="hidden" id="masquerActeLienParente" value="1">
<div id="div_acte_lienparente_masquer" class="card-body border-top bg-white" style="display:none;">
<div class="p-3 mb-3 rounded-3 bg-light border-dashed">
<div class="row g-2 mb-2">
<div class="col-md-8"><label class="lbl-erp"><?= _("Acte") ?></label>
<select class="form-select selectpicker" data-live-search="true" id="codeActeLienParente"><?= liste_options($actesadd,"",false) ?></select>
</div>
<div class="col-md-4"><label class="lbl-erp"><?= _("Profil") ?></label>
<select class="form-select" id="codeLienParenteActe"><?= liste_options($liens, "", true) ?></select>
</div>
</div>
<div class="row g-2 align-items-end">
<div class="col-md-3"><label class="lbl-erp"><?= _("Plafond") ?></label><input type="text" class="form-control text-end fw-bold" id="plafondActeLienParente" onblur="formatMonetaire(this);"></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Part Patient %") ?></label><input type="number" class="form-control text-center" id="ticketModerateurActeLienParente" value="0"></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Âge Min") ?></label><input type="number" class="form-control" id="ageMinimumActeLienParente" value="0"></div>
<div class="col-md-2"><label class="lbl-erp"><?= _("Âge Max") ?></label><input type="number" class="form-control" id="ageMaximumActeLienParente" value="200"></div>
<div class="col-md-3"><button type="button" class="btn btn-danger w-100 fw-bold" onclick="ajouter_actebaremelienparente_college();"><?= _("Appliquer l'Exception") ?></button></div>
</div>
</div>
<div id="div_liste_actebaremelienparente_college"></div>
</div>
</div>
</div>
<div class="modal-footer bg-light border-0 py-3 px-4">
<button type="button" class="btn btn-secondary rounded-pill px-4 fw-bold" data-bs-dismiss="modal" onclick="detail_baremepriseencharge(<?= $idBareme ?>);"><?= _("Fermer le centre de configuration") ?></button>
<div class="modal-footer bg-light border-0 px-4">
<button type="button" class="btn btn-secondary rounded-pill px-4" data-bs-dismiss="modal" onclick="detail_baremepriseencharge(<?= $idBareme ?>);"><?= _("Fermer le paramétrage") ?></button>
</div>
</div>
</div>
<style>
.bg-body-tertiary { background-color: #f8f9fa !important; }
.bg-danger-light { background-color: rgba(220, 53, 69, 0.05); }
.tracking-wider { letter-spacing: 0.05em; }
.border-dashed { border: 1px dashed #dee2e6 !important; }
.lbl-erp { font-size: 7.5pt; font-weight: 800; color: #5a6a85; text-transform: uppercase; margin-bottom: 2px; display: block; }
.required::after { content: " *"; color: #dc3545; }
.form-control, .form-select { font-size: 9pt !important; font-weight: 600 !important; border-radius: 6px !important; border: 1px solid #dee2e6 !important; }
.border-dashed { border: 1px dashed #cbd5e1 !important; }
.cursor-pointer { cursor: pointer; }
/* SelectPicker Clean SaaS */
.bootstrap-select .btn {
background-color: #fff !important;
border: 0 !important;
box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
font-weight: 600 !important;
height: 40px !important;
}
.bg-danger-light { background-color: rgba(220, 53, 69, 0.05); }
</style>