From 32abde013d2f103ddefae167c2b459b1b024f395 Mon Sep 17 00:00:00 2001
From: mrfoxygmfr <mrfoxygmfr@sch9.ru>
Date: Mon, 28 Apr 2025 13:32:27 +0300
Subject: feat: partner contacts controller + pages

---
 .../resources/templates/partnerContactEdit.html    | 44 +++++++++++++++++++
 src/main/resources/templates/partnerContacts.html  | 50 ++++++++++++++++++++++
 src/main/resources/templates/partnerEdit.html      |  3 ++
 3 files changed, 97 insertions(+)
 create mode 100644 src/main/resources/templates/partnerContactEdit.html
 create mode 100644 src/main/resources/templates/partnerContacts.html

(limited to 'src/main/resources/templates')

diff --git a/src/main/resources/templates/partnerContactEdit.html b/src/main/resources/templates/partnerContactEdit.html
new file mode 100644
index 0000000..15a089d
--- /dev/null
+++ b/src/main/resources/templates/partnerContactEdit.html
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML>
+<html xmlns:th="http://www.thymeleaf.org" lang="en">
+<div th:replace="~{common :: head}"></div>
+
+<body>
+<div th:replace="~{common :: page-header}"></div>
+
+<div class="indent">
+    <div id="updateToggleSelector">
+        <button id="updateBtn" class="btn btn-primary" onclick="toggleDisabled()">Изменить</button><br><br>
+    </div>
+
+    <form method="post" action="/partnerContact">
+        <input disabled hidden id="partnerId" name="partnerId" th:value="${partnerContact.getPartner().getId()}">
+        <input disabled hidden id="partnerContactId" name="partnerContactId" th:value="${partnerContact.getId()}">
+
+        <label for="partnerContactSurname">Фамилия:</label>
+        <input disabled type="text" id="partnerContactSurname" name="partnerContactSurname" required th:value="${partnerContact.getSurname()}"><br><br>
+
+
+        <label for="partnerContactName">Имя:</label>
+        <input disabled type="text" id="partnerContactName" name="partnerContactName" required th:value="${partnerContact.getName()}"><br><br>
+
+        <label for="partnerContactEmail">Email:</label>
+        <input disabled type="text" id="partnerContactEmail" name="partnerContactEmail" required th:value="${partnerContact.getEmail()}"><br><br>
+
+        <label for="partnerContactPhone">Телефон:</label>
+        <input disabled type="text" id="partnerContactPhone" name="partnerContactPhone" required th:value="${partnerContact.getPhone()}"><br><br>
+
+        <label for="partnerContactPosition">Должность:</label>
+        <input disabled type="text" id="partnerContactPosition" name="partnerContactPosition" required th:value="${partnerContact.getPosition()}"><br><br>
+
+        <input id="saveBtn" type="submit" value="Сохранить" class="btn btn-primary" hidden>
+
+    </form>
+</div>
+
+
+<div th:replace="~{common :: site-footer}"></div>
+<div th:replace="~{common :: site-script}"></div>
+<div th:replace="~{common :: editFieldsToggle}"></div>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/src/main/resources/templates/partnerContacts.html b/src/main/resources/templates/partnerContacts.html
new file mode 100644
index 0000000..a44e969
--- /dev/null
+++ b/src/main/resources/templates/partnerContacts.html
@@ -0,0 +1,50 @@
+<!DOCTYPE HTML>
+<html xmlns:th="http://www.thymeleaf.org" lang="en">
+<div th:replace="~{common :: head}"></div>
+
+<body>
+<div th:replace="~{common :: page-header}"></div>
+
+<div class="indent">
+    <form method="get" th:action="'/newPartnerContact/' + ${partnerId}">
+        <button id="newPartnerContactBtn" type="submit" class="btn btn-primary">Создать новое контактное лицо партнера</button>
+    </form>
+    <br>
+
+    <table class="table table-bordered table-warning">
+        <thead class="thead-dark">
+        <tr>
+            <th scope="col">ФИ</th>
+            <th scope="col">Email</th>
+            <th scope="col">Телефон</th>
+            <th scope="col">Должность</th>
+        </tr>
+        </thead>
+        <tbody>
+        <tr th:if="${partnerContacts.isEmpty()}">
+            <td colspan="6">У данного партнера нет ни одного контактного лица.</td>
+        </tr>
+        <tr th:each="partnerContact : ${partnerContacts}">
+            <td>
+                <a th:href="'/partnerContact?id=' + ${partnerContact.getId()}">
+                    <span th:text="${partnerContact.getSurname()} + ' ' + ${partnerContact.getName()}"></span>
+                </a>
+            </td>
+            <td>
+                <span th:text="${partnerContact.getEmail()}"></span>
+            </td>
+            <td>
+                <span th:text="${partnerContact.getPhone()}"></span>
+            </td>
+            <td>
+                <span th:text="${partnerContact.getPosition()}"></span>
+            </td>
+        </tr>
+        </tbody>
+    </table>
+</div>
+
+<div th:replace="~{common :: site-footer}"></div>
+<div th:replace="~{common :: site-script}"></div>
+</body>
+</html>
\ No newline at end of file
diff --git a/src/main/resources/templates/partnerEdit.html b/src/main/resources/templates/partnerEdit.html
index a02a8e5..9bcebed 100644
--- a/src/main/resources/templates/partnerEdit.html
+++ b/src/main/resources/templates/partnerEdit.html
@@ -11,6 +11,9 @@
         <a th:href="@{/operations(operationPartnerName=${partner.getName()})}">
             <button class="btn btn-primary">Операции партнера</button>
         </a><br><br>
+        <a th:href="'/partnerContacts/' + ${partner.getId()}">
+            <button class="btn btn-primary">Контактные лица партнера</button>
+        </a><br><br>
     </div>
 
     <form method="post" action="/partner">
-- 
cgit mrf-deployment