Browse Source

元数据标签计算配置

master
xueyinfei 2 weeks ago
parent
commit
d19c31e7fd
  1. 60
      vue-fastapi-frontend/src/views/metadataConfig/metaclas/index.vue

60
vue-fastapi-frontend/src/views/metadataConfig/metaclas/index.vue

@ -87,7 +87,12 @@
<el-input v-model="form1.datatype" autocomplete="off" /> <el-input v-model="form1.datatype" autocomplete="off" />
</el-form-item> </el-form-item>
<el-form-item label="阈值" prop="ratio"> <el-form-item label="阈值" prop="ratio">
<el-input v-model.number="form1.ratio" autocomplete="off" /> <el-input
v-model="form1.ratio"
:formatter="formatNumber"
:parser="parseNumber"
placeholder="只能输入数字"
></el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
<template #footer> <template #footer>
@ -95,7 +100,6 @@
<el-button type="primary" @click="submitForm1">保存</el-button> <el-button type="primary" @click="submitForm1">保存</el-button>
</template> </template>
</el-dialog> </el-dialog>
<el-dialog :title="title" v-model="open2" width="500px" append-to-body :before-close="handleClose2"> <el-dialog :title="title" v-model="open2" width="500px" append-to-body :before-close="handleClose2">
<el-form ref="clasFormRef2" :model="form2" :rules="rules2" label-width="120px" size="small"> <el-form ref="clasFormRef2" :model="form2" :rules="rules2" label-width="120px" size="small">
<el-form-item label="业务类型" prop="regexName"> <el-form-item label="业务类型" prop="regexName">
@ -105,7 +109,12 @@
<el-input v-model="form2.regexPattern" autocomplete="off" /> <el-input v-model="form2.regexPattern" autocomplete="off" />
</el-form-item> </el-form-item>
<el-form-item label="阈值" prop="ratio"> <el-form-item label="阈值" prop="ratio">
<el-input v-model.number="form2.ratio" autocomplete="off" /> <el-input
v-model="form2.ratio"
:formatter="formatNumber"
:parser="parseNumber"
placeholder="只能输入数字"
></el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
<template #footer> <template #footer>
@ -125,7 +134,12 @@
<el-input v-model="form3.colAttr" autocomplete="off" /> <el-input v-model="form3.colAttr" autocomplete="off" />
</el-form-item> </el-form-item>
<el-form-item label="阈值" prop="ratio"> <el-form-item label="阈值" prop="ratio">
<el-input v-model.number="form3.ratio" autocomplete="off" /> <el-input
v-model="form3.ratio"
:formatter="formatNumber"
:parser="parseNumber"
placeholder="只能输入数字"
></el-input>
</el-form-item> </el-form-item>
<el-form-item label="所属系统" prop="ssysId"> <el-form-item label="所属系统" prop="ssysId">
<el-select v-model="form3.ssysId" placeholder="请选择系统" clearable allow-create filterable style="width: 350px"> <el-select v-model="form3.ssysId" placeholder="请选择系统" clearable allow-create filterable style="width: 350px">
@ -185,16 +199,16 @@ const clasFormRef1 = ref(null); // 值类型 formRef
const clasFormRef2 = ref(null); // formRef const clasFormRef2 = ref(null); // formRef
const clasFormRef3 = ref(null); // formRef const clasFormRef3 = ref(null); // formRef
const form1 = reactive({ const form1 = ref({
datatype: "", datatype: "",
ratio: null, ratio: null,
}); });
const form2 = reactive({ const form2 = ref({
regexName: "", regexName: "",
regexPattern: "", regexPattern: "",
ratio: null, ratio: null,
}); });
const form3 = reactive({ const form3 = ref({
opType: "", opType: "",
colType: "", colType: "",
colAttr: "", colAttr: "",
@ -222,7 +236,20 @@ const rules3 = {
const selectedRows1 = ref([]); const selectedRows1 = ref([]);
const selectedRows2 = ref([]); const selectedRows2 = ref([]);
const selectedRows3 = 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) { function handleSelectionChange1(val) {
selectedRows1.value = val; selectedRows1.value = val;
} }
@ -232,7 +259,6 @@ function handleSelectionChange2(val) {
function handleSelectionChange3(val) { function handleSelectionChange3(val) {
selectedRows3.value = val; selectedRows3.value = val;
} }
async function getList1() { async function getList1() {
loading.value = true; loading.value = true;
try { try {
@ -286,7 +312,7 @@ function handleSearch() {
// ===== ===== // ===== =====
function openAddDialog1() { function openAddDialog1() {
title.value = "新增值类型参数"; title.value = "新增值类型参数";
Object.assign(form1, { datatype: "", ratio: null }); Object.assign(form1.value, { datatype: "", ratio: null });
open1.value = true; open1.value = true;
} }
function openEditDialog1(row) { function openEditDialog1(row) {
@ -295,14 +321,14 @@ function openEditDialog1(row) {
return; return;
} }
title.value = "编辑值类型参数"; title.value = "编辑值类型参数";
Object.assign(form1, row); Object.assign(form1.value, row);
open1.value = true; open1.value = true;
} }
function submitForm1() { function submitForm1() {
clasFormRef1.value.validate(async (valid) => { clasFormRef1.value.validate(async (valid) => {
if (!valid) return; if (!valid) return;
const submitData = { ...form1,ssysId:queryForm.ssysId,mdlName:queryForm.mdlName }; const submitData = { ...form1.value,ssysId:queryForm.ssysId,mdlName:queryForm.mdlName };
try { try {
if (title.value.includes("新增")) { if (title.value.includes("新增")) {
await addDatatypeLabel(submitData); await addDatatypeLabel(submitData);
@ -348,7 +374,7 @@ function handleClose1(done) {
// ===== ===== // ===== =====
function openAddDialog2() { function openAddDialog2() {
title.value = "新增业务类型参数"; title.value = "新增业务类型参数";
Object.assign(form2, { Object.assign(form2.value, {
regexName: "", regexName: "",
regexPattern: "", regexPattern: "",
ratio: null, ratio: null,
@ -357,7 +383,7 @@ function openAddDialog2() {
} }
function openAddDialog3() { function openAddDialog3() {
title.value = "新增字段处理类型参数"; title.value = "新增字段处理类型参数";
Object.assign(form3, { Object.assign(form3.value, {
opType: "", opType: "",
colType: "", colType: "",
colAttr: "", colAttr: "",
@ -374,7 +400,7 @@ function openEditDialog2(row) {
return; return;
} }
title.value = "编辑业务类型参数"; title.value = "编辑业务类型参数";
Object.assign(form2, row); Object.assign(form2.value, row);
open2.value = true; open2.value = true;
} }
@ -384,14 +410,14 @@ function openEditDialog3(row) {
return; return;
} }
title.value = "编辑字段处理类型参数"; title.value = "编辑字段处理类型参数";
Object.assign(form3, row); Object.assign(form3.value, row);
open3.value = true; open3.value = true;
} }
function submitForm2() { function submitForm2() {
clasFormRef2.value.validate(async (valid) => { clasFormRef2.value.validate(async (valid) => {
if (!valid) return; if (!valid) return;
const submitData = { ...form2,ssysId:queryForm.ssysId,mdlName:queryForm.mdlName}; const submitData = { ...form2.value,ssysId:queryForm.ssysId,mdlName:queryForm.mdlName};
try { try {
if (title.value.includes("新增")) { if (title.value.includes("新增")) {
await addBusiLabel(submitData); await addBusiLabel(submitData);
@ -410,7 +436,7 @@ function submitForm2() {
function submitForm3() { function submitForm3() {
clasFormRef3.value.validate(async (valid) => { clasFormRef3.value.validate(async (valid) => {
if (!valid) return; if (!valid) return;
const submitData = { ...form3}; const submitData = { ...form3.value};
try { try {
if (title.value.includes("新增")) { if (title.value.includes("新增")) {
await addDataopLabel(submitData); await addDataopLabel(submitData);

Loading…
Cancel
Save