Show.vue 3.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <script setup>
  2. import { useForm } from '@/composables/useForm'
  3. import { IDRCurrencyFormat } from '@/utils/helpers'
  4. import { cartTable } from './config'
  5. import Cart from './Components/Cart.vue'
  6. import { useCart } from './Composables/useCart'
  7. import DashboardLayout from '@/layouts/Dashboard/DashboardLayout.vue'
  8. const props = defineProps({
  9. number: String,
  10. ppn: Number,
  11. status: String,
  12. ppnChecked: Boolean,
  13. customer: Object,
  14. saleDetail: Array,
  15. })
  16. const form = useForm({
  17. status: props.status,
  18. customer: props.customer,
  19. ppn: props.ppn,
  20. checkedPpn: props.ppnChecked,
  21. })
  22. const { cart, totalCartPrice } = useCart(form, props.saleDetail)
  23. </script>
  24. <template>
  25. <DashboardLayout title="Lihat Pembelian">
  26. <DynamicDialog />
  27. <div class="grid">
  28. <div class="col-12 md:col-8">
  29. <div class="grid">
  30. <div class="col-12">
  31. <Card>
  32. <template #title>
  33. <h2 class="text-2xl font-bold">Detail Pembelian</h2>
  34. </template>
  35. <template #content>
  36. <div class="grid">
  37. <div class="col-12">
  38. <div class="grid">
  39. <div class="col">
  40. <h3 class="text-base">Nama</h3>
  41. <span>{{ customer.name }}</span>
  42. </div>
  43. <div class="col">
  44. <h3 class="text-base">Alamat</h3>
  45. <span>{{ customer.address }}</span>
  46. </div>
  47. <div class="col">
  48. <h3 class="text-base">No HP</h3>
  49. <span>{{ customer.phone }}</span>
  50. </div>
  51. <div class="col">
  52. <h3 class="text-base">NPWP</h3>
  53. <span>{{ customer.npwp }}</span>
  54. </div>
  55. </div>
  56. </div>
  57. <div class="col-12">
  58. <div class="grid">
  59. <div class="col">
  60. <h3 class="text-base">Nomor Pembelian</h3>
  61. <span>{{ number }}</span>
  62. </div>
  63. <div class="col">
  64. <h3 class="text-base">Status Pembelian</h3>
  65. <span>{{ status }}</span>
  66. </div>
  67. <div class="col">
  68. <h3 class="text-base">Total Harga</h3>
  69. <span>{{ IDRCurrencyFormat(totalCartPrice()) }}</span>
  70. </div>
  71. <div class="col"></div>
  72. </div>
  73. </div>
  74. </div>
  75. </template>
  76. </Card>
  77. </div>
  78. <div class="col-12">
  79. <Cart
  80. title="Keranjang Produk"
  81. :cart="cart"
  82. :header-table="cartTable"
  83. :btn-ppn-disabled="true"
  84. :btn-delete-show="false"
  85. :btn-edit-show="false"
  86. v-model:checked-ppn="form.checkedPpn"
  87. />
  88. </div>
  89. </div>
  90. </div>
  91. </div>
  92. </DashboardLayout>
  93. </template>