office-dynamixs-ai/reports/requirements-implementation.xsl
2026-10-01 09:53:30 +02:00

133 lines
No EOL
6.8 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xsl:stylesheet [
<!ENTITY bdquo "" ><!ENTITY quot "" ><!ENTITY uuml "ü" ><!ENTITY auml "ä" ><!ENTITY ouml "ö" ><!ENTITY Uuml "Ü" ><!ENTITY Auml "Ä" >
<!ENTITY Ouml "Ö" ><!ENTITY szlig "ß" ><!ENTITY nbsp " " ><!ENTITY lt "" ><!ENTITY gt "" >
]>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema" exclude-result-prefixes="xs">
<xsl:output method="html" media-type="text/html" indent="no" encoding="UTF-8" />
<xsl:decimal-format name="euro" decimal-separator="," grouping-separator="." />
<xsl:variable name="currenttime" select="current-dateTime()" />
<xsl:template match="/">
<html>
<head>
<meta name="viewport" content="width=device-width" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Imixs Software Solutions GmbH</title>
<link href="../../layout/css/imixs-basic.css" charset="UTF-8" type="text/css"
rel="stylesheet" />
<link href="../../layout/css/imixs-layout.css" charset="UTF-8" type="text/css"
rel="stylesheet" />
<link href="../../layout/css/office-theme-print.css" charset="UTF-8" type="text/css"
rel="stylesheet" />
<link href="../../layout/css/custom.css" charset="UTF-8" type="text/css"
rel="stylesheet" />
<link href="../../custom-print.css" charset="UTF-8" type="text/css" rel="stylesheet" />
<style> .toolbar.branding { font-size:1.75rem; } h2 { font-size:1.7em; } .small { font-size:65%; } #imixs-content { padding:10px; } #header { background-color: #FFF; color: #333; border-bottom: 1px solid #333; padding:0; } .imixs-requirement { margin-top:20px; margin-bottom:40px; } .imixs-requirement h4 { border-bottom: 1px solid #333; } .imixs-table { width: 100%; margin-bottom:4em; } @media print { body {font-size:0.66em;} } </style>
</head>
<body> <!-- content -->
<div id="container">
<div id="imixs-content"> <!-- generate Header -->
<xsl:apply-templates
select="/data/document[normalize-space(item[@name = '$workflowgroup']/value) = 'Auftrag']" /> <!--
body -->
<xsl:apply-templates
select="/data/document[normalize-space(item[@name = '$workflowgroup']/value) = 'Requirement']" />
</div>
</div>
</body>
</html>
</xsl:template> <!--
Header Template -->
<xsl:template
match="/data/document[normalize-space(item[@name = '$workflowgroup']/value) = 'Auftrag']">
<div id="header">
<div id="imixs-servicenav">
<div class="toolbar branding" style="float:left;">
<span> Auftrag - <xsl:value-of select="item[@name='numsequencenumber']/value" />
</span>
</div>
<div style="font-size:12px;float:right"> DYNAMIXS.AI GmbH - <br /> Frei-Otto-Str. 4
- 80797 München <br /> Tel.: +49 (0)89 / 45 21 36-0 </div>
</div>
</div> <div>
<h2>
<xsl:value-of select="item[@name='_subject']/value" />
</h2>
<h3>Requirements in Umsetzung: <xsl:value-of
select="format-dateTime($currenttime, '[D01].[M01].[Y0001]')"></xsl:value-of></h3>
</div>
</xsl:template> <!--
Body Template -->
<xsl:template
match="/data/document[normalize-space(item[@name = '$workflowgroup']/value) = 'Requirement']">
<xsl:variable name="eventDate" select="item[@name='$lasteventdate']/value" /> <xsl:variable
name="effortPlaned" select="item[@name='_effort_planed']/value" /> <xsl:variable
name="capacity" select="item[@name='_capacity']/value" /> <div class="imixs-requirement">
<h4>
<xsl:value-of select="item[@name='_subject']/value" />
<span class="small" style="float:right;"> Stand: <xsl:value-of
select="format-dateTime($eventDate, '[D01].[M01].[Y0001]')"></xsl:value-of>
</span>
</h4>
<p>
<xsl:value-of select="item[@name='_description']/value"
disable-output-escaping="yes" />
</p>
</div> <!-- efforts --> <table
class="imixs-table">
<thead>
<tr>
<th style="width:120px;">Datum</th>
<th>Leistungsbezeichnung</th>
<th style="width:120px;">Stunden</th>
</tr>
</thead>
<tbody>
<xsl:for-each select="item[@name='_childitems']/value">
<tr>
<td style="text-align: center;">
<xsl:value-of
select="format-dateTime(item[@name='datdate']/value, '[D01].[M01].[Y0001]')" />
</td>
<td>
<xsl:value-of select="item[@name='name']/value" />
</td>
<td style="text-align: right;">
<xsl:value-of select="item[@name='amount']/value" />
</td>
</tr>
</xsl:for-each> <!--
Summe -->
</tbody>
<tfoot>
<tr>
<td></td>
<td style="text-align: right;">
<strong>Summe:</strong>
</td>
<td style="text-align: right;">
<xsl:value-of select="item[@name='_capacity']/value" />
</td>
</tr>
<tr>
<td></td>
<td style="text-align: right;">
<strong>Plan:</strong>
</td>
<td style="text-align: right;">
<xsl:value-of select="item[@name='_effort_planed']/value" />
</td>
</tr>
<tr>
<td></td>
<td style="text-align: right;">
<strong>Prozent:</strong>
</td>
<td style="text-align: right;">
<xsl:value-of select="item[@name='_effort_div']/value" /> % </td>
</tr>
</tfoot>
</table>
</xsl:template>
</xsl:stylesheet>