Commit d747c56f authored by xiangjiaojunxp's avatar xiangjiaojunxp

页面修改

parent 90115373
...@@ -216,7 +216,7 @@ ...@@ -216,7 +216,7 @@
<style> <style>
.el-dialog__header{ .el-dialog__header{
padding:20px 20px 10px; padding:20px 20px 10px;
background-color: #b8d1fb; background-color: dodgerblue;
} }
.el-dialog__headerbtn .el-dialog__close { .el-dialog__headerbtn .el-dialog__close {
color: #f5f8ff; color: #f5f8ff;
......
...@@ -2,22 +2,16 @@ ...@@ -2,22 +2,16 @@
<div class="app-container"> <div class="app-container">
<el-form ref="queryForm" size="small" :inline="true" label-width="68px"> <el-form ref="queryForm" size="small" :inline="true" label-width="68px">
<el-form-item label="模板" prop="name"> <el-form-item label="模板" prop="name">
<el-select v-model="selectedOption" size="mini" @change="handleOptionChange" placeholder="请选择你要查看的模板" > <el-select v-model="selectedOption" ref="mySelect" size="mini" @change="handleOptionChange" placeholder="请选择你要查看的模板" >
<!-- <el-option label="自设的模板名" value="这里是Excel表内容"></el-option>--> <!-- <el-option label="自设的模板名" value="使用空白模板"></el-option>-->
<el-option <el-option
v-for="item in depss" v-for="item in depss" :key="item.id" :label="item.name" :value="item.id">
:key="item.id"
:label="item.name"
:value="item.id"
>
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<!--<el-button type="primary" icon="el-icon-search" size="mini" >搜索</el-button> --> <!--<el-button type="primary" icon="el-icon-search" size="mini" >搜索</el-button> -->
<!--<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>--> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
<!--<el-button type="primary" icon="el-icon-search" size="mini" >搜索</el-button>-->
<el-button icon="el-icon-refresh" size="mini">重置</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
...@@ -50,18 +44,16 @@ ...@@ -50,18 +44,16 @@
action='' action=''
:limit="1" :limit="1"
:file-list="fileList" :file-list="fileList"
:disabled="disableNextButton"
> >
<el-button plain size="mini" icon="el-icon-upload2" type="primary">导入</el-button> <el-button plain size="mini" icon="el-icon-upload2" type="primary" :disabled="disableNextButton" >导入</el-button>
</el-upload> </el-upload>
</el-col> </el-col>
<!-- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>-->
</el-row> </el-row>
<!-- luckysheet容器 --> <!-- luckysheet容器 -->
<!-- <div id="luckysheetContainer"></div>-->
<div <div
id="luckysheet" id="luckysheet"
style="margin: 0px; padding: 0px; position: absolute; width: 100%;height: 800px; left: 0px; top: 110px; bottom: 0px; z-index: 0" style="margin: 0px; padding: 0px; position: absolute; width: 100%;height: 1000px; left: 0px; top: 110px; bottom: 0px; z-index: 0"
> >
</div> </div>
<!-- 用户添加或修改我的Excel表格的弹框 --> <!-- 用户添加或修改我的Excel表格的弹框 -->
...@@ -87,6 +79,7 @@ ...@@ -87,6 +79,7 @@
</div> </div>
</template> </template>
<script> <script>
import $ from 'jquery' import $ from 'jquery'
/*安装插件 npm install xlsx,安装完成后引入 import XLSX from ‘xlsx’*/ /*安装插件 npm install xlsx,安装完成后引入 import XLSX from ‘xlsx’*/
...@@ -108,6 +101,7 @@ export default { ...@@ -108,6 +101,7 @@ export default {
selectedOption:'', selectedOption:'',
luckysheetData: '', luckysheetData: '',
fileList:[], fileList:[],
disableNextButton: true,
depss:[], depss:[],
// 表单参数 // 表单参数
form: {}, form: {},
...@@ -142,7 +136,7 @@ export default { ...@@ -142,7 +136,7 @@ export default {
getMyluckyexcel(this.selectedOption).then(response => { getMyluckyexcel(this.selectedOption).then(response => {
const sysSupplies = response.data; const sysSupplies = response.data;
this.disableNextButton = this.selectedOption === '';
this.luckysheetData = sysSupplies.jsons; this.luckysheetData = sysSupplies.jsons;
//将接收到的json存到json_data中 //将接收到的json存到json_data中
//const json_data = response.data; //const json_data = response.data;
...@@ -156,16 +150,11 @@ export default { ...@@ -156,16 +150,11 @@ export default {
showinfobar: false, //是否显示顶部名称栏 showinfobar: false, //是否显示顶部名称栏
lang:'zh', lang:'zh',
}); });
}).catch(() => { }).catch(() => {
// 处理错误逻辑,这里是一个空的错误处理函数 // 处理错误逻辑,这里是一个空的错误处理函数
this.$message.error('暂停失败,发生未知错误!'); this.$message.error('查询失败,发生未知错误!');
}); });
}, },
/** 导出设置 */
handleExport(){
exportExcel(luckysheet.getAllSheets(), '导出')
},
/** 弹出的确认框关闭 */ /** 弹出的确认框关闭 */
handleClose(done) { handleClose(done) {
this.$confirm('确认关闭?') this.$confirm('确认关闭?')
...@@ -208,38 +197,14 @@ export default { ...@@ -208,38 +197,14 @@ export default {
} }
}, },
/** 重置按钮操作 */
/*// 表单重置
reset() {
this.form = {
id: null,
name: null,
description: null
};
this.resetForm("form");
},
/!** 搜索按钮操作 *!/
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/!** 重置按钮操作 *!/
resetQuery() { resetQuery() {
this.resetForm("queryForm"); //刷新下拉选框内容
this.handleQuery(); this.selectedOption='';
}, this.disableNextButton='';
// 多选框选中数据 //刷新luckysheet表格
handleSelectionChange(selection) { this.init();
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
}, },
/!** 导出按钮操作 *!/
handleExport() {
this.download('ruoyi-mymodule/mymodule/export', {
...this.queryParams
}, `mymodule_${new Date().getTime()}.xlsx`)
},*/
/** Luckyexcel文档 */ /** Luckyexcel文档 */
init() { init() {
let options = { let options = {
...@@ -255,8 +220,8 @@ export default { ...@@ -255,8 +220,8 @@ export default {
"status": 1, //激活状态 "status": 1, //激活状态
"order": 0, //工作表的下标 "order": 0, //工作表的下标
"hide": 0,//是否隐藏 "hide": 0,//是否隐藏
"row": 20, //行数 "row": 8, //行数
"column": 15, //列数 "column": 10, //列数
"defaultRowHeight": 19, //自定义行高 "defaultRowHeight": 19, //自定义行高
"defaultColWidth": 73, //自定义列宽 "defaultColWidth": 73, //自定义列宽
"celldata": [ "celldata": [
...@@ -301,72 +266,33 @@ export default { ...@@ -301,72 +266,33 @@ export default {
luckysheet.create(options) luckysheet.create(options)
}, },
Excel(e) {
let that = this
// 错误情况判断
const files = e.target.files
if (files.length <= 0) {
return false;
} else if (!/\.(xls|xlsx)$/.test(files[0].name.toLowerCase())) {
this.$message({
message: "上传格式不正确,请上传xls或者xlsx格式",
type: "warning"
});
return false
} else {
that.upload_file = files[0].name
}
// 读取表格
const fileReader = new FileReader()
fileReader.onload = ev => {
try {
const data = ev.target.result;
const workbook = XLSX.read(data, {
type: "binary"
})
// 读取第一张表
const wsname = workbook.SheetNames[0]
const ws = XLSX.utils.sheet_to_json(workbook.Sheets[wsname])
// 打印 ws 就可以看到读取出的表格数据
console.log(ws)
// 定义一个新数组,存放处理后的表格数据
that.lists = []
ws.forEach(item => {
that.lists.push({
// 对ws进行处理后放进lists内
})
})
// 调用方法将lists数组发送给后端
this.submit_form(that.lists)
} catch (e) {
return false
}
}
fileReader.readAsBinaryString(files[0])
},
/** 导入事件*/ /** 导入事件*/
handleFileChange(evt) { handleFileChange(evt) {
if (this.disableNextButton) {
this.$message.warning("请先选择模板再进行导入!");
return false; // 如果按钮被禁用,提前返回,避免执行下一步操作
}
let name = evt.name let name = evt.name
let suffixArr = name.split('.'), let suffixArr = name.split('.'),
suffix = suffixArr[suffixArr.length - 1] suffix = suffixArr[suffixArr.length - 1]
if (suffix != 'xlsx') { if (suffix != 'xlsx') {
alert('当前仅支持导入xlsx文件') this.$message({
message: "上传格式不正确,请上传xls或者xlsx格式",
type: "warning"
});
return return
} }
LuckyExcel.transformExcelToLucky( LuckyExcel.transformExcelToLucky(
evt, evt,
function(exportJson, luckysheetfile) { function(exportJson, luckysheetfile) {
if (exportJson.sheets == null || exportJson.sheets.length == 0) { if (exportJson.sheets == null || exportJson.sheets.length == 0) {
alert( this.$message({
'无法读取excel文件的内容,目前不支持xls文件!' message: "导入失败,请检查上传的文件是否正确",
) type: "warning"
});
return return
} }
luckysheet.destroy() luckysheet.destroy()
luckysheet.create({ luckysheet.create({
container: 'luckysheet', //luckysheet is the container id container: 'luckysheet', //luckysheet is the container id
title: exportJson.info.name, title: exportJson.info.name,
...@@ -377,6 +303,11 @@ export default { ...@@ -377,6 +303,11 @@ export default {
}) })
} }
) )
},
/** 导出设置 */
handleExport(){
exportExcel(luckysheet.getAllSheets(), this.from_name)
}, },
} }
// 配置项 // 配置项
......
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