From 7cf708376b46741dbee847e59c64a8e11ad088c5 Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期三, 15 十月 2025 13:27:58 +0800
Subject: [PATCH] fix: 绞线的钢芯领用取消关联

---
 src/pages/production/twist/receive/steelCore/index.vue |   73 +++++++++++++++++++++++++-----------
 1 files changed, 50 insertions(+), 23 deletions(-)

diff --git a/src/pages/production/twist/receive/steelCore/index.vue b/src/pages/production/twist/receive/steelCore/index.vue
index 0423e2e..a0f40cd 100644
--- a/src/pages/production/twist/receive/steelCore/index.vue
+++ b/src/pages/production/twist/receive/steelCore/index.vue
@@ -8,19 +8,19 @@
       @query="getList"
     >
       <template #top>
-        <CardTitle title="閽㈣姱棰嗙敤" :hideAction="true" @action="addReport" />
+        <CardTitle title="閽㈣姱棰嗙敤" :hideAction="true" :full="false" @action="addReport" />
       </template>
       <wd-card v-for="(item, index) in cardList" :key="index" type="rectangle" custom-class="round">
         <template #title>
           <view class="flex justify-between">
             <view>
               <wd-icon name="a-rootlist" color="#0D867F"></wd-icon>
-              <text class="text-[#252525] ml-2 font-medium">JX28201021-1</text>
+              <text class="text-[#252525] ml-2 font-medium">{{ item.model }}</text>
             </view>
-            <view class="text-[#A8A8A8]" @click="toEdit">缂栬緫</view>
+            <view class="text-[#A8A8A8]" @click="toEdit(item.id)">缂栬緫</view>
           </view>
         </template>
-        <ProductionCard :data="cardAttr" color="#0D867F" />
+        <ProductionCard :data="cardAttr" :value="item" color="#0D867F" />
       </wd-card>
     </z-paging>
   </view>
@@ -29,7 +29,7 @@
       <wd-button type="text" @click="cancel">鍙栨秷</wd-button>
       <wd-button type="text" @click="submit">纭畾</wd-button>
     </view>
-    <PlateForm />
+    <SteelCore ref="steelCoreRef" @refresh="reloadList" />
   </wd-popup>
   <wd-toast />
 </template>
@@ -38,46 +38,59 @@
 import CardTitle from "@/components/card-title/index.vue";
 import ProductionCard from "../../../components/ProductionCard.vue";
 import { useToast } from "wot-design-uni";
-import PlateForm from "./form.vue";
-import { onLoad } from "@dcloudio/uni-app";
+import SteelCore from "./form.vue";
+import { onLoad, onShow } from "@dcloudio/uni-app";
 import ManageApi from "@/api/product/manage";
 import zPaging from "@/components/z-paging/z-paging.vue";
 
 const paramsId = ref();
 const pagingRef = ref();
+const steelCoreRef = ref();
 const toast = useToast();
 const dialog = reactive({
   visible: false,
 });
 const cardList = ref<any[]>([]);
+const needRefresh = ref(false); // 鏍囪鏄惁闇�瑕佸埛鏂�
 
 const cardAttr = ref<any[]>([
   {
-    label: "鐩樺彿",
-    value: "1902101",
+    label: "鏍峰搧缂栧彿",
+    prop: "monofilamentNumber",
   },
   {
-    label: "闀垮害",
-    value: "46kg",
+    label: "鏁伴噺",
+    prop: "amount",
+    unitProp: "unit",
   },
   {
     label: "閲嶉噺",
-    value: "10kg",
-  },
-  {
-    label: undefined,
-    value: undefined,
+    prop: "weight",
+    unitProp: "weightUnit",
   },
   {
     label: "鍘傚",
-    value: "姹熻嫃鐪佸崡閫氬競鑺鏁板瓧鍘�",
+    prop: "supplier",
     span: 16,
   },
 ]);
 
-const toEdit = () => {
+const toEdit = (id: number) => {
+  needRefresh.value = true; // 鏍囪闇�瑕佸埛鏂�
+
+  // 纭繚 cardList 鏄暟缁�
+  const listData = Array.isArray(cardList.value) ? cardList.value : [];
+  console.log("toEdit - 浼犻�掔殑鍒楄〃鏁版嵁:", listData, "缂栬緫ID:", id);
+
   uni.navigateTo({
-    url: "/pages/production/twist/receive/steelCore/edit",
+    url: `/pages/production/twist/receive/steelCore/edit?id=${id}`,
+    success: () => {
+      // 椤甸潰璺宠浆鎴愬姛鍚庡彂閫佷簨浠朵紶閫掑畬鏁村垪琛ㄦ暟鎹拰褰撳墠缂栬緫ID
+      uni.$emit("steelCoreEditData", {
+        list: listData,
+        editId: id,
+      });
+    },
   });
 };
 
@@ -85,9 +98,11 @@
   dialog.visible = true;
 };
 
-const submit = () => {
-  toast.show("鎻愪氦");
-  dialog.visible = false;
+const submit = async () => {
+  const success = await steelCoreRef.value.submit();
+  if (success) {
+    dialog.visible = false;
+  }
 };
 
 const cancel = () => {
@@ -98,16 +113,28 @@
 const getList = async () => {
   const { code, data } = await ManageApi.getStrandedWireDish({
     wireId: paramsId.value,
-    type: "鐩樺叿",
+    type: "閽㈣姱",
   });
   if (code == 200) {
     pagingRef.value.complete(data);
   }
 };
 
+const reloadList = () => {
+  pagingRef.value.refresh();
+};
+
 onLoad((options: any) => {
   paramsId.value = options.id;
 });
+
+onShow(() => {
+  // 浠庣紪杈戦〉杩斿洖鏃跺埛鏂板垪琛�
+  if (needRefresh.value) {
+    reloadList();
+    needRefresh.value = false;
+  }
+});
 </script>
 
 <style lang="scss" scoped>

--
Gitblit v1.9.3