From f7bdedf1f3f7600c73f6d5beb46c1d1f4d518822 Mon Sep 17 00:00:00 2001 From: luobisheng <727299681@qq.com> Date: 星期三, 09 十一月 2022 18:15:34 +0800 Subject: [PATCH] 消息管理丶店铺对接 --- src/views/operate/message/myIndex/index.vue | 181 ++++++++++++++++++++++---------------------- 1 files changed, 90 insertions(+), 91 deletions(-) diff --git a/src/views/operate/message/myIndex/index.vue b/src/views/operate/message/myIndex/index.vue index 6039ace..2cbc3ed 100644 --- a/src/views/operate/message/myIndex/index.vue +++ b/src/views/operate/message/myIndex/index.vue @@ -3,7 +3,7 @@ <header> <div class="header-nav"> <span class="nav-left">鏁版嵁绛涢��</span> - <span class="nav-right">楂樼骇鎼滅储</span> + <span class="nav-right" @click="showMoreParamsDialog">楂樼骇鎼滅储</span> </div> <div class="header-content"> <div class="search"> @@ -19,8 +19,8 @@ </div> <div class="message-kind"> <span>娑堟伅鍒嗙被:</span> - <el-select v-model="messageKind" placeholder="璇烽�夋嫨娑堟伅鍒嗙被"> - <el-option v-for="item in kindList" :key="item.id" :label="item.columnName" :value="item.id"> + <el-select v-model="messageType" placeholder="璇烽�夋嫨娑堟伅鍒嗙被"> + <el-option v-for="item in typeList" :key="item.id" :label="item.columnName" :value="item.id"> </el-option> </el-select> </div> @@ -57,8 +57,7 @@ </el-table-column> <el-table-column prop="channelCode" label="娑堟伅鍒嗙被" min-width="10"> <template slot-scope="scope"> - <span>{{scope.row.channelCode === '01' ? '绔欏唴淇�':scope.row.channelCode - ==='02'?"閭欢":'鐭俊'}}</span> + <span>{{ getMessageType(scope.row.channelCode) }}</span> </template> </el-table-column> <el-table-column prop="status" label="鍙戝竷鐘舵��" min-width="5"> @@ -80,17 +79,17 @@ <!-- 鏂板缓娑堟伅 --> <el-dialog title="鏂板缓娑堟伅" :visible.sync="dialogCreate" v-if="dialogCreate" width="80%" :before-close="handleConfirmClose"> - <MyCreate @closeMyDialog="closeDialog"></MyCreate> + <MyEdit @closeMyDialog="closeDialog" :type="'create'" :myDataRow="null"></MyEdit> </el-dialog> <!-- 娑堟伅璇︽儏 --> <el-dialog title="娑堟伅璇︽儏" :visible.sync="dialogView" v-if="dialogView" width="45%" :before-close="handleClose"> - <MyView @closeDialog="closeDialog" :myinfo="info">></MyView> + <MyView @closeDialog="closeDialog" :myDataRow="tableRowData">></MyView> </el-dialog> <!-- 缂栬緫椤甸潰 --> <el-dialog title="缂栬緫娑堟伅" :visible.sync="dialogEdit" v-if="dialogEdit" width="80%" :before-close="handleClose"> - <MyEdit @closeDialog="closeDialog" :myDataRow="info"></MyEdit> + <MyEdit @closeDialog="closeDialog" :myDataRow="tableRowData" :type="'update'"></MyEdit> </el-dialog> <!-- tools --> <div class="tools"> @@ -111,30 +110,37 @@ </div> <div class="pagination"> <el-pagination background :current-page="currentPage" layout="prev, pager, next" - :total="totalNum" :page-size="pageSize" @current-change="changeCurrentPage" - > + :total="totalNum" :page-size="pageSize" @current-change="changeCurrentPage"> </el-pagination> </div> </div> </div> + + <el-dialog + title="楂樼骇鍙傛暟" + :visible.sync="isShowMoreParams" + width="30%" + :before-close="handleClose"> + </el-dialog> </main> </div> </template> <script> import helper from '@/utils/mydate' import MyView from './myview' -import MyCreate from './createUser' -// 寮曞叆缂栬緫缁勪欢 import MyEdit from './update' +import { deleteMessage, getMessageById, getMessageList } from "@/api/operate/messageManagement"; +import {SUCCESS_CODE} from "@/utils"; + export default { - components: { - MyView, MyCreate,MyEdit - }, + components: { MyView, MyEdit }, data() { return { tableData: [], - context: "", - dialogEdit:false, + tableRowData: null, + isShowMoreParams: false, + context: '', + dialogEdit: false, dialogCreate: false, dialogView: false, totalNum: null, @@ -165,7 +171,7 @@ ], tempList: [], messageStatus: 2, - messageKind: '00', + messageType: '00', statusList: [ { label: '鍏ㄩ儴', @@ -180,7 +186,7 @@ value: 1, } ], - kindList: [ + typeList: [ { id:'00', columnName:'鍏ㄩ儴', @@ -201,89 +207,71 @@ } }, created() { - const {setTableData} = this - setTableData(); + this.getMessageList(); }, + methods: { // 鏌ヨ handleSearch(){ - this.setTableData(); + this.getMessageList(); }, + // 閲嶇疆 handleReset(){ - + this.messageStatus = 2; + this.messageType = '00'; + this.context = ''; }, + // 鏌ョ湅 handleView(data){ - this.info = data; - this.dialogView = true; + this.tableRowData = data; + this.dialogView = true; }, + // 缂栬緫 handleEdit(data){ - this.info = data; - this.dialogEdit = true; + this.tableRowData = data; + this.dialogEdit = true; }, + // 鍒犻櫎淇℃伅 handleDelete(idarr) { this.$confirm('纭鍒犻櫎?') - .then(_ => { - this.$axios({ - method: 'post', - url: 'sccg/message/delete?ids=' + idarr, - }) - .then(res => { - if (res.code === 200) { - this.$message({ - type: 'success', - message: '鍒犻櫎鎴愬姛', - }) - this.setTableData(); - } else { - this.$message({ - type: 'error', - message: res.message - }) - } - }) + .then(() => { + deleteMessage(idarr) + .then(({ code, message }) => { + if (code === SUCCESS_CODE) { + this.getMessageList(); + this.$message({ type: 'success', message }); + } else { + this.$message({ type: 'error', message }); + } + }) + .catch(err => { this.$message({ type: 'error', message: err }) }); }) }, - // 璁剧疆琛ㄦ牸鏁版嵁 - async setTableData() { - const arr = await this.getMessageList(); - this.tableData = arr.records; - this.totalNum = arr.total - }, + // 鑾峰彇娑堟伅鏁版嵁 - async getMessageList() { - let arr = []; - const { currentPage, pageSize,context,messageStatus,messageKind } = this; - await this.$axios({ - method: 'post', - url: 'sccg/message/list', - data: { - body: "", - channelCode: messageKind === '00' ?'':messageKind, - createUser: '', - current: currentPage, - head: context, - messageType: "", - pageSize: pageSize, - randomCode: "", - remark: "", - sendTime: "", - status: messageStatus === 2 ? '':messageStatus, - targetFrom: "", - targetTo: "" - } - }) - .then(res => { - arr = res.data; - }) - return arr; + getMessageList() { + const messageParam = { + current: this.currentPage, + size: this.pageSize, + channelCode: this.messageType, + status: this.messageStatus, + head: this.context + } + getMessageList(messageParam) + .then(({ data }) => { + this.tableData = []; + }) + .catch(err => { + this.$message({ type: 'error', message: err }); + }); }, + // 鎵归噺涓嬫媺妗嗘搷浣� async selectChange(list) { - console.log(this.tempList); if (this.tempList.length !== 0) { this.preMyIdx = list; if (list === 3) { @@ -302,6 +290,7 @@ }) } }, + // 鎵归噺鎿嶄綔 mulUpdateStatus(idArr, flag) { this.$confirm(flag === 1 ? "鎮ㄧ‘瀹氳杩涜鎵归噺鍚敤瑙掕壊鍚�?" : '鎮ㄧ‘瀹氳杩涜鎵归噺绂佺敤瑙掕壊鍚�?') @@ -323,55 +312,61 @@ message: res.message }) } - console.log(res); }) }) .catch(err => { console.log(err) }) }, + // 琛ㄦ牸鐩戝惉 tableChange(list) { this.tempList = []; list.forEach(item => { this.tempList.push(item.id); }) - if (list.length === this.tableData.length) { - this.all = true; - } else { - this.all = false - } + this.all = list.length === this.tableData.length; }, + // 淇敼鏃堕棿鏍煎紡 changeTime({ updateTime }) { return helper(updateTime); }, + // 鍏ㄩ�� selectAll() { this.$refs.multipleTable.toggleAllSelection(); }, + // 鍙嶉�� disSame(list) { list.forEach(row => { this.$refs.multipleTable.toggleRowSelection(row) }) }, + // 璁剧疆琛ㄦ牸鏂戦┈绾� tableRowClassName({ row, rowIndex }) { - if ((rowIndex + 1) % 2 == 0) { + if ((rowIndex + 1) % 2 === 0) { return 'warning-row'; } else { return 'success-row'; } - return ''; }, + // 褰撳墠椤垫敼鍙樿Е鍙戜簨浠� changeCurrentPage(page) { this.currentPage = page; - this.setTableData(); + this.getMessageList(); }, + + showMoreParamsDialog() { + this.isShowMoreParams = true; + }, + // 鍏抽棴寮圭獥 handleClose(done) { done(); }, + // 纭鍏抽棴寮圭獥 handleConfirmClose(done) { this.$confirm('纭鍏抽棴?') @@ -382,13 +377,19 @@ console.log(err); }) }, + // 鑷畾涔夊叧闂脊绐� closeDialog({ flag, index }) { this.dialogCreate = flag; this.dialogView = flag; if (index === 1) { - this.setTableData(); + this.getMessageList(); } + }, + + getMessageType(id) { + const result = this.typeList.find(item => item.id === id); + return result.columnName; } } } @@ -401,7 +402,6 @@ header { background-color: #09152f; - border: 1pox solid #fff; .header-nav { line-height: 40px; @@ -459,7 +459,6 @@ background-color: #09152f; margin-top: 20px; padding-bottom: 50px; - border: 1pox solid #fff; .el-link { color: #4b9bb7; -- Gitblit v1.8.0