Пример #1
0
        public IActionResult _AddEditTutor(long id)
        {
            if (id == 0)
            {
                BindLessonList(null);
                return(base.View(@"Components/_AddEditTutor", new TutorDto {
                    Id = id
                }));
            }
            var result = _tutorService.GetSingle(x => x.Id == id);
            var relevantLessonResult = _relevantLessonService.GetAll().Where(y => y.TutorId == result.Id);

            List <long> lessonList = new List <long>();

            foreach (var item in relevantLessonResult)
            {
                lessonList.Add(item.LessonId);
            }
            BindLessonList(lessonList);

            var tutorUserResult = _userService.GetSingle(x => x.Id == result.UserId);
            var tutorDto        = new TutorDto()
            {
                DateofEmployeement = result.CreatedDate,
                //LessonId = result.LessonId,
                TutorName = result.TutorName,
                UserName  = tutorUserResult.UserName,
                MobileNo  = tutorUserResult.MobileNumber,
                Id        = result.Id
            };

            var tempView = Mapper.Map <TutorDto>(tutorDto);

            return(View(@"Components/_AddEditTutor", tempView));
        }
Пример #2
0
        public async Task <IActionResult> EditPassword(TutorDto model)
        {
            using (var txscope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled))
            {
                try
                {
                    var result     = _tutorService.GetSingle(x => x.Id == model.Id);
                    var userResult = _userService.GetSingle(x => x.Id == result.UserId);
                    userResult.PasswordHash = model.TutorPassword;
                    var updateResult = await _userService.UpdateAsync(userResult, Accessor, User.GetUserId());

                    if (updateResult != null)
                    {
                        //StaffLog
                        if (User.IsInRole(UserRoles.Staff))
                        {
                            await _staffLog.InsertAsync(new Log { CreatedDate = DateTime.UtcNow, StaffId = User.GetUserId(), Description = ResponseConstants.UpdateTutorPassword }, Accessor, User.GetUserId());
                        }
                        txscope.Complete();
                        return(JsonResponse.GenerateJsonResult(1, ResponseConstants.UpdateTutorPassword));
                    }
                    else
                    {
                        txscope.Dispose();
                        return(JsonResponse.GenerateJsonResult(0, ResponseConstants.SomethingWrong));
                    }
                }
                catch (Exception ex)
                {
                    txscope.Dispose();
                    ErrorLog.AddErrorLog(ex, "EditStudentPassword");
                    return(JsonResponse.GenerateJsonResult(0, ResponseConstants.SomethingWrong));
                }
            }
        }
Пример #3
0
        public IActionResult _EditPassword(long id)
        {
            var tutorDto = new TutorDto()
            {
                Id = id
            };

            return(View(@"Components/_EditPassword", tutorDto));
        }
Пример #4
0
        public IActionResult TutorProfile(long id)
        {
            var result          = _tutorService.GetSingle(x => x.Id == id);
            var tutorUserResult = _userService.GetSingle(x => x.Id == result.UserId);
            var tutorDto        = new TutorDto()
            {
                TutorName = result.TutorName,
                UserName  = tutorUserResult.UserName,
                IsActive  = result.IsActive,
                Id        = result.Id
            };
            var tempView = Mapper.Map <TutorDto>(tutorDto);

            return(View("TutorProfile", tempView));
        }
Пример #5
0
        public IActionResult _EditLesson(long id)
        {
            var result   = _tutorService.GetSingle(x => x.Id == id);
            var tutorDto = new TutorDto();
            //var relevantLessonResult = _relevantLessonService.GetAll().Where(y => y.TutorId == result.Id);

            //List<long> lessonList = new List<long>();
            //foreach (var item in relevantLessonResult)
            //{
            //    lessonList.Add(item.LessonId);
            //}
            //BindLessonList(lessonList);
            var lessonidList = _relevantLessonService.GetAll(x => x.TutorId == result.Id).Select(x => x.LessonId).ToList();

            tutorDto = new TutorDto()
            {
                Id             = id,
                RelevantLesson = string.Join(",", lessonidList)
            };
            return(View(@"Components/_EditLesson", tutorDto));
        }
Пример #6
0
        public async Task <IActionResult> EditLesson(TutorDto model)
        {
            using (var txscope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled))
            {
                try
                {
                    //string[] lessonIds = model.RelevantLesson.Split(",");
                    List <long> lessonIds = JsonConvert.DeserializeObject <List <long> >(model.RelevantLesson);

                    var relevantTutor = _relevantLessonService.GetAll().Where(x => x.TutorId == model.Id).ToList();
                    foreach (var item in relevantTutor)
                    {
                        await _relevantLessonService.DeleteAsync(item, Accessor, User.GetUserId());
                    }
                    foreach (var lesson in lessonIds)
                    {
                        var relevantLessonData = new RelevantLessonDto()
                        {
                            TutorId  = model.Id,
                            LessonId = lesson
                        };
                        var relevantLessonObj    = Mapper.Map <TutorRelevantLesson>(relevantLessonData);
                        var relevantLessonResult = await _relevantLessonService.InsertAsync(relevantLessonObj, Accessor, User.GetUserId());
                    }
                    //StaffLog
                    if (User.IsInRole(UserRoles.Staff))
                    {
                        await _staffLog.InsertAsync(new Log { CreatedDate = DateTime.UtcNow, StaffId = User.GetUserId(), Description = ResponseConstants.UpdateTutorRelevantLesson }, Accessor, User.GetUserId());
                    }
                    txscope.Complete();
                    return(JsonResponse.GenerateJsonResult(1, ResponseConstants.UpdateTutorRelevantLesson));
                }
                catch (Exception ex)
                {
                    txscope.Dispose();
                    ErrorLog.AddErrorLog(ex, "EditStudentPassword");
                    return(JsonResponse.GenerateJsonResult(0, ResponseConstants.SomethingWrong));
                }
            }
        }
