updateUnreadMessages method

Future updateUnreadMessages(
  1. String ticketId
)

Implementation

Future updateUnreadMessages(String ticketId) async {
  // int index = value.ticketStatus
  //         ?.indexWhere((status) => status.ticketid == ticketId) ??
  //     -1;

  // if (index != -1) {
  // value.ticketStatus?[index] =
  //     TicketStatus(ticketid: ticketId, isRead: isRead);
  var updateTicketResponse = await _repository.updateTicketStatus(ticketId);

  if (updateTicketResponse.isSuccessful) {
    var statusBody = updateTicketResponse.body;
    var updatedTicketStatus =
        TicketStatus(ticketid: ticketId, isRead: statusBody ?? true);
    if (kDebugMode) {
      print('statuss::::: $statusBody');
    }
    var statusExists =
        value.ticketStatus?.any((e) => e.ticketid == ticketId) ?? false;
    var ticketStatusList = statusExists
        ? value.ticketStatus
            ?.map((e) => e.ticketid == ticketId ? updatedTicketStatus : e)
        : [...?value.ticketStatus, updatedTicketStatus];

    value = value.copyWith(ticketStatus: ticketStatusList?.toList());
  } else {
    if (kDebugMode) {
      print('updateTicketResponse:::::::$updateTicketResponse');
    }
  }
  // }
}