followUser method

Future<void> followUser({
  1. required String uid,
  2. required String friendId,
})

Implementation

Future<void> followUser({
  required final String uid,
  required final String friendId,
}) async {
  try {
    final _currentMillis = DateTime.now().millisecondsSinceEpoch;

    final _receivedRef = PeamanReferenceHelper.receivedFollowRequestsCol(
      uid: friendId,
    ).doc(uid);
    final _sentRef = PeamanReferenceHelper.sentFollowRequestsCol(
      uid: uid,
    ).doc(friendId);

    final _received = PeamanReceivedFollowRequest(
      uid: uid,
      createdAt: _currentMillis,
      updatedAt: _currentMillis,
    );
    final _sent = PeamanSentFollowRequest(
      uid: friendId,
      createdAt: _currentMillis,
      updatedAt: _currentMillis,
    );

    final _receivedFuture = _receivedRef.set(_received.toJson());
    final _sentFuture = _sentRef.set(_sent.toJson());

    await Future.wait([
      _receivedFuture,
      _sentFuture,
    ]);
    print('Success: Following user $friendId');
  } catch (e) {
    print(e);
    print('Error!!!: Following user');
  }
}