Browse Source

查询机优化

master
xuhuajiao 6 days ago
parent
commit
7047fc97f7
  1. 1
      src/views/components/upload.vue
  2. 46
      src/views/inquiryMachine/content.vue
  3. 49
      src/views/inquiryMachine/menu.vue

1
src/views/components/upload.vue

@ -165,6 +165,7 @@ export default {
<style lang="scss" scoped>
@import "~@/assets/styles/digitalScreen.scss";
::v-deep .book-cover-upload {
display: flex;
justify-content: flex-start;

46
src/views/inquiryMachine/content.vue

@ -72,14 +72,17 @@
</el-form-item>
<!-- @imgAdd="imgAdd" -->
<!-- https://blog.csdn.net/ws6afa88/article/details/108765569?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1-108765569-blog-131412288.235^v43^pc_blog_bottom_relevance_base6&spm=1001.2101.3001.4242.1&utm_relevant_index=4 -->
<el-form-item v-if="currentKeyColumn.type === 4" label="链接" prop="linkUrl">
<el-input v-model="form.linkUrl" :style="containerStyle" />
</el-form-item>
<UploadCover v-if="currentKeyColumn.type === 3 || currentKeyColumn.type === 4" ref="uploadCoverRefs" :label-name="labelName" :form="form" upload-type="book" @childCover="handleCover" />
<img v-if="currentKeyColumn.type === 4 && bookCover" style="display: block; height: 200px; margin-left: 90px;" :src="bookCover || require('@/assets/images/cover-bg.png')" alt="封面">
<quill-editor
v-if="currentKeyColumn.type !== 4"
v-model="editorContent"
:editor-content="editorContent"
:editor-ref="editorRef"
/>
<!-- <mavon-editor
v-if="currentKeyColumn.type !== 4"
ref="md"
@ -91,11 +94,7 @@
@imgAdd="imgAdd"
@change="handleEditorChange"
/> -->
<el-form-item v-if="currentKeyColumn.type === 4" label="链接" prop="linkUrl">
<el-input v-model="form.linkUrl" :style="containerStyle" />
</el-form-item>
<UploadCover v-if="currentKeyColumn.type === 4" ref="uploadCoverRefs" :label-name="labelName" :form="form" upload-type="book" @childCover="handleCover" />
<img v-if="currentKeyColumn.type === 4 && bookCover" style="display: block; height: 200px; margin-left: 90px;" :src="bookCover || require('@/assets/images/cover-bg.png')" alt="图书封面">
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="crud.cancelCU">取消</el-button>
@ -197,10 +196,7 @@ export default {
'user'
]),
activeAddBtn() {
// 1id0
const condition1 = this.currentKeyColumn.id === 0
// 2id0type1tableData1
const condition2 = this.currentKeyColumn.id !== 0 &&
this.currentKeyColumn.type === 1 &&
this.tableData.length === 1
@ -260,18 +256,30 @@ export default {
},
//
[CRUD.HOOK.afterToCU](crud, form) {
if (this.$refs.uploadCoverRefs) {
this.$refs.uploadCoverRefs.fileNames = null
}
},
//
[CRUD.HOOK.beforeToAdd](crud, form) {
this.$nextTick(() => {
if (this.$refs.uploadCoverRefs) {
this.$refs.uploadCoverRefs.fileNames = null
}
})
this.bookCover = null
this.form.imgUrl = null
this.editorContent = ''
},
//
[CRUD.HOOK.beforeToEdit](crud, form) {
console.log('form.imgUrl', form.imgUrl)
this.$nextTick(() => {
console.log('this.$refs.uploadCoverRefs', this.$refs.uploadCoverRefs)
if (this.$refs.uploadCoverRefs) {
this.$refs.uploadCoverRefs.fileNames = form.imgUrl
}
})
this.bookCover = this.baseApi + '/api/fileRelevant/getImg?imgType=2&imgId=' + form.imgUrl
this.editorContent = this.form.introHtml
},
//
[CRUD.HOOK.afterValidateCU](crud) {
@ -408,10 +416,18 @@ export default {
.inquiry-dialog{
::v-deep .el-dialog{
width: 1170px !important;
.el-dialog__body .el-form-item .el-form-item__content{
.el-dialog__body{
.el-form-item {
.el-form-item__content{
width: 254px !important;
}
&.book-cover-upload {
.el-form-item__content{
width: 580px !important;
}
}
}
}
.v-note-wrapper{
height: 420px;
}

49
src/views/inquiryMachine/menu.vue

@ -6,21 +6,21 @@
<div class="head-container">
<crudOperation :permission="permission">
<template v-slot:left>
<el-button size="mini" :disabled="currentNodeLevel===3 || crud.selections[0].type !== 1" @click="toAddOrEdit('add')">
<el-button size="mini" :disabled="currentNodeLevel===3 || (crud.selections[0] && crud.selections[0].type !== 1)" @click="toAddOrEdit('add')">
<i class="iconfont icon-xinzeng" />
新增
</el-button>
<el-button :disabled="crud.selections.length !== 1 || crud.selections[0].id === 0" size="mini" @click="toAddOrEdit('edit')">
<el-button :disabled="crud.selections.length !== 1 || (crud.selections[0] && crud.selections[0].id === 0)" size="mini" @click="toAddOrEdit('edit')">
<i class="iconfont icon-bianji" />
编辑
</el-button>
</template>
<template v-slot:right>
<el-button :disabled="crud.selections.length === 0 || crud.selections[0].id === 0" size="mini" :loading="crud.delAllLoading" @click="toDelete(crud.selections)">
<el-button :disabled="crud.selections.length === 0 || (crud.selections[0] && crud.selections[0].id === 0)" size="mini" :loading="crud.delAllLoading" @click="toDelete(crud.selections)">
<i class="iconfont icon-shanchu" />
删除
</el-button>
<el-button icon="el-icon-sort" size="mini" :loading="sortLoading" :disabled="brotherNodeNum <= 1 || crud.selections[0].id === 0" @click="toSort(crud.selections)">排序</el-button>
<el-button icon="el-icon-sort" size="mini" :loading="sortLoading" :disabled="brotherNodeNum <= 1 || (crud.selections[0] && crud.selections[0].id === 0)" @click="toSort(crud.selections)">排序</el-button>
</template>
</crudOperation>
</div>
@ -273,13 +273,17 @@ export default {
]),
filteredSelectOptions() {
if (this.btnType === 'edit') {
return this.selectOptions.map(item => ({
...item,
disabled: this.currentNodeLevel === 2 && !([2, 3].includes(item.value))
}))
// return this.selectOptions.map(item => ({
// ...item,
// disabled: this.currentNodeLevel === 2 && !([2, 3].includes(item.value))
// }))
if (this.currentNodeLevel === 3) {
return this.selectOptions.filter(item => [2, 3].includes(item.value))
} else if (this.currentNodeLevel === 2 && this.selectedMenu.children.length !== 0) {
return this.selectOptions.filter(item => [1].includes(item.value))
}
if (this.currentNodeLevel === 2) {
}
if (this.btnType === 'add' && this.currentNodeLevel === 2) {
return this.selectOptions.filter(item => [2, 3].includes(item.value))
}
@ -426,22 +430,31 @@ export default {
console.log(`当前节点层级:${node.level}`)
},
changeType(val) {
const currentSelected = this.form.queryTopicList
let savedData = []
if (this.form.queryMenu.type === 2) {
savedData = currentSelected ? [currentSelected] : []
const currentSelected = this.form.queryTopicList //
let savedData = [] //
// 1. /
if (currentSelected === null || currentSelected === undefined) {
savedData = [] //
} else if (Array.isArray(currentSelected)) {
savedData = [...currentSelected] //
} else {
savedData = currentSelected || []
savedData = [currentSelected] // 便
}
// 2. val /
if (val === 2) {
// - null
this.form.queryTopicList = savedData.length > 0 ? savedData[0] : null
} else {
// /-
this.form.queryTopicList = [...savedData]
}
// 3.
this.selectKey = Math.random()
// 4. type=2
this.$nextTick(() => {
this.getInitQueryTopic(val === 2 ? 1 : null)
})
@ -558,7 +571,13 @@ export default {
})
},
toSort(data) {
console.log(data)
if (data[0].parentId === null) {
this.$refs.sort.sortTableData = this.crud.data[0].children
} else {
this.$refs.sort.sortTableData = this.$refs.tree.getNode(data[0].parentId).data.children
}
this.$refs.sort.sortVisible = true
},
treeNodeSort(data) {

Loading…
Cancel
Save