Details.vue 2.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. <script setup>
  2. defineProps([
  3. 'title',
  4. 'number',
  5. 'price',
  6. 'qty',
  7. 'ppn',
  8. 'status',
  9. 'person',
  10. 'product',
  11. ])
  12. </script>
  13. <template>
  14. <Card>
  15. <template #title>
  16. <h2 class="text-2xl font-bold">{{ title }}</h2>
  17. </template>
  18. <template #content>
  19. <div class="grid">
  20. <div class="col-12">
  21. <div class="grid">
  22. <div class="col">
  23. <h3 class="text-base">Nomor Penjualan</h3>
  24. <span>{{ number }}</span>
  25. </div>
  26. <div class="col">
  27. <h3 class="text-base">Status Penjualan</h3>
  28. <span>{{ status }}</span>
  29. </div>
  30. <div class="col"></div>
  31. </div>
  32. </div>
  33. <div
  34. v-if="
  35. person !== null &&
  36. typeof person === 'object' &&
  37. Object.keys(person).length
  38. "
  39. class="col-12"
  40. >
  41. <div class="grid">
  42. <div class="col">
  43. <h3 class="text-base">Nama</h3>
  44. <span>{{ person.name }}</span>
  45. </div>
  46. <div class="col">
  47. <h3 class="text-base">Alamat</h3>
  48. <span>{{ person.address }}</span>
  49. </div>
  50. <div class="col">
  51. <h3 class="text-base">NPWP</h3>
  52. <span>{{ person.npwp }}</span>
  53. </div>
  54. </div>
  55. </div>
  56. <div class="col-12">
  57. <div
  58. v-if="
  59. product !== null &&
  60. typeof product === 'object' &&
  61. Object.keys(product).length
  62. "
  63. class="grid"
  64. >
  65. <div class="col">
  66. <h3 class="text-base">Nomor Produk</h3>
  67. <span>{{ product.number }}</span>
  68. </div>
  69. <div class="col">
  70. <h3 class="text-base">Nama Produk</h3>
  71. <span>{{ product.name }}</span>
  72. </div>
  73. <div class="col">
  74. <h3 class="text-base">Satuan</h3>
  75. <span>{{ product.unit }}</span>
  76. </div>
  77. </div>
  78. </div>
  79. <Divider type="dashed" />
  80. <div class="col-12">
  81. <div class="grid">
  82. <div class="col">
  83. <h3 class="text-base">Harga</h3>
  84. <span>{{ price }}</span>
  85. </div>
  86. <div class="col">
  87. <h3 class="text-base">Kuantitas</h3>
  88. <span>{{ qty }}</span>
  89. </div>
  90. <div class="col">
  91. <h3 class="text-base">PPN</h3>
  92. <span>{{ ppn }}</span>
  93. </div>
  94. </div>
  95. </div>
  96. </div>
  97. </template>
  98. </Card>
  99. </template>