Xiao_123 пре 6 месеци
родитељ
комит
7c2d25a88a
1 измењених фајлова са 25 додато и 11 уклоњено
  1. 25 11
      src/views/mall/exchange.vue

+ 25 - 11
src/views/mall/exchange.vue

@@ -35,8 +35,7 @@ import Dialog from '@/components/CtDialog'
 import Snackbar from '@/plugins/snackbar'
 import { redeemSubmit } from '@/api/mall'
 import { useUserStore } from '@/store/user'
-import { checkAddress } from '@/utils/validate'
-
+import { getDict } from '@/hooks/web/useDictionaries'
 
 const emit = defineEmits(['login', 'toTaskCenter'])
 defineProps({
@@ -65,19 +64,25 @@ const formItems = ref({
       outlined: true,
       rules: [v => !!v || '请填写收货人联系电话']
     },
+    {
+      type: 'cascade',
+      key: 'address',
+      value: [],
+      label: '收货地址',
+      itemText: 'name',
+      itemValue: 'name',
+      required: true,
+      clearable: false,
+      emitPath: true,
+      items: []
+    },
     {
       type: 'textarea',
       key: 'contactAddress',
-      value: '先烈中路100号大院203室',
+      value: '',
       hide: false,
-      label: '收获详细地址 *',
-      rules: [
-        v => !!v || '请填写收获详细地址',
-        value => {
-          if (!value || (value && checkAddress(value))) return true
-          return '请输入正确的注册地址'
-        }
-      ]
+      label: '收货详细地址 *',
+      rules: [ v => !!v || '请填写收货详细地址' ]
     }
   ]
 })
@@ -91,6 +96,12 @@ const dataList = ref([
   { name: '减压捏捏乐', point: 500, url: 'https://minio.menduner.com/dev/menduner/pinchMusic.png', type: 1 }
 ])
 
+// 期望城市、其它感兴趣的城市
+getDict('areaTreeData', null, 'areaTreeData').then(({ data }) => {
+  data = data?.length && data || []
+  formItems.value.options.find(e => e.key === 'address').items = data
+})
+
 // 详情说明弹窗
 const showDetail = ref(false)
 const detailItem = ref({})
@@ -117,6 +128,9 @@ const handleSubmit = async () =>{
   formItems.value.options.forEach(e => {
     obj[e.key] = e.value
   })
+  if (!obj.address || !obj.address.length) return Snackbar.warning('请选择收货地址')
+  obj.contactAddress = obj.address.join('') + obj.contactAddress
+  delete obj.address
   await redeemSubmit(obj)
   Snackbar.success('提交成功')
   showDetail.value = false