diff --git a/backend/src/main/java/esia/model/ChiefPersonModel.java b/backend/src/main/java/esia/model/ChiefPersonModel.java
new file mode 100644
index 00000000..b604b06c
--- /dev/null
+++ b/backend/src/main/java/esia/model/ChiefPersonModel.java
@@ -0,0 +1,31 @@
+package esia.model;
+
+import java.io.Serializable;
+
+/**
+ * @author Eduard Tihomirov
+ */
+public class ChiefPersonModel extends PersonModel {
+
+ private static final long serialVersionUID = 1L;
+
+ private String position;
+
+ private String brhOid;
+
+ public String getPosition() {
+ return position;
+ }
+
+ public void setPosition(String position) {
+ this.position = position;
+ }
+
+ public String getBrhOid() {
+ return brhOid;
+ }
+
+ public void setBrhOid(String brhOid) {
+ this.brhOid = brhOid;
+ }
+}
diff --git a/backend/src/main/java/esia/model/MillitaryRegistrationPersonModel.java b/backend/src/main/java/esia/model/MillitaryRegistrationPersonModel.java
new file mode 100644
index 00000000..39d91f45
--- /dev/null
+++ b/backend/src/main/java/esia/model/MillitaryRegistrationPersonModel.java
@@ -0,0 +1,28 @@
+package esia.model;
+
+/**
+ * @author Eduard Tihomirov
+ */
+public class MillitaryRegistrationPersonModel extends PersonModel {
+ private static final long serialVersionUID = 1L;
+
+ private String email;
+
+ private String mobileNumber;
+
+ public String getEmail() {
+ return email;
+ }
+
+ public void setEmail(String email) {
+ this.email = email;
+ }
+
+ public String getMobileNumber() {
+ return mobileNumber;
+ }
+
+ public void setMobileNumber(String mobileNumber) {
+ this.mobileNumber = mobileNumber;
+ }
+}
diff --git a/backend/src/main/java/esia/model/OrganizationModel.java b/backend/src/main/java/esia/model/OrganizationModel.java
new file mode 100644
index 00000000..6b4d191f
--- /dev/null
+++ b/backend/src/main/java/esia/model/OrganizationModel.java
@@ -0,0 +1,131 @@
+package esia.model;
+
+import java.io.Serializable;
+
+/**
+ * @author Eduard Tihomirov
+ */
+public class OrganizationModel implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ private String orgOid;
+
+ private String fullName;
+
+ private String shortName;
+
+ private String inn;
+
+ private String ogrn;
+
+ private String leg;
+
+ private String kpp;
+
+ private String ulAddress;
+
+ private String actualAddress;
+
+ private String zipCode;
+
+ private String mobile;
+
+ private String email;
+
+ public String getOrgOid() {
+ return orgOid;
+ }
+
+ public void setOrgOid(String orgOid) {
+ this.orgOid = orgOid;
+ }
+
+ public String getFullName() {
+ return fullName;
+ }
+
+ public void setFullName(String fullName) {
+ this.fullName = fullName;
+ }
+
+ public String getShortName() {
+ return shortName;
+ }
+
+ public void setShortName(String shortName) {
+ this.shortName = shortName;
+ }
+
+ public String getInn() {
+ return inn;
+ }
+
+ public void setInn(String inn) {
+ this.inn = inn;
+ }
+
+ public String getOgrn() {
+ return ogrn;
+ }
+
+ public void setOgrn(String ogrn) {
+ this.ogrn = ogrn;
+ }
+
+ public String getLeg() {
+ return leg;
+ }
+
+ public void setLeg(String leg) {
+ this.leg = leg;
+ }
+
+ public String getKpp() {
+ return kpp;
+ }
+
+ public void setKpp(String kpp) {
+ this.kpp = kpp;
+ }
+
+ public String getUlAddress() {
+ return ulAddress;
+ }
+
+ public void setUlAddress(String ulAddress) {
+ this.ulAddress = ulAddress;
+ }
+
+ public String getActualAddress() {
+ return actualAddress;
+ }
+
+ public void setActualAddress(String actualAddress) {
+ this.actualAddress = actualAddress;
+ }
+
+ public String getZipCode() {
+ return zipCode;
+ }
+
+ public void setZipCode(String zipCode) {
+ this.zipCode = zipCode;
+ }
+
+ public String getMobile() {
+ return mobile;
+ }
+
+ public void setMobile(String mobile) {
+ this.mobile = mobile;
+ }
+
+ public String getEmail() {
+ return email;
+ }
+
+ public void setEmail(String email) {
+ this.email = email;
+ }
+}
diff --git a/backend/src/main/java/esia/model/PersonModel.java b/backend/src/main/java/esia/model/PersonModel.java
new file mode 100644
index 00000000..c1d74cca
--- /dev/null
+++ b/backend/src/main/java/esia/model/PersonModel.java
@@ -0,0 +1,61 @@
+package esia.model;
+
+import java.io.Serializable;
+
+/**
+ * @author Eduard Tihomirov
+ */
+public class PersonModel implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ private String prsId;
+
+ private String orgOid;
+
+ private String lastName;
+
+ private String firstName;
+
+ private String middleName;
+
+ public String getPrsId() {
+ return prsId;
+ }
+
+ public void setPrsId(String prsId) {
+ this.prsId = prsId;
+ }
+
+ public String getOrgOid() {
+ return orgOid;
+ }
+
+ public void setOrgOid(String orgOid) {
+ this.orgOid = orgOid;
+ }
+
+ public String getLastName() {
+ return lastName;
+ }
+
+ public void setLastName(String lastName) {
+ this.lastName = lastName;
+ }
+
+ public String getFirstName() {
+ return firstName;
+ }
+
+ public void setFirstName(String firstName) {
+ this.firstName = firstName;
+ }
+
+ public String getMiddleName() {
+ return middleName;
+ }
+
+ public void setMiddleName(String middleName) {
+ this.middleName = middleName;
+ }
+}
diff --git a/backend/src/main/java/esia/service/UlDataService.java b/backend/src/main/java/esia/service/UlDataService.java
new file mode 100644
index 00000000..4ed8f86c
--- /dev/null
+++ b/backend/src/main/java/esia/service/UlDataService.java
@@ -0,0 +1,17 @@
+package esia.service;
+
+import esia.model.ChiefPersonModel;
+import esia.model.MillitaryRegistrationPersonModel;
+import esia.model.OrganizationModel;
+
+/**
+ * @author Eduard Tihomirov
+ */
+public interface UlDataService {
+
+ MillitaryRegistrationPersonModel getPersonModel();
+
+ ChiefPersonModel getChiefPersonModel();
+
+ OrganizationModel getOrganizationModel();
+}
diff --git a/frontend/src/resources/css/components-lkrp.css b/frontend/src/resources/css/components-lkrp.css
index 620dba98..ed519292 100644
--- a/frontend/src/resources/css/components-lkrp.css
+++ b/frontend/src/resources/css/components-lkrp.css
@@ -28,6 +28,10 @@
.webbpm.ervu_lkrp_ul .mute {
color: var(--border-light);
font-size: var(--size-text-secondary);
+
+ grid-v2& .ag-row .ag-cell {
+ color: var(--color-text-secondary) !important;
+ }
}
.webbpm.ervu_lkrp_ul .file-name {
diff --git a/resources/src/main/resources/business-model/Журнал взаимодействия.page b/resources/src/main/resources/business-model/Журнал взаимодействия.page
index de01f70b..f5dd6c15 100644
--- a/resources/src/main/resources/business-model/Журнал взаимодействия.page
+++ b/resources/src/main/resources/business-model/Журнал взаимодействия.page
@@ -366,6 +366,15 @@
true
+
+ formatter
+
+
+ DateTimeFormatter
+ custom.grid.formatter
+
+
+
sortable