from dataclasses import dataclass from pypos.core.base_model import BaseModel # upgraded: inherit base class @dataclass class DetailTransaksi(BaseModel): produk_id: int produk_nama: str produk_ord_hrg: float produk_ord_jml: int produk_jenis: str produk_ord_diskon: float satuan :str # edited by glg # Metadata relasi promo free untuk persist DB dan audit. parent_id: int = 0 detail_tipe: str = "items" produk_keterangan: str = "" ext_status: str = "" ext_intext: str = "" free_source_produk_id: int = 0 free_source_produk_nama: str = "" def to_tuple_with_transaksi_id(self, transaksi_id): return ( transaksi_id, self.produk_id, self.produk_nama, self.produk_ord_hrg, self.produk_ord_jml, self.produk_jenis, self.produk_ord_diskon, self.satuan ) def to_dict_with_transaksi_id(self, transaksi_id): return { 'transaksi_id': transaksi_id, 'produk_id': self.produk_id, 'produk_nama': self.produk_nama, 'produk_ord_hrg': self.produk_ord_hrg, 'produk_ord_jml': self.produk_ord_jml, 'produk_jenis': self.produk_jenis, 'produk_ord_diskon': self.produk_ord_diskon, 'satuan': self.satuan, 'parent_id': self.parent_id, 'detail_tipe': self.detail_tipe, 'produk_keterangan': self.produk_keterangan, 'ext_status': self.ext_status, 'ext_intext': self.ext_intext, } @dataclass class TransaksiDetail(BaseModel): produk_id: int produk_nama: str produk_ord_hrg: float produk_ord_jml: int produk_jenis: str produk_ord_diskon: float satuan : str parent_id: int = 0 detail_tipe: str = "items" produk_keterangan: str = "" ext_status: str = "" ext_intext: str = "" free_source_produk_id: int = 0 free_source_produk_nama: str = "" def to_dict_with_transaksi_id(self, transaksi_id): return { 'transaksi_id': transaksi_id, 'produk_id': self.produk_id, 'produk_nama': self.produk_nama, 'produk_ord_hrg': self.produk_ord_hrg, 'produk_ord_jml': self.produk_ord_jml, 'produk_jenis': self.produk_jenis, 'produk_ord_diskon': self.produk_ord_diskon, 'satuan':self.satuan, 'parent_id': self.parent_id, 'detail_tipe': self.detail_tipe, 'produk_keterangan': self.produk_keterangan, 'ext_status': self.ext_status, 'ext_intext': self.ext_intext, }