public virtual Tuple <bool, byte> DeleteWorker(int id) { Worker worker = Workers.SingleOrDefault(w => w.ID == id); bool success = false; if (worker != null) { if (worker.Attractions.Count > 0) { return(new Tuple <bool, byte>(false, (byte)ModelType.Attraction)); } Overtimes.RemoveRange(worker.Overtimes); Workers.Remove(worker); try { SaveChanges(); success = true; } catch (Exception e) { Logger.LogError($"Exception removing worker! Exception: {e.ToString()}", GetType(), $"DeleteWorker(id: {id})"); } } return(new Tuple <bool, byte>(success, (byte)ModelType.Model)); }
// DRY private CompensatedMissingHours CompensateHoursFromSelectedOvertimesType( CompensatedMissingHours compensatedMissingHours, Overtimes employeeOvertimes, Func <Overtimes, decimal> getOvertimesType, Action <Overtimes, decimal> setOvertimesType) { if (compensatedMissingHours.HasHoursToCompensate()) { if (getOvertimesType(employeeOvertimes) >= compensatedMissingHours.MissingHours) { compensatedMissingHours.CompensatedHours += compensatedMissingHours.MissingHours; var leftOvertimes = getOvertimesType(employeeOvertimes) - compensatedMissingHours.MissingHours; setOvertimesType(compensatedMissingHours.LeftOvertimes, leftOvertimes); compensatedMissingHours.MissingHours = 0; } else { compensatedMissingHours.CompensatedHours += getOvertimesType(employeeOvertimes); setOvertimesType(compensatedMissingHours.LeftOvertimes, 0); compensatedMissingHours.MissingHours -= getOvertimesType(employeeOvertimes); } } return(compensatedMissingHours); }
public CompensatedMissingHours CompensateMissingHours(Overtimes employeeOvertimes, decimal missingHours) { var compensatedMissingHours = new CompensatedMissingHours(missingHours); compensatedMissingHours = CompensateHoursFromStandardOvertimes(compensatedMissingHours, employeeOvertimes); compensatedMissingHours = CompensateHoursFromSaturdayOvertimes(compensatedMissingHours, employeeOvertimes); compensatedMissingHours = CompensateHoursFromSundayOvertimes(compensatedMissingHours, employeeOvertimes); // DRY compensatedMissingHours = CompensateHoursFromSelectedOvertimesType(compensatedMissingHours, employeeOvertimes, (overtime) => overtime.StandardOvertimes, (overtime, newValue) => overtime.StandardOvertimes = newValue); compensatedMissingHours = CompensateHoursFromSelectedOvertimesType(compensatedMissingHours, employeeOvertimes, (overtime) => overtime.SaturdayOvertimes, (overtime, newValue) => overtime.SaturdayOvertimes = newValue); compensatedMissingHours = CompensateHoursFromSelectedOvertimesType(compensatedMissingHours, employeeOvertimes, (overtime) => overtime.SundayOvertimes, (overtime, newValue) => overtime.SundayOvertimes = newValue); return(compensatedMissingHours); }
private CompensatedMissingHours CompensateHoursFromSundayOvertimes( CompensatedMissingHours compensatedMissingHours, Overtimes employeeOvertimes) { if (compensatedMissingHours.HasHoursToCompensate()) { if (employeeOvertimes.SundayOvertimes >= compensatedMissingHours.MissingHours) { compensatedMissingHours.CompensatedHours += compensatedMissingHours.MissingHours; compensatedMissingHours.LeftOvertimes.SundayOvertimes = employeeOvertimes.SundayOvertimes - compensatedMissingHours.MissingHours; compensatedMissingHours.MissingHours = 0; } else { compensatedMissingHours.CompensatedHours += employeeOvertimes.SundayOvertimes; compensatedMissingHours.LeftOvertimes.SundayOvertimes = 0; compensatedMissingHours.MissingHours -= employeeOvertimes.SundayOvertimes; } } return(compensatedMissingHours); }
public void ResetStats(bool resetTeams = true) { DispatcherHelper.CheckBeginInvokeOnUI(delegate { AverageHealthDamage = 0; AverageHltvRating = 0; AverageEseaRws = 0; AssistPerRound = 0; DeathPerRound = 0; KillPerRound = 0; DamageHealthCount = 0; DamageArmorCount = 0; MvpCount = 0; KillCount = 0; KnifeKillCount = 0; TeamKillCount = 0; HeadshotCount = 0; AssistCount = 0; DeathCount = 0; SmokeThrownCount = 0; FlashbangThrownCount = 0; HeadshotCount = 0; DecoyThrownCount = 0; MolotovThrownCount = 0; IncendiaryThrownCount = 0; HitCount = 0; WeaponFiredCount = 0; AssistPerRound = 0; DeathPerRound = 0; OneKillCount = 0; TwoKillCount = 0; ThreeKillCount = 0; FourKillCount = 0; FiveKillCount = 0; ScoreTeam1 = 0; ScoreTeam2 = 0; ScoreFirstHalfTeam1 = 0; ScoreFirstHalfTeam2 = 0; ScoreSecondHalfTeam1 = 0; ScoreSecondHalfTeam2 = 0; Rounds.Clear(); WeaponFired.Clear(); Kills.Clear(); Overtimes.Clear(); PositionPoints.Clear(); MolotovsFireStarted.Clear(); DecoyStarted.Clear(); BombPlanted.Clear(); BombDefused.Clear(); BombExploded.Clear(); BombPlanted.Clear(); BombDefused.Clear(); BombExploded.Clear(); ClutchCount = 0; ClutchLostCount = 0; ClutchWonCount = 0; EntryKillCount = 0; MostBombPlantedPlayer = null; MostEntryKillPlayer = null; MostHeadshotPlayer = null; MostKillingWeapon = null; HasCheater = false; PlayersHurted.Clear(); PlayerBlinded.Clear(); Winner = null; Surrender = null; if (resetTeams) { Players.Clear(); TeamCT.Clear(); TeamT.Clear(); } else { foreach (Player playerExtended in Players) { playerExtended.ResetStats(); } } }); }
public CompensatedMissingHours(decimal missingHours) { MissingHours = missingHours; CompensatedHours = 0; LeftOvertimes = new Overtimes(0, 0, 0); }