From 61fc2ef49c5f369c2db6eb3aad5a98c0ebe3fcbc Mon Sep 17 00:00:00 2001
From: YLouie <929705085@qq.com>
Date: 星期二, 21 十月 2025 15:11:51 +0800
Subject: [PATCH] 绞线报工完填写领用数据
---
src/pages/production/twist/report/index.vue | 131 +++++++++++++++++++++++++++++++++++--------
1 files changed, 107 insertions(+), 24 deletions(-)
diff --git a/src/pages/production/twist/report/index.vue b/src/pages/production/twist/report/index.vue
index 9c6b5c0..f63f742 100644
--- a/src/pages/production/twist/report/index.vue
+++ b/src/pages/production/twist/report/index.vue
@@ -1,23 +1,26 @@
<template>
- <view class="page pt-2">
- <z-paging ref="pagingRef" v-model="twistReportList" class="list" @query="getTwistReportList">
+ <view class="list">
+ <z-paging ref="pagingRef" v-model="twistReportList" :fixed="false" @query="getTwistReportList">
<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>
<wd-icon name="user" color="#0D867F"></wd-icon>
<text class="text-[#0D867F] ml-2 font-medium">鐢熶骇浜�</text>
- <text class="text-[#333333] ml-2">鏂瑰厗鐜�</text>
+ <text class="text-[#333333] ml-2">{{ item.productUser }}</text>
</view>
<view class="text-[#A8A8A8]" @click="toEdit">缂栬緫</view>
</view>
</template>
<ProductionCard :data="cardAttr" :value="item" />
<template #footer>
- <wd-button size="small" plain @click="toCheck">鑷</wd-button>
+ <wd-button size="small" plain style="margin-right: 10px" @click="toAttachment(item)">
+ 闄勪欢
+ </wd-button>
+ <wd-button size="small" plain @click="toCheck(item.id)">鑷</wd-button>
</template>
</wd-card>
</z-paging>
@@ -27,7 +30,16 @@
<wd-button type="text" @click="cancel">鍙栨秷</wd-button>
<wd-button type="text" @click="submit">纭畾</wd-button>
</view>
- <TwistForm />
+ <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-array="drawData.steelRegulationInfoArray"
+ :reel-tooling-info="drawData.reelToolingInfo"
+ :wire-id="drawData.wireId"
+ @close="handleDrawClose"
+ />
</wd-popup>
<wd-toast />
</view>
@@ -38,13 +50,33 @@
import { useToast } from "wot-design-uni";
import ProductionCard from "../../components/ProductionCard.vue";
import { onLoad } from "@dcloudio/uni-app";
+import { ref } 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;
+ console.log('Draw popup closed');
+};
const pagingRef = ref();
const paramsId = ref();
+const twistFormRef = ref();
const toast = useToast();
const dialog = reactive({
visible: false,
+});
+const drawData = ref({
+ singleRegulationInfoArray: [],
+ steelRegulationInfoArray: [],
+ reelToolingInfo: {},
+ wireId: "",
});
const cardAttr = ref<any[]>([
@@ -61,20 +93,20 @@
prop: "monofilamentNumber",
},
{
- label: "瑙勬牸鍨嬪彿",
- prop: "model",
+ label: "瀹為檯閲嶉噺(kg)",
+ prop: "actuallyWeight",
},
{
label: "鐩橀暱(m)",
- prop: "ontLength",
+ prop: "oneLength",
},
{
label: "鐞嗚閲嶉噺(kg)",
prop: "theoryWeight",
},
{
- label: "瀹為檯閲嶉噺(kg)",
- prop: "actuallyWeight",
+ label: "瑙勬牸鍨嬪彿",
+ prop: "model",
},
]);
@@ -90,9 +122,13 @@
dialog.visible = true;
};
-const submit = () => {
- toast.show("鎻愪氦");
- dialog.visible = false;
+const submit = async () => {
+ const isSuccess = await twistFormRef.value.submit();
+ dialog.visible = !isSuccess; // 濡傛灉鎻愪氦鎴愬姛锛屽叧闂脊绐�
+ if (isSuccess) {
+ // 鎻愪氦鎴愬姛鍚庢墽琛�
+ showDrawPopup();
+ }
};
const cancel = () => {
@@ -100,11 +136,60 @@
dialog.visible = false;
};
-const toCheck = () => {
+const toAttachment = (item: any) => {
uni.navigateTo({
- url: "/pages/production/twist/selfInspect/index",
+ url: "/pages/production/twist/attachment/index",
+ success: () => {
+ // 椤甸潰璺宠浆鎴愬姛鍚庡彂閫佷簨浠朵紶閫掓暟鎹�
+ uni.$emit("detailData", item);
+ },
});
};
+
+const showDrawPopup = async () => {
+ try {
+ const { data } = await TwistApi.querySingleDishInspection({
+ id: paramsId.value,
+ });
+ console.log("棰嗙敤淇℃伅鏁版嵁:", data);
+ // 閫傞厤涓嶅悓鐨勬暟鎹粨鏋勮繑鍥炴牸寮�
+ const responseData = data.data || data;
+ if (responseData && responseData.singleWirePrePareInfoVo) {
+ const info = responseData.singleWirePrePareInfoVo;
+ drawData.value = {
+ singleRegulationInfoArray: info.singleRegulationInfoArray || [],
+ steelRegulationInfoArray: info.steelRegulationInfoArray || [],
+ reelToolingInfo: info.reelToolingInfo || {},
+ wireId: paramsId.value,
+ };
+ // 鏄剧ずDraw寮圭獥
+ drawFormRef.visible = true;
+ toast.success("璇峰~鍐欓鐢ㄤ俊鎭�!");
+ } else {
+ toast.error("宸插瓨鍦ㄩ鐢ㄤ俊鎭�,鏃犻渶濉姤!");
+ }
+ } catch (error) {
+ console.error("鑾峰彇棰嗙敤淇℃伅澶辫触:", error);
+ toast.error("鑾峰彇淇℃伅澶辫触锛岃閲嶈瘯");
+ }
+};
+
+const closeDrawPopup = () => {
+ drawDialogVisible.value = false;
+};
+
+const handleSelfCheck = (id: string) => {
+ console.log("鎵ц鑷鎿嶄綔锛孖D:", id);
+ uni.showToast({
+ title: "鑷鍔熻兘寮�鍙戜腑",
+ icon: "none",
+ });
+};
+
+// 淇濈暀鍘熸湁鐨刢onfirm鍑芥暟锛岀敤浜庡叾浠栧湴鏂硅皟鐢�
+// const confirm = async () => {
+// await showDrawPopup();
+// };
// 鑾峰彇鎷変笣鎶ュ伐鍒楄〃
const getTwistReportList = async () => {
@@ -121,16 +206,14 @@
</script>
<style lang="scss" scoped>
-.page {
+.list {
+ height: calc(100vh - 80px);
+ padding: 12px;
background: #f3f9f8;
- .list {
- margin: 12px;
-
- :deep() {
- .round {
- border-radius: 4px;
- }
+ :deep() {
+ .round {
+ border-radius: 4px;
}
}
}
--
Gitblit v1.9.3