From eb7a808aaf7dd0a6dd2ff70f9ef3f8ce0b1e31d1 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期五, 22 五月 2026 18:27:32 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/gtzxinglijicun

---
 admin/src/components/business/OperaShopInfoWindow.vue |  203 +++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 174 insertions(+), 29 deletions(-)

diff --git a/admin/src/components/business/OperaShopInfoWindow.vue b/admin/src/components/business/OperaShopInfoWindow.vue
index 78edb32..dda7fd8 100644
--- a/admin/src/components/business/OperaShopInfoWindow.vue
+++ b/admin/src/components/business/OperaShopInfoWindow.vue
@@ -38,6 +38,66 @@
     </div>
 
     <el-tabs v-model="activeTab" class="store-tabs">
+      <el-tab-pane label="闂ㄥ簵淇℃伅" name="shopInfo">
+        <div class="shop-info-content" v-if="storeInfo">
+          <!-- 绗竴閮ㄥ垎锛氫笁涓瓧娈典竴琛� -->
+          <div class="info-grid" style="margin-bottom: 0;">
+            <div class="info-item">
+              <span class="label">鎵�鍦ㄧ渷甯傚尯锛�</span>
+              <span class="value">{{ storeInfo.provinceName || '' }} {{ storeInfo.cityName || '' }} {{ storeInfo.areaName || '' }}</span>
+            </div>
+            <div class="info-item">
+              <span class="label">闂ㄥ簵鍦板潃锛�</span>
+              <span class="value">{{ storeInfo.address || '' }}</span>
+            </div>
+            <div class="info-item">
+              <span class="label">鍏ラ┗鎶奸噾锛�</span>
+              <span class="value amount">楼{{ storeInfo.depositAmount ? (storeInfo.depositAmount / 100).toFixed(2) : '0.00' }}</span>
+            </div>
+            <div class="info-item">
+              <span class="label">钀ヤ笟鏃堕棿锛�</span>
+              <span class="value" v-if="storeInfo.businessType === 1">鍏ㄥぉ钀ヤ笟</span>
+              <span class="value" v-if="storeInfo.businessType === 0">闄愭椂钀ヤ笟</span>
+            </div>
+            <div class="info-item">
+              <span class="label">閰嶉�佽寖鍥达細</span>
+              <span class="value" v-if="storeInfo.deliveryArea">{{ storeInfo.deliveryArea }}鍏噷</span>
+              <span class="value" v-else>鏆傛棤</span>
+            </div>
+            <div class="info-item">
+              <span class="label">浣嶇疆鏍囩锛�</span>
+              <span class="value">{{ storeInfo.locationTagNames || '' }}</span>
+            </div>
+            <div class="info-item">
+              <span class="label">闂ㄥ簵鐘舵�侊細</span>
+              <span class="value" :class="getStatusClass(storeInfo.status)">
+                {{ storeInfo.status === 0 ? '鍚敤' : '绂佺敤' }}
+              </span>
+            </div>
+          </div>
+          
+          <!-- 绗簩閮ㄥ垎锛氫竴涓瓧娈典竴琛� -->
+          <div class="info-full">
+            <div class="info-item-full">
+              <span class="label">闂ㄥ簵浠嬬粛锛�</span>
+              <span class="value">{{ storeInfo.content || '' }}</span>
+            </div>
+            <div class="info-item-full">
+              <span class="label">钀ヤ笟鏃堕棿锛�</span>
+              <span class="value">{{ storeInfo.shopHours || '' }}</span>
+            </div>
+            <div class="info-item-full">
+              <span class="label">瀵勫瓨绫诲瀷锛�</span>
+              <span class="value">{{ storeInfo.depositTypes || '' }}</span>
+            </div>
+            <div class="info-item-full">
+              <span class="label">鏀惰垂鏍囧噯锛�</span>
+              <span class="value">{{ storeInfo.feeStandard || '' }}</span>
+            </div>
+          </div>
+        </div>
+      </el-tab-pane>
+
       <el-tab-pane label="闂ㄥ簵涓氱哗" name="performance">
         <el-form ref="searchForm" :model="searchForm" label-width="100px" inline>
           <el-form-item label="璁㈠崟缂栧彿" prop="code">
@@ -91,10 +151,13 @@
             </template>
           </el-table-column>
           <el-table-column prop="goodsInfo" label="鐗╁搧淇℃伅" min-width="180px" show-overflow-tooltip></el-table-column>
+          <el-table-column prop="isUrgent" label="绫诲瀷" min-width="80px">
+            <template slot-scope="{row}"><span>{{ row.type === 1?'鍚屽煄瀵勯��':'灏卞湴瀛樺彇' }}</span></template>
+          </el-table-column>
           <el-table-column prop="isUrgent" label="璁㈠崟绾у埆" min-width="80px">
             <template slot-scope="{row}"><span v-if="row.type ===1">{{ row.isUrgent === 1?'鏋侀�熻揪':'鏍囬�熻揪' }}</span></template>
           </el-table-column>
