示例#1
0
        public void Process(AsureDayIsLoaded message)
        {
            if (!cachedAppointmentGridViewModels.ContainsKey(new AggregateIdentifier(message.Day, message.MedicalPracticeId)))
            {
                cachedAppointmentGridViewModels.Add(new AggregateIdentifier(message.Day, message.MedicalPracticeId), null);

                medicalPracticeRepository.RequestPraticeVersion(
                    practiceVersion =>
                {
                    Application.Current.Dispatcher.Invoke(() =>
                    {
                        var identifier = new AggregateIdentifier(message.Day, message.MedicalPracticeId, practiceVersion);

                        appointmentGridViewModelBuilder.RequestBuild(
                            buildedViewModel =>
                        {
                            cachedAppointmentGridViewModels[identifier] = buildedViewModel;
                            LoadedAppointmentGrids.Add(buildedViewModel);

                            message.DayIsLoaded?.Invoke();
                        },
                            identifier,
                            errorCallback
                            );
                    });
                },
                    message.MedicalPracticeId,
                    message.Day,
                    errorCallback
                    );
            }
            else
            {
                message.DayIsLoaded?.Invoke();
            }
        }
示例#2
0
 public void Process(AsureDayIsLoaded message)
 {
 }