MealCodeCreate.vue 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. <template>
  2. <el-dialog
  3. :visible.sync="visible"
  4. v-bind="modalOptions"
  5. >
  6. <el-form
  7. ref="formData"
  8. :model="formData"
  9. size="mini"
  10. label-position="left"
  11. label-suffix=":"
  12. label-width="200px"
  13. >
  14. <!-- 桌号二维码 -->
  15. <el-form-item label="桌号ID" prop="deskId">
  16. {{ formData.deskId || '--' }}
  17. </el-form-item>
  18. <el-form-item label="桌号二维码" prop="codeImage">
  19. <el-image v-if="formData.codeImage" :src="formData.codeImage" style="width:380px; height:380px" fit="fill" :preview-src-list="[ formData.codeImage ]" />
  20. <span v-else>--</span>
  21. </el-form-item>
  22. </el-form>
  23. </el-dialog>
  24. </template>
  25. <script>
  26. import { createQRShopAuthDept } from '@/api/mealManagement/TableNumberSetting'
  27. export default {
  28. name: 'MealCodeCreate',
  29. data() {
  30. return {
  31. modalOptions: {
  32. closeOnClickModal: false,
  33. width: '800px',
  34. title: '查看桌号二维码详情'
  35. },
  36. visible: false,
  37. formData: {
  38. deskId: '',
  39. codeImage: ''
  40. }
  41. }
  42. },
  43. methods: {
  44. handleClose() {
  45. this.visible = false
  46. },
  47. handleOpen(params = {}) {
  48. this.formData.deskId = params.id
  49. // this.formData = Object.assign(this.$options.data().formData, params)
  50. if (params.id) {
  51. this.getInfo(params.id)
  52. }
  53. this.visible = true
  54. },
  55. async getInfo(id) {
  56. const loading = this.$loading({ text: '加载中' })
  57. try {
  58. const res = await createQRShopAuthDept({ id })
  59. // this.formData = Object.assign(this.$options.data().formData, res.data, {
  60. // id: res.data.id || ''
  61. // })
  62. this.formData.codeImage = res.data
  63. } finally {
  64. loading.close()
  65. }
  66. }
  67. }
  68. }
  69. </script>