diff --git a/src/main/java/group/goforward/battlbuilder/catalog/classification/package-info.java b/src/main/java/group/goforward/battlbuilder/catalog/classification/package-info.java new file mode 100644 index 0000000..658d49d --- /dev/null +++ b/src/main/java/group/goforward/battlbuilder/catalog/classification/package-info.java @@ -0,0 +1,12 @@ + +/** + * Catalog classification package for the BattlBuilder application. + *
+ * This package contains classes responsible for platform resolution, + * rule compilation, and product context classification. + * + * @author Forward Group, LLC + * @version 1.0 + * @since 2025-12-10 + */ +package group.goforward.battlbuilder.catalog.classification; diff --git a/src/main/java/group/goforward/battlbuilder/configuration/package-info.java b/src/main/java/group/goforward/battlbuilder/configuration/package-info.java index 9dd2f4f..a640798 100644 --- a/src/main/java/group/goforward/battlbuilder/configuration/package-info.java +++ b/src/main/java/group/goforward/battlbuilder/configuration/package-info.java @@ -1,13 +1,11 @@ -/** - * Provides the classes necessary for the Spring Configurations for the Battl.Builder application. - * This package includes Configurations for Spring-Boot application - * - * - *
The main entry point for managing the inventory is the - * {@link group.goforward.battlbuilder.BattlBuilderApplication} class.
- * - * @since 1.0 - * @author Don Strawsburg - * @version 1.1 - */ -package group.goforward.battlbuilder.configuration; \ No newline at end of file +/** + * Configuration package for the BattlBuilder application. + *+ * Contains Spring configuration classes for security, CORS, JPA, + * caching, and password encoding. + * + * @author Forward Group, LLC + * @version 1.0 + * @since 2025-12-10 + */ +package group.goforward.battlbuilder.configuration; diff --git a/src/main/java/group/goforward/battlbuilder/controllers/admin/package-info.java b/src/main/java/group/goforward/battlbuilder/controllers/admin/package-info.java new file mode 100644 index 0000000..32ff6f6 --- /dev/null +++ b/src/main/java/group/goforward/battlbuilder/controllers/admin/package-info.java @@ -0,0 +1,11 @@ +/** + * Admin controllers package for the BattlBuilder application. + *
+ * Contains REST controllers for administrative operations including
+ * category management, platform configuration, and merchant administration.
+ *
+ * @author Forward Group, LLC
+ * @version 1.0
+ * @since 2025-12-10
+ */
+package group.goforward.battlbuilder.controllers.admin;
diff --git a/src/main/java/group/goforward/battlbuilder/controllers/api/EmailController.java b/src/main/java/group/goforward/battlbuilder/controllers/api/EmailController.java
new file mode 100644
index 0000000..e5c9eb1
--- /dev/null
+++ b/src/main/java/group/goforward/battlbuilder/controllers/api/EmailController.java
@@ -0,0 +1,128 @@
+package group.goforward.battlbuilder.controllers.api;
+
+import group.goforward.battlbuilder.utils.ApiResponse;
+import group.goforward.battlbuilder.dto.EmailRequestDto;
+import group.goforward.battlbuilder.model.EmailRequest;
+import group.goforward.battlbuilder.repos.EmailRequestRepository;
+import group.goforward.battlbuilder.services.utils.EmailService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+@RestController
+@RequestMapping("/api/email")
+public class EmailController {
+
+ private static final String EMAIL_STATUS_SENT = "SENT";
+
+ private final EmailService emailService;
+ private final EmailRequestRepository emailRequestRepository;
+
+ @Autowired
+ public EmailController(EmailService emailService, EmailRequestRepository emailRequestRepository) {
+ this.emailService = emailService;
+ this.emailRequestRepository = emailRequestRepository;
+ }
+
+ @GetMapping
+ public ResponseEntity The main entry point for managing the inventory is the
- * {@link group.goforward.battlbuilder.BattlBuilderApplication} class.
+ * Contains REST API controllers for public-facing endpoints including
+ * brand management, state information, and user operations.
+ *
+ * @author Forward Group, LLC
+ * @version 1.0
+ * @since 2025-12-10
+ */
+package group.goforward.battlbuilder.controllers.api;
diff --git a/src/main/java/group/goforward/battlbuilder/controllers/package-info.java b/src/main/java/group/goforward/battlbuilder/controllers/package-info.java
index 5901f12..7f3fa4e 100644
--- a/src/main/java/group/goforward/battlbuilder/controllers/package-info.java
+++ b/src/main/java/group/goforward/battlbuilder/controllers/package-info.java
@@ -1,13 +1,11 @@
/**
- * Provides the classes necessary for the Spring Controllers for the Battl.Builder application.
- * This package includes Controllers for Spring-Boot application
+ * Utility controllers package for the BattlBuilder application.
+ *
+ * Contains utility REST controllers for email handling and
+ * health check operations.
*
- *
- * The main entry point for managing the inventory is the
- * {@link group.goforward.battlbuilder.BattlBuilderApplication} class. The main entry point for managing the inventory is the
- * {@link group.goforward.battlbuilder.BattlBuilderApplication} class.
+ * Contains utility REST controllers for email handling and
+ * health check operations.
+ *
+ * @author Forward Group, LLC
+ * @version 1.0
+ * @since 2025-12-10
+ */
+package group.goforward.battlbuilder.controllers.utils;
diff --git a/src/main/java/group/goforward/battlbuilder/dto/package_info.java b/src/main/java/group/goforward/battlbuilder/dto/package_info.java
new file mode 100644
index 0000000..ee9a48c
--- /dev/null
+++ b/src/main/java/group/goforward/battlbuilder/dto/package_info.java
@@ -0,0 +1,12 @@
+
+/**
+ * Web admin DTOs package for the BattlBuilder application.
+ *
+ * Contains Data Transfer Objects specific to administrative
+ * operations including user management, mappings, and platform configuration.
+ *
+ * @author Forward Group, LLC
+ * @version 1.0
+ * @since 2025-12-10
+ */
+package group.goforward.battlbuilder.dto;
diff --git a/src/main/java/group/goforward/battlbuilder/model/EmailRequest.java b/src/main/java/group/goforward/battlbuilder/model/EmailRequest.java
index 8e785a7..8902618 100644
--- a/src/main/java/group/goforward/battlbuilder/model/EmailRequest.java
+++ b/src/main/java/group/goforward/battlbuilder/model/EmailRequest.java
@@ -5,6 +5,21 @@ import java.time.LocalDateTime;
@Entity
@Table(name = "email_requests")
+@NamedQuery(
+ name = "EmailRequest.findSent",
+ query = "SELECT e FROM EmailRequest e WHERE e.status = 'SENT'"
+)
+
+@NamedQuery(
+ name = "EmailRequest.findFailed",
+ query = "SELECT e FROM EmailRequest e WHERE e.status = 'FAILED'"
+)
+
+@NamedQuery(
+ name = "EmailRequest.findPending",
+ query = "SELECT e FROM EmailRequest e WHERE e.status = 'PENDING'"
+)
+
public class EmailRequest {
@Id
diff --git a/src/main/java/group/goforward/battlbuilder/model/package-info.java b/src/main/java/group/goforward/battlbuilder/model/package-info.java
index cd9db33..a23d8e7 100644
--- a/src/main/java/group/goforward/battlbuilder/model/package-info.java
+++ b/src/main/java/group/goforward/battlbuilder/model/package-info.java
@@ -1 +1,11 @@
-package group.goforward.battlbuilder.model;
\ No newline at end of file
+/**
+ * Model package for the BattlBuilder application.
+ *
+ * Contains JPA entity classes representing the domain model including
+ * products, merchants, categories, platforms, and user accounts.
+ *
+ * @author Forward Group, LLC
+ * @version 1.0
+ * @since 2025-12-10
+ */
+package group.goforward.battlbuilder.model;
diff --git a/src/main/java/group/goforward/battlbuilder/package-info.java b/src/main/java/group/goforward/battlbuilder/package-info.java
new file mode 100644
index 0000000..a0c3d14
--- /dev/null
+++ b/src/main/java/group/goforward/battlbuilder/package-info.java
@@ -0,0 +1,11 @@
+/**
+ * Root package for the BattlBuilder application.
+ *
+ * BattlBuilder is a comprehensive platform for firearm parts catalog management,
+ * product classification, and merchant integration.
+ *
+ * @author Forward Group, LLC
+ * @version 1.0
+ * @since 2025-12-10
+ */
+package group.goforward.battlbuilder;
diff --git a/src/main/java/group/goforward/battlbuilder/repos/EmailRequestRepository.java b/src/main/java/group/goforward/battlbuilder/repos/EmailRequestRepository.java
index 4ec6b32..fe9a7e2 100644
--- a/src/main/java/group/goforward/battlbuilder/repos/EmailRequestRepository.java
+++ b/src/main/java/group/goforward/battlbuilder/repos/EmailRequestRepository.java
@@ -9,4 +9,10 @@ import java.util.List;
@Repository
public interface EmailRequestRepository extends JpaRepository The main entry point for managing the inventory is the
- * {@link group.goforward.battlbuilder.BattlBuilderApplication} class.
+ * Contains Spring Data JPA repository interfaces for database
+ * access and persistence operations.
+ *
+ * @author Forward Group, LLC
+ * @version 1.0
+ * @since 2025-12-10
+ */
+package group.goforward.battlbuilder.repos;
diff --git a/src/main/java/group/goforward/battlbuilder/services/admin/admin_services_package_info.java b/src/main/java/group/goforward/battlbuilder/services/admin/admin_services_package_info.java
new file mode 100644
index 0000000..69c9271
--- /dev/null
+++ b/src/main/java/group/goforward/battlbuilder/services/admin/admin_services_package_info.java
@@ -0,0 +1,11 @@
+/**
+ * Admin services package for the BattlBuilder application.
+ *
+ * Contains service classes for administrative business logic
+ * and operations.
+ *
+ * @author Forward Group, LLC
+ * @version 1.0
+ * @since 2025-12-10
+ */
+package group.goforward.battlbuilder.services.admin;
diff --git a/src/main/java/group/goforward/battlbuilder/services/impl/BrandServiceImpl.java b/src/main/java/group/goforward/battlbuilder/services/impl/BrandServiceImpl.java
index 5dd357d..a67fe8a 100644
--- a/src/main/java/group/goforward/battlbuilder/services/impl/BrandServiceImpl.java
+++ b/src/main/java/group/goforward/battlbuilder/services/impl/BrandServiceImpl.java
@@ -28,7 +28,7 @@ public class BrandServiceImpl implements BrandService {
@Override
public Brand save(Brand item) {
- return null;
+ return repo.save(item);
}
@Override
diff --git a/src/main/java/group/goforward/battlbuilder/services/impl/package-info.java b/src/main/java/group/goforward/battlbuilder/services/impl/package-info.java
index 8ed30f0..9447347 100644
--- a/src/main/java/group/goforward/battlbuilder/services/impl/package-info.java
+++ b/src/main/java/group/goforward/battlbuilder/services/impl/package-info.java
@@ -1,13 +1,10 @@
-/**
- * Provides the classes necessary for the Spring Services implementations for the Battl.Builder application.
- * This package includes Services implementations for Spring-Boot application
- *
- *
- * The main entry point for managing the inventory is the
- * {@link group.goforward.battlbuilder.BattlBuilderApplication} class.
+ * Contains implementation classes for service interfaces.
+ *
+ * @author Forward Group, LLC
+ * @version 1.0
+ * @since 2025-12-10
+ */
package group.goforward.battlbuilder.services.impl;
\ No newline at end of file
diff --git a/src/main/java/group/goforward/battlbuilder/services/package-info.java b/src/main/java/group/goforward/battlbuilder/services/package-info.java
index d14c180..b10910c 100644
--- a/src/main/java/group/goforward/battlbuilder/services/package-info.java
+++ b/src/main/java/group/goforward/battlbuilder/services/package-info.java
@@ -1 +1,12 @@
-package group.goforward.battlbuilder.services;
\ No newline at end of file
+
+/**
+ * Services package for the BattlBuilder application.
+ *
+ * Contains business logic service classes for product management,
+ * category classification, mapping recommendations, and merchant operations.
+ *
+ * @author Forward Group, LLC
+ * @version 1.0
+ * @since 2025-12-10
+ */
+package group.goforward.battlbuilder.services;
diff --git a/src/main/java/group/goforward/battlbuilder/services/utils/EmailService.java b/src/main/java/group/goforward/battlbuilder/services/utils/EmailService.java
index 056acdb..f7a3075 100644
--- a/src/main/java/group/goforward/battlbuilder/services/utils/EmailService.java
+++ b/src/main/java/group/goforward/battlbuilder/services/utils/EmailService.java
@@ -4,4 +4,6 @@ import group.goforward.battlbuilder.model.EmailRequest;
public interface EmailService {
EmailRequest sendEmail(String recipient, String subject, String body);
+ void deleteById(Integer id);
}
+
diff --git a/src/main/java/group/goforward/battlbuilder/services/utils/impl/EmailServiceImpl.java b/src/main/java/group/goforward/battlbuilder/services/utils/impl/EmailServiceImpl.java
index 72388bc..e5221bd 100644
--- a/src/main/java/group/goforward/battlbuilder/services/utils/impl/EmailServiceImpl.java
+++ b/src/main/java/group/goforward/battlbuilder/services/utils/impl/EmailServiceImpl.java
@@ -57,4 +57,9 @@ public class EmailServiceImpl implements EmailService {
return emailRequestRepository.save(emailRequest);
}
+
+ @Override
+ public void deleteById(Integer id) {
+ deleteById(id);
+ }
}
diff --git a/src/main/java/group/goforward/battlbuilder/services/utils/impl/package-info.java b/src/main/java/group/goforward/battlbuilder/services/utils/impl/package-info.java
new file mode 100644
index 0000000..751196b
--- /dev/null
+++ b/src/main/java/group/goforward/battlbuilder/services/utils/impl/package-info.java
@@ -0,0 +1,10 @@
+/**
+ * Utility service implementations package for the BattlBuilder application.
+ *
+ * Contains implementation classes for utility service interfaces.
+ *
+ * @author Forward Group, LLC
+ * @version 1.0
+ * @since 2025-12-10
+ */
+package group.goforward.battlbuilder.services.utils.impl;
diff --git a/src/main/java/group/goforward/battlbuilder/ApiResponse.java b/src/main/java/group/goforward/battlbuilder/utils/ApiResponse.java
similarity index 93%
rename from src/main/java/group/goforward/battlbuilder/ApiResponse.java
rename to src/main/java/group/goforward/battlbuilder/utils/ApiResponse.java
index 4efb1bf..a97bcb6 100644
--- a/src/main/java/group/goforward/battlbuilder/ApiResponse.java
+++ b/src/main/java/group/goforward/battlbuilder/utils/ApiResponse.java
@@ -1,4 +1,4 @@
-package group.goforward.battlbuilder;
+package group.goforward.battlbuilder.utils;
import java.time.LocalDateTime;
diff --git a/src/main/java/group/goforward/battlbuilder/utils/package-info.java b/src/main/java/group/goforward/battlbuilder/utils/package-info.java
new file mode 100644
index 0000000..07c58d3
--- /dev/null
+++ b/src/main/java/group/goforward/battlbuilder/utils/package-info.java
@@ -0,0 +1,11 @@
+/**
+ * Utilities package for the BattlBuilder application.
+ *
+ * Contains utility classes and helper functions used throughout
+ * the application.
+ *
+ * @author Forward Group, LLC
+ * @version 1.0
+ * @since 2025-12-10
+ */
+package group.goforward.battlbuilder.utils;
diff --git a/src/main/java/group/goforward/battlbuilder/web/admin/package-info.java b/src/main/java/group/goforward/battlbuilder/web/admin/package-info.java
new file mode 100644
index 0000000..babce08
--- /dev/null
+++ b/src/main/java/group/goforward/battlbuilder/web/admin/package-info.java
@@ -0,0 +1,12 @@
+
+/**
+ * Web admin package for the BattlBuilder application.
+ *
+ * Contains web controllers for administrative interface operations
+ * including user management, merchant administration, and import status.
+ *
+ * @author Forward Group, LLC
+ * @version 1.0
+ * @since 2025-12-10
+ */
+package group.goforward.battlbuilder.web.admin;
diff --git a/src/main/java/group/goforward/battlbuilder/web/dto/auth/package_info.java b/src/main/java/group/goforward/battlbuilder/web/dto/auth/package_info.java
new file mode 100644
index 0000000..1d802b6
--- /dev/null
+++ b/src/main/java/group/goforward/battlbuilder/web/dto/auth/package_info.java
@@ -0,0 +1,12 @@
+
+/**
+ * Web authentication DTOs package for the BattlBuilder application.
+ *
+ * Contains Data Transfer Objects for authentication operations
+ * including login requests, registration, and authentication responses.
+ *
+ * @author Forward Group, LLC
+ * @version 1.0
+ * @since 2025-12-10
+ */
+package group.goforward.battlbuilder.web.dto.auth;
diff --git a/src/main/java/group/goforward/battlbuilder/web/package-info.java b/src/main/java/group/goforward/battlbuilder/web/package-info.java
new file mode 100644
index 0000000..f3614bf
--- /dev/null
+++ b/src/main/java/group/goforward/battlbuilder/web/package-info.java
@@ -0,0 +1,11 @@
+/**
+ * Web package for the BattlBuilder application.
+ *
+ * Contains web-related classes including controllers and DTOs
+ * for the web layer.
+ *
+ * @author Forward Group, LLC
+ * @version 1.0
+ * @since 2025-12-10
+ */
+package group.goforward.battlbuilder.web;