added company selector to project form
All checks were successful
Build Docker Image / Docker-Build (push) Successful in 2m5s
Build Docker Image / Clean-Registry (push) Successful in -11s

This commit is contained in:
2026-03-26 12:37:25 +01:00
parent dba2657894
commit d7c32ef69a
3 changed files with 9 additions and 2 deletions

View File

@@ -17,7 +17,7 @@ public class Project implements Mappable {
private final Map<Long,Member> members; private final Map<Long,Member> members;
private final Collection<Status> allowedStates; private final Collection<Status> allowedStates;
private boolean showClosed; private boolean showClosed;
private final Long companyId; private Long companyId;
private int status; private int status;
private String name; private String name;
private final long id; private final long id;
@@ -96,6 +96,7 @@ public class Project implements Mappable {
public Project patch(JSONObject json) { public Project patch(JSONObject json) {
for (var key : json.keySet()){ for (var key : json.keySet()){
switch (key){ switch (key){
case COMPANY_ID: companyId = json.getLong(COMPANY_ID); break;
case DESCRIPTION: description = json.getString(key); break; case DESCRIPTION: description = json.getString(key); break;
case NAME: name = json.getString(key); break; case NAME: name = json.getString(key); break;
case SHOW_CLOSED: showClosed = json.getBoolean(SHOW_CLOSED); break; case SHOW_CLOSED: showClosed = json.getBoolean(SHOW_CLOSED); break;

View File

@@ -6,6 +6,7 @@
import { error, yikes } from '../../warn.svelte'; import { error, yikes } from '../../warn.svelte';
import { t } from '../../translations.svelte'; import { t } from '../../translations.svelte';
import CompanySelector from '../../Components/CompanySelector.svelte';
import LineEditor from '../../Components/LineEditor.svelte'; import LineEditor from '../../Components/LineEditor.svelte';
import MarkdownEditor from '../../Components/MarkdownEditor.svelte'; import MarkdownEditor from '../../Components/MarkdownEditor.svelte';
import PermissionEditor from '../../Components/PermissionEditor.svelte'; import PermissionEditor from '../../Components/PermissionEditor.svelte';
@@ -211,6 +212,11 @@
{#if project.company} {#if project.company}
<div>{t('company')}</div> <div>{t('company')}</div>
<div class="company">{project.company.name}</div> <div class="company">{project.company.name}</div>
{:else}
{#if showSettings}
<div>{t('company')}</div>
<span><CompanySelector caption={t('select_company')} onselect={c => update({company_id:c.id})} /></span>
{/if}
{/if} {/if}
<div>{t('context')}</div> <div>{t('context')}</div>
<div> <div>

View File

@@ -251,7 +251,7 @@ CREATE TABLE IF NOT EXISTS {0} (
} }
if (prj.isDirty()){ if (prj.isDirty()){
update(TABLE_PROJECTS).set(NAME, DESCRIPTION, STATUS, COMPANY_ID, SHOW_CLOSED).where(ID,equal(prj.id())).prepare(db) update(TABLE_PROJECTS).set(NAME, DESCRIPTION, STATUS, COMPANY_ID, SHOW_CLOSED).where(ID,equal(prj.id())).prepare(db)
.apply(prj.name(),prj.description(),prj.status(),prj.companyId(),prj.showClosed()) .apply(prj.name(),prj.description(),prj.status(),prj.companyId().orElse(null),prj.showClosed())
.execute(); .execute();
prj.clean(); prj.clean();
} }