public ActionResult Search()
        {
            StatusDTO <List <UserMasterDTO> > status = _userSvc.Select(null);

            UserVM userView = userView = new UserVM();

            userView.GenderList = _uiddlRepo.getGenderDropDown();
            if (status != null && status.ReturnObj != null && status.ReturnObj.Count > 0)
            {
                userView.IsSearchSuccessful = true;                // Grid is displayed with records
                userView.UserList           = new List <UserVM>(); // instantiating list of Students

                //Fetch the Gender List

                if (status.IsSuccess && !status.IsException)
                {
                    UserVM searchItem = null;

                    foreach (UserMasterDTO user in status.ReturnObj)
                    {
                        if (user != null)
                        {
                            searchItem = new UserVM(); // instantiating each user

                            searchItem.UserMasterId = user.UserMasterId;
                            searchItem.FName        = user.FName;
                            searchItem.MName        = user.MName;
                            searchItem.LName        = user.LName;

                            //forming the Name
                            searchItem.Name = searchItem.FName;
                            if (!string.IsNullOrEmpty(searchItem.MName))
                            {
                                searchItem.Name = searchItem.Name + " " + searchItem.MName;
                            }
                            searchItem.Name = searchItem.Name + " " + searchItem.LName;

                            searchItem.Gender             = user.Gender;
                            searchItem.EmailId            = user.EmailId;
                            searchItem.ResidentialAddress = user.ResidentialAddress;
                            searchItem.PermanentAddress   = user.PermanentAddress;
                            searchItem.ContactNo          = user.ContactNo;
                            searchItem.AltContactNo       = user.AltContactNo;
                            searchItem.BloodGroup         = user.BloodGroup;

                            searchItem.Role = new RoleDTO();
                            searchItem.Role.RoleDescription = user.Role.RoleDescription;


                            userView.UserList.Add(searchItem);
                            userView.IsSearchSuccessful = true;
                        }
                    }
                }
                else if (status.IsException)
                {
                    throw new Exception(status.ExceptionMessage);
                }
            }

            return(View(userView));
        }
        public ActionResult Register(string mode, string id)
        {
            Models.UserViewModel uvModel = new Models.UserViewModel();
            uvModel.MODE          = mode;
            uvModel.DisabledClass = string.Empty;
            if (string.Equals(mode, "EDIT", StringComparison.OrdinalIgnoreCase) || string.Equals(mode, "VIEW", StringComparison.OrdinalIgnoreCase))
            {
                uvModel.UserMasterId = int.Parse(id);
            }
            if (string.Equals(mode, "VIEW", StringComparison.OrdinalIgnoreCase))
            {
                uvModel.DisabledClass = "disabledPlace";
            }
            if (mode != null && string.Equals(mode, "EDIT", StringComparison.OrdinalIgnoreCase) || string.Equals(mode, "VIEW", StringComparison.OrdinalIgnoreCase))
            {
                //Populate edit data using id passed in URL, if id==null then show error message
                StatusDTO <UserMasterDTO> dto = _userSvc.Select(Convert.ToInt32(id));
                uvModel.UserMasterId = dto.ReturnObj.UserMasterId;
                //uvModel.UserMasterId = dto.ReturnObj.UserMasterId;
                uvModel.FName                 = dto.ReturnObj.FName;
                uvModel.MName                 = dto.ReturnObj.MName;
                uvModel.LName                 = dto.ReturnObj.LName;
                uvModel.Gender                = dto.ReturnObj.Gender;
                uvModel.Image                 = dto.ReturnObj.Image;
                uvModel.DOB                   = dto.ReturnObj.DOB;
                uvModel.DOBString             = uvModel.DOB.HasValue ? uvModel.DOB.Value.ToString("dd-MMM-yyyy") : string.Empty;
                uvModel.EmailId               = dto.ReturnObj.EmailId;
                uvModel.ResidentialAddress    = dto.ReturnObj.ResidentialAddress;
                uvModel.PermanentAddress      = dto.ReturnObj.PermanentAddress;
                uvModel.ContactNo             = dto.ReturnObj.ContactNo;
                uvModel.AltContactNo          = dto.ReturnObj.AltContactNo;
                uvModel.BloodGroup            = dto.ReturnObj.BloodGroup;
                uvModel.Location              = dto.ReturnObj.Location;
                uvModel.Role                  = dto.ReturnObj.Role;
                uvModel.UserEntitlementList   = _userSvc.GetUserEntitlement(dto.ReturnObj.UserMasterId);
                uvModel.SelectUserEntitlement = _ddlRepo.GetUserRole();
                uvModel.Subject               = _ddlRepo.Subject();

                uvModel.Employee = new EmployeeDetailsDTO();
                if (dto.ReturnObj.Employee != null)
                {
                    uvModel.Employee.EmployeeId = dto.ReturnObj.Employee.EmployeeId;
                    uvModel.hdnEmployeeId       = dto.ReturnObj.Employee.EmployeeId;
                    uvModel.Employee.EducationalQualification = dto.ReturnObj.Employee.EducationalQualification;
                    uvModel.Employee.DateOfJoining            = dto.ReturnObj.Employee.DateOfJoining;

                    uvModel.DOJString = uvModel.Employee.DateOfJoining.HasValue ? uvModel.Employee.DateOfJoining.Value.ToString("dd-MMM-yyyy") : string.Empty;

                    uvModel.Employee.StaffEmployeeId = dto.ReturnObj.Employee.StaffEmployeeId;
                    uvModel.Employee.Department      = dto.ReturnObj.Employee.Department;
                    uvModel.Employee.Designation     = dto.ReturnObj.Employee.Designation;

                    uvModel.FacultyCourseList = _userSvc.GetFacultyCourseMap(dto.ReturnObj.Employee.EmployeeId);
                    if (dto.ReturnObj.Employee.ClassType != null)
                    {
                        uvModel.Employee.ClassType = dto.ReturnObj.Employee.ClassType;
                    }

                    string employeeImageFolder = _configSvc.GetEmployeeImagesFolder();

                    uvModel.employeeimagepath = _configSvc.GetEmployeeImagesRelPath() + "/" + GetImageFileName(uvModel.Employee.StaffEmployeeId, employeeImageFolder);
                    //if(dto.ReturnObj.Employee.ClassType != null)
                    //{
                    //    uvModel.Employee.Subject = dto.ReturnObj.Employee.Subject;
                    //}
                }
            }

            uvModel.GenderList            = _uiddlRepo.getGenderDropDown();
            uvModel.LocationList          = _uiddlRepo.getLocationDropDown();
            uvModel.RoleList              = _uiddlRepo.getRoleDropDown();
            uvModel.DepartmentList        = _uiddlRepo.getDepartmentDropDown();
            uvModel.DesignationList       = _uiddlRepo.getDesignationDropDown();
            uvModel.SelectUserEntitlement = _ddlRepo.GetUserRole();
            uvModel.ClassTypeList         = _uiddlRepo.getClassTypeDropDown();
            //uvModel.SubjectList = _uiddlRepo.getSubjectDropDown();

            return(View(uvModel));
        }
        public ActionResult Register(string mode, string id)
        {
            Models.StudentVM studView = new Models.StudentVM();
            studView.UserDetails   = new UserMasterDTO();
            studView.MODE          = mode;
            studView.DisabledClass = "";
            if (string.Equals(mode, "EDIT", StringComparison.OrdinalIgnoreCase))
            {
                studView.UserDetails.UserMasterId = int.Parse(id);
            }
            if (string.Equals(mode, "VIEW", StringComparison.OrdinalIgnoreCase))
            {
                studView.DisabledClass = "disabledPlace";
            }
            studView.Transactions = new List <UserTransactionDTO>();
            if (mode != null && (string.Equals(mode, "EDIT", StringComparison.OrdinalIgnoreCase) || string.Equals(mode, "VIEW", StringComparison.OrdinalIgnoreCase)))
            {
                //Populate edit data using id passed in URL, if id==null then show error message
                StatusDTO <StudentDTO> dto = _studSvc.Select(Convert.ToInt32(id));
                studView.UserDetails = new UserMasterDTO();
                studView.UserDetails.UserMasterId = dto.ReturnObj.UserDetails.UserMasterId;
                //uvModel.UserMasterId = dto.ReturnObj.UserMasterId;
                studView.UserDetails.FName              = dto.ReturnObj.UserDetails.FName;
                studView.UserDetails.MName              = dto.ReturnObj.UserDetails.MName;
                studView.UserDetails.LName              = dto.ReturnObj.UserDetails.LName;
                studView.UserDetails.Gender             = dto.ReturnObj.UserDetails.Gender;
                studView.UserDetails.Image              = dto.ReturnObj.UserDetails.Image;
                studView.UserDetails.DOB                = dto.ReturnObj.UserDetails.DOB;
                studView.DOBString                      = studView.UserDetails.DOB.HasValue ? studView.UserDetails.DOB.Value.ToString("dd-MMM-yyyy") : string.Empty;
                studView.UserDetails.EmailId            = dto.ReturnObj.UserDetails.EmailId;
                studView.UserDetails.ResidentialAddress = dto.ReturnObj.UserDetails.ResidentialAddress;
                studView.UserDetails.PermanentAddress   = dto.ReturnObj.UserDetails.PermanentAddress;
                studView.UserDetails.ContactNo          = dto.ReturnObj.UserDetails.ContactNo;
                studView.UserDetails.AltContactNo       = dto.ReturnObj.UserDetails.AltContactNo;
                studView.UserDetails.BloodGroup         = dto.ReturnObj.UserDetails.BloodGroup;
                studView.UserDetails.Location           = dto.ReturnObj.UserDetails.Location;
                studView.UserDetails.Role               = dto.ReturnObj.UserDetails.Role;

                //studView.Student = new StudentDTO();
                studView.RollNumber             = dto.ReturnObj.RollNumber;
                studView.RegistrationNumber     = dto.ReturnObj.RegistrationNumber;
                studView.AdmissionDate          = dto.ReturnObj.AdmissionDate;
                studView.FatherContact          = dto.ReturnObj.FatherContact;
                studView.GuardianName           = dto.ReturnObj.GuardianName;
                studView.FatherEmailId          = dto.ReturnObj.FatherEmailId;
                studView.HouseType              = dto.ReturnObj.HouseType;
                studView.StandardSectionMap     = dto.ReturnObj.StandardSectionMap;
                studView.FatherName             = dto.ReturnObj.FatherName;
                studView.FatherQualification    = dto.ReturnObj.FatherQualification;
                studView.FatherOccupation       = dto.ReturnObj.FatherOccupation;
                studView.FatherDesignation      = dto.ReturnObj.FatherDesignation;
                studView.FatherOrganisationName = dto.ReturnObj.FatherOrganisationName;
                studView.MotherName             = dto.ReturnObj.MotherName;
                studView.MotherQualification    = dto.ReturnObj.MotherQualification;
                studView.MotherOccupation       = dto.ReturnObj.MotherOccupation;
                studView.MotherAnnualIncome     = dto.ReturnObj.MotherAnnualIncome;
                studView.MotherOrganisationName = dto.ReturnObj.MotherOrganisationName;
                studView.IsChristian            = dto.ReturnObj.IsChristian;
                studView.IsParentTeacher        = dto.ReturnObj.IsParentTeacher;
                studView.SubjectNameTheyTeach   = dto.ReturnObj.SubjectNameTheyTeach;
                studView.IsParentFromEngMedium  = dto.ReturnObj.IsParentFromEngMedium;
                studView.IsJointOrNuclearFamily = dto.ReturnObj.IsJointOrNuclearFamily;
                studView.SiblingsInStadOrNot    = dto.ReturnObj.SiblingsInStadOrNot;
                studView.AnyAlumuniMember       = dto.ReturnObj.AnyAlumuniMember;
                studView.StuInPrivateTution     = dto.ReturnObj.StuInPrivateTution;
                studView.NoOfTution             = dto.ReturnObj.NoOfTution;
                studView.FeesPaidForTution      = dto.ReturnObj.FeesPaidForTution;

                studView.Transactions       = _userTrans.GetUserTransactions(dto.ReturnObj.UserDetails.UserMasterId);
                studView.TransactionMasters = _uiddlRepo.getTransactionMasters();


                string studentImageFolder = _configSvc.GetStudentImagesFolder();
                string fatherImageFolder  = _configSvc.GetFatherImagesFolder();
                string motherImageFolder  = _configSvc.GetMotherImagesFolder();

                studView.StudentImagePath = _configSvc.GetStudentImagesRelPath() + "/" + GetImageFileName(studView.RegistrationNumber, studentImageFolder);
                studView.FatherImagePath  = _configSvc.GetFatherImagesRelPath() + "/" + GetImageFileName(studView.RegistrationNumber, fatherImageFolder);
                studView.MotherImagePath  = _configSvc.GetMotherImagesRelPath() + "/" + GetImageFileName(studView.RegistrationNumber, motherImageFolder);
            }

            //studView.Transactions = _userTrans.GetUserTransactions(dto.ReturnObj.UserDetails.UserMasterId);
            studView.TransactionMasters = _uiddlRepo.getTransactionMasters();

            studView.CalcInSelectList            = _uiddlRepo.getCalcTypeDic();
            studView.TransactionMasterSelectList = _dropDwnRepo.GetTransactionMasters();

            studView.GenderList               = _uiddlRepo.getGenderDropDown();
            studView.LocationList             = _uiddlRepo.getLocationDropDown();
            studView.RoleList                 = _uiddlRepo.getRoleDropDown();
            studView.ClassTypeList            = _uiddlRepo.getClassTypeDropDown();
            studView.SectionList              = _uiddlRepo.getSectionDropDown();
            studView.HouseList                = _uiddlRepo.getHouseDropDown();
            studView.IsChristianList          = _uiddlRepo.getSelectValueDropDown();
            studView.IsParentTeacherList      = _uiddlRepo.getSelectValueDropDown();
            studView.IsParentFromEngMedList   = _uiddlRepo.getSelectValueDropDown();
            studView.JointOrNuclearFamilyList = _uiddlRepo.getSelectJointNuclearDropDown();
            studView.SiblingsInStdOrNotList   = _uiddlRepo.getSelectValueDropDown();
            studView.AnyAlumunimemberList     = _uiddlRepo.getSelectValueDropDown();
            studView.StudentinPvtTutionList   = _uiddlRepo.getSelectValueDropDown();

            //uvModel.BookCategoryList = _uiddlRepo.getBookCategoryDropDown();
            //uvModel.DepartmentList = _uiddlRepo.getDepartmentDropDown();
            //uvModel.DesignationList = _uiddlRepo.getDesignationDropDown();
            studView.StandardSectionList = _uiddlRepo.getStandardSectionDropDown();
            studView.GraceAmountOnList   = _uiddlRepo.getCalcType();



            return(View(studView));
        }