Show.vue 3.2KB

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