#2-protocol #10

Merged
jkeffects merged 14 commits from #2-protocol into main 2024-10-29 14:45:37 +00:00
4 changed files with 53 additions and 32 deletions
Showing only changes of commit 848a9e86fc - Show all commits

View file

@ -247,14 +247,8 @@ export async function createProtocolPrintoutById(req: Request, res: Response): P
month: "2-digit", month: "2-digit",
year: "numeric", year: "numeric",
}), }),
start: new Date(protocol.starttime).toLocaleTimeString("de-DE", { start: protocol.starttime,
minute: "2-digit", end: protocol.endtime,
hour: "2-digit",
}),
end: new Date(protocol.endtime).toLocaleTimeString("de-DE", {
minute: "2-digit",
hour: "2-digit",
}),
agenda, agenda,
decisions, decisions,
presence: presence.map((p) => p.member), presence: presence.map((p) => p.member),

View file

@ -11,10 +11,10 @@ export class protocol {
@Column({ type: "date" }) @Column({ type: "date" })
date: Date; date: Date;
@Column({ type: "timestamp", nullable: true }) @Column({ type: "time", nullable: true })
starttime: Date; starttime: Date;
@Column({ type: "timestamp", nullable: true }) @Column({ type: "time", nullable: true })
endtime: Date; endtime: Date;
@Column({ type: "text", nullable: true }) @Column({ type: "text", nullable: true })

View file

@ -14,8 +14,8 @@ export class Protocol1729347911107 implements MigrationInterface {
{ name: "id", type: variableType_int, isPrimary: true, isGenerated: true, generationStrategy: "increment" }, { name: "id", type: variableType_int, isPrimary: true, isGenerated: true, generationStrategy: "increment" },
{ name: "title", type: "varchar", length: "255", isNullable: false }, { name: "title", type: "varchar", length: "255", isNullable: false },
{ name: "date", type: "date", isNullable: false }, { name: "date", type: "date", isNullable: false },
{ name: "starttime", type: "timestamp", isNullable: true }, { name: "starttime", type: "time", isNullable: true },
{ name: "endtime", type: "timestamp", isNullable: true }, { name: "endtime", type: "time", isNullable: true },
{ name: "summary", type: "text", isNullable: true }, { name: "summary", type: "text", isNullable: true },
], ],
}), }),

View file

@ -9,33 +9,60 @@
<p>Am {{date}} von {{start}} Uhr bis {{end}} Uhr</p> <p>Am {{date}} von {{start}} Uhr bis {{end}} Uhr</p>
<p>Ausdruck Nr {{iteration}}</p> <p>Ausdruck Nr {{iteration}}</p>
<br /> <br />
<p><b>Zusammenfassung:</b></p>
<p>{{{summary}}}</p> <p>{{{summary}}}</p>
<h2>Anwesenheit</h2> <br />
<br />
<h2>Anwesenheit ({{presence.length}})</h2>
<ul> <ul>
{{#each presence}} {{#each presence}}
<li>{{this.firstname}} {{this.lastname}}</li> <li>{{this.firstname}} {{this.lastname}}</li>
{{/each}} {{/each}}
</ul> </ul>
<br />
<h2>Agenda</h2> <h2>Agenda</h2>
<ul> {{#each agenda}}
{{#each agenda}} <div>
<li>{{this.topic}}: {{{this.context}}}</li> <h3>{{this.topic}}</h3>
{{/each}} <span>{{{this.context}}}</span>
</ul> </div>
{{/each}}
<br />
<h2>Entscheidungen</h2> <h2>Entscheidungen</h2>
<ul> {{#each decisions}}
{{#each decisions}} <div>
<li>{{this.topic}}: {{{this.context}}}</li> <h3>{{this.topic}}</h3>
{{/each}} <span>{{{this.context}}}</span>
</ul> </div>
<h2>Abstimmungen - <small>(für|enthalten|gegen)</small></h2> {{/each}}
<ul> <br />
{{#each votings}} <h2>Abstimmungen</h2>
<li> {{#each votings}}
{{this.topic}}: {{{this.context}}} <br /> <div>
({{this.favour}}|{{this.abstain}}|{{this.against}}) <h3>{{this.topic}}</h3>
</li> <p><b>Ergebnis:</b> dafür: {{this.favour}} | enthalten: {{this.abstain}} | dagegen: {{this.against}}</p>
{{/each}} <span>{{{this.context}}}</span>
</ul> </div>
{{/each}}
</body> </body>
<style>
h2,
h3,
p,
span,
ul,
li {
padding: 0;
margin: 0;
}
h1,
h2 {
color: #990b00;
}
h2 {
margin-bottom: 5px;
}
</style>
</html> </html>