فهرست منبع

feat(authentication): 优化用户认证页面功能

- 添加上传附件功能
- 完善referrer字段的动态显示和重置逻辑
- 增加表单提交后的禁用状态管理
- 优化上传组件的禁用控制
EvilDragon 1 ماه پیش
والد
کامیت
a8cc620dc5
2فایلهای تغییر یافته به همراه8 افزوده شده و 2 حذف شده
  1. 2 1
      packages/app/src/components/upload-evo.vue
  2. 6 1
      packages/app/src/pages/mine/authentication/index.vue

+ 2 - 1
packages/app/src/components/upload-evo.vue

@@ -1,7 +1,7 @@
 <script setup lang="ts">
 // defineProps<>()
 const modelValue = defineModel({ type: String, default: '' })
-const props = defineProps<{ multiple?: boolean; limit?: number }>()
+const props = defineProps<{ multiple?: boolean; limit?: number; disabled?: boolean }>()
 const fileList = ref([])
 const action = ref(`${import.meta.env.VITE_SERVER_BASEURL}/app-api/infra/file/upload`)
 const fileUrls = computed(() => fileList.value.map(({ response }) => JSON.parse(response).data))
@@ -30,6 +30,7 @@ onMounted(() => {
 </script>
 <template>
   <wd-upload
+    :disabled="disabled"
     :file-list="fileList"
     image-mode="aspectFill"
     :action="action"

+ 6 - 1
packages/app/src/pages/mine/authentication/index.vue

@@ -38,6 +38,7 @@ const { error } = useToast()
 const formData = ref<any>({ mobile: userInfo.value?.mobile })
 const attachment = ref()
 const formInited = ref(false)
+const uploadDisabled = ref(false)
 const { data: userAuthInfo, run: setUserAuthInfo } = useRequest(() => getUserAuthInfo())
 const schema = ref<DataFormSchema>({
   channelSource: {
@@ -104,8 +105,10 @@ const setReferrerExisting = (value: string) => {
     schema.value.referrer.props.placeholder = {
       '1': '请填写渠道邀请码',
       '2': '请填写设计师会员号',
+      '3': '请填写材料商名称',
     }[value]
   }
+  formData.value.referrer = ''
 }
 const handleSubmit = async () => {
   console.log(formData.value)
@@ -210,6 +213,7 @@ onMounted(async () => {
     Object.entries(schema.value).forEach(([key]) => {
       schema.value[key].props.disabled = true
     })
+    uploadDisabled.value = true
     alert({
       msg: '您的认证申请已提交,请耐心等待审核,审核通过后您将获得通知',
       title: '提示',
@@ -256,11 +260,12 @@ defineExpose({})
         ></SectionHeading>
         <div class="h-0.25 bg-[#e1e1e1] mb-5"></div>
         <!-- <wd-upload></wd-upload> -->
-        <UploadEvo v-if="formInited" v-model="attachment"></UploadEvo>
+        <UploadEvo v-if="formInited" v-model="attachment" :disabled="uploadDisabled"></UploadEvo>
       </Card>
       <div class="flex-1"></div>
       <div>
         <wd-button
+          v-if="!(isDesigner || String(userInfo.userAuthStatus) === '1')"
           block
           :round="false"
           :disabled="isDesigner || userInfo.userAuthStatus === 1"