Esempio n. 1
0
        public async Task <JsonResult> InfoRegister([FromBody] EnrollmentInfoRegister registers)//注册招生信息
        {
            var collegeName = HttpContext.Session.GetString("UserID");
            var now         = DateTime.Now;
            var response    = new Response {
                Code = 0, Data = null
            };

            if (_context.Batches.SingleOrDefaultAsync(b => b.Bname == "提前批").Result.ApplicationBeginTime < now ||
                _context.Universities.Any(u => u.ApprovalStatus == true))//若招生工作已开始或该校已被招办审批,则不予注册招生信息
            {
                response.Code = 1;
            }
            else//满足时间约束,尝试录入注册信息
            {
                try
                {
                    float rate = registers.Proportion;
                    _context.Universities.SingleOrDefault(u => u.Uname == collegeName).ExpandRate = rate;
                    foreach (var register in registers.Profession)
                    {
                        CollegeEnrollment tempEnrollmentInfo = new CollegeEnrollment();//要装入数据库的高校招生信息
                        tempEnrollmentInfo.Uname       = collegeName;
                        tempEnrollmentInfo.Mid         = register.Id;
                        tempEnrollmentInfo.Menrollment = register.Population;
                        switch (register.Batch)
                        {
                        case 0:
                            tempEnrollmentInfo.Bname = "提前批";
                            break;

                        case 1:
                            tempEnrollmentInfo.Bname = "第一批";
                            break;

                        case 2:
                            tempEnrollmentInfo.Bname = "第二批";
                            break;

                        case 3:
                            tempEnrollmentInfo.Bname = "第三批";
                            break;
                        }
                        tempEnrollmentInfo.EnrollmentRemaning = tempEnrollmentInfo.Menrollment;
                        _context.CollegeEnrollments.Add(tempEnrollmentInfo);
                    }
                    await _context.SaveChangesAsync();
                }
                catch (Exception ex)
                {
                    response.Code = 1;
                    Console.WriteLine(ex);
                }
            }
            return(Json(response));
        }
        public async Task <JsonResult> VolunteerStore([FromBody] Volunteer[] volunteers)//支援提交
        {
            var response = new Response {
                Code = 0, Data = new Object()
            };

            if (volunteers == null)//数据为空
            {
                response.Code = 1;
            }
            var Sid = HttpContext.Session.GetString("UserID");

            try
            {
                foreach (var volunteer in volunteers)                                                                                 //对于该生的每个志愿
                {
                    if (_context.Universities.SingleOrDefaultAsync(u => u.Uname == volunteer.College).Result.ApprovalStatus == false) //若该校审核未通过则志愿填报失败
                    {
                        response.Code = 1;
                        return(Json(response));
                    }
                    var adjustment = new StudentUniversityAdjustment {
                        Sid = Sid, Uname = volunteer.College, Adjustment = volunteer.IsObey
                    };
                    _context.StudentUniversityAdjustments.Add(adjustment);
                    var collegeEnrollment = _context.CollegeEnrollments.Where(u => u.Uname == volunteer.College); //当前志愿学校的招生信息
                    for (int i = 1; i <= 6; i++)                                                                  //一共六个专业
                    {
                        if (!collegeEnrollment.Any(u => u.Mid == volunteer.Professions[i - 1]))                   //若该校未开设此专业则填报志愿失败
                        {
                            response.Code = 1;
                            return(Json(response));
                        }
                        var application = new Application {
                            Sid = Sid, Uname = volunteer.College, Mid = volunteer.Professions[i - 1], No = i
                        };
                        _context.Applications.Add(application);
                    }
                }
                await _context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                response.Code = 1;
                _logger.LogError(ex, "An exception occured while add volunteers to database.");
            }
            return(Json(response));
        }
Esempio n. 3
0
        public async Task <T> SaveAsync(T entity)
        {
            await _context.SaveChangesAsync();

            return(entity);
        }