Commit 79dca622 authored by 鲁鑫's avatar 鲁鑫

尺码组导入导出

parent 233f9986
......@@ -66,6 +66,15 @@
@click="handleDelete"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="info"
plain
icon="el-icon-upload2"
size="mini"
@click="handleImport"
>导入</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
......@@ -80,8 +89,16 @@
<el-table v-loading="loading" :data="groupList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="尺码组id" align="center" prop="sizeGroupId" />
<el-table-column label="尺码组编码" align="center" prop="sizeGroupCode" />
<el-table-column label="尺码组编码" align="center" prop="sizeGroupCode" >
<template slot-scope="scope">
<el-button
size="mini"
type="text"
@click="handleView(scope.row)"
>{{ scope.row.sizeGroupCode }}</el-button
>
</template>
</el-table-column>
<el-table-column label="尺码组名称" align="center" prop="sizeGroupName" />
<el-table-column label="尺码组类型" align="center" prop="sizeType" >
<template slot-scope="scope">
......@@ -169,12 +186,55 @@
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
<!-- 尺码组导入对话框 -->
<el-dialog
:title="upload.title"
:visible.sync="upload.open"
width="400px"
append-to-body
>
<el-upload
ref="upload"
:limit="1"
accept=".xlsx, .xls"
:headers="upload.headers"
:action="upload.url + '?updateSupport=' + upload.updateSupport"
:disabled="upload.isUploading"
:on-progress="handleFileUploadProgress"
:on-success="handleFileSuccess"
:auto-upload="false"
drag
>
<i class="el-icon-upload"></i>
<div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
<div class="el-upload__tip text-center" slot="tip">
<div class="el-upload__tip" slot="tip">
<el-checkbox v-model="upload.updateSupport" />
是否更新已经存在的用户数据
</div>
<span>仅允许导入xls、xlsx格式文件。</span>
<el-link
type="primary"
:underline="false"
style="font-size: 12px; vertical-align: baseline"
@click="importTemplate"
>下载模板</el-link
>
</div>
</el-upload>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitFileForm">确 定</el-button>
<el-button @click="upload.open = false">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listGroup, getGroup, delGroup, addGroup, updateGroup } from "@/api/mes/md/sizeGroup";
import SizeGroupItem from './item/index.vue'
import { getToken } from "@/utils/auth";
export default {
name: "Group",
dicts:['size_type','sys_yes_no'],
......@@ -208,6 +268,21 @@ export default {
sizeType: null,
enableFlag: null,
},
// 用户导入参数
upload: {
// 是否显示弹出层(用户导入)
open: false,
// 弹出层标题(用户导入)
title: "",
// 是否禁用上传
isUploading: false,
// 是否更新已经存在的用户数据
updateSupport: 0,
// 设置上传的请求头部
headers: { Authorization: "Bearer " + getToken() },
// 上传的地址
url: process.env.VUE_APP_BASE_API + "/md/group/importData",
},
// 表单参数
form: {},
// 表单校验
......@@ -261,6 +336,17 @@ export default {
this.open = true;
this.title = "添加尺码组";
},
// 查询明细按钮操作
handleView(row) {
this.reset();
const sizeGroupId = row.sizeGroupId || this.ids
getGroup(sizeGroupId).then((response) => {
this.form = response.data;
this.open = true;
this.title = "查看尺码组";
this.optType = "view";
});
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
......@@ -301,6 +387,41 @@ export default {
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导入按钮操作 */
handleImport() {
this.upload.title = "尺码组导入";
this.upload.open = true;
},
/** 下载模板操作 */
importTemplate() {
this.download(
"md/group/importTemplate",
{},
`group_${new Date().getTime()}.xlsx`
);
},
// 文件上传中处理
handleFileUploadProgress(event, file, fileList) {
this.upload.isUploading = true;
},
// 文件上传成功处理
handleFileSuccess(response, file, fileList) {
this.upload.open = false;
this.upload.isUploading = false;
this.$refs.upload.clearFiles();
this.$alert(
"<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" +
response.msg +
"</div>",
"导入结果",
{ dangerouslyUseHTMLString: true }
);
this.getList();
},
// 提交上传文件
submitFileForm() {
this.$refs.upload.submit();
},
/** 导出按钮操作 */
handleExport() {
this.download('md/group/export', {
......
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