64 lines
1.9 KiB
Swift
64 lines
1.9 KiB
Swift
//
|
||
// VehicleDetailView.swift
|
||
// AutoCat2SUI
|
||
//
|
||
// Created by Selim Mustafaev on 11.09.2022.
|
||
//
|
||
|
||
import SwiftUI
|
||
import AutoCatCore
|
||
|
||
struct ReportTextItem: View {
|
||
|
||
let name: String
|
||
let value: String?
|
||
|
||
var body: some View {
|
||
HStack {
|
||
Text(name)
|
||
Spacer()
|
||
Text(value ?? "")
|
||
.foregroundColor(.secondary)
|
||
}
|
||
}
|
||
|
||
}
|
||
|
||
struct VehicleDetailView: View {
|
||
|
||
let vehicle: CDVehicle
|
||
|
||
var body: some View {
|
||
Form {
|
||
Section(header: Text("General")) {
|
||
ReportTextItem(name: "Year", value: String(vehicle.year))
|
||
ReportTextItem(name: "Color", value: vehicle.color)
|
||
ReportTextItem(name: "Category", value: vehicle.category)
|
||
ReportTextItem(name: "Steering wheel position", value: vehicle.isRightWheel ? "Right": "Left")
|
||
ReportTextItem(name: "Japanese", value: vehicle.isJapanese ? "Yes" : "No")
|
||
}
|
||
Section(header: Text("Identifiers")) {
|
||
ReportTextItem(name: "Plate number", value: vehicle.number)
|
||
ReportTextItem(name: "VIN", value: vehicle.vin1)
|
||
ReportTextItem(name: "STS", value: vehicle.sts)
|
||
ReportTextItem(name: "PTS", value: vehicle.pts)
|
||
}
|
||
}
|
||
.formStyle(.grouped)
|
||
}
|
||
}
|
||
|
||
struct VehicleDetailView_Previews: PreviewProvider {
|
||
|
||
static var previews: some View {
|
||
|
||
let test1 = Vehicle(number: "Н282СН61",
|
||
brandName: "KIA ОПТИМА",
|
||
addedDate: Date().timeIntervalSince1970,
|
||
updatedDate: Date().timeIntervalSince1970)
|
||
|
||
return VehicleDetailView(vehicle: CDVehicle(vehicle: test1,
|
||
context: NSManagedObjectContext(concurrencyType: .mainQueueConcurrencyType)))
|
||
}
|
||
}
|