Beispiel #1
0
        //string study, string modality, out string seriesUID, bool bSaveEFilm
        private string CreateSeries(EFilmModel eFilmModel)
        {
            var studyInstanceUid = eFilmModel.StudyInstanceUid;

            Series series = DBWrapperHelper.DBWrapper.CreateSeries();

            var uidManager = McsfDatabaseDicomUIDManagerFactory.Instance().CreateUIDManager();

            series.SeriesInstanceUID  = uidManager.CreateSeriesUID("");//eFilmModel.EFilmSeriesUid;
            series.StudyInstanceUIDFk = studyInstanceUid;
            series.Modality           = eFilmModel.EFilmModality;
            // new seriesNumber equals the max seriesNumber of exist series add one
            series.SeriesNumber = Convert.ToInt32(GetSerieNumber(studyInstanceUid)) + 1;
            series.ReconResult  = 2; //代表重建已完成
            if (studyInstanceUid == "****")
            {
                return(string.Empty);                            //FilmingHelper.StarsString) return;
            }
            //check whether disk space is enough
            ICommunicationProxy pCommProxy = Containee.Main.GetCommunicationProxy();
            var target = new SystemResManagerProxy(pCommProxy);

            if (!target.HaveEnoughSpace())
            {
                Logger.LogError("No enough disk space, so Electronic Image Series will not be created");
                Containee.Main.ShowStatusError("UID_Filming_No_Enough_Disk_Space_To_Create_Electronic_Image_Series");
                return(string.Empty);
            }

            series.Save();
            return(series.SeriesInstanceUID);
        }
Beispiel #2
0
        private static void CreateSeries(string studyInstanceUid, string modality)
        {
            var    db     = FilmingDbOperation.Instance.FilmingDbWrapper;
            Series series = db.CreateSeries();

            SeriesInstanceUid         = series.SeriesInstanceUID;
            series.StudyInstanceUIDFk = studyInstanceUid;
            // new seriesNumber equals the max seriesNumber of exist series add one
            _seriesNumber            = Convert.ToInt32(FilmingHelper.GetSerieNumber(studyInstanceUid)) + 1;
            series.SeriesNumber      = _seriesNumber;
            series.SeriesDescription = Printers.Instance.NewSeriesDescription;
            series.Modality          = modality;

            if (studyInstanceUid == FilmingHelper.StarsString)
            {
                return;
            }


            //check whether disk space is enough
            ICommunicationProxy pCommProxy = FilmingViewerContainee.Main.GetCommunicationProxy();
            var target = new SystemResManagerProxy(pCommProxy);

            if (!target.HaveEnoughSpace())
            {
                Logger.LogWarning("No enough disk space, so Electronic Image Series will not be created");
                //FilmingViewerContainee.ShowStatusWarning("UID_Filming_No_Enough_Disk_Space_To_Create_Electronic_Image_Series");
                FilmingViewerContainee.Main.ShowStatusWarning("UID_Filming_No_Enough_Disk_Space_To_Create_Electronic_Image_Series");
                return;
            }

            series.Save();
        }