Esempio n. 1
0
        //POST: api/Admission/SubmitAdmission
        public async Task <Object> SubmitAdmission(tbAdmission model)
        {
            //Student apply dupplicate admission
            var mailChk = db.Admissions.SingleOrDefault(e => e.StudentEmail.Equals(model.StudentEmail));

            if (mailChk != null)
            {
                if (mailChk.FieldCode.Equals(model.FieldCode))
                {
                    return(BadRequest("Admission just register with email!"));
                }
            }
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            if (!AdmissionService.ValidateAge(model.DoB))
            {
                return(BadRequest("Age must over than 18 year old!"));
            }
            //Generator Key Admission
            var AdmissionKey = AdmissionService.GenerateKey(model.StreamCode);

            model.StatusID = 0;
            //Save AdmissionForm + finalString to Db
            var admission = new tbAdmission
            {
                AdmissionID          = AdmissionKey,
                StudentEmail         = model.StudentEmail,
                StudentName          = model.StudentName,
                FatherName           = model.FatherName,
                MotherName           = model.MotherName,
                DoB                  = model.DoB,
                Gender               = model.Gender,
                ResidentialAddress   = model.ResidentialAddress,
                PermanentAddress     = model.PermanentAddress,
                StreamCode           = model.StreamCode,
                FieldCode            = model.FieldCode,
                SportsDetails        = model.SportsDetails,
                StatusID             = model.StatusID,
                ExUniversity         = model.ExUniversity,
                ExEnrollmentNumber   = model.ExEnrollmentNumber,
                ExCenter             = model.ExCenter,
                ExStream             = model.ExStream,
                ExField              = model.ExField,
                ExMarkSecured        = model.ExMarkSecured,
                OutOfDate            = model.OutOfDate,
                ClassObtained        = model.ClassObtained,
                SpecializedSubjectID = model.SpecializedSubjectID,
                OptionalSubjectID    = model.OptionalSubjectID
            };
            await db.Admissions.AddAsync(admission);

            await db.SaveChangesAsync();

            //Return key to Student
            return(new { AdmissionKey });
        }
Esempio n. 2
0
        //POST: api/Admission/DeleteAdmission
        public async Task <IActionResult> EditAdmission(string Id, tbAdmission model)
        {
            if (Id == null)
            {
                return(BadRequest("Admission ID cannot null!"));
            }
            var Admission = await db.Admissions.FindAsync(Id);

            if (Admission != null)
            {
                if (Admission.StatusID == 1) //Cannot edit admission when accepnt from admin
                {
                    return(BadRequest("Cannot Delete Admission when accepted!"));
                }
                else
                {
                    Admission.StudentEmail         = model.StudentEmail;
                    Admission.StudentName          = model.StudentName;
                    Admission.FatherName           = model.FatherName;
                    Admission.MotherName           = model.MotherName;
                    Admission.DoB                  = model.DoB;
                    Admission.Gender               = model.Gender;
                    Admission.ResidentialAddress   = model.ResidentialAddress;
                    Admission.PermanentAddress     = model.PermanentAddress;
                    Admission.StreamCode           = model.StreamCode;
                    Admission.FieldCode            = model.FieldCode;
                    Admission.SportsDetails        = model.SportsDetails;
                    Admission.StatusID             = model.StatusID;
                    Admission.ExUniversity         = model.ExUniversity;
                    Admission.ExEnrollmentNumber   = model.ExEnrollmentNumber;
                    Admission.ExCenter             = model.ExCenter;
                    Admission.ExStream             = model.ExStream;
                    Admission.ExField              = model.ExField;
                    Admission.ExMarkSecured        = model.ExMarkSecured;
                    Admission.OutOfDate            = model.OutOfDate;
                    Admission.ClassObtained        = model.ClassObtained;
                    Admission.SpecializedSubjectID = model.SpecializedSubjectID;
                    Admission.OptionalSubjectID    = model.OptionalSubjectID;

                    db.Entry(Admission).State = EntityState.Modified;
                    await db.SaveChangesAsync();

                    return(Ok("Edit Success!"));
                }
            }
            return(NotFound());
        }