Explorar el Código

Merge branch 'dev' of https://git.citupro.com/zhengnaiwen_citu/menduner-admin into dev

lifanagju_citu hace 2 meses
padre
commit
3799292afe
Se han modificado 1 ficheros con 27 adiciones y 8 borrados
  1. 27 8
      src/views/menduner/system/talentMap/maintenance/gather/index.vue

+ 27 - 8
src/views/menduner/system/talentMap/maintenance/gather/index.vue

@@ -102,23 +102,24 @@
           ref="uploadRef"
           v-model:file-list="fileList"
           :action="uploadUrl"
-          :auto-upload="false"
+          :auto-upload="true"
           :data="fileData"
+          :before-upload="beforeUpload"
           :on-change="handleChange"
           :on-error="submitFormError"
           :on-exceed="handleExceed"
           :http-request="httpRequest"
-          accept=".pdf"
+          :accept="fileUploadType"
           drag
-          :limit="5"
+          :limit="fileUploadLimit"
           multiple
           class="flex-1"
         >
           <i class="el-icon-upload"></i>
-          <div class="el-upload__text">仅允许导入PDF格式文件! 将文件拖到此处,或 <em>点击上传</em></div>
+          <div class="el-upload__text">仅允许导入{{ fileUploadType }}格式文件! 将文件拖到此处,或 <em>点击上传</em></div>
           <template #tip>
             <div class="el-upload__tip color-red">
-              提示:最多可上传5份简历({{ fileList.length }}/5
+              提示:最多可上传{{ fileUploadLimit }}份简历({{ fileList.length }}/{{ fileUploadLimit }}
             </div>
           </template>
         </el-upload>
@@ -128,11 +129,11 @@
         <UploadImgs
           v-model="cardImgUrl"
           :uploadSuccessTip="false"
-          :limit="5"
+          :limit="cardUploadLimit"
           @handle-change="cardUploadChange"
           height="150px" width="150px" style="margin: 20px auto; text-align: center;"
         >
-          <template #tip>{{ cardImgUrl ? `${cardImgUrl.length}/5` : '请上传名片(最多可上传5张)' }}</template>
+          <template #tip>{{ cardImgUrl ? `${cardImgUrl.length}/${cardUploadLimit}` : `请上传名片(最多可上传${cardUploadLimit}张)` }}</template>
         </UploadImgs>
       </template>
       <!-- 杂项 -->
@@ -191,6 +192,9 @@ const { uploadUrl, httpRequest } = useUpload()
 const message = useMessage() // 消息弹窗
 const { t } = useI18n() // 国际化
 
+const cardUploadLimit = 5
+const fileUploadLimit = 3
+const fileUploadType = '.pdf'
 const loading = ref(false) // 列表的加载中
 const list = ref([]) // 列表的数据
 const total = ref(0) // 列表的总页数
@@ -374,11 +378,26 @@ const handleChange = async (file) => {
   fileData.value.path = file.name
   unref(uploadRef)?.submit()
 }
+
+const beforeUpload = (file) => {
+  let fileExtension = ''
+  if (file.name.lastIndexOf('.') > -1) {
+    fileExtension = file.name.slice(file.name.lastIndexOf('.') + 1)
+  }
+  const isImg = [fileUploadType.split('.')[1]].some((type) => {
+    if (file.type.indexOf(type) > -1) return true
+    return !!(fileExtension && fileExtension.indexOf(type) > -1)
+  })
+  if (!isImg) {
+    message.error(`文件格式不正确, 请上传${fileUploadType}格式!`)
+    return false
+  }
+}
 const submitFormError = () => {
   message.error('上传失败,请您重新上传!')
 }
 const handleExceed = () => {
-  message.error('最多只能上传一个文件!')
+  message.error(`最多只能上传${fileUploadLimit}个文件!`)
 }
 
 // 名片解析