예제 #1
0
        //1.2.156.112605.75006877305224.20121123025201.9.4420.2
        private void LoadStudyByInterationInfo(byte[] interationStudyInfo)
        {
            try
            {
                Logger.LogFuncUp();

                var infoWrapper = new InteractionInfoWrapper();
                infoWrapper.Deserialize(interationStudyInfo);

                var studyUidList = (from study in infoWrapper.GetStudyList()
                                    select study.UID).ToList();
                var seriesUidList = (from series in infoWrapper.GetSeriesList()
                                     select series.UID).ToList();

                LoadStudies(studyUidList);

                if (seriesUidList.Count == 1 && infoWrapper.GetSrcAppName() == "PA")//Efilm series from PA
                {
                    AddEFilmSeriesToFilmPage(seriesUidList.FirstOrDefault());
                }

                Logger.LogFuncDown();
            }
            catch (Exception ex)
            {
                Logger.LogError(ex.StackTrace);
            }
        }
예제 #2
0
        private void ReceiveSeriesCompareHandler(InteractionInfoWrapper infoWrapper)
        {
            try
            {
                Logger.LogFuncUp();

                var seriesUidList = infoWrapper.GetSeriesList().Select(seriesInfo => seriesInfo.UID).ToList();
                var filmingCard   = FilmingViewerContainee.FilmingViewerWindow as FilmingCard;
                if (null == filmingCard)
                {
                    Logger.LogError("Can't get filmingCard Instance");
                    return;
                }
                if (null != FilmingViewerContainee.FilmingViewerWindow.Dispatcher)
                {
                    var dispatcher = Dispatcher.FromThread(FilmingViewerContainee.FilmingViewerWindow.Dispatcher.Thread);
                    if (dispatcher != null)
                    {
                        dispatcher.Invoke((FilmingCard.MethodInvoker)(() => filmingCard.studyTreeCtrl.SwitchToSeriesCompare(seriesUidList)), null);
                    }
                }
                else
                {
                    filmingCard.studyTreeCtrl.SwitchToSeriesCompare(seriesUidList);
                }

                Logger.LogFuncDown();
            }
            catch (Exception ex)
            {
                Logger.LogFuncException(ex.Message + ex.StackTrace);
                throw;
            }
        }
예제 #3
0
        private void ReceiveStudyHandler(InteractionInfoWrapper infoWrapper)
        {
            var seriesList = (from series in infoWrapper.GetSeriesList() select series.UID).ToList();

            LoadSeriesIntoCard(seriesList);
        }
예제 #4
0
        private void ReceiveSeriesHandler(InteractionInfoWrapper infoWrapper)
        {
            var seriesList = infoWrapper.GetSeriesList();

            LoadSeriesIntoCard(seriesList.Select(seriesInfo => seriesInfo.UID).ToList());
        }