From 4f4538356403d620b9bd510fd45729a251291942 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期五, 03 七月 2026 18:27:36 +0800
Subject: [PATCH] 功能开发

---
 admin/src/views/business/goods.vue |   62 +++++++++++++++++++++++--------
 1 files changed, 46 insertions(+), 16 deletions(-)

diff --git a/admin/src/views/business/goods.vue b/admin/src/views/business/goods.vue
index 3fd56e9..ea386ab 100644
--- a/admin/src/views/business/goods.vue
+++ b/admin/src/views/business/goods.vue
@@ -2,11 +2,11 @@
   <TableLayout :permissions="['business:bikes: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="productName">
+        <el-input v-model="searchForm.productName" placeholder="璇疯緭鍏ュ晢鍝佸悕绉�" @keypress.enter.native="search"></el-input>
       </el-form-item>
-      <el-form-item label="濂楅鍚嶇О" prop="name">
-        <el-input v-model="searchForm.name" placeholder="璇疯緭鍏ュ椁愬悕绉�" @keypress.enter.native="search"></el-input>
+      <el-form-item label="濂楅鍚嶇О" prop="discountName">
+        <el-input v-model="searchForm.discountName" placeholder="璇疯緭鍏ュ椁愬悕绉�" @keypress.enter.native="search"></el-input>
       </el-form-item>
       <section>
         <el-button type="primary" @click="search">鎼滅储</el-button>
@@ -16,22 +16,30 @@
     <!-- 琛ㄦ牸鍜屽垎椤� -->
     <template v-slot:table-wrap>
       <ul class="toolbar">
-        <li><el-button type="primary">鍚屾鍟嗗搧</el-button></li>
+        <li><el-button type="primary" :loading="isWorking.sync" :disabled="isWorking.sync" @click="handleSync">鍚屾鍟嗗搧</el-button></li>
       </ul>
       <el-table
         v-loading="isWorking.search"
         :data="tableData.list"
         stripe
       >
-        <el-table-column prop="id" label="鎶栭煶鍟嗗搧ID" min-width="100px"></el-table-column>
-        <el-table-column prop="createDate" label="鎶栭煶鍟嗗搧鍚嶇О" min-width="100px"></el-table-column>
-        <el-table-column prop="creator" label="鎶栭煶鍟嗗搧浠锋牸" min-width="100px"></el-table-column>
-        <el-table-column prop="editDate" label="濂楅鍚嶇О" min-width="100px"></el-table-column>
-        <el-table-column prop="editor" label="宸插厬鎹㈡暟閲�" min-width="100px"></el-table-column>
-        <el-table-column prop="isdeleted" label="鍗″埜绫诲瀷" min-width="100px"></el-table-column>
-        <el-table-column prop="name" label="閿�鍞姸鎬�" min-width="100px"></el-table-column>
+        <el-table-column prop="productId" label="鎶栭煶鍟嗗搧ID" min-width="100px"></el-table-column>
+        <el-table-column prop="productName" label="鎶栭煶鍟嗗搧鍚嶇О" min-width="100px"></el-table-column>
+        <el-table-column prop="price" label="鎶栭煶鍟嗗搧浠锋牸" min-width="100px">
+          <template slot-scope="{row}">
+            {{ ((row.price || 0) / 100).toFixed(2) }}
+          </template>
+        </el-table-column>
+        <el-table-column prop="discountName" label="濂楅鍚嶇О" min-width="100px"></el-table-column>
+        <el-table-column prop="exchangedCount" label="宸插厬鎹㈡暟閲�" min-width="100px"></el-table-column>
+        <el-table-column prop="category" label="鍗″埜绫诲瀷" min-width="100px"></el-table-column>
+        <el-table-column prop="onlineStatus" label="閿�鍞姸鎬�" min-width="100px">
+          <template slot-scope="{row}">
+            {{ row.onlineStatus === 1 ? '鍞崠涓�' : row.onlineStatus === 2 ? '宸蹭笅鏋�' : '灏佺' }}
+          </template>
+        </el-table-column>
+        <el-table-column prop="syncDate" label="鍚屾鏃堕棿" min-width="100px"></el-table-column>
         <el-table-column
-          v-if="containPermissions(['business:bikes:update', 'business:bikes:delete'])"
           label="鎿嶄綔"
           min-width="120"
           fixed="right"
@@ -58,6 +66,7 @@
 import TableLayout from '@/layouts/TableLayout'
 import Pagination from '@/components/common/Pagination'
 import ProductConfigurationWindow from '@/components/business/productConfiguration.vue'
+import { sync } from '@/api/business/douyinProduct'
 export default {
   name: 'Goods',
   extends: BaseTable,
@@ -66,18 +75,39 @@
     return {
       // 鎼滅储
       searchForm: {
-        name: ''
+        productName: '',
+        discountName: ''
+      },
+      isWorking: {
+        ...this.isWorking,
+        sync: false
       }
     }
   },
   created () {
     this.config({
-      module: '鑷杞︿俊鎭〃',
-      api: '/business/bikes',
+      module: '鎶栭煶鍟嗗搧',
+      api: '/business/douyinProduct',
       'field.id': 'id',
       'field.main': 'id'
     })
     this.search()
+  },
+  methods: {
+    handleSync () {
+      this.isWorking.sync = true
+      sync()
+        .then(() => {
+          this.$tip.apiSuccess('鍚屾鎴愬姛')
+          this.search()
+        })
+        .catch(e => {
+          this.$tip.apiFailed(e)
+        })
+        .finally(() => {
+          this.isWorking.sync = false
+        })
+    }
   }
 }
 </script>

--
Gitblit v1.9.3