public virtual async Task <AppDomainResult> ForgotPassword(string userName) { AppDomainResult appDomainResult = new AppDomainResult(); bool isValidEmail = ValidateUserName.IsEmail(userName); bool isValidPhone = ValidateUserName.IsPhoneNumber(userName); // Kiểm tra đúng định dạng email và số điện thoại chưa if (!isValidEmail && !isValidPhone) { throw new AppException("Vui lòng nhập email hoặc số điện thoại!"); } // Tạo mật khẩu mới // Kiểm tra email/phone đã tồn tại chưa? var userInfos = await this.userService.GetAsync(e => !e.Deleted && (e.UserName == userName || e.Email == userName || e.Phone == userName ) ); Users userInfo = null; if (userInfos != null && userInfos.Any()) { userInfo = userInfos.FirstOrDefault(); } if (userInfo == null) { throw new AppException("Số điện thoại hoặc email không tồn tại"); } // Cấp mật khẩu mới var newPasswordRandom = RandomUtilities.RandomString(8); userInfo.Password = SecurityUtils.HashSHA1(newPasswordRandom); bool success = await this.userService.UpdateAsync(userInfo); if (success) { // Gửi mã qua Email if (isValidEmail) { string emailBody = string.Format("<p>Your new password: {0}</p>", newPasswordRandom); emailConfigurationService.Send("Change Password", new string[] { userInfo.Email }, null, null, new EmailContent() { Content = emailBody, IsHtml = true, }); } // Gửi SMS else if (isValidPhone) { } } return(appDomainResult); }
public ActionResult <List <Consulta> > Get(string language_value) { random_str = ru.RandomString(8) + "|" + ru.CurrentDate(); try { lista = con.Consulta(language_value); } catch (Exception e) { } return(lista); }
public ComplexObject GenerateRandomDefaultModel() { Array arrayOfEnum = Enum.GetValues(typeof(ComplexObject.DefaultEnum)); int numberOfEnum = arrayOfEnum.Length; ComplexObject model = new ComplexObject() { Name = RandomUtilities.RandomString(), Date = RandomUtilities.RandomDate(), EnumDefault = (ComplexObject.DefaultEnum)arrayOfEnum.GetValue(RandomUtilities.RandomInteger() % numberOfEnum), Number = RandomUtilities.RandomInteger(), LongNumber = RandomUtilities.RandomDouble() }; return(model); }
/// <summary> /// Cập nhật thông trạng thái lịch hẹn (phiếu khám) /// </summary> /// <param name="updateExaminationStatus"></param> /// <returns></returns> public async Task <bool> UpdateExaminationStatus(UpdateExaminationStatus updateExaminationStatus) { bool result = false; int? action = null; var existExaminationFormInfo = await Queryable.Where(e => e.Id == updateExaminationStatus.ExaminationFormId).FirstOrDefaultAsync(); Expression <Func <ExaminationForms, object> >[] includeProperties = new Expression <Func <ExaminationForms, object> >[] { }; if (existExaminationFormInfo != null) { if (updateExaminationStatus.Status.HasValue) { existExaminationFormInfo.Status = updateExaminationStatus.Status.Value; existExaminationFormInfo.Updated = DateTime.Now; existExaminationFormInfo.UpdatedBy = updateExaminationStatus.CreatedBy; switch (updateExaminationStatus.Status) { // Nếu trạng thái: đã xác nhận => lưu lại thông tin mã phiếu khám + lịch sử phiếu case (int)CatalogueUtilities.ExaminationStatus.Confirmed: { action = (int)CatalogueUtilities.ExaminationAction.Confirm; existExaminationFormInfo.Code = RandomUtilities.RandomString(6); includeProperties = new Expression <Func <ExaminationForms, object> >[] { x => x.Status, x => x.Updated, x => x.UpdatedBy, x => x.Code, }; } break; // Nếu trạng thái: đã xác nhận => lưu lại thông tin mã phiếu khám + lịch sử phiếu case (int)CatalogueUtilities.ExaminationStatus.Canceled: { action = (int)CatalogueUtilities.ExaminationAction.Cancel; includeProperties = new Expression <Func <ExaminationForms, object> >[] { x => x.Status, x => x.Updated, x => x.UpdatedBy, }; } break; // Nếu trạng thái: đã xác nhận tái khám => lưu lại ngày tái khám trong phiếu khám + lịch sử phiếu case (int)CatalogueUtilities.ExaminationStatus.ConfirmedReExamination: { action = (int)CatalogueUtilities.ExaminationAction.ConfirmReExamination; existExaminationFormInfo.ReExaminationDate = DateTime.Now; includeProperties = new Expression <Func <ExaminationForms, object> >[] { x => x.Status, x => x.Updated, x => x.UpdatedBy, x => x.ReExaminationDate }; } break; default: break; } } } // Thêm lịch sử phiếu khám/lịch hẹn if (action.HasValue && updateExaminationStatus.Status.HasValue) { unitOfWork.Repository <ExaminationForms>().UpdateFieldsSave(existExaminationFormInfo, includeProperties); await unitOfWork.SaveAsync(); await CreateExaminationHistory(updateExaminationStatus.ExaminationFormId, updateExaminationStatus.Status.Value, updateExaminationStatus.CreatedBy, updateExaminationStatus.Comment); result = true; } return(result); }