import 'package:niogu_app/core/enums/stock_card_type.dart';
import 'package:niogu_app/core/enums/stock_type.dart';
import 'package:niogu_app/core/enums/sync_status.dart';
import 'package:uuid/uuid.dart';

class StockCard {
  final String localId;
  final String outletInventoryId;
  final String userId;
  final StockCardType stockCardType;
  final double qtyChange;
  final double currentStock;
  final StockType stockType;
  final bool modeChange;
  final String? modeBeforeChange;
  final String? modeAfterChange;
  final double costPrice;
  final String? referenceId;
  final String? documentNumber;
  final String? notes;
  final SyncStatus syncStatus;

  StockCard({
    String? localId,
    required this.outletInventoryId,
    required this.userId,
    required this.stockCardType,
    required this.qtyChange,
    required this.currentStock,
    required this.costPrice,
    required this.stockType,
    this.modeChange = false,
    this.modeBeforeChange,
    this.modeAfterChange,
    this.referenceId,
    this.documentNumber,
    this.notes,
    this.syncStatus = SyncStatus.dirty
  }) : localId = localId ?? Uuid().v7().toString();
}