Bill.js 578 B

12345678910111213141516171819202122232425262728293031
  1. export default class Bill{
  2. constructor(id, name, amount){
  3. this._id = id;
  4. this._name = name;
  5. this._amount = amount;
  6. }
  7. static create(name, amount){
  8. return new Bill(
  9. crypto.randomUUID(),
  10. name,
  11. amount
  12. );
  13. }
  14. static fromObject(data){
  15. return new Bill(
  16. data.id,
  17. data.name,
  18. data.amount
  19. );
  20. }
  21. serialize(){
  22. return {
  23. id: this._id,
  24. name: this._name,
  25. amount: this._amount
  26. };
  27. }
  28. }