disableTicket method
Future<TicketWeebi>
disableTicket(
- TicketWeebi ticketData
)
Implementation
@action
Future<TicketWeebi> disableTicket(TicketWeebi ticketData) async {
await _updateStatusTicketServer(ticketData);
final disabledTicket =
await _ticketsService.disableTicketRpc.request(ticketData);
final temp = tickets.firstWhereOrNull((element) =>
element.id == disabledTicket.id &&
element.creationDate == disabledTicket.creationDate);
if (temp != null) {
tickets.remove(temp);
tickets.add(disabledTicket);
setChange();
// we withdraw this qt from stocksBuffer by inverting the movement (!)
_computeStocksDetail(
!disabledTicket.ticketType.isBoutiqueInput,
disabledTicket.items,
);
// we withdraw the amount from balanceBuffer by inverting the movement (!)
if (disabledTicket.ticketType == TicketType.sellCovered) {
_computeBalanceDetail(
disabledTicket.contactId, !true, disabledTicket.received);
/// crediting contact balance
} else if (disabledTicket.ticketType == TicketType.spendDeferred) {
_computeBalanceDetail(disabledTicket.contactId, !true,
disabledTicket.totalCostTaxAndPromoIncluded);
/// debiting contact balance
} else if (disabledTicket.ticketType == TicketType.sellDeferred) {
_computeBalanceDetail(disabledTicket.contactId, !false,
disabledTicket.totalPriceTaxAndPromoIncluded);
/// debiting contact balance
} else if (disabledTicket.ticketType == TicketType.spendCovered) {
_computeBalanceDetail(
disabledTicket.contactId, !false, disabledTicket.received);
}
return disabledTicket;
} else {
throw 'disabledTicket not found';
}
}