| | |
| | | text-align: right; |
| | | margin-top: 10px; |
| | | } |
| | | |
| | | .down-left { |
| | | width: 50%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | } |
| | | |
| | | .down-right { |
| | | width: 50%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | } |
| | | </style> |
| | | |
| | | <template> |
| | |
| | | </span> |
| | | </el-dialog> |
| | | <el-dialog title="新增" :visible.sync="addDia" width="500px"> |
| | | <div class="body" v-if="addDia"> |
| | | <div class="body" v-if="addDia" style="max-height: 600px;overflow-y: auto;"> |
| | | <el-row v-for="(a, ai) in upHead" :key="ai" style="line-height: 50px;"> |
| | | <el-col :span="5" style="text-align: right;">{{a.value}}:</el-col> |
| | | <el-col :span="17" :offset="1"> |
| | | <el-col :span="6" style="text-align: right;">{{a.value}}:</el-col> |
| | | <el-col :span="16" :offset="1"> |
| | | <el-input v-model="upData[a.label]" size="small" clearable :placeholder="`请输入${a.value}`" |
| | | v-if="showType(a.label, data.selectField) == null"></el-input> |
| | | <el-select v-model="upData[a.label]" size="small" v-if="showType(a.label, data.selectField) != null" |
| | |
| | | </el-dialog> |
| | | <el-dialog title="导出" :visible.sync="downDia" width="400px"> |
| | | <div style="display: flex;width: 100%;height: 100px;"> |
| | | <div class="down-left"></div> |
| | | <div class="down-right"></div> |
| | | <div class="down-left" @click="downFile(true)"> |
| | | <el-button>本页导出</el-button> |
| | | </div> |
| | | <div class="down-right" @click="downFile(false)"> |
| | | <el-button>全部导出</el-button> |
| | | </div> |
| | | </div> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="downDia = false">取 消</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | |
| | | default: () => null |
| | | }, |
| | | delUrl: { |
| | | type: String, |
| | | default: () => null |
| | | }, |
| | | downUrl: { |
| | | type: String, |
| | | default: () => null |
| | | }, |
| | |
| | | this.upHead = this.HaveJson(this.tableHead) |
| | | this.upHead = this.upHead.filter(a => a.label != 'createTime' && a.label != 'updateTime') |
| | | var val = this.data.do.filter(a => a.id == 'update')[0] |
| | | if(val == undefined) { |
| | | val = {field: []} |
| | | if (val == undefined) { |
| | | val = { |
| | | field: [] |
| | | } |
| | | } |
| | | val.field.forEach(a => { |
| | | if (JSON.stringify(this.upData[a]) == undefined) { |
| | |
| | | this.addLoad = false |
| | | }) |
| | | }, |
| | | openDownDia(){ |
| | | openDownDia() { |
| | | this.downDia = true |
| | | }, |
| | | downFile(type) { |
| | | if (this.downUrl == null) { |
| | | this.$message.error('请给导出请求地址') |
| | | return |
| | | } |
| | | var page = this.HaveJson(this.page) |
| | | if (!type) { |
| | | page.current = 0 |
| | | page.size = this.total |
| | | } |
| | | this.loading = true |
| | | this.$axios.post(this.downUrl, { |
| | | page: page, |
| | | entity: this.data.entity |
| | | }, { |
| | | headers: { |
| | | 'Content-Type': 'application/json' |
| | | } |
| | | }).then(res => { |
| | | if (res.code === 201) { |
| | | this.loading = false |
| | | return |
| | | } |
| | | this.downDia = false |
| | | this.loading = false |
| | | this.$message.success('导出成功') |
| | | let eleLink = document.createElement('a') |
| | | eleLink.style.display = 'none' |
| | | eleLink.download = res.data |
| | | eleLink.href = this.javaApi + '/outPath/' + res.data |
| | | document.body.appendChild(eleLink) |
| | | eleLink.click() |
| | | document.body.removeChild(eleLink) |
| | | }).catch(e => { |
| | | console.log(e); |
| | | this.loading = false |
| | | this.$message.error('请刷新页面再尝试') |
| | | }) |
| | | } |
| | | } |
| | | } |