From f6427b5dea54bbb8761fade351e9f86404b2fb61 Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期一, 30 三月 2026 10:22:59 +0800
Subject: [PATCH] fix: 规格型号搜索

---
 src/pages/consumablesLogistics/stockManagement/index.vue |   66 ++++++++-------------------------
 1 files changed, 16 insertions(+), 50 deletions(-)

diff --git a/src/pages/consumablesLogistics/stockManagement/index.vue b/src/pages/consumablesLogistics/stockManagement/index.vue
index 85021f6..f44cb47 100644
--- a/src/pages/consumablesLogistics/stockManagement/index.vue
+++ b/src/pages/consumablesLogistics/stockManagement/index.vue
@@ -2,24 +2,12 @@
   <view class="stock-mgmt-page">
     <PageHeader title="搴撳瓨绠$悊" @back="goBack" />
 
-    <view class="tabs-wrap">
-      <view
-        v-for="tab in tabs"
-        :key="tab.name"
-        class="tab-item"
-        :class="{ active: activeTab === tab.name }"
-        @click="activeTab = tab.name"
-      >
-        <text>{{ tab.label }}</text>
-      </view>
-    </view>
-
     <view class="search-section">
       <view class="search-row">
         <view class="search-input-wrap">
           <up-input
-            v-model="searchForm.productName"
-            placeholder="浜у搧澶х被"
+            v-model="searchForm.model"
+            placeholder="瑙勬牸鍨嬪彿"
             clearable
           />
         </view>
@@ -51,7 +39,7 @@
               <view class="row"><text class="l">瑙勬牸鍨嬪彿</text><text class="r">{{ item.model }}</text></view>
               <view class="row"><text class="l">鍗曚綅</text><text class="r">{{ item.unit }}</text></view>
               <view class="row"><text class="l">鎬诲簱瀛樻暟</text><text class="r highlight">{{ item.qualitity }}</text></view>
-              <view class="row"><text class="l">鍐荤粨鏁伴噺</text><text class="r">{{ item.lockedQuantity || 0 }}</text></view>
+              <!-- <view class="row"><text class="l">鍐荤粨鏁伴噺</text><text class="r">{{ item.lockedQuantity || 0 }}</text></view> -->
               <view class="row"><text class="l">鍙敤搴撳瓨</text><text class="r">{{ item.unLockedQuantity ?? (item.qualitity - (item.lockedQuantity || 0)) }}</text></view>
               <view class="row"><text class="l">鏈�杩戞洿鏂版椂闂�</text><text class="r">{{ item.updateTime }}</text></view>
             </view>
@@ -62,11 +50,11 @@
               :class="{ disabled: !(item.unLockedQuantity > 0) }"
               @click="openSubtract(item)"
             >鍑哄簱</view>
-            <view
+            <!-- <view
               class="btn-link btn-link-warn"
               v-if="item.unLockedQuantity > 0"
               @click="openFrozen(item)"
-            >鍐荤粨</view>
+            >鍐荤粨</view> -->
             <view
               class="btn-link btn-link-plain"
               v-if="(item.lockedQuantity || 0) > 0"
@@ -102,17 +90,11 @@
 </template>
 
 <script setup>
-import { computed, reactive, ref, toRefs, watch } from "vue";
+import { computed, reactive, ref, toRefs } from "vue";
 import { onReachBottom, onShow } from "@dcloudio/uni-app";
 import PageHeader from "@/components/PageHeader.vue";
 import { frozenConsumablesIn, getConsumablesInListPage, thawConsumablesIn } from "@/api/consumablesLogistics/consumablesIn.js";
-import { frozenConsumablesUninventory, getConsumablesUninventoryListPage, thawConsumablesUninventory } from "@/api/consumablesLogistics/consumablesUninventory.js";
 
-const activeTab = ref("qualified");
-const tabs = [
-  { label: "鍚堟牸搴撳瓨", name: "qualified" },
-  { label: "涓嶅悎鏍煎簱瀛�", name: "unqualified" },
-];
 const tableData = ref([]);
 const total = ref(0);
 const loadStatus = ref("loadmore");
@@ -126,15 +108,13 @@
 });
 const { searchForm, quantityForm } = toRefs(data);
 
-const isQualified = () => activeTab.value === "qualified";
 const getList = () => {
   const isFirstPage = page.current === 1;
   if (isFirstPage) {
     uni.showLoading({ title: "鍔犺浇涓�...", mask: true });
   }
   const params = { ...page, productName: searchForm.value.productName };
-  const api = isQualified() ? getConsumablesInListPage : getConsumablesUninventoryListPage;
-  api(params)
+  getConsumablesInListPage(params)
     .then((res) => {
       uni.hideLoading();
       const records = res.data?.records || [];
@@ -163,12 +143,6 @@
   getList();
 };
 
-watch(activeTab, () => {
-  page.current = 1;
-  loadStatus.value = "loadmore";
-  getList();
-});
-
 const handleQuery = () => {
   page.current = 1;
   loadStatus.value = "loadmore";
@@ -176,9 +150,8 @@
 };
 
 const goAdd = () => {
-  const type = isQualified() ? "0" : "1";
   uni.navigateTo({
-    url: `/pages/consumablesLogistics/stockManagement/add?type=${type}`,
+    url: `/pages/consumablesLogistics/stockManagement/add?type=0`,
   });
 };
 
@@ -202,13 +175,12 @@
       "stockSubtractRecord",
       JSON.stringify({
         item: row,
-        type: isQualified() ? "0" : "1",
+        type: "0",
       })
     );
   } catch (e) {}
-  const typeParam = isQualified() ? "0" : "1";
   uni.navigateTo({
-    url: `/pages/consumablesLogistics/stockManagement/subtract?type=${typeParam}&id=${row.id}`,
+    url: `/pages/consumablesLogistics/stockManagement/subtract?type=0&id=${row.id}`,
   });
 };
 
@@ -243,9 +215,9 @@
   const base = { id, lockedQuantity: num };
   let promise;
   if (quantityOp.value === "frozen") {
-    promise = isQualified() ? frozenConsumablesIn(base) : frozenConsumablesUninventory(base);
+    promise = frozenConsumablesIn(base);
   } else {
-    promise = isQualified() ? thawConsumablesIn(base) : thawConsumablesUninventory(base);
+    promise = thawConsumablesIn(base);
   }
   promise
     .then(() => {
@@ -259,13 +231,10 @@
 const goDetail = (item) => {
   if (!item) return;
   try {
-    uni.setStorageSync(
-      "stockDetailItem",
-      JSON.stringify({
-        item,
-        type: isQualified() ? "0" : "1",
-      })
-    );
+    uni.setStorageSync('stockDetailItem', JSON.stringify({
+      item,
+      type: '0'
+    }))
   } catch (e) {}
   if (!item.id) {
     uni.navigateTo({ url: "/pages/consumablesLogistics/stockManagement/view" });
@@ -283,9 +252,6 @@
 
 <style lang="scss" scoped>
 .stock-mgmt-page { min-height: 100vh; background: #f5f5f5; padding-bottom: 120rpx; }
-.tabs-wrap { display: flex; background: #fff; padding: 24rpx; gap: 24rpx; }
-.tab-item { flex: 1; text-align: center; padding: 20rpx; border-radius: 12rpx; background: #f0f0f0; font-size: 28rpx; color: #666; }
-.tab-item.active { background: #2979ff; color: #fff; }
 .search-section { background: #fff; margin: 24rpx; padding: 24rpx; border-radius: 16rpx; }
 .search-row { display: flex; align-items: center; }
 .search-input-wrap { flex: 1; margin-right: 20rpx; min-width: 0; }

--
Gitblit v1.9.3