From c9794cb70b42aa8b7c3b264bca585fe69b56c911 Mon Sep 17 00:00:00 2001 From: LiLongLong <13717757313@163.com> Date: Fri, 27 Jun 2025 20:25:45 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/images/wifi-conn.svg | 1 + src/assets/images/wifi-unconn.svg | 1 + src/assets/styles/common.scss | 1 + src/components/common/BTButton/index.vue | 5 + .../common/CascadingSelectModal/index.vue | 17 +- src/components/common/SoftKeyboard/index.vue | 48 ++- .../common/SoftKeyboard/moveKeyboard.vue | 354 +++++++++++++++++++++ src/components/formula/FormulaConfig.vue | 246 ++++++++------ src/components/formula/FormulaTable.vue | 4 +- src/components/home/HomeFormula.vue | 5 +- src/components/home/HomeLogLevel.vue | 3 +- src/components/home/HomeOperation.vue | 2 + src/components/home/HomeSetting.vue | 9 +- src/components/home/config.vue | 6 + src/components/setting/AddUser.vue | 24 +- src/components/setting/History.vue | 1 - src/components/setting/HistoryDetail.vue | 1 + src/components/setting/User.vue | 71 +++-- src/components/system/NetReconnection.vue | 1 - src/layouts/default.vue | 19 +- src/main.ts | 4 +- src/router/index.ts | 5 +- src/stores/deviceStore.ts | 19 ++ src/stores/formulaStore.ts | 13 + src/stores/homeStore.ts | 9 +- src/stores/systemStore.ts | 1 + src/types/user.d.ts | 6 + src/views/audit/index.vue | 58 ++-- src/views/formula/index.vue | 15 +- src/views/home/chart.vue | 2 +- src/views/liquid/index.vue | 32 +- src/views/login/index.vue | 15 + src/views/seal/index.vue | 22 +- 33 files changed, 810 insertions(+), 210 deletions(-) create mode 100644 src/assets/images/wifi-conn.svg create mode 100644 src/assets/images/wifi-unconn.svg create mode 100644 src/components/common/SoftKeyboard/moveKeyboard.vue diff --git a/src/assets/images/wifi-conn.svg b/src/assets/images/wifi-conn.svg new file mode 100644 index 0000000..93a5d22 --- /dev/null +++ b/src/assets/images/wifi-conn.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/images/wifi-unconn.svg b/src/assets/images/wifi-unconn.svg new file mode 100644 index 0000000..175e5da --- /dev/null +++ b/src/assets/images/wifi-unconn.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/styles/common.scss b/src/assets/styles/common.scss index d5fa3df..3e0fb16 100644 --- a/src/assets/styles/common.scss +++ b/src/assets/styles/common.scss @@ -6,6 +6,7 @@ html { } html, body { overflow: hidden; + user-select: none; } html, body, diff --git a/src/components/common/BTButton/index.vue b/src/components/common/BTButton/index.vue index 0dd4c16..ebedd53 100644 --- a/src/components/common/BTButton/index.vue +++ b/src/components/common/BTButton/index.vue @@ -67,6 +67,10 @@ const props = defineProps({ type: String, default: '.714vw 1.339vw', }, + minHeight: { + type: String, + default: '', + }, }) const emits = defineEmits(['click']) @@ -95,6 +99,7 @@ const handleClick = (event: MouseEvent) => { borderRadius, fontSize: textSize, padding, + minHeight, }" @click="handleClick" > diff --git a/src/components/common/CascadingSelectModal/index.vue b/src/components/common/CascadingSelectModal/index.vue index d54ac65..da73bf3 100644 --- a/src/components/common/CascadingSelectModal/index.vue +++ b/src/components/common/CascadingSelectModal/index.vue @@ -1,4 +1,5 @@ @@ -123,7 +128,7 @@ watchEffect(() => { diff --git a/src/components/common/SoftKeyboard/index.vue b/src/components/common/SoftKeyboard/index.vue index 2091c71..27875f1 100644 --- a/src/components/common/SoftKeyboard/index.vue +++ b/src/components/common/SoftKeyboard/index.vue @@ -1,6 +1,7 @@ + + + + diff --git a/src/components/formula/FormulaConfig.vue b/src/components/formula/FormulaConfig.vue index bdbdd6c..b6aacf6 100644 --- a/src/components/formula/FormulaConfig.vue +++ b/src/components/formula/FormulaConfig.vue @@ -20,8 +20,13 @@ const props = defineProps<{ type: string }>() +const nameLength = 10 + const formulaStore = useFormulaStore() +const targetInputRef = ref(null) + +const isFlip = ref(true) /** * 当前表单数据 * 不同模式下有不同的初始值: @@ -123,7 +128,8 @@ watchEffect(() => { else { formData.value = cloneDeep(formulaStore.currentSelectedFormulaInfo) || cloneDeep(formulaStore.defaultFormulaInfo) } - // 后端给的数据类型是字符串型,前端需要的是int型,后端开发说后端不好转换,由前端进行转换 + isFlip.value = formulaStore.flip + // 后端给的数据类型是字符串型,前端需要的是int型,后端开发说(赵贺)后端不好转换,由前端进行转换. formData.value = convertValuesToInt(formData.value) }) @@ -132,18 +138,29 @@ watchEffect(() => { * @param {string | number} newVal - 新的输入值 */ watch(inputValue, (newVal: string | number) => { + console.log('inputValue-----------', inputValue) if (focusedInput.value) { if (focusedInput.value !== 'name') { newVal = Number(newVal) + if (currentFormulaItem.value && newVal > currentFormulaItem.value.val_upper_limit) { + newVal = currentFormulaItem.value.val_upper_limit + } + formData.value[focusedInput.value] = newVal } - console.log('currentFormulaItem.value--', currentFormulaItem.value) - if (currentFormulaItem.value && newVal > currentFormulaItem.value.val_upper_limit) { - newVal = currentFormulaItem.value.val_upper_limit + else { + if (formData.value.name && formData.value.name.length > nameLength) { + inputValue.value = formData.value.name + } } - formData.value[focusedInput.value] = newVal } }) +// watch(formData, (newVal) => { +// if (newVal && newVal.length > nameLength) { +// formData.value.name = newVal.name.slice(0, nameLength) +// } +// }, { deep: true }) + /** * 获取当前表单数据,将值转换为字符串格式 * @returns {Record} 转换后的表单数据 @@ -287,6 +304,9 @@ const openKeyboard = (e: any, item: Formula.FormulaItem) => { inputValue.value = formValue.toString() focusedInput.value = e.target.name currentFormulaItem.value = item + + const inputDom = e.target as HTMLInputElement + targetInputRef.value = inputDom }, 100) } @@ -343,95 +363,105 @@ const openKeyboardType = (labelName: string) => { diff --git a/src/components/formula/FormulaTable.vue b/src/components/formula/FormulaTable.vue index a514d38..841fc3c 100644 --- a/src/components/formula/FormulaTable.vue +++ b/src/components/formula/FormulaTable.vue @@ -17,9 +17,7 @@ onMounted(() => { }) watchEffect(() => { - if (formulaStore.formulaList && formulaStore.formulaList.length) { - recipes.value = formulaStore.formulaList as Formula.FormulaItem[] - } + recipes.value = formulaStore.formulaList as Formula.FormulaItem[] }) const initFormulaList = () => { diff --git a/src/components/home/HomeFormula.vue b/src/components/home/HomeFormula.vue index 416db52..f757fbd 100644 --- a/src/components/home/HomeFormula.vue +++ b/src/components/home/HomeFormula.vue @@ -31,13 +31,14 @@ watchEffect(() => { .home-right-title{ display: grid; grid-template-columns: 1fr 1fr; + font-size: 1.5rem; .title-formula{ display: flex; justify-self: start; align-items: center; gap: 5px; padding: 10px; - font-size: 16px; + font-size: 1.5rem; } .title-spend{ justify-self: end; @@ -45,7 +46,7 @@ watchEffect(() => { align-items: center; gap: 5px; padding: 10px; - font-size: 16px; + font-size: 1.5rem; } } diff --git a/src/components/home/HomeLogLevel.vue b/src/components/home/HomeLogLevel.vue index 7b36751..b775321 100644 --- a/src/components/home/HomeLogLevel.vue +++ b/src/components/home/HomeLogLevel.vue @@ -37,6 +37,7 @@ const handleCancel = () => { class="input" placeholder="请选择" style="height: 4rem" + readonly @focus="openModal" >