From 8b73e9cbdf4035ef1aa1026c979222a7e4ca5e01 Mon Sep 17 00:00:00 2001
From: xiejun <xj@2023>
Date: 星期四, 19 十月 2023 23:07:43 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/UBCS-WEB/src/views/modeling/originalAdd.vue | 281 +++++++++++++++++++++++++++++++++++++-------------------
1 files changed, 185 insertions(+), 96 deletions(-)
diff --git a/Source/UBCS-WEB/src/views/modeling/originalAdd.vue b/Source/UBCS-WEB/src/views/modeling/originalAdd.vue
index 274381b..e400868 100644
--- a/Source/UBCS-WEB/src/views/modeling/originalAdd.vue
+++ b/Source/UBCS-WEB/src/views/modeling/originalAdd.vue
@@ -1,12 +1,12 @@
<template>
<el-container>
- <el-dialog title="鍏冩暟鎹�" :visible.sync="showSubmitDialog" append-to-body @close="closeSubmitDialog" width="50%"
+ <el-dialog title="鍏冩暟鎹�" :visible.sync="showSubmitDialog" append-to-body @close="closeSubmitDialog" width="700px"
style="height: 115vh;">
<!-- 鍏冩暟鎹殑澧炴敼寮圭獥 -->
<el-form ref="form" :model="attribute" show-message="true" inline size="medium" label-suffix=":"
class="attributeForm" :rules="rules" @resetFields="resetAttributeForm" status-icon="true">
<el-form-item label="灞炴�х紪鍙�" label-width="100px" prop="id">
- <el-input v-model="attribute.id" maxlength="15" show-word-limit type="text"></el-input>
+ <el-input v-model="attribute.id" maxlength="30" show-word-limit type="text"></el-input>
</el-form-item>
<el-form-item label="灞炴�у悕绉�" label-width="100px" prop="name">
<el-input v-model="attribute.name"></el-input>
@@ -17,9 +17,9 @@
</el-option>
</el-select>
</el-form-item>
- <el-form-item label="鏍囩" label-width="100px">
+<!-- <el-form-item label="鏍囩" label-width="100px">
<el-input v-model="attribute.hashtag"></el-input>
- </el-form-item>
+ </el-form-item>-->
<el-form-item label="榛樿鍊�" label-width="100px">
<el-input v-model="attribute.defaultValue"></el-input>
</el-form-item>
@@ -27,25 +27,26 @@
<el-switch v-model="attribute.nullable" active-text="鍏佽" inactive-text="涓嶅厑璁�"></el-switch>
</el-form-item>
<el-form-item label="闀垮害" label-width="100px" prop="maxLength">
- <el-input-number v-model="attribute.maxLength" :min="1" :max="4000" :step="1" controls-position="right"></el-input-number>
+ <el-input-number v-model="attribute.maxLength" :min="1" :max="4000" :step="1"
+ controls-position="right"></el-input-number>
</el-form-item>
- <el-form-item label="绮惧害" label-width="100px" v-if="attribute.typeValue == 'VTDouble'">
- <el-input-number v-model="attribute.precision" :min="1" :max="20" :step="1" controls-position="right" @change="changeNumber"></el-input-number>
+ <el-form-item label="绮惧害" label-width="100px" v-if="attribute.typeKey == 'VTDouble'">
+ <el-input-number v-model="attribute.precision" :min="1" :max="20" :step="1" controls-position="right"
+ @change="changeNumber"></el-input-number>
</el-form-item>
<el-form-item label="鎻忚堪" label-width="100px">
<el-input v-model="attribute.description" type="text"></el-input>
</el-form-item>
-
<el-tabs v-model="activeName" @tab-click="handleClick" stretch="true">
<el-tab-pane label="鍙傜収" name="referTab">
- <el-form-item label="鍙傜収绫诲瀷" label-width="100px">
+ <el-form-item label="鍙傜収绫诲瀷" label-width="100px" class="referTypeForm">
<el-select v-model="attribute.referTypeKey" @change="referTypeSelectChange">
<el-option v-for="item in btmRefer.referTypeList" :key="item.value" :label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
- <el-form-item label="鍙傜収鍚嶇О" label-width="100px">
+ <el-form-item label="鍙傜収鍚嶇О" label-width="100px" class="referNameForm">
<el-input v-model="attribute.referToName" @focus="openReferConfig" clearable="true"
:disabled="referToFlag" @clear="clearReferTo">
<i slot="suffix" class="el-input__icon el-icon-search"></i>
@@ -59,14 +60,16 @@
</el-input>
</el-form-item>
<el-form-item label="鏋氫妇椤�" label-width="100px">
-
+ <el-tag v-for="eItem in dictEnums" :key="eItem.itemName" type="info">
+ {{eItem.itemName}}
+ </el-tag>
</el-form-item>
</el-tab-pane>
</el-tabs>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitAttribute">纭畾</el-button>
- <el-button @click="cancleSubmit">鍙栨秷</el-button>
+ <el-button @click="cancelSubmit">鍙栨秷</el-button>
</div>
<!-- 閫夋嫨鍙傜収鏃剁殑寮圭獥 -->
<el-dialog title="鍙傜収鍒楄〃" :visible.sync="btmRefer.show" append-to-body @close="closeReferDialog" width="80%"
@@ -74,7 +77,7 @@
<el-container>
<el-aside>
<basic-container>
- <span class="el-dialog__title"> {{ domain.treeOption.title }} </span>
+ <span class="el-dialog__title"> {{ domain.treeOption.title }} </span>
<div style="height:20px;"></div>
<avue-tree id="domain" :data="domain.data" :option="domain.treeOption" @node-click="nodeClick"
class="businessTree" style="height: 418px">
@@ -89,7 +92,8 @@
</el-aside>
<el-main>
<basic-container>
- <avue-crud ref="btmTable" :option="btmRefer.option" :data="btmRefer.data" class="btmTable" @row-click="btmReferClick">
+ <avue-crud ref="btmTable" :option="btmRefer.option" :data="btmRefer.data" class="btmTable"
+ @row-click="btmReferClick">
<template slot="radio" slot-scope="{row}">
<el-radio v-model="btmRefer.selectRow" :label="row.$index">
</el-radio>
@@ -101,13 +105,27 @@
</el-container>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="confirmBtm" size="small">纭畾</el-button>
- <el-button @click="cancleBtm" size="small">鍙栨秷</el-button>
+ <el-button @click="cancelBtm" size="small">鍙栨秷</el-button>
</div>
</el-dialog>
<!-- 閫夋嫨鏋氫妇鏃剁殑寮圭獥 -->
- <el-dialog title="鏋氫妇鍒楄〃" :visible.sync="enumRefer.show" append-to-body @close="closeEnumDialog" width="70%"
+ <el-dialog title="鏋氫妇鍒楄〃" :visible.sync="enumRefer.show" append-to-body @close="closeEnumDialog" width="70%"
style="height: 115vh;">
- <avue-crud ref="eunmTable" :option="enumRefer.option" :data="enumRefer.data" class="enumTable" @row-click="enumReferClick" :page.sync="enumRefer.enumPage">
+ <div>
+ <el-form :inline="true" :model="form" class="demo-form-inline" size="small">
+ <el-form-item label="鏋氫妇浠e彿">
+ <el-input v-model="form.name" placeholder="鏋氫妇浠e彿"></el-input>
+ </el-form-item>
+ <el-form-item label="鏋氫妇鍚嶇О">
+ <el-input v-model="form.label" placeholder="鏋氫妇鍚嶇О"></el-input>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" @click="onSubmit">鏌ヨ</el-button>
+ </el-form-item>
+ </el-form>
+ </div>
+ <avue-crud ref="eunmTable" :option="enumRefer.option" @on-load="enumOnLoad" :data="enumRefer.data" class="enumTable"
+ @row-click="enumReferClick" :page.sync="enumRefer.enumPage">
<template slot="radio" slot-scope="{row}">
<el-radio v-model="enumRefer.selectRow" :label="row.$index">
</el-radio>
@@ -115,7 +133,7 @@
</avue-crud>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="confirmEnum" size="small">纭畾</el-button>
- <el-button @click="cancleEnum" size="small">鍙栨秷</el-button>
+ <el-button @click="cancelEnum" size="small">鍙栨秷</el-button>
</div>
</el-dialog>
</el-dialog>
@@ -124,9 +142,9 @@
</template>
<script>
-import { getDictionary,getParentList } from '@/api/omd/enum'
-import { initTree,btmPage } from '@/api/omd/btmType'
-import { add} from '@/api/omd/OmdAttribute'
+import { getDictionary, getParentList } from '@/api/omd/enum'
+import { initTree, btmPage } from '@/api/omd/btmType'
+import { add } from '@/api/omd/OmdAttribute'
export default {
name: 'originalAdd',
props: {
@@ -136,6 +154,10 @@
},
data() {
return {
+ form:{
+ name:'',
+ label:''
+ },
showSubmitDialog: false,
// 榛樿鐨勯〉绛�
activeName: 'referTab',
@@ -148,7 +170,7 @@
id: [
{ required: true, message: '璇疯緭鍏ュ睘鎬х紪鍙�', trigger: 'blur' },
{ pattern: /^[A-Za-z]+$/, message: '灞炴�х紪鍙峰彧鑳戒负鑻辨枃', trigger: 'blur' },
- { min: 2, max: 15, message: '闀垮害鍦�2鍒�15涓瓧绗�', trigger: 'blur' }
+ { min: 2, max: 30, message: '闀垮害鍦�2鍒�30涓瓧绗�', trigger: 'blur' }
],
name: [
{ required: true, message: '璇疯緭鍏ュ睘鎬у悕绉�', trigger: 'blur' }
@@ -181,24 +203,24 @@
highlightCurrentRow: true,
column: [
{
- label: '',
- prop: 'radio',
- width: 60,
- hide: false
- },
- {
- label: '鑻辨枃鍚嶇О',
- prop: 'id',
- align: 'center',
- searchSpan:8,
- search: true,
- }, {
- label: '涓枃鍚嶇О',
- prop: 'name',
- align: 'center',
- searchSpan:8,
- search: true,
- }]
+ label: '',
+ prop: 'radio',
+ width: 60,
+ hide: false
+ },
+ {
+ label: '鑻辨枃鍚嶇О',
+ prop: 'id',
+ align: 'center',
+ searchSpan: 8,
+ search: true,
+ }, {
+ label: '涓枃鍚嶇О',
+ prop: 'name',
+ align: 'center',
+ searchSpan: 8,
+ search: true,
+ }]
},
// 鍙傜収椤甸潰琛ㄦ牸鏁版嵁
data: [],
@@ -219,30 +241,31 @@
addBtn: false,
refreshBtn: false,
columnBtn: false,
- selection: true,
+ // selection: true,
menu: false,
border: true,
reserveSelection: true,
searchMenuSpan: 32,
- searchShowBtn: false,
+ // searchShowBtn: false,
+ // search:true,
highlightCurrentRow: true,
column: [{
label: '',
prop: 'radio',
width: 60,
hide: false
- },{
+ }, {
label: '鏋氫妇浠e彿',
prop: 'name',
align: 'center',
- searchSpan:8,
- search: true,
+ searchSpan: 8,
+ // search: true,
}, {
label: '鏋氫妇鍚嶇О',
prop: 'label',
align: 'center',
- searchSpan:8,
- search: true,
+ searchSpan: 8,
+ // search: true,
}]
},
// 鏋氫妇鍙傜収琛ㄦ牸鏁版嵁
@@ -263,7 +286,12 @@
value: 'oid',
}
}
- }
+ },
+ dictEnums: [],
+ enumEditFlag: false,
+ enumInitFlag: false,
+ referInitFlag: false,
+ referEditFlag: false,
}
},
created() {
@@ -271,6 +299,28 @@
this.initAttributeReferTypeList();
},
methods: {
+ onSubmit() {
+ if (this.form.name || this.form.label) {
+ const params = {};
+ if (this.form.name) {
+ params.name = this.form.name;
+ }
+ if (this.form.label) {
+ params.label = this.form.label;
+ }
+ getParentList(this.enumRefer.enumPage.currentPage, this.enumRefer.enumPage.pageSize, params)
+ .then((res) => {
+ this.enumRefer.enumPage.total = res.data.data.total;
+ this.enumRefer.data = res.data.data.records;
+ });
+ }
+ },
+ enumOnLoad(){
+ getParentList(this.enumRefer.enumPage.currentPage, this.enumRefer.enumPage.pageSize).then(res => {
+ this.enumRefer.enumPage.total = res.data.data.total;
+ this.enumRefer.data = res.data.data.records;
+ })
+ },
closeSubmitDialog() {
this.resetAttributeForm();
this.showSubmitDialog = false;
@@ -282,31 +332,53 @@
};
this.referToFlag = true;
this.$refs.form.resetFields();
+ this.dictEnums = [];
},
- submitAttribute() {
- add(this.attribute).then(res => {
- this.$message.success("淇濆瓨鎴愬姛");
- this.showSubmitDialog = false;
- this.attribute = {};
- this.$emit('refreshTable');
- });
-
+ submitAttribute() {
+ const that = this;
+ if (that.referInitFlag && that.referEditFlag){
+ this.$set(this.attribute,'dictCode','');
+ this.$set(this.attribute,'dictKey','');
+ this.$set(this.attribute,'dictValue','');
+ this.$set(this.attribute,'usingDict','');
+ }
+ if (that.enumInitFlag && that.enumEditFlag){
+ this.$set(this.attribute,'referTypeCode','');
+ this.$set(this.attribute,'referTypeKey','');
+ this.$set(this.attribute,'referTypeValue','');
+ this.$set(this.attribute,'referToId','');
+ this.$set(this.attribute,'referToName','');
+ }
+ this.$refs.form.validate(function (pass, field) {
+ if (pass) {
+ add(that.attribute).then(res => {
+ that.$message.success("淇濆瓨鎴愬姛");
+ that.showSubmitDialog = false;
+ that.attribute = {};
+ that.$emit('refreshTable');
+ });
+ } else {
+ that.$message.error('蹇呭~');
+ }
+ })
},
- cancleSubmit() {
+ cancelSubmit() {
this.closeSubmitDialog();
},
closeEnumDialog() {
- this.cancleEnum();
- },
- closeReferDialog() {
- this.cancleBtm();
+ this.cancelEnum();
},
- confirmBtm() {
+ closeReferDialog() {
+ this.cancelBtm();
+ },
+ confirmBtm() {
this.attribute.referToId = this.btmRefer.selectItem.oid;
this.attribute.referToName = this.btmRefer.selectItem.name;
this.btmRefer.show = false;
+ this.referEditFlag = true;
+ this.enumEditFlag = false;
},
- cancleBtm() {
+ cancelBtm() {
this.btmRefer.selectItem = {};
this.btmRefer.show = false;
this.btmRefer.selectRow = '';
@@ -316,8 +388,13 @@
this.attribute.dictCode = this.enumRefer.selectItem.name;
this.attribute.dictValue = this.enumRefer.selectItem.label;
this.enumRefer.show = false;
- },
- cancleEnum() {
+ getDictionary({code :this.enumRefer.selectItem.name}).then(res => {
+ this.dictEnums = res.data.data;
+ });
+ this.referEditFlag = false;
+ this.enumEditFlag = true;
+ },
+ cancelEnum() {
this.enumRefer.selectItem = {};
this.enumRefer.show = false;
this.enumRefer.selectRow = '';
@@ -335,24 +412,23 @@
this.domain.data = res.data.data;
})
this.btmRefer.show = true;
-
},
// 鍙傜収绫诲瀷鏍戠殑鐐瑰嚮浜嬩欢
nodeClick(data) {
// 鍖哄垎涓氬姟绫诲瀷鐨勬煡璇㈠拰閾炬帴绫诲瀷鐨勬煡璇�
- if(this.attribute.referTypeKey == 'btmType'){
- btmPage(this.btmRefer.btmPage.currentPage,this.btmRefer.btmPage.pageSize,{domain:data.id}).then(res => {
+ if (this.attribute.referTypeKey == 'btmType') {
+ btmPage(this.btmRefer.btmPage.currentPage, this.btmRefer.btmPage.pageSize, { bizDomain: data.id }).then(res => {
this.btmRefer.data = res.data.data.records;
this.btmRefer.btmPage.total = res.data.data.total;
})
}
- if(this.attribute.referTypeKey == 'linkType'){
-
- }
+ // if (this.attribute.referTypeKey == 'linkType') {
+ //
+ // }
},
// 鏋氫妇绫诲瀷杈撳叆妗嗚幏寰楃劍鐐规椂鐨勪簨浠�
openEnumConfig() {
- getParentList(this.enumRefer.enumPage.currentPage,this.enumRefer.enumPage.pageSize).then(res => {
+ getParentList(this.enumRefer.enumPage.currentPage, this.enumRefer.enumPage.pageSize).then(res => {
this.enumRefer.enumPage.total = res.data.data.total;
this.enumRefer.data = res.data.data.records;
})
@@ -361,20 +437,20 @@
// 灞炴�х被鍨嬩笅鎷夋閫夋嫨浜嬩欢
typeSelectChange(value) {
if (value == 'VTString') {
- this.$set(this.attribute,"maxLength",150)
+ this.$set(this.attribute, "maxLength", 150)
} else if (value == 'VTInteger') {
- this.$set(this.attribute,"maxLength",50)
+ this.$set(this.attribute, "maxLength", 50)
} else if (value == 'VTBoolean') {
- this.$set(this.attribute,"maxLength",5)
+ this.$set(this.attribute, "maxLength", 5)
} else if (value == 'VTDouble') {
- this.$set(this.attribute,"maxLength",26)
- this.$set(this.attribute,"precision",8)
+ this.$set(this.attribute, "maxLength", 26)
+ this.$set(this.attribute, "precision", 8)
} else if (value == 'VTLong') {
- this.$set(this.attribute,"maxLength",150)
+ this.$set(this.attribute, "maxLength", 150)
} else if (value == 'VTDate' || value == 'VTTime' || value == 'VTDateTime') {
- this.$set(this.attribute,"maxLength",6)
+ this.$set(this.attribute, "maxLength", 6)
} else {
- this.$set(this.attribute,"maxLength",50)
+ this.$set(this.attribute, "maxLength", 50)
}
this.attribute.typeCode = 'attributeType';
this.attribute.typeKey = value;
@@ -395,7 +471,7 @@
this.$message.error('灞炴�х被鍨嬫病鎵惧埌鎴栬�呮湭瀹氫箟')
})
},
- initAttributeReferTypeList(){
+ initAttributeReferTypeList() {
getDictionary({ code: 'attributeReferType' }).then(res => {
res.data.data.forEach(element => {
this.btmRefer.referTypeList.push(
@@ -406,32 +482,30 @@
this.$message.error('鍙傜収绫诲瀷娌℃壘鍒版垨鑰呮湭瀹氫箟')
})
},
- btmReferClick(row){
+ btmReferClick(row) {
this.btmRefer.selectItem = row;
this.btmRefer.selectRow = row.$index;
},
- enumReferClick(row){
+ enumReferClick(row) {
this.enumRefer.selectItem = row;
this.enumRefer.selectRow = row.$index;
},
// 鍙傜収鍚嶇О鐐瑰嚮娓呴櫎鏁版嵁
- clearReferTo(){
- this.$delete(this.attribute,'referToId');
- this.$delete(this.attribute,'referToName');
+ clearReferTo() {
+ this.$delete(this.attribute, 'referToId');
+ this.$delete(this.attribute, 'referToName');
this.btmRefer.selectItem = {};
this.btmRefer.selectRow = '';
},
handleClick(tab){
// 鍥犱负鍙兘鍙傜収鍜屾灇涓句簩閫変竴銆傛墍浠ュ湪鍒囨崲鐨勬椂鍊欐妸灞炴�х粰娓呯┖銆�
- this.$delete(this.attribute,'referTypeCode');
- this.$delete(this.attribute,'referTypeKey');
- this.$delete(this.attribute,'referTypeValue');
- this.$delete(this.attribute,'referToId');
- this.$delete(this.attribute,'referToName');
- this.$delete(this.attribute,'dictCode');
- this.$delete(this.attribute,'dictKey');
- this.$delete(this.attribute,'dictValue');
- this.$delete(this.attribute,'usingDict');
+ if (tab.name === 'enumTab'){
+ this.enumInitFlag = true;
+ this.referInitFlag = false;
+ }else {
+ this.enumInitFlag = false;
+ this.referInitFlag = true;
+ }
}
}
}
@@ -449,4 +523,19 @@
.attributeForm>.el-form-item>.el-form-item__content>.el-input>.el-input__inner {
width: 200px;
}
-</style>
\ No newline at end of file
+
+.attributeForm>.el-form-item>.el-form-item__content>.el-select>.el-input>.el-input__inner {
+ width: 200px;
+}
+.attributeForm>.el-form-item>.el-form-item__content{
+ width :190px;
+}
+
+.referTypeForm > .el-form-item__content > .el-select > .el-input>.el-input__inner {
+ width: 200px;
+}
+
+.referNameForm > .el-form-item__content > .el-input > .el-input__inner {
+ width: 200px;
+}
+</style>
--
Gitblit v1.9.3