add all api to sort by month
This commit is contained in:
83
Sources/App/Models/AllStats.swift
Normal file
83
Sources/App/Models/AllStats.swift
Normal file
@@ -0,0 +1,83 @@
|
||||
//
|
||||
// Stats.swift
|
||||
// App
|
||||
//
|
||||
// Created by Michael Simard on 5/29/20.
|
||||
//
|
||||
|
||||
import Foundation
|
||||
|
||||
|
||||
import Fluent
|
||||
import Vapor
|
||||
|
||||
final class AllStats: Content {
|
||||
var overall:Stats
|
||||
var byMonth: [MonthStats]
|
||||
|
||||
init( overall:Stats, byMonth:[MonthStats]) {
|
||||
self.overall = overall
|
||||
self.byMonth = byMonth
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
final class MonthStats: Content {
|
||||
var stats:Stats
|
||||
var month:String
|
||||
var year: String
|
||||
|
||||
init( month:Int, year:Int, stats:Stats) {
|
||||
self.month = Utilities.monthToString(month: month)
|
||||
self.year = String(year)
|
||||
self.stats = stats
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
final class Stats: Content {
|
||||
var winLossRatio:String
|
||||
var totalWins:Int
|
||||
var totalLosses:Int
|
||||
|
||||
init( winLoss:String, totalWins:Int, totalLosses:Int) {
|
||||
self.winLossRatio = winLoss
|
||||
self.totalWins = totalWins
|
||||
self.totalLosses = totalLosses
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
class Utilities {
|
||||
class func monthToString(month:Int) -> String {
|
||||
switch month {
|
||||
case 1 :
|
||||
return "January"
|
||||
case 2:
|
||||
return "February"
|
||||
case 3:
|
||||
return "March"
|
||||
case 4:
|
||||
return "April"
|
||||
case 5:
|
||||
return "May"
|
||||
case 6:
|
||||
return "June"
|
||||
case 7:
|
||||
return "July"
|
||||
case 8:
|
||||
return "August"
|
||||
case 9:
|
||||
return "September"
|
||||
case 10:
|
||||
return "October"
|
||||
case 11:
|
||||
return "November"
|
||||
case 12:
|
||||
return "December"
|
||||
default:
|
||||
return "error"
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user