Fix PunchInService saveWorkItem to correctly insert or update and preserve the WorkItems GUID