From cdf02470da825ae5b8f234f361416fd0e159544b Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期四, 09 十一月 2023 10:03:34 +0800
Subject: [PATCH] 标准枚举
---
Source/UBCS-WEB/src/components/code-dialog-page/maxSerialnumDialog.vue | 80 +++++++++++++++++++++++++++++++++++----
1 files changed, 71 insertions(+), 9 deletions(-)
diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/maxSerialnumDialog.vue b/Source/UBCS-WEB/src/components/code-dialog-page/maxSerialnumDialog.vue
index 155d24a..e12a0bb 100644
--- a/Source/UBCS-WEB/src/components/code-dialog-page/maxSerialnumDialog.vue
+++ b/Source/UBCS-WEB/src/components/code-dialog-page/maxSerialnumDialog.vue
@@ -1,8 +1,8 @@
<template>
<el-dialog title="鏈�澶ф祦姘村彿" width="30%" append-to-body="true" class="avue-dialog avue-dialog--top" top="-3%" :visible.sync="dialogVisible">
- <el-form :label-position="right" ref="ruleForm" label-width="80px" :model="formModel" :rules="rules">
+ <el-form :label-position="right" ref="ruleForm" label-width="80px" :model="formModel" :rules="rules" v-loading="loading">
<el-form-item label="娴佹按鍙�" prop="maxSecNum">
- <el-input v-model="formModel.maxSecNum"></el-input>
+ <el-input v-model="formModel.maxSecNum" @blur="handleBlur"></el-input>
</el-form-item>
</el-form>
<el-tabs v-model="activeName" type="border-card" @tab-click="handleClick">
@@ -20,7 +20,7 @@
</template>
<script>
import FormTemplate from "@/components/FormTemplate/FormTemplate";
-import { getCodePrice, saveMaxSerialNum } from "@/api/code/maxSerialNum.js"
+import { getCodePrice, saveMaxSerialNum, getMaxSerialNumber } from "@/api/code/maxSerialNum.js"
export default {
name: 'maxSerialnumDialog',
components: {
@@ -52,10 +52,15 @@
},
immediate: true,
deep: true
- }
+ },
+ },
+ mounted() {
},
data() {
return {
+ loading:false,
+ maxNum:Number,
+ ruleFormFlag:Boolean,
dialogVisible: this.visible,
activeName: 'codePrice',
confirmLoadding: false,
@@ -68,7 +73,17 @@
},
rules: {
maxSecNum: [
- { required: true, message: '璇疯緭鍏ユ祦姘村彿', trigger: 'blur' }
+ { required: true, message: '璇疯緭鍏ユ祦姘村彿', trigger: 'blur' },
+ {
+ validator: (rule, value, callback) => {
+ if (value > this.maxNum) {
+ callback(new Error('涓嶈兘澶т簬鏈�澶ф祦姘村彿'));
+ } else {
+ callback();
+ }
+ },
+ trigger: 'blur'
+ }
],
},
selfColumnType: {
@@ -110,6 +125,10 @@
}
},
methods: {
+ //娓呴櫎姝e垯
+ handleBlur() {
+ this.$refs.ruleForm.clearValidate('maxSecNum');
+ },
// 鑾峰彇鐮佹
async apiGetCode() {
this.activeName = "codeApply";
@@ -142,7 +161,45 @@
},
getCodeApplyFormData(codeApplyForm) {
this.codeApplyForm = codeApplyForm;
+ //鏈�澶ф祦姘碞umber
+ const objcodekey = Object.keys(codeApplyForm)
+ const filteredObj = objcodekey.reduce((acc, key) => {
+ const pattern = /[\u4e00-\u9fa5]/; // 鍖归厤涓枃瀛楃鐨勬鍒欒〃杈惧紡
+ const patterns = /\$/;
+ if (!pattern.test(key)&&!patterns.test(key)) {
+ acc[key] = this.codeApplyForm[key];
+ }
+ return acc;
+ }, {});
+
+ const arrCode = Object.entries(filteredObj).map(([key, value]) => {
+ return {
+ secOid: key,
+ secValue: value
+ }
+ })
+
+ this.ruleFormFlag = Object.values(codeApplyForm).every(value => {
+ return value !== null && value !== undefined && value !== '';
+ });
+ if (this.ruleFormFlag && this.secVOList.length>0) {
+ this.loading=true;
+ let params = {};
+ params['codeRuleOid'] = this.ruleOid;
+
+ Object.keys(arrCode).forEach((key) => {
+ params[key] = arrCode[key];
+ });
+
+ getMaxSerialNumber(params).then(res => {
+ this.formModel.maxSecNum = res.data.data;
+ this.loading=false;
+ this.maxNum=res.data.data
+ });
+
+ }
},
+
// 鍙栨秷
cancel() {
this.dialogVisible = false
@@ -172,10 +229,13 @@
})
this.formModel['secDTOList'] = arrCode
this.formModel['codeRuleOid'] = this.ruleOid
- this.confirmLoadding = true
- const rule = await this.$refs.CodeApply.validate()
+ this.confirmLoadding = true;
+ // this.FormRule= await this.$refs.CodeApply.validate();
+ const rule = await this.$refs.CodeApply.validate();
+ // console.log(rule)
this.$refs.ruleForm.validate(res => {
if (rule && res) {
+ // console.log(rule,res)
saveMaxSerialNum(this.formModel).then(res => {
if (res.data.success) {
this.$message.success('鎿嶄綔鎴愬姛锛�');
@@ -201,6 +261,8 @@
this.$refs.CodeApply.form[item.name] = undefined;
item.readOnly = false;
item.referConfig.extraParams.parentClassifyValueOid = data.value;
+ item.referConfig.reloadData = true;
+ item.dataKey=item.oid+'_'+new Date().getTime();
childItems.push(item)
}
return item;
@@ -230,7 +292,7 @@
if (item.secType == "codeclassifysec") {
params = {
isMuti: false,
- valueField: 'id',
+ valueField: 'oid',
type: "grid",
tableConfig: {
limit: -1,
@@ -270,7 +332,7 @@
parentClassifyValueOid: item.parentClassifySecOid
? this.codeApplyForm[item.parentClassifySecOid]
: "",
- },
+ }
};
} else if (item.secType == "coderefersec") {
params = JSON.parse(item.referValueInfo);
--
Gitblit v1.9.3