From aca7aa9ce32acc4c8795342f945b027d3bc9f62a Mon Sep 17 00:00:00 2001 From: 曹睿 <360930172@qq.com> Date: 星期二, 10 六月 2025 17:37:34 +0800 Subject: [PATCH] feat: 添加时效报工,修复扫码内存泄漏 --- src/pages/production/twist/receive/monofil.vue | 66 +++++++++++++++++++++----------- 1 files changed, 43 insertions(+), 23 deletions(-) diff --git a/src/pages/production/twist/receive/monofil.vue b/src/pages/production/twist/receive/monofil.vue index b7c31b8..9f3fb11 100644 --- a/src/pages/production/twist/receive/monofil.vue +++ b/src/pages/production/twist/receive/monofil.vue @@ -14,28 +14,29 @@ </template> </CardTitle> </template> - <MonofilCard v-for="(item, index) in cardList" v-model:value="item" :key="index" /> + <MonofilCard v-for="(item, index) in cardList" :key="index" :data="item" /> <template #bottom> <view class="flex justify-center items-center"> - <wd-button block> - <text class="text-[#fff]" @click="save">淇濆瓨</text> + <wd-button block @click="save"> + <text class="text-[#fff]">淇濆瓨</text> </wd-button> </view> </template> </z-paging> + <Scan ref="scanRef" emitName="scanMono" /> + <wd-toast /> </view> - <Scan ref="scanRef" /> </template> <script setup lang="ts"> import CardTitle from "@/components/card-title/index.vue"; import MonofilCard from "../components/MonofilCard.vue"; -import { onLoad, onUnload, onShow, onHide } from "@dcloudio/uni-app"; +import { useToast } from "wot-design-uni"; +import { onLoad, onUnload } from "@dcloudio/uni-app"; import Scan from "@/components/scan/index.vue"; import ManageApi from "@/api/product/manage"; import TwistApi from "@/api/product/twist"; import zPaging from "@/components/z-paging/z-paging.vue"; -import { useMessage } from "wot-design-uni"; // import { useZebraScan } from "@/hooks/useZebraScan"; // const { init, start, stop, triggerScan } = useZebraScan(); @@ -43,22 +44,37 @@ const pagingRef = ref(); const scanRef = ref(); const cardList = ref<any[]>([]); -const message = useMessage(); +const toast = useToast(); const getScanCode = async (code: any) => { console.log("鑷畾涔夋壂鎻忕殑缁撴灉鍥炶皟鍑芥暟:", code); // let parseData = code.trim(); - let codeArr = code.code.split(","); - console.log("sb:", codeArr); + console.log("code:===========", JSON.parse(code.code)); + console.log("id:=============", JSON.parse(code.code).id); const { data } = await TwistApi.getScarn({ - outPutId: codeArr[1], + outPutId: JSON.parse(code.code).id, }); - // console.log("鍗曚笣缂栧彿", data); - // message.alert({ - // title: "鍗曚笣缂栧彿", - // msg: JSON.stringify(data), - // }); - pagingRef.value.complete([data]); + const exists = cardList.value.some((item) => item.monofilamentNumber === data.monofilamentNumber); + if (!exists) { + const { id, outPutId, wireId, oneLength, ...rest } = data; + console.log("sb", { + wireId: paramsId.value, + outputId: id, + amount: oneLength, + ongLength: oneLength, + ...rest, + }); + cardList.value.push({ + wireId: paramsId.value, + outputId: id, + amount: oneLength, + ongLength: oneLength, + ...rest, + }); + pagingRef.value.complete(cardList.value); + } else { + toast.error("璇ュ崟涓濆凡棰嗙敤锛岃鍕块噸澶嶆壂鐮�"); + } }; const openScan = () => { @@ -75,21 +91,25 @@ } }; -const save = () => {}; +const save = async () => { + const { code } = await TwistApi.addStrandedWireDish(cardList.value); + if (code == 200) { + toast.success("淇濆瓨鎴愬姛"); + pagingRef.value.refresh(); + } else { + toast.error("淇濆瓨澶辫触"); + } +}; onLoad((options: any) => { // 寮�鍚箍鎾洃鍚簨浠� - uni.$on("scan", getScanCode); + uni.$on("scanMono", getScanCode); paramsId.value = options.id; }); onUnload(() => { // 寮�鍚箍鎾洃鍚簨浠� - uni.$off("scan", getScanCode); + uni.$off("scanMono", getScanCode); }); - -onShow(() => {}); - -onHide(() => {}); </script> <style lang="scss" scoped> -- Gitblit v1.9.3