-          <el-table-column label="鐗╁搧淇濊垂锛堝厓锛�" min-width="120px">
+          <!-- <el-table-column label="鐗╁搧淇濊垂锛堝厓锛�" min-width="120px">
             <template slot-scope="{row}">楼{{ (row.declaredFee / 100).toFixed(2) }}</template>
           </el-table-column>
           <el-table-column label="鐗╁搧淇濊垂锛堝厓锛�" min-width="120px">
@@ -102,6 +165,12 @@
           </el-table-column>
           <el-table-column label="鍩虹鏈嶅姟璐癸紙鍏冿級" min-width="120px">
             <template slot-scope="{row}">楼{{ (row.price / 100).toFixed(2) }}</template>
+          </el-table-column> -->
+
+          <el-table-column label="缁撶畻閲戦锛堝厓锛�" min-width="120px">
+            <template slot-scope="{row}">
+              楼{{ storeInfo.id == row.depositShopId ? (row.depositShopFee / 100).toFixed(2) : storeInfo.id == row.takeShopId ? (row.takeShopFee / 100).toFixed(2) : '' }}
+            </template>
           </el-table-column>
           <el-table-column label="璁㈠崟鎬讳环锛堝厓锛�" min-width="120px">
             <template slot-scope="{row}">楼{{ (row.totalAmount / 100).toFixed(2) }}</template>
@@ -109,18 +178,22 @@
           <el-table-column label="瀹炰粯鐜伴噾锛堝厓锛�" min-width="120px">
             <template slot-scope="{row}">楼{{ (row.payAmount / 100).toFixed(2) }}</template>
           </el-table-column>
-          <el-table-column label="鍔犳�ヨ垂锛堝厓锛�" min-width="120px">
-            <template slot-scope="{row}"><span v-if="row.type ===1 ">楼{{ (row.urgentAmount / 100).toFixed(2) }}</span></template>
-          </el-table-column>
           <el-table-column label="閫�娆鹃噾棰濓紙鍏冿級" min-width="120px">
             <template slot-scope="{row}">楼{{ (row.refundAmount / 100).toFixed(2) }}</template>
+          </el-table-column>
+          <el-table-column label="瓒呮椂閲戦锛堝厓锛�" min-width="100px">
+            <template slot-scope="{row}">楼{{ (row.overdueAmount / 100).toFixed(2) }}</template>
+          </el-table-column>
+          <el-table-column prop="createTime" label="鍒涘缓鏃堕棿" min-width="150px"> </el-table-column>
+          <!-- <el-table-column label="鍔犳�ヨ垂锛堝厓锛�" min-width="120px">
+            <template slot-scope="{row}"><span v-if="row.type ===1 ">楼{{ (row.urgentAmount / 100).toFixed(2) }}</span></template>
           </el-table-column>
           <el-table-column label="瓒呮椂閲戦" min-width="100px">
             <template slot-scope="{row}">楼{{ (row.overdueAmount / 100).toFixed(2) }}</template>
           </el-table-column>
           <el-table-column label="寮傚父閲戦" min-width="100px">
             <template slot-scope="{row}">楼{{ (row.exceptionAmount / 100).toFixed(2) }}</template>
-          </el-table-column>
+          </el-table-column> -->
           <el-table-column  prop="statusDesc"  label="璁㈠崟鐘舵��" min-width="100px">
             <template slot-scope="{row}">
             <span :style="{ color: row.status <7 ? '#e6a23c' :  (row.status ===7 ? '#67c23a' : 'grey' )}">
@@ -136,7 +209,6 @@
             </template>
           </el-table-column>
           <el-table-column prop="payTime" label="鏀粯鏃堕棿" min-width="150px"> </el-table-column>
-          <el-table-column prop="createTime" label="鍒涘缓鏃堕棿" min-width="150px"> </el-table-column>
         </el-table>
         <pagination
             @size-change="handleSizeChange"
@@ -147,7 +219,7 @@
 
       <el-tab-pane label="闂ㄥ簵璧勮川" name="qualification">
         <div class="qualification-content" v-if="storeInfo">
-          <div class="qualification-section">
+          <!-- <div class="qualification-section">
             <h4 class="section-title">鍩烘湰淇℃伅</h4>
             <div class="info-grid">
               <div class="info-row">
@@ -164,14 +236,14 @@
               </div>
               <div class="info-row">
                 <span class="label">瀹℃壒鐘舵�侊細</span>
