コード例 #1
0
ファイル: ExamNumController.cs プロジェクト: maziweis/ExamJKY
        public HttpResponseMessage SelStudentNum([FromBody] ExamAndID m)
        {
            var      eInfo    = MongoDbHelper.FindOne <E_Info>(m.ExamID, DbName.E_Info);
            ObjectId objectId = new ObjectId();

            if (ObjectId.TryParse(m.ExamID, out objectId))
            {
                var data = MongoDbHelper.QueryOne <Pp_Nm>(DbName.Pp_Nm, w => w.sid == m.ID && w.eid == objectId);
                if (data == null)
                {
                    return(ResultHelper.OK(new { Data = new List <PaperNum>(), Count = 0 }));
                }
                PaperNum t = new PaperNum();
                t.IsSure = data.iss;
                for (int j = 0; j < eInfo.sbs.Count; j++)
                {
                    SubNum sub = new SubNum();
                    var    s   = data.sbnms.Where(w => w.sbid == eInfo.sbs[j]._id).FirstOrDefault();
                    sub.SubID    = s.sbid.ToString();
                    sub.SubName  = s.sbnm;
                    sub.SubCount = s.sct;
                    sub.AcCount  = s.ac;
                    t.Subs.Add(sub);
                }
                return(ResultHelper.OK(t));
            }
            return(ResultHelper.Failed("未找到该次考试"));
        }
コード例 #2
0
ファイル: ExamNumController.cs プロジェクト: maziweis/ExamJKY
        public HttpResponseMessage StaStudentNum([FromBody] SelPaper m)
        {
            var      filter   = new BsonDocument();
            ObjectId objectId = new ObjectId();

            if (ObjectId.TryParse(m.ExamID, out objectId))
            {
                filter.Add("eid", objectId);
                if (!string.IsNullOrEmpty(m.School))
                {
                    int id = -1;
                    if (int.TryParse(m.School, out id))
                    {
                        filter.Add("sid", m.School);
                    }
                    else
                    {
                        filter.Add("snm", m.School);
                    }
                }
                var             data  = MongoDbHelper.GetPagedList1 <Pp_Nm, string>(DbName.Pp_Nm, m.Skip, m.Limit, filter, w => w.sid);
                int             Count = MongoDbHelper.GetCount <Pp_Nm>(DbName.Pp_Nm, filter);
                List <PaperNum> lm    = new List <PaperNum>();
                if (Count == 0)
                {
                    var      ppp = new List <PaperNum>();
                    PaperNum pn  = new PaperNum();
                    ppp.Add(pn);
                    var exam1 = MongoDbHelper.FindOne <E_Info>(m.ExamID, DbName.E_Info);
                    for (int i = 0; i < exam1.sbs.Count; i++)
                    {
                        SubNum sub = new SubNum();
                        sub.SubName = exam1.sbs[i].sbnm;
                        sub.SubID   = exam1.sbs[i]._id.ToString();
                        pn.Subs.Add(sub);
                    }
                    return(ResultHelper.OK(new { Data = ppp, Count = Count }));
                }
                var exam = MongoDbHelper.FindOne <E_Info>(m.ExamID, DbName.E_Info);

                for (int i = 0; i < data.Count; i++)
                {
                    PaperNum t = new PaperNum();
                    t.ID         = data[i]._id.ToString();
                    t.SchoolID   = data[i].sid;
                    t.SchoolName = data[i].snm;
                    t.IsSure     = data[i].iss;
                    for (int j = 0; j < exam.sbs.Count; j++)
                    {
                        SubNum sub = new SubNum();
                        sub.SubID    = exam.sbs[j]._id.ToString();
                        sub.SubName  = exam.sbs[j].sbnm;
                        sub.SubCount = data[i].sbnms.Where(w => w.sbid == exam.sbs[j]._id).FirstOrDefault() == null ? 0 : data[i].sbnms.Where(w => w.sbid == exam.sbs[j]._id).FirstOrDefault().sct;
                        sub.AcCount  = data[i].sbnms.Where(w => w.sbid == exam.sbs[j]._id).FirstOrDefault() == null ? 0 : data[i].sbnms.Where(w => w.sbid == exam.sbs[j]._id).FirstOrDefault().ac;
                        t.Subs.Add(sub);
                    }
                    lm.Add(t);
                }
                return(ResultHelper.OK(new { Data = lm, Count = Count }));
            }
            return(ResultHelper.Failed("未找到该次考试"));
        }