From 8460eac918d8c8e825a0f78ac0af1c03cad8fd49 Mon Sep 17 00:00:00 2001
From: YLouie <929705085@qq.com>
Date: 星期四, 23 十月 2025 16:53:21 +0800
Subject: [PATCH] 拉丝报工填原材料领用
---
src/pages/production/wire/report/wireForm.vue | 119 +++++++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 95 insertions(+), 24 deletions(-)
diff --git a/src/pages/production/wire/report/wireForm.vue b/src/pages/production/wire/report/wireForm.vue
index b248788..b115229 100644
--- a/src/pages/production/wire/report/wireForm.vue
+++ b/src/pages/production/wire/report/wireForm.vue
@@ -6,9 +6,12 @@
label="棰嗙敤鏉嗗彿"
label-width="100px"
prop="poleNumber"
- clearable
placeholder="璇疯緭鍏ラ鐢ㄦ潌鍙�"
- />
+ >
+ <template #suffix>
+ <wd-icon name="scan" @click="openScan" />
+ </template>
+ </wd-input>
<wd-input
v-model="model.poleWeight"
label="鏉嗛噸"
@@ -18,12 +21,12 @@
placeholder="璇疯緭鍏ユ潌閲�"
/>
<wd-input
- v-model="model.monofilamentNumber"
- label="鍗曚笣鐩樺彿"
+ v-model="model.poleModel"
+ label="鏉嗗瀷鍙�"
label-width="100px"
- prop="monofilamentNumber"
+ prop="poleModel"
clearable
- placeholder="璇疯緭鍏ユ満鍙�"
+ placeholder="璇疯緭鍏ユ潌鍨嬪彿"
/>
<wd-input
v-model="model.model"
@@ -34,31 +37,60 @@
placeholder="璇疯緭鍏ヨ鏍煎瀷鍙�"
/>
<wd-input
- v-model="model.ontLength"
- label="鐩橀暱"
+ v-model="model.oneLength"
+ label="鐩橀暱(m)"
label-width="100px"
- prop="ontLength"
+ prop="oneLength"
clearable
placeholder="璇疯緭鍏ョ洏闀�"
/>
<wd-input
- v-model="model.theoryWeight"
- label="鐞嗚閲嶉噺"
+ v-model="model.polePackageNumber"
label-width="100px"
- prop="theoryWeight"
+ prop="polePackageNumber"
clearable
- placeholder="璇疯緭鍏ョ悊璁洪噸閲�"
- />
+ placeholder="璇疯緭鍏ユ潌鍖呭彿"
+ >
+ <template #label>
+ <span style="color: #f56c6c">鏉嗗寘鍙�</span>
+ </template>
+ </wd-input>
+ <wd-input
+ v-model="model.dishModel"
+ label-width="100px"
+ prop="dishModel"
+ clearable
+ placeholder="璇疯緭鍏ョ洏鍨嬪彿"
+ >
+ <template #label>
+ <span style="color: #f56c6c">鐩樺瀷鍙�</span>
+ </template>
+ </wd-input>
+ <wd-input
+ v-model="model.actuallyLength"
+ label-width="100px"
+ prop="actuallyLength"
+ clearable
+ placeholder="璇疯緭鍏ュ疄闄呴暱搴�"
+ >
+ <template #label>
+ <span style="color: #f56c6c">瀹為檯闀垮害(m)</span>
+ </template>
+ </wd-input>
<wd-input
v-model="model.actuallyWeight"
- label="瀹為檯閲嶉噺"
label-width="100px"
prop="actuallyWeight"
clearable
placeholder="璇疯緭鍏ュ疄闄呴噸閲�"
- />
+ >
+ <template #label>
+ <span style="color: #f56c6c">瀹為檯閲嶉噺(kg)</span>
+ </template>
+ </wd-input>
</wd-cell-group>
<wd-toast />
+ <Scan ref="scanRef" />
</wd-form>
</template>
@@ -66,35 +98,76 @@
import useFormData from "@/hooks/useFormData";
import { useToast } from "wot-design-uni";
import WireApi from "@/api/product/wire";
+import Scan from "@/components/scan/index.vue";
const paramsId = ref();
+const scanRef = ref();
const toast = useToast();
-const { form: model } = useFormData({
+const { form: model, resetForm } = useFormData({
poleNumber: undefined, // 棰嗙敤鏉嗗彿
- poleWeight: undefined, // 瀹㈡埛鍚嶇О
- monofilamentNumber: undefined, // 鍗曚笣鐩樺彿
+ poleWeight: undefined, // 鏉嗛噸
+ poleModel: undefined, // 鏉嗗瀷鍙�
model: undefined, // 瑙勬牸鍨嬪彿
+ polePackageNumber: undefined, // 鏉嗗寘鍙�
+ dishModel: undefined, // 鐩樺瀷鍙�
oneLength: undefined, // 鐩橀暱
- singleDisc: undefined, // 鍗曚笣鐩橀暱
+ actuallyLength: undefined, // 瀹為檯闀垮害
+ actuallyWeight: undefined, // 瀹為檯閲嶉噺
});
const submit = async () => {
+ // 鍦ㄨ皟鐢ˋPI鍓嶅厛淇濆瓨poleNumber鐨勫�硷紝纭繚鎴戜滑鏈夋纭殑鍊�
+ const poleNumberValue = model.poleNumber;
+
const { code } = await WireApi.addWireOutput({
wireId: paramsId.value,
type: "鎷変笣",
...model,
});
+
if (code == 200) {
toast.success("鎻愪氦鎴愬姛");
- return true;
+ // 鍒涘缓杩斿洖缁撴灉瀵硅薄锛屼娇鐢ㄦ彁鍓嶄繚瀛樼殑poleNumber鍊�
+ const result = {
+ success: true,
+ poleNumber: poleNumberValue,
+ };
+ // 鍦ㄨ繑鍥炰箣鍓嶆墽琛宺esetForm()
+ resetForm();
+ // 杩斿洖缁撴灉
+ return result;
} else {
toast.error("鎻愪氦澶辫触");
- return false;
+ return { success: false };
}
+};
+
+const openScan = () => {
+ scanRef.value.triggerScan();
+};
+
+// 鐩戝惉鎵爜
+const getScanCode = (code: any) => {
+ console.log("鑷畾涔夋壂鎻忕殑缁撴灉鍥炶皟鍑芥暟:", code.code);
+ // console.log("鑷畾涔夋壂鎻忕殑缁撴灉鍥炶皟鍑芥暟", JSON.parse(code));
+ const arr = code.code.split(",");
+ model.poleNumber = arr[3]; // 棰嗙敤鏉嗗彿
+ model.poleWeight = arr[4]; // 鏉嗛噸
+ model.poleModel = arr[2]; // 鏉嗗瀷鍙�
};
onLoad((options: any) => {
paramsId.value = options.id;
+ model.model = options.model;
+ console.log("options", options);
+ model.oneLength = options.oneLength;
+ // 寮�鍚箍鎾洃鍚簨浠�
+ uni.$on("scan", getScanCode);
+});
+
+onUnload(() => {
+ // 寮�鍚箍鎾洃鍚簨浠�
+ uni.$off("scan", getScanCode);
});
defineExpose({
@@ -103,8 +176,6 @@
</script>
<style lang="scss" scoped>
-.form_box {
-}
.submit_btn {
position: absolute;
bottom: 0;
--
Gitblit v1.9.3