From 3eced4f79a9cf7b211e86b26b8c8ca20ae3f4576 Mon Sep 17 00:00:00 2001
From: xiejun <xiejun@vci-tech.com>
Date: 星期一, 29 一月 2024 09:44:59 +0800
Subject: [PATCH] 获取集团分类根节点前端传null传入后端直接改为空字符串bug修复
---
Source/UBCS-WEB/src/views/code/code.vue | 179 +++++++++++++++++++++++++++++++++++++++--------------------
1 files changed, 118 insertions(+), 61 deletions(-)
diff --git a/Source/UBCS-WEB/src/views/code/code.vue b/Source/UBCS-WEB/src/views/code/code.vue
index 7a37895..3043cc7 100644
--- a/Source/UBCS-WEB/src/views/code/code.vue
+++ b/Source/UBCS-WEB/src/views/code/code.vue
@@ -404,9 +404,7 @@
margin-top: 20px;
display: flex;
align-items: center;
- justify-content: center;
- "
- >
+ justify-content: center;">
<el-button
class="button"
icon="el-icon-circle-plus"
@@ -642,19 +640,35 @@
<el-form-item
:label-width="leftFormLabelWidth"
label="鍓嶇紑:">
- <el-input
+ <!-- <el-input
v-model="form.prefixCode"
:readonly="basicSecOnlyRead"
- ></el-input>
+ ></el-input> -->
+ <el-select v-model="form.prefixCode" :disabled="basicSecOnlyRead" clearable>
+ <el-option
+ v-for="(option, index) in preFixOrSuffixChars"
+ :key="index"
+ :label="option.label"
+ :value="option.value">
+ </el-option>
+ </el-select>
</el-form-item>
<el-form-item
:label-width="leftFormLabelWidth"
label="鍚庣紑:">
- <el-input
+ <!-- <el-input
v-model="form.suffixCode"
:readonly="basicSecOnlyRead">
- </el-input>
+ </el-input> -->
+ <el-select v-model="form.suffixCode" :disabled="basicSecOnlyRead" clearable>
+ <el-option
+ v-for="(option, index) in preFixOrSuffixChars"
+ :key="index"
+ :label="option.label"
+ :value="option.value">
+ </el-option>
+ </el-select>
</el-form-item>
<el-form-item :label-width="leftFormLabelWidth" label="鎻忚堪:">
@@ -838,13 +852,13 @@
:disabled="basicSecOnlyRead"
filterable
placeholder="璇烽�夋嫨"
- @blur="inputSelectBlur"
+ clearable
>
<el-option
v-for="item in enumParam.codeFillSeparator"
- :key="item.dictKey"
- :label="item.dictValue"
- :value="item.dictValue"
+ :key="item.lable"
+ :label="item.lable"
+ :value="item.value"
>
</el-option>
</el-select>
@@ -1144,13 +1158,13 @@
:disabled="basicSecOnlyRead"
filterable
placeholder="璇烽�夋嫨"
- @blur="inputSelectBlur"
+ clearable
>
<el-option
v-for="item in enumParam.codeFillSeparator"
- :key="item.dictKey"
- :label="item.dictValue"
- :value="item.dictValue"
+ :key="item.lable"
+ :label="item.lable"
+ :value="item.value"
>
</el-option>
</el-select>
@@ -1292,8 +1306,7 @@
</refer-config-dialog>
</el-dialog>
- <!-- 鑷畾涔夋祦姘村弬鐓х粍浠�-->
-
+ <!--鑷畾涔夋祦姘村弬鐓х粍浠�-->
</basic-container>
</template>
@@ -1334,8 +1347,9 @@
deleteCodeClassifyValue,
saveCodeClassifyValueOrder,
} from "@/api/code/codeClassifyValue";
+import { getSelectList, getRegexStr } from "@/api/code/codeCharcter"
import {getDictionary} from "@/api/omd/enum";
-import {getDictionaryBiz} from "@/api/system/dictbiz";
+// import {getDictionaryBiz} from "@/api/system/dictbiz";
import optionBasic from "@/const/code/codebasic";
import optionRule from "@/const/code/mdmrule";
import attrOption from "@/const/code/selectAttrOptionDialog";
@@ -1683,6 +1697,9 @@
//寮曠敤鐮佹涓弬鐓ч厤缃粍浠剁浉鍏冲弬鏁�
referConfigOption: {},
referConfigVisble: false,
+
+ preFixOrSuffixChars: [], //鍓嶅悗缂�瀛楃鍒楄〃
+
};
},
computed: {
@@ -2002,9 +2019,12 @@
this.codeFixdForm.codeFixedSecOid = row.codefixedsecoid;
},
/** 鏂板鐮佸��*/
- addCodeSecValue(condition) {
+ async addCodeSecValue(condition) {
if (condition === "codefixedsec") {
if (!this.tipsCodeSecValueMessage(this.codeFixdForm.id)) {
+ return;
+ }
+ if(!await this.regexCharacter(this.codeFixdForm.id)){
return;
}
this.codeFixdForm.codeFixedSecOid = this.codefixedsecOrCodeclassifysec.oid;
@@ -2029,6 +2049,9 @@
if (!this.tipsCodeSecValueMessage(this.codeClassifyForm.id)) {
return;
}
+ if(!await this.regexCharacter(this.codeClassifyForm.id)){
+ return;
+ }
this.codeClassifyForm.codeClassifySecOid =
this.codefixedsecOrCodeclassifysec.oid;
addSaveCodeClassifyValue(this.codeClassifyForm).then(
@@ -2051,39 +2074,13 @@
);
}
},
- /** 娓呯┖鐮佸�艰〃鍗� */
- clearFixedOrClassifyForm(condition) {
- //鐐瑰嚮鍙栨秷鏃舵竻绌鸿〃鍗曚笌褰撳墠閫変腑鐨勭爜鍊硷紝骞剁鐢ㄦ寜閽�
- this.selectedFixedOrCodeclassifyValue = "";
- if (condition === "close") {
- this.codeFixdForm = this.$options.data().codeFixdForm;
- this.codeClassifyForm = this.$options.data().codeClassifyForm;
- }
- if (condition === "codefixedsec") {
- this.codeFixdForm.description = "";
- this.codeFixdForm.codeFixedSecOid = "";
- } else {
- this.codeClassifyForm = this.$options.data().codeClassifyForm;
- }
- },
- /** 娣诲姞鎴栦慨鏀圭爜鍊间箣鍓嶅鐮佸�奸暱搴︽牴鎹鍒欒繘琛屾牎楠� */
- tipsCodeSecValueMessage(id) {
- if (id.trim() == "") {
- this.$message.warning("鐮佸�间笉鑳戒负绌猴紒");
- return false;
- }
- if (id.trim().length > this.codefixedsecOrCodeclassifysec.codeSecLength) {
- this.$message.warning(
- "鐮佸�奸暱搴︿笉鑳藉ぇ浜�" + this.codefixedsecOrCodeclassifysec.codeSecLength
- );
- return false;
- }
- return true;
- },
/** 淇敼鐮佸�� */
- editCodeSecValue(condition) {
+ async editCodeSecValue(condition) {
if (condition == "codefixedsec") {
if (!this.tipsCodeSecValueMessage(this.codeFixdForm.id)) {
+ return;
+ }
+ if(!await this.regexCharacter(this.codeFixdForm.id)){
return;
}
//浠ュ墠鏄洿鎺ユ妸褰撳墠閫変腑琛岀殑鎵�鏈夋暟鎹兘杩涜鎻愪氦锛屼絾鍏跺疄鍙渶瑕佷紶杈撲竴浜涘繀瑕佸弬鏁板嵆鍙紝杩欏効鍋氫簡淇敼锛岄渶瑕佷紶鍏朵粬鍙傛暟鐨勮鑷娣诲姞
@@ -2113,6 +2110,9 @@
if (!this.tipsCodeSecValueMessage(this.codeClassifyForm.id)) {
return;
}
+ if(!await this.regexCharacter(this.codeClassifyForm.id)){
+ return;
+ }
this.codeClassifyForm.oid =
this.selectedFixedOrCodeclassifyValue.attributes.oid;
// 鍒嗙被鐮佹锛屽瓙鍒嗙被鍜岀埗鍒嗙被涔嬮棿涓嶈兘鐩镐簰鏇存敼
@@ -2140,6 +2140,54 @@
}
);
}
+ },
+ /**
+ * 鍙敤瀛楃闆嗙爜鍊兼鍒欐牎楠�
+ * @return true:婊¤冻闄愬埗锛宖alse锛氫笉婊¤冻闄愬埗
+ */
+ async regexCharacter(str){
+ var regex = null;
+ // 鑾峰彇鍒伴厤缃ソ鐨勫彲鐢ㄥ瓧绗︽鍒�
+ await getRegexStr({codeRuleId: this.selectionList[0].oid,chartType: "charset"}).then(res=>{
+ // console.log(res.data.data);
+ regex = new RegExp(res.data.data);
+ });
+ // console.log(regex);
+ // console.log(regex.test(str));
+ if(regex != "" && !regex.test(str)){
+ this.$message.warning("娣诲姞鐨勭爜鍊兼湭鍦ㄥ彲鐢ㄥ瓧绗﹂泦涓厤缃紒");
+ return false;
+ }
+ return true;
+ },
+ /** 娓呯┖鐮佸�艰〃鍗� */
+ clearFixedOrClassifyForm(condition) {
+ //鐐瑰嚮鍙栨秷鏃舵竻绌鸿〃鍗曚笌褰撳墠閫変腑鐨勭爜鍊硷紝骞剁鐢ㄦ寜閽�
+ this.selectedFixedOrCodeclassifyValue = "";
+ if (condition === "close") {
+ this.codeFixdForm = this.$options.data().codeFixdForm;
+ this.codeClassifyForm = this.$options.data().codeClassifyForm;
+ }
+ if (condition === "codefixedsec") {
+ this.codeFixdForm.description = "";
+ this.codeFixdForm.codeFixedSecOid = "";
+ } else {
+ this.codeClassifyForm = this.$options.data().codeClassifyForm;
+ }
+ },
+ /** 娣诲姞鎴栦慨鏀圭爜鍊间箣鍓嶅鐮佸�奸暱搴︽牴鎹鍒欒繘琛屾牎楠� */
+ tipsCodeSecValueMessage(id) {
+ if (id.trim() == "") {
+ this.$message.warning("鐮佸�间笉鑳戒负绌猴紒");
+ return false;
+ }
+ if (id.trim().length > this.codefixedsecOrCodeclassifysec.codeSecLength) {
+ this.$message.warning(
+ "鐮佸�奸暱搴︿笉鑳藉ぇ浜�" + this.codefixedsecOrCodeclassifysec.codeSecLength
+ );
+ return false;
+ }
+ return true;
},
/** 鍒犻櫎鐮佸�� */
delCodeSecValue(condition) {
@@ -2336,7 +2384,6 @@
},
/** 涓婄Щ涓嬬Щ绛夋搷浣滅殑淇濆瓨*/
async saveCodeFixedOrClassifyValueOption(condition, editOrderNumdata) {
-
//淇濆瓨瀵瑰浐瀹氱爜娈电爜鍊肩殑涓婄Щ涓嬬Щ绉诲嚭绛夋搷浣�
if (condition == "fixedValue") {
let data = {
@@ -2811,7 +2858,18 @@
//console.log(this.form);
//涓篺orm缁戝畾鍊�
this.changeSectypeFormItems(condition == "add" ? null : row);
+ // 鑾峰彇鍓嶅悗缂�鍙敤瀛楃
+ this.loadPreOrSuffixChars();
+ // 琛ヤ綅鏃跺瓧绗�
+ // this.loadCodeFillSeparator();
this.addBasicCodeSettingBox = true;
+ },
+ /** 鑾峰彇鍓嶅悗缂�瀛楃 */
+ loadPreOrSuffixChars(){
+ getSelectList({codeRuleId: this.selectionList[0].oid,chartType: "prefix"}).then(res=>{
+ this.preFixOrSuffixChars = res.data.data;
+ // console.log(this.preFixOrSuffixChars);
+ })
},
/** 鏂板鍩虹鐮佹*/
async saveOrEditBasicCode() {
@@ -3344,12 +3402,12 @@
this.form.referConfig = "";
}
},
- /** 琛ヤ綅鏃剁殑瀛楃锛屽疄鐜板彲杈撳彲閫�*/
- inputSelectBlur(e) {
+ /** 琛ヤ綅鏃剁殑瀛楃锛屽疄鐜板彲杈撳彲閫� TODO:鍥犱负澧炲姞浜嗗彲鐢ㄥ瓧绗﹂泦鎺у埗锛屾墍浠ヨ繖鍎垮純鐢ㄤ簡鍙敤瀛楃闆嗙殑鏁堟灉*/
+ /*inputSelectBlur(e) {
if (e.target.value) {
this.form.codeFillSeparator = e.target.value;
}
- },
+ },*/
/** 鐮佹绫诲瀷鏀瑰彉鏃讹紝澧炲姞瀵瑰簲鐨刦orm琛ㄥ崟涓殑灞炴��*/
changeSectypeFormItems(row) {
//console.log(row)
@@ -3542,7 +3600,7 @@
if (enumCach == null) {
getDictionary({code: enumKey}).then((res) => {
enumCach = res.data.data;
- localStorage.setItem(enumKey, JSON.stringify(res.data.data));
+ localStorage.setItem(enumKey, JSON.stringify(enumCach));
});
}
return enumCach;
@@ -3552,7 +3610,7 @@
this.loadCodeSecType();
this.loadCodeSecLength();
this.loadCodeFillType();
- this.loadCodeFillSeparator();
+ // this.loadCodeFillSeparator();
this.loadCodeLevelType();
this.loadCodeCutType();
this.loadCodeGetValueType();
@@ -3571,15 +3629,14 @@
loadCodeFillSeparator() {
//let enumCach = JSON.parse(localStorage.getItem("codeFillSeparator"));
//if (enumCach == null) {
- getDictionaryBiz({code: "codeFillSeparator"}).then((res) => {
+ getSelectList({codeRuleId: this.selectionList[0].oid,chartType: "fillerChar"}).then((res) => {
this.enumParam.codeFillSeparator = res.data.data;
//console.log(this.enumParam.codeFillSeparator);
- localStorage.setItem(
- "codeFillSeparator",
- JSON.stringify(res.data.data)
- );
+ // localStorage.setItem(
+ // "codeFillSeparator",
+ // JSON.stringify(res.data.data)
+ // );
});
- //}
},
loadCodeLevelType() {
this.enumParam.codeLevelType = this.getLocalStorageEnum("codeLevelType") || [];
--
Gitblit v1.9.3