Edit.vue 2.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <script setup>
  2. import { Head, useForm } from '@inertiajs/inertia-vue3'
  3. import AppTextInput from '@/components/AppTextInput.vue'
  4. import AppButtonCreate from '@/components/AppButtonCreate.vue'
  5. import AppButtonDelete from '@/components/AppButtonDelete.vue'
  6. import AppButtonAction from '@/components/AppButtonAction.vue'
  7. import AppModalAlert from '@/components/AppModalAlert.vue'
  8. import DefaultLayout from '@/layouts/DefaultLayout.vue'
  9. const props = defineProps({
  10. outlet: Object,
  11. })
  12. const form = useForm({
  13. outlet_number: props.outlet.outlet_number,
  14. name: props.outlet.name,
  15. phone: props.outlet.phone,
  16. address: props.outlet.address,
  17. })
  18. const submit = () => {
  19. form.put(route('outlets.update', props.outlet.id))
  20. }
  21. </script>
  22. <template>
  23. <Head title="Ubah Customer" />
  24. <DefaultLayout v-slot="{ toggleModalAlert }">
  25. <CRow>
  26. <CCol md="8">
  27. <CCard color="light" class="border-light">
  28. <CForm @submit.prevent="submit">
  29. <CRow class="p-4">
  30. <CCol md="6" class="mb-4">
  31. <CFormLabel>Id Outlet</CFormLabel>
  32. <CFormInput disabled v-model="form.outlet_number" />
  33. </CCol>
  34. <CCol md="6" class="mb-4">
  35. <AppTextInput label="Nama" placeholder="nama" :error="form.errors.name" v-model="form.name" />
  36. </CCol>
  37. <CCol md="6" class="mb-4">
  38. <AppTextInput label="Nomor HP" placeholder="nomor hp" :error="form.errors.phone" v-model="form.phone" />
  39. </CCol>
  40. <CCol md="6" class="mb-4">
  41. <AppTextInput
  42. label="Address"
  43. placeholder="address"
  44. :error="form.errors.address"
  45. v-model="form.address"
  46. />
  47. </CCol>
  48. </CRow>
  49. <CCardFooter class="d-flex justify-content-between">
  50. <AppButtonAction @click="toggleModalAlert">Hapus Outlet</AppButtonAction>
  51. <AppModalAlert>
  52. Anda yakin ingin mengahapus outlet ini?
  53. <template #footer>
  54. <AppButtonDelete :href="route('outlets.destroy', outlet.id)">Hapus Outlet</AppButtonDelete>
  55. </template>
  56. </AppModalAlert>
  57. <AppButtonCreate :disabled="form.processing">Ubah Outlet</AppButtonCreate>
  58. </CCardFooter>
  59. </CForm>
  60. </CCard>
  61. </CCol>
  62. </CRow>
  63. </DefaultLayout>
  64. </template>