Пример #7
0
        public async Task <IActionResult> AddEditTutor(TutorDto model)
        {
            using (var txscope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled))
            {
                try
                {
                    if (!ModelState.IsValid)
                    {
                        txscope.Dispose();
                        ErrorLog.AddErrorLog(new Exception("ModelStateIsValid"), "CreateTutor");
                        return(RedirectToAction(@"Components/_AddEditTutor", model.Id));
                    }

                    if (model.Id == 0)
                    {
                        if (!string.IsNullOrEmpty(model.UserName))
                        {
                            bool userExist = UserNameExists(model.UserName);
                            if (userExist == true)
                            {
                                txscope.Dispose();
                                return(JsonResponse.GenerateJsonResult(3, ResponseConstants.TutorUserExist));
                            }
                        }
                        if (!string.IsNullOrEmpty(model.MobileNo))
                        {
                            bool mobileNoExist = MobileNoExists(model.MobileNo);
                            if (mobileNoExist == true)
                            {
                                txscope.Dispose();
                                return(JsonResponse.GenerateJsonResult(3, ResponseConstants.MobileNoExist));
                            }
                        }
                        //Created by company Tutor
                        ApplicationUser tutorUser = new ApplicationUser();
                        tutorUser.UserName     = model.UserName;
                        tutorUser.MobileNumber = model.MobileNo;
                        tutorUser.IsActive     = true;
                        var createStudentUser = await _userManager.CreateAsync(tutorUser, model.TutorPassword);

                        if (createStudentUser.Succeeded)
                        {
                            var isRoleAssined = await _userManager.AddToRoleAsync(tutorUser, UserRoles.Tutor);

                            var tutorObj = Mapper.Map <Tutors>(model);
                            tutorObj.CreatedDate = model.DateofEmployeement;
                            tutorObj.IsActive    = true;
                            tutorObj.UserId      = tutorUser.Id;
                            var result = await _tutorService.InsertAsync(tutorObj, Accessor, User.GetUserId());

                            if (result != null)
                            {
                                List <long> lessonIds = JsonConvert.DeserializeObject <List <long> >(model.RelevantLesson);
                                // string[] lessonIds = model.RelevantLesson.Split(",");
                                foreach (var lesson in lessonIds)
                                {
                                    var relevantLessonData = new RelevantLessonDto()
                                    {
                                        TutorId  = result.Id,
                                        LessonId = lesson
                                    };
                                    var relevantLessonObj    = Mapper.Map <TutorRelevantLesson>(relevantLessonData);
                                    var relevantLessonResult = await _relevantLessonService.InsertAsync(relevantLessonObj, Accessor, User.GetUserId());
                                }

                                //Staff Log
                                if (User.IsInRole(UserRoles.Staff))
                                {
                                    await _staffLog.InsertAsync(new Log { CreatedDate = DateTime.UtcNow, StaffId = User.GetUserId(), Description = ResponseConstants.CreateNewTutor }, Accessor, User.GetUserId());
                                }
                                txscope.Complete();
                                return(JsonResponse.GenerateJsonResult(1, ResponseConstants.CreateNewTutor));
                            }
                        }
                    }

                    else if (model != null)
                    {
                        var result = await _tutorService.GetSingleAsync(x => x.Id == model.Id);

                        result.TutorName = model.TutorName;
                        await _tutorService.UpdateAsync(result, Accessor, User.GetUserId());

                        var tutorUserObj = await _userService.GetSingleAsync(x => x.Id == model.Id);

                        tutorUserObj.UserName     = model.UserName;
                        tutorUserObj.MobileNumber = model.MobileNo;
                        await _userService.UpdateAsync(tutorUserObj, Accessor, User.GetUserId());

                        string[] lessonIds     = model.RelevantLesson.Split(",");
                        var      relevantTutor = _relevantLessonService.GetAll().Where(x => x.TutorId == model.Id).ToList();
                        foreach (var item in relevantTutor)
                        {
                            await _relevantLessonService.DeleteAsync(item, Accessor, User.GetUserId());
                        }
                        foreach (string lesson in lessonIds)
                        {
                            var relevantLessonData = new RelevantLessonDto()
                            {
                                TutorId  = result.Id,
                                LessonId = Convert.ToInt64(lesson)
                            };
                            var relevantLessonObj    = Mapper.Map <TutorRelevantLesson>(relevantLessonData);
                            var relevantLessonResult = await _relevantLessonService.InsertAsync(relevantLessonObj, Accessor, User.GetUserId());
                        }
                        //Staff Log
                        if (User.IsInRole(UserRoles.Staff))
                        {
                            await _staffLog.InsertAsync(new Log { CreatedDate = DateTime.UtcNow, StaffId = User.GetUserId(), Description = ResponseConstants.UpdateTutor }, Accessor, User.GetUserId());
                        }

                        txscope.Complete();
                        return(JsonResponse.GenerateJsonResult(1, ResponseConstants.UpdateTutor));
                    }
                    else
                    {
                        txscope.Dispose();
                        return(JsonResponse.GenerateJsonResult(0, ResponseConstants.SomethingWrong));
                    }

                    txscope.Dispose();
                    return(JsonResponse.GenerateJsonResult(0, ResponseConstants.SomethingWrong));
                }
                catch (Exception ex)
                {
                    txscope.Dispose();
                    ErrorLog.AddErrorLog(ex, "CreateTutor");
                    return(JsonResponse.GenerateJsonResult(0, ResponseConstants.SomethingWrong));
                }
            }
        }