public async Task <RESTResult> AddOrUpdateUserInfo(UserInfoDataTransferObject userInfo, Guid userId) { RESTResult result = new RESTResult { Code = RESTStatus.Failed }; var userInfos = await _userInfoRepository.GetAllListAsync(item => item.UserId.Equals(userId)); if (userInfos.Count <= 0) { //TODO:Add user info var userInfoModle = Mapper.Map <UserInfoDataTransferObject, UserInfo>(userInfo); userInfoModle.UserId = userId; await _userInfoRepository.InsertAsync(userInfoModle); result.Code = RESTStatus.Success; result.Message = "Create User info successful"; return(result); } else { //TODO:Update user info var userinfoEntity = userInfos.First(); userinfoEntity.FirstName = userInfo.FirstName; userinfoEntity.LastName = userInfo.LastName; userinfoEntity.NickName = userInfo.NickName; userinfoEntity.CardType = userInfo.CardType; userinfoEntity.CardNo = userInfo.CardNo; userinfoEntity.Phone = userInfo.Phone; userinfoEntity.Tel = userInfo.Tel; userinfoEntity.Address = userInfo.Address; userinfoEntity.BirthDate = userInfo.BirthDate; userinfoEntity.ExtendInfo = userInfo.ExtendInfo; await _userInfoRepository.UpdateAsync(userinfoEntity); result.Code = RESTStatus.Success; result.Data = userInfo; } return(result); }
public async Task <IActionResult> CreateUserInfo(Guid userId, [FromBody] UserInfoDataTransferObject userInfo) { return(Ok(await _userAppService.AddOrUpdateUserInfo(userInfo, userId))); }