|
|
<template> <div class="mod-oss"> <el-dialog v-drag :title="title" :close-on-click-modal="false" :visible.sync="visible" width="955px" :append-to-body="true">
<el-form inline="inline" label-position="top"> <el-form-item :label="'模板名称'"> <el-input v-model="reportfile"></el-input> </el-form-item> <el-form-item> <el-button style="margin-top: 22px" @click="getDataList()" type="primary">{{ buttons.select }}</el-button> </el-form-item> </el-form> <el-table :height="tableHeight" :data="dataList" border v-loading="dataListLoading" style="width: 100%;"> <el-table-column v-for="(item,index) in columnList" :key="index" :sortable="item.columnSortable" :prop="item.columnProp" :header-align="item.headerAlign" :show-overflow-tooltip="item.showOverflowTooltip" :align="item.align" :fixed="item.fixed==''?false:item.fixed" :min-width="item.columnWidth"
:label="item.columnLabel"> <template slot-scope="scope"> <span v-if="!item.columnHidden"> {{ scope.row[item.columnProp] }}</span> <span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" style="width: 100px; height: 80px"/></span> </template> </el-table-column> <el-table-column fixed="right" header-align="center" align="center" width="150" :label="buttons.operate"> <template slot-scope="scope"> <a type="text" size="small" @click="printSetting(scope.row)">{{ buttons.settingPrint }}</a> </template> </el-table-column> </el-table>
<span slot="footer" class="dialog-footer"> <el-button @click="visible = false" type="primary">关闭</el-button> </span> </el-dialog> <PrintList ref="printListRef" v-if="printListVisible" @refreshDataList="getDataList"></PrintList> </div></template>
<script>import {getUserLabelPrintList} from '@/api/print/print.js'import PrintList from './print-list.vue'
export default { data() { return { tableHeight: 365, title: '打印机管理', visible: false, printListVisible: false, dataListLoading: true, dataForm: { fileName: '' }, reportfile: '', dataList: [], printList: [], columnList: [ { "tableId": "common1001", "tableName": "common", "columnProp": "reportfile", "columnLabel": "模板名称", "columnHidden": false, "columnImage": false, "columnSortable": false, "columnWidth": '15%', "format": null, "functionId": this.$route.meta.menuId, "sortLv": 0, "status": true, "fixed": false, "serialNumber": null, "columnType": null, "align": null }, { "tableId": "common1001", "tableName": "common", "columnProp": "userid", "columnLabel": "用户名", "columnHidden": false, "columnImage": false, "columnSortable": false, "columnWidth": '15%', "format": null, "functionId": this.$route.meta.menuId, "sortLv": 0, "status": true, "fixed": false, "serialNumber": null, "columnType": null, "align": null }, { "tableId": "common1001", "tableName": "common", "columnProp": "ipaddress", "columnLabel": "打印机地址", "columnHidden": false, "columnImage": false, "columnSortable": false, "columnWidth": '20%', "format": null, "functionId": this.$route.meta.menuId, "sortLv": 0, "status": true, "fixed": false, "serialNumber": null, "columnType": null, "align": null }, { "tableId": "common1001", "tableName": "common", "columnProp": "newprintername", "columnLabel": "打印机名称", "columnHidden": false, "columnImage": false, "columnSortable": false, "columnWidth": '50%', "format": null, "functionId": this.$route.meta.menuId, "sortLv": 0, "status": true, "fixed": false, "serialNumber": null, "columnType": null, "align": null }, ], buttons: { settingPrint: "设置打印机", operate: "操作", select: "查询", }, buttonList: [] } }, components: {PrintList,}, mounted() { this.$nextTick(() => { this.height = (window.innerHeight * 0.82); }) }, activated() { this.getDataList()
}, methods: { // 初始化
init() { this.visible = true this.getDataList() }, // 获取数据列表
getDataList() { let query = { userid: this.$store.state.user.name, reportfile: this.reportfile } getUserLabelPrintList(query).then(({data}) => { if (data.code === 0) { this.dataList = data.dataList }
this.dataListLoading = false }) }, // 设置打印机
printSetting(row) { // 转换参数, 避免值传递
let rowData = JSON.parse(JSON.stringify(row)) this.printListVisible = true this.$nextTick(() => { this.$refs.printListRef.init(rowData) }) }, // 保存打印机
savePrint() {
} }, created() { }}</script>
|