common_doc_clean
This commit is contained in:
parent
3acb110931
commit
0842359e0e
@ -72,7 +72,7 @@ export const groupsMock = [
|
||||
},
|
||||
{
|
||||
id: 104,
|
||||
name: "Urgency plan A",
|
||||
name: "Urgency A",
|
||||
description: "Document vierge pour le plan d'urgence A",
|
||||
visibility: VISIBILITY_LEVELS.PRIVATE,
|
||||
status: DOCUMENT_STATUS.DRAFT,
|
||||
@ -82,7 +82,7 @@ export const groupsMock = [
|
||||
},
|
||||
{
|
||||
id: 105,
|
||||
name: "Urgency plan B",
|
||||
name: "Urgency B",
|
||||
description: "Document vierge pour le plan d'urgence B",
|
||||
visibility: VISIBILITY_LEVELS.PRIVATE,
|
||||
status: DOCUMENT_STATUS.DRAFT,
|
||||
@ -92,7 +92,7 @@ export const groupsMock = [
|
||||
},
|
||||
{
|
||||
id: 106,
|
||||
name: "Urgency plan C",
|
||||
name: "Urgency C",
|
||||
description: "Document vierge pour le plan d'urgence C",
|
||||
visibility: VISIBILITY_LEVELS.PRIVATE,
|
||||
status: DOCUMENT_STATUS.DRAFT,
|
||||
|
@ -508,13 +508,20 @@ function showProcessDetails(group: Group, groupId: number) {
|
||||
allDetailsAreas.forEach(area => {
|
||||
(area as HTMLElement).style.display = 'none';
|
||||
});
|
||||
|
||||
|
||||
const container = document.querySelector('.container');
|
||||
if (!container) {
|
||||
console.error('Container not found');
|
||||
return;
|
||||
}
|
||||
|
||||
// Charger les données du localStorage
|
||||
const storedGroups = JSON.parse(localStorage.getItem('groups') || '[]');
|
||||
const storedGroup = storedGroups.find((g: Group) => g.id === groupId);
|
||||
|
||||
// Utiliser les données du localStorage si disponibles, sinon utiliser le groupe passé en paramètre
|
||||
const displayGroup = storedGroup || group;
|
||||
|
||||
let detailsArea = document.getElementById(`process-details-${groupId}`);
|
||||
if (!detailsArea) {
|
||||
detailsArea = document.createElement('div');
|
||||
@ -527,19 +534,26 @@ function showProcessDetails(group: Group, groupId: number) {
|
||||
detailsArea.style.display = 'block';
|
||||
detailsArea.innerHTML = `
|
||||
<div class="process-details-header">
|
||||
<h2>${group.name}</h2>
|
||||
<h2>${displayGroup.name}</h2>
|
||||
<div class="header-buttons">
|
||||
</div>
|
||||
</div>
|
||||
<div class="process-details-content">
|
||||
<div class="details-section">
|
||||
<h3>Description</h3>
|
||||
<p>${group.description || 'No description available'}</p>
|
||||
<p>${displayGroup.description || 'No description available'}</p>
|
||||
</div>
|
||||
<div class="details-section">
|
||||
<h3>Documents Communs</h3>
|
||||
<div class="documents-grid">
|
||||
${group.commonDocuments.map(document => {
|
||||
${displayGroup.commonDocuments.map((document: {
|
||||
signatures?: DocumentSignature[];
|
||||
name: string;
|
||||
visibility: string;
|
||||
createdAt?: string | null;
|
||||
deadline?: string | null;
|
||||
id: number;
|
||||
}) => {
|
||||
const totalSignatures = document.signatures?.length || 0;
|
||||
const signedCount = document.signatures?.filter((sig: DocumentSignature) => sig.signed).length || 0;
|
||||
const percentage = totalSignatures > 0 ? (signedCount / totalSignatures) * 100 : 0;
|
||||
@ -578,8 +592,8 @@ function showProcessDetails(group: Group, groupId: number) {
|
||||
` : `
|
||||
<p>Document vierge - En attente de création</p>
|
||||
<button class="new-request-btn" onclick="newRequest({
|
||||
processId: ${group.id},
|
||||
processName: '${group.name}',
|
||||
processId: ${displayGroup.id},
|
||||
processName: '${displayGroup.name}',
|
||||
roleId: 0,
|
||||
roleName: 'common',
|
||||
documentId: ${document.id},
|
||||
@ -594,7 +608,7 @@ function showProcessDetails(group: Group, groupId: number) {
|
||||
</div>
|
||||
<div class="details-section">
|
||||
<h3>Roles and Documents</h3>
|
||||
${group.roles.map(role => `
|
||||
${displayGroup.roles.map((role: { name: string; documents?: any[] }) => `
|
||||
<div class="role-section">
|
||||
<h4>${role.name}</h4>
|
||||
<div class="documents-grid">
|
||||
@ -654,7 +668,7 @@ function showProcessDetails(group: Group, groupId: number) {
|
||||
<div class="details-section">
|
||||
<h3>Members by Role</h3>
|
||||
<div class="roles-grid">
|
||||
${group.roles.map(role => `
|
||||
${displayGroup.roles.map((role: { name: string; members: Array<{ id: string | number; name: string }> }) => `
|
||||
<div class="role-block">
|
||||
<h4>${role.name}</h4>
|
||||
<ul class="members-list">
|
||||
@ -903,7 +917,7 @@ function newRequest(params: RequestParams) {
|
||||
<div class="details-header">
|
||||
<h2>New Document Request</h2>
|
||||
<span class="document-context">
|
||||
Process: ${params.processName} | Role: ${params.roleName} | Document: ${params.documentName.replace(/'/g, "'")}
|
||||
Process: ${params.processName} | Role: ${params.roleName} | Document: ${params.documentName}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@ -1088,7 +1102,7 @@ function submitNewDocument(event: Event) {
|
||||
}
|
||||
|
||||
try {
|
||||
// R<EFBFBD><EFBFBD>cupérer les données actuelles
|
||||
// Récupérer les données actuelles
|
||||
const groups = JSON.parse(localStorage.getItem('groups') || JSON.stringify(groupsMock));
|
||||
const group = groups.find((g: Group) => g.id === processId);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user