public async Task UpdateMemberAsync(MemberDto data) { Member member; Task <Member> taskFind = Task <Member> .Run(() => _database.MemberRepository.GetById(data.Id)); try { taskFind.Wait(360000); if (taskFind.IsCompleted) { member = taskFind.Result; if (member != null) { member.Id = data.Id; member.Owner = data.Owner; member.PlotNumber = data.PlotNumber; member.PlotAddress = data.PlotAddress; member.PlotSquare = data.PlotSquare; member.OwnerAddress = data.OwnerAddress; member.Addition = data.Addition; member.CompanionshipId = data.CompanionshipId; _database.MemberRepository.Update(member); await _database.SaveAsync(); } } } catch (AggregateException ae) { } }
public async Task <AuthenticateResponse> Authenticate(string email, string password) { if (string.IsNullOrEmpty(email) || string.IsNullOrEmpty(password)) { return(null); } var member = await _memberRepository.GetAsync(x => x.Email == email && x.Password == password); if (member == null) { return(null); } MemberDto memberDto = new MemberDto { Id = member.Id, FirstName = member.FirstName, LastName = member.LastName, Email = member.Email, ContactNumber = member.ContactNumber }; // authentication successful so generate jwt token var token = generateJwtToken(memberDto); return(new AuthenticateResponse(memberDto, token)); }
public IMember BuildEntity(MemberDto dto) { var member = new Member( dto.ContentVersionDto.ContentDto.NodeDto.Text, dto.Email, dto.LoginName, dto.Password, _contentType) { Id = _id, Key = dto.ContentVersionDto.ContentDto.NodeDto.UniqueId, Path = dto.ContentVersionDto.ContentDto.NodeDto.Path, CreatorId = dto.ContentVersionDto.ContentDto.NodeDto.UserId.Value, Level = dto.ContentVersionDto.ContentDto.NodeDto.Level, ParentId = dto.ContentVersionDto.ContentDto.NodeDto.ParentId, SortOrder = dto.ContentVersionDto.ContentDto.NodeDto.SortOrder, Trashed = dto.ContentVersionDto.ContentDto.NodeDto.Trashed, CreateDate = dto.ContentVersionDto.ContentDto.NodeDto.CreateDate, UpdateDate = dto.ContentVersionDto.VersionDate, Version = dto.ContentVersionDto.VersionId }; member.ProviderUserKey = member.Key; //on initial construction we don't want to have dirty properties tracked // http://issues.umbraco.org/issue/U4-1946 member.ResetDirtyProperties(false); return(member); }
public ResultDto UpdateFamily(MemberDto memberDto) { ResultDto resultDto = new ResultDto(); string obectName = "MemberFamilyDetails"; // ObjectParameter paramID = new ObjectParameter("MemberID",memberDto.MemberID); try { _dbContext.uspMemberFamilyDetailsUpdate(memberDto.MemberID, memberDto.NomineeName, memberDto.NomineeRelationship, memberDto.ParentGuardianName, memberDto.ParentGuardianRelationship, memberDto.SocialCategory , memberDto.MonthlyIncome, memberDto.EarningMembersInFamily, memberDto.NonEarningMembersInFamily, memberDto.IncomeFrequency, memberDto.InvestmentSize, memberDto.AssetsInNameOfMember, memberDto.UserID); resultDto.ObjectId = (int)memberDto.MemberID; if (resultDto.ObjectId > 0) { resultDto.Message = string.Format("{0} details saved successfully with code : {1}", obectName, memberDto.MemberCode); } else if (resultDto.ObjectId == -1) { resultDto.Message = string.Format("Error occured while generating {0} code", obectName); } else { resultDto.Message = string.Format("Error occured while saving {0} details", obectName); } } catch (Exception) { resultDto.Message = string.Format("Service layer error occured while saving the {0} details", obectName); resultDto.ObjectId = -98; } return(resultDto); }
public async Task <JsonResult> Login(string mobile, string password) { //验证 var member = new MemberDto { Id = 1, Name = "测试" }; //生成Token var tokenVersion = DateTime.Now.Ticks.ToString(); var claims = new List <Claim>() { new Claim(ClaimTypes.Version, tokenVersion) , new Claim(ClaimTypes.NameIdentifier, member.Id.ToString()) , new Claim(ClaimTypes.Name, member.Name) , new Claim(ClaimTypes.Role, ((int)MemberRole.Default).ToString()) }; var token = _jwtProvider.CreateToken(claims); var loginMember = new LoginMember { Id = member.Id, Name = member.Name }; //如果当前已登陆,则退出当前登录 DoLogout(); _cacheService.Add(string.Format(CacheKeyDefinition.ApiMemberToken, member.Id, tokenVersion), loginMember, TimeSpan.FromMinutes(_jwtConfig.ExpiredMinutes)); return(Json(token)); }
public async Task <IActionResult> Bind(MobileBindVerifierPostData postData) { try { bool isValidVerifierCode = await this.verifierService.IsValidVerifierCode(VerifierType.MobileBind.ToString(), postData.Email, postData.VerifierCode); if (!isValidVerifierCode) { return(BadRequest("驗證碼驗證失敗.")); } string memberID = this.HttpContext.Session.GetObject <string>(CommonFlagHelper.CommonFlag.SessionFlag.MemberID); MemberDto memberDto = new MemberDto() { MemberID = memberID, Mobile = postData.Mobile, MoblieBindType = (int)MoblieBindType.Bind }; ResponseResultDto responseResult = await this.memberService.EditData(memberDto); if (responseResult.Ok) { return(Ok("綁定行動電話成功.")); } return(BadRequest(responseResult.Data)); } catch (Exception ex) { this.logger.LogError($"Reset Password Error >>> Email:{postData.Email} VerifierCode:{postData.VerifierCode}\n{ex}"); return(BadRequest("會員綁定行動電話發生錯誤.")); } }
public async Task <IActionResult> ModifyMemberInfoAsync(IFormCollection forms) { #region 参数验证 Check.IfNullOrZero(forms); #endregion var userContext = await GetUserContextAsync(); var memberDto = new MemberDto { Id = Int32.Parse(forms["id"]), IconUrl = forms["val_icon"], Name = forms["val_name"], Width = Int32.Parse(forms["val_width"]), Height = Int32.Parse(forms["val_height"]), IsResize = Int32.Parse(forms["val_isresize"]) == 1, IsOpenMax = Int32.Parse(forms["val_isopenmax"]) == 1, IsFlash = Int32.Parse(forms["val_isflash"]) == 1, MemberType = EnumExtensions.ToEnum <MemberType>(forms["membertype"]), IsIconByUpload = Int32.Parse(forms["isIconByUpload"]) == 1 }; await _deskServices.ModifyMemberInfoAsync(userContext.Id, memberDto); return(Json(new ResponseSimple { IsSuccess = true, Message = "修改桌面应用信息成功" })); }
public IActionResult add(MemberDto memberDto, IFormFile file) { try { if (ModelState.IsValid) { if (file != null) { memberDto.image_url = _fileHelper.saveImageAndGetFileName(file, memberDto.full_name); } _membersService.save(memberDto); AlertHelper.setMessage(this, "Member Saved Successfully", messageType.success); return(RedirectToAction("index")); } } catch (Exception ex) { AlertHelper.setMessage(this, ex.Message, messageType.error); } var fiscalYearList = _fiscalYearRepository.getQueryable().ToList(); var designationList = _designationRepository.getQueryable().ToList(); ViewBag.designations = new SelectList(designationList, "Designation_id", "name"); ViewBag.fiscalYears = new SelectList(fiscalYearList, "fiscal_year_id", "name"); return(View(memberDto)); }
public async Task <IActionResult> Edit(long?id) { //取得会员类型列表 ViewBag.MemberTypeList = await _memberTypeService.GetListAsync(null, null); if (id.HasValue) { //编辑 var model = await _service.GetByIdAsync(id.Value); if (model == null) { throw new VinoDataNotFoundException("无法取得会员数据!"); } model.Password = "******"; ViewData["Mode"] = "Edit"; return(View(model)); } else { //新增 MemberDto dto = new MemberDto(); dto.IsEnable = true; ViewData["Mode"] = "Add"; return(View(dto)); } }
public void update(MemberDto member_dto) { try { using (TransactionScope tx = new TransactionScope(TransactionScopeOption.Required)) { Member member = _membersRepository.getById(member_dto.member_id); if (member == null) { throw new ItemNotFoundException($"Member with ID {member_dto.member_id} doesnot Exit."); } string oldImage = member.image_url; if (!string.IsNullOrWhiteSpace(member_dto.image_url)) { if (!string.IsNullOrWhiteSpace(oldImage)) { deleteImage(oldImage); } } _membersMaker.copy(ref member, member_dto); _membersRepository.update(member); tx.Complete(); } } catch (Exception) { throw; } }
/// <summary> /// Builds a dto from an IMember item. /// </summary> public static MemberDto BuildDto(IMember entity) { var contentDto = BuildContentDto(entity, Cms.Core.Constants.ObjectTypes.Member); var dto = new MemberDto { Email = entity.Email, LoginName = entity.Username, NodeId = entity.Id, Password = entity.RawPasswordValue, SecurityStampToken = entity.SecurityStamp, EmailConfirmedDate = entity.EmailConfirmedDate, ContentDto = contentDto, ContentVersionDto = BuildContentVersionDto(entity, contentDto), PasswordConfig = entity.PasswordConfiguration, FailedPasswordAttempts = entity.FailedPasswordAttempts, IsApproved = entity.IsApproved, IsLockedOut = entity.IsLockedOut, LastLockoutDate = entity.LastLockoutDate, LastLoginDate = entity.LastLoginDate, LastPasswordChangeDate = entity.LastPasswordChangeDate, }; return(dto); }
public static MemberServiceModel ToServiceModel(this MemberDto memberDto) { var serviceModel = new MemberServiceModel(); serviceModel.InjectFrom(memberDto); return(serviceModel); }
public async Task <object> PutPhone([Required] int id, [FromBody] PhoneViewModel model) { MessageBase2 result = new MessageBase2(); if (await _memberService.ExistAsync("phone", model.Phone) > 0) { result.Success = Permanent.FAILED; result.Error = (int)StatusCodeEnum.INVALID_REQUEST; result.ErrorMsg = "手机号已存在"; } else { MemberDto dto = new MemberDto() { Id = id, PhoneMob = model.Phone }; await _memberService.UpdateAsync(dto); result.Success = Permanent.SUCCESS; } return(result); }
public IActionResult Post([FromBody] MemberDto member) { try { _memberManager.AddMember(member); ResponseDto response = new ResponseDto() { Message = "Success", StatusCode = System.Net.HttpStatusCode.OK }; return(Ok(response)); } catch (Exception ex) { ResponseDto response = new ResponseDto() { Message = ex.Message, StatusCode = System.Net.HttpStatusCode.BadRequest }; return(BadRequest(response)); } }
public async Task HandleMemberSubscriptionAsync_UnsubscribedSubscriber_ShouldBeResubscribedWithStatusPending() { //arrange var nullLogger = new NullLogger <SubscriberService>(); var fakeRepository = new FakeMailchimpRepository(); var subscriberService = new SubscriberService(nullLogger, fakeRepository); var unsubscribedSubscriber = new NewSubscriberDto() { Email = "*****@*****.**", Name = "Unsubscribed", Source = "UnitTest" }; //assume var assumedMember = await fakeRepository.GetMemberAsync(unsubscribedSubscriber.Email); Assume.That( assumedMember?.Status == "unsubscribed", "Missing unsubscribed member in the collection"); //act await subscriberService.HandleMemberSubscriptionAsync(unsubscribedSubscriber); MemberDto receivedMember = await fakeRepository.GetMemberAsync(unsubscribedSubscriber.Email); //assert Assert.Equal(unsubscribedSubscriber.Email, receivedMember.EmailAddress); Assert.Equal("pending", receivedMember.Status); }
/// <summary> /// 會員註冊 /// </summary> /// <param name="memberDto">memberDto</param> /// <param name="isVerifyPassword">isVerifyPassword</param> /// <returns>string</returns> public async Task <string> Register(MemberDto memberDto, bool isVerifyPassword) { try { string verifyMemberRegisterResult = await this.VerifyMemberRegister(memberDto, isVerifyPassword); if (!string.IsNullOrEmpty(verifyMemberRegisterResult)) { return(verifyMemberRegisterResult); } MemberData memberData = this.CreateMemberData(memberDto); bool isSuccess = await this.memberRepository.CreateMemberData(memberData); if (!isSuccess) { return("會員註冊失敗."); } return(string.Empty); } catch (Exception ex) { this.logger.LogError($"Register Error >>> Data:{JsonConvert.SerializeObject(memberDto)}\n{ex}"); return("會員註冊發生錯誤."); } }
private static void AddMember() { var member = new MemberDto { Name = "Steve", PassportNumber = 123459, PassportSeries = 1234, DateOfBirth = new DateTime(1991, 1, 1), IsInBlacklist = false }; var postTask = client.PostAsJsonAsync <MemberDto>("api/members", member); postTask.Wait(); var result = postTask.Result; if (result.IsSuccessStatusCode) { var readTask = result.Content.ReadAsAsync <MemberDto>(); readTask.Wait(); var insertedMembers = readTask.Result; Console.WriteLine("Member {0} inserted with id: {1}", insertedMembers.Name, member.Id); } else { Console.WriteLine(result.StatusCode); } }
/// <summary> /// 驗證會員註冊資料 /// </summary> /// <param name="memberDto">memberDto</param> /// <param name="isVerifyPassword">isVerifyPassword</param> /// <returns>string</returns> private async Task <string> VerifyMemberRegister(MemberDto memberDto, bool isVerifyPassword) { if (string.IsNullOrEmpty(memberDto.Email)) { return("信箱無效."); } if (!this.IsValidEmail(memberDto.Email)) { return("信箱格式錯誤."); } if (isVerifyPassword) { if (string.IsNullOrEmpty(memberDto.Password)) { return("密碼無效."); } if (!this.IsValidPassword(memberDto.Password)) { return("密碼格式錯誤."); } } bool emailHasRegister = await this.memberRepository.GetMemberDataByEmail(memberDto.Email) != null; if (emailHasRegister) { return("此信箱已經被註冊."); } return(string.Empty); }
public IHttpActionResult PostMemberByClan(int gameid, int clanid, [FromBody] MemberDto memberDto) { dynamic Response = new ExpandoObject(); try { if (!ModelState.IsValid) { Response.Status = ConstantValues.ResponseStatus.ERROR; Response.Message = ConstantValues.ErrorMessage.BAD_REQUEST; return(Content(HttpStatusCode.BadRequest, Response)); } var member = Mapper.Map <MemberDto, Member>(memberDto); member.clanId = clanid; _context.Members.Add(member); _context.SaveChanges(); memberDto.id = member.id; Response.Status = ConstantValues.ResponseStatus.OK; Response.Member = memberDto; return(Created(new Uri(Request.RequestUri + "/" + memberDto.id), Response)); } catch (Exception e) { Response.Status = ConstantValues.ResponseStatus.ERROR; Response.Message = ConstantValues.ErrorMessage.INTERNAL_SERVER_ERROR; return(Content(HttpStatusCode.InternalServerError, Response)); } }
/// <summary> /// 會員編輯 /// </summary> /// <param name="memberDto">memberDto</param> /// <returns>string</returns> public async Task <string> EditData(MemberDto memberDto) { try { MemberData memberData = await this.memberRepository.GetMemberDataByMemberID(memberDto.MemberID); if (memberData == null) { return("無會員資料."); } string updateMemberDataHandlerResult = this.UpdateMemberDataHandler(memberDto, memberData, true); if (!string.IsNullOrEmpty(updateMemberDataHandlerResult)) { return(updateMemberDataHandlerResult); } bool updateMemebrDataResult = await this.memberRepository.UpdateMemberData(memberData); if (!updateMemebrDataResult) { return("會員資料更新失敗."); } return(string.Empty); } catch (Exception ex) { this.logger.LogError($"Edit Data Error >>> Data:{JsonConvert.SerializeObject(memberDto)}\n{ex}"); return("會員編輯發生錯誤."); } }
public ResultDto UpdateAccountHead(MemberDto memberDto) { ResultDto resultDto = new ResultDto(); string obectName = "MemberAccountHead"; try { _dbContext.uspMemberAccountHeadUpdate(memberDto.MemberID, memberDto.AccountHeadID); resultDto.ObjectId = (int)memberDto.MemberID; if (resultDto.ObjectId > 0) { resultDto.Message = string.Format("{0} details saved successfully with code : {1}", obectName, memberDto.MemberCode); } else if (resultDto.ObjectId == -1) { resultDto.Message = string.Format("Error occured while generating {0} code", obectName); } else { resultDto.Message = string.Format("Error occured while saving {0} details", obectName); } } catch (Exception) { resultDto.Message = string.Format("Service layer error occured while saving the {0} details", obectName); resultDto.ObjectId = -98; } return(resultDto); }
/// <summary> /// 搜尋會員 /// </summary> /// <param name="memberDto">memberDto</param> /// <returns>Tuple(MemberDto, string)</returns> public async Task <Tuple <MemberDto, string> > SearchMember(MemberDto searchMemberDto) { try { MemberData memberData = null; if (!string.IsNullOrEmpty(searchMemberDto.MemberID)) { memberData = await this.memberRepository.GetMemberDataByMemberID(searchMemberDto.MemberID); } else if (!string.IsNullOrEmpty(searchMemberDto.Email)) { memberData = await this.memberRepository.GetMemberDataByEmail(searchMemberDto.Email); } else { return(Tuple.Create <MemberDto, string>(null, "查詢參數無效.")); } if (memberData == null) { return(Tuple.Create <MemberDto, string>(null, "無會員資料.")); } MemberDto memberDto = this.mapper.Map <MemberDto>(memberData); IEnumerable <RideData> rideDataList = await this.rideRepository.GetRideDataList(memberData.MemberID); memberDto.RideDtoList = this.mapper.Map <IEnumerable <RideDto> >(rideDataList); return(Tuple.Create(memberDto, string.Empty)); } catch (Exception ex) { this.logger.LogError($"Search Member Error >>> MemberID:{searchMemberDto.MemberID} Email:{searchMemberDto.Email}\n{ex}"); return(Tuple.Create <MemberDto, string>(null, "搜尋會員發生錯誤.")); } }
public async Task <ActionResult <MemberDto> > AddMember([FromBody] MemberDto memberDto) { var authorizedUser = this.GetAuthorizedUser(); return(CreatedAtAction(nameof(AddMember), await _memberService.AddMemberAsync(memberDto, authorizedUser))); }
/// <summary> /// 會員登入 /// </summary> /// <param name="memberDto">memberDto</param> /// <returns>Tuple(string, string)</returns> public async Task <Tuple <string, string> > Login(MemberDto memberDto) { try { if (string.IsNullOrEmpty(memberDto.Email) || string.IsNullOrEmpty(memberDto.Password)) { return(Tuple.Create(string.Empty, "信箱或密碼無效.")); } MemberData memberData = await this.memberRepository.GetMemberDataByEmail(memberDto.Email); if (memberData == null) { return(Tuple.Create(string.Empty, "無法根據信箱查詢到相關會員.")); } if (string.IsNullOrEmpty(memberData.Password)) { return(Tuple.Create(string.Empty, "密碼驗證失敗.")); } string dbPassword = Utility.DecryptAES(memberData.Password); if (!dbPassword.Equals(memberDto.Password)) { return(Tuple.Create(string.Empty, "密碼驗證失敗.")); } return(Tuple.Create(memberData.MemberID, string.Empty)); } catch (Exception ex) { this.logger.LogError($"Login Error >>> Email:{memberDto.Email} Password:{memberDto.Password}\n{ex}"); return(Tuple.Create(string.Empty, "會員登入發生錯誤.")); } }
public void AddMember(MemberDto memberDto) { string shortUrl = UrlShortner.ShortenUrl(memberDto.Url); Member member = new Member() { Id = Guid.NewGuid().ToString(), Name = memberDto.Name, WebsiteUrl = memberDto.Url, ShortUrl = shortUrl, Headings = new List <Heading>() }; var content = _webScrappingHelper.GetTextofHeadingTags(memberDto.Url); foreach (var item in content) { Heading heading = new Heading() { Content = item.Content, HeadingType = item.HeadingType, Id = Guid.NewGuid().ToString(), MemberId = member.Id }; member.Headings.Add(heading); } _memberDataProvider.AddMember(member); }
public async Task HandleMemberSubscriptionAsync_AlreadySubscribed_ShouldBeNotChanged() { //arrange var nullLogger = new NullLogger <SubscriberService>(); var fakeRepository = new FakeMailchimpRepository(); var subscriberService = new SubscriberService(nullLogger, fakeRepository); var subscribedSubscriber = new NewSubscriberDto() { Email = "*****@*****.**", Name = "Subscribed", Source = "UnitTest" }; //assume var assumedMember = await fakeRepository.GetMemberAsync(subscribedSubscriber.Email); Assume.That( assumedMember?.Status == "subscribed", "Missing subscribed member in the collection"); //act await subscriberService.HandleMemberSubscriptionAsync(subscribedSubscriber); MemberDto receivedMember = await fakeRepository.GetMemberAsync(subscribedSubscriber.Email); var memberChanges = fakeRepository.Members["*****@*****.**"]; //assert Assert.Single(memberChanges); Assert.Equal(subscribedSubscriber.Email, receivedMember.EmailAddress); Assert.Equal("subscribed", receivedMember.Status); }
public async Task <IHttpActionResult> Post([FromBody] MemberUi member) { if (!ModelState.IsValid) { return(InternalServerError()); } MemberDto memberDto = new MemberDto(); memberDto.Owner = member.Owner ?? ""; memberDto.PlotNumber = member.PlotNumber ?? ""; memberDto.PlotSquare = member.PlotSquare ?? ""; memberDto.PlotAddress = member.PlotAddress ?? ""; memberDto.OwnerAddress = member.OwnerAddress ?? ""; memberDto.CompanionshipId = member.CompanionshipId; memberDto.Addition = member.Addition ?? ""; try { await _memberService.WriteMemberAsync(memberDto); } catch (Exception e) { } return(Ok(member)); }
public async Task HandleMemberSubscriptionAsync_Pending_ShouldBeChangedByEmailsServiceToUnsubscribedThanPending() { //arrange var nullLogger = new NullLogger <SubscriberService>(); var fakeRepository = new FakeMailchimpRepository(); var subscriberService = new SubscriberService(nullLogger, fakeRepository); var newSubscriber = new NewSubscriberDto() { Email = "*****@*****.**", Name = "Marek", Source = "UnitTest" }; //act await subscriberService.HandleMemberSubscriptionAsync(newSubscriber); MemberDto receivedMember = await fakeRepository.GetMemberAsync(newSubscriber.Email); var memberHistory = fakeRepository.Members["*****@*****.**"]; //assert Assert.Equal(3, memberHistory.Count); Assert.Equal(newSubscriber.Email, receivedMember.EmailAddress); Assert.Equal("unsubscribed", memberHistory.ElementAt(1).Status); Assert.Equal("pending", receivedMember.Status); }
public Result Edit(int id, MemberDto dto) { dto.Id = id; var validator = new MemberValidator(_memberRepository); var result = validator.ValidateResult(dto); if (!result.Success) { return(result); } var entity = _memberRepository.AsNoTracking .FirstOrDefault(s => s.Id == dto.Id); if (entity == null) { return(new Result().SetBlankRedirect()); } Mapper.Map <Member>(dto, entity); if (!string.IsNullOrEmpty(dto.Password)) { entity.Salt = SecurityHelper.GenerateSalt(); entity.Password = SecurityHelper.GenerateHash(dto.Password, entity.Salt); } _memberRepository.Update(entity); _unitOfWork.Commit(); MemberCacheManager.ClearCache(); return(result.SetSuccess(Messages.RecordSaved)); }
public async Task <ActionResult> ApprovePhoto(PhotoForApprovalDto photo) { Photo ph = await _unitOfWork.PhotoRepository.GetPhotoById(photo.Id); if (ph == null) { return(NotFound("Photo not found")); } ph.IsApproved = photo.IsApproved; MemberDto user = await _unitOfWork.UserRepository.GetUserByPhotoIDAsync(photo.Id); if (user == null) { return(NotFound("User not found")); } if (string.IsNullOrEmpty(user.PhotoUrl)) { ph.IsMain = true; } _unitOfWork.PhotoRepository.Update(ph); if (await _unitOfWork.Complete()) { return(NoContent()); } return(BadRequest("Error while approving photo!")); }