feat: Updates api controllers to use database client.

This commit is contained in:
2025-01-14 13:10:24 -05:00
parent ccf80f05a7
commit 31c6b51371
17 changed files with 313 additions and 303 deletions

View File

@@ -1,6 +1,7 @@
import Dependencies
import DependenciesMacros
import SharedModels
import Vapor
public extension DatabaseClient {
@@ -16,7 +17,7 @@ public extension DatabaseClient {
try await fetchAll(.all)
}
public enum FetchRequest {
public enum FetchRequest: String, Content {
case active
case all
case inactive
@@ -24,6 +25,10 @@ public extension DatabaseClient {
}
}
extension Employee: Content {}
extension Employee.Create: Content {}
extension Employee.Update: Content {}
extension DatabaseClient.Employees: TestDependencyKey {
public static let testValue = Self()
}

View File

@@ -2,6 +2,7 @@ import Dependencies
import DependenciesMacros
import Fluent
import SharedModels
import Vapor
public extension DatabaseClient {
@DependencyClient
@@ -15,6 +16,9 @@ public extension DatabaseClient {
}
}
extension PurchaseOrder: Content {}
extension PurchaseOrder.Create: Content {}
extension DatabaseClient.PurchaseOrders: TestDependencyKey {
public static let testValue: DatabaseClient.PurchaseOrders = Self()
}

View File

@@ -15,14 +15,13 @@ public extension DatabaseClient {
public var get: @Sendable (User.ID) async throws -> User?
public var login: @Sendable (User.Login) async throws -> User.Token
public var logout: @Sendable (User.Token.ID) async throws -> Void
public var token: @Sendable (User.ID) async throws -> User.Token
}
}
public extension DatabaseClient.Users {
enum AuthRequest {
case basic(BasicAuthorization)
}
}
extension User: Content {}
extension User.Create: Content {}
extension User.Token: Content {}
extension DatabaseClient.Users: TestDependencyKey {
public static let testValue: DatabaseClient.Users = Self()

View File

@@ -1,6 +1,7 @@
import Dependencies
import DependenciesMacros
import SharedModels
import Vapor
public extension DatabaseClient {
@DependencyClient
@@ -23,6 +24,11 @@ public extension DatabaseClient {
}
}
extension VendorBranch: Content {}
extension VendorBranch.Create: Content {}
extension VendorBranch.Update: Content {}
extension DatabaseClient.VendorBranches.FetchRequest: Content {}
extension DatabaseClient.VendorBranches: TestDependencyKey {
public static let testValue: DatabaseClient.VendorBranches = Self()
}

View File

@@ -1,6 +1,7 @@
import Dependencies
import DependenciesMacros
import SharedModels
import Vapor
public extension DatabaseClient {
@DependencyClient
@@ -31,6 +32,12 @@ public extension DatabaseClient {
}
}
extension Vendor: Content {}
extension Vendor.Create: Content {}
extension Vendor.Update: Content {}
extension DatabaseClient.Vendors.FetchRequest: Content {}
extension DatabaseClient.Vendors.GetRequest: Content {}
extension DatabaseClient.Vendors: TestDependencyKey {
public static let testValue: DatabaseClient.Vendors = Self()
}