From ddfc75ed45d427bb8b407133b5e2bde0e6ec581a Mon Sep 17 00:00:00 2001 From: 明梦爽 <2972214568@qq.com> Date: 星期六, 22 一月 2022 16:22:45 +0800 Subject: [PATCH] 新闻查询功能完毕 --- src/components/Administrator/Main.vue | 207 +++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 173 insertions(+), 34 deletions(-) diff --git a/src/components/Administrator/Main.vue b/src/components/Administrator/Main.vue index 1db10c7..16ed775 100644 --- a/src/components/Administrator/Main.vue +++ b/src/components/Administrator/Main.vue @@ -1,5 +1,6 @@ <template> <div> + <!-- 绾ц仈閫夋嫨鍣� --> <div class="block"> <el-cascader v-model="value" @@ -11,7 +12,19 @@ </div> <div> <el-card class="box-card"> - <el-button class="add" type="success" icon="el-icon-plus" @click="goEdit()">鐐瑰嚮鍦ㄨ鍒楄〃涓嬫坊鍔犱竴鏉℃柊闂�</el-button> + <el-row :gutter="40"> + <el-col :span="4"> + <!-- 娣诲姞鏂伴椈鎸夐挳 --> + <el-button el-button class="add" type="success" icon="el-icon-plus" @click="goEdit()">鐐瑰嚮鍦ㄨ鍒楄〃涓嬫坊鍔犱竴鏉℃柊闂�</el-button> + </el-col> + <el-col :span="10"> + <!-- 鏂伴椈鎼滅储 --> + <el-input clearable @clear="qingKong()" placeholder="璇疯緭鍏ユ墍瑕佹煡璇㈢殑鏂伴椈鏍囬" v-model="fuzzyForm.fuzzytitle" class="input-with-select"> + <el-button class="btn" slot="append" icon="el-icon-search" @click="fuzzyList(fuzzyForm.fuzzytitle)"></el-button> + </el-input> + </el-col> + </el-row> + <!-- 鏂伴椈琛ㄦ牸鍖哄煙 --> <el-table :data="tableData" border style="width: 100%" :header-cell-style="{textAlign: 'center'}" :cell-style="{ textAlign: 'center' }" > <!-- :header-cell-style="{textAlign: 'center'}"璁剧疆澶撮儴灞呬腑锛� --> @@ -30,23 +43,16 @@ <!-- {{ scope.row.id }} --> <div> <el-button type="success" @click="look(scope.row.id)">鏌ョ湅</el-button> - <el-button type="warning" @click="amend(scope.row.id)">淇敼</el-button>  - <el-popconfirm - confirm-button-text='鏄殑' - cancel-button-text='鍙栨秷' - icon="el-icon-info" - icon-color="red" - title="纭畾鍒犻櫎璇ユ潯鏂伴椈锛�" - > - <el-button slot="reference">鍒犻櫎</el-button> - </el-popconfirm> + <el-button type="warning" @click="showEditDialog(scope.row.id)">淇敼</el-button> + <el-button type="info" @click="deleteNews(scope.row.id)">鍒犻櫎</el-button> </div> </template> </el-table-column> </el-table> - <!-- 鍒嗛〉 --> - <div> + <div class="fenye"> + <!-- 鑾峰彇鏂伴椈鍒楄〃鍒嗛〉 --> + <div class="get"> <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" @@ -57,24 +63,62 @@ :total="total"> </el-pagination> </div> + <!-- 妯$硦鏂伴椈鍒楄〃鍒嗛〉 --> + <div class="fuzzy"> + <el-pagination + @size-change="handleSizeChangefuzzy" + @current-change="handleCurrentChangefuzzy" + :current-page="fuzzyForm.fuzzycurrent" + :page-sizes="[6,12, 18,]" + :page-size="100" + layout="total, sizes, prev, pager, next, jumper" + :total="fuzzyForm.fuzzytotal"> + </el-pagination> + </div> + </div> </el-card> + <!-- 淇敼鏂伴椈鐨勫璇濇 --> + <el-dialog + title="淇敼鏂伴椈" + :visible.sync="editDialogVisible" + width="50%" + :before-close="handleClose"> + <!-- rules琛ㄥ崟楠岃瘉瑙勫垯锛宺ef褰撳墠琛ㄥ崟鐨勯獙璇佸璞� --> + <el-form ref="editFormRef" :model="editForm" label-width="80px" status-icon> + <el-form-item label="id:"> + <el-input v-model="editForm.id" disabled></el-input> + </el-form-item> + <el-form-item label="鏂伴椈鏍囬:"> + <el-input v-model="editForm.title"></el-input> + </el-form-item> + <el-form-item label="鍙戝竷鏃ユ湡:"> + <el-input v-model="editForm.releaseTime"></el-input> + </el-form-item> + </el-form> + <span slot="footer" class="dialog-footer"> + <el-button @click="editDialogVisible = false">鍙� 娑�</el-button> + <el-button type="primary" @click="editNew()">纭� 瀹�</el-button> + </span> + </el-dialog> </div> </div> </template> <script> -import { getNewsList } from '../../api/api' +import { getNewsList,getnew,update,deleteNew,fuzzy } from '../../api/api' import axios from 'axios' export default { data() { return { visible: false, + editDialogVisible:false, //鎺у埗淇敼瀵硅瘽妗嗙殑甯冨皵鍊� + editForm:{}, //鏌ヨ鍒扮殑鏂伴椈瀵硅薄锛岀洰鍓嶄粎渚涗慨鏀逛娇鐢� newsCategoryId:1, //鍏堝瓨涓�涓皬鏍囬id tableData:[], //鏂伴椈鍒楄〃瀵硅薄 - pageSize:6, //姣忛〉鏉℃暟 + pageSize:3, //姣忛〉鏉℃暟 currentPage:1, //褰撳墠椤� - newsList:[], total:0, //鏂伴椈鎬绘潯鏁� + fuzzyForm:{ fuzzytitle:'',fuzzytotal:0,fuzzycurrent:1,fuzzysize:6 }, //妯$硦鏌ヨ鍒楄〃瀵硅薄 value: [], options: [{ value: 1, @@ -162,26 +206,21 @@ mounted(){ }, methods: { + //淇敼瀵硅瘽妗嗗叧闂殑鏂规硶 + handleClose(done) { + this.$confirm('纭鍏抽棴锛�') + .then(_ => { + done(); + }) + .catch(_ => {}); + }, + //绾ц仈閫夋嫨鍣ㄧ殑鏂规硶 handleChange(value) { console.log(value); console.log(value[1]); this.newsCategoryId = value[1]; //灏嗗緱鍒扮殑灏忔爣棰榠d瀛樻斁璧锋潵 this.query(this.newsCategoryId); }, - // query(value){ - // const data = { - // current:this.currentPage, - // newsCategoryId:value[1], - // size:this.pageSize - // }; - // getNewsList(data).then(res=>{ - // console.log(res); - // this.tableData = res.data.records - // this.total = res.data.total - // }).catch(err => { - // console.log(err); - // }) - // }, query(newsCategoryId){ const data = { current:this.currentPage, @@ -200,10 +239,98 @@ console.log(err); }) }, - //淇敼 - amend(id){ - alert('鐖变綘鍛�'); - console.log('>>>'+id); + //灞曠ず淇敼瀵硅瘽妗� + showEditDialog(id){ + getnew(id).then(res => { + console.log(res); + if (res.code == 200) { + this.editForm = res.data + } + }) + this.editDialogVisible = true; + }, + //纭畾淇敼琛ㄥ崟鎻愪氦锛岄獙璇佸彂璧疯姹� + editNew(){ + // console.log(typeof(this.editForm.releaseTime)); + // console.log(this.editForm.releaseTime); + let arr = this.editForm.releaseTime.split('') + if(arr[4] !== '/' || arr[7] !== '/'){ + return this.$message.error('璇锋寜鐓р�淴XXX/XX/XX鈥濈殑鏍煎紡濉啓鏃ユ湡') + }else{ + const data = { + id: this.editForm.id, + releaseTime: this.editForm.releaseTime, + title:this.editForm.title + } + update(data).then(res=>{ + console.log('dsadasas'+res); + if (res.code == 200) { + this.editDialogVisible =false; + this.$message.success('淇敼鏂伴椈鎴愬姛锛�') + this.query(this.newsCategoryId); + } + }) + } + }, + //妯$硦鏌ヨ + fuzzyList(title){ + console.log(title); + if(title == ''){ + return this.$message.error('璇峰厛杈撳叆鏌ヨ鏂伴椈鏍囬锛�') + } + const data = { + current: this.fuzzyForm.fuzzycurrent, + size: this.fuzzyForm.fuzzysize, + title:title + } + fuzzy(data).then(res => { + console.log(res); + if (res.code !== 200) { + return this.$message.error('鏌ヨ鏂伴椈鍒楄〃澶辫触') + }else{ + this.tableData = res.data.records + this.fuzzyForm.fuzzytotal = res.data.total + } + }).catch(err => { + console.log(err); + }) + }, + //娓呯┖鏌ヨ鍒楄〃鍐呭 + qingKong(){ + this.tableData = [] + this.fuzzyForm.fuzzytotal = 0 + }, + //鏍规嵁id鍒犻櫎鏂伴椈 + async deleteNews(id){ + console.log(id); + const res = await this.$confirm('姝ゆ搷浣滃皢姘镐箙鍒犻櫎璇ユ潯鏂伴椈, 鏄惁缁х画?', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).catch(err => { + return err + }) + //濡傛灉鐢ㄦ埛鐐瑰嚮纭畾鍒欒繑鍥瀋onfirm + //濡傛灉鐢ㄦ埛鐐瑰嚮鍙栨秷鍒欒繑鍥瀋ancel + console.log(res); + if(res !== 'confirm'){ + return this.$message.info('宸插彇娑堝垹闄') + }else{ + console.log(id); + const data = { + id:id + } + //鍙傛暟data 瑕佷互瀵硅薄鐨勫舰寮忎紶鍏� + deleteNew(data).then(res => { + console.log('>>>'+res); + if(res.code == 200){ + this.$message.success('鍒犻櫎鏂伴椈鎴愬姛锛�') + this.query(this.newsCategoryId); + }else{ + return this.$message.error('鍒犻櫎鏂伴椈澶辫触锛�') + } + }) + } }, //鏌ョ湅 look(id){ @@ -218,6 +345,14 @@ // console.log(`姣忛〉 ${val} 鏉); this.pageSize = val; this.query(this.newsCategoryId) + }, + handleCurrentChangefuzzy(val){ + this.fuzzyForm.fuzzycurrent = val + this.fuzzyList(this.fuzzyForm.fuzzytitle) //妯$硦鏌ヨ + }, + handleSizeChangefuzzy(val){ + this.fuzzyForm.fuzzysize = val + this.fuzzyList(this.fuzzyForm.fuzzytitle) //妯$硦鏌ヨ }, //鍘诲線娣诲姞缂栬緫椤甸潰 goEdit(){ @@ -244,4 +379,8 @@ .el-pagination{ margin-top: 10px; } +.fenye{ + display: flex; + justify-content: space-between; +} </style> \ No newline at end of file -- Gitblit v1.8.0