more details
This commit is contained in:
@@ -4,60 +4,60 @@
|
||||
<title>Projektmanagement</title>
|
||||
</head>
|
||||
<body>
|
||||
<font layout:fragment="title">Projekt</font>
|
||||
<ul layout:fragment="menu">
|
||||
<li class="nav-item" sec:authorize="hasRole('timetrack_user')"><a class="nav-link btn btn-secondary btn-white-text" th:href="@{/projectmanagement}">zur Projektübersicht</a></li>
|
||||
</ul>
|
||||
<main layout:fragment="content">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-2">Name</div>
|
||||
<div class="col-10 fw-bold" th:text="${app.name}"></div>
|
||||
<div class="col-2">Beschreibung</div>
|
||||
<div class="col-10" th:text="${app.description}"></div>
|
||||
<div class="col-2">Basisfunktion</div>
|
||||
<div class="col-10" th:text="${app.basicFunctionality}"></div>
|
||||
<div class="col-2">URL der Entwicklung</div>
|
||||
<div class="col-10"><a th:href="${app.repositoryUrl}" target="_blank" th:text="${app.repositoryUrl}"></a></div>
|
||||
<div class="col-2" th:if="${app.fkReplacedByApp}">Ersetzt durch andere App</div>
|
||||
<div class="col-10" th:if="${app.fkReplacedByApp}">
|
||||
<a th:href="@{/projectmanagement/app/{id}/assign(id=${app.fkReplacedByApp})}" th:text="${app.fkReplacedByApp}"></a>
|
||||
</div>
|
||||
<div class="col-2">Bundle</div>
|
||||
<div class="col-10">
|
||||
<th:block th:with="b=${bundleMap.get(app.fkBundle)}">
|
||||
<div th:text="${b.name}"></div>
|
||||
<div th:text="${b.description}"></div>
|
||||
</th:block>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Beschreibung</th>
|
||||
<th>Zuordnung</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr th:each="p : ${workpackages}">
|
||||
<td>
|
||||
<input type="checkbox" th:checked="${p.isIn(linked)}" /> <a th:href="@{/projectmanagement/workpackage/{w}/apps(w=${p.pkWorkpackage})}" th:text="${p.name}"></a>
|
||||
</td>
|
||||
<td th:text="${p.description}"></td>
|
||||
<td>
|
||||
<a th:href="@{/projectmanagement/workpackage/{w}/app/{a}/toggle(w=${p.pkWorkpackage},a=${app.pkApp})}" class="btn btn-outline-secondary">
|
||||
<span th:if="${p.isIn(linked)}">rausschmeißen</span>
|
||||
<span th:unless="${p.isIn(linked)}">zuweisen</span>
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
<font layout:fragment="title">Projekt</font>
|
||||
<ul layout:fragment="menu">
|
||||
<li class="nav-item" sec:authorize="hasRole('timetrack_user')">
|
||||
<a class="nav-link btn btn-secondary btn-white-text" th:href="@{/projectmanagement}">zur Projektübersicht</a>
|
||||
</li>
|
||||
</ul>
|
||||
<main layout:fragment="content">
|
||||
<div class="card">
|
||||
<div class="card-header" th:text="${app.name}"></div>
|
||||
<div class="card-body">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-2">Beschreibung</div>
|
||||
<div class="col-10" th:text="${app.description}"></div>
|
||||
<div class="col-2">Basisfunktion</div>
|
||||
<div class="col-10" th:text="${app.basicFunctionality}"></div>
|
||||
<div class="col-2">URL der Entwicklung</div>
|
||||
<div class="col-10">
|
||||
<a th:href="${app.repositoryUrl}" target="_blank" th:text="${app.repositoryUrl}"></a>
|
||||
</div>
|
||||
<div class="col-2" th:if="${app.fkReplacedByApp}">Ersetzt durch andere App</div>
|
||||
<div class="col-10" th:if="${app.fkReplacedByApp}">
|
||||
<a th:href="@{/projectmanagement/app/{id}/assign(id=${app.fkReplacedByApp})}" th:text="${app.fkReplacedByApp}"></a>
|
||||
</div>
|
||||
<div class="col-2">Bundle</div>
|
||||
<div class="col-10">
|
||||
<th:block th:with="b=${bundleMap.get(app.fkBundle)}">
|
||||
<div th:text="${b.name}"></div>
|
||||
<div th:text="${b.description}"></div>
|
||||
</th:block>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Beschreibung</th>
|
||||
<th>Zuordnung</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr th:each="p : ${workpackages}">
|
||||
<td><input type="checkbox" th:checked="${p.isIn(linked)}" /> <a th:href="@{/projectmanagement/workpackage/{w}/apps(w=${p.pkWorkpackage})}" th:text="${p.name}"></a></td>
|
||||
<td th:text="${p.description}"></td>
|
||||
<td><a th:href="@{/projectmanagement/workpackage/{w}/app/{a}/toggle(w=${p.pkWorkpackage},a=${app.pkApp})}" class="btn btn-outline-secondary">
|
||||
<span th:if="${p.isIn(linked)}">rausschmeißen</span> <span th:unless="${p.isIn(linked)}">zuweisen</span>
|
||||
</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
</body>
|
||||
</html>
|
||||
@@ -11,35 +11,59 @@
|
||||
</li>
|
||||
</ul>
|
||||
<main layout:fragment="content">
|
||||
<div class="p-2">
|
||||
<table id="table" class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Beschreibung</th>
|
||||
<th>URL</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr th:each="b : ${apps}">
|
||||
<td th:text="${b.name}"></td>
|
||||
<td th:text="${b.description}"></td>
|
||||
<td><a th:href="${b.repositoryUrl}" target="_blank">gitlab</a></td>
|
||||
<td><a th:href="@{/projectmanagement/app/{id}/assign(id=${b.pkApp})}">zuordnen</a><span th:text="' (' + ${b.workpackagesString} + ')'" th:if="${b.workpackagesString}"></span></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function() {
|
||||
var localeUrl = '[[@{/js/dataTables/de.json}]]';
|
||||
$("#table").DataTable({
|
||||
"language" : {
|
||||
"url" : localeUrl
|
||||
}
|
||||
<div class="card">
|
||||
<div class="card-header" th:if="${bean}">
|
||||
<span th:text="${project.name}" th:if="${project}"></span>:
|
||||
<span th:text="${bean.name}"></span>
|
||||
</div>
|
||||
<div class="card-body" th:if="${bean}">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-sm-12 col-md-2" th:if="${project}">Projektdetails</div>
|
||||
<div class="col-sm-12 col-md-10" th:if="${project}" th:text="${project.description}"></div>
|
||||
<div class="col-sm-12 col-md-2">Beschreibung</div>
|
||||
<div class="col-sm-12 col-md-10" th:text="${bean.description}"></div>
|
||||
<div class="col-sm-12 col-md-2">Milestone</div>
|
||||
<div class="col-sm-12 col-md-10">
|
||||
<a th:href="${bean.milestoneUrl}" target="_blank" th:text="${bean.milestoneUrl}" th:if="${bean.milestoneUrl}"></a>
|
||||
</div>
|
||||
<div class="col-sm-12 col-md-2">Vertrag</div>
|
||||
<div class="col-sm-12 col-md-10" th:text="${bean.contractUrl}"></div>
|
||||
<div class="col-sm-12 col-md-2">Zieldatum</div>
|
||||
<div class="col-sm-12 col-md-10" th:text="${bean.plannedDuedate}"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer">
|
||||
<table id="table" class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Beschreibung</th>
|
||||
<th>URL</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr th:each="b : ${apps}">
|
||||
<td th:text="${b.name}"></td>
|
||||
<td th:text="${b.description}"></td>
|
||||
<td><a th:href="${b.repositoryUrl}" target="_blank">gitlab</a></td>
|
||||
<td><a th:href="@{/projectmanagement/app/{id}/assign(id=${b.pkApp})}">zuordnen</a><span th:text="' (' + ${b.workpackagesString} + ')'" th:if="${b.workpackagesString}"></span></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function() {
|
||||
var localeUrl = '[[@{/js/dataTables/de.json}]]';
|
||||
$("#table").DataTable({
|
||||
"language" : {
|
||||
"url" : localeUrl
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</script>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
</body>
|
||||
|
||||
Reference in New Issue
Block a user