From d5961e054bef591cde7885ce8eb014a12366d9b5 Mon Sep 17 00:00:00 2001 From: value <z1292839451@163.com> Date: 星期五, 14 六月 2024 08:13:57 +0800 Subject: [PATCH] 标准库导入 --- src/components/view/b2-standard.vue | 86 +++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 82 insertions(+), 4 deletions(-) diff --git a/src/components/view/b2-standard.vue b/src/components/view/b2-standard.vue index 51facba..5e6be92 100644 --- a/src/components/view/b2-standard.vue +++ b/src/components/view/b2-standard.vue @@ -147,9 +147,28 @@ color: #bababa; } - .el-table-filter__list { + .standard .el-table-filter__list { max-height: 400px; overflow-y: auto; + } + + .standard .el-upload { + width: 100%; + } + + .standard .el-upload-dragger { + width: 100%; + } + + .standard .handleBtn.is-disabled .el-upload:focus { + color: #C0C4CC !important; + } + + .standard .avatar-uploader .el-upload { + height: 80px; + display: flex; + align-items: center; + justify-content: center; } </style> @@ -189,7 +208,8 @@ <div class="right"> <el-row class="title" style="width: 100%;"> <el-col :span="20" style="font-size: 14px;color: #999;">{{selectTree}}</el-col> - <el-button size="small" type="primary" @click="handleMore" style="position: absolute;right: 0px;top: 1px;" + <el-button size="small" type="primary" style="position: absolute;right: 100px;top: 1px;" @click="uploadDia = true" v-if="inExcelOfTreePower">瀵煎叆</el-button> + <el-button size="small" type="primary" @click="handleMore" style="position: absolute;right: 5px;top: 1px;" v-if="upStandardProduct">鎵归噺缂栬緫</el-button> </el-row> <el-row class="standard_table" v-loading="tableLoad"> @@ -475,6 +495,20 @@ <el-button type="primary" @click="sectionList.push({thing: ''})" icon="el-icon-plus"></el-button> </span> </el-dialog> + <el-dialog title="鏁版嵁瀵煎叆" :visible.sync="uploadDia" width="500px"> + <div style="margin: 0 auto;"> + <el-upload ref="upload" drag :action="javaApi + $api.standardTree.inExcelOfTree" :headers="token" :file-list="fileList" name="file" + :auto-upload="false" accept=".xlsx" :limit="1" :on-change="beforeUpload" :on-success="onSuccess" + :on-error="onError"> + <i class="el-icon-upload"></i> + <div class="el-upload__text">灏嗘枃浠舵嫋鍒版澶勶紝鎴�<em>鐐瑰嚮涓婁紶</em></div> + </el-upload> + </div> + <span slot="footer" class="dialog-footer"> + <el-button @click="uploadDia = false">鍙� 娑�</el-button> + <el-button type="primary" @click="submitUpload()" :loading="uploading">涓� 浼�</el-button> + </span> + </el-dialog> </div> </template> @@ -583,7 +617,12 @@ pages: 1, inspectionItem: null, inspectionItemSubclass: null, - sonLaboratory: null + sonLaboratory: null, + uploadDia: false, + token: null, + fileList: [], + inExcelOfTreePower: false, + uploading: false } }, watch: { @@ -620,6 +659,9 @@ this.selectEnumByCategoryForSonLaboratory() this.getStandardTemplate() this.selectStandardMethods() + this.token = { + 'token': sessionStorage.getItem('token') + } }, methods: { filterNode(value, data) { @@ -885,6 +927,7 @@ let delStandardProduct = false let addStandardProduct = false let delStandardTree = false + let inExcelOfTreePower = false for (var i = 0; i < power.length; i++) { if (power[i].menuMethod == 'addStandardTree') { add = true @@ -907,6 +950,9 @@ if (power[i].menuMethod == 'delStandardTree') { delStandardTree = true } + if (power[i].menuMethod == 'inExcelOfTree') { + inExcelOfTreePower = true + } } this.addPower = add this.addStandardMethod = addStandardMethod @@ -915,6 +961,7 @@ this.delStandardProduct = delStandardProduct this.addStandardProduct = addStandardProduct this.delStandardTree = delStandardTree + this.inExcelOfTreePower = inExcelOfTreePower }, upStandardProductList(value, index) { this.$axios.post(this.$api.standardTree.upStandardProductList, { @@ -1406,7 +1453,38 @@ } }) }) - } + }, + beforeUpload(file, fileList) { + if (file.raw.type != 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') { + this.$message.error('涓婁紶鏂囦欢鏍煎紡涓嶆纭�'); + this.$refs.upload.clearFiles() + return false; + } + }, + submitUpload() { + if (this.$refs.upload.uploadFiles.length == 0) { + this.$message.error('鏈�夋嫨鏂囦欢') + return + } + this.uploading = true + this.$refs.upload.submit(); + }, + onSuccess(response, file, fileList) { + this.$refs.upload.clearFiles() + this.uploadDia = false + this.uploading = false + if (response.code == 201) { + this.$message.error(response.message) + return + } + this.$message.success('涓婁紶鎴愬姛') + this.refresh() + }, + onError(err, file, fileList) { + this.$message.error('涓婁紶澶辫触') + this.$refs.upload.clearFiles() + this.uploading = false + }, } } </script> -- Gitblit v1.9.3