Commit 3e33a507 authored by 李苏's avatar 李苏 💬

调整

parent f2bcfe56
...@@ -4,15 +4,18 @@ ...@@ -4,15 +4,18 @@
<el-upload :accept="'.xls,.xlsx,.csv'" :before-upload="BeforeUnloadEvent" :headers="{ <el-upload :accept="'.xls,.xlsx,.csv'" :before-upload="BeforeUnloadEvent" :headers="{
'Content-Type': 'multipart/form-data' 'Content-Type': 'multipart/form-data'
}" :on-exceed='exceed' :limit='1' class="upload-demo" ref="upload" :action="action()" :on-preview="handlePreview" }" :on-exceed='exceed' :limit='1' class="upload-demo" ref="upload" :action="action()" :on-preview="handlePreview"
:on-remove="handleRemove" :file-list="fileList" :on-success='success' :on-error='error' :on-remove="handleRemove" :file-list="fileList" :on-success='success' :on-change='change' :on-error='error'
:auto-upload="false"> :auto-upload="false">
<el-button slot="trigger" size="small" type="primary">选择文件</el-button> <el-button slot="trigger" size="small" type="primary">选择文件</el-button>
<div class="flex" style="margin-top: 10px;"> <div class="flex" style="margin-top: 10px;">
<span style="line-height: 30px;width: 45px;font-size: 12px;" >日期:</span> <el-date-picker type="date" v-model="date" /> <span style="line-height: 30px;width: 45px;font-size: 12px;" >日期:</span> <el-date-picker type="month" v-model="date" />
</div> </div>
<div slot="tip" class="el-upload__tip">如没有模板文件请点击<span @click="toDownload" <div slot="tip" class="el-upload__tip">如没有模板文件请点击<span @click="toDownload"
style="color: cornflowerblue;cursor: pointer;">模板下载</span></div> style="color: cornflowerblue;cursor: pointer;">模板下载</span><br>
<span>备注:模板内容的异物发现时间要在同一个年份和月份中。此处的选择日期要和模板的年月一致</span>
</div>
</el-upload> </el-upload>
</div> </div>
<div slot="reFooter" class="refooter"> <div slot="reFooter" class="refooter">
...@@ -26,7 +29,7 @@ ...@@ -26,7 +29,7 @@
<script> <script>
import * as XLSX from 'xlsx';
import request from 'common/src/utils/request' import request from 'common/src/utils/request'
import { import {
importTemp importTemp
...@@ -49,29 +52,51 @@ ...@@ -49,29 +52,51 @@
}, },
data() { data() {
return { return {
date:new Date().getTime(), date:'',
fileList: [], fileList: [],
loading:false, loading:false,
} }
}, },
methods: { methods: {
change(file) {
// const name = file.name
// if (name.includes('xlsx')) {
// this.readExcelFile(file.raw).then(data => {
// if(data[1][1]){
// const dateStr = data[1][1];
// this.date= Date.parse(dateStr);
// }else{
// this.$warning('未读取到日期')
// }
// })
// }
},
readExcelFile(file) { readExcelFile(file) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
const reader = new FileReader(); const reader = new FileReader();
reader.onload = (e) => { reader.onload = (e) => {
const data = new Uint8Array(e.target.result); const data = new Uint8Array(e.target.result);
const workbook = XLSX.read(data, { type: 'array' }); const workbook = XLSX.read(data, {
type: 'array'
});
const worksheet = workbook.Sheets[workbook.SheetNames[0]]; const worksheet = workbook.Sheets[workbook.SheetNames[0]];
const jsonData = XLSX.utils.sheet_to_json(worksheet, { header: 1 }); const jsonData = XLSX.utils.sheet_to_json(worksheet, {
header: 1
});
resolve(jsonData); resolve(jsonData);
}; };
reader.onerror = (e) => { reader.onerror = (e) => {
reject(e); reject(e);
}; };
reader.readAsArrayBuffer(file); reader.readAsArrayBuffer(file);
})}, })
},
BeforeUnloadEvent(file) { BeforeUnloadEvent(file) {
this.loading=true this.loading=true
...@@ -113,6 +138,10 @@ ...@@ -113,6 +138,10 @@
this.$warning('只能选择一个文件!') this.$warning('只能选择一个文件!')
}, },
submitUpload() { submitUpload() {
if(!this.date){
this.$warning('日期必填!')
return
}
if (this.$refs.upload.uploadFiles.length == 0) { if (this.$refs.upload.uploadFiles.length == 0) {
this.$warning('请选择一条数据!') this.$warning('请选择一条数据!')
} else { } else {
...@@ -125,7 +154,7 @@ ...@@ -125,7 +154,7 @@
handlePreview(file) { handlePreview(file) {
rconsole.log(file); rconsole.log(file);
this.readExcelFile(file.raw).then((data) => { this.readExcelFile(file.raw).then((data) => {
console.log(data,'excel')
// 在这里处理读取到的Excel数据 // 在这里处理读取到的Excel数据
}).catch((error) => { }).catch((error) => {
console.error(error); console.error(error);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment