页面优化

This commit is contained in:
2024-06-14 16:15:42 +08:00
parent 0c5468a1a7
commit cb2c174b60
3 changed files with 114 additions and 70 deletions

View File

@ -112,4 +112,8 @@ export default {
.pagination-container.hidden {
display: none;
}
::v-deep .el-pager {
width: 360px !important;
}
</style>

View File

@ -21,81 +21,87 @@
</div>
</div>
</el-col>
<el-col :span="19" :xs="24"
style="height:calc(100vh - 124px);display: flex;flex-wrap: wrap;flex-direction: column;justify-content: space-between;">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch"
label-width="68px">
<el-form-item label="通用话术名称" prop="commonScriptName" label-width="100px">
<el-input v-model="queryParams.commonScriptName" placeholder="请输入通用话术名称" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="话术名称" prop="scriptName">
<el-input v-model="queryParams.scriptName" placeholder="请输入话术名称" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="话术ID" prop="scriptId">
<el-input v-model="queryParams.scriptId" placeholder="请输入话术ID" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="平台ID" prop="platformId">
<el-input v-model="queryParams.platformId" placeholder="请输入平台ID" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="话术状态" prop="scriptStatus">
<el-select v-model="queryParams.scriptStatus" placeholder="请选择">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-col :span="19" :xs="24">
<div ref="form" class="form">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch"
label-width="68px">
<el-form-item label="通用话术名称" prop="commonScriptName" label-width="100px">
<el-input v-model="queryParams.commonScriptName" placeholder="请输入通用话术名称" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="话术名称" prop="scriptName">
<el-input v-model="queryParams.scriptName" placeholder="请输入话术名称" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="话术ID" prop="scriptId">
<el-input v-model="queryParams.scriptId" placeholder="请输入话术ID" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="平台ID" prop="platformId">
<el-input v-model="queryParams.platformId" placeholder="请输入平台ID" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="话术状态" prop="scriptStatus">
<el-select v-model="queryParams.scriptStatus" placeholder="请选择">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['manage:script:add']">新增</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="scriptList" @selection-change="handleSelectionChange">
<el-table-column label="序号" align="center" prop="sort" type="index" />
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
</div>
<div ref="mb8" class="mb8">
<el-row :gutter="10" class="">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['manage:script:add']">新增</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
</div>
<div ref="table">
<el-table :max-height="maxTableHeight" v-loading="loading" :data="scriptList"
@selection-change="handleSelectionChange">
<el-table-column label="序号" align="center" prop="sort" type="index" />
<el-table-column label="通用话术名称" align="center" prop="commonScriptName" :show-overflow-tooltip="true" />
<el-table-column label="话术名称" align="center" prop="scriptName" :show-overflow-tooltip="true" />
<el-table-column label="话术ID" align="center" prop="scriptId" :show-overflow-tooltip="true" />
<el-table-column label="平台ID" align="center" prop="platformId" :show-overflow-tooltip="true" />
<el-table-column label="话术状态" align="center" prop="scriptStatus">
<template slot-scope="scope">
{{ scope.row.scriptStatus == "NORMAL" ? "正常" : "" }}
{{ scope.row.scriptStatus == "OFF_SHELF" ? "下架" : "" }}
{{ scope.row.scriptStatus == "SUSPEND" ? "暂停" : "" }}
</template>
</el-table-column>
<el-table-column label="话术简介" align="center" prop="scriptIntroduction" :show-overflow-tooltip="true" />
<el-table-column label="病种名称" align="center" prop="diseaseTypeName" :show-overflow-tooltip="true" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="200">
<template slot-scope="scope">
<!-- <el-button size="mini" type="text" icon="el-icon-folder-delete"
<el-table-column label="通用话术名称" align="center" prop="commonScriptName" :show-overflow-tooltip="true" />
<el-table-column label="话术名称" align="center" prop="scriptName" :show-overflow-tooltip="true" />
<el-table-column label="话术ID" align="center" prop="scriptId" :show-overflow-tooltip="true" />
<el-table-column label="平台ID" align="center" prop="platformId" :show-overflow-tooltip="true" />
<el-table-column label="话术状态" align="center" prop="scriptStatus">
<template slot-scope="scope">
{{ scope.row.scriptStatus == "NORMAL" ? "正常" : "" }}
{{ scope.row.scriptStatus == "OFF_SHELF" ? "下架" : "" }}
{{ scope.row.scriptStatus == "SUSPEND" ? "暂停" : "" }}
</template>
</el-table-column>
<el-table-column label="话术简介" align="center" prop="scriptIntroduction" :show-overflow-tooltip="true" />
<el-table-column label="病种名称" align="center" prop="diseaseTypeName" :show-overflow-tooltip="true" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="200">
<template slot-scope="scope">
<!-- <el-button size="mini" type="text" icon="el-icon-folder-delete"
@click="norelease(scope.row)">取消发布</el-button>
<el-button size="mini" icon="el-icon-folder-checked" type="text" @click="release(scope.row)">发布</el-button> -->
<el-button size="mini" type="text" icon="el-icon-search" @click="handlesee(scope.row)">预览</el-button>
<el-button size="mini" type="text" icon="el-icon-zoom-in" @click="see(scope.row)">话术</el-button>
<el-button size="mini" type="text" icon="el-icon-picture-outline" @click="seescript(scope.row)">话术预览</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['manage:script:edit']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['manage:script:remove']">删除</el-button>
</template>
</el-table-column>
</el-table>
<el-button size="mini" type="text" icon="el-icon-search" @click="handlesee(scope.row)">预览</el-button>
<el-button size="mini" type="text" icon="el-icon-zoom-in" @click="see(scope.row)">话术</el-button>
<el-button size="mini" type="text" icon="el-icon-picture-outline"
@click="seescript(scope.row)">话术预览</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['manage:script:edit']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['manage:script:remove']">删除</el-button>
</template>
</el-table-column>
</el-table>
</div>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" @pagination="getList" />
</el-col>
</el-row>
<!-- 添加或修改话术信息对话框 -->
<el-dialog :title="title" :visible.sync="open" width="700px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="110px" :inline="true">
@ -310,7 +316,7 @@ export default {
},],
optionsDisease: [],
maxTableHeight: undefined,
optionsadd: [{
value: 'NORMAL',
@ -441,6 +447,10 @@ export default {
this.Departmentlist();
},
mounted() {
this.getMaxTableHeight()
this.screenChange()
},
watch: {
name(val) {
this.querydepartmen.departmentName = val
@ -857,7 +867,30 @@ export default {
this.download('manage/script/export', {
...this.queryParams
}, `script_${new Date().getTime()}.xlsx`)
}
},
//
getMaxTableHeight() {
const windowInnerHeight = window.innerHeight //
const layoutDiv = this.$refs.layout
const formDiv = this.$refs.form
const mb8Div = this.$refs.mb8
this.maxTableHeight =
windowInnerHeight - 134 -
this.getBoxPadding(layoutDiv) -
this.getBoxHeight(mb8Div) -
this.getBoxHeight(formDiv)
},
// resize
screenChange() {
// resizeresize
window.addEventListener('resize', this.getMaxTableHeight, true)
//
//
// beforeDestroy
this.$once('hook:beforeDestroy', () => {
window.removeEventListener('resize', this.getMaxTableHeight, true)
})
},
}
};
</script>
@ -921,4 +954,12 @@ export default {
left: 20px;
top: -11px;
}
.app-container {
padding: 20px 0 0 20px !important;
}
::v-deep .el-row {
height: 100% !important;
}
</style>

View File

@ -47,7 +47,6 @@
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['manage:template:add']">新增微信模版</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
</div>