예제 #1
0
        public ExamSuiteGroup AddExamSuiteGruop(string SubjectId, [FromBody] ExamSuiteGroup examsuitegroup)
        {
            if (examsuitegroup != null)
            {
                //getsubject
                var _subject = repoForApprove.GetSubject(examsuitegroup.SubjectId);
                //addnew group

                var _examSuitIdInSubject = _subject.ExamSuites.Select(x => new Activated.ExamSuiteGroupMap
                {
                    _id         = Guid.NewGuid().ToString(),
                    ExamSuiteId = x._id,
                    RandomCount = 0,
                }).ToList();

                var newExamsuitegroup = new Activated.ExamSuiteGroup
                {
                    _id                = examsuitegroup.ExamSuiteGroupName,
                    ExamDuration       = examsuitegroup.ExamDuration,
                    IsUsed             = examsuitegroup.IsUsed,
                    PassScore          = examsuitegroup.PassScore,
                    ExamSuiteGroupName = examsuitegroup.ExamSuiteGroupName,
                    ExamSuiteGroupMaps = _examSuitIdInSubject
                };
                _subject.ExamSuiteGroups.Add(newExamsuitegroup);
                //upsertsubject
                repoForApprove.UpsertSubject(_subject);

                examsuitegroup.id = newExamsuitegroup._id;
                examsuitegroup.ExamSuiteGroupMaps = _examSuitIdInSubject.Select(x => new ExamSuiteGroupMap()
                {
                    id               = x._id,
                    ExamSuiteId      = x.ExamSuiteId,
                    RandomCount      = x.RandomCount,
                    ExamSuiteGroupId = newExamsuitegroup._id,
                    SubjectId        = SubjectId,
                });

                return(examsuitegroup);
            }
            return(null);
        }