AdminVerifyService.AddFriends.cs 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. using System.Threading.Tasks;
  2. using GxPress.EnumConst;
  3. using GxPress.Request._AdminVerify;
  4. using System.Transactions;
  5. namespace GxPress.Service.Implement.AdminVerify
  6. {
  7. public partial class AdminVerifyService
  8. {
  9. /// <summary>
  10. /// 添加好友
  11. /// </summary>
  12. /// <param name="request"></param>
  13. /// <returns></returns>
  14. public async Task<bool> AddFriendAsync(AdminVerifyInFriendsRequest request)
  15. {
  16. try
  17. {
  18. using (var transactions = new TransactionScope())
  19. {
  20. //判断是否是好友
  21. if (await friendsRepository.ExistsAsync(request.FriendsUserId, request.UserId))
  22. return false;
  23. //获取用户信息
  24. var user = await _userRepository.GetAsync(request.UserId);
  25. var entity = new Entity.AdminVerify()
  26. {
  27. VerifyType = GroupTypeConst.Friends,
  28. DisposeType = 0,
  29. AdminId = request.FriendsUserId,
  30. UserId = request.UserId,
  31. SourceId = 0,
  32. Name = user.Name,
  33. AvatarUrl = user.AvatarUrl,
  34. Remark = request.Remark,
  35. SourceType = 0,
  36. AddressBookGroupId = request.AddressBookGroupId
  37. };
  38. await _adminVerifyRepository.InsertAsync(entity);
  39. transactions.Complete();
  40. }
  41. }
  42. catch
  43. {
  44. return false;
  45. }
  46. return true;
  47. }
  48. }
  49. }