From 619b47962e41f506baf7ce2b535b2de1fecc719e Mon Sep 17 00:00:00 2001
From: cuiqian2004 <cuiqian2004@163.com>
Date: 星期四, 19 六月 2025 10:58:49 +0800
Subject: [PATCH] rfid扫描添加原生插件

---
 components/oi-form/list/input/index.vue |   65 ++++++++++++++++++++++++++++----
 1 files changed, 56 insertions(+), 9 deletions(-)

diff --git a/components/oi-form/list/input/index.vue b/components/oi-form/list/input/index.vue
index a0ec6f0..c6b029d 100644
--- a/components/oi-form/list/input/index.vue
+++ b/components/oi-form/list/input/index.vue
@@ -8,7 +8,7 @@
 			@blur="onChange" @confirm="onConfirm" @click="onClick" :disabled="data.disabled" :maxlength="-1"></input>
 		<input v-else class="oi-input" :class="data.disabled?'input-disabled':''"
 			:style="{'padding-left':data.setting.prefix?0 : '8rpx','right':data.setting.suffix?0 : '8rpx'}"
-			v-model="data.value" :focus="focus" :placeholder="data.placeholder" @blur="onChange" @confirm="onConfirm"
+			v-model="data.value" :focus="focus" :placeholder="data.placeholder" @focus="onFocus" @blur="onChange" @confirm="onConfirm"
 			@click="onClick" :disabled="data.disabled"></input>
 		<text v-if="data.setting.suffix&& !viewMode" class="form-input-icon" :class="[data.setting.suffix]"
 			@click="onSuffixButton">&#xe568;</text>
@@ -17,8 +17,12 @@
 </template>
 
 <script>
+	import buttonClickMixin from '@/mixins/button-click.js';
+
 	export default {
+
 		name: "OIFormInput",
+		mixins: [buttonClickMixin],
 		props: {
 			viewMode: {
 				type: Boolean,
@@ -34,26 +38,54 @@
 				default: false
 			},
 		},
+		data() {
+			return {
+				largeMode: getApp().globalData?.largeMode || false,
+			}
+		},
 		methods: {
 			onChange(e) {
-				this.$emit("change", e)
+				this.$emit("on-change", e)
 			},
 			onConfirm(e) {
+				console.log("onConfirm")
 				this.onChange(e)
 			},
 			onClick(e) {
-				this.$emit("click", e)
+				this.$emit("on-click", e)
 			},
 			onFocus(e) {
-				this.$emit("focus", e)
+				// getApp().onScan((result) => {
+				// 	if (!this.viewMode && !this.data.disabled) {
+				// 		if (this.model)
+				// 			this.model[data.fieldId] = result
+				// 		else
+				// 			this.data.value = result
+				// 	}
+				// })
+				this.$emit("on-focus", e)
 			},
 			onPrefixButton() {
-				this.$emit("click-prefix")
+				this.handleButtonClick((done) => {
+					this.$emit("on-click-prefix")
+					setTimeout(() => {
+						done(); // 閲嶇疆鐘舵�
+					}, 1000);
+				});
 			},
 			onSuffixButton() {
-				this.$emit("click-suffix")
+
+				this.handleButtonClick((done) => {
+					this.$emit("on-click-suffix")
+					setTimeout(() => {
+						done(); // 閲嶇疆鐘舵�
+					}, 1000);
+				});
+
+
 			},
-		}
+		},
+
 	};
 </script>
 
@@ -62,10 +94,10 @@
 		border: 1px solid #d5d5d5;
 		border-radius: 6px !important;
 		padding: 3rpx;
-		width: calc(100%- 6rpx);
+		width: calc(100% - 6rpx);
 		display: flex;
 		flex-direction: row;
-		
+
 		.input-disabled {
 			background-color: #f3f3f3 !important;
 		}
@@ -100,4 +132,19 @@
 	.oi-form-input:hover {
 		border: 1px solid rgb(41, 121, 255);
 	}
+
+	.large-mode {
+		.oi-form-input {
+			.oi-input {
+				font-size: 24px;
+				height: 36px;
+			}
+
+			.form-input-icon {
+				font-size: 30px;
+				height: 36px;
+				width: 36px;
+			}
+		}
+	}
 </style>
\ No newline at end of file

--
Gitblit v1.9.1