From 829f5116884f98643ffc5b2a548a600d40c0cedb Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期一, 14 四月 2025 23:09:32 +0800
Subject: [PATCH] 处理图片显示问题
---
src/views/operate/fivepack/threepack/components/content.vue | 462 ++++++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 374 insertions(+), 88 deletions(-)
diff --git a/src/views/operate/fivepack/threepack/components/content.vue b/src/views/operate/fivepack/threepack/components/content.vue
index c7b2580..eaf9c3b 100644
--- a/src/views/operate/fivepack/threepack/components/content.vue
+++ b/src/views/operate/fivepack/threepack/components/content.vue
@@ -5,31 +5,64 @@
<div class="find">
<div class="search-item">
<span>杈撳叆鏌ヨ:</span>
- <el-input style="flex: 1" :placeholder="
- isStorePage() ? '搴楅摵锛堥棬搴楋級鍚嶇О' : '璇疯緭鍏ュ簵閾虹紪鍙�'
- " v-model="storeCode" />
+ <el-input
+ style="flex: 1; margin-left: 15px"
+ :placeholder="
+ isStorePage() ? '搴楅摵锛堥棬搴楋級鍚嶇О' : '璇疯緭鍏ュ簵閾虹紪鍙�'
+ "
+ v-model="storeCode"
+ />
</div>
<div class="search-item">
<span>搴楅摵鐘舵��:</span>
- <el-select v-model="storeStatus" placeholder="閫夋嫨搴楅摵鐘舵��">
- <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
+ <el-select
+ v-model="storeStatus"
+ style="margin-left: 15px"
+ placeholder="閫夋嫨搴楅摵鐘舵��"
+ >
+ <el-option
+ v-for="item in options"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ />
</el-select>
</div>
<div class="findBtn">
- <el-button type="primary" @click="search" icon="el-icon-search">鏌ヨ</el-button>
- <el-button icon="el-icon-delete-solid" @click="handleReset">閲嶇疆</el-button>
+ <el-button type="primary" @click="search" icon="el-icon-search"
+ >鏌ヨ</el-button
+ >
+ <el-button icon="el-icon-delete-solid" @click="handleReset"
+ >閲嶇疆</el-button
+ >
</div>
</div>
- <el-button v-if="isStorePage()" type="primary" icon="el-icon-plus" class="button-addition"
- @click="handleView(null, 'create')">娣诲姞</el-button>
+ <el-button
+ v-if="isStorePage()"
+ type="primary"
+ icon="el-icon-plus"
+ class="button-addition"
+ @click="handleView(null, 'create')"
+ >娣诲姞</el-button
+ >
</div>
</header>
<main>
<!-- 鏁版嵁灞曠ず -->
- <el-table ref="multipleTable" :header-cell-style="{
- 'font-weight': '650',
- 'line-height': '45px',
- }" :data="tableData" style="width: 100%" :row-class-name="tableRowClassName">
+ <el-table
+ border
+ stripe
+ ref="multipleTable"
+ :header-cell-style="{
+ background: '#F5F5F5',
+ 'font-weight': '650',
+ 'line-height': '45px',
+ }"
+ :data="tableData"
+ style="width: 100%"
+ :row-class-name="tableRowClassName"
+ @selection-change="tableChange"
+ >
<el-table-column type="selection" min-width="5"> </el-table-column>
<el-table-column prop="storeNumber" label="搴楅摵缂栧彿" min-width="10">
</el-table-column>
@@ -39,10 +72,14 @@
</el-table-column>
<el-table-column prop="contact" label="搴楅摵鑱旂郴鐢佃瘽" min-width="10">
</el-table-column>
- <el-table-column prop="storeAddress" label="搴楅摵璇︾粏鍦板潃" min-width="10">
+ <el-table-column
+ prop="storeAddress"
+ label="搴楅摵璇︾粏鍦板潃"
+ min-width="10"
+ >
</el-table-column>
- <el-table-column prop="storeScore" label="搴楅摵绉垎" min-width="10">
- </el-table-column>
+ <!-- <el-table-column prop="storeScore" label="搴楅摵绉垎" min-width="10">
+ </el-table-column> -->
<el-table-column prop="videoPoint" label="鍏宠仈鎽勫儚鏈�" min-width="10">
<template v-if="scope.row.videoId" slot-scope="scope">
<span>{{ scope.row.videoPoint.name }}</span>
@@ -50,50 +87,121 @@
</el-table-column>
<el-table-column prop="status" label="鐘舵��" min-width="10">
<template slot-scope="scope">
- <span>{{ scope.row.status == 1 ? '缁忚惀' : '鍊掗棴' }}</span>
+ <span>{{ scope.row.status == 1 ? "缁忚惀" : "鍊掗棴" }}</span>
</template>
</el-table-column>
<el-table-column prop="operation" label="鎿嶄綔" min-width="20">
<template slot-scope="scope">
<div v-if="!isStorePage()" class="operation">
- <el-link icon="el-icon-edit" :underline="false" @click="handleView(scope.row, 'update')">缂栬緫</el-link>
- <el-link class="leftPx" icon="el-icon-delete-solid" :underline="false"
- @click="handleDelete(scope.row.id)">鍒犻櫎</el-link>
- <el-link class="leftPx" icon="el-icon-edit" :underline="false"
- @click="sendMessage(scope.row.contact)">鎺ㄩ�佷俊鎭�</el-link>
- <el-link class="leftPx" icon="el-icon-edit" :underline="false"
- @click="handleScoreView(scope.row, 'view')">鏌ョ湅</el-link>
+ <el-link
+ icon="el-icon-edit"
+ :underline="false"
+ @click="handleView(scope.row, 'update')"
+ >缂栬緫</el-link
+ >
+ <el-link
+ class="leftPx"
+ icon="el-icon-delete-solid"
+ :underline="false"
+ @click="handleDelete(scope.row.id)"
+ >鍒犻櫎</el-link
+ >
+ <el-link
+ class="leftPx"
+ icon="el-icon-edit"
+ :underline="false"
+ @click="sendMessage(scope.row.contact)"
+ >鎺ㄩ�佷俊鎭�</el-link
+ >
+ <el-link
+ class="leftPx"
+ icon="el-icon-edit"
+ :underline="false"
+ @click="handleScoreView(scope.row, 'view')"
+ >鏌ョ湅</el-link
+ >
</div>
<div v-else class="operation">
- <el-link icon="el-icon-edit" :underline="false" @click="handleView(scope.row, 'update')">缂栬緫</el-link>
- <el-link class="leftPx" icon="el-icon-delete-solid" :underline="false"
- @click="handleDelete(scope.row.id)">鍒犻櫎</el-link>
+ <el-link
+ icon="el-icon-edit"
+ :underline="false"
+ @click="handleView(scope.row, 'update')"
+ >缂栬緫</el-link
+ >
+ <el-link
+ class="leftPx"
+ icon="el-icon-delete-solid"
+ :underline="false"
+ @click="handleDelete(scope.row.id)"
+ >鍒犻櫎</el-link
+ >
</div>
</template>
</el-table-column>
</el-table>
<!-- 鏌ョ湅淇敼椤甸潰 -->
- <el-dialog :visible.sync="dialogUpdate" width="45%" :destroy-on-close="true"
- :title="dialogType === 'view' ? '鏌ョ湅搴楅摵淇℃伅' : '淇敼搴楅摵淇℃伅'" :before-close="handleClose">
- <updateUser v-if="dialogUpdate" :dialogType="dialogType" :storeInfo="storeInfo" :isStorePage="isStorePage()"
- @closeDialog="closeDialog" />
+ <el-dialog
+ :visible.sync="dialogUpdate"
+ width="45%"
+ :destroy-on-close="true"
+ :title="dialogType === 'view' ? '鏌ョ湅搴楅摵淇℃伅' : '淇敼搴楅摵淇℃伅'"
+ :before-close="handleClose"
+ >
+ <updateUser
+ v-if="dialogUpdate"
+ :dialogType="dialogType"
+ :storeInfo="storeInfo"
+ :isStorePage="isStorePage()"
+ @closeDialog="closeDialog"
+ />
</el-dialog>
<!-- 鏌ョ湅淇敼椤甸潰 -->
- <el-dialog :visible.sync="dialogScore" width="60%" :destroy-on-close="true" title="鏌ョ湅绉垎"
- :before-close="handleCloseScoreView">
+ <el-dialog
+ :visible.sync="dialogScore"
+ width="60%"
+ :destroy-on-close="true"
+ title="鏌ョ湅绉垎"
+ :before-close="handleCloseScoreView"
+ >
<scoreView v-if="dialogScore" :storeInfo="storeInfoScoreView" />
</el-dialog>
<!-- 鏂板缓娑堟伅 -->
- <el-dialog title="鏂板缓娑堟伅" :destroy-on-close="true" :key="dialogType" :visible.sync="isShowDialog" width="80%"
- :before-close="handleConfirmClose">
+ <el-dialog
+ title="鏂板缓娑堟伅"
+ :destroy-on-close="true"
+ :key="dialogType"
+ :visible.sync="isShowDialog"
+ width="80%"
+ :before-close="handleConfirmClose"
+ >
<div class="mainContent">
- <el-form ref="user" label-width="140px" autoComplete="on" :model="role" :rules="rules" label-position="right">
+ <el-form
+ ref="user"
+ label-width="140px"
+ autoComplete="on"
+ :model="role"
+ :rules="rules"
+ label-position="right"
+ >
<!-- 娑堟伅鏍忕洰 -->
- <el-form-item class="optionItem" label="鐭俊妯℃澘:" prop="messageType">
+ <el-form-item
+ class="optionItem"
+ label="鐭俊妯℃澘:"
+ prop="messageType"
+ >
<div class="message-item">
<div class="message-item__left">
- <el-select v-model="role.messageType" placeholder="璇烽�夋嫨鐭俊妯℃澘" @change="setTemplateValue">
- <el-option v-for="item in colList" :key="item.id" :label="item.title" :value="item.id">
+ <el-select
+ v-model="role.messageType"
+ placeholder="璇烽�夋嫨鐭俊妯℃澘"
+ @change="setTemplateValue"
+ >
+ <el-option
+ v-for="item in colList"
+ :key="item.id"
+ :label="item.title"
+ :value="item.id"
+ >
</el-option>
</el-select>
</div>
@@ -102,11 +210,18 @@
<!-- 娑堟伅鏍囬 -->
<el-form-item class="optionItems" label="鐭俊鏍囬:" prop="head">
<div class="message-item__left">
- <el-input v-model="role.head" placeholder="璇烽�夋嫨鐭俊鏍囬"></el-input>
+ <el-input
+ v-model="role.head"
+ placeholder="璇烽�夋嫨鐭俊鏍囬"
+ ></el-input>
</div>
</el-form-item>
<!-- 鎺ユ敹瀵硅薄 -->
- <el-form-item class="optionItem" label="鎺ユ敹鎵嬫満鍙�:" prop="targetTo">
+ <el-form-item
+ class="optionItem"
+ label="鎺ユ敹鎵嬫満鍙�:"
+ prop="targetTo"
+ >
<!-- <div class="message-item__left">
<el-select v-model="role.targetTo" placeholder="璇烽�夋嫨鎺ユ敹鎺ユ敹鎵嬫満鍙�" >
<el-option :value="role.targetTo">
@@ -127,19 +242,73 @@
<el-form-item>
<div class="optionBtn">
- <el-button type="primary" @click.native.prevent="handleSubmit(2)" class="btn submit">鍙戝竷</el-button>
- <el-button class="btn cancel" @click.native.prevent="handleResetq">閲嶇疆</el-button>
+ <el-button
+ type="primary"
+ @click.native.prevent="handleSubmit(2)"
+ class="btn submit"
+ >鍙戝竷</el-button
+ >
+ <el-button
+ class="btn cancel"
+ @click.native.prevent="handleResetq"
+ >閲嶇疆</el-button
+ >
</div>
</el-form-item>
</el-form>
</div>
</el-dialog>
- <!-- 鍒嗛〉 -->
- <div class="pagination">
- <el-pagination background :current-page="currentPage" layout="prev, pager, next" :total="totalNum"
- :page-size="pageSize" @current-change="changeCurrentPage">
- </el-pagination>
+ <div class="tools">
+ <div class="funs">
+ <div class="funsItem">
+ <el-checkbox v-model="all" @change="selectAll()">鍏ㄩ��</el-checkbox>
+ </div>
+ <div class="funsItem">
+ <el-checkbox v-model="unsame" @change="disSame(tableData)"
+ >鍙嶉��</el-checkbox
+ >
+ </div>
+ <div class="funsItem">
+ <el-select
+ v-model="myIdx"
+ placeholder="鎵归噺鎿嶄綔"
+ @change="selectChange"
+ >
+ <el-option
+ v-for="item in options"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ :disabled="item.disabled"
+ >
+ </el-option>
+ </el-select>
+ </div>
+ </div>
+ <div class="pagination">
+ <el-pagination
+ background
+ :current-page="currentPage"
+ layout="prev, pager, next"
+ :total="totalNum"
+ :page-size="pageSize"
+ @current-change="changeCurrentPage"
+ >
+ </el-pagination>
+ </div>
</div>
+ <!-- 鍒嗛〉 -->
+ <!-- <div class="pagination">-->
+ <!-- <el-pagination-->
+ <!-- background-->
+ <!-- :current-page="currentPage"-->
+ <!-- layout="prev, pager, next"-->
+ <!-- :total="totalNum"-->
+ <!-- :page-size="pageSize"-->
+ <!-- @current-change="changeCurrentPage"-->
+ <!-- >-->
+ <!-- </el-pagination>-->
+ <!-- </div>-->
</main>
</div>
</template>
@@ -151,7 +320,7 @@
deleteStoreInfo,
} from "@/api/operate/storeManagement";
import { sendMessageByMobileNumber } from "@/api/operate/messageManagement";
-import MyEditor from '@/components/edit';
+import MyEditor from "@/components/edit";
import SMS from "@/api/operate/SMS";
export default {
@@ -166,12 +335,16 @@
data() {
const validateMessageContent = (rule, value, callback) => {
if (!value) {
- callback(new Error('璇疯緭鍏ョ煭淇″唴瀹�'));
+ callback(new Error("璇疯緭鍏ョ煭淇″唴瀹�"));
} else {
callback();
}
- }
+ };
return {
+ tempList: [],
+ myIdx: 0,
+ all: false,
+ unsame: false,
storeCode: null,
storeStatus: null,
options: [
@@ -189,26 +362,35 @@
dialogType: "",
isShowDialog: false,
storeInfo: null,
+ all: false,
+ unsame: false,
+ myIdx: null,
storeInfoScoreView: {},
role: {
- messageType: '',
- head: '',
- targetTo: '',
+ messageType: "",
+ head: "",
+ targetTo: "",
targetFrom: null,
- body: '',
- channelCode: '02',
+ body: "",
+ channelCode: "02",
phoneNumber: null,
},
rules: {
messageType: [
- { required: true, trigger: ['blur', 'change'], message: '璇烽�夋嫨鐭俊妯℃澘' },
+ {
+ required: true,
+ trigger: ["blur", "change"],
+ message: "璇烽�夋嫨鐭俊妯℃澘",
+ },
],
- head: [
- { required: true, trigger: "blur", message: '璇疯緭鍏ョ煭淇℃爣棰�' },
- ],
+ head: [{ required: true, trigger: "blur", message: "璇疯緭鍏ョ煭淇℃爣棰�" }],
body: [
- { required: true, trigger: ['blur', 'change'], validator: validateMessageContent }
- ]
+ {
+ required: true,
+ trigger: ["blur", "change"],
+ validator: validateMessageContent,
+ },
+ ],
},
colList: [],
departList: [],
@@ -216,63 +398,108 @@
dialogCreate: false,
dialogView: false,
defaultProps: {
- children: 'children',
- label: 'departName'
+ children: "children",
+ label: "departName",
},
checkedList: [],
tempNameArr: [],
info: {},
- sendUser: ""
+ sendUser: "",
};
},
methods: {
+ // 鐩戝惉琛ㄦ牸閫変腑鐘舵��
+ tableChange(list) {
+ this.tempList = list;
+ this.all = list.length === this.tableData.length;
+ },
+ // 鎵归噺鍒犻櫎
+ mulDelete(idArr) {
+ this.$axios({
+ method: "delete",
+ url: "sccg/illegal_building/batch_delete?ids=" + idArr,
+ }).then((res) => {
+ this.getUserList();
+ this.$message({
+ message: res.message,
+ type: res.code === 200 ? "success" : "warning",
+ });
+ });
+ },
+ // 鎵ц涓嬫媺妗嗘搷浣�
+ selectChange(val) {
+ let ids = [];
+ this.tempList.forEach((item) => {
+ ids.push(item.number);
+ });
+ if (ids.length !== 0) {
+ if (val === 3) {
+ this.mulDelete(ids);
+ }
+ } else {
+ this.$message({
+ type: "warning",
+ message: "鎮ㄨ繕娌¢�変腑浠讳綍鏁版嵁",
+ });
+ }
+ },
+ // 鍏ㄩ��
+ selectAll() {
+ this.$refs.multipleTable.toggleAllSelection();
+ },
+ // 鍙嶉��
+ disSame(list) {
+ list.forEach((row) => {
+ this.$refs.multipleTable.toggleRowSelection(row);
+ });
+ },
// 鏂板缓/淇濆瓨娑堟伅(1:鏂板缓,0淇濆瓨娑堟伅)
handleSubmit(mystatus) {
this.role.body = this.$refs.edit.editor.txt.html();
this.$refs.user.validate((valid) => {
if (valid) {
const params = Object.assign({}, this.role);
- params.targetTo = this.checkedList.join(',');
+ params.targetTo = this.checkedList.join(",");
params.status = mystatus;
sendMessageByMobileNumber(params)
.then(() => {
- this.$message({ type: 'success', message: '鎿嶄綔鎴愬姛' });
+ this.$message({ type: "success", message: "鎿嶄綔鎴愬姛" });
this.isShowDialog = false;
- this.role.body = '';
- this.role.head = '';
+ this.role.body = "";
+ this.role.head = "";
this.$refs.edit.editor.txt.clear();
this.search();
this.$refs.user.resetFields();
})
- .catch(err => this.$message({ type: 'error', message: err }));
+ .catch((err) => this.$message({ type: "error", message: err }));
} else {
- this.$message.warning('璇锋鏌ュ繀濉」');
+ this.$message.warning("璇锋鏌ュ繀濉」");
}
- })
+ });
},
setTemplateValue(obj) {
- var _this = this
+ var _this = this;
SMS.getSMSTemplateById(obj).then((result) => {
- _this.role.head = result.title
- _this.role.body = result.body
- _this.$refs.edit.editor.txt.html(result.body)
- })
+ _this.role.head = result.title;
+ _this.role.body = result.body;
+ _this.$refs.edit.editor.txt.html(result.body);
+ });
},
getSMSTemplateList() {
SMS.getSMSTemplateList({ current: 1, pageSize: 100 })
.then(({ records }) => {
this.colList = records;
})
- .catch(err => this.$message.error(err))
+ .catch((err) => this.$message.error(err));
},
// 纭鍏抽棴寮圭獥
handleConfirmClose(done) {
this.$confirm("纭鍏抽棴?").then(() => {
done();
this.search();
- this.role.body = '';
- this.role.head = '';
+ this.role.body = "";
+ this.role.head = "";
this.$refs.edit.editor.txt.clear();
this.search();
this.$refs.user.resetFields();
@@ -283,8 +510,8 @@
this.$refs.edit.editor.txt.clear();
this.search();
this.$refs.user.resetFields();
- this.role.body = '';
- this.role.head = '';
+ this.role.body = "";
+ this.role.head = "";
},
sendMessage(val) {
this.isShowDialog = true;
@@ -295,7 +522,6 @@
getStoreInfoList({ keyword: this.storeCode, status })
.then(({ list, pageSize, totalPage }) => {
this.tableData = list;
- console.log(list);
this.pageSize = pageSize;
this.totalNum = totalPage;
})
@@ -361,8 +587,9 @@
.content {
flex: 1;
height: 100%;
+ margin-left: 5px;
padding-left: 20px;
-
+ border: 1px solid #ccc;
.headerContent {
display: flex;
line-height: 100px;
@@ -491,7 +718,67 @@
.mainTitle {
line-height: 60px;
}
+ .tools {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ padding: 0 20px;
+ .funs {
+ display: flex;
+
+ .funsItem {
+ line-height: 28px;
+ display: flex;
+ align-items: center;
+ border: 1px solid #ccc;
+ border-radius: 4px;
+ font-size: 12px;
+ margin-left: 10px;
+
+ .el-checkbox {
+ width: 80px;
+ padding: 0 10px;
+ }
+
+ .el-select {
+ width: 120px;
+ }
+ &::v-deep .el-input__inner {
+ border: none;
+ // background-color: #09152f;
+ }
+ &:hover {
+ border: 1px solid #4b9bb7;
+ }
+
+ &:hover .el-checkbox {
+ color: #4b9bb7;
+ }
+ }
+ }
+
+ .pagination {
+ margin-top: 50px;
+ display: flex;
+ line-height: 50px;
+ justify-content: center;
+
+ .el-pagination {
+ &::v-deep li,
+ &::v-deep .btn-prev,
+ &::v-deep .btn-next {
+ // background-color: #071f39;
+ color: #4b9bb7;
+ }
+
+ &::v-deep .active {
+ background-color: #409eff;
+ color: #fff;
+ }
+ }
+ }
+ }
.el-link {
color: #4b9bb7;
}
@@ -504,10 +791,9 @@
margin-top: 50px;
display: flex;
line-height: 50px;
- justify-content: center;
+ justify-content: right;
.el-pagination {
-
&::v-deep li,
&::v-deep .btn-prev,
&::v-deep .btn-next {
@@ -528,7 +814,7 @@
.operation {
display: flex;
-
+ color: var(--operation-color);
.el-button {
border: none;
}
@@ -540,4 +826,4 @@
}
}
}
-</style>
\ No newline at end of file
+</style>
--
Gitblit v1.8.0