/// <summary>
        /// Runs prior to the work being done.
        /// </summary>
        protected override void PreExecute()
        {
            WellKnownError = new WellKnownErrors();

            TranscriptionRepository = new TranscriptionRepository();
            PredefineUserRepository = new PredefineUserRepository();

            WellKnownError.Value = WellKnownError.NoError;
        }
        /// <summary>
        /// Checks the predefine user and insert.
        /// </summary>
        /// <param name="userType">Type of the user.</param>
        /// <param name="user">The user.</param>
        private void CheckPredefineUserAndInsert(byte userType, string user)
        {
            predefineduser predefineUser = PredefineUserRepository.FirstOrDefault(p => p.Name.ToLower().Contains(user));

            if (predefineUser == null)
            {
                PredefineUserRepository.Add(new predefineduser()
                {
                    UserType = userType, Name = user
                });
                PredefineUserRepository.Save();
            }
        }
Esempio n. 3
0
        /// <summary>
        /// Runs prior to the work being done.
        /// </summary>
        protected override void PreExecute()
        {
            WellKnownError = new WellKnownErrors();

            TranscriptionRepository      = new TranscriptionRepository();
            RepositoryRepository         = new RepositoryRepository();
            CollectionRepository         = new CollectionRepository();
            SubseryRepository            = new SubseryRepository();
            SubjectRepository            = new SubjectRepository();
            KeywordRepository            = new KeywordRepository();
            PredefineUserRepository      = new PredefineUserRepository();
            AudioEquipmentUsedRepository = new AudioEquipmentUsedRepository();
            VideoEquipmentUsedRepository = new VideoEquipmentUsedRepository();
            UserTypeRepository           = new UserTypeRepository();

            WellKnownError.Value = WellKnownError.NoError;
        }
        /// <summary>
        /// The actual Work to be done.
        /// </summary>
        protected override void Execute()
        {
            List <transcription> transcriptions = TranscriptionRepository.GetAll().ToList();

            List <string> codes = transcriptions.Select(s => s.ProjectCode.ToLower()).ToList();

            List <predefineduser> predefinedInterviewers = PredefineUserRepository.GetPredefinedUsers(1);

            List <string> importInterviewerList = new List <string>();

            int duplicateRecordCount = 0, insertedRecordCount = 0;

            foreach (TranscriptionModel item in Request.TranscriptionModels)
            {
                if (!codes.Exists(s => s.Contains(item.ProjectCode.ToLower())))
                {
                    transcription transcription = Util.ConvertToTranscription(item);

                    transcription.TranscriptStatus = true;

                    TranscriptionRepository.Add(transcription);
                    TranscriptionRepository.Save();

                    if (!string.IsNullOrEmpty(item.Interviewer))
                    {
                        string[] splits = item.Interviewer.Split(';');

                        foreach (string str in splits)
                        {
                            if (!importInterviewerList.Contains(str.Trim()))
                            {
                                importInterviewerList.Add(str.Trim());
                            }
                        }
                    }

                    insertedRecordCount++;
                }
                else
                {
                    duplicateRecordCount++;
                }
            }

            List <string> list = predefinedInterviewers.Select(item => item.Name).ToList();

            foreach (string item in importInterviewerList.Except(list))
            {
                predefineduser interviewer = new predefineduser()
                {
                    UserType = 1, Name = item
                };

                PredefineUserRepository.Add(interviewer);
                PredefineUserRepository.Save();
            }

            Response = new ResponseModel()
            {
                ErrorMessage = string.Format(" {0} record(s) were \n successfully imported and \n found" +
                                             " {1} duplicate records.", insertedRecordCount, duplicateRecordCount),
                IsOperationSuccess = true
            };
        }
Esempio n. 5
0
        /// <summary>
        /// The actual Work to be done.
        /// </summary>
        protected override void Execute()
        {
            MainFormModel mainFormModel = null;

            List <RepositoryModel> repositoryList   = new List <RepositoryModel>();
            List <CollectionModel> newlist          = new List <CollectionModel>();
            List <SubseryModel>    newSubseriesList = new List <SubseryModel>();
            List <SubjectModel>    subjectList      = new List <SubjectModel>();
            List <KeywordModel>    keywordList      = new List <KeywordModel>();
            List <UserTypeModel>   userTypes        = new List <UserTypeModel>();

            //if (Request.IsStartup)
            //{
            mainFormModel = new MainFormModel()
            {
                BrowseRecordCount            = TranscriptionRepository.GetAll().Count(),
                TranscrptionQueueRecordCount = TranscriptionRepository.FindBy(t => t.TranscriptStatus == false).Count(),
            };

            // collect repository details.
            List <repository> repositories = RepositoryRepository.GetRepositoriess();

            foreach (repository item in repositories)
            {
                repositoryList.Add(Util.ConvertToRepositoryModel(item));
            }

            // collect collection details.
            List <collection> collections = CollectionRepository.GetCollections().OrderBy(c => c.CollectionName).ToList();

            foreach (collection item in collections)
            {
                newlist.Add(Util.ConvertToCollectionModel(item, repositories.First(c => c.Id == item.RepositoryId).RepositoryName));
            }

            // collect subseries details.
            foreach (subsery item in SubseryRepository.GetSubseries().OrderBy(s => s.SubseriesName))
            {
                newSubseriesList.Add(Util.ConvertToSubseryModel(item, collections.FirstOrDefault(s => s.Id == item.CollectionId).CollectionName));
            }

            // collect subject details.
            foreach (subject item in SubjectRepository.GetSubjects())
            {
                subjectList.Add(Util.ConvertToSubjectModel(item));
            }

            // collect keywords details.
            foreach (keyword item in KeywordRepository.GetKeywords())
            {
                keywordList.Add(Util.ConvertToKeywordModel(item));
            }

            // collect user types details.
            foreach (usertype item in UserTypeRepository.GetAll())
            {
                userTypes.Add(Util.ConvertToUsertypeModel(item));
            }
            //}

            List <PredefinedUserModel> predefineUserList = Util.ConvertToPredefinedUserModel(PredefineUserRepository.GetPredefinedUsers());

            List <string> audioEquipmentsUsed = AudioEquipmentUsedRepository.List();

            List <string> videoEquipmentsUsed = VideoEquipmentUsedRepository.List();

            Response = new ResponseModel()
            {
                Repositories = repositoryList,
                Subseries    = newSubseriesList,
                Collections  = newlist,
                Subjects     = subjectList,
                Keywords     = keywordList,

                PredefinedUsers     = predefineUserList,
                AudioEquipmentsUsed = audioEquipmentsUsed,
                VideoEquipmentsUsed = videoEquipmentsUsed,
                UserTypes           = userTypes,

                MainFormModel      = mainFormModel,
                IsOperationSuccess = true
            };
        }