From 4eac422e52a4d28fb651b75d0f054697c7a2c0fa Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期一, 09 二月 2026 15:14:13 +0800
Subject: [PATCH] 优化
---
admin/src/views/business/shop.vue | 197 ++++++++++++++++++++++++-------------------------
1 files changed, 97 insertions(+), 100 deletions(-)
diff --git a/admin/src/views/business/shop.vue b/admin/src/views/business/shop.vue
index 440885d..7bf74de 100644
--- a/admin/src/views/business/shop.vue
+++ b/admin/src/views/business/shop.vue
@@ -2,58 +2,37 @@
<TableLayout :permissions="['business:shop:query']">
<!-- 鎼滅储琛ㄥ崟 -->
<el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
- <el-form-item label="搴楅摵鍚嶇О" prop="name">
- <el-input v-model="searchForm.name" placeholder="璇疯緭鍏ュ簵閾哄悕绉�" @keypress.enter.native="search"></el-input>
+ <el-form-item label="鍚嶇О" prop="name">
+ <el-input v-model="searchForm.name" placeholder="璇疯緭鍏ュ悕绉�" @keypress.enter.native="search"></el-input>
</el-form-item>
- <el-form-item label="搴楅摵鐘舵��" prop="status">
+ <el-form-item label="鐧诲綍璐﹀彿" prop="name">
+ <el-input v-model="searchForm.username" placeholder="璇疯緭鍏ョ櫥褰曡处鍙�" @keypress.enter.native="search"></el-input>
+ </el-form-item>
+ <el-form-item label="閿�鍞ā寮�" prop="saleType" >
<!-- 0姝e父 1绂佺敤 -->
- <el-select
- v-model="searchForm.status"
- placeholder="璇烽�夋嫨搴楅摵鐘舵��"
- >
- <el-option
- :key="0"
- :value="0"
- label="姝e父"
- ></el-option>
- <el-option
- :key="1"
- :value="1"
- label="绂佺敤"
- ></el-option>
+ <el-select v-model="searchForm.saleType" placeholder="閿�鍞ā寮�" @change="search" >
+ <el-option :key="0" :value="0" label="骞冲彴閾鸿揣" ></el-option>
+ <el-option :key="1" :value="1" label="鑷富閲囪喘" ></el-option>
</el-select>
- <!-- <el-input v-model="searchForm.status" placeholder="璇疯緭鍏ョ姸鎬�0姝e父 1绂佺敤" @keypress.enter.native="search"></el-input> -->
</el-form-item>
- <el-form-item label="鎺ㄨ崘" prop="isrec">
- <!-- 0鍚� 1鏄� -->
- <el-select
- v-model="searchForm.isrec"
- placeholder="璇烽�夋嫨搴楅摵鐘舵��"
- >
- <el-option
- :key="0"
- :value="0"
- label="鍚�"
- ></el-option>
- <el-option
- :key="1"
- :value="1"
- label="鏄�"
- ></el-option>
+ <el-form-item label="鐘舵��" prop="status">
+ <!-- 0姝e父 1绂佺敤 -->
+ <el-select v-model="searchForm.status" placeholder="璇烽�夋嫨鐘舵��" @change="search" >
+ <el-option :key="0" :value="0" label="姝e父" ></el-option>
+ <el-option :key="1" :value="1" label="绂佺敤" ></el-option>
</el-select>
- <!-- <el-input v-model="searchForm.isrec" placeholder="璇疯緭鍏ユ槸鍚︽帹鑽�0鍚� 1鏄�" @keypress.enter.native="search"></el-input> -->
</el-form-item>
<section>
<el-button type="primary" @click="search">鎼滅储</el-button>
- <!-- <el-button type="primary" @click="showDetail">鎼滅储</el-button> -->
<el-button @click="reset">閲嶇疆</el-button>
</section>
</el-form>
<!-- 琛ㄦ牸鍜屽垎椤� -->
<template v-slot:table-wrap>
- <ul class="toolbar" v-permissions="['business:shop:create', 'business:shop:delete']">
- <li><el-button type="primary" @click="$refs.operaShopWindow.open('鏂板缓搴楅摵')" icon="el-icon-plus" v-permissions="['business:shop:create']">鏂板缓</el-button></li>
+ <ul class="toolbar" >
+ <li><el-button type="primary" @click="$refs.operaShopWindow.open('鏂板缓缁忛攢鍟�')" icon="el-icon-plus" v-permissions="['business:shop:create']">鏂板缓</el-button></li>
<!-- <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:shop:delete']">鍒犻櫎</el-button></li> -->
+ <li><p class="tip-warn" style="width: 100%;margin-left: 20px;"><i class="el-icon-warning"></i>鎻愮ず锛氥�愪緵璐т环璁剧疆銆戝彧缁熻涓婃灦鐘舵�佺殑鍟嗗搧浠锋牸璁剧疆鏁版嵁,(宸插畾浠峰晢鍝佹暟/鍏ㄩ儴鍟嗗搧鏁�)</p></li>
</ul>
<el-table
v-loading="isWorking.search"
@@ -63,37 +42,49 @@
@selection-change="handleSelectionChange"
>
<!-- <el-table-column type="selection" width="55"></el-table-column> -->
- <el-table-column prop="name" label="搴楅摵鍚嶇О" align="center" min-width="100px"></el-table-column>
- <el-table-column prop="imgurl" label="搴楅摵LOGO" align="center" min-width="100px">
+ <el-table-column prop="name" label="鍚嶇О" fixed align="center" min-width="100px">
<template slot-scope="{row}">
- <el-image :scr="row.imgFullUrl + row.imgurl" :preview-src-list="[row.imgFullUrl + row.imgurl]"></el-image>
+ <el-button type="text" @click="showDetail(row)">{{row.name}}</el-button>
</template>
</el-table-column>
- <el-table-column prop="addr" label="鍦板潃" align="center" min-width="100px"></el-table-column>
+ <el-table-column prop="code" label="闂ㄥ簵ID" align="center" min-width="100px"></el-table-column>
+ <el-table-column prop="integral" label="鐜版湁绉垎" align="center" min-width="100px">
+ <template slot-scope="{row}">
+ <span class="orange">{{(row.integral || 0).toFixed(0)}}</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="totalIntegral" label="绱绉垎" align="center" min-width="100px">
+ <template slot-scope="{row}">
+ <span class="orange"> {{(row.totalIntegral || 0).toFixed(0)}}</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="username" label="鐧诲綍璐﹀彿" align="center" min-width="100px"></el-table-column>
+ <el-table-column prop="bigAreaName" label="鎵�灞炲尯鍩�" align="center" min-width="100px"></el-table-column>
+ <el-table-column prop="areaFullName" label="鐪佸競鍖�" align="center" min-width="150px" show-overflow-tooltip>
+ <template slot-scope="{row}">
+ <span v-if="row.areas!=null">{{(row.areas.provinceName||'') + (row.areas.cityName||'') + (row.areas.name||'')}}</span>
+ </template>
+ </el-table-column>
+<!-- <el-table-column prop="imgurl" label="闂ㄥご鍥�" align="center" min-width="100px">
+ <template slot-scope="{row}">
+ <el-image v-if=" row.imgurl" :scr="row.imgFullUrl + row.imgurl" :preview-src-list="[row.imgFullUrl + row.imgurl]"></el-image>
+ </template>
+ </el-table-column>-->
+ <el-table-column prop="addr" label="璇︾粏鍦板潃" align="center" min-width="150px" show-overflow-tooltip></el-table-column>
+ <el-table-column prop="realname" label="鑱旂郴浜�" align="center" min-width="100px"></el-table-column>
+ <el-table-column prop="phone" label="鑱旂郴鐢佃瘽" align="center" min-width="150px"></el-table-column>
+ <el-table-column prop="saleType" label="閿�鍞ā寮�" align="center" min-width="150px">
+ <template slot-scope="{row}">
+ {{ row.saleType == 1?'鑷富閲囪喘':'骞冲彴閾鸿揣'}}
+ </template>
+ </el-table-column>
+ <el-table-column prop="shopPrice" label="渚涜揣浠疯缃�" min-width="100px" align="center">
+ <template slot-scope="{row}" >
+ <div title="閽堝涓婃灦鍟嗗搧浠锋牸璁剧疆缁熻" @click="goPriceSet(row)" style="cursor:pointer;"><span class="red"> {{row.pricedGoodsNum||0}}</span> / <span class="green"> {{row.goodsNum||0}}</span> </div>
+ </template>
+ </el-table-column>
<el-table-column prop="createDate" label="鍒涘缓鏃堕棿" align="center" min-width="140px"></el-table-column>
- <el-table-column label="璐熻矗浜�" align="center" min-width="150px">
- <template slot-scope="{row}">
- {{ `${row.nickName} ${row.memberPhone}` }}
- </template>
- </el-table-column>
- <el-table-column label="缁忛攢鍟嗘暟鎹�" align="center" min-width="150px">
- <template slot-scope="{row}">
- <el-button type="text" @click="showDetail(row)">鏌ョ湅</el-button>
- </template>
- </el-table-column>
- <el-table-column prop="isrec" label="鏄惁鎺ㄨ崘" align="center" min-width="100px">
- <template slot-scope="{row}">
- <el-switch
- v-model="row.isrec"
- active-color="#13ce66"
- inactive-color="#999"
- :active-value="1"
- :inactive-value="0"
- @change="statusChange(row)"
- ></el-switch>
- </template>
- </el-table-column>
- <el-table-column prop="status" label="鐘舵��" align="center" min-width="100px">
+ <el-table-column prop="status" label="鐘舵��" align="center" min-width="100px" fixed="right">
<template slot-scope="{row}">
<el-switch
v-model="row.status"
@@ -105,38 +96,18 @@
></el-switch>
</template>
</el-table-column>
-
- <!-- <el-table-column prop="editor" label="鏇存柊浜虹紪鐮�" min-width="100px"></el-table-column>
- <el-table-column prop="editDate" label="鏇存柊鏃堕棿" min-width="100px"></el-table-column>
- <el-table-column prop="isdeleted" label="鏄惁鍒犻櫎0鍚� 1鏄�" min-width="100px"></el-table-column>
- <el-table-column prop="remark" label="澶囨敞" min-width="100px"></el-table-column>
- <el-table-column prop="sex" label="鎬у埆 0鐢� 1濂� 2鏈煡" min-width="100px"></el-table-column>
- <el-table-column prop="idcard" label="韬唤璇佸彿" min-width="100px"></el-table-column>
- <el-table-column prop="idcardImg" label="韬唤璇佹闈㈢収" min-width="100px"></el-table-column>
- <el-table-column prop="idcardImgBack" label="韬唤璇佸弽闈㈢収" min-width="100px"></el-table-column>
- <el-table-column prop="businessImg" label="钀ヤ笟鎵х収" min-width="100px"></el-table-column>
- <el-table-column prop="longitude" label="瀹氫綅缁忓害" min-width="100px"></el-table-column>
- <el-table-column prop="latitude" label="瀹氫綅缁村害" min-width="100px"></el-table-column>
- <el-table-column prop="areaId" label="鎵�灞炲幙鍖虹紪鐮侊紙鍏宠仈areas)" min-width="100px"></el-table-column>
- <el-table-column prop="info" label="搴楅摵鎻忚堪" min-width="100px"></el-table-column>
- <el-table-column prop="origin" label="鏁版嵁鏉ユ簮 0灏忕▼搴忕敵璇� 1鍚庡彴褰曞叆" min-width="100px"></el-table-column>
- <el-table-column prop="memberId" label="鐢ㄦ埛缂栫爜锛堝叧鑱攎ember琛級" min-width="100px"></el-table-column>
- <el-table-column prop="applyId" label="鐢宠缂栫爜锛堝叧鑱攕hop_apply琛級" min-width="100px"></el-table-column>
- <el-table-column prop="sortnum" label="鎺掑簭鐮�" min-width="100px"></el-table-column>
- <el-table-column prop="looknum" label="鎬绘祻瑙堥噺" min-width="100px"></el-table-column>
- <el-table-column prop="startTime" label="钀ヤ笟寮�濮嬫椂闂�" min-width="100px"></el-table-column>
- <el-table-column prop="endTime" label="钀ヤ笟缁撴潫鏃堕棿" min-width="100px"></el-table-column>
- <el-table-column prop="brandStory" label="鍝佺墝鏁呬簨" min-width="100px"></el-table-column> -->
<el-table-column
v-if="containPermissions(['business:shop:update', 'business:shop:delete'])"
label="鎿嶄綔"
- min-width="120"
+ min-width="280"
fixed="right"
align="center"
>
<template slot-scope="{row}">
- <el-button type="text" @click="$refs.operaShopWindow.open('缂栬緫搴楅摵', row)" icon="el-icon-edit" v-permissions="['business:shop:update']">缂栬緫</el-button>
- <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:shop:delete']">鍒犻櫎</el-button>
+ <el-button type="text" @click="$refs.operaShopWindow.open('缂栬緫缁忛攢鍟�', row)" icon="el-icon-edit" v-permissions="['business:shop:update']">缂栬緫</el-button>
+ <el-button type="text" v-permissions="['business:shop:update']" icon="el-icon-edit" @click="goPriceSet(row)">渚涜揣浠�</el-button>
+ <el-button type="text" @click="resetPwd(row)" icon="el-icon-edit" v-permissions="['business:shop:update']">閲嶇疆瀵嗙爜</el-button>
+ <el-button type="text" style="color: red" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:shop:delete']">鍒犻櫎</el-button>
</template>
</el-table-column>
</el-table>
@@ -149,7 +120,9 @@
</template>
<!-- 鏂板缓/淇敼 -->
<OperaShopWindow ref="operaShopWindow" @success="handlePageChange"/>
- <OperaShopDetailWindow ref="operaShopDetailWindow" />
+ <OperaShopInfoWindow ref="OperaShopInfoWindow" />
+ <ResetPwdShopWindow ref="resetPwdWindow"/>
+ <OperaGoodsShopWindow ref="OperaGoodsShopWindow" @success="handlePageChange"/>
</TableLayout>
</template>
@@ -158,26 +131,30 @@
import TableLayout from '@/layouts/TableLayout'
import Pagination from '@/components/common/Pagination'
import OperaShopWindow from '@/components/business/OperaShopWindow'
-import OperaShopDetailWindow from '@/components/business/OperaShopDetailWindow'
-import { updateIsRecById } from '@/api/business/shop'
+import OperaShopInfoWindow from '@/components/business/OperaShopInfoWindow'
+import OperaGoodsShopWindow from '@/components/business/OperaGoodsShopWindow'
+import { resetPwd, updateIsRecById } from '@/api/business/shop'
+import ResetPwdShopWindow from '@/components/business/ResetPwdShopWindow'
export default {
name: 'Shop',
extends: BaseTable,
- components: { TableLayout, Pagination, OperaShopWindow, OperaShopDetailWindow },
+ components: { TableLayout, Pagination, OperaShopWindow, OperaShopInfoWindow, ResetPwdShopWindow,OperaGoodsShopWindow },
data () {
return {
// 鎼滅储
searchForm: {
name: '',
+ username: '',
status: '',
- isrec: '',
+ saleType: '',
+ isrec: ''
}
}
},
created () {
this.config({
- module: '搴楅摵鍩烘湰淇℃伅琛�',
+ module: '缁忛攢鍟嗗熀鏈俊鎭〃',
api: '/business/shop',
'field.id': 'id',
'field.main': 'id'
@@ -185,7 +162,27 @@
this.search()
},
methods: {
- statusChange(row) {
+ goPriceSet(row){
+ this.$refs.OperaGoodsShopWindow.open('璁剧疆渚涜揣浠� - '+row.name, row )
+ },
+ resetPwd (row) {
+ this.$dialog.messageWaring('纭閲嶇疆璇ョ粡閿�鍟嗐��' + row.name + '銆戠殑鐧诲綍瀵嗙爜鍚楋紵')
+ .then(() => {
+ resetPwd({
+ id: row.id
+ })
+ .then(() => {
+ this.$tip.apiSuccess('瀵嗙爜閲嶇疆鎴愬姛')
+ })
+ .catch(e => {
+ this.$tip.apiFailed(e)
+ })
+ .finally(() => {
+
+ })
+ })
+ },
+ statusChange (row) {
updateIsRecById(row)
.then(() => {
this.$message.success('鎿嶄綔鎴愬姛')
@@ -197,9 +194,9 @@
this.handlePageChange()
})
},
- showDetail(row) {
- this.$refs.operaShopDetailWindow.open('搴楅摵璇︽儏', row)
+ showDetail (row) {
+ this.$refs.OperaShopInfoWindow.open('缁忛攢鍟嗚鎯呫��'+row.name+'銆�', row)
}
- },
+ }
}
</script>
--
Gitblit v1.9.3