diff --git a/backend/src/main/java/ervu/client/classified/ClassifierOrgClient.java b/backend/src/main/java/ervu/client/classified/EsnsiOkopfClient.java similarity index 81% rename from backend/src/main/java/ervu/client/classified/ClassifierOrgClient.java rename to backend/src/main/java/ervu/client/classified/EsnsiOkopfClient.java index 01e582fe..7a22b36d 100644 --- a/backend/src/main/java/ervu/client/classified/ClassifierOrgClient.java +++ b/backend/src/main/java/ervu/client/classified/EsnsiOkopfClient.java @@ -20,16 +20,16 @@ import org.springframework.stereotype.Component; * @author Artyom Hackimullin */ @Component -public class ClassifierOrgClient { +public class EsnsiOkopfClient { - private static final Logger logger = LoggerFactory.getLogger(ClassifierOrgClient.class); + private static final Logger logger = LoggerFactory.getLogger(EsnsiOkopfClient.class); - @Value("${ervu.esnsi.classifier.url.load:#{null}}") + @Value("${esnsi.okopf.url:#{null}}") private String uri; @Retryable(value = {TimeoutException.class}, backoff = @Backoff(delay = 2000)) - public String getJsonClassifierOrgResponse() { + public String getJsonOkopFormData() { HttpClient client = HttpClient.newHttpClient(); HttpRequest request = HttpRequest.newBuilder() .uri(URI.create(uri)) @@ -40,7 +40,7 @@ public class ClassifierOrgClient { HttpResponse.BodyHandlers.ofInputStream() ); if (response.statusCode() >= 200 && response.statusCode() <= 202) { - return unzipJsonFile(new ZipInputStream(response.body())); + return unzipFile(new ZipInputStream(response.body())); } logger.debug("Response unsuccessful. Json file has not be unzip."); } @@ -50,7 +50,7 @@ public class ClassifierOrgClient { return null; } - private String unzipJsonFile(ZipInputStream zis) throws IOException { + private String unzipFile(ZipInputStream zis) throws IOException { if (zis.getNextEntry() != null) { ByteArrayInputStream isr = new ByteArrayInputStream(zis.readAllBytes()); try (BufferedReader br = new BufferedReader(new InputStreamReader(isr))) { diff --git a/backend/src/main/java/ervu/dao/classifier/ClassifierAttributeDao.java b/backend/src/main/java/ervu/dao/classifier/ClassifierAttributeDao.java deleted file mode 100644 index d56c1139..00000000 --- a/backend/src/main/java/ervu/dao/classifier/ClassifierAttributeDao.java +++ /dev/null @@ -1,13 +0,0 @@ -package ervu.dao.classifier; - - -import ervu.service.classifier.model.ClassifierAttributeModel; - -/** - * @author Artyom Hackimullin - */ -public interface ClassifierAttributeDao { - void save(ClassifierAttributeModel[] classifierAttributeModels); - - void deleteIfNotExistRecords(); -} diff --git a/backend/src/main/java/ervu/dao/classifier/ClassifierAttributeDaoImpl.java b/backend/src/main/java/ervu/dao/classifier/ClassifierAttributeDaoImpl.java deleted file mode 100644 index 1afcb1e2..00000000 --- a/backend/src/main/java/ervu/dao/classifier/ClassifierAttributeDaoImpl.java +++ /dev/null @@ -1,45 +0,0 @@ -package ervu.dao.classifier; - -import java.util.Arrays; -import java.util.UUID; - -import ervu.service.classifier.model.ClassifierAttributeModel; -import org.jooq.DSLContext; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Repository; - -import static ervu_lkrp_ul.ervu_lkrp_ul.db_beans.public_.Tables.RECORD_ATTRIBUTES; -import static ervu_lkrp_ul.ervu_lkrp_ul.db_beans.public_.tables.ClassifierAttributes.CLASSIFIER_ATTRIBUTES; - -/** - * @author Artyom Hackimullin - */ -@Repository -public class ClassifierAttributeDaoImpl implements ClassifierAttributeDao { - - @Autowired - private DSLContext dsl; - - public void save(ClassifierAttributeModel[] classifierAttributeModels) { - var queries = Arrays.stream(classifierAttributeModels).map(attribute -> { - var uid = UUID.fromString(attribute.getUid()); - return dsl.insertInto(CLASSIFIER_ATTRIBUTES) - .set(CLASSIFIER_ATTRIBUTES.CLASSIFIER_ATTRIBUTE_ID, uid) - .set(CLASSIFIER_ATTRIBUTES.ATTRIBUTE_NAME, attribute.getName()) - .onConflict(CLASSIFIER_ATTRIBUTES.CLASSIFIER_ATTRIBUTE_ID) - .doUpdate() - .set(CLASSIFIER_ATTRIBUTES.ATTRIBUTE_NAME, attribute.getName()); - }).toList(); - dsl.batch(queries).execute(); - } - - @Override - public void deleteIfNotExistRecords() { - dsl.deleteFrom(CLASSIFIER_ATTRIBUTES).whereNotExists( - dsl.selectOne() - .from(RECORD_ATTRIBUTES) - .where(RECORD_ATTRIBUTES.ATTRIBUTE_ID.eq(CLASSIFIER_ATTRIBUTES.CLASSIFIER_ATTRIBUTE_ID))) - .execute(); - } - -} diff --git a/backend/src/main/java/ervu/dao/classifier/OkopfDao.java b/backend/src/main/java/ervu/dao/classifier/OkopfDao.java new file mode 100644 index 00000000..10dc680e --- /dev/null +++ b/backend/src/main/java/ervu/dao/classifier/OkopfDao.java @@ -0,0 +1,16 @@ +package ervu.dao.classifier; + + +import java.util.List; + +import ervu.service.classifier.model.OkopfModel; + + +/** + * @author Artyom Hackimullin + */ +public interface OkopfDao { + void save(List recordModels, int version); + + String fetchTitleByLeg(String leg); +} diff --git a/backend/src/main/java/ervu/dao/classifier/OkopfDaoImpl.java b/backend/src/main/java/ervu/dao/classifier/OkopfDaoImpl.java new file mode 100644 index 00000000..2afeb795 --- /dev/null +++ b/backend/src/main/java/ervu/dao/classifier/OkopfDaoImpl.java @@ -0,0 +1,44 @@ +package ervu.dao.classifier; + +import java.util.List; + +import ervu.service.classifier.model.OkopfModel; +import org.jooq.DSLContext; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Repository; + +import static ervu_lkrp_ul.ervu_lkrp_ul.db_beans.public_.Tables.OKOPF_RECORDS; + + +/** + * @author Artyom Hackimullin + */ +@Repository +public class OkopfDaoImpl implements OkopfDao { + + @Autowired + private DSLContext dsl; + + @Override + public void save(List recordModels, int version) { + var queries = recordModels.stream().map(record -> + dsl.insertInto(OKOPF_RECORDS, OKOPF_RECORDS.OKOPF_RECORDS_ID, OKOPF_RECORDS.NAME, OKOPF_RECORDS.VERSION) + .values(record.getCode(), record.getName(), version) + .onConflict(OKOPF_RECORDS.OKOPF_RECORDS_ID) + .doUpdate() + .set(OKOPF_RECORDS.NAME, record.getName()) + .set(OKOPF_RECORDS.VERSION, version) + .where(OKOPF_RECORDS.OKOPF_RECORDS_ID.eq(record.getCode())) + ).toList(); + + dsl.batch(queries).execute(); + } + + @Override + public String fetchTitleByLeg(String leg) { + return dsl.select(OKOPF_RECORDS.NAME) + .from(OKOPF_RECORDS) + .where(OKOPF_RECORDS.OKOPF_RECORDS_ID.eq(leg)) + .fetchOne(OKOPF_RECORDS.NAME); + } +} diff --git a/backend/src/main/java/ervu/dao/classifier/RecordAttributesDao.java b/backend/src/main/java/ervu/dao/classifier/RecordAttributesDao.java deleted file mode 100644 index bf61ba85..00000000 --- a/backend/src/main/java/ervu/dao/classifier/RecordAttributesDao.java +++ /dev/null @@ -1,17 +0,0 @@ -package ervu.dao.classifier; - - -import ervu.service.classifier.model.RecordModel; - -/** - * @author Artyom Hackimullin - */ -public interface RecordAttributesDao { - void save(RecordModel[] recordModels, String version); - - String fetchTitleByLeg(String leg); - - void deleteAllByVersion(String version); - - String fetchVersion(); -} diff --git a/backend/src/main/java/ervu/dao/classifier/RecordAttributesDaoImpl.java b/backend/src/main/java/ervu/dao/classifier/RecordAttributesDaoImpl.java deleted file mode 100644 index c32fc398..00000000 --- a/backend/src/main/java/ervu/dao/classifier/RecordAttributesDaoImpl.java +++ /dev/null @@ -1,83 +0,0 @@ -package ervu.dao.classifier; - -import java.util.Arrays; -import java.util.UUID; - -import ervu.service.classifier.model.RecordModel; -import org.jooq.DSLContext; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Repository; - -import static ervu_lkrp_ul.ervu_lkrp_ul.db_beans.public_.tables.ClassifierAttributes.CLASSIFIER_ATTRIBUTES; -import static ervu_lkrp_ul.ervu_lkrp_ul.db_beans.public_.tables.RecordAttributes.RECORD_ATTRIBUTES; - - -/** - * @author Artyom Hackimullin - */ -@Repository -public class RecordAttributesDaoImpl implements RecordAttributesDao { - - @Autowired - private DSLContext dsl; - - @Override - public void save(RecordModel[] recordModels, String version) { - var queries = Arrays.stream(recordModels) - .flatMap(it -> Arrays.stream(it.getAttributeValues()) - .map(attribute -> { - var recordUid = UUID.fromString(it.getUid()); - var attributeUid = UUID.fromString(attribute.getAttributeUid()); - var value = attribute.getValue(); - - return dsl.insertInto(RECORD_ATTRIBUTES, - RECORD_ATTRIBUTES.RECORD_ID, - RECORD_ATTRIBUTES.ATTRIBUTE_ID, - RECORD_ATTRIBUTES.ATTRIBUTE_VALUE, - RECORD_ATTRIBUTES.VERSION - ) - .values(recordUid, attributeUid, value, version) - .onConflict(RECORD_ATTRIBUTES.RECORD_ID, RECORD_ATTRIBUTES.ATTRIBUTE_ID) - .doUpdate() - .set(RECORD_ATTRIBUTES.ATTRIBUTE_VALUE, value) - .set(RECORD_ATTRIBUTES.VERSION, version) - .where(RECORD_ATTRIBUTES.RECORD_ID.eq(recordUid) - .and(RECORD_ATTRIBUTES.ATTRIBUTE_ID.eq(attributeUid))); - })) - .toList(); - - dsl.batch(queries).execute(); - } - - @Override - public String fetchVersion() { - return dsl.select(RECORD_ATTRIBUTES.VERSION) - .from(RECORD_ATTRIBUTES) - .limit(1) - .fetchOptional(RECORD_ATTRIBUTES.VERSION) - .orElse("0"); - } - - @Override - public String fetchTitleByLeg(String leg) { - return dsl.select(RECORD_ATTRIBUTES.ATTRIBUTE_VALUE) - .from(RECORD_ATTRIBUTES) - .join(CLASSIFIER_ATTRIBUTES) - .on(RECORD_ATTRIBUTES.ATTRIBUTE_ID.eq(CLASSIFIER_ATTRIBUTES.CLASSIFIER_ATTRIBUTE_ID)) - .where(CLASSIFIER_ATTRIBUTES.ATTRIBUTE_NAME.eq("title") - .and(RECORD_ATTRIBUTES.RECORD_ID.eq( - dsl.select(RECORD_ATTRIBUTES.RECORD_ID) - .from(RECORD_ATTRIBUTES) - .where(RECORD_ATTRIBUTES.ATTRIBUTE_VALUE.equal(leg)) - .fetchOneInto(UUID.class))) - ) - .fetchOneInto(String.class); - } - - @Override - public void deleteAllByVersion(String version) { - dsl.deleteFrom(RECORD_ATTRIBUTES) - .where(RECORD_ATTRIBUTES.VERSION.eq(version)) - .execute(); - } -} diff --git a/backend/src/main/java/ervu/service/classifier/RecordAttributesService.java b/backend/src/main/java/ervu/service/classifier/OkopfService.java similarity index 72% rename from backend/src/main/java/ervu/service/classifier/RecordAttributesService.java rename to backend/src/main/java/ervu/service/classifier/OkopfService.java index ce4e4111..bc068d89 100644 --- a/backend/src/main/java/ervu/service/classifier/RecordAttributesService.java +++ b/backend/src/main/java/ervu/service/classifier/OkopfService.java @@ -3,7 +3,7 @@ package ervu.service.classifier; /** * @author Artyom Hackimullin */ -public interface RecordAttributesService { +public interface OkopfService { String findTitleByLeg(String leg); diff --git a/backend/src/main/java/ervu/service/classifier/RecordAttributesServiceImpl.java b/backend/src/main/java/ervu/service/classifier/OkopfServiceImpl.java similarity index 50% rename from backend/src/main/java/ervu/service/classifier/RecordAttributesServiceImpl.java rename to backend/src/main/java/ervu/service/classifier/OkopfServiceImpl.java index b632860c..4f1308f1 100644 --- a/backend/src/main/java/ervu/service/classifier/RecordAttributesServiceImpl.java +++ b/backend/src/main/java/ervu/service/classifier/OkopfServiceImpl.java @@ -1,6 +1,8 @@ package ervu.service.classifier; -import ervu.dao.classifier.RecordAttributesDao; +import ervu.dao.classifier.OkopfDao; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -9,14 +11,16 @@ import org.springframework.transaction.annotation.Transactional; * @author Artyom Hackimullin */ @Service -public class RecordAttributesServiceImpl implements RecordAttributesService { +public class OkopfServiceImpl implements OkopfService { + private final static Logger logger = LoggerFactory.getLogger(OkopfServiceImpl.class); @Autowired - private RecordAttributesDao recordAttributesDao; + private OkopfDao okopfDao; @Override @Transactional(readOnly = true) public String findTitleByLeg(String leg) { - return recordAttributesDao.fetchTitleByLeg(leg); + logger.info("Find title by leg: " + leg); + return okopfDao.fetchTitleByLeg(leg); } } diff --git a/backend/src/main/java/ervu/service/classifier/model/ClassifierAttributeModel.java b/backend/src/main/java/ervu/service/classifier/model/ClassifierAttributeModel.java deleted file mode 100644 index da8660a8..00000000 --- a/backend/src/main/java/ervu/service/classifier/model/ClassifierAttributeModel.java +++ /dev/null @@ -1,94 +0,0 @@ -package ervu.service.classifier.model; - -import com.fasterxml.jackson.annotation.JsonIgnoreProperties; - -/** - * @author Artyom Hackimullin - */ -@JsonIgnoreProperties(ignoreUnknown = true) -public class ClassifierAttributeModel { - private final static long serialVersionUID = 1L; - - private String uid; - - private String type; - - private String name; - - private String techName; - - private Boolean required; - - private Boolean unique; - - private Integer length; - - public String getUid() { - return uid; - } - - public void setUid(String uid) { - this.uid = uid; - } - - public String getType() { - return type; - } - - public void setType(String type) { - this.type = type; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getTechName() { - return techName; - } - - public void setTechName(String techName) { - this.techName = techName; - } - - public Boolean getRequired() { - return required; - } - - public void setRequired(Boolean required) { - this.required = required; - } - - public Boolean getUnique() { - return unique; - } - - public void setUnique(Boolean unique) { - this.unique = unique; - } - - public Integer getLength() { - return length; - } - - public void setLength(Integer length) { - this.length = length; - } - - @Override - public String toString() { - return "ClassifierAttribute{" + - "uid='" + uid + '\'' + - ", type='" + type + '\'' + - ", name='" + name + '\'' + - ", techName='" + techName + '\'' + - ", required=" + required + - ", unique=" + unique + - ", length=" + length + - '}'; - } -} diff --git a/backend/src/main/java/ervu/service/classifier/model/ClassifierFormModel.java b/backend/src/main/java/ervu/service/classifier/model/ClassifierFormModel.java deleted file mode 100644 index b2604e0a..00000000 --- a/backend/src/main/java/ervu/service/classifier/model/ClassifierFormModel.java +++ /dev/null @@ -1,41 +0,0 @@ -package ervu.service.classifier.model; - -import java.io.Serializable; - -import com.fasterxml.jackson.annotation.JsonIgnoreProperties; - -/** - * @author Artyom Hackimullin - */ -@JsonIgnoreProperties(ignoreUnknown = true) -public class ClassifierFormModel implements Serializable { - private static final long serialVersionUID = 1L; - - private ClassifierOrgModel classifier; - - private ClassifierNodeModel data; - - public ClassifierOrgModel getClassifier() { - return classifier; - } - - public void setClassifier(ClassifierOrgModel classifier) { - this.classifier = classifier; - } - - public ClassifierNodeModel getData() { - return data; - } - - public void setData(ClassifierNodeModel data) { - this.data = data; - } - - @Override - public String toString() { - return "ClassifierFormModel{" + - "classifier=" + classifier + - ", data=" + data + - '}'; - } -} diff --git a/backend/src/main/java/ervu/service/classifier/model/ClassifierNodeModel.java b/backend/src/main/java/ervu/service/classifier/model/ClassifierNodeModel.java deleted file mode 100644 index d8da699f..00000000 --- a/backend/src/main/java/ervu/service/classifier/model/ClassifierNodeModel.java +++ /dev/null @@ -1,30 +0,0 @@ -package ervu.service.classifier.model; - -import java.io.Serializable; - -/** - * @author Artyom Hackimullin - */ -public class ClassifierNodeModel implements Serializable { - private static final long serialVersionUID = 1L; - - private String classifierUid; - - private RecordModel[] records; - - public String getClassifierUid() { - return classifierUid; - } - - public void setClassifierUid(String classifierUid) { - this.classifierUid = classifierUid; - } - - public RecordModel[] getRecords() { - return records; - } - - public void setRecords(RecordModel[] records) { - this.records = records; - } -} diff --git a/backend/src/main/java/ervu/service/classifier/model/ClassifierOrgModel.java b/backend/src/main/java/ervu/service/classifier/model/ClassifierOrgModel.java deleted file mode 100644 index c6387906..00000000 --- a/backend/src/main/java/ervu/service/classifier/model/ClassifierOrgModel.java +++ /dev/null @@ -1,155 +0,0 @@ -package ervu.service.classifier.model; - -import java.io.Serializable; -import java.time.LocalDateTime; -import java.util.Arrays; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.fasterxml.jackson.annotation.JsonIgnoreProperties; - -/** - * @author Artyom Hackimullin - */ -@JsonIgnoreProperties(ignoreUnknown = true) -public class ClassifierOrgModel implements Serializable { - private static final long serialVersionUID = 1L; - - private String uid; - - private String code; - - private String name; - - private String description; - - private String version; - - private String publicId; - - private String techName; - - private String updatePeriod; - - private ClassifierAttributeModel[] attributes; - - @JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSX") - private LocalDateTime revisionTimestamp; - - private String keyAttributeUid; - - private String type; - - public String getUid() { - return uid; - } - - public void setUid(String uid) { - this.uid = uid; - } - - public String getCode() { - return code; - } - - public void setCode(String code) { - this.code = code; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getDescription() { - return description; - } - - public void setDescription(String description) { - this.description = description; - } - - public String getVersion() { - return version; - } - - public void setVersion(String version) { - this.version = version; - } - - public String getPublicId() { - return publicId; - } - - public void setPublicId(String publicId) { - this.publicId = publicId; - } - - public String getTechName() { - return techName; - } - - public void setTechName(String techName) { - this.techName = techName; - } - - public String getUpdatePeriod() { - return updatePeriod; - } - - public void setUpdatePeriod(String updatePeriod) { - this.updatePeriod = updatePeriod; - } - - public ClassifierAttributeModel[] getAttributes() { - return attributes; - } - - public void setAttributes(ClassifierAttributeModel[] attributes) { - this.attributes = attributes; - } - - public LocalDateTime getRevisionTimestamp() { - return revisionTimestamp; - } - - public void setRevisionTimestamp(LocalDateTime revisionTimestamp) { - this.revisionTimestamp = revisionTimestamp; - } - - public String getKeyAttributeUid() { - return keyAttributeUid; - } - - public void setKeyAttributeUid(String keyAttributeUid) { - this.keyAttributeUid = keyAttributeUid; - } - - public String getType() { - return type; - } - - public void setType(String type) { - this.type = type; - } - - @Override - public String toString() { - return "ClassifierOrgModel{" + - "uid='" + uid + '\'' + - ", code='" + code + '\'' + - ", name='" + name + '\'' + - ", description='" + description + '\'' + - ", version='" + version + '\'' + - ", publicId='" + publicId + '\'' + - ", techName='" + techName + '\'' + - ", updatePeriod='" + updatePeriod + '\'' + - ", attributes=" + Arrays.toString(attributes) + - ", revisionTimestamp=" + revisionTimestamp + - ", keyAttributeUid='" + keyAttributeUid + '\'' + - ", type='" + type + '\'' + - '}'; - } -} diff --git a/backend/src/main/java/ervu/service/classifier/model/OkopfAttributeValueModel.java b/backend/src/main/java/ervu/service/classifier/model/OkopfAttributeValueModel.java new file mode 100644 index 00000000..2d6415d4 --- /dev/null +++ b/backend/src/main/java/ervu/service/classifier/model/OkopfAttributeValueModel.java @@ -0,0 +1,27 @@ +package ervu.service.classifier.model; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; + +/** + * @author xakim + */ +@JsonIgnoreProperties(ignoreUnknown = true) +public class OkopfAttributeValueModel { + + private String value; + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } + + @Override + public String toString() { + return "OkopfAttributeValueModel{" + + "value='" + value + '\'' + + '}'; + } +} diff --git a/backend/src/main/java/ervu/service/classifier/model/OkopfDataModel.java b/backend/src/main/java/ervu/service/classifier/model/OkopfDataModel.java new file mode 100644 index 00000000..f9cd4e6e --- /dev/null +++ b/backend/src/main/java/ervu/service/classifier/model/OkopfDataModel.java @@ -0,0 +1,33 @@ +package ervu.service.classifier.model; + +import java.io.Serializable; +import java.util.Arrays; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * @author xakim + */ +@JsonIgnoreProperties(ignoreUnknown = true) +public class OkopfDataModel implements Serializable { + private static final long serialVersionUID = 1L; + + @JsonProperty("records") + private OkopfDetailsModel[] details; + + public OkopfDetailsModel[] getDetails() { + return details; + } + + public void setDetails(OkopfDetailsModel[] details) { + this.details = details; + } + + @Override + public String toString() { + return "OkopfDataModel{" + + "details=" + Arrays.toString(details) + + '}'; + } +} diff --git a/backend/src/main/java/ervu/service/classifier/model/OkopfDetailsModel.java b/backend/src/main/java/ervu/service/classifier/model/OkopfDetailsModel.java new file mode 100644 index 00000000..c21ee6ad --- /dev/null +++ b/backend/src/main/java/ervu/service/classifier/model/OkopfDetailsModel.java @@ -0,0 +1,37 @@ +package ervu.service.classifier.model; + +import java.util.Arrays; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; + +/** + * @author xakim + */ +@JsonIgnoreProperties(ignoreUnknown = true) +public class OkopfDetailsModel { + + private OkopfAttributeValueModel[] attributeValues; + + public OkopfDetailsModel() { + } + + public OkopfDetailsModel(OkopfAttributeValueModel[] attributeValues) { + this.attributeValues = attributeValues; + } + + public OkopfAttributeValueModel[] getAttributeValues() { + return attributeValues; + } + + public void setAttributeValues( + OkopfAttributeValueModel[] attributeValues) { + this.attributeValues = attributeValues; + } + + @Override + public String toString() { + return "OkopfDataRecordsModel{" + + "attributeValues=" + Arrays.toString(attributeValues) + + '}'; + } +} diff --git a/backend/src/main/java/ervu/service/classifier/model/OkopfModel.java b/backend/src/main/java/ervu/service/classifier/model/OkopfModel.java new file mode 100644 index 00000000..fc4a849d --- /dev/null +++ b/backend/src/main/java/ervu/service/classifier/model/OkopfModel.java @@ -0,0 +1,43 @@ +package ervu.service.classifier.model; + +import java.io.Serializable; + +/** + * @author Artyom Hackimullin + */ +public class OkopfModel implements Serializable { + private static final long serialVersionUID = 1L; + + private String code; + + private String name; + + public OkopfModel(String code, String name) { + this.code = code; + this.name = name; + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + @Override + public String toString() { + return "OkopfRecordModel{" + + "code='" + code + '\'' + + ", name='" + name + '\'' + + '}'; + } +} diff --git a/backend/src/main/java/ervu/service/classifier/model/OkopfOrgModel.java b/backend/src/main/java/ervu/service/classifier/model/OkopfOrgModel.java new file mode 100644 index 00000000..63354e96 --- /dev/null +++ b/backend/src/main/java/ervu/service/classifier/model/OkopfOrgModel.java @@ -0,0 +1,19 @@ +package ervu.service.classifier.model; + +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * @author xakim + */ +public class OkopfOrgModel { + @JsonProperty("data") + private OkopfDataModel data; + + public OkopfDataModel getData() { + return data; + } + + public void setData(OkopfDataModel data) { + this.data = data; + } +} diff --git a/backend/src/main/java/ervu/service/classifier/model/RecordAttributeModel.java b/backend/src/main/java/ervu/service/classifier/model/RecordAttributeModel.java deleted file mode 100644 index 86d4eab1..00000000 --- a/backend/src/main/java/ervu/service/classifier/model/RecordAttributeModel.java +++ /dev/null @@ -1,30 +0,0 @@ -package ervu.service.classifier.model; - -import java.io.Serializable; - -/** - * @author Artyom Hackimullin - */ -public class RecordAttributeModel implements Serializable { - private static final long serialVersionUID = 1L; - - private String attributeUid; - - private String value; - - public String getAttributeUid() { - return attributeUid; - } - - public void setAttributeUid(String attributeUid) { - this.attributeUid = attributeUid; - } - - public String getValue() { - return value; - } - - public void setValue(String value) { - this.value = value; - } -} diff --git a/backend/src/main/java/ervu/service/classifier/model/RecordModel.java b/backend/src/main/java/ervu/service/classifier/model/RecordModel.java deleted file mode 100644 index 5c3a5261..00000000 --- a/backend/src/main/java/ervu/service/classifier/model/RecordModel.java +++ /dev/null @@ -1,30 +0,0 @@ -package ervu.service.classifier.model; - -import java.io.Serializable; - -/** - * @author Artyom Hackimullin - */ -public class RecordModel implements Serializable { - private static final long serialVersionUID = 1L; - - private String uid; - - private RecordAttributeModel[] attributeValues; - - public RecordAttributeModel[] getAttributeValues() { - return attributeValues; - } - - public void setAttributeValues(RecordAttributeModel[] attributeValues) { - this.attributeValues = attributeValues; - } - - public String getUid() { - return uid; - } - - public void setUid(String uid) { - this.uid = uid; - } -} diff --git a/backend/src/main/java/ervu/service/scheduer/SchedulerService.java b/backend/src/main/java/ervu/service/scheduer/EsnsiOkopfSchedulerService.java similarity index 54% rename from backend/src/main/java/ervu/service/scheduer/SchedulerService.java rename to backend/src/main/java/ervu/service/scheduer/EsnsiOkopfSchedulerService.java index 37daa3fa..e2b884e0 100644 --- a/backend/src/main/java/ervu/service/scheduer/SchedulerService.java +++ b/backend/src/main/java/ervu/service/scheduer/EsnsiOkopfSchedulerService.java @@ -3,8 +3,8 @@ package ervu.service.scheduer; /** * @author Artyom Hackimullin */ -public interface SchedulerService { +public interface EsnsiOkopfSchedulerService { - void loadEveryPeriod(); + void load(); } diff --git a/backend/src/main/java/ervu/service/scheduer/EsnsiOkopfSchedulerServiceImpl.java b/backend/src/main/java/ervu/service/scheduer/EsnsiOkopfSchedulerServiceImpl.java new file mode 100644 index 00000000..94168770 --- /dev/null +++ b/backend/src/main/java/ervu/service/scheduer/EsnsiOkopfSchedulerServiceImpl.java @@ -0,0 +1,63 @@ +package ervu.service.scheduer; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; +import ervu.client.classified.EsnsiOkopfClient; +import ervu.dao.classifier.OkopfDao; +import ervu.service.classifier.model.*; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +/** + * @author Artyom Hackimullin + */ +@Service +public class EsnsiOkopfSchedulerServiceImpl implements EsnsiOkopfSchedulerService { + private static final Logger logger = LoggerFactory.getLogger( + EsnsiOkopfSchedulerServiceImpl.class); + + @Autowired + private EsnsiOkopfClient esnsiOkopfClient; + @Autowired + private OkopfDao okopfDao; + @Autowired + private ObjectMapper mapper; + + @Scheduled(cron = "${esnsi.okopf.cron:0 0 */1 * * *}") + @Transactional + public void load() { + String data = esnsiOkopfClient.getJsonOkopFormData(); + try { + logger.info("Start okopf scheduller. Load okopf file from esnsi"); + OkopfOrgModel orgModel = mapper.readValue(data, OkopfOrgModel.class); + List okopfRecords = mapToOkopfRecords(orgModel.getData()); + int currentVersion = mapper.readTree(data).findValue("version").asInt(); + logger.info("Saving okopf data in database."); + okopfDao.save(okopfRecords, currentVersion); + } + catch (JsonProcessingException e) { + throw new RuntimeException(e); + } + } + + private List mapToOkopfRecords(OkopfDataModel dataModel) { + Map okopfMap = new HashMap<>(); + for (OkopfDetailsModel detail : dataModel.getDetails()) { + OkopfAttributeValueModel[] attributeValues = detail.getAttributeValues(); + String key = attributeValues[0].getValue(); + String value = attributeValues[1].getValue(); + okopfMap.put(key, value); + } + return okopfMap.entrySet().stream() + .map(e -> new OkopfModel(e.getKey(), e.getValue())).collect(Collectors.toList()); + } +} diff --git a/backend/src/main/java/ervu/service/scheduer/SchedulerServiceImpl.java b/backend/src/main/java/ervu/service/scheduer/SchedulerServiceImpl.java deleted file mode 100644 index 52e18be8..00000000 --- a/backend/src/main/java/ervu/service/scheduer/SchedulerServiceImpl.java +++ /dev/null @@ -1,57 +0,0 @@ -package ervu.service.scheduer; - -import java.util.Objects; - -import com.fasterxml.jackson.core.JsonProcessingException; -import com.fasterxml.jackson.databind.ObjectMapper; -import ervu.client.classified.ClassifierOrgClient; -import ervu.dao.classifier.ClassifierAttributeDao; -import ervu.dao.classifier.RecordAttributesDao; -import ervu.service.classifier.model.ClassifierAttributeModel; -import ervu.service.classifier.model.ClassifierFormModel; -import ervu.service.classifier.model.RecordModel; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.scheduling.annotation.Scheduled; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -/** - * @author Artyom Hackimullin - */ -@Service -public class SchedulerServiceImpl implements SchedulerService { - @Autowired - private ClassifierOrgClient classifierOrgClient; - @Autowired - private ClassifierAttributeDao classifierAttributeDao; - @Autowired - private RecordAttributesDao recordAttributesDao; - @Autowired - private ObjectMapper mapper; - - @Scheduled(cron = "${ervu.cron.load.time:0 0 */1 * * *}") - @Transactional - public void loadEveryPeriod() { - try { - String json = Objects.requireNonNull(classifierOrgClient.getJsonClassifierOrgResponse()); - ClassifierFormModel classifierFormModel = mapper.readValue(json, ClassifierFormModel.class); - ClassifierAttributeModel[] classifierAttributeModels = classifierFormModel.getClassifier() - .getAttributes(); - RecordModel[] recordModels = classifierFormModel.getData().getRecords(); - String currentVersion = classifierFormModel.getClassifier().getVersion(); - var newVersion = Integer.parseInt(classifierFormModel.getClassifier().getVersion()); - var versionFromDb = Integer.parseInt(recordAttributesDao.fetchVersion()); - - classifierAttributeDao.save(classifierAttributeModels); - recordAttributesDao.save(recordModels, currentVersion); - - if (versionFromDb != 0 && versionFromDb < newVersion) { - recordAttributesDao.deleteAllByVersion(String.valueOf(versionFromDb)); - classifierAttributeDao.deleteIfNotExistRecords(); - } - } - catch (JsonProcessingException e) { - throw new RuntimeException(e); - } - } -} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/DefaultCatalog.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/DefaultCatalog.java index 49a51e16..59ff5ea4 100644 --- a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/DefaultCatalog.java +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/DefaultCatalog.java @@ -4,7 +4,10 @@ package ervu_lkrp_ul.ervu_lkrp_ul.db_beans; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.Appeals; import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.public_.Public; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.Ratings; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.security.Security; import java.util.Arrays; import java.util.List; @@ -27,11 +30,26 @@ public class DefaultCatalog extends CatalogImpl { */ public static final DefaultCatalog DEFAULT_CATALOG = new DefaultCatalog(); + /** + * The schema appeals. + */ + public final Appeals APPEALS = Appeals.APPEALS; + /** * The schema public. */ public final Public PUBLIC = Public.PUBLIC; + /** + * The schema ratings. + */ + public final Ratings RATINGS = Ratings.RATINGS; + + /** + * The schema security. + */ + public final Security SECURITY = Security.SECURITY; + /** * No further instances allowed */ @@ -42,7 +60,10 @@ public class DefaultCatalog extends CatalogImpl { @Override public final List getSchemas() { return Arrays.asList( - Public.PUBLIC + Appeals.APPEALS, + Public.PUBLIC, + Ratings.RATINGS, + Security.SECURITY ); } diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/Appeals.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/Appeals.java new file mode 100644 index 00000000..31d51688 --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/Appeals.java @@ -0,0 +1,76 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.DefaultCatalog; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.MainProfile; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.ReasonsAppeal; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.ReviewRating; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.TopicAppeal; + +import java.util.Arrays; +import java.util.List; + +import org.jooq.Catalog; +import org.jooq.Table; +import org.jooq.impl.SchemaImpl; + + +/** + * This class is generated by jOOQ. + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Appeals extends SchemaImpl { + + private static final long serialVersionUID = 1L; + + /** + * The reference instance of appeals + */ + public static final Appeals APPEALS = new Appeals(); + + /** + * Основной профиль уровень РФ + */ + public final MainProfile MAIN_PROFILE = MainProfile.MAIN_PROFILE; + + /** + * Причины обжалования уровень РФ + */ + public final ReasonsAppeal REASONS_APPEAL = ReasonsAppeal.REASONS_APPEAL; + + /** + * Рейтинг рассмотрения жалоб уровень РФ + */ + public final ReviewRating REVIEW_RATING = ReviewRating.REVIEW_RATING; + + /** + * Тема обжалования уровень РФ + */ + public final TopicAppeal TOPIC_APPEAL = TopicAppeal.TOPIC_APPEAL; + + /** + * No further instances allowed + */ + private Appeals() { + super("appeals", null); + } + + + @Override + public Catalog getCatalog() { + return DefaultCatalog.DEFAULT_CATALOG; + } + + @Override + public final List> getTables() { + return Arrays.asList( + MainProfile.MAIN_PROFILE, + ReasonsAppeal.REASONS_APPEAL, + ReviewRating.REVIEW_RATING, + TopicAppeal.TOPIC_APPEAL + ); + } +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/Keys.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/Keys.java new file mode 100644 index 00000000..da5c2982 --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/Keys.java @@ -0,0 +1,37 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.MainProfile; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.ReasonsAppeal; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.ReviewRating; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.TopicAppeal; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.records.MainProfileRecord; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.records.ReasonsAppealRecord; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.records.ReviewRatingRecord; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.records.TopicAppealRecord; + +import org.jooq.TableField; +import org.jooq.UniqueKey; +import org.jooq.impl.DSL; +import org.jooq.impl.Internal; + + +/** + * A class modelling foreign key relationships and constraints of tables in + * appeals. + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Keys { + + // ------------------------------------------------------------------------- + // UNIQUE and PRIMARY KEY definitions + // ------------------------------------------------------------------------- + + public static final UniqueKey PK_MAIN_PROFILE = Internal.createUniqueKey(MainProfile.MAIN_PROFILE, DSL.name("pk_main_profile"), new TableField[] { MainProfile.MAIN_PROFILE.ID_MAIN_PROFILE }, true); + public static final UniqueKey PK_REASONS_APPEAL = Internal.createUniqueKey(ReasonsAppeal.REASONS_APPEAL, DSL.name("pk_reasons_appeal"), new TableField[] { ReasonsAppeal.REASONS_APPEAL.ID_REASONS_APPEAL }, true); + public static final UniqueKey PK_REVIEW_RATING = Internal.createUniqueKey(ReviewRating.REVIEW_RATING, DSL.name("pk_review_rating"), new TableField[] { ReviewRating.REVIEW_RATING.ID_REVIEW_RATING }, true); + public static final UniqueKey PK_TOPIC_APPEAL = Internal.createUniqueKey(TopicAppeal.TOPIC_APPEAL, DSL.name("pk_topic_appeal"), new TableField[] { TopicAppeal.TOPIC_APPEAL.ID_TOPIC_APPEAL }, true); +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/Tables.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/Tables.java new file mode 100644 index 00000000..9978e004 --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/Tables.java @@ -0,0 +1,38 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.MainProfile; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.ReasonsAppeal; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.ReviewRating; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.TopicAppeal; + + +/** + * Convenience access to all tables in appeals. + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Tables { + + /** + * Основной профиль уровень РФ + */ + public static final MainProfile MAIN_PROFILE = MainProfile.MAIN_PROFILE; + + /** + * Причины обжалования уровень РФ + */ + public static final ReasonsAppeal REASONS_APPEAL = ReasonsAppeal.REASONS_APPEAL; + + /** + * Рейтинг рассмотрения жалоб уровень РФ + */ + public static final ReviewRating REVIEW_RATING = ReviewRating.REVIEW_RATING; + + /** + * Тема обжалования уровень РФ + */ + public static final TopicAppeal TOPIC_APPEAL = TopicAppeal.TOPIC_APPEAL; +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/MainProfile.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/MainProfile.java new file mode 100644 index 00000000..9ab32e8e --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/MainProfile.java @@ -0,0 +1,261 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.Appeals; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.Keys; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.records.MainProfileRecord; + +import java.sql.Date; +import java.util.Collection; +import java.util.UUID; + +import org.jooq.Condition; +import org.jooq.Field; +import org.jooq.Identity; +import org.jooq.Name; +import org.jooq.PlainSQL; +import org.jooq.QueryPart; +import org.jooq.SQL; +import org.jooq.Schema; +import org.jooq.Select; +import org.jooq.Stringly; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.TableOptions; +import org.jooq.UniqueKey; +import org.jooq.impl.DSL; +import org.jooq.impl.SQLDataType; +import org.jooq.impl.TableImpl; + + +/** + * Основной профиль уровень РФ + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class MainProfile extends TableImpl { + + private static final long serialVersionUID = 1L; + + /** + * The reference instance of appeals.main_profile + */ + public static final MainProfile MAIN_PROFILE = new MainProfile(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return MainProfileRecord.class; + } + + /** + * The column appeals.main_profile.id_main_profile. + */ + public final TableField ID_MAIN_PROFILE = createField(DSL.name("id_main_profile"), SQLDataType.BIGINT.nullable(false).identity(true), this, ""); + + /** + * The column appeals.main_profile.gender. Пол + */ + public final TableField GENDER = createField(DSL.name("gender"), SQLDataType.CLOB, this, "Пол"); + + /** + * The column appeals.main_profile.age. Возраст + */ + public final TableField AGE = createField(DSL.name("age"), SQLDataType.CLOB, this, "Возраст"); + + /** + * The column appeals.main_profile.child_min_18. Дети до 18 лет + */ + public final TableField CHILD_MIN_18 = createField(DSL.name("child_min_18"), SQLDataType.CLOB, this, "Дети до 18 лет"); + + /** + * The column appeals.main_profile.education. Образование + */ + public final TableField EDUCATION = createField(DSL.name("education"), SQLDataType.CLOB, this, "Образование"); + + /** + * The column appeals.main_profile.employment. Занятость + */ + public final TableField EMPLOYMENT = createField(DSL.name("employment"), SQLDataType.CLOB, this, "Занятость"); + + /** + * The column appeals.main_profile.recording_date. Дата записи + */ + public final TableField RECORDING_DATE = createField(DSL.name("recording_date"), SQLDataType.DATE.defaultValue(DSL.field(DSL.raw("now()"), SQLDataType.DATE)), this, "Дата записи"); + + /** + * The column appeals.main_profile.recruitment_id. + */ + public final TableField RECRUITMENT_ID = createField(DSL.name("recruitment_id"), SQLDataType.UUID, this, ""); + + private MainProfile(Name alias, Table aliased) { + this(alias, aliased, (Field[]) null, null); + } + + private MainProfile(Name alias, Table aliased, Field[] parameters, Condition where) { + super(alias, null, aliased, parameters, DSL.comment("Основной профиль уровень РФ"), TableOptions.table(), where); + } + + /** + * Create an aliased appeals.main_profile table reference + */ + public MainProfile(String alias) { + this(DSL.name(alias), MAIN_PROFILE); + } + + /** + * Create an aliased appeals.main_profile table reference + */ + public MainProfile(Name alias) { + this(alias, MAIN_PROFILE); + } + + /** + * Create a appeals.main_profile table reference + */ + public MainProfile() { + this(DSL.name("main_profile"), null); + } + + @Override + public Schema getSchema() { + return aliased() ? null : Appeals.APPEALS; + } + + @Override + public Identity getIdentity() { + return (Identity) super.getIdentity(); + } + + @Override + public UniqueKey getPrimaryKey() { + return Keys.PK_MAIN_PROFILE; + } + + @Override + public MainProfile as(String alias) { + return new MainProfile(DSL.name(alias), this); + } + + @Override + public MainProfile as(Name alias) { + return new MainProfile(alias, this); + } + + @Override + public MainProfile as(Table alias) { + return new MainProfile(alias.getQualifiedName(), this); + } + + /** + * Rename this table + */ + @Override + public MainProfile rename(String name) { + return new MainProfile(DSL.name(name), null); + } + + /** + * Rename this table + */ + @Override + public MainProfile rename(Name name) { + return new MainProfile(name, null); + } + + /** + * Rename this table + */ + @Override + public MainProfile rename(Table name) { + return new MainProfile(name.getQualifiedName(), null); + } + + /** + * Create an inline derived table from this table + */ + @Override + public MainProfile where(Condition condition) { + return new MainProfile(getQualifiedName(), aliased() ? this : null, null, condition); + } + + /** + * Create an inline derived table from this table + */ + @Override + public MainProfile where(Collection conditions) { + return where(DSL.and(conditions)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public MainProfile where(Condition... conditions) { + return where(DSL.and(conditions)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public MainProfile where(Field condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public MainProfile where(SQL condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public MainProfile where(@Stringly.SQL String condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public MainProfile where(@Stringly.SQL String condition, Object... binds) { + return where(DSL.condition(condition, binds)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public MainProfile where(@Stringly.SQL String condition, QueryPart... parts) { + return where(DSL.condition(condition, parts)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public MainProfile whereExists(Select select) { + return where(DSL.exists(select)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public MainProfile whereNotExists(Select select) { + return where(DSL.notExists(select)); + } +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/ReasonsAppeal.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/ReasonsAppeal.java new file mode 100644 index 00000000..62468c04 --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/ReasonsAppeal.java @@ -0,0 +1,277 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.Appeals; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.Keys; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.records.ReasonsAppealRecord; + +import java.math.BigDecimal; +import java.sql.Date; +import java.util.Collection; +import java.util.UUID; + +import org.jooq.Condition; +import org.jooq.Field; +import org.jooq.Identity; +import org.jooq.Name; +import org.jooq.PlainSQL; +import org.jooq.QueryPart; +import org.jooq.SQL; +import org.jooq.Schema; +import org.jooq.Select; +import org.jooq.Stringly; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.TableOptions; +import org.jooq.UniqueKey; +import org.jooq.impl.DSL; +import org.jooq.impl.SQLDataType; +import org.jooq.impl.TableImpl; + + +/** + * Причины обжалования уровень РФ + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class ReasonsAppeal extends TableImpl { + + private static final long serialVersionUID = 1L; + + /** + * The reference instance of appeals.reasons_appeal + */ + public static final ReasonsAppeal REASONS_APPEAL = new ReasonsAppeal(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return ReasonsAppealRecord.class; + } + + /** + * The column appeals.reasons_appeal.id_reasons_appeal. + */ + public final TableField ID_REASONS_APPEAL = createField(DSL.name("id_reasons_appeal"), SQLDataType.BIGINT.nullable(false).identity(true), this, ""); + + /** + * The column appeals.reasons_appeal.appeal. Обжалования + */ + public final TableField APPEAL = createField(DSL.name("appeal"), SQLDataType.NUMERIC, this, "Обжалования"); + + /** + * The column appeals.reasons_appeal.incorrect_inf. + * Некорректные сведения + */ + public final TableField INCORRECT_INF = createField(DSL.name("incorrect_inf"), SQLDataType.NUMERIC, this, "Некорректные сведения"); + + /** + * The column appeals.reasons_appeal.no_data. Нет данных + */ + public final TableField NO_DATA = createField(DSL.name("no_data"), SQLDataType.NUMERIC, this, "Нет данных"); + + /** + * The column appeals.reasons_appeal.other. Прочее + */ + public final TableField OTHER = createField(DSL.name("other"), SQLDataType.NUMERIC, this, "Прочее"); + + /** + * The column appeals.reasons_appeal.recording_date. Дата + * записи + */ + public final TableField RECORDING_DATE = createField(DSL.name("recording_date"), SQLDataType.DATE.defaultValue(DSL.field(DSL.raw("now()"), SQLDataType.DATE)), this, "Дата записи"); + + /** + * The column appeals.reasons_appeal.incorrect_inf_percent. + * Некорректные сведения в процентах + */ + public final TableField INCORRECT_INF_PERCENT = createField(DSL.name("incorrect_inf_percent"), SQLDataType.NUMERIC, this, "Некорректные сведения в процентах"); + + /** + * The column appeals.reasons_appeal.no_data_percent. Нет + * данных в процентах + */ + public final TableField NO_DATA_PERCENT = createField(DSL.name("no_data_percent"), SQLDataType.NUMERIC, this, "Нет данных в процентах"); + + /** + * The column appeals.reasons_appeal.other_percent. Прочее в + * процентах + */ + public final TableField OTHER_PERCENT = createField(DSL.name("other_percent"), SQLDataType.NUMERIC, this, "Прочее в процентах"); + + /** + * The column appeals.reasons_appeal.recruitment_id. + */ + public final TableField RECRUITMENT_ID = createField(DSL.name("recruitment_id"), SQLDataType.UUID, this, ""); + + private ReasonsAppeal(Name alias, Table aliased) { + this(alias, aliased, (Field[]) null, null); + } + + private ReasonsAppeal(Name alias, Table aliased, Field[] parameters, Condition where) { + super(alias, null, aliased, parameters, DSL.comment("Причины обжалования уровень РФ"), TableOptions.table(), where); + } + + /** + * Create an aliased appeals.reasons_appeal table reference + */ + public ReasonsAppeal(String alias) { + this(DSL.name(alias), REASONS_APPEAL); + } + + /** + * Create an aliased appeals.reasons_appeal table reference + */ + public ReasonsAppeal(Name alias) { + this(alias, REASONS_APPEAL); + } + + /** + * Create a appeals.reasons_appeal table reference + */ + public ReasonsAppeal() { + this(DSL.name("reasons_appeal"), null); + } + + @Override + public Schema getSchema() { + return aliased() ? null : Appeals.APPEALS; + } + + @Override + public Identity getIdentity() { + return (Identity) super.getIdentity(); + } + + @Override + public UniqueKey getPrimaryKey() { + return Keys.PK_REASONS_APPEAL; + } + + @Override + public ReasonsAppeal as(String alias) { + return new ReasonsAppeal(DSL.name(alias), this); + } + + @Override + public ReasonsAppeal as(Name alias) { + return new ReasonsAppeal(alias, this); + } + + @Override + public ReasonsAppeal as(Table alias) { + return new ReasonsAppeal(alias.getQualifiedName(), this); + } + + /** + * Rename this table + */ + @Override + public ReasonsAppeal rename(String name) { + return new ReasonsAppeal(DSL.name(name), null); + } + + /** + * Rename this table + */ + @Override + public ReasonsAppeal rename(Name name) { + return new ReasonsAppeal(name, null); + } + + /** + * Rename this table + */ + @Override + public ReasonsAppeal rename(Table name) { + return new ReasonsAppeal(name.getQualifiedName(), null); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ReasonsAppeal where(Condition condition) { + return new ReasonsAppeal(getQualifiedName(), aliased() ? this : null, null, condition); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ReasonsAppeal where(Collection conditions) { + return where(DSL.and(conditions)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ReasonsAppeal where(Condition... conditions) { + return where(DSL.and(conditions)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ReasonsAppeal where(Field condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public ReasonsAppeal where(SQL condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public ReasonsAppeal where(@Stringly.SQL String condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public ReasonsAppeal where(@Stringly.SQL String condition, Object... binds) { + return where(DSL.condition(condition, binds)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public ReasonsAppeal where(@Stringly.SQL String condition, QueryPart... parts) { + return where(DSL.condition(condition, parts)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ReasonsAppeal whereExists(Select select) { + return where(DSL.exists(select)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ReasonsAppeal whereNotExists(Select select) { + return where(DSL.notExists(select)); + } +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/ReviewRating.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/ReviewRating.java new file mode 100644 index 00000000..f9887da0 --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/ReviewRating.java @@ -0,0 +1,254 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.Appeals; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.Keys; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.records.ReviewRatingRecord; + +import java.math.BigDecimal; +import java.sql.Date; +import java.util.Collection; +import java.util.UUID; + +import org.jooq.Condition; +import org.jooq.Field; +import org.jooq.Identity; +import org.jooq.Name; +import org.jooq.PlainSQL; +import org.jooq.QueryPart; +import org.jooq.SQL; +import org.jooq.Schema; +import org.jooq.Select; +import org.jooq.Stringly; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.TableOptions; +import org.jooq.UniqueKey; +import org.jooq.impl.DSL; +import org.jooq.impl.SQLDataType; +import org.jooq.impl.TableImpl; + + +/** + * Рейтинг рассмотрения жалоб уровень РФ + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class ReviewRating extends TableImpl { + + private static final long serialVersionUID = 1L; + + /** + * The reference instance of appeals.review_rating + */ + public static final ReviewRating REVIEW_RATING = new ReviewRating(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return ReviewRatingRecord.class; + } + + /** + * The column appeals.review_rating.id_review_rating. + */ + public final TableField ID_REVIEW_RATING = createField(DSL.name("id_review_rating"), SQLDataType.BIGINT.nullable(false).identity(true), this, ""); + + /** + * The column appeals.review_rating.speed. Скорость + * рассмотрения + */ + public final TableField SPEED = createField(DSL.name("speed"), SQLDataType.NUMERIC, this, "Скорость рассмотрения"); + + /** + * The column appeals.review_rating.rating. Оценка + * удовлетворенности + */ + public final TableField RATING = createField(DSL.name("rating"), SQLDataType.NUMERIC, this, "Оценка удовлетворенности"); + + /** + * The column appeals.review_rating.recording_date. Дата записи + */ + public final TableField RECORDING_DATE = createField(DSL.name("recording_date"), SQLDataType.DATE.defaultValue(DSL.field(DSL.raw("now()"), SQLDataType.DATE)), this, "Дата записи"); + + /** + * The column appeals.review_rating.id_region. + */ + public final TableField ID_REGION = createField(DSL.name("id_region"), SQLDataType.BIGINT, this, ""); + + /** + * The column appeals.review_rating.recruitment_id. + */ + public final TableField RECRUITMENT_ID = createField(DSL.name("recruitment_id"), SQLDataType.UUID, this, ""); + + private ReviewRating(Name alias, Table aliased) { + this(alias, aliased, (Field[]) null, null); + } + + private ReviewRating(Name alias, Table aliased, Field[] parameters, Condition where) { + super(alias, null, aliased, parameters, DSL.comment("Рейтинг рассмотрения жалоб уровень РФ"), TableOptions.table(), where); + } + + /** + * Create an aliased appeals.review_rating table reference + */ + public ReviewRating(String alias) { + this(DSL.name(alias), REVIEW_RATING); + } + + /** + * Create an aliased appeals.review_rating table reference + */ + public ReviewRating(Name alias) { + this(alias, REVIEW_RATING); + } + + /** + * Create a appeals.review_rating table reference + */ + public ReviewRating() { + this(DSL.name("review_rating"), null); + } + + @Override + public Schema getSchema() { + return aliased() ? null : Appeals.APPEALS; + } + + @Override + public Identity getIdentity() { + return (Identity) super.getIdentity(); + } + + @Override + public UniqueKey getPrimaryKey() { + return Keys.PK_REVIEW_RATING; + } + + @Override + public ReviewRating as(String alias) { + return new ReviewRating(DSL.name(alias), this); + } + + @Override + public ReviewRating as(Name alias) { + return new ReviewRating(alias, this); + } + + @Override + public ReviewRating as(Table alias) { + return new ReviewRating(alias.getQualifiedName(), this); + } + + /** + * Rename this table + */ + @Override + public ReviewRating rename(String name) { + return new ReviewRating(DSL.name(name), null); + } + + /** + * Rename this table + */ + @Override + public ReviewRating rename(Name name) { + return new ReviewRating(name, null); + } + + /** + * Rename this table + */ + @Override + public ReviewRating rename(Table name) { + return new ReviewRating(name.getQualifiedName(), null); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ReviewRating where(Condition condition) { + return new ReviewRating(getQualifiedName(), aliased() ? this : null, null, condition); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ReviewRating where(Collection conditions) { + return where(DSL.and(conditions)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ReviewRating where(Condition... conditions) { + return where(DSL.and(conditions)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ReviewRating where(Field condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public ReviewRating where(SQL condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public ReviewRating where(@Stringly.SQL String condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public ReviewRating where(@Stringly.SQL String condition, Object... binds) { + return where(DSL.condition(condition, binds)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public ReviewRating where(@Stringly.SQL String condition, QueryPart... parts) { + return where(DSL.condition(condition, parts)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ReviewRating whereExists(Select select) { + return where(DSL.exists(select)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ReviewRating whereNotExists(Select select) { + return where(DSL.notExists(select)); + } +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/TopicAppeal.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/TopicAppeal.java new file mode 100644 index 00000000..f6ea6e58 --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/TopicAppeal.java @@ -0,0 +1,285 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.Appeals; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.Keys; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.records.TopicAppealRecord; + +import java.math.BigDecimal; +import java.sql.Date; +import java.util.Collection; +import java.util.UUID; + +import org.jooq.Condition; +import org.jooq.Field; +import org.jooq.Identity; +import org.jooq.Name; +import org.jooq.PlainSQL; +import org.jooq.QueryPart; +import org.jooq.SQL; +import org.jooq.Schema; +import org.jooq.Select; +import org.jooq.Stringly; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.TableOptions; +import org.jooq.UniqueKey; +import org.jooq.impl.DSL; +import org.jooq.impl.SQLDataType; +import org.jooq.impl.TableImpl; + + +/** + * Тема обжалования уровень РФ + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class TopicAppeal extends TableImpl { + + private static final long serialVersionUID = 1L; + + /** + * The reference instance of appeals.topic_appeal + */ + public static final TopicAppeal TOPIC_APPEAL = new TopicAppeal(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return TopicAppealRecord.class; + } + + /** + * The column appeals.topic_appeal.id_topic_appeal. + */ + public final TableField ID_TOPIC_APPEAL = createField(DSL.name("id_topic_appeal"), SQLDataType.BIGINT.nullable(false).identity(true), this, ""); + + /** + * The column appeals.topic_appeal.registration. Тема + * обжалования постановка на учет + */ + public final TableField REGISTRATION = createField(DSL.name("registration"), SQLDataType.NUMERIC, this, "Тема обжалования постановка на учет"); + + /** + * The column appeals.topic_appeal.sabpoena. Тема обжалования + * повестки + */ + public final TableField SABPOENA = createField(DSL.name("sabpoena"), SQLDataType.NUMERIC, this, "Тема обжалования повестки"); + + /** + * The column appeals.topic_appeal.appear. Тема обжалования + * явка + */ + public final TableField APPEAR = createField(DSL.name("appear"), SQLDataType.NUMERIC, this, "Тема обжалования явка"); + + /** + * The column appeals.topic_appeal.temporary_measures. Тема + * обжалования временные меры + */ + public final TableField TEMPORARY_MEASURES = createField(DSL.name("temporary_measures"), SQLDataType.NUMERIC, this, "Тема обжалования временные меры"); + + /** + * The column appeals.topic_appeal.recording_date. Дата записи + */ + public final TableField RECORDING_DATE = createField(DSL.name("recording_date"), SQLDataType.DATE.defaultValue(DSL.field(DSL.raw("now()"), SQLDataType.DATE)), this, "Дата записи"); + + /** + * The column appeals.topic_appeal.registration_percent. Тема + * обжалования постановка на учет в процентах + */ + public final TableField REGISTRATION_PERCENT = createField(DSL.name("registration_percent"), SQLDataType.NUMERIC, this, "Тема обжалования постановка на учет в процентах"); + + /** + * The column appeals.topic_appeal.sabpoena_percent. Тема + * обжалования повестки в процентах + */ + public final TableField SABPOENA_PERCENT = createField(DSL.name("sabpoena_percent"), SQLDataType.NUMERIC, this, "Тема обжалования повестки в процентах"); + + /** + * The column appeals.topic_appeal.appear_percent. Тема + * обжалования явка в процентах + */ + public final TableField APPEAR_PERCENT = createField(DSL.name("appear_percent"), SQLDataType.NUMERIC, this, "Тема обжалования явка в процентах"); + + /** + * The column appeals.topic_appeal.temporary_measures_percent. + * Тема обжалования временные меры в процентах + */ + public final TableField TEMPORARY_MEASURES_PERCENT = createField(DSL.name("temporary_measures_percent"), SQLDataType.NUMERIC, this, "Тема обжалования временные меры в процентах"); + + /** + * The column appeals.topic_appeal.recruitment_id. + */ + public final TableField RECRUITMENT_ID = createField(DSL.name("recruitment_id"), SQLDataType.UUID, this, ""); + + private TopicAppeal(Name alias, Table aliased) { + this(alias, aliased, (Field[]) null, null); + } + + private TopicAppeal(Name alias, Table aliased, Field[] parameters, Condition where) { + super(alias, null, aliased, parameters, DSL.comment("Тема обжалования уровень РФ"), TableOptions.table(), where); + } + + /** + * Create an aliased appeals.topic_appeal table reference + */ + public TopicAppeal(String alias) { + this(DSL.name(alias), TOPIC_APPEAL); + } + + /** + * Create an aliased appeals.topic_appeal table reference + */ + public TopicAppeal(Name alias) { + this(alias, TOPIC_APPEAL); + } + + /** + * Create a appeals.topic_appeal table reference + */ + public TopicAppeal() { + this(DSL.name("topic_appeal"), null); + } + + @Override + public Schema getSchema() { + return aliased() ? null : Appeals.APPEALS; + } + + @Override + public Identity getIdentity() { + return (Identity) super.getIdentity(); + } + + @Override + public UniqueKey getPrimaryKey() { + return Keys.PK_TOPIC_APPEAL; + } + + @Override + public TopicAppeal as(String alias) { + return new TopicAppeal(DSL.name(alias), this); + } + + @Override + public TopicAppeal as(Name alias) { + return new TopicAppeal(alias, this); + } + + @Override + public TopicAppeal as(Table alias) { + return new TopicAppeal(alias.getQualifiedName(), this); + } + + /** + * Rename this table + */ + @Override + public TopicAppeal rename(String name) { + return new TopicAppeal(DSL.name(name), null); + } + + /** + * Rename this table + */ + @Override + public TopicAppeal rename(Name name) { + return new TopicAppeal(name, null); + } + + /** + * Rename this table + */ + @Override + public TopicAppeal rename(Table name) { + return new TopicAppeal(name.getQualifiedName(), null); + } + + /** + * Create an inline derived table from this table + */ + @Override + public TopicAppeal where(Condition condition) { + return new TopicAppeal(getQualifiedName(), aliased() ? this : null, null, condition); + } + + /** + * Create an inline derived table from this table + */ + @Override + public TopicAppeal where(Collection conditions) { + return where(DSL.and(conditions)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public TopicAppeal where(Condition... conditions) { + return where(DSL.and(conditions)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public TopicAppeal where(Field condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public TopicAppeal where(SQL condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public TopicAppeal where(@Stringly.SQL String condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public TopicAppeal where(@Stringly.SQL String condition, Object... binds) { + return where(DSL.condition(condition, binds)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public TopicAppeal where(@Stringly.SQL String condition, QueryPart... parts) { + return where(DSL.condition(condition, parts)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public TopicAppeal whereExists(Select select) { + return where(DSL.exists(select)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public TopicAppeal whereNotExists(Select select) { + return where(DSL.notExists(select)); + } +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/records/MainProfileRecord.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/records/MainProfileRecord.java new file mode 100644 index 00000000..6c5cf351 --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/records/MainProfileRecord.java @@ -0,0 +1,172 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.records; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.MainProfile; + +import java.sql.Date; +import java.util.UUID; + +import org.jooq.Record1; +import org.jooq.impl.UpdatableRecordImpl; + + +/** + * Основной профиль уровень РФ + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class MainProfileRecord extends UpdatableRecordImpl { + + private static final long serialVersionUID = 1L; + + /** + * Setter for appeals.main_profile.id_main_profile. + */ + public void setIdMainProfile(Long value) { + set(0, value); + } + + /** + * Getter for appeals.main_profile.id_main_profile. + */ + public Long getIdMainProfile() { + return (Long) get(0); + } + + /** + * Setter for appeals.main_profile.gender. Пол + */ + public void setGender(String value) { + set(1, value); + } + + /** + * Getter for appeals.main_profile.gender. Пол + */ + public String getGender() { + return (String) get(1); + } + + /** + * Setter for appeals.main_profile.age. Возраст + */ + public void setAge(String value) { + set(2, value); + } + + /** + * Getter for appeals.main_profile.age. Возраст + */ + public String getAge() { + return (String) get(2); + } + + /** + * Setter for appeals.main_profile.child_min_18. Дети до 18 лет + */ + public void setChildMin_18(String value) { + set(3, value); + } + + /** + * Getter for appeals.main_profile.child_min_18. Дети до 18 лет + */ + public String getChildMin_18() { + return (String) get(3); + } + + /** + * Setter for appeals.main_profile.education. Образование + */ + public void setEducation(String value) { + set(4, value); + } + + /** + * Getter for appeals.main_profile.education. Образование + */ + public String getEducation() { + return (String) get(4); + } + + /** + * Setter for appeals.main_profile.employment. Занятость + */ + public void setEmployment(String value) { + set(5, value); + } + + /** + * Getter for appeals.main_profile.employment. Занятость + */ + public String getEmployment() { + return (String) get(5); + } + + /** + * Setter for appeals.main_profile.recording_date. Дата записи + */ + public void setRecordingDate(Date value) { + set(6, value); + } + + /** + * Getter for appeals.main_profile.recording_date. Дата записи + */ + public Date getRecordingDate() { + return (Date) get(6); + } + + /** + * Setter for appeals.main_profile.recruitment_id. + */ + public void setRecruitmentId(UUID value) { + set(7, value); + } + + /** + * Getter for appeals.main_profile.recruitment_id. + */ + public UUID getRecruitmentId() { + return (UUID) get(7); + } + + // ------------------------------------------------------------------------- + // Primary key information + // ------------------------------------------------------------------------- + + @Override + public Record1 key() { + return (Record1) super.key(); + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached MainProfileRecord + */ + public MainProfileRecord() { + super(MainProfile.MAIN_PROFILE); + } + + /** + * Create a detached, initialised MainProfileRecord + */ + public MainProfileRecord(Long idMainProfile, String gender, String age, String childMin_18, String education, String employment, Date recordingDate, UUID recruitmentId) { + super(MainProfile.MAIN_PROFILE); + + setIdMainProfile(idMainProfile); + setGender(gender); + setAge(age); + setChildMin_18(childMin_18); + setEducation(education); + setEmployment(employment); + setRecordingDate(recordingDate); + setRecruitmentId(recruitmentId); + resetChangedOnNotNull(); + } +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/records/ReasonsAppealRecord.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/records/ReasonsAppealRecord.java new file mode 100644 index 00000000..484adcdc --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/records/ReasonsAppealRecord.java @@ -0,0 +1,213 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.records; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.ReasonsAppeal; + +import java.math.BigDecimal; +import java.sql.Date; +import java.util.UUID; + +import org.jooq.Record1; +import org.jooq.impl.UpdatableRecordImpl; + + +/** + * Причины обжалования уровень РФ + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class ReasonsAppealRecord extends UpdatableRecordImpl { + + private static final long serialVersionUID = 1L; + + /** + * Setter for appeals.reasons_appeal.id_reasons_appeal. + */ + public void setIdReasonsAppeal(Long value) { + set(0, value); + } + + /** + * Getter for appeals.reasons_appeal.id_reasons_appeal. + */ + public Long getIdReasonsAppeal() { + return (Long) get(0); + } + + /** + * Setter for appeals.reasons_appeal.appeal. Обжалования + */ + public void setAppeal(BigDecimal value) { + set(1, value); + } + + /** + * Getter for appeals.reasons_appeal.appeal. Обжалования + */ + public BigDecimal getAppeal() { + return (BigDecimal) get(1); + } + + /** + * Setter for appeals.reasons_appeal.incorrect_inf. + * Некорректные сведения + */ + public void setIncorrectInf(BigDecimal value) { + set(2, value); + } + + /** + * Getter for appeals.reasons_appeal.incorrect_inf. + * Некорректные сведения + */ + public BigDecimal getIncorrectInf() { + return (BigDecimal) get(2); + } + + /** + * Setter for appeals.reasons_appeal.no_data. Нет данных + */ + public void setNoData(BigDecimal value) { + set(3, value); + } + + /** + * Getter for appeals.reasons_appeal.no_data. Нет данных + */ + public BigDecimal getNoData() { + return (BigDecimal) get(3); + } + + /** + * Setter for appeals.reasons_appeal.other. Прочее + */ + public void setOther(BigDecimal value) { + set(4, value); + } + + /** + * Getter for appeals.reasons_appeal.other. Прочее + */ + public BigDecimal getOther() { + return (BigDecimal) get(4); + } + + /** + * Setter for appeals.reasons_appeal.recording_date. Дата + * записи + */ + public void setRecordingDate(Date value) { + set(5, value); + } + + /** + * Getter for appeals.reasons_appeal.recording_date. Дата + * записи + */ + public Date getRecordingDate() { + return (Date) get(5); + } + + /** + * Setter for appeals.reasons_appeal.incorrect_inf_percent. + * Некорректные сведения в процентах + */ + public void setIncorrectInfPercent(BigDecimal value) { + set(6, value); + } + + /** + * Getter for appeals.reasons_appeal.incorrect_inf_percent. + * Некорректные сведения в процентах + */ + public BigDecimal getIncorrectInfPercent() { + return (BigDecimal) get(6); + } + + /** + * Setter for appeals.reasons_appeal.no_data_percent. Нет + * данных в процентах + */ + public void setNoDataPercent(BigDecimal value) { + set(7, value); + } + + /** + * Getter for appeals.reasons_appeal.no_data_percent. Нет + * данных в процентах + */ + public BigDecimal getNoDataPercent() { + return (BigDecimal) get(7); + } + + /** + * Setter for appeals.reasons_appeal.other_percent. Прочее в + * процентах + */ + public void setOtherPercent(BigDecimal value) { + set(8, value); + } + + /** + * Getter for appeals.reasons_appeal.other_percent. Прочее в + * процентах + */ + public BigDecimal getOtherPercent() { + return (BigDecimal) get(8); + } + + /** + * Setter for appeals.reasons_appeal.recruitment_id. + */ + public void setRecruitmentId(UUID value) { + set(9, value); + } + + /** + * Getter for appeals.reasons_appeal.recruitment_id. + */ + public UUID getRecruitmentId() { + return (UUID) get(9); + } + + // ------------------------------------------------------------------------- + // Primary key information + // ------------------------------------------------------------------------- + + @Override + public Record1 key() { + return (Record1) super.key(); + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached ReasonsAppealRecord + */ + public ReasonsAppealRecord() { + super(ReasonsAppeal.REASONS_APPEAL); + } + + /** + * Create a detached, initialised ReasonsAppealRecord + */ + public ReasonsAppealRecord(Long idReasonsAppeal, BigDecimal appeal, BigDecimal incorrectInf, BigDecimal noData, BigDecimal other, Date recordingDate, BigDecimal incorrectInfPercent, BigDecimal noDataPercent, BigDecimal otherPercent, UUID recruitmentId) { + super(ReasonsAppeal.REASONS_APPEAL); + + setIdReasonsAppeal(idReasonsAppeal); + setAppeal(appeal); + setIncorrectInf(incorrectInf); + setNoData(noData); + setOther(other); + setRecordingDate(recordingDate); + setIncorrectInfPercent(incorrectInfPercent); + setNoDataPercent(noDataPercent); + setOtherPercent(otherPercent); + setRecruitmentId(recruitmentId); + resetChangedOnNotNull(); + } +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/records/ReviewRatingRecord.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/records/ReviewRatingRecord.java new file mode 100644 index 00000000..c1b76662 --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/records/ReviewRatingRecord.java @@ -0,0 +1,147 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.records; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.ReviewRating; + +import java.math.BigDecimal; +import java.sql.Date; +import java.util.UUID; + +import org.jooq.Record1; +import org.jooq.impl.UpdatableRecordImpl; + + +/** + * Рейтинг рассмотрения жалоб уровень РФ + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class ReviewRatingRecord extends UpdatableRecordImpl { + + private static final long serialVersionUID = 1L; + + /** + * Setter for appeals.review_rating.id_review_rating. + */ + public void setIdReviewRating(Long value) { + set(0, value); + } + + /** + * Getter for appeals.review_rating.id_review_rating. + */ + public Long getIdReviewRating() { + return (Long) get(0); + } + + /** + * Setter for appeals.review_rating.speed. Скорость + * рассмотрения + */ + public void setSpeed(BigDecimal value) { + set(1, value); + } + + /** + * Getter for appeals.review_rating.speed. Скорость + * рассмотрения + */ + public BigDecimal getSpeed() { + return (BigDecimal) get(1); + } + + /** + * Setter for appeals.review_rating.rating. Оценка + * удовлетворенности + */ + public void setRating(BigDecimal value) { + set(2, value); + } + + /** + * Getter for appeals.review_rating.rating. Оценка + * удовлетворенности + */ + public BigDecimal getRating() { + return (BigDecimal) get(2); + } + + /** + * Setter for appeals.review_rating.recording_date. Дата записи + */ + public void setRecordingDate(Date value) { + set(3, value); + } + + /** + * Getter for appeals.review_rating.recording_date. Дата записи + */ + public Date getRecordingDate() { + return (Date) get(3); + } + + /** + * Setter for appeals.review_rating.id_region. + */ + public void setIdRegion(Long value) { + set(4, value); + } + + /** + * Getter for appeals.review_rating.id_region. + */ + public Long getIdRegion() { + return (Long) get(4); + } + + /** + * Setter for appeals.review_rating.recruitment_id. + */ + public void setRecruitmentId(UUID value) { + set(5, value); + } + + /** + * Getter for appeals.review_rating.recruitment_id. + */ + public UUID getRecruitmentId() { + return (UUID) get(5); + } + + // ------------------------------------------------------------------------- + // Primary key information + // ------------------------------------------------------------------------- + + @Override + public Record1 key() { + return (Record1) super.key(); + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached ReviewRatingRecord + */ + public ReviewRatingRecord() { + super(ReviewRating.REVIEW_RATING); + } + + /** + * Create a detached, initialised ReviewRatingRecord + */ + public ReviewRatingRecord(Long idReviewRating, BigDecimal speed, BigDecimal rating, Date recordingDate, Long idRegion, UUID recruitmentId) { + super(ReviewRating.REVIEW_RATING); + + setIdReviewRating(idReviewRating); + setSpeed(speed); + setRating(rating); + setRecordingDate(recordingDate); + setIdRegion(idRegion); + setRecruitmentId(recruitmentId); + resetChangedOnNotNull(); + } +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/records/TopicAppealRecord.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/records/TopicAppealRecord.java new file mode 100644 index 00000000..72eed51d --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/appeals/tables/records/TopicAppealRecord.java @@ -0,0 +1,234 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.records; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.appeals.tables.TopicAppeal; + +import java.math.BigDecimal; +import java.sql.Date; +import java.util.UUID; + +import org.jooq.Record1; +import org.jooq.impl.UpdatableRecordImpl; + + +/** + * Тема обжалования уровень РФ + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class TopicAppealRecord extends UpdatableRecordImpl { + + private static final long serialVersionUID = 1L; + + /** + * Setter for appeals.topic_appeal.id_topic_appeal. + */ + public void setIdTopicAppeal(Long value) { + set(0, value); + } + + /** + * Getter for appeals.topic_appeal.id_topic_appeal. + */ + public Long getIdTopicAppeal() { + return (Long) get(0); + } + + /** + * Setter for appeals.topic_appeal.registration. Тема + * обжалования постановка на учет + */ + public void setRegistration(BigDecimal value) { + set(1, value); + } + + /** + * Getter for appeals.topic_appeal.registration. Тема + * обжалования постановка на учет + */ + public BigDecimal getRegistration() { + return (BigDecimal) get(1); + } + + /** + * Setter for appeals.topic_appeal.sabpoena. Тема обжалования + * повестки + */ + public void setSabpoena(BigDecimal value) { + set(2, value); + } + + /** + * Getter for appeals.topic_appeal.sabpoena. Тема обжалования + * повестки + */ + public BigDecimal getSabpoena() { + return (BigDecimal) get(2); + } + + /** + * Setter for appeals.topic_appeal.appear. Тема обжалования + * явка + */ + public void setAppear(BigDecimal value) { + set(3, value); + } + + /** + * Getter for appeals.topic_appeal.appear. Тема обжалования + * явка + */ + public BigDecimal getAppear() { + return (BigDecimal) get(3); + } + + /** + * Setter for appeals.topic_appeal.temporary_measures. Тема + * обжалования временные меры + */ + public void setTemporaryMeasures(BigDecimal value) { + set(4, value); + } + + /** + * Getter for appeals.topic_appeal.temporary_measures. Тема + * обжалования временные меры + */ + public BigDecimal getTemporaryMeasures() { + return (BigDecimal) get(4); + } + + /** + * Setter for appeals.topic_appeal.recording_date. Дата записи + */ + public void setRecordingDate(Date value) { + set(5, value); + } + + /** + * Getter for appeals.topic_appeal.recording_date. Дата записи + */ + public Date getRecordingDate() { + return (Date) get(5); + } + + /** + * Setter for appeals.topic_appeal.registration_percent. Тема + * обжалования постановка на учет в процентах + */ + public void setRegistrationPercent(BigDecimal value) { + set(6, value); + } + + /** + * Getter for appeals.topic_appeal.registration_percent. Тема + * обжалования постановка на учет в процентах + */ + public BigDecimal getRegistrationPercent() { + return (BigDecimal) get(6); + } + + /** + * Setter for appeals.topic_appeal.sabpoena_percent. Тема + * обжалования повестки в процентах + */ + public void setSabpoenaPercent(BigDecimal value) { + set(7, value); + } + + /** + * Getter for appeals.topic_appeal.sabpoena_percent. Тема + * обжалования повестки в процентах + */ + public BigDecimal getSabpoenaPercent() { + return (BigDecimal) get(7); + } + + /** + * Setter for appeals.topic_appeal.appear_percent. Тема + * обжалования явка в процентах + */ + public void setAppearPercent(BigDecimal value) { + set(8, value); + } + + /** + * Getter for appeals.topic_appeal.appear_percent. Тема + * обжалования явка в процентах + */ + public BigDecimal getAppearPercent() { + return (BigDecimal) get(8); + } + + /** + * Setter for appeals.topic_appeal.temporary_measures_percent. + * Тема обжалования временные меры в процентах + */ + public void setTemporaryMeasuresPercent(BigDecimal value) { + set(9, value); + } + + /** + * Getter for appeals.topic_appeal.temporary_measures_percent. + * Тема обжалования временные меры в процентах + */ + public BigDecimal getTemporaryMeasuresPercent() { + return (BigDecimal) get(9); + } + + /** + * Setter for appeals.topic_appeal.recruitment_id. + */ + public void setRecruitmentId(UUID value) { + set(10, value); + } + + /** + * Getter for appeals.topic_appeal.recruitment_id. + */ + public UUID getRecruitmentId() { + return (UUID) get(10); + } + + // ------------------------------------------------------------------------- + // Primary key information + // ------------------------------------------------------------------------- + + @Override + public Record1 key() { + return (Record1) super.key(); + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached TopicAppealRecord + */ + public TopicAppealRecord() { + super(TopicAppeal.TOPIC_APPEAL); + } + + /** + * Create a detached, initialised TopicAppealRecord + */ + public TopicAppealRecord(Long idTopicAppeal, BigDecimal registration, BigDecimal sabpoena, BigDecimal appear, BigDecimal temporaryMeasures, Date recordingDate, BigDecimal registrationPercent, BigDecimal sabpoenaPercent, BigDecimal appearPercent, BigDecimal temporaryMeasuresPercent, UUID recruitmentId) { + super(TopicAppeal.TOPIC_APPEAL); + + setIdTopicAppeal(idTopicAppeal); + setRegistration(registration); + setSabpoena(sabpoena); + setAppear(appear); + setTemporaryMeasures(temporaryMeasures); + setRecordingDate(recordingDate); + setRegistrationPercent(registrationPercent); + setSabpoenaPercent(sabpoenaPercent); + setAppearPercent(appearPercent); + setTemporaryMeasuresPercent(temporaryMeasuresPercent); + setRecruitmentId(recruitmentId); + resetChangedOnNotNull(); + } +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/Keys.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/Keys.java new file mode 100644 index 00000000..db51bd83 --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/Keys.java @@ -0,0 +1,34 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.AppearSubppoena; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.ConsiderationComplaint; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.Recruitment; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.records.AppearSubppoenaRecord; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.records.ConsiderationComplaintRecord; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.records.RecruitmentRecord; + +import org.jooq.TableField; +import org.jooq.UniqueKey; +import org.jooq.impl.DSL; +import org.jooq.impl.Internal; + + +/** + * A class modelling foreign key relationships and constraints of tables in + * ratings. + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Keys { + + // ------------------------------------------------------------------------- + // UNIQUE and PRIMARY KEY definitions + // ------------------------------------------------------------------------- + + public static final UniqueKey PK_APPEAR_SUBPPOENA = Internal.createUniqueKey(AppearSubppoena.APPEAR_SUBPPOENA, DSL.name("pk_appear_subppoena"), new TableField[] { AppearSubppoena.APPEAR_SUBPPOENA.ID_APPEAR_SUBPPOENA }, true); + public static final UniqueKey PK_CONSIDERATION_COMPLAINT = Internal.createUniqueKey(ConsiderationComplaint.CONSIDERATION_COMPLAINT, DSL.name("pk_consideration_complaint"), new TableField[] { ConsiderationComplaint.CONSIDERATION_COMPLAINT.ID_CONSIDERATION_COMPLAINT }, true); + public static final UniqueKey PK_RECRUITMENT = Internal.createUniqueKey(Recruitment.RECRUITMENT, DSL.name("pk_recruitment"), new TableField[] { Recruitment.RECRUITMENT.ID_RECRUITMENT }, true); +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/Ratings.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/Ratings.java new file mode 100644 index 00000000..a04d3f34 --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/Ratings.java @@ -0,0 +1,69 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.DefaultCatalog; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.AppearSubppoena; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.ConsiderationComplaint; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.Recruitment; + +import java.util.Arrays; +import java.util.List; + +import org.jooq.Catalog; +import org.jooq.Table; +import org.jooq.impl.SchemaImpl; + + +/** + * This class is generated by jOOQ. + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Ratings extends SchemaImpl { + + private static final long serialVersionUID = 1L; + + /** + * The reference instance of ratings + */ + public static final Ratings RATINGS = new Ratings(); + + /** + * Явка по повестке уровень РФ + */ + public final AppearSubppoena APPEAR_SUBPPOENA = AppearSubppoena.APPEAR_SUBPPOENA; + + /** + * Рассмотрение жалоб уровень РФ + */ + public final ConsiderationComplaint CONSIDERATION_COMPLAINT = ConsiderationComplaint.CONSIDERATION_COMPLAINT; + + /** + * Призыв уровень РФ + */ + public final Recruitment RECRUITMENT = Recruitment.RECRUITMENT; + + /** + * No further instances allowed + */ + private Ratings() { + super("ratings", null); + } + + + @Override + public Catalog getCatalog() { + return DefaultCatalog.DEFAULT_CATALOG; + } + + @Override + public final List> getTables() { + return Arrays.asList( + AppearSubppoena.APPEAR_SUBPPOENA, + ConsiderationComplaint.CONSIDERATION_COMPLAINT, + Recruitment.RECRUITMENT + ); + } +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/Tables.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/Tables.java new file mode 100644 index 00000000..91935a45 --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/Tables.java @@ -0,0 +1,32 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.AppearSubppoena; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.ConsiderationComplaint; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.Recruitment; + + +/** + * Convenience access to all tables in ratings. + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Tables { + + /** + * Явка по повестке уровень РФ + */ + public static final AppearSubppoena APPEAR_SUBPPOENA = AppearSubppoena.APPEAR_SUBPPOENA; + + /** + * Рассмотрение жалоб уровень РФ + */ + public static final ConsiderationComplaint CONSIDERATION_COMPLAINT = ConsiderationComplaint.CONSIDERATION_COMPLAINT; + + /** + * Призыв уровень РФ + */ + public static final Recruitment RECRUITMENT = Recruitment.RECRUITMENT; +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/AppearSubppoena.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/AppearSubppoena.java new file mode 100644 index 00000000..1a22250c --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/AppearSubppoena.java @@ -0,0 +1,255 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.Keys; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.Ratings; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.records.AppearSubppoenaRecord; + +import java.math.BigDecimal; +import java.sql.Date; +import java.util.Collection; +import java.util.UUID; + +import org.jooq.Condition; +import org.jooq.Field; +import org.jooq.Identity; +import org.jooq.Name; +import org.jooq.PlainSQL; +import org.jooq.QueryPart; +import org.jooq.SQL; +import org.jooq.Schema; +import org.jooq.Select; +import org.jooq.Stringly; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.TableOptions; +import org.jooq.UniqueKey; +import org.jooq.impl.DSL; +import org.jooq.impl.SQLDataType; +import org.jooq.impl.TableImpl; + + +/** + * Явка по повестке уровень РФ + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class AppearSubppoena extends TableImpl { + + private static final long serialVersionUID = 1L; + + /** + * The reference instance of ratings.appear_subppoena + */ + public static final AppearSubppoena APPEAR_SUBPPOENA = new AppearSubppoena(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return AppearSubppoenaRecord.class; + } + + /** + * The column ratings.appear_subppoena.id_appear_subppoena. + */ + public final TableField ID_APPEAR_SUBPPOENA = createField(DSL.name("id_appear_subppoena"), SQLDataType.BIGINT.nullable(false).identity(true), this, ""); + + /** + * The column ratings.appear_subppoena.id_region. + */ + public final TableField ID_REGION = createField(DSL.name("id_region"), SQLDataType.INTEGER, this, ""); + + /** + * The column ratings.appear_subppoena.appear_mil_com. Явка в + * военкомат + */ + public final TableField APPEAR_MIL_COM = createField(DSL.name("appear_mil_com"), SQLDataType.NUMERIC, this, "Явка в военкомат"); + + /** + * The column ratings.appear_subppoena.recording_date. Дата + * записи + */ + public final TableField RECORDING_DATE = createField(DSL.name("recording_date"), SQLDataType.DATE, this, "Дата записи"); + + /** + * The column ratings.appear_subppoena.appear_mil_com_percent. + * Явка в военкомат в процентах + */ + public final TableField APPEAR_MIL_COM_PERCENT = createField(DSL.name("appear_mil_com_percent"), SQLDataType.NUMERIC, this, "Явка в военкомат в процентах"); + + /** + * The column ratings.appear_subppoena.recruitment_id. + */ + public final TableField RECRUITMENT_ID = createField(DSL.name("recruitment_id"), SQLDataType.UUID, this, ""); + + private AppearSubppoena(Name alias, Table aliased) { + this(alias, aliased, (Field[]) null, null); + } + + private AppearSubppoena(Name alias, Table aliased, Field[] parameters, Condition where) { + super(alias, null, aliased, parameters, DSL.comment("Явка по повестке уровень РФ"), TableOptions.table(), where); + } + + /** + * Create an aliased ratings.appear_subppoena table reference + */ + public AppearSubppoena(String alias) { + this(DSL.name(alias), APPEAR_SUBPPOENA); + } + + /** + * Create an aliased ratings.appear_subppoena table reference + */ + public AppearSubppoena(Name alias) { + this(alias, APPEAR_SUBPPOENA); + } + + /** + * Create a ratings.appear_subppoena table reference + */ + public AppearSubppoena() { + this(DSL.name("appear_subppoena"), null); + } + + @Override + public Schema getSchema() { + return aliased() ? null : Ratings.RATINGS; + } + + @Override + public Identity getIdentity() { + return (Identity) super.getIdentity(); + } + + @Override + public UniqueKey getPrimaryKey() { + return Keys.PK_APPEAR_SUBPPOENA; + } + + @Override + public AppearSubppoena as(String alias) { + return new AppearSubppoena(DSL.name(alias), this); + } + + @Override + public AppearSubppoena as(Name alias) { + return new AppearSubppoena(alias, this); + } + + @Override + public AppearSubppoena as(Table alias) { + return new AppearSubppoena(alias.getQualifiedName(), this); + } + + /** + * Rename this table + */ + @Override + public AppearSubppoena rename(String name) { + return new AppearSubppoena(DSL.name(name), null); + } + + /** + * Rename this table + */ + @Override + public AppearSubppoena rename(Name name) { + return new AppearSubppoena(name, null); + } + + /** + * Rename this table + */ + @Override + public AppearSubppoena rename(Table name) { + return new AppearSubppoena(name.getQualifiedName(), null); + } + + /** + * Create an inline derived table from this table + */ + @Override + public AppearSubppoena where(Condition condition) { + return new AppearSubppoena(getQualifiedName(), aliased() ? this : null, null, condition); + } + + /** + * Create an inline derived table from this table + */ + @Override + public AppearSubppoena where(Collection conditions) { + return where(DSL.and(conditions)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public AppearSubppoena where(Condition... conditions) { + return where(DSL.and(conditions)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public AppearSubppoena where(Field condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public AppearSubppoena where(SQL condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public AppearSubppoena where(@Stringly.SQL String condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public AppearSubppoena where(@Stringly.SQL String condition, Object... binds) { + return where(DSL.condition(condition, binds)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public AppearSubppoena where(@Stringly.SQL String condition, QueryPart... parts) { + return where(DSL.condition(condition, parts)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public AppearSubppoena whereExists(Select select) { + return where(DSL.exists(select)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public AppearSubppoena whereNotExists(Select select) { + return where(DSL.notExists(select)); + } +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/ConsiderationComplaint.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/ConsiderationComplaint.java new file mode 100644 index 00000000..632f2b81 --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/ConsiderationComplaint.java @@ -0,0 +1,260 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.Keys; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.Ratings; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.records.ConsiderationComplaintRecord; + +import java.math.BigDecimal; +import java.sql.Date; +import java.util.Collection; +import java.util.UUID; + +import org.jooq.Condition; +import org.jooq.Field; +import org.jooq.Identity; +import org.jooq.Name; +import org.jooq.PlainSQL; +import org.jooq.QueryPart; +import org.jooq.SQL; +import org.jooq.Schema; +import org.jooq.Select; +import org.jooq.Stringly; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.TableOptions; +import org.jooq.UniqueKey; +import org.jooq.impl.DSL; +import org.jooq.impl.SQLDataType; +import org.jooq.impl.TableImpl; + + +/** + * Рассмотрение жалоб уровень РФ + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class ConsiderationComplaint extends TableImpl { + + private static final long serialVersionUID = 1L; + + /** + * The reference instance of ratings.consideration_complaint + */ + public static final ConsiderationComplaint CONSIDERATION_COMPLAINT = new ConsiderationComplaint(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return ConsiderationComplaintRecord.class; + } + + /** + * The column + * ratings.consideration_complaint.id_consideration_complaint. + */ + public final TableField ID_CONSIDERATION_COMPLAINT = createField(DSL.name("id_consideration_complaint"), SQLDataType.BIGINT.nullable(false).identity(true), this, ""); + + /** + * The column ratings.consideration_complaint.id_region. + */ + public final TableField ID_REGION = createField(DSL.name("id_region"), SQLDataType.INTEGER, this, ""); + + /** + * The column + * ratings.consideration_complaint.consideration_complaint. + * Рассмотрение жалоб + */ + public final TableField CONSIDERATION_COMPLAINT_ = createField(DSL.name("consideration_complaint"), SQLDataType.NUMERIC, this, "Рассмотрение жалоб"); + + /** + * The column ratings.consideration_complaint.recording_date. + * Дата записи + */ + public final TableField RECORDING_DATE = createField(DSL.name("recording_date"), SQLDataType.DATE, this, "Дата записи"); + + /** + * The column + * ratings.consideration_complaint.consideration_complaint_percent. + * Рассмотрение жалоб в процентах + */ + public final TableField CONSIDERATION_COMPLAINT_PERCENT = createField(DSL.name("consideration_complaint_percent"), SQLDataType.NUMERIC, this, "Рассмотрение жалоб в процентах"); + + /** + * The column ratings.consideration_complaint.recruitment_id. + */ + public final TableField RECRUITMENT_ID = createField(DSL.name("recruitment_id"), SQLDataType.UUID, this, ""); + + private ConsiderationComplaint(Name alias, Table aliased) { + this(alias, aliased, (Field[]) null, null); + } + + private ConsiderationComplaint(Name alias, Table aliased, Field[] parameters, Condition where) { + super(alias, null, aliased, parameters, DSL.comment("Рассмотрение жалоб уровень РФ"), TableOptions.table(), where); + } + + /** + * Create an aliased ratings.consideration_complaint table + * reference + */ + public ConsiderationComplaint(String alias) { + this(DSL.name(alias), CONSIDERATION_COMPLAINT); + } + + /** + * Create an aliased ratings.consideration_complaint table + * reference + */ + public ConsiderationComplaint(Name alias) { + this(alias, CONSIDERATION_COMPLAINT); + } + + /** + * Create a ratings.consideration_complaint table reference + */ + public ConsiderationComplaint() { + this(DSL.name("consideration_complaint"), null); + } + + @Override + public Schema getSchema() { + return aliased() ? null : Ratings.RATINGS; + } + + @Override + public Identity getIdentity() { + return (Identity) super.getIdentity(); + } + + @Override + public UniqueKey getPrimaryKey() { + return Keys.PK_CONSIDERATION_COMPLAINT; + } + + @Override + public ConsiderationComplaint as(String alias) { + return new ConsiderationComplaint(DSL.name(alias), this); + } + + @Override + public ConsiderationComplaint as(Name alias) { + return new ConsiderationComplaint(alias, this); + } + + @Override + public ConsiderationComplaint as(Table alias) { + return new ConsiderationComplaint(alias.getQualifiedName(), this); + } + + /** + * Rename this table + */ + @Override + public ConsiderationComplaint rename(String name) { + return new ConsiderationComplaint(DSL.name(name), null); + } + + /** + * Rename this table + */ + @Override + public ConsiderationComplaint rename(Name name) { + return new ConsiderationComplaint(name, null); + } + + /** + * Rename this table + */ + @Override + public ConsiderationComplaint rename(Table name) { + return new ConsiderationComplaint(name.getQualifiedName(), null); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ConsiderationComplaint where(Condition condition) { + return new ConsiderationComplaint(getQualifiedName(), aliased() ? this : null, null, condition); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ConsiderationComplaint where(Collection conditions) { + return where(DSL.and(conditions)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ConsiderationComplaint where(Condition... conditions) { + return where(DSL.and(conditions)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ConsiderationComplaint where(Field condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public ConsiderationComplaint where(SQL condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public ConsiderationComplaint where(@Stringly.SQL String condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public ConsiderationComplaint where(@Stringly.SQL String condition, Object... binds) { + return where(DSL.condition(condition, binds)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public ConsiderationComplaint where(@Stringly.SQL String condition, QueryPart... parts) { + return where(DSL.condition(condition, parts)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ConsiderationComplaint whereExists(Select select) { + return where(DSL.exists(select)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public ConsiderationComplaint whereNotExists(Select select) { + return where(DSL.notExists(select)); + } +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/Recruitment.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/Recruitment.java new file mode 100644 index 00000000..f557c1d8 --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/Recruitment.java @@ -0,0 +1,259 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.Keys; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.Ratings; +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.records.RecruitmentRecord; + +import java.math.BigDecimal; +import java.sql.Date; +import java.util.Collection; +import java.util.UUID; + +import org.jooq.Condition; +import org.jooq.Field; +import org.jooq.Identity; +import org.jooq.Name; +import org.jooq.PlainSQL; +import org.jooq.QueryPart; +import org.jooq.SQL; +import org.jooq.Schema; +import org.jooq.Select; +import org.jooq.Stringly; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.TableOptions; +import org.jooq.UniqueKey; +import org.jooq.impl.DSL; +import org.jooq.impl.SQLDataType; +import org.jooq.impl.TableImpl; + + +/** + * Призыв уровень РФ + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class Recruitment extends TableImpl { + + private static final long serialVersionUID = 1L; + + /** + * The reference instance of ratings.recruitment + */ + public static final Recruitment RECRUITMENT = new Recruitment(); + + /** + * The class holding records for this type + */ + @Override + public Class getRecordType() { + return RecruitmentRecord.class; + } + + /** + * The column ratings.recruitment.id_recruitment. + */ + public final TableField ID_RECRUITMENT = createField(DSL.name("id_recruitment"), SQLDataType.BIGINT.nullable(false).identity(true), this, ""); + + /** + * The column ratings.recruitment.id_region. + */ + public final TableField ID_REGION = createField(DSL.name("id_region"), SQLDataType.INTEGER, this, ""); + + /** + * The column ratings.recruitment.execution. Исполнение плана + * призыва + */ + public final TableField EXECUTION = createField(DSL.name("execution"), SQLDataType.NUMERIC, this, "Исполнение плана призыва"); + + /** + * The column ratings.recruitment.spring_autumn. Осень/весна + */ + public final TableField SPRING_AUTUMN = createField(DSL.name("spring_autumn"), SQLDataType.CLOB, this, "Осень/весна"); + + /** + * The column ratings.recruitment.recording_date. Дата записи + */ + public final TableField RECORDING_DATE = createField(DSL.name("recording_date"), SQLDataType.DATE, this, "Дата записи"); + + /** + * The column ratings.recruitment.execution_percent. Исолнение + * плана призыва в процентах + */ + public final TableField EXECUTION_PERCENT = createField(DSL.name("execution_percent"), SQLDataType.NUMERIC, this, "Исолнение плана призыва в процентах"); + + /** + * The column ratings.recruitment.recruitment_id. + */ + public final TableField RECRUITMENT_ID = createField(DSL.name("recruitment_id"), SQLDataType.UUID, this, ""); + + private Recruitment(Name alias, Table aliased) { + this(alias, aliased, (Field[]) null, null); + } + + private Recruitment(Name alias, Table aliased, Field[] parameters, Condition where) { + super(alias, null, aliased, parameters, DSL.comment("Призыв уровень РФ"), TableOptions.table(), where); + } + + /** + * Create an aliased ratings.recruitment table reference + */ + public Recruitment(String alias) { + this(DSL.name(alias), RECRUITMENT); + } + + /** + * Create an aliased ratings.recruitment table reference + */ + public Recruitment(Name alias) { + this(alias, RECRUITMENT); + } + + /** + * Create a ratings.recruitment table reference + */ + public Recruitment() { + this(DSL.name("recruitment"), null); + } + + @Override + public Schema getSchema() { + return aliased() ? null : Ratings.RATINGS; + } + + @Override + public Identity getIdentity() { + return (Identity) super.getIdentity(); + } + + @Override + public UniqueKey getPrimaryKey() { + return Keys.PK_RECRUITMENT; + } + + @Override + public Recruitment as(String alias) { + return new Recruitment(DSL.name(alias), this); + } + + @Override + public Recruitment as(Name alias) { + return new Recruitment(alias, this); + } + + @Override + public Recruitment as(Table alias) { + return new Recruitment(alias.getQualifiedName(), this); + } + + /** + * Rename this table + */ + @Override + public Recruitment rename(String name) { + return new Recruitment(DSL.name(name), null); + } + + /** + * Rename this table + */ + @Override + public Recruitment rename(Name name) { + return new Recruitment(name, null); + } + + /** + * Rename this table + */ + @Override + public Recruitment rename(Table name) { + return new Recruitment(name.getQualifiedName(), null); + } + + /** + * Create an inline derived table from this table + */ + @Override + public Recruitment where(Condition condition) { + return new Recruitment(getQualifiedName(), aliased() ? this : null, null, condition); + } + + /** + * Create an inline derived table from this table + */ + @Override + public Recruitment where(Collection conditions) { + return where(DSL.and(conditions)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public Recruitment where(Condition... conditions) { + return where(DSL.and(conditions)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public Recruitment where(Field condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public Recruitment where(SQL condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public Recruitment where(@Stringly.SQL String condition) { + return where(DSL.condition(condition)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public Recruitment where(@Stringly.SQL String condition, Object... binds) { + return where(DSL.condition(condition, binds)); + } + + /** + * Create an inline derived table from this table + */ + @Override + @PlainSQL + public Recruitment where(@Stringly.SQL String condition, QueryPart... parts) { + return where(DSL.condition(condition, parts)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public Recruitment whereExists(Select select) { + return where(DSL.exists(select)); + } + + /** + * Create an inline derived table from this table + */ + @Override + public Recruitment whereNotExists(Select select) { + return where(DSL.notExists(select)); + } +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/records/AppearSubppoenaRecord.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/records/AppearSubppoenaRecord.java new file mode 100644 index 00000000..65f9def6 --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/records/AppearSubppoenaRecord.java @@ -0,0 +1,149 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.records; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.AppearSubppoena; + +import java.math.BigDecimal; +import java.sql.Date; +import java.util.UUID; + +import org.jooq.Record1; +import org.jooq.impl.UpdatableRecordImpl; + + +/** + * Явка по повестке уровень РФ + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class AppearSubppoenaRecord extends UpdatableRecordImpl { + + private static final long serialVersionUID = 1L; + + /** + * Setter for ratings.appear_subppoena.id_appear_subppoena. + */ + public void setIdAppearSubppoena(Long value) { + set(0, value); + } + + /** + * Getter for ratings.appear_subppoena.id_appear_subppoena. + */ + public Long getIdAppearSubppoena() { + return (Long) get(0); + } + + /** + * Setter for ratings.appear_subppoena.id_region. + */ + public void setIdRegion(Integer value) { + set(1, value); + } + + /** + * Getter for ratings.appear_subppoena.id_region. + */ + public Integer getIdRegion() { + return (Integer) get(1); + } + + /** + * Setter for ratings.appear_subppoena.appear_mil_com. Явка в + * военкомат + */ + public void setAppearMilCom(BigDecimal value) { + set(2, value); + } + + /** + * Getter for ratings.appear_subppoena.appear_mil_com. Явка в + * военкомат + */ + public BigDecimal getAppearMilCom() { + return (BigDecimal) get(2); + } + + /** + * Setter for ratings.appear_subppoena.recording_date. Дата + * записи + */ + public void setRecordingDate(Date value) { + set(3, value); + } + + /** + * Getter for ratings.appear_subppoena.recording_date. Дата + * записи + */ + public Date getRecordingDate() { + return (Date) get(3); + } + + /** + * Setter for ratings.appear_subppoena.appear_mil_com_percent. + * Явка в военкомат в процентах + */ + public void setAppearMilComPercent(BigDecimal value) { + set(4, value); + } + + /** + * Getter for ratings.appear_subppoena.appear_mil_com_percent. + * Явка в военкомат в процентах + */ + public BigDecimal getAppearMilComPercent() { + return (BigDecimal) get(4); + } + + /** + * Setter for ratings.appear_subppoena.recruitment_id. + */ + public void setRecruitmentId(UUID value) { + set(5, value); + } + + /** + * Getter for ratings.appear_subppoena.recruitment_id. + */ + public UUID getRecruitmentId() { + return (UUID) get(5); + } + + // ------------------------------------------------------------------------- + // Primary key information + // ------------------------------------------------------------------------- + + @Override + public Record1 key() { + return (Record1) super.key(); + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached AppearSubppoenaRecord + */ + public AppearSubppoenaRecord() { + super(AppearSubppoena.APPEAR_SUBPPOENA); + } + + /** + * Create a detached, initialised AppearSubppoenaRecord + */ + public AppearSubppoenaRecord(Long idAppearSubppoena, Integer idRegion, BigDecimal appearMilCom, Date recordingDate, BigDecimal appearMilComPercent, UUID recruitmentId) { + super(AppearSubppoena.APPEAR_SUBPPOENA); + + setIdAppearSubppoena(idAppearSubppoena); + setIdRegion(idRegion); + setAppearMilCom(appearMilCom); + setRecordingDate(recordingDate); + setAppearMilComPercent(appearMilComPercent); + setRecruitmentId(recruitmentId); + resetChangedOnNotNull(); + } +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/records/ConsiderationComplaintRecord.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/records/ConsiderationComplaintRecord.java new file mode 100644 index 00000000..1f12c18f --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/records/ConsiderationComplaintRecord.java @@ -0,0 +1,155 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.records; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.ConsiderationComplaint; + +import java.math.BigDecimal; +import java.sql.Date; +import java.util.UUID; + +import org.jooq.Record1; +import org.jooq.impl.UpdatableRecordImpl; + + +/** + * Рассмотрение жалоб уровень РФ + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class ConsiderationComplaintRecord extends UpdatableRecordImpl { + + private static final long serialVersionUID = 1L; + + /** + * Setter for + * ratings.consideration_complaint.id_consideration_complaint. + */ + public void setIdConsiderationComplaint(Long value) { + set(0, value); + } + + /** + * Getter for + * ratings.consideration_complaint.id_consideration_complaint. + */ + public Long getIdConsiderationComplaint() { + return (Long) get(0); + } + + /** + * Setter for ratings.consideration_complaint.id_region. + */ + public void setIdRegion(Integer value) { + set(1, value); + } + + /** + * Getter for ratings.consideration_complaint.id_region. + */ + public Integer getIdRegion() { + return (Integer) get(1); + } + + /** + * Setter for + * ratings.consideration_complaint.consideration_complaint. + * Рассмотрение жалоб + */ + public void setConsiderationComplaint(BigDecimal value) { + set(2, value); + } + + /** + * Getter for + * ratings.consideration_complaint.consideration_complaint. + * Рассмотрение жалоб + */ + public BigDecimal getConsiderationComplaint() { + return (BigDecimal) get(2); + } + + /** + * Setter for ratings.consideration_complaint.recording_date. + * Дата записи + */ + public void setRecordingDate(Date value) { + set(3, value); + } + + /** + * Getter for ratings.consideration_complaint.recording_date. + * Дата записи + */ + public Date getRecordingDate() { + return (Date) get(3); + } + + /** + * Setter for + * ratings.consideration_complaint.consideration_complaint_percent. + * Рассмотрение жалоб в процентах + */ + public void setConsiderationComplaintPercent(BigDecimal value) { + set(4, value); + } + + /** + * Getter for + * ratings.consideration_complaint.consideration_complaint_percent. + * Рассмотрение жалоб в процентах + */ + public BigDecimal getConsiderationComplaintPercent() { + return (BigDecimal) get(4); + } + + /** + * Setter for ratings.consideration_complaint.recruitment_id. + */ + public void setRecruitmentId(UUID value) { + set(5, value); + } + + /** + * Getter for ratings.consideration_complaint.recruitment_id. + */ + public UUID getRecruitmentId() { + return (UUID) get(5); + } + + // ------------------------------------------------------------------------- + // Primary key information + // ------------------------------------------------------------------------- + + @Override + public Record1 key() { + return (Record1) super.key(); + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached ConsiderationComplaintRecord + */ + public ConsiderationComplaintRecord() { + super(ConsiderationComplaint.CONSIDERATION_COMPLAINT); + } + + /** + * Create a detached, initialised ConsiderationComplaintRecord + */ + public ConsiderationComplaintRecord(Long idConsiderationComplaint, Integer idRegion, BigDecimal considerationComplaint, Date recordingDate, BigDecimal considerationComplaintPercent, UUID recruitmentId) { + super(ConsiderationComplaint.CONSIDERATION_COMPLAINT); + + setIdConsiderationComplaint(idConsiderationComplaint); + setIdRegion(idRegion); + setConsiderationComplaint(considerationComplaint); + setRecordingDate(recordingDate); + setConsiderationComplaintPercent(considerationComplaintPercent); + setRecruitmentId(recruitmentId); + resetChangedOnNotNull(); + } +} diff --git a/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/records/RecruitmentRecord.java b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/records/RecruitmentRecord.java new file mode 100644 index 00000000..299ac50b --- /dev/null +++ b/backend/src/main/java/ervu_lkrp_ul/ervu_lkrp_ul/db_beans/ratings/tables/records/RecruitmentRecord.java @@ -0,0 +1,162 @@ +/* + * This file is generated by jOOQ. + */ +package ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.records; + + +import ervu_lkrp_ul.ervu_lkrp_ul.db_beans.ratings.tables.Recruitment; + +import java.math.BigDecimal; +import java.sql.Date; +import java.util.UUID; + +import org.jooq.Record1; +import org.jooq.impl.UpdatableRecordImpl; + + +/** + * Призыв уровень РФ + */ +@SuppressWarnings({ "all", "unchecked", "rawtypes" }) +public class RecruitmentRecord extends UpdatableRecordImpl { + + private static final long serialVersionUID = 1L; + + /** + * Setter for ratings.recruitment.id_recruitment. + */ + public void setIdRecruitment(Long value) { + set(0, value); + } + + /** + * Getter for ratings.recruitment.id_recruitment. + */ + public Long getIdRecruitment() { + return (Long) get(0); + } + + /** + * Setter for ratings.recruitment.id_region. + */ + public void setIdRegion(Integer value) { + set(1, value); + } + + /** + * Getter for ratings.recruitment.id_region. + */ + public Integer getIdRegion() { + return (Integer) get(1); + } + + /** + * Setter for ratings.recruitment.execution. Исполнение плана + * призыва + */ + public void setExecution(BigDecimal value) { + set(2, value); + } + + /** + * Getter for ratings.recruitment.execution. Исполнение плана + * призыва + */ + public BigDecimal getExecution() { + return (BigDecimal) get(2); + } + + /** + * Setter for ratings.recruitment.spring_autumn. Осень/весна + */ + public void setSpringAutumn(String value) { + set(3, value); + } + + /** + * Getter for ratings.recruitment.spring_autumn. Осень/весна + */ + public String getSpringAutumn() { + return (String) get(3); + } + + /** + * Setter for ratings.recruitment.recording_date. Дата записи + */ + public void setRecordingDate(Date value) { + set(4, value); + } + + /** + * Getter for ratings.recruitment.recording_date. Дата записи + */ + public Date getRecordingDate() { + return (Date) get(4); + } + + /** + * Setter for ratings.recruitment.execution_percent. Исолнение + * плана призыва в процентах + */ + public void setExecutionPercent(BigDecimal value) { + set(5, value); + } + + /** + * Getter for ratings.recruitment.execution_percent. Исолнение + * плана призыва в процентах + */ + public BigDecimal getExecutionPercent() { + return (BigDecimal) get(5); + } + + /** + * Setter for ratings.recruitment.recruitment_id. + */ + public void setRecruitmentId(UUID value) { + set(6, value); + } + + /** + * Getter for ratings.recruitment.recruitment_id. + */ + public UUID getRecruitmentId() { + return (UUID) get(6); + } + + // ------------------------------------------------------------------------- + // Primary key information + // ------------------------------------------------------------------------- + + @Override + public Record1 key() { + return (Record1) super.key(); + } + + // ------------------------------------------------------------------------- + // Constructors + // ------------------------------------------------------------------------- + + /** + * Create a detached RecruitmentRecord + */ + public RecruitmentRecord() { + super(Recruitment.RECRUITMENT); + } + + /** + * Create a detached, initialised RecruitmentRecord + */ + public RecruitmentRecord(Long idRecruitment, Integer idRegion, BigDecimal execution, String springAutumn, Date recordingDate, BigDecimal executionPercent, UUID recruitmentId) { + super(Recruitment.RECRUITMENT); + + setIdRecruitment(idRecruitment); + setIdRegion(idRegion); + setExecution(execution); + setSpringAutumn(springAutumn); + setRecordingDate(recordingDate); + setExecutionPercent(executionPercent); + setRecruitmentId(recruitmentId); + resetChangedOnNotNull(); + } +} diff --git a/backend/src/main/java/ru/micord/ervu/security/esia/service/EsiaAuthService.java b/backend/src/main/java/ru/micord/ervu/security/esia/service/EsiaAuthService.java index fa39a520..8d574c82 100644 --- a/backend/src/main/java/ru/micord/ervu/security/esia/service/EsiaAuthService.java +++ b/backend/src/main/java/ru/micord/ervu/security/esia/service/EsiaAuthService.java @@ -21,8 +21,8 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.fasterxml.jackson.databind.ObjectMapper; +import ervu.service.classifier.OkopfService; import ru.micord.ervu.security.esia.config.EsiaConfig; -import ervu.service.classifier.RecordAttributesService; import org.springframework.beans.factory.annotation.Value; import ru.micord.ervu.kafka.model.Brhs; import ru.micord.ervu.kafka.model.Data; @@ -68,7 +68,7 @@ public class EsiaAuthService { private ReplyingKafkaService replyingKafkaService; @Autowired - private RecordAttributesService recordAttributesService; + private OkopfService okopfService; @Value("${ervu-kafka.org-reply-topic}") private String requestReplyTopic; @@ -406,7 +406,7 @@ public class EsiaAuthService { EmployeeModel employeeModel = ulDataService.getEmployeeModel(accessToken); EmployeeModel chiefModel = ulDataService.getChiefEmployeeModel(accessToken); OrgInfo orgInfo = copyToOrgInfo(organizationModel, employeeModel, chiefModel); - orgInfo.setOrgTypeName(recordAttributesService.findTitleByLeg(orgInfo.getOrgTypeLeg())); + orgInfo.setOrgTypeName(okopfService.findTitleByLeg(orgInfo.getOrgTypeLeg())); String kafkaResponse = replyingKafkaService.sendMessageAndGetReply(requestTopic, requestReplyTopic, objectMapper.writeValueAsString(orgInfo) ); diff --git a/backend/src/main/resources/config/v_1.0/2024-29-08--01-create-table-okopf-records.xml b/backend/src/main/resources/config/v_1.0/2024-29-08--01-create-table-okopf-records.xml new file mode 100644 index 00000000..1ab98c43 --- /dev/null +++ b/backend/src/main/resources/config/v_1.0/2024-29-08--01-create-table-okopf-records.xml @@ -0,0 +1,18 @@ + + + + + + CREATE TABLE okopf_records + ( + okopf_records_id varchar primary key, + name varchar unique, + version int not null + ); + + + diff --git a/backend/src/main/resources/config/v_1.0/2024-29-08--01-create-table-record-attributes.xml b/backend/src/main/resources/config/v_1.0/2024-29-08--01-create-table-record-attributes.xml deleted file mode 100644 index ea57cb30..00000000 --- a/backend/src/main/resources/config/v_1.0/2024-29-08--01-create-table-record-attributes.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - CREATE TABLE classifier_attributes - ( - classifier_attribute_id uuid primary key, - attribute_name varchar unique - ); - - - - - - CREATE TABLE record_attributes - ( - record_attribute_id bigserial primary key, - record_id uuid not null, - attribute_id uuid not null references classifier_attributes (classifier_attribute_id), - attribute_value varchar, - version varchar not null, - CONSTRAINT uni_record_uid_attribute_uid UNIQUE (record_id, attribute_id) - ); - - - diff --git a/backend/src/main/resources/config/v_1.0/changelog-v_1.0.xml b/backend/src/main/resources/config/v_1.0/changelog-v_1.0.xml index 203a4563..7eeb7be0 100644 --- a/backend/src/main/resources/config/v_1.0/changelog-v_1.0.xml +++ b/backend/src/main/resources/config/v_1.0/changelog-v_1.0.xml @@ -5,7 +5,7 @@ xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd"> - + \ No newline at end of file diff --git a/config.md b/config.md index 74557103..b573e8dd 100644 --- a/config.md +++ b/config.md @@ -677,6 +677,14 @@ JBPM использует 3 корневых категории логирова ``` +# Взаимодействие с ЕСНСИ в части получения справочника ОКОПФ + +Свойства задаются в файле config/standalone/dev/standalone.xml + +## Параметры +- `esnsi.okopf.url` - url который обращается к еснси для получения справочника и скачивает данные спровочников организации в виде заархивированного json файла. +- `esnsi.okopf.cron.load` - настройка, которая указывет расписание для загрузки справочника окопф и сохранение данных по справкам в БД + # Описание параметров конфигурации клиентской части Свойства задаются в файле frontend/src/resources/app-config.json или frontend.war/src/resources/app-config.json @@ -741,6 +749,7 @@ JBPM использует 3 корневых категории логирова "jivo_chat_widget_enabled": false ``` + # Прочее ## Смена удалённого репозитория diff --git a/config/patches/default.cli b/config/patches/default.cli index 81f24541..2a7f6b93 100644 --- a/config/patches/default.cli +++ b/config/patches/default.cli @@ -53,6 +53,5 @@ xa-data-source add \ /system-property=ervu-kafka.group-id:add(value="1") /system-property=ervu-kafka.org-request-topic:add(value="ervu.organization.request") /system-property=ervu-kafka.reply-timeout:add(value="30") -/system-property=ervu.cron.load.enable(value="true") -/system-property=ervu.cron.load.time(value="0 0 */1 * * *") -/system-property=ervu.esnsi.classifier.url.load(value="https://esnsi.gosuslugi.ru/rest/ext/v1/classifiers/11465/file?extension=JSON&encoding=UTF_8"") \ No newline at end of file +/system-property=esnsi.okopf.cron.load:add(value="0 0 */1 * * *") +/system-property=esnsi.okopf.url:add(value="https://esnsi.gosuslugi.ru/rest/ext/v1/classifiers/11465/file?extension=JSON&encoding=UTF_8") \ No newline at end of file diff --git a/config/standalone/dev/standalone.xml b/config/standalone/dev/standalone.xml index c74766d9..de674f3e 100644 --- a/config/standalone/dev/standalone.xml +++ b/config/standalone/dev/standalone.xml @@ -80,8 +80,8 @@ - - + + diff --git a/config/tomcat/tomee/conf/webbpm.properties b/config/tomcat/tomee/conf/webbpm.properties index d5783d81..d3fe26ae 100644 --- a/config/tomcat/tomee/conf/webbpm.properties +++ b/config/tomcat/tomee/conf/webbpm.properties @@ -40,4 +40,6 @@ ervu-kafka.bootstrap-servers=localhost:9092 ervu-kafka.org-reply-topic=ervu.organization.response ervu-kafka.group-id=1 ervu-kafka.org-request-topic=ervu.organization.request -ervu-kafka.reply-timeout=30 \ No newline at end of file +ervu-kafka.reply-timeout=30 +esnsi.okopf.url=https://esnsi.gosuslugi.ru/rest/ext/v1/classifiers/11465/file?extension=JSON&encoding=UTF_8 +esnsi.okopf.cron.load=0 0 */1 * * * \ No newline at end of file