Ejemplo n.º 1
0
        public CommonDetail AddCommonDetail(CommonDetail commonDetail)
        {
            var result = unitOfWork.CommonDetailRepository.Insert(commonDetail);

            unitOfWork.Save();
            return(result);
        }
Ejemplo n.º 2
0
 public void UpdateCommonDetail(CommonDetail commonDetail)
 {
     unitOfWork.CommonDetailRepository.Update(commonDetail);
     unitOfWork.Save();
 }
Ejemplo n.º 3
0
        public async Task <IHttpActionResult> PostTrainerPersonalDetails(TrainerPersonalDTO trainerPersonalDetails)
        {
            var user = await db.Users.Where(x => x.Email == trainerPersonalDetails.email).SingleOrDefaultAsync();

            if (user == null)
            {
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.NotFound, "User Not Found, Please perform SignUp/Register")));
            }
            //Check if trainer application detail exist-In case he/she has partially filled the apllictaion form

            var trainerDb = db.Trainers.SingleOrDefault(x => x.UserID == user.Id);

            if (trainerDb != null)
            {
                var CommDetail = db.CommonDetails.Where(x => x.ID == trainerDb.CommonDetailID).SingleOrDefault();
                CommDetail.Address = trainerPersonalDetails.address;
                CommDetail.state   = trainerPersonalDetails.state;
                CommDetail.City    = trainerPersonalDetails.City;
                //CommDetail.DOB = DateTime.ParseExact(trainerPersonalDetails.dob, "dd/MM/YYYY", CultureInfo.InvariantCulture);
                CommDetail.DOB             = Convert.ToDateTime(trainerPersonalDetails.dob);
                CommDetail.PINCode         = trainerPersonalDetails.PINCode;
                db.Entry(CommDetail).State = EntityState.Modified;

                try
                {
                    var result = await db.SaveChangesAsync();

                    trainerPersonalDetails.CommonDetailID = CommDetail.ID;
                    trainerPersonalDetails.TrainerId      = trainerDb.TrainerId;
                    return(Ok(trainerPersonalDetails));
                }
                catch (Exception ex)
                {
                    return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.Message)));
                }
            }
            else
            {
                CommonDetail commonDetailObj = new CommonDetail()
                {
                    ID                   = Guid.NewGuid().ToString(),
                    Address              = trainerPersonalDetails.address,
                    AcademicYear         = null,
                    DOB                  = Convert.ToDateTime(trainerPersonalDetails.dob),
                    Department           = String.Empty,
                    Grade                = null,
                    Photo                = null,
                    HighestQualification = String.Empty,
                    state                = trainerPersonalDetails.state,
                    City                 = trainerPersonalDetails.City,
                    PINCode              = trainerPersonalDetails.PINCode
                };

                Trainer trainerObj = new Trainer()
                {
                    TrainerId = Guid.NewGuid().ToString(),
                    UserID    = user.Id,
                    //FirstName = null,//TODO: Need to remove since user table already contain firstname
                    //LastName = null,//TODO: Need to remove since user table already contain lastname
                    CommonDetailID = commonDetailObj.ID,
                    TypeId         = null,
                    RatingId       = null,
                    StatusId       = null,
                    IsVerified     = false
                };
                TrainerDetail trainerDetailObj = new TrainerDetail()
                {
                    TrDetailId         = Guid.NewGuid().ToString(),
                    TrainerId          = trainerObj.TrainerId,
                    Experience         = null,
                    Companies          = null,
                    SkillSet           = null,
                    TeachingExperience = null,
                    TeachingReason     = null,
                    SocialMediaId      = null
                };
                using (DbContextTransaction transaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        db.CommonDetails.Add(commonDetailObj);
                        db.Trainers.Add(trainerObj);
                        db.TrainerDetails.Add(trainerDetailObj);
                        var result = await db.SaveChangesAsync();

                        transaction.Commit();
                        trainerPersonalDetails.CommonDetailID = commonDetailObj.ID;
                        trainerPersonalDetails.TrainerId      = trainerObj.TrainerId;
                        return(Ok(trainerPersonalDetails));
                    }
                    catch (Exception ex)
                    {
                        transaction.Rollback();
                        return(InternalServerError(new ApplicationException("Something went wrong in this request. internal exception: " + ex.Message)));
                    }
                }
            }
        }
Ejemplo n.º 4
0
        public async Task <IHttpActionResult> PostTrainer(TrainerDTO trainer)
        {
            var user = await db.Users.Where(x => x.Email == trainer.email).SingleOrDefaultAsync();

            if (user == null)
            {
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.NotFound, "User Not Found, Please perform SignUp/Register")));
            }
            //Check if trainer application detail exist-In case he/she has partially filled the apllictaion form

            var trainerDb = db.Trainers.SingleOrDefault(x => x.UserID == user.Id);


            //if (trainerDb!=null)
            //{
            //    trainerDb.
            //}
            //else
            //{

            //}
            CommonDetail commonDetailObj = new CommonDetail()
            {
                ID                   = Guid.NewGuid().ToString(),
                Address              = trainer.address,
                AcademicYear         = Convert.ToDateTime(trainer.academicYear),
                DOB                  = Convert.ToDateTime(trainer.dob),
                Department           = trainer.department,
                Grade                = null,
                Photo                = null,
                HighestQualification = trainer.highestQualification,
            };

            Trainer trainerObj = new Trainer()
            {
                TrainerId = Guid.NewGuid().ToString(),
                UserID    = user.Id,
                //FirstName = trainer.firstName,
                //LastName = trainer.lastName,
                CommonDetailID = commonDetailObj.ID,
                TypeId         = null,
                RatingId       = null,
                StatusId       = null,
                IsVerified     = false
            };
            TrainerDetail trainerDetailObj = new TrainerDetail()
            {
                TrDetailId         = Guid.NewGuid().ToString(),
                TrainerId          = trainerObj.TrainerId,
                Experience         = trainer.industrialExp,
                Companies          = trainer.companies,
                SkillSet           = trainer.skillSet,
                TeachingExperience = trainer.teachingExp,
                TeachingReason     = null,
                SocialMediaId      = trainer.socialMediaLink
            };

            try
            {
                db.CommonDetails.Add(commonDetailObj);
                db.Trainers.Add(trainerObj);
                db.TrainerDetails.Add(trainerDetailObj);

                var result = await db.SaveChangesAsync();

                return(CreatedAtRoute("DefaultApi", new { id = trainerObj.TrainerId }, trainerObj));
            }
            catch (DbUpdateException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }