Browse Source

查询机优化

master
xuhuajiao 5 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> <style lang="scss" scoped>
@import "~@/assets/styles/digitalScreen.scss"; @import "~@/assets/styles/digitalScreen.scss";
::v-deep .book-cover-upload { ::v-deep .book-cover-upload {
display: flex; display: flex;
justify-content: flex-start; justify-content: flex-start;

46
src/views/inquiryMachine/content.vue

@ -72,14 +72,17 @@
</el-form-item> </el-form-item>
<!-- @imgAdd="imgAdd" --> <!-- @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 --> <!-- 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 <quill-editor
v-if="currentKeyColumn.type !== 4" v-if="currentKeyColumn.type !== 4"
v-model="editorContent" v-model="editorContent"
:editor-content="editorContent" :editor-content="editorContent"
:editor-ref="editorRef" :editor-ref="editorRef"
/> />
<!-- <mavon-editor <!-- <mavon-editor
v-if="currentKeyColumn.type !== 4" v-if="currentKeyColumn.type !== 4"
ref="md" ref="md"
@ -91,11 +94,7 @@
@imgAdd="imgAdd" @imgAdd="imgAdd"
@change="handleEditorChange" @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> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="text" @click="crud.cancelCU">取消</el-button> <el-button type="text" @click="crud.cancelCU">取消</el-button>
@ -197,10 +196,7 @@ export default {
'user' 'user'
]), ]),
activeAddBtn() { activeAddBtn() {
// 1id0
const condition1 = this.currentKeyColumn.id === 0 const condition1 = this.currentKeyColumn.id === 0
// 2id0type1tableData1
const condition2 = this.currentKeyColumn.id !== 0 && const condition2 = this.currentKeyColumn.id !== 0 &&
this.currentKeyColumn.type === 1 && this.currentKeyColumn.type === 1 &&
this.tableData.length === 1 this.tableData.length === 1
@ -260,18 +256,30 @@ export default {
}, },
// //
[CRUD.HOOK.afterToCU](crud, form) { [CRUD.HOOK.afterToCU](crud, form) {
if (this.$refs.uploadCoverRefs) {
this.$refs.uploadCoverRefs.fileNames = null
}
}, },
// //
[CRUD.HOOK.beforeToAdd](crud, form) { [CRUD.HOOK.beforeToAdd](crud, form) {
this.$nextTick(() => {
if (this.$refs.uploadCoverRefs) {
this.$refs.uploadCoverRefs.fileNames = null
}
})
this.bookCover = null this.bookCover = null
this.form.imgUrl = null this.form.imgUrl = null
this.editorContent = ''
}, },
// //
[CRUD.HOOK.beforeToEdit](crud, form) { [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.bookCover = this.baseApi + '/api/fileRelevant/getImg?imgType=2&imgId=' + form.imgUrl
this.editorContent = this.form.introHtml
}, },
// //
[CRUD.HOOK.afterValidateCU](crud) { [CRUD.HOOK.afterValidateCU](crud) {
@ -408,10 +416,18 @@ export default {
.inquiry-dialog{ .inquiry-dialog{
::v-deep .el-dialog{ ::v-deep .el-dialog{
width: 1170px !important; 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; width: 254px !important;
} }
&.book-cover-upload {
.el-form-item__content{
width: 580px !important;
}
}
}
}
.v-note-wrapper{ .v-note-wrapper{
height: 420px; height: 420px;
} }

49
src/views/inquiryMachine/menu.vue

@ -6,21 +6,21 @@
<div class="head-container"> <div class="head-container">
<crudOperation :permission="permission"> <crudOperation :permission="permission">
<template v-slot:left> <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" /> <i class="iconfont icon-xinzeng" />
新增 新增
</el-button> </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" /> <i class="iconfont icon-bianji" />
编辑 编辑
</el-button> </el-button>
</template> </template>
<template v-slot:right> <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" /> <i class="iconfont icon-shanchu" />
删除 删除
</el-button> </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> </template>
</crudOperation> </crudOperation>
</div> </div>
@ -273,13 +273,17 @@ export default {
]), ]),
filteredSelectOptions() { filteredSelectOptions() {
if (this.btnType === 'edit') { 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)) return this.selectOptions.filter(item => [2, 3].includes(item.value))
} }
@ -426,22 +430,31 @@ export default {
console.log(`当前节点层级:${node.level}`) console.log(`当前节点层级:${node.level}`)
}, },
changeType(val) { 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 { } else {
savedData = currentSelected || []
savedData = [currentSelected] // 便
} }
// 2. val /
if (val === 2) { if (val === 2) {
// - null
this.form.queryTopicList = savedData.length > 0 ? savedData[0] : null this.form.queryTopicList = savedData.length > 0 ? savedData[0] : null
} else { } else {
// /-
this.form.queryTopicList = [...savedData] this.form.queryTopicList = [...savedData]
} }
// 3.
this.selectKey = Math.random() this.selectKey = Math.random()
// 4. type=2
this.$nextTick(() => { this.$nextTick(() => {
this.getInitQueryTopic(val === 2 ? 1 : null) this.getInitQueryTopic(val === 2 ? 1 : null)
}) })
@ -558,7 +571,13 @@ export default {
}) })
}, },
toSort(data) { 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.sortTableData = this.$refs.tree.getNode(data[0].parentId).data.children
}
this.$refs.sort.sortVisible = true this.$refs.sort.sortVisible = true
}, },
treeNodeSort(data) { treeNodeSort(data) {

Loading…
Cancel
Save