class SettlementStateService:
    def __init__(self):
        self._transaksi_data = []
        self._non_tunai_summary = {}
        self._total_non_tunai = 0.0

    def set_transaksi_data(self, transaksi_data):
        self._transaksi_data = list(transaksi_data or [])

    def get_transaksi_data(self):
        return self._transaksi_data

    def has_transaksi_data(self):
        return bool(self._transaksi_data)

    def set_non_tunai_summary(self, summary, total_non_tunai):
        self._non_tunai_summary = summary or {}
        self._total_non_tunai = float(total_non_tunai or 0.0)

    def get_non_tunai_summary(self):
        return self._non_tunai_summary

    def get_total_non_tunai(self):
        return float(self._total_non_tunai or 0.0)

    def get_total_settlement(self):
        total = 0.0
        for item in self._transaksi_data:
            total += float((item or {}).get("total", 0) or 0)
        return total
