feat: add Steuertags concept to separate workflow from content tags
Build and Push Multi-Platform Images / build-and-push (push) Successful in 38s
Build and Push Multi-Platform Images / build-and-push (push) Successful in 38s
- New steuertag_ids setting to mark tags as workflow-only (not editable) - DocumentEditModal shows only content tags (non-Steuertags) as editable chips - Backend preserves Steuertags when saving document tag changes - ManuellBearbeitenPage renders content tag chips under document title - New Steuertags settings tab with multi-select and color preview Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
dad0136365
commit
d96e06e86d
8 files changed
+245
-5
No files matched your search
@@ -374,6 +374,36 @@ export class SettingsController {
|
||||
return this.settingRepo.findOneByOrFail({ ID: parseInt(id, 10) });
|
||||
}
|
||||
|
||||
// === Steuertags ===
|
||||
@Get('steuertags')
|
||||
async getSteuertags() {
|
||||
const setting = await this.settingRepo.findOneBy({ Tag: 'steuertag_ids' });
|
||||
const ids = (setting?.Wert ?? '')
|
||||
.split(',')
|
||||
.map((s) => parseInt(s.trim(), 10))
|
||||
.filter((n) => !isNaN(n));
|
||||
return { ids };
|
||||
}
|
||||
|
||||
@Put('steuertags')
|
||||
async updateSteuertags(@Body() body: { ids: number[] }) {
|
||||
const ids = (body.ids ?? [])
|
||||
.map((id) => Number(id))
|
||||
.filter((n) => !isNaN(n));
|
||||
let setting = await this.settingRepo.findOneBy({ Tag: 'steuertag_ids' });
|
||||
if (!setting) {
|
||||
setting = this.settingRepo.create({
|
||||
Typ: 0,
|
||||
Tag: 'steuertag_ids',
|
||||
Wert: ids.join(','),
|
||||
});
|
||||
} else {
|
||||
setting.Wert = ids.join(',');
|
||||
}
|
||||
await this.settingRepo.save(setting);
|
||||
return { ids };
|
||||
}
|
||||
|
||||
// === Korrespondenten ===
|
||||
@Get('correspondents')
|
||||
async getCorrespondents(
|
||||
|
||||
Reference in new issue
Block a user