From 2925d0cae10aa2ca40747ee8636f44584995cc7f Mon Sep 17 00:00:00 2001 From: luobisheng <727299681@qq.com> Date: 星期一, 28 十一月 2022 16:45:21 +0800 Subject: [PATCH] Merge branch 'master' of http://42.193.1.25:9521/r/sccg_ui --- src/views/operate/fivepack/threepack/components/content.vue | 480 ++++++++++++++++++++++++++++++++++++----------------------- 1 files changed, 293 insertions(+), 187 deletions(-) diff --git a/src/views/operate/fivepack/threepack/components/content.vue b/src/views/operate/fivepack/threepack/components/content.vue index c2d6a7b..7275754 100644 --- a/src/views/operate/fivepack/threepack/components/content.vue +++ b/src/views/operate/fivepack/threepack/components/content.vue @@ -1,122 +1,222 @@ <template> - <div class="content"> - <header> - <div class="headerContent"> - <div class="find"> - <div class="search-item"> - <span>杈撳叆鏌ヨ:</span> - <el-input style="flex: 1" :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> - </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> - </div> + <div class="content"> + <header> + <div class="headerContent"> + <div class="find"> + <div class="search-item"> + <span>杈撳叆鏌ヨ:</span> + <el-input + style="flex: 1" + :placeholder=" + isStorePage() ? '搴楅摵锛堥棬搴楋級鍚嶇О' : '璇疯緭鍏ュ簵閾虹紪鍙�' + " + v-model="storeCode" + /> </div> - <el-button v-if="isStorePage()" type="primary" icon="el-icon-plus" @click="handleView(null, 'create')">娣诲姞</el-button> + <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> + </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 + > + </div> </div> - </header> - <main> - <!-- 鏁版嵁灞曠ず --> - <el-table ref="multipleTable" - :header-cell-style="{background:'#06122c','font-size':'12px',color:'#4b9bb7','font-weight':'650','line-height':'45px'}" - :data="tableData" style="width: 100%" :row-class-name="tableRowClassName"> - <el-table-column type="selection" min-width="5"> - </el-table-column> - <el-table-column prop="storeNumber" label="搴楅摵缂栧彿" min-width="10"> - </el-table-column> - <el-table-column prop="storeName" label="搴楅摵鍚嶇О" min-width="10"> - </el-table-column> - <el-table-column prop="owner" label="搴楅摵鑱旂郴浜�" min-width="10"> - </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> - <el-table-column prop="videoPoint" label="鍏宠仈鎽勫儚鏈�" min-width="10"> - <template v-if="scope.row.videoId" slot-scope="scope"> - <span>{{ scope.row.videoPoint.name }}</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">鎺ㄩ�佷俊鎭�</el-link> - <el-link class="leftPx" icon="el-icon-edit" :underline="false" @click="handleView(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> - </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> - <!-- 鍒嗛〉 --> - <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> + <el-button + v-if="isStorePage()" + type="primary" + icon="el-icon-plus" + @click="handleView(null, 'create')" + >娣诲姞</el-button + > + </div> + </header> + <main> + <!-- 鏁版嵁灞曠ず --> + <el-table + ref="multipleTable" + :header-cell-style="{ + background: '#06122c', + 'font-size': '12px', + color: '#4b9bb7', + 'font-weight': '650', + 'line-height': '45px', + }" + :data="tableData" + style="width: 100%" + :row-class-name="tableRowClassName" + > + <el-table-column type="selection" min-width="5"> </el-table-column> + <el-table-column prop="storeNumber" label="搴楅摵缂栧彿" min-width="10"> + </el-table-column> + <el-table-column prop="storeName" label="搴楅摵鍚嶇О" min-width="10"> + </el-table-column> + <el-table-column prop="owner" label="搴楅摵鑱旂郴浜�" min-width="10"> + </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> + <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> + </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" + >鎺ㄩ�佷俊鎭�</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 + > + </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> + <!-- 鏌ョ湅淇敼椤甸潰 --> + <el-dialog + :visible.sync="dialogScore" + width="45%" + :destroy-on-close="true" + title="鏌ョ湅绉垎" + :before-close="handleClose" + > + <scoreView :storeInfo="storeInfo" @closeDialog="closeDialog" /> + </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> + </main> + </div> </template> <script> import updateUser from "@/views/operate/fivepack/threepack/components/updateUser"; -import { getStoreInfoList, deleteStoreInfo } from "@/api/operate/storeManagement"; +import scoreView from "@/views/operate/fivepack/threepack/components/score"; +import { + getStoreInfoList, + deleteStoreInfo, +} from "@/api/operate/storeManagement"; export default { - components: { updateUser }, + components: { updateUser, scoreView }, created() { this.search(); }, - props: ['model'], + props: ["model"], data() { return { storeCode: null, storeStatus: null, - options: [{ label: '鍏ㄩ儴', value: 0 }, { label: '缁忚惀', value: 1 }, { label: '鍊掗棴', value: 2 }], + options: [ + { label: "鍏ㄩ儴", value: 0 }, + { label: "缁忚惀", value: 1 }, + { label: "鍊掗棴", value: 2 }, + ], tableData: [], dialogUpdate: false, + dialogScore: false, currentPage: 1, totalNum: 0, pageSize: 10, userInfo: null, - dialogType: '', - storeInfo: null - } + dialogType: "", + storeInfo: null, + }; }, methods: { search() { const status = this.storeStatus === 0 ? null : this.storeStatus; getStoreInfoList({ keyword: this.storeCode, status }) - .then(({ list, pageSize, totalPage }) => { - this.tableData = list; - this.pageSize = pageSize; - this.totalNum = totalPage; - }) - .catch(err => this.$message({ type: 'error', message: err })); + .then(({ list, pageSize, totalPage }) => { + this.tableData = list; + this.pageSize = pageSize; + this.totalNum = totalPage; + }) + .catch((err) => this.$message({ type: "error", message: err })); }, handleReset() { - this.storeCode = ''; + this.storeCode = ""; this.storeStatus = null; this.search(); }, @@ -126,22 +226,28 @@ this.storeInfo = row; this.dialogType = type; }, + handleScoreView(row) { + this.dialogScore = true; + this.storeInfo = row; + }, handleDelete(id) { deleteStoreInfo(id) - .then(() => { - this.$message({ type: 'success', message: '鎿嶄綔鎴愬姛' }); - this.search(); - }) - .catch(err => this.$message({ type: 'error', message: err })); + .then(() => { + this.$message({ type: "success", message: "鎿嶄綔鎴愬姛" }); + this.search(); + }) + .catch((err) => this.$message({ type: "error", message: err })); }, handleClose() { this.dialogUpdate = false; + this.dialogScore = false; }, closeDialog() { this.dialogUpdate = false; + this.dialogScore = false; this.search(); }, @@ -159,103 +265,103 @@ }, isStorePage() { - return this.model === 'store'; + return this.model === "store"; + }, + }, +}; +</script> +<style lang="scss" scoped> +.content { + flex: 1; + height: 100%; + padding-left: 20px; + + .headerContent { + display: flex; + line-height: 100px; + justify-content: space-between; + align-items: center; + + .find { + display: flex; + } + + .search-item { + display: flex; + padding: 10px; + } + + .findBtn { + line-height: 100px; + margin-left: 15px; + display: flex; + align-items: center; + + .el-button { + padding: 12px 25px; + } + } + + .addBtn { + padding: 12px 30px; + margin-left: 20%; + } + } + + main { + background-color: #09152f; + margin-top: 20px; + padding-bottom: 50px; + + .mainTitle { + line-height: 60px; + } + + .el-link { + color: #4b9bb7; + } + + .leftPx { + margin-left: 10px; + } + + .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; + } + } + } + + .el-table { + color: #4b9bb7; + font-size: 10px; + + &::v-deep .el-table__empty-block { + background-color: #09152f; + color: #4b9bb7; + } + + .operation { + display: flex; + + .el-button { + border: none; + } + + span:hover { + cursor: pointer; + } + } } } } -</script> -<style lang="scss" scoped> -.content{ - flex: 1; - height: 100%; - padding-left: 20px; - - .headerContent { - display: flex; - line-height: 100px; - justify-content: space-between; - align-items: center; - - .find { - display: flex; - } - - .search-item { - display: flex; - padding: 10px; - } - - .findBtn { - line-height: 100px; - margin-left: 15px; - display: flex; - align-items: center; - - .el-button { - padding: 12px 25px; - } - } - - .addBtn { - padding: 12px 30px; - margin-left: 20%; - } - } - - main { - background-color: #09152f; - margin-top: 20px; - padding-bottom: 50px; - - .mainTitle { - line-height: 60px; - } - - .el-link { - color: #4b9bb7; - } - - .leftPx { - margin-left: 10px; - } - - .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; - } - } - } - - .el-table { - color: #4b9bb7; - font-size: 10px; - - &::v-deep .el-table__empty-block { - background-color: #09152f; - color: #4b9bb7; - } - - .operation { - display: flex; - - .el-button { - border: none; - } - - span:hover { - cursor: pointer; - } - } - } - } - } </style> \ No newline at end of file -- Gitblit v1.8.0