Add lead workflows, PDF signing, AR projects and photo gallery integration
This commit is contained in:
36
GasTankAR/Domain/Leads/Lead.swift
Normal file
36
GasTankAR/Domain/Leads/Lead.swift
Normal file
@ -0,0 +1,36 @@
|
||||
import Foundation
|
||||
|
||||
struct Lead: Identifiable, Equatable, Sendable {
|
||||
let id: String
|
||||
let companyName: String?
|
||||
let contact: LeadContact?
|
||||
let address: LeadAddress
|
||||
let phoneNumber: String?
|
||||
let createdAt: Date
|
||||
let offerCount: Int
|
||||
let unsignedContractCount: Int
|
||||
var isBookmarked: Bool
|
||||
}
|
||||
|
||||
struct LeadContact: Equatable, Sendable {
|
||||
let title: String?
|
||||
let firstName: String
|
||||
let lastName: String
|
||||
}
|
||||
|
||||
struct LeadAddress: Equatable, Sendable {
|
||||
let street: String?
|
||||
let postalCode: String
|
||||
let city: String
|
||||
}
|
||||
|
||||
enum LeadError: Error, Equatable, Sendable {
|
||||
case offline
|
||||
case timeout
|
||||
case serviceUnavailable
|
||||
case unauthorized
|
||||
case forbidden
|
||||
case notFound(leadID: String)
|
||||
case invalidResponse
|
||||
case unexpected
|
||||
}
|
||||
Reference in New Issue
Block a user