Revert "Merge remote-tracking branch 'origin/release/1.9.12' into develop"
This reverts commitdfb6c493b1, reversing changes made to71aa1a8bda.
This commit is contained in:
parent
3ab42d4e1d
commit
bafe64e6af
8 changed files with 116 additions and 15 deletions
|
|
@ -0,0 +1,42 @@
|
||||||
|
package ru.micord.ervu.account_applications.component.dao;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.jooq.DSLContext;
|
||||||
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
|
|
||||||
|
import static ru.micord.ervu.account_applications.db_beans.public_.tables.UserApplicationList.USER_APPLICATION_LIST;
|
||||||
|
import static ru.micord.ervu.account_applications.db_beans.public_.tables.UserApplicationListAudit.USER_APPLICATION_LIST_AUDIT;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Eduard Tihomirov
|
||||||
|
*/
|
||||||
|
@Repository
|
||||||
|
public class AuditDao {
|
||||||
|
|
||||||
|
private final DSLContext dslContext;
|
||||||
|
|
||||||
|
public AuditDao(DSLContext dslContext) {
|
||||||
|
this.dslContext = dslContext;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void insert(Long listId, String fio, String login, String status, Timestamp timestamp) {
|
||||||
|
dslContext.insertInto(USER_APPLICATION_LIST_AUDIT)
|
||||||
|
.set(USER_APPLICATION_LIST_AUDIT.USER_APPLICATION_LIST_ID, listId)
|
||||||
|
.set(USER_APPLICATION_LIST_AUDIT.FIO, fio)
|
||||||
|
.set(USER_APPLICATION_LIST_AUDIT.STATUS, status)
|
||||||
|
.set(USER_APPLICATION_LIST_AUDIT.DATE, timestamp)
|
||||||
|
.set(USER_APPLICATION_LIST_AUDIT.LOGIN, login)
|
||||||
|
.execute();
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Long> selectAppListIdsByTraceId(String traceId) {
|
||||||
|
return dslContext.select(USER_APPLICATION_LIST.USER_APPLICATION_LIST_ID)
|
||||||
|
.from(USER_APPLICATION_LIST)
|
||||||
|
.where(USER_APPLICATION_LIST.TRACE_ID.eq(traceId))
|
||||||
|
.fetch(USER_APPLICATION_LIST.USER_APPLICATION_LIST_ID);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -24,6 +24,7 @@ import ru.micord.ervu.account_applications.db_beans.public_.tables.Recruitment;
|
||||||
import ru.micord.ervu.account_applications.db_beans.public_.tables.Shedlock;
|
import ru.micord.ervu.account_applications.db_beans.public_.tables.Shedlock;
|
||||||
import ru.micord.ervu.account_applications.db_beans.public_.tables.UserApplicationDocument;
|
import ru.micord.ervu.account_applications.db_beans.public_.tables.UserApplicationDocument;
|
||||||
import ru.micord.ervu.account_applications.db_beans.public_.tables.UserApplicationList;
|
import ru.micord.ervu.account_applications.db_beans.public_.tables.UserApplicationList;
|
||||||
|
import ru.micord.ervu.account_applications.db_beans.public_.tables.UserApplicationListAudit;
|
||||||
import ru.micord.ervu.account_applications.db_beans.public_.tables.UserApplicationRole;
|
import ru.micord.ervu.account_applications.db_beans.public_.tables.UserApplicationRole;
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -97,6 +98,11 @@ public class Public extends SchemaImpl {
|
||||||
*/
|
*/
|
||||||
public final UserApplicationList USER_APPLICATION_LIST = UserApplicationList.USER_APPLICATION_LIST;
|
public final UserApplicationList USER_APPLICATION_LIST = UserApplicationList.USER_APPLICATION_LIST;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The table <code>public.user_application_list_audit</code>.
|
||||||
|
*/
|
||||||
|
public final UserApplicationListAudit USER_APPLICATION_LIST_AUDIT = UserApplicationListAudit.USER_APPLICATION_LIST_AUDIT;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The table <code>public.user_application_role</code>.
|
* The table <code>public.user_application_role</code>.
|
||||||
*/
|
*/
|
||||||
|
|
@ -139,6 +145,7 @@ public class Public extends SchemaImpl {
|
||||||
Shedlock.SHEDLOCK,
|
Shedlock.SHEDLOCK,
|
||||||
UserApplicationDocument.USER_APPLICATION_DOCUMENT,
|
UserApplicationDocument.USER_APPLICATION_DOCUMENT,
|
||||||
UserApplicationList.USER_APPLICATION_LIST,
|
UserApplicationList.USER_APPLICATION_LIST,
|
||||||
|
UserApplicationListAudit.USER_APPLICATION_LIST_AUDIT,
|
||||||
UserApplicationRole.USER_APPLICATION_ROLE
|
UserApplicationRole.USER_APPLICATION_ROLE
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,7 @@ import ru.micord.ervu.account_applications.db_beans.public_.tables.Recruitment;
|
||||||
import ru.micord.ervu.account_applications.db_beans.public_.tables.Shedlock;
|
import ru.micord.ervu.account_applications.db_beans.public_.tables.Shedlock;
|
||||||
import ru.micord.ervu.account_applications.db_beans.public_.tables.UserApplicationDocument;
|
import ru.micord.ervu.account_applications.db_beans.public_.tables.UserApplicationDocument;
|
||||||
import ru.micord.ervu.account_applications.db_beans.public_.tables.UserApplicationList;
|
import ru.micord.ervu.account_applications.db_beans.public_.tables.UserApplicationList;
|
||||||
|
import ru.micord.ervu.account_applications.db_beans.public_.tables.UserApplicationListAudit;
|
||||||
import ru.micord.ervu.account_applications.db_beans.public_.tables.UserApplicationRole;
|
import ru.micord.ervu.account_applications.db_beans.public_.tables.UserApplicationRole;
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -81,6 +82,11 @@ public class Tables {
|
||||||
*/
|
*/
|
||||||
public static final UserApplicationList USER_APPLICATION_LIST = UserApplicationList.USER_APPLICATION_LIST;
|
public static final UserApplicationList USER_APPLICATION_LIST = UserApplicationList.USER_APPLICATION_LIST;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The table <code>public.user_application_list_audit</code>.
|
||||||
|
*/
|
||||||
|
public static final UserApplicationListAudit USER_APPLICATION_LIST_AUDIT = UserApplicationListAudit.USER_APPLICATION_LIST_AUDIT;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The table <code>public.user_application_role</code>.
|
* The table <code>public.user_application_role</code>.
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,19 @@
|
||||||
package ru.micord.ervu.account_applications.service;
|
package ru.micord.ervu.account_applications.service;
|
||||||
|
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.apache.kafka.common.protocol.types.Field;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
import ru.micord.ervu.account_applications.component.dao.AuditDao;
|
||||||
import ru.micord.ervu.account_applications.dao.UserApplicationListDao;
|
import ru.micord.ervu.account_applications.dao.UserApplicationListDao;
|
||||||
|
import ru.micord.ervu.account_applications.security.context.SecurityContext;
|
||||||
|
import ru.micord.ervu.account_applications.security.model.jwt.UserSession;
|
||||||
|
|
||||||
|
import static ru.micord.ervu.account_applications.enums.ApplicationStatus.ACCEPTED;
|
||||||
|
import static ru.micord.ervu.account_applications.enums.ApplicationStatus.AGREED;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author gulnaz
|
* @author gulnaz
|
||||||
|
|
@ -11,9 +22,13 @@ import ru.micord.ervu.account_applications.dao.UserApplicationListDao;
|
||||||
public class UserApplicationListService {
|
public class UserApplicationListService {
|
||||||
|
|
||||||
private final UserApplicationListDao dao;
|
private final UserApplicationListDao dao;
|
||||||
|
private final AuditDao auditDao;
|
||||||
|
private final SecurityContext securityContext;
|
||||||
|
|
||||||
public UserApplicationListService(UserApplicationListDao dao) {
|
public UserApplicationListService(UserApplicationListDao dao, AuditDao auditDao, SecurityContext securityContext) {
|
||||||
this.dao = dao;
|
this.dao = dao;
|
||||||
|
this.auditDao = auditDao;
|
||||||
|
this.securityContext = securityContext;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void saveTraceId(String traceId, long appNumber) {
|
public void saveTraceId(String traceId, long appNumber) {
|
||||||
|
|
@ -22,6 +37,7 @@ public class UserApplicationListService {
|
||||||
|
|
||||||
public void savePassword(String traceId, String encodedPass) {
|
public void savePassword(String traceId, String encodedPass) {
|
||||||
dao.savePassword(traceId, encodedPass);
|
dao.savePassword(traceId, encodedPass);
|
||||||
|
saveAuditStatusByTraceId(traceId, ACCEPTED.name());
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean userExists(String login){
|
public boolean userExists(String login){
|
||||||
|
|
@ -30,6 +46,7 @@ public class UserApplicationListService {
|
||||||
|
|
||||||
public void saveAcceptedStatus(String traceId) {
|
public void saveAcceptedStatus(String traceId) {
|
||||||
dao.saveAcceptedStatus(traceId);
|
dao.saveAcceptedStatus(traceId);
|
||||||
|
saveAuditStatusByTraceId(traceId, ACCEPTED.name());
|
||||||
}
|
}
|
||||||
|
|
||||||
public void saveAgreedStatus(long appNumber) {
|
public void saveAgreedStatus(long appNumber) {
|
||||||
|
|
@ -38,5 +55,16 @@ public class UserApplicationListService {
|
||||||
|
|
||||||
public void saveError(String traceId, String errorMsg) {
|
public void saveError(String traceId, String errorMsg) {
|
||||||
dao.saveError(traceId, errorMsg);
|
dao.saveError(traceId, errorMsg);
|
||||||
|
saveAuditStatusByTraceId(traceId, AGREED.name());
|
||||||
|
}
|
||||||
|
|
||||||
|
private void saveAuditStatusByTraceId(String traceId, String status) {
|
||||||
|
List<Long> appListIds = auditDao.selectAppListIdsByTraceId(traceId);
|
||||||
|
UserSession userSession = securityContext.getUserSession();
|
||||||
|
String name = userSession.name();
|
||||||
|
String userId = userSession.userId();
|
||||||
|
appListIds.forEach(id -> {
|
||||||
|
auditDao.insert(id, name, userId, status, Timestamp.valueOf(LocalDateTime.now()));
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,28 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<databaseChangeLog
|
||||||
|
xmlns="http://www.liquibase.org/xml/ns/dbchangelog/1.9"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog/1.9
|
||||||
|
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-1.9.xsd">
|
||||||
|
|
||||||
|
<changeSet id="0001" author="tihomirov">
|
||||||
|
<comment>add audit table</comment>
|
||||||
|
<sql>
|
||||||
|
CREATE TABLE IF NOT EXISTS public.user_application_list_audit (
|
||||||
|
id uuid NOT NULL DEFAULT uuid_generate_v4(),
|
||||||
|
user_application_list_id bigserial,
|
||||||
|
date TIMESTAMP WITHOUT TIME ZONE DEFAULT now(),
|
||||||
|
status character varying(100),
|
||||||
|
fio character varying(1000),
|
||||||
|
login character varying(1000)
|
||||||
|
)
|
||||||
|
TABLESPACE pg_default;
|
||||||
|
|
||||||
|
ALTER TABLE IF EXISTS public.user_application_list_audit
|
||||||
|
OWNER TO ervu_account_applications;
|
||||||
|
|
||||||
|
GRANT ALL ON TABLE public.user_application_role TO ervu_account_applications;
|
||||||
|
</sql>
|
||||||
|
</changeSet>
|
||||||
|
|
||||||
|
</databaseChangeLog>
|
||||||
|
|
@ -799,6 +799,10 @@
|
||||||
<entry>
|
<entry>
|
||||||
<key>formDao</key>
|
<key>formDao</key>
|
||||||
<value>
|
<value>
|
||||||
|
<implRef type="JAVA">
|
||||||
|
<className>AuditFormDaoImpl</className>
|
||||||
|
<packageName>ru.micord.ervu.account_applications.component.service</packageName>
|
||||||
|
</implRef>
|
||||||
<complex>
|
<complex>
|
||||||
<entry>
|
<entry>
|
||||||
<key>graph</key>
|
<key>graph</key>
|
||||||
|
|
|
||||||
|
|
@ -8870,13 +8870,6 @@
|
||||||
<container>false</container>
|
<container>false</container>
|
||||||
<removed>true</removed>
|
<removed>true</removed>
|
||||||
</children>
|
</children>
|
||||||
<children id="5b8c5ac4-549d-411f-80ff-d29293638e5f">
|
|
||||||
<prototypeId>887d2044-9e34-46a5-852c-e9ce07b42f30</prototypeId>
|
|
||||||
<componentRootId>5b8c5ac4-549d-411f-80ff-d29293638e5f</componentRootId>
|
|
||||||
<name>Пол</name>
|
|
||||||
<container>false</container>
|
|
||||||
<removed>true</removed>
|
|
||||||
</children>
|
|
||||||
<children id="39040b94-4780-4067-864e-64ad3d22a2a3">
|
<children id="39040b94-4780-4067-864e-64ad3d22a2a3">
|
||||||
<prototypeId>4d981f15-5535-45f7-882b-3647b251ad05</prototypeId>
|
<prototypeId>4d981f15-5535-45f7-882b-3647b251ad05</prototypeId>
|
||||||
<componentRootId>39040b94-4780-4067-864e-64ad3d22a2a3</componentRootId>
|
<componentRootId>39040b94-4780-4067-864e-64ad3d22a2a3</componentRootId>
|
||||||
|
|
|
||||||
|
|
@ -8871,13 +8871,6 @@
|
||||||
<container>false</container>
|
<container>false</container>
|
||||||
<removed>true</removed>
|
<removed>true</removed>
|
||||||
</children>
|
</children>
|
||||||
<children id="5b8c5ac4-549d-411f-80ff-d29293638e5f">
|
|
||||||
<prototypeId>887d2044-9e34-46a5-852c-e9ce07b42f30</prototypeId>
|
|
||||||
<componentRootId>5b8c5ac4-549d-411f-80ff-d29293638e5f</componentRootId>
|
|
||||||
<name>Пол</name>
|
|
||||||
<container>false</container>
|
|
||||||
<removed>true</removed>
|
|
||||||
</children>
|
|
||||||
<children id="39040b94-4780-4067-864e-64ad3d22a2a3">
|
<children id="39040b94-4780-4067-864e-64ad3d22a2a3">
|
||||||
<prototypeId>4d981f15-5535-45f7-882b-3647b251ad05</prototypeId>
|
<prototypeId>4d981f15-5535-45f7-882b-3647b251ad05</prototypeId>
|
||||||
<componentRootId>39040b94-4780-4067-864e-64ad3d22a2a3</componentRootId>
|
<componentRootId>39040b94-4780-4067-864e-64ad3d22a2a3</componentRootId>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue