From c4e77695c11681a159da35a94a1b66cf9d145c67 Mon Sep 17 00:00:00 2001
From: zhouwenxuan <1175765986@qq.com>
Date: 星期三, 13 十二月 2023 16:37:44 +0800
Subject: [PATCH] 专家库筛选问题
---
src/views/components/laws.vue | 45 +++++++++++++++++++++++++++++++++------------
1 files changed, 33 insertions(+), 12 deletions(-)
diff --git a/src/views/components/laws.vue b/src/views/components/laws.vue
index ab6ef7d..54b71a0 100644
--- a/src/views/components/laws.vue
+++ b/src/views/components/laws.vue
@@ -3,31 +3,30 @@
<div class="main-content">
<div class="filters">
<el-form :model="state.querys">
- <el-form-item label="法律法规名称" style="width: 500px;margin-bottom: 0;margin-right: 20px">
+ <el-form-item label="法律法规名称:" style="font-size: 15px; width: 500px;margin-bottom: 0;margin-right: 20px">
<el-input v-model="state.querys.title" />
</el-form-item>
</el-form>
- <el-button type="primary" :icon="Search" class="searchBtn">搜索</el-button>
- <el-button type="primary" :icon="Refresh" class="resetBtn">重置</el-button>
+ <el-button type="primary" :icon="Search" class="searchBtn" v-model="state.querys.title" @click="search">搜索</el-button>
+ <el-button type="primary" :icon="Refresh" class="resetBtn" @click="reset">重置</el-button>
</div>
<div class="list">
- <div v-for="item in state.dataList">
+ <div v-for="item in state.dataList" @click="openDetails('法律法规',item.id)">
<div>
<div><img src="src/assets/images/article.png"></div>
<div>{{item.title}}</div>
</div>
<span>
- {{item.updateTime}}
+ {{(item.updateTime?item.updateTime:item.createTime).substring(0,16)}}
</span>
</div>
</div>
- <div class="pag-container">
+ <div class="pag-container" v-if="state.total&&state.total>0">
<el-pagination
- v-model:current-page="state.querys.pageNum"
- v-model:page-size="state.querys.pageSize"
- :page-sizes="[10,15,20,25]"
+ :page-sizes="[10,15,20]"
layout="total, sizes, prev, pager, next, jumper"
:total="state.total"
+ :current-page="state.querys.pageNum"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
/>
@@ -37,12 +36,12 @@
</template>
<script setup>
-import {onMounted, ref, reactive, watch, onUnmounted, defineExpose} from "vue"
+import {onMounted, ref, reactive, watch, onUnmounted, defineExpose, defineEmits} from "vue"
import { getLaws } from '@/api/home/homePage'
import useUserStore from '@/store/modules/user'
import { Search, Refresh } from '@element-plus/icons-vue'
import {ElMessage} from "element-plus";
-
+const emit = defineEmits(['openDetails'])
const route = useRoute()
const router = useRouter()
@@ -82,12 +81,29 @@
}
const handleSizeChange = (val) => {
+ state.querys.pageNum = 1;
state.querys.pageSize = val
getData()
}
const handleCurrentChange = (val) => {
state.querys.pageNum = val
getData()
+}
+const search = () => {
+ state.querys.pageNum = 1;
+ getData()
+}
+const reset = () => {
+ state.querys = {
+ title: '',
+ content: '',
+ pageNum: 1,
+ pageSize: 10
+ }
+ getData()
+}
+const openDetails = (type,id)=>{
+ emit('openDetails',type,id)
}
defineExpose({
@@ -102,6 +118,9 @@
display: flex;
justify-content: center;
margin-top: 170px;
+ :deep(.el-form .el-form-item__label) {
+ font-size: 16px;
+ }
.main-content{
width: 1200px;
@@ -142,6 +161,8 @@
.list{
padding: 15px 0;
+ max-height: calc(100vh - 402px);
+ overflow-y: auto;
&>div{
display: flex;
@@ -171,7 +192,7 @@
}
}
div:last-of-type{
- width: 1000px;
+ width: 900px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
--
Gitblit v1.9.2