From 78c565e37520fad100693c4e298e30e7c916d1bb Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期二, 28 十月 2025 16:21:40 +0800
Subject: [PATCH] fix: 领用二维码异常提示,原材料自检重构

---
 src/pages/production/twist/report/index.vue |  111 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 104 insertions(+), 7 deletions(-)

diff --git a/src/pages/production/twist/report/index.vue b/src/pages/production/twist/report/index.vue
index 62df4ae..f100b78 100644
--- a/src/pages/production/twist/report/index.vue
+++ b/src/pages/production/twist/report/index.vue
@@ -4,7 +4,7 @@
       <template #top>
         <CardTitle title="鎶ュ伐淇℃伅" :hideAction="true" :full="false" @action="addReport" />
       </template>
-      <wd-card v-for="(item, index) in twistReportList" type="rectangle" custom-class="round">
+      <wd-card v-for="item in twistReportList" :key="item.id" type="rectangle" custom-class="round">
         <template #title>
           <view class="flex justify-between">
             <view>
@@ -17,7 +17,10 @@
         </template>
         <ProductionCard :data="cardAttr" :value="item" />
         <template #footer>
-          <wd-button size="small" plain @click="toCheck(item.id)">鑷</wd-button>
+          <wd-button size="small" plain style="margin-right: 10px" @click="toAttachment(item)">
+            闄勪欢
+          </wd-button>
+          <wd-button size="small" plain @click="handleSelfCheck(item.id)">鑷</wd-button>
         </template>
       </wd-card>
     </z-paging>
@@ -29,6 +32,15 @@
       </view>
       <TwistForm ref="twistFormRef" />
     </wd-popup>
+    <wd-popup v-model="drawFormRef.visible" position="bottom" custom-class="yl-popup">
+      <Draw
+        :single-regulation-info-array="drawData.singleRegulationInfoArray"
+        :steel-regulation-info="drawData.steelRegulationInfo"
+        :reel-tooling-info="drawData.reelToolingInfo"
+        :wire-id="drawData.wireId"
+        @close="handleDrawClose"
+      />
+    </wd-popup>
     <wd-toast />
   </view>
 </template>
@@ -38,14 +50,47 @@
 import { useToast } from "wot-design-uni";
 import ProductionCard from "../../components/ProductionCard.vue";
 import { onLoad } from "@dcloudio/uni-app";
+import { ref, reactive } from "vue";
 import ManageApi from "@/api/product/manage";
+import TwistApi from "@/api/product/twist";
+import Draw from "./draw.vue";
 
+const drawFormRef = reactive({
+  visible: false,
+});
+
+// 澶勭悊draw缁勪欢鍏抽棴浜嬩欢
+const handleDrawClose = () => {
+  // 纭繚寮圭獥琚纭叧闂�
+  drawFormRef.visible = false;
+};
 const pagingRef = ref();
 const paramsId = ref();
 const twistFormRef = ref();
 const toast = useToast();
 const dialog = reactive({
   visible: false,
+});
+const drawData = ref({
+  singleRegulationInfoArray: [],
+  steelRegulationInfo: {
+    model: "",
+    twistedDirection: "",
+    outerDiameter: "",
+    scratch: "",
+    oilStain: "",
+  },
+  reelToolingInfo: {
+    nutFixed: "",
+    sidePlateFlat: "",
+    centerPlateFlat: "",
+    paintQuality: "",
+    burrCrack: "",
+    edgeBlunt: "",
+    woodMold: "",
+    weldQuality: "",
+  },
+  wireId: "",
 });
 
 const cardAttr = ref<any[]>([
@@ -87,12 +132,19 @@
   });
 };
 
-const addReport = () => {
+const addReport = async () => {
   dialog.visible = true;
+  // 鎵撳紑鏂板寮圭獥鏃惰嚜鍔ㄦ墽琛�
+  // await showDrawPopup();
 };
 
-const submit = () => {
-  dialog.visible = twistFormRef.value.submit();
+const submit = async () => {
+  const isSuccess = await twistFormRef.value.submit();
+  dialog.visible = !isSuccess; // 濡傛灉鎻愪氦鎴愬姛锛屽叧闂脊绐�
+  if (isSuccess) {
+    // 鎻愪氦鎴愬姛鍚庢墽琛�
+    // showDrawPopup();
+  }
 };
 
 const cancel = () => {
@@ -100,11 +152,55 @@
   dialog.visible = false;
 };
 
-const toCheck = (id: number) => {
+const toAttachment = (item: any) => {
   uni.navigateTo({
-    url: `/pages/production/twist/selfInspect/index?id=${id}`,
+    url: "/pages/production/twist/attachment/index",
+    success: () => {
+      // 椤甸潰璺宠浆鎴愬姛鍚庡彂閫佷簨浠朵紶閫掓暟鎹�
+      uni.$emit("detailData", item);
+    },
   });
 };
+
+const showDrawPopup = async () => {
+  try {
+    const { data } = await TwistApi.querySingleDishInspection({
+      id: paramsId.value,
+    });
+    // 閫傞厤涓嶅悓鐨勬暟鎹粨鏋勮繑鍥炴牸寮�
+    const responseData = data.data || data;
+    if (responseData && responseData.singleWirePrePareInfoVo) {
+      const info = responseData.singleWirePrePareInfoVo;
+      drawData.value = {
+        singleRegulationInfoArray: info.singleRegulationInfoArray || [],
+        steelRegulationInfo: info.steelRegulationInfo || {},
+        reelToolingInfo: info.reelToolingInfo || {},
+        wireId: paramsId.value,
+      };
+      // 鏄剧ずDraw寮圭獥
+      drawFormRef.visible = true;
+      toast.success("璇峰~鍐欓鐢ㄤ俊鎭�!");
+    } else {
+      // toast.error("宸插瓨鍦ㄩ鐢ㄤ俊鎭�,鏃犻渶濉姤!");
+    }
+  } catch (error) {
+    console.error("鑾峰彇棰嗙敤淇℃伅澶辫触:", error);
+    toast.error("鑾峰彇淇℃伅澶辫触锛岃閲嶈瘯");
+  }
+};
+
+const handleSelfCheck = (id: string) => {
+  console.log("鎵ц鑷鎿嶄綔锛孖D:", id);
+  uni.showToast({
+    title: "鑷鍔熻兘寮�鍙戜腑",
+    icon: "none",
+  });
+};
+
+// 淇濈暀鍘熸湁鐨刢onfirm鍑芥暟锛岀敤浜庡叾浠栧湴鏂硅皟鐢�
+// const confirm = async () => {
+//   await showDrawPopup();
+// };
 
 // 鑾峰彇鎷変笣鎶ュ伐鍒楄〃
 const getTwistReportList = async () => {
@@ -117,6 +213,7 @@
 
 onLoad((options: any) => {
   paramsId.value = options.id;
+  showDrawPopup();
 });
 </script>
 

--
Gitblit v1.9.3