From d19c31e7fd2226d1ac8030758ea933c2c4deaa74 Mon Sep 17 00:00:00 2001
From: xueyinfei <1207092115@qq.com>
Date: Mon, 25 Aug 2025 09:27:50 +0800
Subject: [PATCH] =?UTF-8?q?=E5=85=83=E6=95=B0=E6=8D=AE=E6=A0=87=E7=AD=BE?=
=?UTF-8?q?=E8=AE=A1=E7=AE=97=E9=85=8D=E7=BD=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../views/metadataConfig/metaclas/index.vue | 60 +++++++++++++------
1 file changed, 43 insertions(+), 17 deletions(-)
diff --git a/vue-fastapi-frontend/src/views/metadataConfig/metaclas/index.vue b/vue-fastapi-frontend/src/views/metadataConfig/metaclas/index.vue
index 3c77d6e..5ca7d15 100644
--- a/vue-fastapi-frontend/src/views/metadataConfig/metaclas/index.vue
+++ b/vue-fastapi-frontend/src/views/metadataConfig/metaclas/index.vue
@@ -87,7 +87,12 @@
-
+
@@ -95,7 +100,6 @@
保存
-
@@ -105,7 +109,12 @@
-
+
@@ -125,7 +134,12 @@
-
+
@@ -185,16 +199,16 @@ const clasFormRef1 = ref(null); // 值类型 formRef
const clasFormRef2 = ref(null); // 业务类型 formRef
const clasFormRef3 = ref(null); // 字段处理类型 formRef
-const form1 = reactive({
+const form1 = ref({
datatype: "",
ratio: null,
});
-const form2 = reactive({
+const form2 = ref({
regexName: "",
regexPattern: "",
ratio: null,
});
-const form3 = reactive({
+const form3 = ref({
opType: "",
colType: "",
colAttr: "",
@@ -222,7 +236,20 @@ const rules3 = {
const selectedRows1 = ref([]);
const selectedRows2 = ref([]);
const selectedRows3 = ref([]);
+const formatNumber = (value) => {
+ if (!value) return value;
+ value = value.replace(/[^\d.-]/g, ''); // 移除非数字、非小数点、非负号
+ value = value.replace(/^\./, '0.'); // 以.开头转为0.
+ value = value.replace(/^\-/, '-0'); // 以-开头转为-0(可选)
+ value = value.replace(/(\.\d{2})\d+/, '$1'); // 限制小数点后两位
+ value = value.replace(/^(-?\d+)-/, '$1'); // 防止中间出现负号
+ value = value.replace(/^(-?\d+)\.(\d*)\.*/, '$1.$2'); // 防止多个小数点
+ return value;
+};
+const parseNumber = (value) => {
+ return formatNumber(value);
+};
function handleSelectionChange1(val) {
selectedRows1.value = val;
}
@@ -232,7 +259,6 @@ function handleSelectionChange2(val) {
function handleSelectionChange3(val) {
selectedRows3.value = val;
}
-
async function getList1() {
loading.value = true;
try {
@@ -286,7 +312,7 @@ function handleSearch() {
// ===== 值类型弹窗处理 =====
function openAddDialog1() {
title.value = "新增值类型参数";
- Object.assign(form1, { datatype: "", ratio: null });
+ Object.assign(form1.value, { datatype: "", ratio: null });
open1.value = true;
}
function openEditDialog1(row) {
@@ -295,14 +321,14 @@ function openEditDialog1(row) {
return;
}
title.value = "编辑值类型参数";
- Object.assign(form1, row);
+ Object.assign(form1.value, row);
open1.value = true;
}
function submitForm1() {
clasFormRef1.value.validate(async (valid) => {
if (!valid) return;
- const submitData = { ...form1,ssysId:queryForm.ssysId,mdlName:queryForm.mdlName };
+ const submitData = { ...form1.value,ssysId:queryForm.ssysId,mdlName:queryForm.mdlName };
try {
if (title.value.includes("新增")) {
await addDatatypeLabel(submitData);
@@ -348,7 +374,7 @@ function handleClose1(done) {
// ===== 业务类型弹窗处理 =====
function openAddDialog2() {
title.value = "新增业务类型参数";
- Object.assign(form2, {
+ Object.assign(form2.value, {
regexName: "",
regexPattern: "",
ratio: null,
@@ -357,7 +383,7 @@ function openAddDialog2() {
}
function openAddDialog3() {
title.value = "新增字段处理类型参数";
- Object.assign(form3, {
+ Object.assign(form3.value, {
opType: "",
colType: "",
colAttr: "",
@@ -374,7 +400,7 @@ function openEditDialog2(row) {
return;
}
title.value = "编辑业务类型参数";
- Object.assign(form2, row);
+ Object.assign(form2.value, row);
open2.value = true;
}
@@ -384,14 +410,14 @@ function openEditDialog3(row) {
return;
}
title.value = "编辑字段处理类型参数";
- Object.assign(form3, row);
+ Object.assign(form3.value, row);
open3.value = true;
}
function submitForm2() {
clasFormRef2.value.validate(async (valid) => {
if (!valid) return;
- const submitData = { ...form2,ssysId:queryForm.ssysId,mdlName:queryForm.mdlName};
+ const submitData = { ...form2.value,ssysId:queryForm.ssysId,mdlName:queryForm.mdlName};
try {
if (title.value.includes("新增")) {
await addBusiLabel(submitData);
@@ -410,7 +436,7 @@ function submitForm2() {
function submitForm3() {
clasFormRef3.value.validate(async (valid) => {
if (!valid) return;
- const submitData = { ...form3};
+ const submitData = { ...form3.value};
try {
if (title.value.includes("新增")) {
await addDataopLabel(submitData);