人生啊人生 há 3 semanas atrás
pai
commit
80430c1dbb

+ 38 - 3
user_web/src/view/admin/components/ManageSchool/ModelManageStudent.vue

@@ -1162,16 +1162,47 @@ const downloadFile = async (url, fileName) => {
 
 // 模板下载
 const downTemplateEvent = () => {
-
     let url = new URL("../../../../assets/template/student_template.xlsx", import.meta.url).href;
     // console.log("模板下载", url);
     downloadFile(url, "批量导入学生模板.xlsx");
-    
 }
 
+let objFileXlsx = ref(null);
+
 // 批量导入
 const importTemplateEvent = () => {
-    console.log("批量导入");
+    // console.log("批量导入");
+    objFileXlsx.value.click();
+}
+
+/**
+ * 开始触发批量导入逻辑
+ */
+const objFileXlsxChange = () => {
+
+    var objFormData = new FormData();
+    objFormData.append('classId', props.configDb?.classId);
+    
+    for (var i = 0; i < objFileXlsx.value.files.length; i++) {
+        var file = objFileXlsx.value.files[i];
+        // 不断循环增加要上传的目标控件并且已经选择好了图片目录
+        objFormData.append('file', file)
+    }
+    
+    schoolImportStudent(objFormData).then(response => {
+
+        console.log("上传返回的结果", response);
+
+
+        
+        // 上传完成之后,一定要重置null,否则下次上传选同名文件上传不了
+        objFileXlsx.value.value = "";
+
+    }).catch(error => {
+        // 上传完成之后,一定要重置null,否则下次上传选同名文件上传不了
+        objFileXlsx.value.value = "";
+    });
+    
 }
 
 
@@ -1215,6 +1246,10 @@ const importTemplateEvent = () => {
                     <div class="rowBtn rowBtn1" @click="importTemplateEvent" >
                         <img src="./../../assets/img/manageUser/import.svg" alt="" />
                         <span class="rowBtn-text rowBtn-text1">批量导入</span>
+                        <!-- 隐藏上传用的 -->
+                        <input ref="objFileXlsx" style="display:none;" type="file"
+                        accept=".xlsx" multiple="multiple" @change="objFileXlsxChange()" />
+
                     </div>
                     <!-- <div class="rowBtn rowBtn1">
                         <img src="./../../assets/img/manageUser/export.svg" alt="" />