Dokumenttikansiot asiakaskohtaisiksi

- Lisää customer_id sarake document_folders-tauluun (ALTER TABLE migraatio)
- dbLoadFolders() tukee nyt customer_id suodatusta
- dbSaveFolder() tallentaa customer_id:n kansioon
- API document_folders endpoint vastaanottaa customer_id parametrin
- JS: kansiot ladataan ja luodaan asiakaskohtaisesti (currentDocCustomerId)
- Jokaisen asiakkaan kansiorakenne on nyt itsenäinen

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-12 10:04:03 +02:00
parent 711193e1ce
commit 3fe45b217c
3 changed files with 15 additions and 8 deletions

View File

@@ -4877,13 +4877,13 @@ function showDocEditView() {
async function loadDocuments() {
try {
allDocuments = await apiCall('documents');
try { allDocFolders = await apiCall('document_folders'); } catch (e2) { allDocFolders = []; }
// Lataa kansiot asiakaskohtaisesti
if (currentDocCustomerId) {
// Ollaan asiakkaan kansion sisällä → näytä dokumenttilista
try { allDocFolders = await apiCall('document_folders&customer_id=' + currentDocCustomerId); } catch (e2) { allDocFolders = []; }
renderDocFolderBar();
renderDocumentsList();
} else {
// Näytä asiakaskansiot
allDocFolders = [];
renderDocCustomerFolders();
}
} catch (e) { console.error('Dokumenttien lataus epäonnistui:', e); }
@@ -5341,7 +5341,8 @@ document.getElementById('btn-new-folder')?.addEventListener('click', async () =>
try {
await apiCall('document_folder_save', 'POST', {
name: name.trim(),
parent_id: currentDocFolderId || null
parent_id: currentDocFolderId || null,
customer_id: currentDocCustomerId || null
});
await loadDocuments();
} catch (e) { alert('Kansion luonti epäonnistui: ' + e.message); }