public IResult ConfirmContactRequest(ContactRequestDto contactRequestDto) { using WordBookContext db = new(); ContactRequest confirmedContactRequest = db.ContactRequests.Where(c => c.ContactRequestId == contactRequestDto.ContactRequestId).SingleOrDefault(); if (confirmedContactRequest == null) { return(new ErrorResult(Messages.ContactRequestNotFound)); } Contact addedContactToSender = new(); addedContactToSender.ContactId = 0; addedContactToSender.UserId = confirmedContactRequest.SenderId; addedContactToSender.FriendId = confirmedContactRequest.ReceiverId; addedContactToSender.CreatedAt = System.DateTimeOffset.UtcNow.ToUnixTimeMilliseconds().ToString(); db.Contacts.Add(addedContactToSender); Contact addedContactToReceiver = new(); addedContactToReceiver.ContactId = 0; addedContactToReceiver.UserId = confirmedContactRequest.ReceiverId; addedContactToReceiver.FriendId = confirmedContactRequest.SenderId; addedContactToReceiver.CreatedAt = System.DateTimeOffset.UtcNow.ToUnixTimeMilliseconds().ToString(); db.Contacts.Add(addedContactToReceiver); db.ContactRequests.Remove(confirmedContactRequest); db.SaveChanges(); return(new SuccessResult(Messages.ContactRequestConfirmed)); }
public IResult DeleteContactRequest(ContactRequestDto contactRequestDto) { using WordBookContext db = new(); ContactRequest deletedContactRequest = db.ContactRequests.Where(c => c.ContactRequestId == contactRequestDto.ContactRequestId).SingleOrDefault(); if (deletedContactRequest == null) { return(new ErrorResult(Messages.ContactRequestNotFound)); } db.ContactRequests.Remove(deletedContactRequest); db.SaveChanges(); return(new SuccessResult(Messages.ContactRequestDeleted)); }
public async Task <IActionResult> GetContact([FromQuery] ContactRequestDto request) { var path = string.Format("v1/contact?{0}", request.GetQueryString()); var result = await ACBOpenApi.Call <dynamic>(Request.HttpContext, MethodBase.GET, path, null, null); if (result.Data != null) { return(Ok(result)); } else { return(BadRequest(result)); } }
public IResult SendContactRequest(ContactRequestDto contactRequestDto) { using WordBookContext db = new(); if (db.ContactRequests.Any(c => c.SenderId == contactRequestDto.SenderId && c.ReceiverId == contactRequestDto.ReceiverId)) { return(new ErrorResult(Messages.ContactRequestAlreadySent)); } ContactRequest sentContactRequest = new() { ContactRequestId = 0, SenderId = contactRequestDto.SenderId, ReceiverId = contactRequestDto.ReceiverId, CreatedAt = System.DateTimeOffset.UtcNow.ToUnixTimeMilliseconds().ToString() }; db.ContactRequests.Add(sentContactRequest); db.SaveChanges(); return(new SuccessResult(Messages.ContactRequestSent)); }