-                <span class="value">{{ storeInfo.auditStatus === 0 ? '寰呭鎵�' : storeInfo.auditStatus === 1 ? '瀹℃壒閫氳繃' : '瀹℃壒鏈�氳繃' }}</span>
+                <span class="value">{{ storeInfo.auditStatus === 0 ? '寰呭鎵�' : storeInfo.auditStatus === 1 ? '瀹℃壒閫氳繃' : storeInfo.auditStatus === 2 ? '瀹℃壒鏈�氳繃' : '宸叉敮浠樻娂閲�' }}</span>
               </div>
               <div class="info-row">
                 <span class="label">閰嶉�佽寖鍥达細</span>
                 <span class="value">{{ storeInfo.deliveryRange || '鏆傛棤' }}</span>
               </div>
             </div>
-          </div>
+          </div> -->
 
           <div class="qualification-section">
             <h4 class="section-title">涓讳綋璧勮川</h4>
@@ -243,7 +315,7 @@
             </template>
           </div>
 
-          <div class="qualification-section" v-if="storeInfo.companyType === 1">
+          <div class="qualification-section">
             <h4 class="section-title">闂ㄥ簵鐓х墖鍙婂叾浠栨潗鏂�</h4>
             <div class="image-item-row">
               <span class="label">闂ㄥ簵闂ㄥご鐓э細</span>
@@ -290,13 +362,17 @@
   components: { GlobalWindow, Pagination,OperaOrderDetail },
   data () {
     return {
-      activeTab: 'performance',
+      title: '闂ㄥ簵璇︽儏',
+      activeTab: 'shopInfo',
       storeInfo: {},
-      visible:false,
+      visible: false,
       searchForm: {
+        code: '',
         orderNo: '',
         goodsInfo: '',
         createTime1: '',
+        createStartTime: '',
+        createEndTime: '',
         startTime: '',
         endTime: '',
         orderStatus: '',
@@ -318,20 +394,34 @@
       this.searchForm.createEndTime = val ? val[1] : ''
       this.search()
     },
+    reset () {
+      this.$refs.searchForm.resetFields()
+      this.searchForm.createStartTime = ''
+      this.searchForm.createEndTime = ''
+      this.search()
+    },
     open (title, row) {
-      this.searchForm.memberId = row.id
-      detail(row.id)
-          .then(res => {
-            this.storeInfo = res
-            this.activeTab = 'performance'
-            this.title = title
-            this.visible = true
-            this.searchForm.shopId = row.id
-            this.search()
-          })
-          .catch(e => {
-            this.$tip.apiFailed(e)
-          })
+    this.searchForm.memberId = row.id
+    this.getStoreInfo(row.id).then(() => {
+      this.activeTab = 'shopInfo'
+      this.title = title
+      this.visible = true
+      this.searchForm.shopId = row.id
+      this.search()
+    })
+  },
+    // 鑾峰彇闂ㄥ簵璇︽儏
+    async getStoreInfo(id) {
+      try {
+        const res = await detail(id)
+        this.storeInfo = res
+      } catch (e) {
+        this.$tip.apiFailed(e)
+      }
+    },
+    // 鑾峰彇闂ㄥ簵鐘舵�佹牱寮�
+    getStatusClass(status) {
+      return status === 0 ? 'status-enabled' : 'status-disabled'
     }
   }
 }
@@ -349,10 +439,65 @@
   margin-right: 20px;
 }
 .store-avatar {
-  width: 80px;
-  height: 80px;
-  border-radius: 50%;
-}
+    width: 100px;
+    height: 100px;
+    border-radius: 50%;
+  }
+  
+  .info-grid {
+    display: grid;
+    grid-template-columns: repeat(3, 1fr);
+    gap: 20px;
+    margin-bottom: 30px;
+    padding: 20px;
+    /* background: #f5f7fa; */
+    border-radius: 4px;
+  }
+  
+  .info-full {
+    padding: 20px;
+    /* background: #f5f7fa; */
+    border-radius: 4px;
+  }
+  
+  .info-item {
+    font-size: 14px;
+  }
+  
+  .info-item-full {
+    font-size: 14px;
+    margin-bottom: 15px;
+  }
+  
+  .info-item-full:last-child {
+    margin-bottom: 0;
+  }
+  
+  .label {
+    color: #909399;
+    min-width: 100px;
+    display: inline-block;
+    margin-right: 10px;
+  }
+  
+  .value {
+    color: #606266;
+  }
+  
+  .value.amount {
+    color: #f56c6c;
+    font-weight: bold;
+  }
+  
+  .status-enabled {
+    color: #67c23a;
+    font-weight: bold;
+  }
+  
+  .status-disabled {
+    color: #f56c6c;
+    font-weight: bold;
+  }
 .store-header-right {
   flex: 1;
 }

--
Gitblit v1.9.3