118 lines
3.3 KiB
Swift
118 lines
3.3 KiB
Swift
//
|
|
// Status.swift
|
|
// Befund
|
|
//
|
|
// Created by Irakli Abetschkhrischwili on 27.05.22.
|
|
// Copyright © 2022 MVZ Dr. Stein und Kollegen. All rights reserved.
|
|
|
|
import Foundation
|
|
|
|
extension Core.Models.Database
|
|
{
|
|
/**
|
|
* Database status of results object
|
|
*/
|
|
public struct Status: Decodable
|
|
{
|
|
public var pgs: String? = nil
|
|
public var pat_hash: String? = nil
|
|
public var available: Bool = false
|
|
public var available_ts: String? = nil
|
|
public var picked_up: Bool = false
|
|
public var picked_up_ts: String? = nil
|
|
public var notified: Bool = false
|
|
public var notified_ts: String? = nil
|
|
public var results_status: String? = Core.Models.Database.Results.ResultsStatus.NONE.rawValue
|
|
public var created: String? = nil
|
|
|
|
/**
|
|
* Returns formated available date
|
|
*/
|
|
public func GetAvailableTS() -> Date?
|
|
{
|
|
var result: Date? = nil
|
|
|
|
let dateFormatter = DateFormatter()
|
|
|
|
if(self.available_ts != nil)
|
|
{
|
|
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
|
|
result = dateFormatter.date(from: available_ts!)
|
|
}
|
|
|
|
return result
|
|
}
|
|
|
|
/**
|
|
* Returns formated picked up date
|
|
*/
|
|
public func GetPickedUpTS() -> Date?
|
|
{
|
|
var result: Date? = nil
|
|
|
|
let dateFormatter = DateFormatter()
|
|
|
|
if(self.picked_up_ts != nil)
|
|
{
|
|
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
|
|
result = dateFormatter.date(from: self.picked_up_ts!)
|
|
}
|
|
|
|
return result
|
|
}
|
|
|
|
/**
|
|
* Returns formated notified date
|
|
*/
|
|
public func GetNotifiedTS() -> Date?
|
|
{
|
|
var result: Date? = nil
|
|
|
|
let dateFormatter = DateFormatter()
|
|
|
|
if(self.notified_ts != nil)
|
|
{
|
|
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
|
|
result = dateFormatter.date(from: self.notified_ts!)
|
|
}
|
|
|
|
return result
|
|
}
|
|
|
|
/**
|
|
* Returns formated created date
|
|
*/
|
|
public func GetCreated() -> Date?
|
|
{
|
|
var result: Date? = nil
|
|
|
|
let dateFormatter = DateFormatter()
|
|
|
|
if(self.created != nil)
|
|
{
|
|
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
|
|
result = dateFormatter.date(from: self.created!)
|
|
}
|
|
|
|
return result
|
|
}
|
|
|
|
/**
|
|
* Converts status object to the results
|
|
*/
|
|
public func ToResults() -> Core.Models.Database.Results
|
|
{
|
|
var result = Core.Models.Database.Results()
|
|
result.pgs = self.pgs
|
|
result.pat_hash = self.pat_hash
|
|
result.available = self.available
|
|
result.available_ts = self.available_ts
|
|
result.picked_up = self.picked_up
|
|
result.picked_up_ts = self.picked_up_ts
|
|
result.status = self.results_status
|
|
result.created = self.created
|
|
return result
|
|
}
|
|
}
|
|
}
|