internal RespIsTutor IsApprovedTutor(Entity objRequest) { RespIsTutor response = new RespIsTutor(); using (var db = new WizzDataContext()) { var tutor = db.tblTutorProfiles.Where(u => u.fkUserId == Convert.ToInt64(objRequest.userId)).FirstOrDefault(); if (tutor != null) { if (tutor.isApproved == false) { response.isApproved = "False"; } else { response.isApproved = "True"; } response.privateCost = tutor.feesPerHour.ToString(); } else { response.isApproved = "False"; response.isTutor = "False"; } } return response; }
/// <summary> /// New method like get settings /// <developer>Rishabh</developer> /// </summary> /// <param name="objRequest"></param> /// <returns></returns> internal GetSettingsModel GetAllActivitesData(ReqSetting objRequest) { //System.Data.Entity.Core.Objects.ObjectParameter UpdatedLastSyncTime = new System.Data.Entity.Core.Objects.ObjectParameter("UpdatedLastSyncTime", typeof(string)); // string UpdatedLastSyncTime = ""; GetSettingsModel response = new GetSettingsModel(); using (var db = new WizzDataContext()) { var courseData = db.tblCourses.Where(a => a.isDelete == false && a.isActive == true).ToList(); var classes = db.tblClasses.Where(a => a.isActive == true && a.isDelete != true).ToList(); var subjects = db.tblSubjects.Where(a => a.isActive == true && a.isDelete != true).ToList(); response.listAcademicCourse = (from c in courseData.Where(a => a.isExtraCurricular == false) select new AcademicCoursesModel { courseId = Convert.ToString(c.pkId), courseName = c.courseName, listClasses = (from cl in classes.Where(a => a.fkCourseId == c.pkId) select new ClassesModel { classId = Convert.ToString(cl.pkId), className = cl.className, listSubejcts = (from sub in subjects.Where(a => a.fkClassId == cl.pkId) select new SubjectsNewModel { subjectId = Convert.ToString(sub.pkId), subjectName = sub.subjectName, }).ToList() }).ToList() }).ToList(); response.listCurricularCourses = (from c in courseData.Where(a => a.isExtraCurricular == true) select new CurricularCoursesModel { courseId = Convert.ToString(c.pkId), courseName = c.courseName, listClasses = (from cl in classes.Where(a => a.fkCourseId == c.pkId) select new ClassesModel { classId = Convert.ToString(cl.pkId), className = cl.className, listSubejcts = (from sub in subjects.Where(a => a.fkClassId == cl.pkId) select new SubjectsNewModel { subjectId = Convert.ToString(sub.pkId), subjectName = sub.subjectName, }).ToList() }).ToList() }).ToList(); } return response; }
internal int SavePaymentDetails(StripePaymentModel objReq) { using (var db = new WizzDataContext()) { try { // return 1; if (db.tblPaymentDetails.Any(x => x.sessionId == Convert.ToInt64(objReq.sessionId) && x.isSuccess == true && x.studentId == Convert.ToInt64(objReq.userId))) { return 2; } else { var sessionData = db.tblSessions.Where(x => x.pkSessionId == Convert.ToInt64(objReq.sessionId)).FirstOrDefault(); tblPaymentDetail paymentData = new tblPaymentDetail(); paymentData.studentId = Convert.ToInt64(objReq.userId); paymentData.sessionId = Convert.ToInt64(objReq.sessionId); paymentData.tutorId = Convert.ToInt64(sessionData.tutorId); paymentData.transactionId = objReq.transactionId; paymentData.isSuccess = true; paymentData.createdDate = DateTime.UtcNow; paymentData.paymentType = Convert.ToInt16(objReq.paymentType); db.tblPaymentDetails.InsertOnSubmit(paymentData); // var requestData = db.tblSessions.Where(x => x.hasPaid == false && x.uniqueRequestId == objReq.uniqueRequestId).FirstOrDefault(); //if (requestData == null) // return 2; //requestData.hasPaid = true; db.SubmitChanges(); return 1; } } catch (TimeoutException e) { return 3; } catch (Exception e) { return 0; } } }
internal StripeModel GetStripeInfo(Entity objReq) { using (var db = new WizzDataContext()) { var userData = db.tblUsers.Where(x => x.pkUserId == Convert.ToInt64(objReq.userId)).FirstOrDefault(); StripeModel objStripe = new StripeModel(); objStripe.stripeAcKey = userData.stripeId; objStripe.stripeLiveKey = Constants.stripeLiveKey; objStripe.stripeSecretKey = Constants.stripeSecretKey; return objStripe; } }
internal bool SaveStripeDetails(StripeModel objReq) { using (var db = new WizzDataContext()) { tblUser userData = new tblUser(); userData = db.tblUsers.Where(x => x.pkUserId == Convert.ToInt64(objReq.userId)).FirstOrDefault(); userData.stripeId = objReq.stripeAcKey; db.SubmitChanges(); return true; } }
internal string adminLogin(AdminModel objReq) { string i = "0"; try { using (var db = new WizzDataContext()) { tblUser admin = new tblUser(); if (objReq != null) { admin = db.tblUsers.Where(e => e.userEmail == objReq.email && e.registerType == 1).FirstOrDefault(); if (admin != null) { if (objReq.password.ToLower() == admin.password) { i = "loggedIn"; CurrentUser user = new CurrentUser() { PkUserId = Convert.ToString(admin.pkUserId), Email = admin.userEmail, isActive = Convert.ToString(admin.isActive), usertype = Convert.ToString(admin.registerType), }; string json = JsonConvert.SerializeObject(user); FormsAuthentication.SetAuthCookie(json, true); } else { i = "Invalid password !"; } } else { i = "The Email Id is not registered with us !"; } } return i; } } catch (Exception ex) { i = ex.ToString(); return i; } }
internal RespIsTeacherRequest isTeacher(IsTeacherRequest objReq) { var isTutor = Convert.ToBoolean(objReq.isTutor); RespIsTeacherRequest response = new RespIsTeacherRequest(); response.isAlreadySignup = "False"; using (var db = new WizzDataContext()) { tblUser tUser = new tblUser(); int fkuserid = Convert.ToInt32(objReq.userId); tUser = db.tblUsers.Where(x => x.pkUserId == fkuserid).FirstOrDefault(); if (tUser == null) response.isTutor="False"; // return false; else { var tutor = db.tblTutorProfiles.Where(t => t.fkUserId == fkuserid).FirstOrDefault(); //check already signup or not if (tutor==null) { response.isAlreadySignup = "False"; } else { response.isAlreadySignup = "True"; } if (tutor == null && objReq.isTutor=="True") { response.isAlreadySignup = "False"; } else { response.isTutor = isTutor.ToString(); tUser.isTeacher = isTutor; db.SubmitChanges(); } // return true; } } return response; }
internal List<ResponseTutorSubjects> GetSubjectsForTutor(Entity objReq) { using (var db = new WizzDataContext()) { List<ResponseTutorSubjects> objResponse = new List<ResponseTutorSubjects>(); objResponse = (from t in db.usp_GetSubjectsForTutor(Convert.ToInt32(objReq.userId)) select new ResponseTutorSubjects { subjectName = t.subjectName, isApproved = Convert.ToString(t.isApproved), subjectId = Convert.ToString(t.subjectId), isApplied = Convert.ToString(t.isApplied) }).ToList(); return objResponse; } }
internal int ChangePassword(AdminChangePassword objReq) { using (var db = new WizzDataContext()) { tblUser tUser = new tblUser(); CurrentUser cu = new CurrentUser(); tUser = db.tblUsers.Where(x => x.pkUserId == Convert.ToInt32(cu.PkUserId)).FirstOrDefault(); if (tUser.password != objReq.oldPassword) return 0; else { tUser.password = objReq.newPassword.Trim(); db.SubmitChanges(); return 1; } } }
internal static string isReferralCodeExists(string userName) { string uniqueReferralCode = "WIZZ" + userName.Substring(0, 2) + System.Guid.NewGuid().ToString().Substring(0, 4); using (var db = new WizzDataContext()) { if (db.tblUsers.Any(x => x.referralCode == uniqueReferralCode)) { return isReferralCodeExists(userName); } else { return uniqueReferralCode; } } }
internal bool SaveCardInfo(PaymentInfo objReq) { using (var db = new WizzDataContext()) { bool update = true; tblCardDetail objCard = new tblCardDetail(); long userpkId=Convert.ToInt64(objReq.userId); objCard = db.tblCardDetails.Where(c => c.fkUserId == userpkId).FirstOrDefault(); if (objCard == null) { update = false; objCard = new tblCardDetail(); } //objCard.paymentType = Convert.ToInt16(objReq.paymentType); objCard.cardType = objReq.cardType; objCard.createdDate = DateTime.UtcNow; objCard.digitCvv = objReq.digitCvv.Trim(); objCard.cardHolderName = objReq.cardHolderName == null ? "" : objReq.cardHolderName; objCard.cardNumber = objReq.cardNumber; objCard.bankName = objReq.bankName == null ? "" : objReq.bankName; objCard.fkUserId = userpkId; objCard.lastFour = Convert.ToInt32(objReq.lastFour); objCard.isActive = true; objCard.isDelete = false; objCard.validMonth = objReq.validMonth.Trim(); objCard.validYear = objReq.validYear.Trim(); try { if (!update) db.tblCardDetails.InsertOnSubmit(objCard); db.SubmitChanges(); return true; } catch(Exception ex) { return false; } } }
internal List<TutorModel> GetTutors(Entity objRequest) { List<TutorModel> response = new List<TutorModel>(); using (var db = new WizzDataContext()) { //response = (from t in db.usp_GetTutors() // select new TutorModel // { // tutorId = SqlFunctions.StringConvert((double)t.tutorId), // rating = SqlFunctions.StringConvert((double)t.avgRatingTutor), // tutorName=t.userName, // desc=t.description, // tutorImage = Constants.imagepath + (t.profilePic == null ? "" : t.profilePic.IndexOf("http") >= 0 ? t.profilePic : Constants.imagepath+t.profilePic) // }).ToList(); } return response; }
///this method will called once in a day internal void ChorneJob() { using (var db = new WizzDataContext()) { var tutorList = db.usp_GetPendingRequest().ToList(); if(tutorList!=null&&tutorList.Count>0) { foreach(var item in tutorList ) { if(!string.IsNullOrEmpty(item.devicetoken)) { PushData push = new PushData(); push.registration_ids = item.devicetoken; push.badge = Convert.ToString(item.badge); push.message = PushMessages.cron; if(item.devicetype==Convert.ToInt16(DeviceType.ios)) { SendPush objIOS = new SendPush(); objIOS.ConnectToAPNS(push); } else if (item.devicetype == Convert.ToInt16(DeviceType.android))//android { Android objAndroid = new Android(); objAndroid.send(push); } } } } } }
internal int ChangePassword(ChangePasswordModel objReq) { using (var db = new WizzDataContext()) { tblUser tUser = new tblUser(); int fkuserid = Convert.ToInt32(objReq.userId); tUser = db.tblUsers.Where(x => x.pkUserId == fkuserid).FirstOrDefault(); if (tUser == null) return 0; else if (tUser.isActive == false || tUser.isDelete == true) return 2; else if (tUser.password != objReq.oldPassword) return 3; else { tUser.password = objReq.Password.Trim(); db.SubmitChanges(); return 1; } } }
internal int ApplyPromoCode(PromoCodeReq objReq) { try { using (var db = new WizzDataContext()) { tblPromoCode promoCodeData = new tblPromoCode(); long fkUserId = Convert.ToInt64(objReq.userId); promoCodeData = db.tblPromoCodes.Where(p => p.promoCode == objReq.promocode && p.isDelete == false).FirstOrDefault(); if (promoCodeData == null) return 0; else if (DateTime.UtcNow.IsBetween(promoCodeData.validFrom.Value, promoCodeData.validTo.Value) || promoCodeData.isActive == false) return 3; else if (db.tblPromoHistories.Any(d => d.fkUserId == fkUserId && d.fkPromoCodeId == promoCodeData.pkPromoCodeId)) return 2; else if (db.tblPromoHistories.Count(x => x.fkPromoCodeId == promoCodeData.pkPromoCodeId) > promoCodeData.usageCount) return 3; else { tblPromoHistory objHistory = new tblPromoHistory(); objHistory.fkPromoCodeId = promoCodeData.pkPromoCodeId; objHistory.createdDate = DateTime.UtcNow; objHistory.fkUserId = Convert.ToInt64(objReq.userId); db.tblPromoHistories.InsertOnSubmit(objHistory); // tblUser userDetails = new tblUser(); var userDetails = db.tblUsers.Where(u => u.pkUserId == fkUserId).FirstOrDefault(); userDetails.credits += Convert.ToInt32(promoCodeData.discountPercentage); db.SubmitChanges(); return 1; } } } catch (Exception e) { return 0; } }
internal bool SaveSubjectsForTutor(SubjectsListModel objReq) { using (var db = new WizzDataContext()) { int tutorId = Convert.ToInt32(objReq.userId); // List<tblTutorSubject> objSubject = new List<tblTutorSubject>(); var objSubjectDbList = db.usp_GetSubjectsForTutor(tutorId).ToList(); tblTutorSubject listObj = new tblTutorSubject(); if (objReq.subjectsIdList!=null&&objReq.subjectsIdList.Count != 0) { foreach (var n in objSubjectDbList) { var data = objReq.subjectsIdList.Where(x => x == Convert.ToString(n.subjectId)).FirstOrDefault(); //data is null and n.isadded false h means not in all list wont be added wont be deleted //data is null and n.isadded true h deleted from subject table // if not null then check is added if yes den leave //if not null and is added false insert //if not null and is added true then do nothing if (data == null && n.isApplied == "True") { var tutorSub = db.tblTutorSubjects.Where(x => x.fkSubjectId == n.subjectId&&x.fkTutorId==Convert.ToInt64(objReq.userId)).FirstOrDefault(); db.tblTutorSubjects.DeleteOnSubmit(tutorSub); db.SubmitChanges(); } else if (data != null) { if (n.isApplied == "False") { var tutorSub = new tblTutorSubject(); tutorSub.fkTutorId = Convert.ToInt64(objReq.userId); tutorSub.fkSubjectId = Convert.ToInt64(data); tutorSub.isApproved = false; db.tblTutorSubjects.InsertOnSubmit(tutorSub); db.SubmitChanges(); //insert with is approved false in tutorsubject } } } } return true; } }
private void SendSessionEndPushes(string sessionAmt, string uniqueRequestid, WizzDataContext db, long studentId, long sessionId, long tutorId) { var sessionStudents = db.tblInviteFriends.Where(x => x.uniqueRequestId == uniqueRequestid).ToList(); if (sessionStudents != null) { if (sessionStudents.Count == 0) { var studentData = db.tblUsers.Where(x => x.pkUserId == studentId).FirstOrDefault();//missed is tutor intentionally if (!string.IsNullOrEmpty(studentData.deviceToken)) { PushData push = new PushData() { registration_ids = studentData.deviceToken, uniqueRequestid = uniqueRequestid.ToString(), sessionId = sessionId.ToString(), tutorId = tutorId.ToString(), amount = Convert.ToString(sessionAmt), // userId = Convert.ToString(sessionData.fkTutorId), message = PushMessages.sessionEnd, type = Convert.ToInt16(PushType.sessionEnd).ToString(), badge = Convert.ToString(studentData.badge) }; // push.data = CommonMethod.ObjectToJson(objPush); if (studentData.deviceType == Convert.ToInt16(DeviceType.ios))//ios { SendPush objIOS = new SendPush(); objIOS.ConnectToAPNS(push); } else if (studentData.deviceType == Convert.ToInt16(DeviceType.android))//android { Android objAndroid = new Android(); objAndroid.send(push); } } } else { #region multiple pushes foreach (var n in sessionStudents) { if (n.fkFriendId == 0) continue; var studentData = db.tblUsers.Where(x => x.pkUserId == n.fkFriendId).FirstOrDefault();//missed is tutor intentionally if (!string.IsNullOrEmpty(studentData.deviceToken)) { PushData push = new PushData() { registration_ids = studentData.deviceToken, uniqueRequestid = uniqueRequestid.ToString(), amount = Convert.ToString(sessionAmt), // userId = Convert.ToString(sessionData.fkTutorId), message = PushMessages.sessionEnd, type = Convert.ToInt16(PushType.sessionEnd).ToString(), badge = Convert.ToString(studentData.badge), sessionId = sessionId.ToString() }; // push.data = CommonMethod.ObjectToJson(objPush); if (studentData.deviceType == Convert.ToInt16(DeviceType.ios))//ios { SendPush objIOS = new SendPush(); objIOS.ConnectToAPNS(push); } else if (studentData.deviceType == Convert.ToInt16(DeviceType.android))//android { Android objAndroid = new Android(); objAndroid.send(push); } } } #endregion } } }
internal bool SessionReviewByTutor(SessionReviewModel objReq) { using (var db = new WizzDataContext()) { var sessionData = db.tblSessions.Where(x => x.pkSessionId == Convert.ToInt64(objReq.sessionId)).FirstOrDefault(); if (Convert.ToBoolean(objReq.isreschedule))//if reschedule then homework and session notes is neccessary and than reschedule request { sessionData.homeWork = objReq.homeWork; sessionData.sessionNotes = objReq.sessionNotes; sessionData.isComplete = true; sessionData.sessionAmount = objReq.sessionCost; tblSession sessionObj = new tblSession(); sessionObj.createdDate = DateTime.UtcNow; sessionObj.fromTime = timeConversionMethod(objReq.fromTime); sessionObj.toTime = timeConversionMethod(objReq.toTime); sessionObj.uniqueRequestId = objReq.uniqueRequestId; sessionObj.dayType = Convert.ToInt16(objReq.dayType); sessionObj.isDelete = false; sessionObj.homeWork = objReq.homeWork; sessionObj.sessionNotes = objReq.sessionNotes; sessionObj.updatedDate = DateTime.UtcNow; sessionObj.studentId = Convert.ToInt64(objReq.studentId); sessionObj.tutorId = Convert.ToInt64(objReq.userId); //var studentData = db.tblStudentRequests.Where(x => x.uniqueStudentRequestId == objReq.uniqueRequestId).FirstOrDefault(); //tutorRating.avgRatingTutor = ((tutorRating.avgRatingTutor) + (rating.punctual + rating.knowledgable + rating.helpful) / 3) / 2; //studentData.lat = Convert.ToDouble(studentData); //studentData.longi = Convert.ToDouble(objReq.longitude); //studentData.location = Convert.ToString(objReq.location); db.tblSessions.InsertOnSubmit(sessionObj); } else { sessionData.homeWork = objReq.homeWork; sessionData.sessionNotes = objReq.sessionNotes; sessionData.isComplete = true; sessionData.sessionAmount = objReq.sessionCost; } var objUsers = db.tblInviteFriends.Where(x => x.uniqueRequestId == sessionData.uniqueRequestId).ToList(); if (objUsers.Count > 0) { foreach (var n in objUsers) { if (n.fkFriendId == Convert.ToInt32(objReq.userId) || n.isDelete == true) { continue; } var objUser = db.tblUsers.Where(x => x.pkUserId == Convert.ToInt64(n.fkFriendId)).FirstOrDefault(); objUser.avgRatingStudent = (Convert.ToDecimal(objUser.avgRatingStudent) + Convert.ToDecimal(objReq.rating)) / 2; db.SubmitChanges(); } } else { var objUser = db.tblUsers.Where(x => x.pkUserId == Convert.ToInt64(sessionData.studentId)).FirstOrDefault(); objUser.avgRatingStudent = (Convert.ToDecimal(objUser.avgRatingStudent) + Convert.ToDecimal(objReq.rating)) / 2; //db.SubmitChanges(); } db.SubmitChanges(); } //throw new NotImplementedException(); return true; }
internal bool UserLogout(ReqLogOut objReq) { using (var db = new WizzDataContext()) { tblUser tUser = new tblUser(); int fkuserid = Convert.ToInt32(objReq.userId); tUser = db.tblUsers.Where(x => x.pkUserId == fkuserid).FirstOrDefault(); if (tUser == null) return false; else { tUser.deviceToken = null; db.SubmitChanges(); return true; } } }
//internal int StudentRequest(StudentRequestModel objReq) //{ // using (var db = new WizzDataContext()) // { // var studentId = Convert.ToInt64(objReq.userId); // tblRequestStudent objStudent; // var requestUniqueId = Guid.NewGuid().ToString(); // if (objReq.isNow.ToLower()=="false"||String.IsNullOrEmpty(objReq.isNow)) // { // foreach (var n in objReq.listSlot) // { // objStudent = new tblRequestStudent(); // objStudent.latitude = Convert.ToDecimal(objReq.latitude); // objStudent.longitude = Convert.ToDecimal(objReq.longitude); // objStudent.forMinutes = Convert.ToInt32(objReq.totalMinutes); // objStudent.accompanyNum = Convert.ToInt16(objReq.accompanies); // objStudent.updatedDate = DateTime.UtcNow; // objStudent.createdDate = DateTime.UtcNow; // objStudent.day = Convert.ToInt16(n.dayNo); // objStudent.subjects = objReq.assignments; // objStudent.fkClassId = Convert.ToInt32(objReq.fkSubjectId); // objStudent.isActive = true; // objStudent.fromTime = n.fromTime; // objStudent.toTime = n.toTime; // objStudent.fkUserId = studentId; // objStudent.isDelete = false; // objStudent.isNow = false; // objStudent.TimeStamp = Convert.ToInt64(objReq.timeStamp); // objStudent.uniqueRequestId = requestUniqueId; // objStudent.calculatedAmount=Convert.ToInt32(objReq.calculatedAmount); // objStudent.location = objReq.location; // db.tblRequestStudents.InsertOnSubmit(objStudent); // db.SubmitChanges(); // } // } // else if (objReq.isNow.ToLower() == "true") // { // objStudent = new tblRequestStudent(); // objStudent.isNow = true; // objStudent.latitude = Convert.ToDecimal(objReq.latitude); // objStudent.longitude = Convert.ToDecimal(objReq.longitude); // objStudent.forMinutes = Convert.ToInt32(objReq.totalMinutes); // objStudent.accompanyNum = Convert.ToInt16(objReq.accompanies); // objStudent.fromTime = objReq.currentTime; // DateTime currentTime = Convert.ToDateTime(objReq.currentTime); // double minuts = Convert.ToDouble(objReq.totalMinutes); // currentTime = currentTime.AddMinutes(minuts); // objStudent.toTime = Convert.ToString(currentTime); // objStudent.updatedDate = DateTime.UtcNow; // objStudent.createdDate = DateTime.UtcNow; // objStudent.subjects = objReq.assignments; // objStudent.fkClassId = Convert.ToInt32(objReq.fkSubjectId); // objStudent.isActive = true; // objStudent.isDelete = false; // objStudent.fkUserId = studentId; // objStudent.TimeStamp =Convert.ToInt64(objReq.timeStamp); // objStudent.uniqueRequestId = requestUniqueId; // objStudent.calculatedAmount = Convert.ToInt32(objReq.calculatedAmount); // objStudent.location = objReq.location; // db.tblRequestStudents.InsertOnSubmit(objStudent); // db.SubmitChanges(); // } // else // { // return 0; // } // //get matched tutors // var turors = db.usp_GetTutors(objReq.fkSubjectId, Convert.ToDecimal(objReq.latitude), Convert.ToDecimal(objReq.longitude),Convert.ToInt64(objReq.userId)).ToList(); // //save request to db and send push to tutor // SendRequest(objReq, turors, requestUniqueId); // return 1; // } //} internal int SaveTutorProfile(TutorProfile objReq) { tblTutorProfile profileData = new tblTutorProfile(); using(var db=new WizzDataContext()){ profileData = db.tblTutorProfiles.Where(x => x.fkUserId == Convert.ToInt64(objReq.userId) && x.isDelete!=true).FirstOrDefault(); if (profileData == null) { //objReq.fileName profileData = new tblTutorProfile(); profileData.isApproved = false; profileData.isActive = true; profileData.isDelete = false; profileData.fkUserId = Convert.ToInt64(objReq.userId); //profileData.latitude = Convert.ToDecimal(objReq.latitude); //profileData.longitude = Convert.ToDecimal(objReq.longitude); //profileData.subjects = objReq.majors; profileData.TimeStamp = Convert.ToInt64(objReq.timeStamp); profileData.updatedDate = DateTime.UtcNow; profileData.createdDate = DateTime.UtcNow; profileData.passingYear = objReq.passingYear; // profileData.referralcode = objReq.referalCode==null?"": objReq.referalCode; // profileData.fkClassId = String.Join(",", objReq.classes); // profileData.docName = objReq.fileName; //profileData. = Convert.ToInt32(objReq.collegeId); db.tblTutorProfiles.InsertOnSubmit(profileData); } else { profileData.isApproved = false; profileData.isActive = true; //profileData.fkUserId = Convert.ToInt64(objReq.userId); //profileData.latitude = Convert.ToDecimal(objReq.latitude); //profileData.longitude = Convert.ToDecimal(objReq.longitude); //profileData.subjects = objReq.majors; //profileData.passingYear = objReq.passingYear; //profileData.docName = objReq.fileName; profileData.TimeStamp = Convert.ToInt64(objReq.timeStamp); profileData.updatedDate = DateTime.UtcNow; profileData.createdDate = DateTime.UtcNow; // profileData.fkClassId = String.Join(",", objReq.classes); //profileData.fkCollegeId = Convert.ToInt32(objReq.collegeId); } db.SubmitChanges(); return 1; } }
///// <summary> ///// Send Push Message to Device ///// </summary> ///// <param name="RegistrationID">RegistrationID or Token</param> ///// <param name="Message">Message to be sent on device</param> ///// <param name="AuthString">Authentication string</param> ///// //public string send(PushMessage objPush,string type) //{ // // msg = "order confirmed"; // WebRequest tRequest; // tRequest = WebRequest.Create("https://android.googleapis.com/gcm/send"); // tRequest.Method = "post"; // tRequest.ContentType = "application/x-www-form-urlencoded"; // string resistrationId = objPush.registration_ids; // var key=""; // key=ConfigurationManager.AppSettings["androidPushKey"]; // tRequest.Headers.Add(string.Format("Authorization: key={0}", key)); // String collaspeKey = Guid.NewGuid().ToString("n"); // string messagetosend = "{\"aps\":{\"alert\":\"" + objPush.message + "\",\"badge\":\"1\",\"sound\":\"default\",\"Tag\":" + objPush.type + ",\"notificationId\":" + objPush.notificationId + "}}"; // String postData = string.Format("registration_id={0}&data.payload={1}&collapse_key={2}", resistrationId, "" + messagetosend, collaspeKey); // Byte[] byteArray = Encoding.UTF8.GetBytes(postData); // tRequest.ContentLength = byteArray.Length; // Stream dataStream = tRequest.GetRequestStream(); // dataStream.Write(byteArray, 0, byteArray.Length); // dataStream.Close(); // WebResponse tResponse = tRequest.GetResponse(); // dataStream = tResponse.GetResponseStream(); // StreamReader tReader = new StreamReader(dataStream); // String sResponseFromServer = tReader.ReadToEnd(); // tReader.Close(); // dataStream.Close(); // tResponse.Close(); // return sResponseFromServer; //} /// <summary> /// Send Push Message to Device /// </summary> /// <param name="RegistrationID">RegistrationID or Token</param> /// <param name="Message">Message to be sent on device</param> /// <param name="AuthString">Authentication string</param> /// public string send(PushData objPush) { tblUser objuser; try { // msg = "order confirmed"; WebRequest tRequest; tRequest = WebRequest.Create("https://android.googleapis.com/gcm/send"); tRequest.Method = "post"; tRequest.ContentType = "application/x-www-form-urlencoded"; string resistrationId = objPush.registration_ids; string sessionId = objPush.uniqueRequestid; var key = ""; Int16 iBadge = 0; using (var db = new WizzDataContext()) { int bedge = 0; try { bedge = Convert.ToInt32(db.tblUsers.FirstOrDefault(S => S.deviceToken == resistrationId).badge); } catch { bedge = 0; } if (bedge == 0) { iBadge = 1; } else { objuser = db.tblUsers.First(S => S.deviceToken == resistrationId); if (objuser != null) { Int16 addbedge = Convert.ToInt16(objuser.badge + 1); iBadge = addbedge; } } } key = ConfigurationManager.AppSettings["androidPushKey"]; tRequest.Headers.Add(string.Format("Authorization: key={0}", key)); String collaspeKey = Guid.NewGuid().ToString("n"); string messagetosend = "{\"aps\":{\"alert\":\"" + objPush.message + "\",\"badge\":\"" + iBadge.ToString() + "\",\"sound\":\"default\",\"type\":\"" + objPush.type + "\",\"sessionId\":\"" + objPush.sessionId + "\",\"tutorId\":\"" + objPush.tutorId + "\",\"uniqueRequestid\":\"" + objPush.uniqueRequestid + "\",\"userId\":\"" + objPush.userId + "\",\"amount\":\"" + objPush.amount + "\"}}"; String postData = string.Format("registration_id={0}&data.payload={1}&collapse_key={2}&sessionId={3}&amount={3}", resistrationId, "" + messagetosend, collaspeKey, objPush.uniqueRequestid,objPush.amount); Byte[] byteArray = Encoding.UTF8.GetBytes(postData); tRequest.ContentLength = byteArray.Length; Stream dataStream = tRequest.GetRequestStream(); dataStream.Write(byteArray, 0, byteArray.Length); dataStream.Close(); WebResponse tResponse = tRequest.GetResponse(); dataStream = tResponse.GetResponseStream(); StreamReader tReader = new StreamReader(dataStream); String sResponseFromServer = tReader.ReadToEnd(); tReader.Close(); dataStream.Close(); tResponse.Close(); using (var db = new WizzDataContext()) { objuser = db.tblUsers.FirstOrDefault(S => S.deviceToken == objPush.registration_ids); if (objuser != null) { objuser.badge = iBadge; db.SubmitChanges(); } } return sResponseFromServer; } catch (Exception ex) { return null; } }
internal List<FilteredHistoryResponsetoStudent> GetHistoryForStudent(Entity objReq) { using (var db = new WizzDataContext()) { List<FilteredHistoryResponsetoStudent> studentList = new List<FilteredHistoryResponsetoStudent>(); List<FilteredHistoryResponsetoStudent> responseList = new List<FilteredHistoryResponsetoStudent>(); int userId = Convert.ToInt32(objReq.userId); var sessionList = db.usp_GetHistoryForStudent(userId).ToList(); List<usp_GetHistoryForStudentResult> ListSession = new List<usp_GetHistoryForStudentResult>(); // var subList = sessionList.Select(s => s.subjectId).Distinct().ToList(); if (sessionList == null || sessionList.Count == 0) { return studentList; } foreach (var n in sessionList) { var data = sessionList.Where(x => x.uniqueRequestId == n.uniqueRequestId).ToList(); if (data != null && data.Count > 1) { if (!ListSession.Any(x => x.uniqueRequestId == n.uniqueRequestId)) { var count = sessionList.Where(x => x.uniqueRequestId == n.uniqueRequestId).Sum(x => x.TotalMinutes); var avgRating = sessionList.Where(x => x.uniqueRequestId == n.uniqueRequestId).Average(x => x.tutorRating); data[0].TotalMinutes = count; data[0].tutorRating = avgRating; ListSession.Add(data[0]); } // var tutorRating = sessionList.Where(x => x.uniqueRequestId == n.uniqueRequestId); //int totalMins = 0; //decimal rat = 0; //foreach (var val in count) { // totalMins += Convert.ToInt32(val.TotalMinutes); // rat += Convert.ToDecimal(val.tutorRating); //} //sessionList.RemoveAll(x => x.uniqueRequestId == n.uniqueRequestId); } else { if (!ListSession.Any(x=>x.uniqueRequestId==n.uniqueRequestId)) ListSession.Add(n); } } //List<String> uniqueList = new List<string>(); //foreach (var n in sessionList) //{ // uniqueList.Add(n.uniqueRequestId); //} //int i = 0; foreach (var c in ListSession) { var list = ListSession.Where(s => s.subjectId == c.subjectId).ToList(); if (!studentList.Any(x => x.subjectId == c.subjectId.ToString())) { FilteredHistoryResponsetoStudent FilteredObj = new FilteredHistoryResponsetoStudent(); FilteredObj.subjectId = c.subjectId.ToString(); FilteredObj.subjectType = c.subjectType.ToString(); FilteredObj.subjectName = c.subjectName.ToString(); List<HistoryResponsetoStudent> model = new List<HistoryResponsetoStudent>(); foreach (var sess in ListSession) { //var data = studentList.DetailsList.Where(x => x.uniqueRequestId == sess.uniqueRequestId).FirstOrDefault(); //if (data == null) //{ model = (from r in ListSession.Where(x => x.subjectId == c.subjectId) select new HistoryResponsetoStudent { // studentList.Where(x=>x.) tutorId = r.tutorId.ToString(), tutorName = r.tutorName, sessionId = r.sessionId.ToString(), tutorRating = Convert.ToString(r.tutorRating), totalHours = r.TotalMinutes.ToString(), profilepic = r.profilePic.ToString(), searchCode = r.searchCode.ToString(), uniqueRequestId = r.uniqueRequestId.ToString(), }).ToList(); // } //else { // data.totalHours = Convert.ToString(Convert.ToInt32(data.totalHours) + sess.TotalMinutes); // data.tutorRating = Convert.ToString((Convert.ToInt32(data.tutorRating) + sess.tutorRating)/2); //} } FilteredObj.DetailsList = model; studentList.Add(FilteredObj); } } //foreach (var n in studentList) //{ // foreach (var p in n.DetailsList) { // var data = n.DetailsList.Where(x => x.uniqueRequestId == p.uniqueRequestId).FirstOrDefault(); // if(data==null){ // responseList.Add(n) ; // }else{ // data.totalHours = Convert.ToString(Convert.ToInt32(data.totalHours) +Convert.ToInt32(p.totalHours)); // // data.tutorRating = Convert.ToString((Convert.ToInt32(data.tutorRating) + Convert.ToInt32(p.tutorRating)) / 2); // n.DetailsList.Add(data); // responseList.Add(n); // } // } //} return studentList; } }
internal bool CancelSession(CreateSesion objReq) { using (var db = new WizzDataContext()) { tblRequest sessionData; sessionData = db.tblRequests.Where(x => x.uniqueRequestId == objReq.sessionId).FirstOrDefault(); if (sessionData == null) return false; sessionData.isCancelled = true; sessionData.updatedDate = DateTime.UtcNow; db.SubmitChanges(); } return true; }
internal bool SessionRatingByStudent(StudentRatingwModel objReq) { using (var db = new WizzDataContext()) { tblTutorRating rating = new tblTutorRating(); var sessionData = db.tblSessions.FirstOrDefault(x => x.pkSessionId == Convert.ToInt64(objReq.sessionId)); rating = db.tblTutorRatings.FirstOrDefault(x => x.sessionId == objReq.sessionId && x.fkStudentId == Convert.ToInt32(objReq.userId)); var tutorRating = db.tblUsers.Where(x => x.pkUserId == Convert.ToInt64(sessionData.tutorId)).FirstOrDefault(); if (rating == null) { rating = new tblTutorRating(); rating.createdDate = DateTime.UtcNow; rating.sessionId = objReq.sessionId; rating.userName = objReq.userName; rating.fkStudentId = Convert.ToInt32(objReq.userId); rating.fkTutorId = sessionData.tutorId; rating.updatedDate = DateTime.UtcNow; rating.punctual = Convert.ToInt16(objReq.punctual); rating.knowledgable = Convert.ToInt16(objReq.knowledge); rating.helpful = Convert.ToInt16(objReq.helpFul); rating.review = ""; tutorRating.avgRatingTutor = ((tutorRating.avgRatingTutor) + (rating.punctual + rating.knowledgable + rating.helpful) / 3) / 2; db.tblTutorRatings.InsertOnSubmit(rating); } else { rating.userName = objReq.userName; rating.updatedDate = DateTime.UtcNow; rating.punctual = Convert.ToInt16(objReq.punctual); rating.knowledgable = Convert.ToInt16(objReq.knowledge); rating.helpful = Convert.ToInt16(objReq.helpFul); tutorRating.avgRatingTutor = ((tutorRating.avgRatingTutor) + (rating.punctual + rating.knowledgable + rating.helpful) / 3) / 2; } db.SubmitChanges(); return true; } }
internal bool SessionReviewByStudent(StudentReviewModel objReq) { using (var db = new WizzDataContext()) { tblTutorRating rating = new tblTutorRating(); var sessionData = db.tblSessions.FirstOrDefault(x => x.pkSessionId == Convert.ToInt64(objReq.sessionId)); rating = db.tblTutorRatings.FirstOrDefault(x => x.sessionId == objReq.sessionId && x.fkStudentId == Convert.ToInt32(objReq.userId)); if (rating == null) { rating = new tblTutorRating(); rating.createdDate = DateTime.UtcNow; rating.sessionId = objReq.sessionId; rating.userName = objReq.userName; rating.fkStudentId = Convert.ToInt32(objReq.userId); rating.fkTutorId = sessionData.tutorId; rating.updatedDate = DateTime.UtcNow; rating.punctual = 0; rating.knowledgable = 0; rating.helpful = 0; rating.review = objReq.reviewText; db.tblTutorRatings.InsertOnSubmit(rating); } else { rating.userName = objReq.userName; rating.updatedDate = DateTime.UtcNow; rating.review = objReq.reviewText; } db.SubmitChanges(); return true; } }
//internal bool AcceptStudent(StudentTeacherMap objReq) //{ // // var isTutor = Convert.ToBoolean(objReq.userId); // using (var db = new WizzDataContext()) // { // if (objReq.isAccept.ToLower() == "true") // { // tblRequest reqStudent = new tblRequest(); // var studentList = db.tblRequestStudents.Where(x => x.isAccepted != true && x.isDelete == false && x.uniqueRequestId == objReq.uniqueRequestId && x.fkUserId == Convert.ToInt32(objReq.tutorId)).ToList(); // studentList.ForEach(a => { a.isAccepted = true; a.updatedDate = DateTime.UtcNow; }); // db.SubmitChanges();//update student request // var totalList = db.tblRequests.Where(x => x.isAccepted != true && x.uniqueRequestId == objReq.uniqueRequestId && x.fkStudentId==Convert.ToInt32(objReq.studentId)).ToList(); // var deleteList = totalList.Where(x => x.fkTutorId != Convert.ToInt32(objReq.tutorId)).ToList(); // //delete all tutors who recived the notiifcation except the tutor who is accepeting the notification // reqStudent = totalList.Where(x => x.fkTutorId == Convert.ToInt32(objReq.tutorId)).FirstOrDefault(); // db.tblRequests.DeleteAllOnSubmit(deleteList); // db.SubmitChanges(); // //accept the request // if (reqStudent == null)//if request is not exist // return false; // reqStudent.isAccepted = true; // reqStudent.updatedDate = DateTime.UtcNow; // var userData = db.tblUsers.Where(x => x.pkUserId == Convert.ToInt32(objReq.studentId)&& x.isTeacher==false).FirstOrDefault(); // var teacherData = db.tblUsers.Where(x => x.pkUserId == Convert.ToInt32(objReq.tutorId)).FirstOrDefault(); // if (userData!=null &&!string.IsNullOrEmpty(userData.deviceToken)) // { // // objPush.type = Convert.ToInt16(PushType.acceptRequest).ToString(); // PushData push = new PushData() // { // registration_ids = userData.deviceToken, // //push.data = CommonMethod.ObjectToJson(objPush); // message = PushMessages.FormatMessage(PushMessages.acceptRequest, teacherData.userName), // type = Convert.ToInt16(PushType.acceptRequest).ToString(), // badge = Convert.ToString(userData.badge) // }; // if (userData.deviceType == Convert.ToInt16(DeviceType.ios))//ios // { // SendPush objIOS = new SendPush(); // objIOS.ConnectToAPNS(push); // } // else if (userData.deviceType == Convert.ToInt16(DeviceType.android))//android // { // Android objAndroid = new Android(); // objAndroid.send(push); // } // } // // update tblrequest by isAccept=1 and delete rest of request // } // else // { // var objRequestData = db.tblRequests.Where(x => x.isAccepted == false && x.fkTutorId ==Convert.ToInt32(objReq.tutorId) && x.uniqueRequestId==objReq.uniqueRequestId).FirstOrDefault(); // if (objRequestData != null) // { // db.tblRequests.DeleteOnSubmit(objRequestData); // db.SubmitChanges(); // } // else { // return false; // } // } // db.SubmitChanges(); // return true; // } //} #endregion internal bool SendPushForIos(IosPushModel push) { tblUser receiverData = new tblUser(); using (var db = new WizzDataContext()) { receiverData = db.tblUsers.Where(c => c.pkUserId == Convert.ToInt32(push.receiverId)).FirstOrDefault(); var sendor = db.tblUsers.Where(c => c.pkUserId == Convert.ToInt32(push.senderId)).FirstOrDefault(); // objPush.deviceToken = receiverData.deviceToken; PushData objPush = new PushData() { message = sendor.userName + ": " + push.Message, type = Convert.ToInt16(PushType.chatPush).ToString(), messageType=push.Type, userId=push.senderId, subject=push.subjectName, registration_ids = receiverData.deviceToken, badge = Convert.ToString(receiverData.badge), uniqueRequestid=push.requestId }; // push.type = PushType.newRequest.ToString(); // push.data = CommonMethod.ObjectToJson(objPush); // push.Type =push.Type; // push.messageId = push.messageId; // push.Message = push.Message; // push.senderName=push if (receiverData.deviceType == 1)//ios { SendPush objIOS = new SendPush(); objIOS.ConnectToAPNS(objPush); } else if (receiverData.deviceType == 2)//android { PushForIos objAndroid = new PushForIos(); objAndroid.SendPushForIos(push); } } return true; ///throw new NotImplementedException(); }
//internal int SaveTutorSubjects(TutorSubjects objReq) //{ // tblTutorSubject objSubjectData = new tblTutorSubject(); // using (var db = new WizzDataContext()) // { // objSubjectData = db.tblTutorSubjects.Where(x => x.fkTutorId == Convert.ToInt64(objReq.tutorId)).FirstOrDefault(); // if (objSubjectData == null) // { // //objSubjectData = new TutorSubjects(); // //objSubjectData.isApproved = true; // //objSubjectData.isActive = true; // //objSubjectData.fkUserId = Convert.ToInt64(objReq.userId); // //objSubjectData.latitude = Convert.ToDecimal(objReq.latitude); // //objSubjectData.longitude = Convert.ToDecimal(objReq.longitude); // //objSubjectData.subjects = objReq.majors; // //objSubjectData.TimeStamp = Convert.ToDateTime(objReq.timeStamp).Ticks; // //objSubjectData.updatedDate = DateTime.UtcNow; // //objSubjectData.createdDate = DateTime.UtcNow; // //objSubjectData.passingYear = objReq.passingYear; // //objSubjectData.referralcode = objReq.referalCode == null ? "" : objReq.referalCode; // //// profileData.fkClassId = String.Join(",", objReq.classes); // //objSubjectData.fkCollegeId = Convert.ToInt32(objReq.collegeId); // //db.tblTutorProfiles.InsertOnSubmit(objSubjectData); // } // else // { // //objSubjectData.isApproved = true; // //objSubjectData.isActive = true; // //objSubjectData.fkUserId = Convert.ToInt64(objReq.userId); // //objSubjectData.latitude = Convert.ToDecimal(objReq.latitude); // //objSubjectData.longitude = Convert.ToDecimal(objReq.longitude); // //objSubjectData.subjects = objReq.majors; // //objSubjectData.TimeStamp = Convert.ToDateTime(objReq.timeStamp).Ticks; // //objSubjectData.updatedDate = DateTime.UtcNow; // //objSubjectData.createdDate = DateTime.UtcNow; // //// profileData.fkClassId = String.Join(",", objReq.classes); // //objSubjectData.fkCollegeId = Convert.ToInt32(objReq.collegeId); // } // db.SubmitChanges(); // return 1; // } //} //save matched tutos in db and send notifications void SendRequest(StudentRequestModel objReq,List<usp_GetTutorsResult> tutors,string requestId) { var studentId =Convert.ToInt64(objReq.userId); using(var db=new WizzDataContext()) { foreach (var tutor in tutors.ToList()) { var request = new tblRequest(); request.createdDate = DateTime.UtcNow; request.updatedDate = DateTime.UtcNow; request.isAccepted = false; request.isDeleted = false; request.fkStudentId = studentId; request.fkTutorId = tutor.fkUserId; request.uniqueRequestId = requestId; request.timeStamp = DateTime.UtcNow.Ticks; db.tblRequests.InsertOnSubmit(request); db.SubmitChanges(); //sendpush if(!string.IsNullOrEmpty(tutor.deviceToken)) { PushData push=new PushData() { registration_ids = tutor.deviceToken, message = PushMessages.newRequest, type = Convert.ToInt16(PushType.newRequest).ToString(), badge = Convert.ToString(tutor.badge) }; // push.data = CommonMethod.ObjectToJson(objPush); if (tutor.deviceType == Convert.ToInt16(DeviceType.ios))//ios { SendPush objIOS=new SendPush(); objIOS.ConnectToAPNS(push); } else if (tutor.deviceType == Convert.ToInt16(DeviceType.android))//android { Android objAndroid = new Android(); objAndroid.send(push); } } } } }
internal bool ReportSpam(ReportSpamModel objReq) { using (var db = new WizzDataContext()) { tblReportSpam objSpamData = new tblReportSpam(); objSpamData.fkFromId = Convert.ToInt64(objReq.fromId); objSpamData.fkToId = Convert.ToInt64(objReq.toId); objSpamData.userType = Convert.ToInt16(objReq.forUserType); objSpamData.isDelete = false; objSpamData.createdDate = DateTime.UtcNow; objSpamData.updatedDate = DateTime.UtcNow; db.tblReportSpams.InsertOnSubmit(objSpamData); db.SubmitChanges(); return true; } }
internal List<HistoryDetailsModel> GetHistoryDetailsForStudent(SessionHistoryRequestModel objReq) { using (var db = new WizzDataContext()) { List<HistoryDetailsModel> historyList = new List<HistoryDetailsModel>(); int userId = Convert.ToInt32(objReq.userId); var sessionList = db.usp_GetHistoryDetailsForStudent(objReq.uniqueRequestId).ToList(); int i = 1; foreach (var c in sessionList) { HistoryDetailsModel model = new HistoryDetailsModel(); model.sno = Convert.ToString(i++); model.sessionHours = c.forMinutes.ToString(); model.sessionCost = c.sessionCost.ToString(); model.homework = c.homeWork.ToString(); model.latitude = Convert.ToString(c.lat); model.longitude = Convert.ToString(c.longi); model.sessionDate = c.updatedDate.Value.ToString("dd mm yyyy"); model.sessionNotes = c.sessionNotes.ToString(); model.homework = c.homeWork.ToString(); model.paymentType = c.paymentType.ToString(); //model.u = c.uniqueRequestId; //model.profilepic = c.profilePic.ToString(); //model.tutorRating = Convert.ToString(c.tutorRating); //model.totalHours = c.TotalMinutes.ToString(); historyList.Add(model); } return historyList; } }
internal List<SessionInfo> GetSessionInfo(SessionEntity objReq) { List<SessionInfo> listResp = new List<SessionInfo>(); SessionInfo objResp = new SessionInfo(); using (var db = new WizzDataContext()) { var sessionData = db.tblSessions.Where(x => x.pkSessionId == Convert.ToInt64(objReq.sessionId) && x.isDelete == false).FirstOrDefault(); objResp.sessionStartTime = sessionData.sessionStartTime; objResp.sessionEndTime = sessionData.sessionEndtime; objResp.sessionTime = ""; var data = db.tblUsers.Where(x => x.pkUserId == sessionData.tutorId).FirstOrDefault(); objResp.tutorName = data.userName; objResp.profilePic = data.profilePic; listResp.Add(objResp); return listResp; } }