| | |
| | | } |
| | | //滚动条样式 |
| | | @include scrollBar; |
| | | |
| | | |
| | | .see-img-box { |
| | | |
| | | .el-dialog { |
| | | width: 840px; |
| | | height: 540px; |
| | | |
| | | .el-dialog__body { |
| | | padding: 4px; |
| | | position: relative; |
| | | height: calc(100% - 62px); |
| | | } |
| | | |
| | | div.img { |
| | | position: absolute; |
| | | top: 0; |
| | | left: 0; |
| | | right: 0; |
| | | bottom: 0; |
| | | margin: auto; |
| | | width: calc(100% - 8px); |
| | | height: calc(100% - 8px); |
| | | overflow: hidden; |
| | | } |
| | | } |
| | | |
| | | } |
| | |
| | | this.selectionClear(); |
| | | }); |
| | | }, |
| | | rowStyle ({ row, column, rowIndex }) { |
| | | rowStyle ({ row }) { |
| | | if (row.dtype != null && row.dtype != "") { |
| | | if (row.dtype == "2") { |
| | | return { |
| | |
| | | <template> |
| | | <basic-container> |
| | | <avue-crud |
| | | :option="option" |
| | | <avue-crud :option="option" |
| | | :table-loading="loading" |
| | | :data="data" |
| | | :page.sync="page" |
| | |
| | | :before-open="beforeOpen" |
| | | v-model="form" |
| | | ref="crud" |
| | | @row-click="rowClick" |
| | | @row-del="rowDel" |
| | | @search-change="searchChange" |
| | | @search-reset="searchReset" |
| | |
| | | @current-change="currentChange" |
| | | @size-change="sizeChange" |
| | | @refresh-change="refreshChange" |
| | | @on-load="onLoad" |
| | | > |
| | | @on-load="onLoad"> |
| | | <template slot="menuLeft"> |
| | | <!-- <el-button type="primary"--> |
| | | <!-- size="small"--> |
| | |
| | | <!-- @click="handleDelete">删 除--> |
| | | <!-- </el-button>--> |
| | | </template> |
| | | <template slot-scope="scope" slot="menu"> |
| | | <el-button |
| | | type="text" |
| | | <template slot-scope="scope" |
| | | slot="menu"> |
| | | <el-button type="text" |
| | | icon="el-icon-download" |
| | | size="small" |
| | | @click="handleDownload(scope.row)" |
| | | >下载 |
| | | @click="handleDownload(scope.row)">下载 |
| | | </el-button> |
| | | <el-button type="text" |
| | | icon="el-icon-picture-outline-round" |
| | | size="small" |
| | | v-show="!fileFormat(scope.row)" |
| | | @click="seeImages(scope.row)">预览 |
| | | </el-button> |
| | | </template> |
| | | <template slot-scope="{ row }" slot="attachSize"> |
| | | <template slot-scope="{ row }" |
| | | slot="attachSize"> |
| | | <el-tag>{{ `${row.attachSize} KB` }}</el-tag> |
| | | </template> |
| | | </avue-crud> |
| | | <el-dialog |
| | | title="附件管理" |
| | | <el-dialog title="附件管理" |
| | | append-to-body |
| | | :visible.sync="attachBox" |
| | | width="555px" |
| | | > |
| | | <avue-form |
| | | ref="form" |
| | | width="555px"> |
| | | <avue-form ref="form" |
| | | :option="attachOption" |
| | | v-model="attachForm" |
| | | :upload-after="uploadAfter" |
| | | > |
| | | :upload-after="uploadAfter"> |
| | | </avue-form> |
| | | </el-dialog> |
| | | |
| | | <el-dialog title="预览" |
| | | append-to-body |
| | | :visible.sync="imgSee" |
| | | class="see-img-box"> |
| | | |
| | | <div class="img" |
| | | :style="{background: imgUrl}"> |
| | | |
| | | </div> |
| | | |
| | | </el-dialog> |
| | | |
| | | </basic-container> |
| | | </template> |
| | | |
| | |
| | | form: {}, |
| | | query: {}, |
| | | loading: true, |
| | | imgUrl: "", |
| | | showViewer: false, // 显示查看器 |
| | | page: { |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | |
| | | }, |
| | | ], |
| | | }, |
| | | |
| | | imgSee: false, |
| | | imgUrl: "" |
| | | }; |
| | | }, |
| | | created() { |
| | |
| | | }, |
| | | }, |
| | | methods: { |
| | | rowClick(row) { |
| | | var that = this; |
| | | that.imgUrl = row.link; |
| | | this.showViewer = true; |
| | | }, |
| | | handleUpload() { |
| | | this.attachBox = true; |
| | | }, |
| | |
| | | this.selectionClear(); |
| | | }); |
| | | }, |
| | | |
| | | |
| | | seeImages (row) { |
| | | this.imgUrl = ""; |
| | | this.imgUrl = "url(" + row.link + ") center center / contain no-repeat"; |
| | | |
| | | this.imgSee = true; |
| | | }, |
| | | |
| | | fileFormat (row) { |
| | | var index = row.link.lastIndexOf("."); |
| | | var ext = row.link.substr(index + 1); |
| | | |
| | | return [ |
| | | 'png', 'jpg', 'jpeg', 'bmp', 'gif', 'webp', 'psd', 'svg', 'tiff']. |
| | | indexOf(ext.toLowerCase()) == -1; |
| | | } |
| | | }, |
| | | }; |
| | | </script> |
| | |
| | | <template> |
| | | <basic-container> |
| | | <avue-crud |
| | | :option="option" |
| | | <avue-crud :option="option" |
| | | :table-loading="loading" |
| | | :data="data" |
| | | :page.sync="page" |
| | |
| | | @current-change="currentChange" |
| | | @size-change="sizeChange" |
| | | @refresh-change="refreshChange" |
| | | @on-load="onLoad" |
| | | > |
| | | @on-load="onLoad"> |
| | | <template slot="menuLeft"> |
| | | <el-button |
| | | type="primary" |
| | | <el-button type="primary" |
| | | size="small" |
| | | plain |
| | | v-if="permission.attach_upload" |
| | | icon="el-icon-upload2" |
| | | @click="handleUpload" |
| | | >上 传 |
| | | @click="handleUpload">上 传 |
| | | </el-button> |
| | | <el-button |
| | | type="danger" |
| | | <el-button type="danger" |
| | | size="small" |
| | | icon="el-icon-delete" |
| | | plain |
| | | v-if="permission.attach_delete" |
| | | @click="handleDelete" |
| | | >删 除 |
| | | @click="handleDelete">删 除 |
| | | </el-button> |
| | | </template> |
| | | <template slot-scope="scope" slot="menu"> |
| | | <el-button |
| | | type="text" |
| | | <template slot-scope="scope" |
| | | slot="menu"> |
| | | <el-button type="text" |
| | | icon="el-icon-download" |
| | | size="small" |
| | | v-if="permission.attach_download" |
| | | @click="handleDownload(scope.row)" |
| | | >下载 |
| | | @click="handleDownload(scope.row)">下载 |
| | | </el-button> |
| | | <el-button type="text" |
| | | icon="el-icon-picture-outline-round" |
| | | size="small" |
| | | v-show="!fileFormat(scope.row)" |
| | | @click="seeImages(scope.row)">预览 |
| | | </el-button> |
| | | </template> |
| | | <template slot-scope="{ row }" slot="attachSize"> |
| | | <template slot-scope="{ row }" |
| | | slot="attachSize"> |
| | | <el-tag>{{ `${row.attachSize} KB` }}</el-tag> |
| | | </template> |
| | | </avue-crud> |
| | | <el-dialog |
| | | title="附件管理" |
| | | <el-dialog title="附件管理" |
| | | append-to-body |
| | | :visible.sync="attachBox" |
| | | width="555px" |
| | | > |
| | | <avue-form |
| | | ref="form" |
| | | width="555px"> |
| | | <avue-form ref="form" |
| | | :option="attachOption" |
| | | v-model="attachForm" |
| | | :upload-after="uploadAfter" |
| | | > |
| | | :upload-after="uploadAfter"> |
| | | </avue-form> |
| | | </el-dialog> |
| | | |
| | | <el-dialog title="预览" |
| | | append-to-body |
| | | :visible.sync="imgSee" |
| | | class="see-img-box"> |
| | | |
| | | <div class="img" |
| | | :style="{background: imgUrl}"> |
| | | |
| | | </div> |
| | | |
| | | </el-dialog> |
| | | </basic-container> |
| | | </template> |
| | |
| | | }, |
| | | ], |
| | | }, |
| | | |
| | | imgSee: false, |
| | | imgUrl: "" |
| | | }; |
| | | }, |
| | | computed: { |
| | |
| | | this.selectionClear(); |
| | | }); |
| | | }, |
| | | |
| | | seeImages (row) { |
| | | this.imgUrl = ""; |
| | | this.imgUrl = "url(" + row.link + ") center center / contain no-repeat"; |
| | | |
| | | this.imgSee = true; |
| | | }, |
| | | |
| | | fileFormat (row) { |
| | | var index = row.link.lastIndexOf("."); |
| | | var ext = row.link.substr(index + 1); |
| | | |
| | | return [ |
| | | 'png', 'jpg', 'jpeg', 'bmp', 'gif', 'webp', 'psd', 'svg', 'tiff']. |
| | | indexOf(ext.toLowerCase()) == -1; |
| | | } |
| | | }, |
| | | }; |
| | | </script> |