From 8edb4944419fac39d5042698be48e6062fffbc75 Mon Sep 17 00:00:00 2001 From: Vitalii Ananev Date: Tue, 17 Jan 2023 00:00:51 +0300 Subject: [PATCH 01/51] update spring boot to 3.0.1 --- README.md | 2 +- docs/developer-guide.md | 2 +- pom.xml | 19 ++++++++---- .../api/AbstractRestController.java | 2 +- .../api/EventCashFlowRestController.java | 2 +- .../investbook/api/IssuerRestController.java | 2 +- .../api/PortfolioCashRestController.java | 2 +- .../api/PortfolioPropertyRestController.java | 2 +- .../api/PortfolioRestController.java | 2 +- .../SecurityDescriptionRestController.java | 2 +- .../SecurityEventCashFlowRestController.java | 2 +- .../api/SecurityQuoteRestController.java | 2 +- .../api/SecurityRestController.java | 2 +- .../api/TransactionRestController.java | 2 +- .../investbook/entity/CashFlowTypeEntity.java | 11 ++++--- .../entity/EventCashFlowEntity.java | 18 +++++------ .../entity/ForeignExchangeRateEntity.java | 10 +++---- .../entity/ForeignExchangeRateEntityPk.java | 8 ++--- .../ru/investbook/entity/IssuerEntity.java | 11 ++++--- .../entity/PortfolioCashEntity.java | 12 ++++---- .../ru/investbook/entity/PortfolioEntity.java | 11 ++++--- .../entity/PortfolioPropertyEntity.java | 18 +++++------ .../entity/SecurityDescriptionEntity.java | 15 +++++----- .../ru/investbook/entity/SecurityEntity.java | 14 ++++----- .../entity/SecurityEventCashFlowEntity.java | 18 +++++------ .../entity/SecurityQuoteEntity.java | 18 +++++------ .../entity/StockMarketIndexEntity.java | 10 +++---- .../entity/TransactionCashFlowEntity.java | 18 +++++------ .../investbook/entity/TransactionEntity.java | 18 +++++------ .../UseExistingOrGenerateIdGenerator.java | 6 ++-- .../PortfolioOpenFormatRestController.java | 2 +- .../openformat/v1_1_0/AccountPof.java | 4 +-- .../openformat/v1_1_0/AssetPof.java | 2 +- .../openformat/v1_1_0/CashBalancesPof.java | 4 +-- .../openformat/v1_1_0/CashFlowPof.java | 4 +-- .../openformat/v1_1_0/PaymentPof.java | 4 +-- .../v1_1_0/PortfolioOpenFormatV1_1_0.java | 2 +- .../openformat/v1_1_0/TradePof.java | 4 +-- .../openformat/v1_1_0/TransferPof.java | 2 +- .../openformat/v1_1_0/VndInvestbookPof.java | 2 +- .../parser/InvestbookApiClient.java | 5 ++-- .../parser/MailboxReportParserService.java | 30 +++++++++---------- .../parser/SecurityRegistrarImpl.java | 2 +- .../parser/TransactionValueAndFeeParser.java | 2 +- .../investbook/parser/ValidatorService.java | 6 ++-- .../tinkoff/SecurityCodeAndIsinTable.java | 2 +- .../TinkoffDepositAndWithdrawalTable.java | 2 +- ...ventCashFlowEntitySearchSpecification.java | 8 ++--- ...oreignExchangeRateSearchSpecification.java | 10 +++---- .../PortfolioCashSearchSpecification.java | 8 ++--- .../PortfolioPropertySearchSpecification.java | 8 ++--- .../SecurityDepositSearchSpecification.java | 10 +++---- ...ecurityDescriptionSearchSpecification.java | 8 ++--- ...ventCashFlowEntitySearchSpecification.java | 10 +++---- .../SecurityQuoteSearchSpecification.java | 8 ++--- .../repository/specs/SpecificationHelper.java | 14 ++++----- .../specs/TransactionSearchSpecification.java | 8 ++--- .../CbrForeignExchangeRateServiceXmlImpl.java | 4 +-- .../web/HttpAttachResponseHelper.java | 2 +- .../web/InvestbookReportController.java | 2 +- .../controller/EventCashFlowController.java | 4 +-- .../ForeignExchangeRateController.java | 2 +- .../controller/PortfolioCashController.java | 4 +-- .../forms/controller/PortfolioController.java | 2 +- .../PortfolioPropertyController.java | 4 +-- .../controller/SecurityDepositController.java | 3 +- .../SecurityDescriptionController.java | 4 +-- .../SecurityEventCashFlowController.java | 4 +-- .../controller/SecurityQuoteController.java | 4 +-- .../controller/TransactionController.java | 4 +-- .../forms/model/ArchivedPortfolioModel.java | 2 +- .../web/forms/model/EventCashFlowModel.java | 6 ++-- .../forms/model/ForeignExchangeRateModel.java | 6 ++-- .../web/forms/model/PortfolioCashModel.java | 4 +-- .../forms/model/PortfolioPropertyModel.java | 4 +-- .../PortfolioPropertyTotalAssetsModel.java | 2 +- .../forms/model/SecurityDescriptionModel.java | 5 ++-- .../model/SecurityEventCashFlowModel.java | 6 ++-- .../web/forms/model/SecurityQuoteModel.java | 8 ++--- .../web/forms/model/SplitModel.java | 6 ++-- .../web/forms/model/TransactionModel.java | 10 +++---- 81 files changed, 267 insertions(+), 267 deletions(-) diff --git a/README.md b/README.md index 3f460fe5..7103454f 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ ![java-version](https://img.shields.io/badge/java-18-brightgreen?style=flat-square) -![spring-boot-version](https://img.shields.io/badge/spring--boot-2.7.4-brightgreen?style=flat-square) +![spring-boot-version](https://img.shields.io/badge/spring--boot-3.0.1-brightgreen?style=flat-square) [![hits-of-code](https://img.shields.io/badge/dynamic/json?style=flat-square&color=lightblue&label=hits-of-code&url=https://hitsofcode.com/github/spacious-team/investbook/json?branch=develop&query=$.count)](https://hitsofcode.com/github/spacious-team/investbook/view?branch=develop) ![github-closed-pull-requests](https://img.shields.io/github/issues-pr-closed/spacious-team/investbook?style=flat-square&color=brightgreen) ![github-workflow-status](https://img.shields.io/github/actions/workflow/status/spacious-team/investbook/publish-docker.yml?style=flat-square&branch=master) diff --git a/docs/developer-guide.md b/docs/developer-guide.md index 1e7e8f21..2df9e14e 100644 --- a/docs/developer-guide.md +++ b/docs/developer-guide.md @@ -1,5 +1,5 @@ ![java-version](https://img.shields.io/badge/java-18-brightgreen?style=flat-square) -![spring-boot-version](https://img.shields.io/badge/spring--boot-2.7.4-brightgreen?style=flat-square) +![spring-boot-version](https://img.shields.io/badge/spring--boot-3.0.1-brightgreen?style=flat-square) ### Инструкция для начинающих Если вы начинающий разработчик воспользуйтесь этой [инструкцией](https://github.com/spacious-team/investbook/files/5398264/github.docx). diff --git a/pom.xml b/pom.xml index 305793e5..cb6437c5 100644 --- a/pom.xml +++ b/pom.xml @@ -23,7 +23,7 @@ org.springframework.boot spring-boot-starter-parent - 2.7.4 + 3.0.1 ru.investbook @@ -92,6 +92,12 @@ table-wrapper-api 2022.4 + + org.glassfish.jaxb + jaxb-runtime + + compile + @@ -178,7 +184,7 @@ true - org.hibernate + org.hibernate.orm hibernate-jpamodelgen @@ -188,8 +194,8 @@ 1.4.200 - mysql - mysql-connector-java + com.mysql + mysql-connector-j runtime @@ -199,11 +205,12 @@ org.springdoc springdoc-openapi-ui - 1.6.11 + 1.6.14 com.sun.mail jakarta.mail + 2.0.1 org.decampo @@ -285,7 +292,7 @@ org.codehaus.mojo jaxb2-maven-plugin - 2.5.0 + 3.1.0 xsd-to-java diff --git a/src/main/java/ru/investbook/api/AbstractRestController.java b/src/main/java/ru/investbook/api/AbstractRestController.java index af324460..0b21e2a5 100644 --- a/src/main/java/ru/investbook/api/AbstractRestController.java +++ b/src/main/java/ru/investbook/api/AbstractRestController.java @@ -18,6 +18,7 @@ package ru.investbook.api; +import jakarta.persistence.GeneratedValue; import lombok.RequiredArgsConstructor; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.http.HttpStatus; @@ -27,7 +28,6 @@ import ru.investbook.converter.EntityConverter; import ru.investbook.entity.UseExistingOrGenerateIdGenerator; -import javax.persistence.GeneratedValue; import java.net.URI; import java.net.URISyntaxException; import java.util.List; diff --git a/src/main/java/ru/investbook/api/EventCashFlowRestController.java b/src/main/java/ru/investbook/api/EventCashFlowRestController.java index 25216d61..db07d7b3 100644 --- a/src/main/java/ru/investbook/api/EventCashFlowRestController.java +++ b/src/main/java/ru/investbook/api/EventCashFlowRestController.java @@ -21,6 +21,7 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import org.spacious_team.broker.pojo.EventCashFlow; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.http.ResponseEntity; @@ -35,7 +36,6 @@ import ru.investbook.converter.EntityConverter; import ru.investbook.entity.EventCashFlowEntity; -import javax.validation.Valid; import java.util.List; import java.util.Optional; diff --git a/src/main/java/ru/investbook/api/IssuerRestController.java b/src/main/java/ru/investbook/api/IssuerRestController.java index 629e93a9..0dece3f3 100644 --- a/src/main/java/ru/investbook/api/IssuerRestController.java +++ b/src/main/java/ru/investbook/api/IssuerRestController.java @@ -21,6 +21,7 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import org.spacious_team.broker.pojo.Issuer; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.http.ResponseEntity; @@ -35,7 +36,6 @@ import ru.investbook.converter.EntityConverter; import ru.investbook.entity.IssuerEntity; -import javax.validation.Valid; import java.util.List; import java.util.Optional; diff --git a/src/main/java/ru/investbook/api/PortfolioCashRestController.java b/src/main/java/ru/investbook/api/PortfolioCashRestController.java index 6e068b13..b4aa19b6 100644 --- a/src/main/java/ru/investbook/api/PortfolioCashRestController.java +++ b/src/main/java/ru/investbook/api/PortfolioCashRestController.java @@ -21,6 +21,7 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import org.spacious_team.broker.pojo.PortfolioCash; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.http.ResponseEntity; @@ -35,7 +36,6 @@ import ru.investbook.converter.EntityConverter; import ru.investbook.entity.PortfolioCashEntity; -import javax.validation.Valid; import java.util.List; import java.util.Optional; diff --git a/src/main/java/ru/investbook/api/PortfolioPropertyRestController.java b/src/main/java/ru/investbook/api/PortfolioPropertyRestController.java index fa989916..a32f8913 100644 --- a/src/main/java/ru/investbook/api/PortfolioPropertyRestController.java +++ b/src/main/java/ru/investbook/api/PortfolioPropertyRestController.java @@ -21,6 +21,7 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import org.spacious_team.broker.pojo.PortfolioProperty; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.http.ResponseEntity; @@ -35,7 +36,6 @@ import ru.investbook.converter.EntityConverter; import ru.investbook.entity.PortfolioPropertyEntity; -import javax.validation.Valid; import java.util.List; import java.util.Optional; diff --git a/src/main/java/ru/investbook/api/PortfolioRestController.java b/src/main/java/ru/investbook/api/PortfolioRestController.java index 910a7f2d..1a36b37b 100644 --- a/src/main/java/ru/investbook/api/PortfolioRestController.java +++ b/src/main/java/ru/investbook/api/PortfolioRestController.java @@ -21,6 +21,7 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import org.spacious_team.broker.pojo.Portfolio; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.DeleteMapping; @@ -35,7 +36,6 @@ import ru.investbook.entity.PortfolioEntity; import ru.investbook.repository.PortfolioRepository; -import javax.validation.Valid; import java.util.List; import java.util.Optional; diff --git a/src/main/java/ru/investbook/api/SecurityDescriptionRestController.java b/src/main/java/ru/investbook/api/SecurityDescriptionRestController.java index 432cbc1d..21d9df14 100644 --- a/src/main/java/ru/investbook/api/SecurityDescriptionRestController.java +++ b/src/main/java/ru/investbook/api/SecurityDescriptionRestController.java @@ -21,6 +21,7 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import org.spacious_team.broker.pojo.SecurityDescription; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.DeleteMapping; @@ -35,7 +36,6 @@ import ru.investbook.entity.SecurityDescriptionEntity; import ru.investbook.repository.SecurityDescriptionRepository; -import javax.validation.Valid; import java.util.List; import java.util.Optional; diff --git a/src/main/java/ru/investbook/api/SecurityEventCashFlowRestController.java b/src/main/java/ru/investbook/api/SecurityEventCashFlowRestController.java index 6550442f..b9ba2f6d 100644 --- a/src/main/java/ru/investbook/api/SecurityEventCashFlowRestController.java +++ b/src/main/java/ru/investbook/api/SecurityEventCashFlowRestController.java @@ -21,6 +21,7 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import org.spacious_team.broker.pojo.SecurityEventCashFlow; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.http.ResponseEntity; @@ -36,7 +37,6 @@ import ru.investbook.entity.SecurityEventCashFlowEntity; import ru.investbook.report.FifoPositionsFactory; -import javax.validation.Valid; import java.util.List; import java.util.Optional; diff --git a/src/main/java/ru/investbook/api/SecurityQuoteRestController.java b/src/main/java/ru/investbook/api/SecurityQuoteRestController.java index 67e90a93..40110540 100644 --- a/src/main/java/ru/investbook/api/SecurityQuoteRestController.java +++ b/src/main/java/ru/investbook/api/SecurityQuoteRestController.java @@ -21,6 +21,7 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import org.spacious_team.broker.pojo.SecurityQuote; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.http.ResponseEntity; @@ -35,7 +36,6 @@ import ru.investbook.converter.EntityConverter; import ru.investbook.entity.SecurityQuoteEntity; -import javax.validation.Valid; import java.util.List; import java.util.Optional; diff --git a/src/main/java/ru/investbook/api/SecurityRestController.java b/src/main/java/ru/investbook/api/SecurityRestController.java index d18561d5..5fb138ea 100644 --- a/src/main/java/ru/investbook/api/SecurityRestController.java +++ b/src/main/java/ru/investbook/api/SecurityRestController.java @@ -21,6 +21,7 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import org.spacious_team.broker.pojo.Security; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.DeleteMapping; @@ -35,7 +36,6 @@ import ru.investbook.entity.SecurityEntity; import ru.investbook.repository.SecurityRepository; -import javax.validation.Valid; import java.util.List; import java.util.Optional; diff --git a/src/main/java/ru/investbook/api/TransactionRestController.java b/src/main/java/ru/investbook/api/TransactionRestController.java index 645c5ce6..86432d4c 100644 --- a/src/main/java/ru/investbook/api/TransactionRestController.java +++ b/src/main/java/ru/investbook/api/TransactionRestController.java @@ -21,6 +21,7 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import org.spacious_team.broker.pojo.Transaction; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.DeleteMapping; @@ -37,7 +38,6 @@ import ru.investbook.report.FifoPositionsFactory; import ru.investbook.repository.TransactionRepository; -import javax.validation.Valid; import java.util.Collections; import java.util.List; import java.util.Optional; diff --git a/src/main/java/ru/investbook/entity/CashFlowTypeEntity.java b/src/main/java/ru/investbook/entity/CashFlowTypeEntity.java index 24691947..61792273 100644 --- a/src/main/java/ru/investbook/entity/CashFlowTypeEntity.java +++ b/src/main/java/ru/investbook/entity/CashFlowTypeEntity.java @@ -18,14 +18,13 @@ package ru.investbook.entity; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; import lombok.Data; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.Table; - @Entity @Table(name = "cash_flow_type") @Data diff --git a/src/main/java/ru/investbook/entity/EventCashFlowEntity.java b/src/main/java/ru/investbook/entity/EventCashFlowEntity.java index 0fccb0e3..16f8c371 100644 --- a/src/main/java/ru/investbook/entity/EventCashFlowEntity.java +++ b/src/main/java/ru/investbook/entity/EventCashFlowEntity.java @@ -19,19 +19,19 @@ package ru.investbook.entity; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.Id; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.Table; import lombok.Data; import lombok.EqualsAndHashCode; import org.hibernate.annotations.GenericGenerator; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.FetchType; -import javax.persistence.GeneratedValue; -import javax.persistence.Id; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.Table; import java.math.BigDecimal; import java.time.Instant; diff --git a/src/main/java/ru/investbook/entity/ForeignExchangeRateEntity.java b/src/main/java/ru/investbook/entity/ForeignExchangeRateEntity.java index 9dca9929..96989e7e 100644 --- a/src/main/java/ru/investbook/entity/ForeignExchangeRateEntity.java +++ b/src/main/java/ru/investbook/entity/ForeignExchangeRateEntity.java @@ -18,13 +18,13 @@ package ru.investbook.entity; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.EmbeddedId; +import jakarta.persistence.Entity; +import jakarta.persistence.Table; import lombok.Data; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.Table; import java.math.BigDecimal; @Entity diff --git a/src/main/java/ru/investbook/entity/ForeignExchangeRateEntityPk.java b/src/main/java/ru/investbook/entity/ForeignExchangeRateEntityPk.java index 2221c668..f1402bae 100644 --- a/src/main/java/ru/investbook/entity/ForeignExchangeRateEntityPk.java +++ b/src/main/java/ru/investbook/entity/ForeignExchangeRateEntityPk.java @@ -18,12 +18,12 @@ package ru.investbook.entity; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import jakarta.persistence.Table; import lombok.Data; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Embeddable; -import javax.persistence.Table; import java.io.Serializable; import java.time.LocalDate; diff --git a/src/main/java/ru/investbook/entity/IssuerEntity.java b/src/main/java/ru/investbook/entity/IssuerEntity.java index 76cc9388..8224dfbe 100644 --- a/src/main/java/ru/investbook/entity/IssuerEntity.java +++ b/src/main/java/ru/investbook/entity/IssuerEntity.java @@ -18,15 +18,14 @@ package ru.investbook.entity; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.Id; +import jakarta.persistence.Table; import lombok.Data; import org.hibernate.annotations.GenericGenerator; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.Id; -import javax.persistence.Table; - @Entity @Table(name = "issuer") @Data diff --git a/src/main/java/ru/investbook/entity/PortfolioCashEntity.java b/src/main/java/ru/investbook/entity/PortfolioCashEntity.java index 9a6d6ae3..07d26e4f 100644 --- a/src/main/java/ru/investbook/entity/PortfolioCashEntity.java +++ b/src/main/java/ru/investbook/entity/PortfolioCashEntity.java @@ -18,15 +18,15 @@ package ru.investbook.entity; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.Id; +import jakarta.persistence.Table; import lombok.Data; import org.hibernate.annotations.GenericGenerator; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.Id; -import javax.persistence.Table; import java.math.BigDecimal; import java.time.Instant; diff --git a/src/main/java/ru/investbook/entity/PortfolioEntity.java b/src/main/java/ru/investbook/entity/PortfolioEntity.java index d3ffe30f..82d5f772 100644 --- a/src/main/java/ru/investbook/entity/PortfolioEntity.java +++ b/src/main/java/ru/investbook/entity/PortfolioEntity.java @@ -18,15 +18,14 @@ package ru.investbook.entity; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; import lombok.Data; import lombok.EqualsAndHashCode; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.Table; - @Entity @Table(name = "portfolio") @Data diff --git a/src/main/java/ru/investbook/entity/PortfolioPropertyEntity.java b/src/main/java/ru/investbook/entity/PortfolioPropertyEntity.java index dcc96954..7dd38b5d 100644 --- a/src/main/java/ru/investbook/entity/PortfolioPropertyEntity.java +++ b/src/main/java/ru/investbook/entity/PortfolioPropertyEntity.java @@ -19,18 +19,18 @@ package ru.investbook.entity; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.Id; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.Table; import lombok.Data; import org.hibernate.annotations.GenericGenerator; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.FetchType; -import javax.persistence.GeneratedValue; -import javax.persistence.Id; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.Table; import java.time.Instant; @Entity diff --git a/src/main/java/ru/investbook/entity/SecurityDescriptionEntity.java b/src/main/java/ru/investbook/entity/SecurityDescriptionEntity.java index 74b3a4fe..a0638fdf 100644 --- a/src/main/java/ru/investbook/entity/SecurityDescriptionEntity.java +++ b/src/main/java/ru/investbook/entity/SecurityDescriptionEntity.java @@ -19,17 +19,16 @@ package ru.investbook.entity; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.Id; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.Table; import lombok.Data; import lombok.EqualsAndHashCode; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.FetchType; -import javax.persistence.Id; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.Table; - @Entity @Table(name = "security_description") @Data diff --git a/src/main/java/ru/investbook/entity/SecurityEntity.java b/src/main/java/ru/investbook/entity/SecurityEntity.java index 98551b8e..794b03c7 100644 --- a/src/main/java/ru/investbook/entity/SecurityEntity.java +++ b/src/main/java/ru/investbook/entity/SecurityEntity.java @@ -18,18 +18,18 @@ package ru.investbook.entity; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.EnumType; +import jakarta.persistence.Enumerated; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.Id; +import jakarta.persistence.Table; import lombok.Data; import lombok.EqualsAndHashCode; import org.hibernate.annotations.GenericGenerator; import org.spacious_team.broker.pojo.SecurityType; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.EnumType; -import javax.persistence.Enumerated; -import javax.persistence.GeneratedValue; -import javax.persistence.Id; -import javax.persistence.Table; import java.util.regex.Pattern; @Entity diff --git a/src/main/java/ru/investbook/entity/SecurityEventCashFlowEntity.java b/src/main/java/ru/investbook/entity/SecurityEventCashFlowEntity.java index 85e8d2f8..5135fde2 100644 --- a/src/main/java/ru/investbook/entity/SecurityEventCashFlowEntity.java +++ b/src/main/java/ru/investbook/entity/SecurityEventCashFlowEntity.java @@ -19,19 +19,19 @@ package ru.investbook.entity; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.Id; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.Table; import lombok.Data; import lombok.EqualsAndHashCode; import org.hibernate.annotations.GenericGenerator; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.FetchType; -import javax.persistence.GeneratedValue; -import javax.persistence.Id; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.Table; import java.math.BigDecimal; import java.time.Instant; diff --git a/src/main/java/ru/investbook/entity/SecurityQuoteEntity.java b/src/main/java/ru/investbook/entity/SecurityQuoteEntity.java index 4fd2f604..0057f807 100644 --- a/src/main/java/ru/investbook/entity/SecurityQuoteEntity.java +++ b/src/main/java/ru/investbook/entity/SecurityQuoteEntity.java @@ -19,18 +19,18 @@ package ru.investbook.entity; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.Id; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.Table; import lombok.Data; import org.hibernate.annotations.GenericGenerator; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.FetchType; -import javax.persistence.GeneratedValue; -import javax.persistence.Id; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.Table; import java.math.BigDecimal; import java.time.Instant; diff --git a/src/main/java/ru/investbook/entity/StockMarketIndexEntity.java b/src/main/java/ru/investbook/entity/StockMarketIndexEntity.java index 17f93e5a..afff6308 100644 --- a/src/main/java/ru/investbook/entity/StockMarketIndexEntity.java +++ b/src/main/java/ru/investbook/entity/StockMarketIndexEntity.java @@ -18,17 +18,17 @@ package ru.investbook.entity; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; import lombok.AccessLevel; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.Table; import java.math.BigDecimal; import java.time.LocalDate; diff --git a/src/main/java/ru/investbook/entity/TransactionCashFlowEntity.java b/src/main/java/ru/investbook/entity/TransactionCashFlowEntity.java index 43416179..feeaaa7c 100644 --- a/src/main/java/ru/investbook/entity/TransactionCashFlowEntity.java +++ b/src/main/java/ru/investbook/entity/TransactionCashFlowEntity.java @@ -18,19 +18,19 @@ package ru.investbook.entity; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.Id; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.Table; import lombok.Data; import lombok.EqualsAndHashCode; import org.hibernate.annotations.GenericGenerator; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.FetchType; -import javax.persistence.GeneratedValue; -import javax.persistence.Id; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.Table; import java.math.BigDecimal; @Entity diff --git a/src/main/java/ru/investbook/entity/TransactionEntity.java b/src/main/java/ru/investbook/entity/TransactionEntity.java index eec51fbc..5d930264 100644 --- a/src/main/java/ru/investbook/entity/TransactionEntity.java +++ b/src/main/java/ru/investbook/entity/TransactionEntity.java @@ -19,20 +19,20 @@ package ru.investbook.entity; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import jakarta.persistence.Basic; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.Id; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.Table; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.ToString; import org.hibernate.annotations.GenericGenerator; -import javax.persistence.Basic; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.FetchType; -import javax.persistence.GeneratedValue; -import javax.persistence.Id; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.persistence.Table; import java.time.Instant; @Entity diff --git a/src/main/java/ru/investbook/entity/UseExistingOrGenerateIdGenerator.java b/src/main/java/ru/investbook/entity/UseExistingOrGenerateIdGenerator.java index 26aa1f79..c177a1bb 100644 --- a/src/main/java/ru/investbook/entity/UseExistingOrGenerateIdGenerator.java +++ b/src/main/java/ru/investbook/entity/UseExistingOrGenerateIdGenerator.java @@ -22,8 +22,6 @@ import org.hibernate.engine.spi.SharedSessionContractImplementor; import org.hibernate.id.IdentityGenerator; -import java.io.Serializable; - /** * {@code @GeneratedValue} doesn't work out of box for H2. * {@code @GeneratedValue(strategy = GenerationType.IDENTITY)} ignores entity id field set manually. @@ -35,8 +33,8 @@ public class UseExistingOrGenerateIdGenerator extends IdentityGenerator { static final String STRATEGY = "ru.investbook.entity.UseExistingOrGenerateIdGenerator"; @Override - public Serializable generate(SharedSessionContractImplementor session, Object object) throws HibernateException { - Serializable id = session.getEntityPersister(null, object) + public Object generate(SharedSessionContractImplementor session, Object object) throws HibernateException { + Object id = session.getEntityPersister(null, object) .getClassMetadata() .getIdentifier(object, session); return (id == null) ? super.generate(session, object) : id; diff --git a/src/main/java/ru/investbook/openformat/PortfolioOpenFormatRestController.java b/src/main/java/ru/investbook/openformat/PortfolioOpenFormatRestController.java index 7d13e6e9..8f373f8e 100644 --- a/src/main/java/ru/investbook/openformat/PortfolioOpenFormatRestController.java +++ b/src/main/java/ru/investbook/openformat/PortfolioOpenFormatRestController.java @@ -19,6 +19,7 @@ package ru.investbook.openformat; import com.fasterxml.jackson.databind.ObjectMapper; +import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.http.ResponseEntity; @@ -33,7 +34,6 @@ import ru.investbook.openformat.v1_1_0.PortfolioOpenFormatV1_1_0; import ru.investbook.parser.ValidatorService; -import javax.servlet.http.HttpServletResponse; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; diff --git a/src/main/java/ru/investbook/openformat/v1_1_0/AccountPof.java b/src/main/java/ru/investbook/openformat/v1_1_0/AccountPof.java index ecb0f198..854f8a99 100644 --- a/src/main/java/ru/investbook/openformat/v1_1_0/AccountPof.java +++ b/src/main/java/ru/investbook/openformat/v1_1_0/AccountPof.java @@ -21,6 +21,8 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; import lombok.Builder; import lombok.Value; import lombok.extern.jackson.Jacksonized; @@ -32,8 +34,6 @@ import org.springframework.lang.Nullable; import ru.investbook.entity.PortfolioEntity; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.time.Instant; import java.util.HashMap; diff --git a/src/main/java/ru/investbook/openformat/v1_1_0/AssetPof.java b/src/main/java/ru/investbook/openformat/v1_1_0/AssetPof.java index c6269484..f96a18ae 100644 --- a/src/main/java/ru/investbook/openformat/v1_1_0/AssetPof.java +++ b/src/main/java/ru/investbook/openformat/v1_1_0/AssetPof.java @@ -21,6 +21,7 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.validation.constraints.NotNull; import lombok.Builder; import lombok.Value; import lombok.extern.jackson.Jacksonized; @@ -30,7 +31,6 @@ import org.springframework.lang.Nullable; import ru.investbook.entity.SecurityEntity; -import javax.validation.constraints.NotNull; import java.util.Optional; import static ru.investbook.openformat.OpenFormatHelper.getValidIsinOrNull; diff --git a/src/main/java/ru/investbook/openformat/v1_1_0/CashBalancesPof.java b/src/main/java/ru/investbook/openformat/v1_1_0/CashBalancesPof.java index ee7b411c..132956ff 100644 --- a/src/main/java/ru/investbook/openformat/v1_1_0/CashBalancesPof.java +++ b/src/main/java/ru/investbook/openformat/v1_1_0/CashBalancesPof.java @@ -21,6 +21,8 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; import lombok.Builder; import lombok.Value; import lombok.extern.jackson.Jacksonized; @@ -28,8 +30,6 @@ import org.spacious_team.broker.pojo.PortfolioCash; import ru.investbook.entity.PortfolioCashEntity; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.time.Instant; import java.util.Collection; diff --git a/src/main/java/ru/investbook/openformat/v1_1_0/CashFlowPof.java b/src/main/java/ru/investbook/openformat/v1_1_0/CashFlowPof.java index 81f3e44d..fc66cc3a 100644 --- a/src/main/java/ru/investbook/openformat/v1_1_0/CashFlowPof.java +++ b/src/main/java/ru/investbook/openformat/v1_1_0/CashFlowPof.java @@ -21,6 +21,8 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; import lombok.Builder; import lombok.Value; import lombok.extern.jackson.Jacksonized; @@ -30,8 +32,6 @@ import org.springframework.lang.Nullable; import ru.investbook.entity.EventCashFlowEntity; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.time.Instant; import java.util.Map; diff --git a/src/main/java/ru/investbook/openformat/v1_1_0/PaymentPof.java b/src/main/java/ru/investbook/openformat/v1_1_0/PaymentPof.java index 82fb5021..c0d2274e 100644 --- a/src/main/java/ru/investbook/openformat/v1_1_0/PaymentPof.java +++ b/src/main/java/ru/investbook/openformat/v1_1_0/PaymentPof.java @@ -21,6 +21,8 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; import lombok.AccessLevel; import lombok.Builder; import lombok.Getter; @@ -34,8 +36,6 @@ import ru.investbook.entity.SecurityEventCashFlowEntity; import ru.investbook.openformat.OpenFormatHelper; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.time.Instant; import java.util.Collection; diff --git a/src/main/java/ru/investbook/openformat/v1_1_0/PortfolioOpenFormatV1_1_0.java b/src/main/java/ru/investbook/openformat/v1_1_0/PortfolioOpenFormatV1_1_0.java index 85b64d07..66b7c788 100644 --- a/src/main/java/ru/investbook/openformat/v1_1_0/PortfolioOpenFormatV1_1_0.java +++ b/src/main/java/ru/investbook/openformat/v1_1_0/PortfolioOpenFormatV1_1_0.java @@ -21,12 +21,12 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.validation.constraints.NotNull; import lombok.Builder; import lombok.Value; import lombok.extern.jackson.Jacksonized; import org.springframework.lang.Nullable; -import javax.validation.constraints.NotNull; import java.util.Collection; import java.util.Collections; diff --git a/src/main/java/ru/investbook/openformat/v1_1_0/TradePof.java b/src/main/java/ru/investbook/openformat/v1_1_0/TradePof.java index 1698ce6f..9434f256 100644 --- a/src/main/java/ru/investbook/openformat/v1_1_0/TradePof.java +++ b/src/main/java/ru/investbook/openformat/v1_1_0/TradePof.java @@ -21,6 +21,8 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; import lombok.AccessLevel; import lombok.Builder; import lombok.Getter; @@ -38,8 +40,6 @@ import ru.investbook.entity.TransactionCashFlowEntity; import ru.investbook.entity.TransactionEntity; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.time.Instant; import java.util.Collection; diff --git a/src/main/java/ru/investbook/openformat/v1_1_0/TransferPof.java b/src/main/java/ru/investbook/openformat/v1_1_0/TransferPof.java index dcd1982a..5fee1e05 100644 --- a/src/main/java/ru/investbook/openformat/v1_1_0/TransferPof.java +++ b/src/main/java/ru/investbook/openformat/v1_1_0/TransferPof.java @@ -21,6 +21,7 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.validation.constraints.NotNull; import lombok.AccessLevel; import lombok.Builder; import lombok.Getter; @@ -32,7 +33,6 @@ import org.springframework.lang.Nullable; import ru.investbook.entity.TransactionEntity; -import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.time.Instant; import java.util.Collection; diff --git a/src/main/java/ru/investbook/openformat/v1_1_0/VndInvestbookPof.java b/src/main/java/ru/investbook/openformat/v1_1_0/VndInvestbookPof.java index 94510998..41d767c7 100644 --- a/src/main/java/ru/investbook/openformat/v1_1_0/VndInvestbookPof.java +++ b/src/main/java/ru/investbook/openformat/v1_1_0/VndInvestbookPof.java @@ -21,6 +21,7 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; +import jakarta.validation.constraints.NotNull; import lombok.Builder; import lombok.Value; import lombok.extern.jackson.Jacksonized; @@ -29,7 +30,6 @@ import org.spacious_team.broker.pojo.SecurityDescription; import org.spacious_team.broker.pojo.SecurityQuote; -import javax.validation.constraints.NotNull; import java.util.Collection; import java.util.Collections; diff --git a/src/main/java/ru/investbook/parser/InvestbookApiClient.java b/src/main/java/ru/investbook/parser/InvestbookApiClient.java index a4ed8f3b..52190ccf 100644 --- a/src/main/java/ru/investbook/parser/InvestbookApiClient.java +++ b/src/main/java/ru/investbook/parser/InvestbookApiClient.java @@ -18,6 +18,7 @@ package ru.investbook.parser; +import jakarta.validation.ConstraintViolationException; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.spacious_team.broker.pojo.EventCashFlow; @@ -34,6 +35,7 @@ import org.spacious_team.broker.pojo.TransactionCashFlow; import org.spacious_team.broker.report_parser.api.AbstractTransaction; import org.springframework.http.HttpStatus; +import org.springframework.http.HttpStatusCode; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Component; import ru.investbook.api.EventCashFlowRestController; @@ -49,7 +51,6 @@ import ru.investbook.api.TransactionRestController; import ru.investbook.service.moex.MoexDerivativeCodeService; -import javax.validation.ConstraintViolationException; import java.util.Optional; import java.util.function.Function; @@ -196,7 +197,7 @@ public void addForeignExchangeRate(ForeignExchangeRate exchangeRate) { private boolean handlePost(T object, Function> saver, String errorPrefix) { try { validator.validate(object); - HttpStatus status = saver.apply(object).getStatusCode(); + HttpStatusCode status = saver.apply(object).getStatusCode(); if (!status.is2xxSuccessful() && status != HttpStatus.CONFLICT) { log.warn(errorPrefix + " " + object); return false; diff --git a/src/main/java/ru/investbook/parser/MailboxReportParserService.java b/src/main/java/ru/investbook/parser/MailboxReportParserService.java index 1c78b9e9..65c20d4a 100644 --- a/src/main/java/ru/investbook/parser/MailboxReportParserService.java +++ b/src/main/java/ru/investbook/parser/MailboxReportParserService.java @@ -18,32 +18,32 @@ package ru.investbook.parser; +import jakarta.activation.DataHandler; +import jakarta.activation.DataSource; +import jakarta.mail.BodyPart; +import jakarta.mail.Flags; +import jakarta.mail.Folder; +import jakarta.mail.Message; +import jakarta.mail.Multipart; +import jakarta.mail.Session; +import jakarta.mail.Store; +import jakarta.mail.internet.InternetAddress; +import jakarta.mail.search.AndTerm; +import jakarta.mail.search.FlagTerm; +import jakarta.mail.search.FromTerm; +import jakarta.mail.search.SearchTerm; import lombok.RequiredArgsConstructor; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import ru.investbook.web.model.MailboxDescriptor; -import javax.activation.DataHandler; -import javax.activation.DataSource; -import javax.mail.BodyPart; -import javax.mail.Flags; -import javax.mail.Folder; -import javax.mail.Message; -import javax.mail.Multipart; -import javax.mail.Session; -import javax.mail.Store; -import javax.mail.internet.InternetAddress; -import javax.mail.search.AndTerm; -import javax.mail.search.FlagTerm; -import javax.mail.search.FromTerm; -import javax.mail.search.SearchTerm; import java.time.Duration; import java.util.Properties; import java.util.stream.Stream; +import static jakarta.mail.Flags.Flag.SEEN; import static java.lang.System.nanoTime; -import static javax.mail.Flags.Flag.SEEN; import static org.springframework.util.StringUtils.hasLength; diff --git a/src/main/java/ru/investbook/parser/SecurityRegistrarImpl.java b/src/main/java/ru/investbook/parser/SecurityRegistrarImpl.java index c8b20297..7743a4bf 100644 --- a/src/main/java/ru/investbook/parser/SecurityRegistrarImpl.java +++ b/src/main/java/ru/investbook/parser/SecurityRegistrarImpl.java @@ -18,6 +18,7 @@ package ru.investbook.parser; +import jakarta.validation.ConstraintViolationException; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.spacious_team.broker.pojo.Security; @@ -29,7 +30,6 @@ import ru.investbook.repository.SecurityRepository; import ru.investbook.service.moex.MoexDerivativeCodeService; -import javax.validation.ConstraintViolationException; import java.util.Optional; import java.util.function.Supplier; diff --git a/src/main/java/ru/investbook/parser/TransactionValueAndFeeParser.java b/src/main/java/ru/investbook/parser/TransactionValueAndFeeParser.java index 23b71521..0db02062 100644 --- a/src/main/java/ru/investbook/parser/TransactionValueAndFeeParser.java +++ b/src/main/java/ru/investbook/parser/TransactionValueAndFeeParser.java @@ -18,6 +18,7 @@ package ru.investbook.parser; +import jakarta.validation.constraints.NotNull; import lombok.Builder; import lombok.RequiredArgsConstructor; import lombok.Value; @@ -28,7 +29,6 @@ import org.springframework.stereotype.Component; import ru.investbook.report.ForeignExchangeRateService; -import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.time.Instant; import java.time.LocalDate; diff --git a/src/main/java/ru/investbook/parser/ValidatorService.java b/src/main/java/ru/investbook/parser/ValidatorService.java index 56bc459d..573904a1 100644 --- a/src/main/java/ru/investbook/parser/ValidatorService.java +++ b/src/main/java/ru/investbook/parser/ValidatorService.java @@ -18,12 +18,12 @@ package ru.investbook.parser; +import jakarta.validation.ConstraintViolation; +import jakarta.validation.ConstraintViolationException; +import jakarta.validation.Validator; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; -import javax.validation.ConstraintViolation; -import javax.validation.ConstraintViolationException; -import javax.validation.Validator; import java.util.Set; @Service diff --git a/src/main/java/ru/investbook/parser/tinkoff/SecurityCodeAndIsinTable.java b/src/main/java/ru/investbook/parser/tinkoff/SecurityCodeAndIsinTable.java index 837c28ac..72bbc5d9 100644 --- a/src/main/java/ru/investbook/parser/tinkoff/SecurityCodeAndIsinTable.java +++ b/src/main/java/ru/investbook/parser/tinkoff/SecurityCodeAndIsinTable.java @@ -18,6 +18,7 @@ package ru.investbook.parser.tinkoff; +import jakarta.validation.constraints.NotNull; import lombok.Getter; import org.spacious_team.broker.pojo.SecurityType; import org.spacious_team.broker.report_parser.api.AbstractReportTable; @@ -28,7 +29,6 @@ import org.spacious_team.table_wrapper.api.TableRow; import org.springframework.util.StringUtils; -import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.util.HashMap; import java.util.Map; diff --git a/src/main/java/ru/investbook/parser/tinkoff/TinkoffDepositAndWithdrawalTable.java b/src/main/java/ru/investbook/parser/tinkoff/TinkoffDepositAndWithdrawalTable.java index ef120ab5..1f8966cc 100644 --- a/src/main/java/ru/investbook/parser/tinkoff/TinkoffDepositAndWithdrawalTable.java +++ b/src/main/java/ru/investbook/parser/tinkoff/TinkoffDepositAndWithdrawalTable.java @@ -18,6 +18,7 @@ package ru.investbook.parser.tinkoff; +import jakarta.validation.constraints.NotNull; import lombok.Getter; import lombok.extern.slf4j.Slf4j; import org.spacious_team.broker.pojo.Security; @@ -31,7 +32,6 @@ import ru.investbook.parser.SingleAbstractReportTable; import ru.investbook.parser.SingleBrokerReport; -import javax.validation.constraints.NotNull; import java.time.LocalDate; import java.util.Collection; import java.util.Collections; diff --git a/src/main/java/ru/investbook/repository/specs/EventCashFlowEntitySearchSpecification.java b/src/main/java/ru/investbook/repository/specs/EventCashFlowEntitySearchSpecification.java index f474830a..1f26cf97 100644 --- a/src/main/java/ru/investbook/repository/specs/EventCashFlowEntitySearchSpecification.java +++ b/src/main/java/ru/investbook/repository/specs/EventCashFlowEntitySearchSpecification.java @@ -18,15 +18,15 @@ package ru.investbook.repository.specs; +import jakarta.persistence.criteria.CriteriaBuilder; +import jakarta.persistence.criteria.CriteriaQuery; +import jakarta.persistence.criteria.Predicate; +import jakarta.persistence.criteria.Root; import lombok.RequiredArgsConstructor; import org.springframework.data.jpa.domain.Specification; import ru.investbook.entity.EventCashFlowEntity; import ru.investbook.entity.EventCashFlowEntity_; -import javax.persistence.criteria.CriteriaBuilder; -import javax.persistence.criteria.CriteriaQuery; -import javax.persistence.criteria.Predicate; -import javax.persistence.criteria.Root; import java.time.LocalDate; import java.util.Objects; import java.util.stream.Stream; diff --git a/src/main/java/ru/investbook/repository/specs/ForeignExchangeRateSearchSpecification.java b/src/main/java/ru/investbook/repository/specs/ForeignExchangeRateSearchSpecification.java index a8f28624..c1afeb24 100644 --- a/src/main/java/ru/investbook/repository/specs/ForeignExchangeRateSearchSpecification.java +++ b/src/main/java/ru/investbook/repository/specs/ForeignExchangeRateSearchSpecification.java @@ -18,6 +18,11 @@ package ru.investbook.repository.specs; +import jakarta.persistence.criteria.CriteriaBuilder; +import jakarta.persistence.criteria.CriteriaQuery; +import jakarta.persistence.criteria.Path; +import jakarta.persistence.criteria.Predicate; +import jakarta.persistence.criteria.Root; import lombok.RequiredArgsConstructor; import org.springframework.data.jpa.domain.Specification; import org.springframework.lang.Nullable; @@ -25,11 +30,6 @@ import ru.investbook.entity.ForeignExchangeRateEntityPk_; import ru.investbook.entity.ForeignExchangeRateEntity_; -import javax.persistence.criteria.CriteriaBuilder; -import javax.persistence.criteria.CriteriaQuery; -import javax.persistence.criteria.Path; -import javax.persistence.criteria.Predicate; -import javax.persistence.criteria.Root; import java.time.LocalDate; import java.util.Objects; import java.util.stream.Stream; diff --git a/src/main/java/ru/investbook/repository/specs/PortfolioCashSearchSpecification.java b/src/main/java/ru/investbook/repository/specs/PortfolioCashSearchSpecification.java index 776b9d2e..c29dd92d 100644 --- a/src/main/java/ru/investbook/repository/specs/PortfolioCashSearchSpecification.java +++ b/src/main/java/ru/investbook/repository/specs/PortfolioCashSearchSpecification.java @@ -18,15 +18,15 @@ package ru.investbook.repository.specs; +import jakarta.persistence.criteria.CriteriaBuilder; +import jakarta.persistence.criteria.CriteriaQuery; +import jakarta.persistence.criteria.Predicate; +import jakarta.persistence.criteria.Root; import lombok.RequiredArgsConstructor; import org.springframework.data.jpa.domain.Specification; import ru.investbook.entity.PortfolioCashEntity; import ru.investbook.entity.PortfolioCashEntity_; -import javax.persistence.criteria.CriteriaBuilder; -import javax.persistence.criteria.CriteriaQuery; -import javax.persistence.criteria.Predicate; -import javax.persistence.criteria.Root; import java.time.LocalDate; import java.util.Objects; import java.util.stream.Stream; diff --git a/src/main/java/ru/investbook/repository/specs/PortfolioPropertySearchSpecification.java b/src/main/java/ru/investbook/repository/specs/PortfolioPropertySearchSpecification.java index f6643b2f..aaf8b403 100644 --- a/src/main/java/ru/investbook/repository/specs/PortfolioPropertySearchSpecification.java +++ b/src/main/java/ru/investbook/repository/specs/PortfolioPropertySearchSpecification.java @@ -18,16 +18,16 @@ package ru.investbook.repository.specs; +import jakarta.persistence.criteria.CriteriaBuilder; +import jakarta.persistence.criteria.CriteriaQuery; +import jakarta.persistence.criteria.Predicate; +import jakarta.persistence.criteria.Root; import lombok.RequiredArgsConstructor; import org.spacious_team.broker.pojo.PortfolioPropertyType; import org.springframework.data.jpa.domain.Specification; import ru.investbook.entity.PortfolioPropertyEntity; import ru.investbook.entity.PortfolioPropertyEntity_; -import javax.persistence.criteria.CriteriaBuilder; -import javax.persistence.criteria.CriteriaQuery; -import javax.persistence.criteria.Predicate; -import javax.persistence.criteria.Root; import java.time.LocalDate; import java.util.Objects; import java.util.stream.Stream; diff --git a/src/main/java/ru/investbook/repository/specs/SecurityDepositSearchSpecification.java b/src/main/java/ru/investbook/repository/specs/SecurityDepositSearchSpecification.java index 568eea2e..bb0d8a4e 100644 --- a/src/main/java/ru/investbook/repository/specs/SecurityDepositSearchSpecification.java +++ b/src/main/java/ru/investbook/repository/specs/SecurityDepositSearchSpecification.java @@ -18,6 +18,11 @@ package ru.investbook.repository.specs; +import jakarta.persistence.criteria.CriteriaBuilder; +import jakarta.persistence.criteria.CriteriaQuery; +import jakarta.persistence.criteria.Predicate; +import jakarta.persistence.criteria.Root; +import jakarta.persistence.criteria.Subquery; import lombok.RequiredArgsConstructor; import org.springframework.data.jpa.domain.Specification; import ru.investbook.entity.TransactionCashFlowEntity; @@ -25,11 +30,6 @@ import ru.investbook.entity.TransactionEntity; import ru.investbook.entity.TransactionEntity_; -import javax.persistence.criteria.CriteriaBuilder; -import javax.persistence.criteria.CriteriaQuery; -import javax.persistence.criteria.Predicate; -import javax.persistence.criteria.Root; -import javax.persistence.criteria.Subquery; import java.time.LocalDate; import java.util.Objects; import java.util.stream.Stream; diff --git a/src/main/java/ru/investbook/repository/specs/SecurityDescriptionSearchSpecification.java b/src/main/java/ru/investbook/repository/specs/SecurityDescriptionSearchSpecification.java index 9602f444..db2de0b7 100644 --- a/src/main/java/ru/investbook/repository/specs/SecurityDescriptionSearchSpecification.java +++ b/src/main/java/ru/investbook/repository/specs/SecurityDescriptionSearchSpecification.java @@ -18,15 +18,15 @@ package ru.investbook.repository.specs; +import jakarta.persistence.criteria.CriteriaBuilder; +import jakarta.persistence.criteria.CriteriaQuery; +import jakarta.persistence.criteria.Predicate; +import jakarta.persistence.criteria.Root; import lombok.RequiredArgsConstructor; import org.springframework.data.jpa.domain.Specification; import ru.investbook.entity.SecurityDescriptionEntity; import ru.investbook.entity.SecurityDescriptionEntity_; -import javax.persistence.criteria.CriteriaBuilder; -import javax.persistence.criteria.CriteriaQuery; -import javax.persistence.criteria.Predicate; -import javax.persistence.criteria.Root; import java.util.Objects; import java.util.stream.Stream; diff --git a/src/main/java/ru/investbook/repository/specs/SecurityEventCashFlowEntitySearchSpecification.java b/src/main/java/ru/investbook/repository/specs/SecurityEventCashFlowEntitySearchSpecification.java index ea1791ea..0521d7d3 100644 --- a/src/main/java/ru/investbook/repository/specs/SecurityEventCashFlowEntitySearchSpecification.java +++ b/src/main/java/ru/investbook/repository/specs/SecurityEventCashFlowEntitySearchSpecification.java @@ -18,6 +18,11 @@ package ru.investbook.repository.specs; +import jakarta.persistence.criteria.CriteriaBuilder; +import jakarta.persistence.criteria.CriteriaQuery; +import jakarta.persistence.criteria.Path; +import jakarta.persistence.criteria.Predicate; +import jakarta.persistence.criteria.Root; import lombok.RequiredArgsConstructor; import org.spacious_team.broker.pojo.CashFlowType; import org.springframework.data.jpa.domain.Specification; @@ -25,11 +30,6 @@ import ru.investbook.entity.SecurityEventCashFlowEntity; import ru.investbook.entity.SecurityEventCashFlowEntity_; -import javax.persistence.criteria.CriteriaBuilder; -import javax.persistence.criteria.CriteriaQuery; -import javax.persistence.criteria.Path; -import javax.persistence.criteria.Predicate; -import javax.persistence.criteria.Root; import java.time.LocalDate; import java.util.Objects; import java.util.stream.Stream; diff --git a/src/main/java/ru/investbook/repository/specs/SecurityQuoteSearchSpecification.java b/src/main/java/ru/investbook/repository/specs/SecurityQuoteSearchSpecification.java index d4360bfa..6a029455 100644 --- a/src/main/java/ru/investbook/repository/specs/SecurityQuoteSearchSpecification.java +++ b/src/main/java/ru/investbook/repository/specs/SecurityQuoteSearchSpecification.java @@ -18,15 +18,15 @@ package ru.investbook.repository.specs; +import jakarta.persistence.criteria.CriteriaBuilder; +import jakarta.persistence.criteria.CriteriaQuery; +import jakarta.persistence.criteria.Predicate; +import jakarta.persistence.criteria.Root; import lombok.RequiredArgsConstructor; import org.springframework.data.jpa.domain.Specification; import ru.investbook.entity.SecurityQuoteEntity; import ru.investbook.entity.SecurityQuoteEntity_; -import javax.persistence.criteria.CriteriaBuilder; -import javax.persistence.criteria.CriteriaQuery; -import javax.persistence.criteria.Predicate; -import javax.persistence.criteria.Root; import java.time.LocalDate; import java.util.Objects; import java.util.stream.Stream; diff --git a/src/main/java/ru/investbook/repository/specs/SpecificationHelper.java b/src/main/java/ru/investbook/repository/specs/SpecificationHelper.java index 38232718..ea17f231 100644 --- a/src/main/java/ru/investbook/repository/specs/SpecificationHelper.java +++ b/src/main/java/ru/investbook/repository/specs/SpecificationHelper.java @@ -18,6 +18,13 @@ package ru.investbook.repository.specs; +import jakarta.persistence.criteria.CriteriaBuilder; +import jakarta.persistence.criteria.CriteriaQuery; +import jakarta.persistence.criteria.Path; +import jakarta.persistence.criteria.Predicate; +import jakarta.persistence.criteria.Root; +import jakarta.persistence.criteria.Subquery; +import jakarta.persistence.metamodel.SingularAttribute; import lombok.NoArgsConstructor; import org.springframework.lang.Nullable; import ru.investbook.entity.PortfolioEntity; @@ -25,13 +32,6 @@ import ru.investbook.entity.SecurityEntity; import ru.investbook.entity.SecurityEntity_; -import javax.persistence.criteria.CriteriaBuilder; -import javax.persistence.criteria.CriteriaQuery; -import javax.persistence.criteria.Path; -import javax.persistence.criteria.Predicate; -import javax.persistence.criteria.Root; -import javax.persistence.criteria.Subquery; -import javax.persistence.metamodel.SingularAttribute; import java.time.Instant; import java.time.LocalDate; import java.time.LocalTime; diff --git a/src/main/java/ru/investbook/repository/specs/TransactionSearchSpecification.java b/src/main/java/ru/investbook/repository/specs/TransactionSearchSpecification.java index 7c5afa93..436fe3a7 100644 --- a/src/main/java/ru/investbook/repository/specs/TransactionSearchSpecification.java +++ b/src/main/java/ru/investbook/repository/specs/TransactionSearchSpecification.java @@ -18,15 +18,15 @@ package ru.investbook.repository.specs; +import jakarta.persistence.criteria.CriteriaBuilder; +import jakarta.persistence.criteria.CriteriaQuery; +import jakarta.persistence.criteria.Predicate; +import jakarta.persistence.criteria.Root; import lombok.RequiredArgsConstructor; import org.springframework.data.jpa.domain.Specification; import ru.investbook.entity.TransactionEntity; import ru.investbook.entity.TransactionEntity_; -import javax.persistence.criteria.CriteriaBuilder; -import javax.persistence.criteria.CriteriaQuery; -import javax.persistence.criteria.Predicate; -import javax.persistence.criteria.Root; import java.time.LocalDate; import java.util.Objects; import java.util.stream.Stream; diff --git a/src/main/java/ru/investbook/service/cbr/CbrForeignExchangeRateServiceXmlImpl.java b/src/main/java/ru/investbook/service/cbr/CbrForeignExchangeRateServiceXmlImpl.java index 12252d68..4cc49f19 100644 --- a/src/main/java/ru/investbook/service/cbr/CbrForeignExchangeRateServiceXmlImpl.java +++ b/src/main/java/ru/investbook/service/cbr/CbrForeignExchangeRateServiceXmlImpl.java @@ -18,16 +18,16 @@ package ru.investbook.service.cbr; -import com.sun.xml.bind.v2.ContextFactory; import generated.ValCurs; +import jakarta.xml.bind.JAXBException; import lombok.SneakyThrows; +import org.glassfish.jaxb.runtime.v2.ContextFactory; import org.spacious_team.broker.pojo.ForeignExchangeRate; import org.springframework.stereotype.Service; import org.springframework.web.util.UriComponentsBuilder; import ru.investbook.converter.ForeignExchangeRateConverter; import ru.investbook.repository.ForeignExchangeRateRepository; -import javax.xml.bind.JAXBException; import java.io.IOException; import java.io.InputStream; import java.math.BigDecimal; diff --git a/src/main/java/ru/investbook/web/HttpAttachResponseHelper.java b/src/main/java/ru/investbook/web/HttpAttachResponseHelper.java index f1a9e0c4..ede2a276 100644 --- a/src/main/java/ru/investbook/web/HttpAttachResponseHelper.java +++ b/src/main/java/ru/investbook/web/HttpAttachResponseHelper.java @@ -18,9 +18,9 @@ package ru.investbook.web; +import jakarta.servlet.http.HttpServletResponse; import org.springframework.http.ContentDisposition; -import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; import java.io.StringWriter; diff --git a/src/main/java/ru/investbook/web/InvestbookReportController.java b/src/main/java/ru/investbook/web/InvestbookReportController.java index 10f8504c..9efaae62 100644 --- a/src/main/java/ru/investbook/web/InvestbookReportController.java +++ b/src/main/java/ru/investbook/web/InvestbookReportController.java @@ -18,6 +18,7 @@ package ru.investbook.web; +import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Controller; @@ -33,7 +34,6 @@ import ru.investbook.repository.PortfolioRepository; import ru.investbook.web.model.ViewFilterModel; -import javax.servlet.http.HttpServletResponse; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.OutputStream; diff --git a/src/main/java/ru/investbook/web/forms/controller/EventCashFlowController.java b/src/main/java/ru/investbook/web/forms/controller/EventCashFlowController.java index 4e13eff8..ddc41b4d 100644 --- a/src/main/java/ru/investbook/web/forms/controller/EventCashFlowController.java +++ b/src/main/java/ru/investbook/web/forms/controller/EventCashFlowController.java @@ -18,6 +18,8 @@ package ru.investbook.web.forms.controller; +import jakarta.annotation.PostConstruct; +import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Page; import org.springframework.stereotype.Controller; @@ -36,8 +38,6 @@ import ru.investbook.web.forms.model.filter.EventCashFlowFormFilterModel; import ru.investbook.web.forms.service.EventCashFlowFormsService; -import javax.annotation.PostConstruct; -import javax.validation.Valid; import java.util.Collection; @Controller diff --git a/src/main/java/ru/investbook/web/forms/controller/ForeignExchangeRateController.java b/src/main/java/ru/investbook/web/forms/controller/ForeignExchangeRateController.java index 8176bcce..ae600a33 100644 --- a/src/main/java/ru/investbook/web/forms/controller/ForeignExchangeRateController.java +++ b/src/main/java/ru/investbook/web/forms/controller/ForeignExchangeRateController.java @@ -18,6 +18,7 @@ package ru.investbook.web.forms.controller; +import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Page; import org.springframework.format.annotation.DateTimeFormat; @@ -38,7 +39,6 @@ import ru.investbook.web.forms.model.filter.ForeignExchangeRateFormFilterModel; import ru.investbook.web.forms.service.ForeignExchangeRateFormsService; -import javax.validation.Valid; import java.time.LocalDate; import java.time.ZoneId; diff --git a/src/main/java/ru/investbook/web/forms/controller/PortfolioCashController.java b/src/main/java/ru/investbook/web/forms/controller/PortfolioCashController.java index f090d17d..5e9808c4 100644 --- a/src/main/java/ru/investbook/web/forms/controller/PortfolioCashController.java +++ b/src/main/java/ru/investbook/web/forms/controller/PortfolioCashController.java @@ -18,6 +18,8 @@ package ru.investbook.web.forms.controller; +import jakarta.annotation.PostConstruct; +import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Page; import org.springframework.stereotype.Controller; @@ -35,8 +37,6 @@ import ru.investbook.web.forms.model.filter.PortfolioCashFormFilterModel; import ru.investbook.web.forms.service.PortfolioCashFormsService; -import javax.annotation.PostConstruct; -import javax.validation.Valid; import java.util.Collection; import java.util.function.Supplier; diff --git a/src/main/java/ru/investbook/web/forms/controller/PortfolioController.java b/src/main/java/ru/investbook/web/forms/controller/PortfolioController.java index dc632e12..cc466d40 100644 --- a/src/main/java/ru/investbook/web/forms/controller/PortfolioController.java +++ b/src/main/java/ru/investbook/web/forms/controller/PortfolioController.java @@ -18,6 +18,7 @@ package ru.investbook.web.forms.controller; +import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; @@ -31,7 +32,6 @@ import ru.investbook.repository.SecurityRepository; import ru.investbook.web.forms.model.ArchivedPortfolioModel; -import javax.validation.Valid; import java.util.Set; import static ru.investbook.web.ControllerHelper.getInactivePortfolios; diff --git a/src/main/java/ru/investbook/web/forms/controller/PortfolioPropertyController.java b/src/main/java/ru/investbook/web/forms/controller/PortfolioPropertyController.java index a1282adc..d5754d06 100644 --- a/src/main/java/ru/investbook/web/forms/controller/PortfolioPropertyController.java +++ b/src/main/java/ru/investbook/web/forms/controller/PortfolioPropertyController.java @@ -18,6 +18,8 @@ package ru.investbook.web.forms.controller; +import jakarta.annotation.PostConstruct; +import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Page; import org.springframework.stereotype.Controller; @@ -36,8 +38,6 @@ import ru.investbook.web.forms.model.filter.PortfolioPropertyFormFilterModel; import ru.investbook.web.forms.service.PortfolioPropertyFormsService; -import javax.annotation.PostConstruct; -import javax.validation.Valid; import java.util.Collection; import java.util.function.Supplier; diff --git a/src/main/java/ru/investbook/web/forms/controller/SecurityDepositController.java b/src/main/java/ru/investbook/web/forms/controller/SecurityDepositController.java index cac6b792..ff1a33df 100644 --- a/src/main/java/ru/investbook/web/forms/controller/SecurityDepositController.java +++ b/src/main/java/ru/investbook/web/forms/controller/SecurityDepositController.java @@ -18,6 +18,7 @@ package ru.investbook.web.forms.controller; +import jakarta.validation.Valid; import org.springframework.data.domain.Page; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; @@ -37,8 +38,6 @@ import ru.investbook.web.forms.model.filter.TransactionFormFilterModel; import ru.investbook.web.forms.service.TransactionFormsService; -import javax.validation.Valid; - @Controller @RequestMapping("/security-deposit") public class SecurityDepositController extends TransactionController { diff --git a/src/main/java/ru/investbook/web/forms/controller/SecurityDescriptionController.java b/src/main/java/ru/investbook/web/forms/controller/SecurityDescriptionController.java index 875f8be1..2f136b13 100644 --- a/src/main/java/ru/investbook/web/forms/controller/SecurityDescriptionController.java +++ b/src/main/java/ru/investbook/web/forms/controller/SecurityDescriptionController.java @@ -18,6 +18,8 @@ package ru.investbook.web.forms.controller; +import jakarta.annotation.PostConstruct; +import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.data.domain.Page; @@ -37,8 +39,6 @@ import ru.investbook.web.forms.model.filter.SecurityDescriptionFormFilterModel; import ru.investbook.web.forms.service.SecurityDescriptionFormsService; -import javax.annotation.PostConstruct; -import javax.validation.Valid; import java.util.Collection; import java.util.Optional; diff --git a/src/main/java/ru/investbook/web/forms/controller/SecurityEventCashFlowController.java b/src/main/java/ru/investbook/web/forms/controller/SecurityEventCashFlowController.java index 7652000b..dab5ab52 100644 --- a/src/main/java/ru/investbook/web/forms/controller/SecurityEventCashFlowController.java +++ b/src/main/java/ru/investbook/web/forms/controller/SecurityEventCashFlowController.java @@ -18,6 +18,8 @@ package ru.investbook.web.forms.controller; +import jakarta.annotation.PostConstruct; +import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Page; import org.springframework.stereotype.Controller; @@ -37,8 +39,6 @@ import ru.investbook.web.forms.model.filter.SecurityEventCashFlowFormFilterModel; import ru.investbook.web.forms.service.SecurityEventCashFlowFormsService; -import javax.annotation.PostConstruct; -import javax.validation.Valid; import java.util.Collection; @Controller diff --git a/src/main/java/ru/investbook/web/forms/controller/SecurityQuoteController.java b/src/main/java/ru/investbook/web/forms/controller/SecurityQuoteController.java index ec714970..8d60f0d2 100644 --- a/src/main/java/ru/investbook/web/forms/controller/SecurityQuoteController.java +++ b/src/main/java/ru/investbook/web/forms/controller/SecurityQuoteController.java @@ -18,6 +18,8 @@ package ru.investbook.web.forms.controller; +import jakarta.annotation.PostConstruct; +import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.data.domain.Page; @@ -39,8 +41,6 @@ import ru.investbook.web.forms.model.filter.SecurityQuoteFormFilterModel; import ru.investbook.web.forms.service.SecurityQuoteFormsService; -import javax.annotation.PostConstruct; -import javax.validation.Valid; import java.time.Duration; import java.time.LocalDate; import java.time.ZoneId; diff --git a/src/main/java/ru/investbook/web/forms/controller/TransactionController.java b/src/main/java/ru/investbook/web/forms/controller/TransactionController.java index 37af5620..44281027 100644 --- a/src/main/java/ru/investbook/web/forms/controller/TransactionController.java +++ b/src/main/java/ru/investbook/web/forms/controller/TransactionController.java @@ -18,6 +18,8 @@ package ru.investbook.web.forms.controller; +import jakarta.annotation.PostConstruct; +import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Page; import org.springframework.stereotype.Controller; @@ -37,8 +39,6 @@ import ru.investbook.web.forms.model.filter.TransactionFormFilterModel; import ru.investbook.web.forms.service.TransactionFormsService; -import javax.annotation.PostConstruct; -import javax.validation.Valid; import java.util.Collection; @Controller diff --git a/src/main/java/ru/investbook/web/forms/model/ArchivedPortfolioModel.java b/src/main/java/ru/investbook/web/forms/model/ArchivedPortfolioModel.java index 67d936ff..b124d8cc 100644 --- a/src/main/java/ru/investbook/web/forms/model/ArchivedPortfolioModel.java +++ b/src/main/java/ru/investbook/web/forms/model/ArchivedPortfolioModel.java @@ -18,9 +18,9 @@ package ru.investbook.web.forms.model; +import jakarta.validation.constraints.NotNull; import lombok.Data; -import javax.validation.constraints.NotNull; import java.util.Set; @Data diff --git a/src/main/java/ru/investbook/web/forms/model/EventCashFlowModel.java b/src/main/java/ru/investbook/web/forms/model/EventCashFlowModel.java index ba5ab400..65c4bafc 100644 --- a/src/main/java/ru/investbook/web/forms/model/EventCashFlowModel.java +++ b/src/main/java/ru/investbook/web/forms/model/EventCashFlowModel.java @@ -18,14 +18,14 @@ package ru.investbook.web.forms.model; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Positive; import lombok.Data; import org.spacious_team.broker.pojo.CashFlowType; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.lang.Nullable; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Positive; import java.math.BigDecimal; import java.time.LocalDate; import java.time.LocalTime; diff --git a/src/main/java/ru/investbook/web/forms/model/ForeignExchangeRateModel.java b/src/main/java/ru/investbook/web/forms/model/ForeignExchangeRateModel.java index ec85f620..8f0d307f 100644 --- a/src/main/java/ru/investbook/web/forms/model/ForeignExchangeRateModel.java +++ b/src/main/java/ru/investbook/web/forms/model/ForeignExchangeRateModel.java @@ -18,12 +18,12 @@ package ru.investbook.web.forms.model; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Positive; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Positive; import java.math.BigDecimal; import java.time.LocalDate; diff --git a/src/main/java/ru/investbook/web/forms/model/PortfolioCashModel.java b/src/main/java/ru/investbook/web/forms/model/PortfolioCashModel.java index 12ad5352..672053a1 100644 --- a/src/main/java/ru/investbook/web/forms/model/PortfolioCashModel.java +++ b/src/main/java/ru/investbook/web/forms/model/PortfolioCashModel.java @@ -18,13 +18,13 @@ package ru.investbook.web.forms.model; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; import lombok.Data; import lombok.EqualsAndHashCode; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.lang.Nullable; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.time.LocalDate; import java.time.LocalTime; diff --git a/src/main/java/ru/investbook/web/forms/model/PortfolioPropertyModel.java b/src/main/java/ru/investbook/web/forms/model/PortfolioPropertyModel.java index 917f9df0..5bdea71d 100644 --- a/src/main/java/ru/investbook/web/forms/model/PortfolioPropertyModel.java +++ b/src/main/java/ru/investbook/web/forms/model/PortfolioPropertyModel.java @@ -18,12 +18,12 @@ package ru.investbook.web.forms.model; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.lang.Nullable; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; import java.time.LocalDate; import java.time.LocalTime; diff --git a/src/main/java/ru/investbook/web/forms/model/PortfolioPropertyTotalAssetsModel.java b/src/main/java/ru/investbook/web/forms/model/PortfolioPropertyTotalAssetsModel.java index aaab2845..32c12171 100644 --- a/src/main/java/ru/investbook/web/forms/model/PortfolioPropertyTotalAssetsModel.java +++ b/src/main/java/ru/investbook/web/forms/model/PortfolioPropertyTotalAssetsModel.java @@ -18,11 +18,11 @@ package ru.investbook.web.forms.model; +import jakarta.validation.constraints.NotNull; import lombok.Data; import lombok.EqualsAndHashCode; import org.spacious_team.broker.pojo.PortfolioPropertyType; -import javax.validation.constraints.NotNull; import java.math.BigDecimal; import static org.spacious_team.broker.pojo.PortfolioPropertyType.TOTAL_ASSETS_RUB; diff --git a/src/main/java/ru/investbook/web/forms/model/SecurityDescriptionModel.java b/src/main/java/ru/investbook/web/forms/model/SecurityDescriptionModel.java index 0cc4a7d6..fa7a8be9 100644 --- a/src/main/java/ru/investbook/web/forms/model/SecurityDescriptionModel.java +++ b/src/main/java/ru/investbook/web/forms/model/SecurityDescriptionModel.java @@ -18,12 +18,11 @@ package ru.investbook.web.forms.model; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; import lombok.Data; import org.springframework.lang.Nullable; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; - @Data public class SecurityDescriptionModel { diff --git a/src/main/java/ru/investbook/web/forms/model/SecurityEventCashFlowModel.java b/src/main/java/ru/investbook/web/forms/model/SecurityEventCashFlowModel.java index 2fb05454..205c3375 100644 --- a/src/main/java/ru/investbook/web/forms/model/SecurityEventCashFlowModel.java +++ b/src/main/java/ru/investbook/web/forms/model/SecurityEventCashFlowModel.java @@ -18,14 +18,14 @@ package ru.investbook.web.forms.model; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.PositiveOrZero; import lombok.Data; import org.spacious_team.broker.pojo.CashFlowType; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.lang.Nullable; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.PositiveOrZero; import java.math.BigDecimal; import java.time.LocalDate; import java.time.LocalTime; diff --git a/src/main/java/ru/investbook/web/forms/model/SecurityQuoteModel.java b/src/main/java/ru/investbook/web/forms/model/SecurityQuoteModel.java index 1223c4fd..9a3afcb6 100644 --- a/src/main/java/ru/investbook/web/forms/model/SecurityQuoteModel.java +++ b/src/main/java/ru/investbook/web/forms/model/SecurityQuoteModel.java @@ -18,14 +18,14 @@ package ru.investbook.web.forms.model; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Positive; +import jakarta.validation.constraints.PositiveOrZero; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.lang.Nullable; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Positive; -import javax.validation.constraints.PositiveOrZero; import java.math.BigDecimal; import java.time.Instant; import java.time.LocalDate; diff --git a/src/main/java/ru/investbook/web/forms/model/SplitModel.java b/src/main/java/ru/investbook/web/forms/model/SplitModel.java index ad215b60..c6b7fe3e 100644 --- a/src/main/java/ru/investbook/web/forms/model/SplitModel.java +++ b/src/main/java/ru/investbook/web/forms/model/SplitModel.java @@ -18,12 +18,12 @@ package ru.investbook.web.forms.model; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Positive; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Positive; import java.time.LocalDate; import java.time.LocalTime; diff --git a/src/main/java/ru/investbook/web/forms/model/TransactionModel.java b/src/main/java/ru/investbook/web/forms/model/TransactionModel.java index 6e2c7824..96d55783 100644 --- a/src/main/java/ru/investbook/web/forms/model/TransactionModel.java +++ b/src/main/java/ru/investbook/web/forms/model/TransactionModel.java @@ -18,16 +18,16 @@ package ru.investbook.web.forms.model; +import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Positive; +import jakarta.validation.constraints.PositiveOrZero; +import jakarta.xml.bind.DatatypeConverter; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.lang.Nullable; import org.springframework.util.StringUtils; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Positive; -import javax.validation.constraints.PositiveOrZero; -import javax.xml.bind.DatatypeConverter; import java.math.BigDecimal; import java.nio.charset.StandardCharsets; import java.security.MessageDigest; From d13a7b5d2936b59f71310156fda1fd364284951d Mon Sep 17 00:00:00 2001 From: Vitalii Ananev Date: Tue, 17 Jan 2023 00:19:37 +0300 Subject: [PATCH 02/51] refactor BrowserHomePageOpener and VndInvestbookPof --- src/main/java/ru/investbook/BrowserHomePageOpener.java | 4 ++-- .../ru/investbook/openformat/v1_1_0/VndInvestbookPof.java | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/main/java/ru/investbook/BrowserHomePageOpener.java b/src/main/java/ru/investbook/BrowserHomePageOpener.java index 0bde292d..6095779b 100644 --- a/src/main/java/ru/investbook/BrowserHomePageOpener.java +++ b/src/main/java/ru/investbook/BrowserHomePageOpener.java @@ -35,9 +35,9 @@ static void open(String url) { try { if (os.contains("win")) { // this doesn't support showing urls in the form of "page.html#nameLink" - rt.exec("rundll32 url.dll,FileProtocolHandler " + url); + rt.exec(new String[]{"rundll32", "url.dll,FileProtocolHandler", url}); } else if (os.contains("mac")) { - rt.exec("open " + url); + rt.exec(new String[]{"open", url}); } else if (os.contains("nix") || os.contains("nux")) { // Do the best guess on unix until we get a platform independent way // Build a list of browsers to try, in this order. diff --git a/src/main/java/ru/investbook/openformat/v1_1_0/VndInvestbookPof.java b/src/main/java/ru/investbook/openformat/v1_1_0/VndInvestbookPof.java index 41d767c7..10721de3 100644 --- a/src/main/java/ru/investbook/openformat/v1_1_0/VndInvestbookPof.java +++ b/src/main/java/ru/investbook/openformat/v1_1_0/VndInvestbookPof.java @@ -41,7 +41,6 @@ public class VndInvestbookPof { @NotNull - @Builder.Default @JsonProperty("version") String version; From 45036818c6d7434a72ddb070a11f621d08fe307b Mon Sep 17 00:00:00 2001 From: Vitalii Ananev Date: Fri, 20 Jan 2023 02:02:59 +0300 Subject: [PATCH 03/51] refactor application-dev.properties --- src/main/resources/application-dev.properties | 27 +++++++++---------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/src/main/resources/application-dev.properties b/src/main/resources/application-dev.properties index 20e3302a..225d9dd7 100644 --- a/src/main/resources/application-dev.properties +++ b/src/main/resources/application-dev.properties @@ -30,26 +30,25 @@ spring.datasource.password = logging.file.name = "" -#spring.jpa.show-sql = true -#spring.jpa.properties.hibernate.format_sql = true - -# Log hibernate execution time statistics -#spring.jpa.properties.hibernate.generate_statistics=true -# if DEBUG - stat shown for every query, if INFO - aggregate stat shown -#logging.level.org.hibernate.stat=DEBUG +investbook.report-backup = false +investbook.report-backup-path = report-backups -# Log hibernate (jpa) queries +# Log SQL queries #logging.level.org.hibernate.SQL=DEBUG +# Pretty print SQL queries +#spring.jpa.properties.hibernate.format_sql = true +# Log SQL queries parameters #logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE # Log JdbcTemplate queries #logging.level.org.springframework.jdbc.core.JdbcTemplate=DEBUG #logging.level.org.springframework.jdbc.core.StatementCreatorUtils=TRACE -# Hides exceptions generated by Jackson when serializing to String Entity object LAZY field (with is hibernate proxy -# with additional fields "hibernateLazyInitializer", "handler") -# Same works better done by annotation LAZY fields by: JsonIgnoreProperties({"hibernateLazyInitializer"}) -#spring.jackson.serialization.fail-on-empty-beans=false +# Log hibernate execution time statistics +#spring.jpa.properties.hibernate.generate_statistics=true +# if DEBUG - stat shown for every query, if INFO - aggregate stat shown +#logging.level.org.hibernate.stat=DEBUG -investbook.report-backup = false -investbook.report-backup-path = report-backups \ No newline at end of file +# Hides exceptions generated by Jackson when serializing Entity object with LAZY fields. +# Same works better done by annotation LAZY fields by: JsonIgnoreProperties({"hibernateLazyInitializer"}) +#spring.jackson.serialization.fail-on-empty-beans=false \ No newline at end of file From edc92ea943e37f3d0706affd2543d991f6a66be3 Mon Sep 17 00:00:00 2001 From: Vitalii Ananev Date: Fri, 20 Jan 2023 02:05:51 +0300 Subject: [PATCH 04/51] update to h2 version 2.1.214 --- pom.xml | 1 - src/main/resources/application-dev.properties | 4 ++-- src/main/resources/application-h2.properties | 2 +- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index cb6437c5..b5e3f88d 100644 --- a/pom.xml +++ b/pom.xml @@ -191,7 +191,6 @@ com.h2database h2 runtime - 1.4.200 com.mysql diff --git a/src/main/resources/application-dev.properties b/src/main/resources/application-dev.properties index 225d9dd7..42815111 100644 --- a/src/main/resources/application-dev.properties +++ b/src/main/resources/application-dev.properties @@ -23,7 +23,7 @@ #spring.datasource.password = 123456 # H2 -spring.datasource.url=jdbc:h2:file:~/investbook-test;mode=mysql +spring.datasource.url=jdbc:h2:file:~/investbook-test;mode=mysql;non_keywords=value spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.H2Dialect spring.datasource.username = sa spring.datasource.password = @@ -38,7 +38,7 @@ investbook.report-backup-path = report-backups # Pretty print SQL queries #spring.jpa.properties.hibernate.format_sql = true # Log SQL queries parameters -#logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE +#logging.level.org.hibernate.orm.jdbc.bind=TRACE # Log JdbcTemplate queries #logging.level.org.springframework.jdbc.core.JdbcTemplate=DEBUG diff --git a/src/main/resources/application-h2.properties b/src/main/resources/application-h2.properties index 6f8a4eea..afbe12b7 100644 --- a/src/main/resources/application-h2.properties +++ b/src/main/resources/application-h2.properties @@ -16,7 +16,7 @@ # along with this program. If not, see . # -spring.datasource.url=jdbc:h2:file:~/investbook/investbook;mode=mysql +spring.datasource.url=jdbc:h2:file:~/investbook/investbook;mode=mysql;non_keywords=value spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.H2Dialect spring.datasource.username = sa spring.datasource.password = From 4b9777829dae3690c15824b765e1f9f0088ec873 Mon Sep 17 00:00:00 2001 From: Vitalii Ananev Date: Sat, 28 Jan 2023 18:12:20 +0300 Subject: [PATCH 05/51] refactor thymeleaf templates by fragment expressions --- .../templates/charts/sectors-pie-chart.html | 2 +- .../templates/charts/securities-pie-chart.html | 2 +- src/main/resources/templates/events/table.html | 10 +++++----- .../templates/foreign-exchange-rates/table.html | 10 +++++----- .../resources/templates/portfolio-cash/table.html | 12 ++++++------ .../templates/portfolio-properties/table.html | 12 ++++++------ .../resources/templates/security-deposit/table.html | 12 ++++++------ .../templates/security-descriptions/table.html | 10 +++++----- .../resources/templates/security-events/table.html | 13 ++++++------- .../resources/templates/security-quotes/table.html | 10 +++++----- .../resources/templates/transactions/table.html | 12 ++++++------ 11 files changed, 52 insertions(+), 53 deletions(-) diff --git a/src/main/resources/templates/charts/sectors-pie-chart.html b/src/main/resources/templates/charts/sectors-pie-chart.html index ed11a684..63c4085e 100644 --- a/src/main/resources/templates/charts/sectors-pie-chart.html +++ b/src/main/resources/templates/charts/sectors-pie-chart.html @@ -31,7 +31,7 @@

Диаграммы

На главную
-

+