Ok, so I'm good with php and vba, but now I'm trying to learn iOS apps. Im attempting to write one that calculates the shift schedule for a rotating shift. Ive got the function down... or so i think. Im trying to test it, but how do i call it?
shiftCalc.crew("days","2015-09-13");
here is my code..
class shiftCalc
{
var startDate: String = "2002-11-12";
var cycleOrder: String = "45321";
var tweekLength: Int = 4;
var tweekStart: Int = 27;
var midsStart: Int = 9;
var swingsStart: Int = 0;
var daysStart: Int = 18;
let dateFormatter = NSDateFormatter();
// Returns what crew is on shift for given shift and date
func crew(shift: String, strInputDate: String) -> String
{
var intOffset: Int;
var intShiftStart: Int;
var intCrewWeek: Int;
var crew: String;
dateFormatter.dateFormat = "yyyy-MM-dd";
let varDate = dateFormatter.dateFromString(startDate);
let inputDate = dateFormatter.dateFromString(strInputDate)
if(inputDate!.compare(varDate!) == NSComparisonResult.OrderedDescending)
{
NSLog("Date Before Shift Schedules Implemented");
// Exit Script
}
else
{
//Get number of days between input date and start date
intOffset = daysBetweenDate(varDate!, endDate: inputDate!);
}
switch shift
{
case "swings":
intShiftStart = swingsStart;
case "mids":
intShiftStart = midsStart;
case "days":
intShiftStart = daysStart;
case "tweek":
intShiftStart = tweekStart;
default:
// Not a valid shift
return "";
}
intOffset = daysBetweenDate(varDate!, endDate: inputDate!);
intCrewWeek = 1 + (((intOffset + 35 - intShiftStart) % 35)/7);
crew = String(Array(cycleOrder.characters)[intCrewWeek]);
return crew;
}
func daysBetweenDate(startDate: NSDate, endDate: NSDate) -> Int
{
let calendar = NSCalendar.currentCalendar()
let components = calendar.components([.Day], fromDate: startDate, toDate: endDate, options: []);
return components.day
}
}
But Xcode is telling me i am passing too many parameters. "Extra argument in call"
So please critique me, i am learning all of this so what did i do wrong?