public void LoadData(IAgentSeatModel agentSeat) { var extNo = agentSeat.Profile.ExtNo; if (_agentStatusRecords.ContainsKey(extNo)) { agentSeat.AgentStatus = _agentStatusRecords[extNo]; if (_foundAgents.ContainsKey(agentSeat.AgentStatus.AgentAcdid)) { agentSeat.CurrentAgent = _foundAgents[agentSeat.AgentStatus.AgentAcdid]; //var sliceTerms = agentSeat.CurrentAgent.TermSet.SliceIntoPieces(); //FillTerminalGap(sliceTerms, _watchRange.Start, _watchRange.End); //agentSeat.CurrentActivity = // filledTerminalGapTerms.LastOrDefault(o => o.Start <= _watchPoint && o.End > _watchPoint); var found = agentSeat.CurrentAgent.TermSet.Retrieve <Term>(_watchPoint, _watchPoint) .LastOrDefault(o => _watchPoint.IsInTheRange(o)); if (found != null) { agentSeat.CurrentActivity = new RtaaSlicedTerm() { Start = found.Start, End = found.End, Level = found.Level, OnService = found.OnService, Text = found.Text }; } else { agentSeat.CurrentActivity = new RtaaSlicedTerm() { Start = _watchRange.Start, End = _watchRange.End, Level = -1, OnService = false }; } } else { //anonymous timebox agentSeat.CurrentAgent = new TimeBox(new DateRange(_watchRange.Start, _watchRange.End), new Employee()); // TODO:rewrite anonymous timebox instance agentSeat.CurrentActivity = null; } agentSeat.ShowOn = _agentStatusRepository.GetLastStatus; } else { agentSeat.StatusNotFound(); } var occupation = _planned.ContainsKey(extNo) ? _planned[extNo] : default(Occupation); agentSeat.Arrangement = occupation as SeatArrangement;//_seatBoxRepository.GetPlannedSeatArrangement(_plannedSeat[extNo].Seat, _watchPoint); agentSeat.SeatEvent = occupation as SeatEvent; }
public void LoadData(IAgentSeatModel agentSeat) { var extNo = agentSeat.Profile.ExtNo; if (_agentStatusRecords.ContainsKey(extNo)) { agentSeat.AgentStatus = _agentStatusRecords[extNo]; if (_foundAgents.ContainsKey(agentSeat.AgentStatus.AgentAcdid)) { agentSeat.CurrentAgent = _foundAgents[agentSeat.AgentStatus.AgentAcdid]; //var sliceTerms = agentSeat.CurrentAgent.TermSet.SliceIntoPieces(); //FillTerminalGap(sliceTerms, _watchRange.Start, _watchRange.End); //agentSeat.CurrentActivity = // filledTerminalGapTerms.LastOrDefault(o => o.Start <= _watchPoint && o.End > _watchPoint); var found = agentSeat.CurrentAgent.TermSet.Retrieve<Term>(_watchPoint, _watchPoint) .LastOrDefault(o => _watchPoint.IsInTheRange(o)); if (found != null) { agentSeat.CurrentActivity = new RtaaSlicedTerm() { Start = found.Start, End = found.End, Level = found.Level, OnService = found.OnService, Text = found.Text }; } else { agentSeat.CurrentActivity = new RtaaSlicedTerm() { Start = _watchRange.Start, End = _watchRange.End, Level = -1, OnService = false }; } } else { //anonymous timebox agentSeat.CurrentAgent = new TimeBox(new DateRange(_watchRange.Start, _watchRange.End), new Employee()); // TODO:rewrite anonymous timebox instance agentSeat.CurrentActivity = null; } agentSeat.ShowOn = _agentStatusRepository.GetLastStatus; } else agentSeat.StatusNotFound(); var occupation = _planned.ContainsKey(extNo) ? _planned[extNo] : default(Occupation); agentSeat.Arrangement = occupation as SeatArrangement;//_seatBoxRepository.GetPlannedSeatArrangement(_plannedSeat[extNo].Seat, _watchPoint); agentSeat.SeatEvent = occupation as SeatEvent; }