From b19fab639f82d33776e58b541c17a17be75325e7 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期四, 15 八月 2024 23:23:29 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/plt-web/plt-web-ui/src/api/modeling/businessType/api.js | 9 Source/plt-web/plt-web-ui/src/views/system/department/index.vue | 1 Source/plt-web/plt-web-ui/src/components/flow-cycle/flowchartEditor.vue | 17 Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/versioning/index.vue | 25 Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/linkType/index.vue | 88 ++- Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/lifeCycle/index.vue | 4 Source/plt-web/plt-web-ui/src/page/index/top/index.vue | 1 Source/plt-web/plt-web-ui/src/App.vue | 13 Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/attributePool/index.vue | 74 +- Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/enumType/index.vue | 121 +++-- Source/plt-web/plt-web-ui/src/api/user.js | 9 Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/businessType/index.vue | 855 +++++++++++++++++++++++++++++++++++--- Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/statusPool/index.vue | 47 + 13 files changed, 1,030 insertions(+), 234 deletions(-) diff --git a/Source/plt-web/plt-web-ui/src/App.vue b/Source/plt-web/plt-web-ui/src/App.vue index 5dd0d0d..7fc0795 100644 --- a/Source/plt-web/plt-web-ui/src/App.vue +++ b/Source/plt-web/plt-web-ui/src/App.vue @@ -25,6 +25,9 @@ height: 100%; overflow: hidden; } +.el-menu--vertical .el-menu--popup-right-start{ + background: #ffffff !important; +} .el-card__body { padding: 15px; } @@ -39,8 +42,14 @@ margin-top: 0 !important; } .avue-dialog .el-dialog__body{ - padding: 20px 20px 30px 20px; // 涓婂彸涓嬪乏 - margin-bottom: 20px !important; + padding: 20px 20px 0px 20px; // 涓婂彸涓嬪乏 鍙栨秷琛ㄦ牸涓嬭竟璺濓紙浼氬嚭鐜版粴鍔ㄦ潯锛� + margin-bottom: 10px !important; +} +.avue-dialog .el-dialog__body .avue-form{ + margin: 0px auto 40px; // 鍗曠嫭缁欏璇濇閲岀殑avue琛ㄥ崟鍔犱笂涓嬭竟璺� +} +.avue-crud .avue-form { + margin: 0px auto !important; // 琛ㄦ牸鍐呯殑琛ㄥ崟锛堟瘮濡�:鎼滅储鏍忥級 鍙栨秷涓嬭竟璺� } .avue--detail .el-col{ margin-bottom: 0; diff --git a/Source/plt-web/plt-web-ui/src/api/modeling/businessType/api.js b/Source/plt-web/plt-web-ui/src/api/modeling/businessType/api.js index 1b64d2b..f5ef82f 100644 --- a/Source/plt-web/plt-web-ui/src/api/modeling/businessType/api.js +++ b/Source/plt-web/plt-web-ui/src/api/modeling/businessType/api.js @@ -8,3 +8,12 @@ params }); } + +// 鍒楄〃鏌ヨ +export function addLifeCycle(params) { + return request({ + url: "/api/btmTypeController/addBtmType", + method: "post", + data:params + }); +} diff --git a/Source/plt-web/plt-web-ui/src/api/user.js b/Source/plt-web/plt-web-ui/src/api/user.js index 405e08d..7fb72ed 100644 --- a/Source/plt-web/plt-web-ui/src/api/user.js +++ b/Source/plt-web/plt-web-ui/src/api/user.js @@ -37,3 +37,12 @@ }); } +// 閫�鍑虹櫥褰� +export function logout(params) { + return request({ + url: "/api/framework/loginController/logout", + method: "post", + params + }); +} + diff --git a/Source/plt-web/plt-web-ui/src/components/flow-cycle/flowchartEditor.vue b/Source/plt-web/plt-web-ui/src/components/flow-cycle/flowchartEditor.vue index 2555966..7e2245e 100644 --- a/Source/plt-web/plt-web-ui/src/components/flow-cycle/flowchartEditor.vue +++ b/Source/plt-web/plt-web-ui/src/components/flow-cycle/flowchartEditor.vue @@ -25,7 +25,7 @@ </div> </div> - <div v-if="type !== 'detail'" class="vfe-chart-panel"> + <div class="vfe-chart-panel"> <div class="vfe-chart-panel-detail"> <editor-detail-panel ref="EditorDetailPanel" @@ -131,13 +131,13 @@ onAfterChange(e) { console.log(e) try { - if('edit' === this.$store.state.flow.type){ - this.$refs.flowChart.propsAPI.remove(e.item); - if(e.action === 'remove'){ - this.$message.error('缂栬緫鐘舵�佷笅涓嶈兘鍒囨崲閫変腑椤癸紒'); - } - return; - } + // if('edit' === this.$store.state.flow.type){ + // this.$refs.flowChart.propsAPI.remove(e.item); + // if(e.action === 'remove'){ + // this.$message.error('缂栬緫鐘舵�佷笅涓嶈兘鍒囨崲閫変腑椤癸紒'); + // } + // return; + // } // 濡傛灉娣诲姞浜嗚妭鐐逛笖鑺傜偣娌℃湁琚洿鏀硅繃 if (e.action === "add" && e.model.type === "node") { if (!e.model.change) { @@ -148,7 +148,6 @@ } } } catch (err) { - console.log(err) // 澶勭悊鑺傜偣 ID 鍐茬獊閿欒 if ( err.message === diff --git a/Source/plt-web/plt-web-ui/src/page/index/top/index.vue b/Source/plt-web/plt-web-ui/src/page/index/top/index.vue index 7225469..ca8584f 100644 --- a/Source/plt-web/plt-web-ui/src/page/index/top/index.vue +++ b/Source/plt-web/plt-web-ui/src/page/index/top/index.vue @@ -329,6 +329,7 @@ type: "warning" }).then(() => { this.$store.dispatch("LogOut").then(() => { + console.log('123'); resetRouter(); this.$router.push({path: "/login"}); }); diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/attributePool/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/attributePool/index.vue index 2fdceb0..ad7dfe9 100644 --- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/attributePool/index.vue +++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/attributePool/index.vue @@ -737,8 +737,12 @@ row, this.$refs.userCrud, this.lastIndex, - (newIndex) => { this.lastIndex = newIndex; }, - () => { this.selectList = []; } + (newIndex) => { + this.lastIndex = newIndex; + }, + () => { + this.selectList = []; + } ); }, @@ -1213,38 +1217,44 @@ linkTypeName: "", rangeValue: "" }; - if (this.dialogTitle === 'add') { - this.form.range = this.form.rangeValue.replace(/\n/g, ';'); - if (this.form.attributeSelectType === 'business') { - this.form.btmTypeId = this.form.referValue; - } else { - this.form.linkTypeName = this.form.referValue; - } - addAttribute(this.form).then(res => { - if (res.data.code === 200) { - this.$message.success(res.data.obj); - this.getTableList(); - this.form = form; - this.addVisible = false; + this.$refs.form.validate((valid) => { + if (valid) { + if (this.dialogTitle === 'add') { + this.form.range = this.form.rangeValue.replace(/\n/g, ';'); + if (this.form.attributeSelectType === 'business') { + this.form.btmTypeId = this.form.referValue; + } else { + this.form.linkTypeName = this.form.referValue; + } + addAttribute(this.form).then(res => { + if (res.data.code === 200) { + this.$message.success(res.data.obj); + this.getTableList(); + this.form = form; + this.addVisible = false; + } + }) } - }) - } - if (this.dialogTitle === 'edit') { - this.form.range = this.form.rangeValue.replace(/\n/g, ';'); - if (this.form.attributeSelectType === 'business') { - this.form.btmTypeId = this.form.referValue; - } else { - this.form.linkTypeName = this.form.referValue; - } - updateAttribute(this.form).then(res => { - if (res.data.code === 200) { - this.$message.success(res.data.obj); - this.getTableList(); - this.form = form; - this.addVisible = false; + if (this.dialogTitle === 'edit') { + this.form.range = this.form.rangeValue.replace(/\n/g, ';'); + if (this.form.attributeSelectType === 'business') { + this.form.btmTypeId = this.form.referValue; + } else { + this.form.linkTypeName = this.form.referValue; + } + updateAttribute(this.form).then(res => { + if (res.data.code === 200) { + this.$message.success(res.data.obj); + this.getTableList(); + this.form = form; + this.addVisible = false; + } + }) } - }) - } + } else { + return false; + } + }); }, // 瀵煎叆 diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/businessType/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/businessType/index.vue index c137fde..c5bcb1c 100644 --- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/businessType/index.vue +++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/businessType/index.vue @@ -48,150 +48,556 @@ </el-aside> <el-main> <basic-container> - <div style="display: flex;justify-content: center"> - <div class="descBox"> - <el-descriptions :column="1" border class="margin-top" size="medium" title="灞炴�т俊鎭�"> + <div style="display: flex;justify-content: center; height: 230px"> + <div class="descBox" style="max-height: 100px"> + <el-descriptions :column="1" border class="margin-top" size="medium" title="灞炴�т俊鎭�"> <el-descriptions-item :contentStyle="descriptionOption.contentStyle" :labelStyle="descriptionOption.labelStyle"> <template slot="label"> - <i :class="icons.name"></i> 鍚嶇О + </template> + <el-tag v-if="nodeRow.id">{{ nodeRow.id }}</el-tag> + </el-descriptions-item> + <el-descriptions-item :contentStyle="descriptionOption.contentStyle" + :labelStyle="descriptionOption.labelStyle"> + <template slot="label"> + 鏍囩 </template> <el-tag v-if="nodeRow.name">{{ nodeRow.name }}</el-tag> </el-descriptions-item> <el-descriptions-item :contentStyle="descriptionOption.contentStyle" :labelStyle="descriptionOption.labelStyle"> <template slot="label"> - <i :class="icons.label"></i> - 鏍囩 - </template> - <el-tag v-if="nodeRow.label">{{ nodeRow.label }}</el-tag> - </el-descriptions-item> - <el-descriptions-item :contentStyle="descriptionOption.contentStyle" - :labelStyle="descriptionOption.labelStyle"> - <template slot="label"> - <i :class="icons.implClass"></i> 瀹炵幇绫� </template> - <el-tooltip class="item" effect="dark" :content="nodeRow.implClass" placement="top-start"> - <el-tag v-if="nodeRow.implClass">{{ nodeRow.implClass }}</el-tag> + <el-tooltip v-if="nodeRow.implClass" :content="nodeRow.implClass" class="item" effect="dark" + placement="top-start"> + <el-tag style="max-width: 250px;overflow: hidden">{{ nodeRow.implClass }} + </el-tag> </el-tooltip> </el-descriptions-item> <el-descriptions-item :contentStyle="descriptionOption.contentStyle" :labelStyle="descriptionOption.labelStyle"> <template slot="label"> - <i :class="icons.desc"></i> 鎻忚堪 </template> - <el-tag v-if="nodeRow.description">{{ nodeRow.description }}</el-tag> + <span v-if="nodeRow.description">{{ nodeRow.description }}</span> </el-descriptions-item> </el-descriptions> </div> <div class="descBox"> - <el-descriptions :column="1" border class="margin-top" size="medium" title="灞炴�т俊鎭�"> + <el-descriptions :column="1" border class="margin-top" size="medium" title="鐗堟湰瑙勫垯"> <el-descriptions-item :contentStyle="descriptionOption.contentStyle" :labelStyle="descriptionOption.labelStyle"> <template slot="label"> - <i :class="icons.name"></i> - 鍚嶇О + 鐗堟湰瑙勫垯 </template> - <el-tag v-if="nodeRow.name">{{ nodeRow.name }}</el-tag> + <el-tag v-if="nodeRow.revLevel" + :type="nodeRow.revLevel === '0' ? 'warning' : nodeRow.revLevel === '1' ? '' : 'success'"> + {{ + nodeRow.revLevel === '0' + ? '涓嶅彲淇' + : nodeRow.revLevel === '1' + ? '閲囩敤涓�绾х増鏈鐞�' + : '閲囩敤浜岀骇鐗堟湰绠$悊' + }} + </el-tag> </el-descriptions-item> - <el-descriptions-item :contentStyle="descriptionOption.contentStyle" + <el-descriptions-item v-if="nodeRow.revLevel !== '0'" :contentStyle="descriptionOption.contentStyle" :labelStyle="descriptionOption.labelStyle"> <template slot="label"> - <i :class="icons.label"></i> - 鏍囩 + 鐗堟湰鍙疯鍒� </template> - <el-tag v-if="nodeRow.label">{{ nodeRow.label }}</el-tag> + <el-tag v-if="nodeRow.revisionRuleId">{{ nodeRow.revisionRuleId }}</el-tag> </el-descriptions-item> - <el-descriptions-item :contentStyle="descriptionOption.contentStyle" + <el-descriptions-item v-if="nodeRow.revLevel !== '0'" :contentStyle="descriptionOption.contentStyle" :labelStyle="descriptionOption.labelStyle"> <template slot="label"> - <i :class="icons.implClass"></i> - 瀹炵幇绫� + 鍒嗛殧绗� </template> - <el-tag v-if="nodeRow.implClass">{{ nodeRow.implClass }}</el-tag> + <el-tag v-if="nodeRow.delimiter">{{ nodeRow.delimiter }}</el-tag> </el-descriptions-item> - <el-descriptions-item :contentStyle="descriptionOption.contentStyle" + <el-descriptions-item v-if="nodeRow.revLevel !== '0' && nodeRow.revLevel !== '1'" + :contentStyle="descriptionOption.contentStyle" :labelStyle="descriptionOption.labelStyle"> <template slot="label"> - <i :class="icons.desc"></i> - 鎻忚堪 + 鐗堟鍙疯鍒� </template> - <el-tag v-if="nodeRow.description">{{ nodeRow.description }}</el-tag> + <el-tag v-if="nodeRow.revisionRuleId" + :type="nodeRow.revisionRuleId === '0' ? 'warning' : nodeRow.revisionRuleId === '1' ? '' : 'success'"> + {{ + nodeRow.versionRule === '0' + ? '1.2.3...' + : nodeRow.versionRule === '1' + ? 'a.b.c...' + : '0.1.2...' + }} + </el-tag> </el-descriptions-item> + </el-descriptions> </div> <div class="descBox"> - <el-descriptions :column="1" border class="margin-top" size="medium" title="灞炴�т俊鎭�"> + <el-descriptions :column="1" border class="margin-top" size="medium" title="鐢熷懡鍛ㄦ湡"> <el-descriptions-item :contentStyle="descriptionOption.contentStyle" :labelStyle="descriptionOption.labelStyle"> <template slot="label"> - <i :class="icons.name"></i> - 鍚嶇О + 鐢熷懡鍛ㄦ湡 </template> - <el-tag v-if="nodeRow.name">{{ nodeRow.name }}</el-tag> - </el-descriptions-item> - <el-descriptions-item :contentStyle="descriptionOption.contentStyle" - :labelStyle="descriptionOption.labelStyle"> - <template slot="label"> - <i :class="icons.label"></i> - 鏍囩 - </template> - <el-tag v-if="nodeRow.label">{{ nodeRow.label }}</el-tag> - </el-descriptions-item> - <el-descriptions-item :contentStyle="descriptionOption.contentStyle" - :labelStyle="descriptionOption.labelStyle"> - <template slot="label"> - <i :class="icons.implClass"></i> - 瀹炵幇绫� - </template> - <el-tag v-if="nodeRow.implClass">{{ nodeRow.implClass }}</el-tag> - </el-descriptions-item> - <el-descriptions-item :contentStyle="descriptionOption.contentStyle" - :labelStyle="descriptionOption.labelStyle"> - <template slot="label"> - <i :class="icons.desc"></i> - 鎻忚堪 - </template> - <el-tag v-if="nodeRow.description">{{ nodeRow.description }}</el-tag> + <el-tag v-if="nodeRow.lifeCycleId">{{ nodeRow.lifeCycleId }}</el-tag> </el-descriptions-item> </el-descriptions> </div> </div> - + <div style="margin-top: 30px"> + <h3>灞炴�у垪琛�</h3> + <avue-crud + :data="attrData" + :option="attrOption"> + </avue-crud> + </div> </basic-container> </el-main> + + <!-- 鏂板 && 缂栬緫 --> + <el-dialog + v-dialogDrag + :title="title === 'add' ? '鍒涘缓' : '淇敼'" + :visible.sync="visible" + append-to-body="true" + class="avue-dialog" + width="75%" + @close="addDialogClose"> + <el-form ref="form" :model="form" :rules="rules" label-width="95px"> + <div class="dialogForm"> + <div class="leftForm"> + <el-form-item label="绫诲瀷鍚嶇О锛�" prop="id"> + <el-input v-model="form.id" :readOnly="title === 'edit'"></el-input> + </el-form-item> + <el-form-item label="鏍囩锛�"> + <el-input v-model="form.name"></el-input> + </el-form-item> + <el-form-item label="缁ф壙鑷細"> + <el-input v-model="form.fName" :readOnly="title === 'edit'"></el-input> + </el-form-item> + <el-form-item label="瀹炵幇绫伙細"> + <el-input v-model="form.implClass"></el-input> + </el-form-item> + <el-form-item label="鎻忚堪"> + <el-input v-model="form.description" :rows="2" type="textarea"></el-input> + </el-form-item> + </div> + <div class="centerForm"> + <el-form-item label="鐗堟湰瑙勫垯锛�" label-width="110px" prop="revLevel"> + <el-select v-model="form.revLevel"> + <el-option label="涓嶅彲淇" value="0"></el-option> + <el-option label="閲囩敤涓�绾х増鏈鐞�" value="1"></el-option> + <el-option label="閲囩敤浜岀骇鐗堟湰绠$悊" value="2"></el-option> + </el-select> + </el-form-item> + <el-form-item v-if="form.revLevel !== '0'" label="鐗堟湰鍙疯鍒欙細" label-width="110px" prop="revisionRuleName"> + <div style="display: flex;gap: 5px;align-items: center"> + <el-input v-model="form.revisionRuleId" :readOnly="true"></el-input> + <el-button plain size="small" style="margin-left: 5px;height: 30px" type="success" + @click="versionAddHandler">娣诲姞 + </el-button> + <el-switch + v-model="form.inputRevisionFlag" + active-text="鎵嬪伐杈撳叆" + style="width: 300px"> + </el-switch> + </div> + </el-form-item> + <el-form-item v-if="form.revLevel !== '0'" label="鍒嗛殧绗︼細" label-width="110px" prop="delimiter"> + <el-select v-model="form.delimiter" clearable> + <el-option label="." value="."></el-option> + <el-option label="-" value="-"></el-option> + </el-select> + </el-form-item> + <el-form-item v-if="form.revLevel !== '0' && form.revLevel !== '1'" label="鐗堟鍙疯鍒欙細" label-width="110px" + prop="revLevel"> + <el-select v-model="form.versionRule" clearable> + <el-option label="1.2.3..." value="0"></el-option> + <el-option label="a.b.c..." value="1"></el-option> + <el-option label="0.1.2..." value="2"></el-option> + </el-select> + </el-form-item> + </div> + <div class="rightForm"> + <el-form-item label="鐢熷懡鍛ㄦ湡锛�" label-width="138px" prop="lifeCycleId"> + <div style="display: flex;gap: 5px;align-items: center"> + <el-input v-model="form.lifeCycleId" :readOnly="true"></el-input> + <el-button plain size="small" style="margin-left: 5px;height: 30px" type="success" + @click="lifeAddHandler('input')">娣诲姞 + </el-button> + </div> + </el-form-item> + + <el-form-item label="澶囬�夌敓鍛藉懆鏈熷垪琛細" label-width="138px"> + <div style="display: flex; align-items: center"> + <div style="height: 200px; width: 280px; border: 1px solid #bdbbbb;overflow-y: auto"> + <!-- 鍐呭 --> + <el-table + :data="dialogLifeTable" + :show-header="false" + style="width: 100%"> + <el-table-column + align="center" + prop="id"> + </el-table-column> + <el-table-column + fixed="right" + label="鎿嶄綔" + width="60"> + <template slot-scope="scope"> + <el-button + size="small" + style="color:#F56C6C;" + type="text" + @click.native.prevent="dialogDeleteLifeTable(scope.$index)"> + 绉婚櫎 + </el-button> + </template> + </el-table-column> + </el-table> + </div> + <el-button plain size="mini" style="margin-left: 5px" type="success" + @click="lifeAddHandler('table')">娣诲姞 + </el-button> + + </div> + </el-form-item> + </div> + </div> + </el-form> + <div class="bottomForm"> + <h3>灞炴�ф睜鍒楄〃</h3> + <avue-crud + :data="dialogAttrData" + :option="dialogAttrOption"> + <template slot="menuLeft"> + <el-button icon="el-icon-plus" size="small" type="primary" @click="addDialogClickHandler">鍒涘缓</el-button> + </template> + </avue-crud> + </div> + <span slot="footer" class="dialog-footer"> + <el-button @click="addDialogClose">鍙� 娑�</el-button> + <el-button type="primary" @click="addDialogSavaHandler">纭� 瀹�</el-button> + </span> + </el-dialog> + + <!-- 灞炴�ф睜娣诲姞 --> + <el-dialog + v-dialogDrag + :visible.sync="attrPollDialogVisible" + append-to-body="true" + class="avue-dialog" + title="灞炴�ф睜" + width="60%" + @close="dialogAttrClose" + > + <avue-crud + :key="dialogAttrReload" + ref="dialogAttrCrud" + :data="dialogAttrSaveData" + :option="dialogAttrSaveOption" + :page.sync="attrPage" + :table-loading="dialogAttrLoading" + @selection-change="dialogAttrSelectChange" + @row-click="dialogAttrRowClickHandler" + @size-change="attrSizeChange" + @current-change="attrCurrentChange" + @search-change="attrHandleSearch" + @search-reset="attrHandleReset" + > + </avue-crud> + <span slot="footer" class="dialog-footer"> + <el-button @click="dialogAttrClose">鍙� 娑�</el-button> + <el-button type="primary" @click="dialogAttrAddClickHandler">纭� 瀹�</el-button> + </span> + </el-dialog> + + <el-dialog + v-dialogDrag + :visible.sync="dialogVersionVisible" + append-to-body="true" + class="avue-dialog" + title="鐗堟湰鍙疯鍒�" + width="60%" + > + + <avue-crud + :key="dialogVersionKey" + ref="dialogAttrCrud" + :data="dialogVersionData" + :option="dialogVersionOption" + :table-loading="dialogVersionLoading" + @row-click="dialogVersionRowClick" + @search-change="versionHandleSearch" + @search-reset="versionHandleReset" + > + </avue-crud> + + <span slot="footer" class="dialog-footer"> + <el-button @click="dialogVersionVisible = false">鍙� 娑�</el-button> + <el-button type="primary" @click="dialogVersionAddClickHandler">纭� 瀹�</el-button> + </span> + + </el-dialog> + + <!-- 鐢熷懡鍛ㄦ湡 --> + <el-dialog + v-dialogDrag + :visible.sync="dialogLfeVisible" + append-to-body="true" + class="avue-dialog" + title="鐢熷懡鍛ㄦ湡妯℃澘" + width="60%" + > + <avue-crud + :key="dialogLifeKey" + ref="dialogAttrCrud" + :data="dialogLifeData" + :option="dialogLifeOption" + :table-loading="dialogLifeLoading" + @row-click="dialogLifeRowClick" + @search-change="lifeHandleSearch" + @search-reset="lifeHandleReset" + > + </avue-crud> + <span slot="footer" class="dialog-footer"> + <el-button @click="dialogLfeVisible = false">鍙� 娑�</el-button> + <el-button type="primary" @click="dialogLifeAddClickHandler">纭� 瀹�</el-button> + </span> + + </el-dialog> + </el-container> </template> <script> -import {getBizTypes} from "@/api/modeling/businessType/api" +import basicOption from '@/util/basic-option' +import {getBizTypes, addLifeCycle} from "@/api/modeling/businessType/api" +import {gridAttribute} from "@/api/modeling/attributePool/api"; +import func from "@/util/func"; +import {getVersionRuleAllList} from "@/api/modeling/version/api"; +import {gridLifeCycle} from "@/api/modeling/lifeCycle/api"; export default { name: "index", data() { return { - form:{ - + dialogLifeDefalutData: [], // 鏌ヨ閲嶇疆榛樿鏁版嵁 + lifeType: '', + dialogLifeTable: [], + dialogLifeSaveRow: {}, + dialogLifeKey: Math.random(), + dialogLifeData: [], + dialogLifeOption: { + ...basicOption, + addBtn: false, + selection: false, + refreshBtn: false, + menu: false, + height: 450, + searchMenuSpan: 8, + highlightCurrentRow: true, + column: [ + { + label: '鐢熷懡鍛ㄦ湡妯℃澘鍚�', + prop: 'id', + searchLabelWidth: 120, + search: true + } + ] }, - nodeRow:{}, + dialogLifeLoading: false, + dialogLfeVisible: false, + dialogVersionDefalutData: [], // 鏌ヨ閲嶇疆榛樿鏁版嵁 + dialogSwitchValue: false, + dialogVersionSaveRow: {}, + dialogVersionVisible: false, + dialogVersionKey: Math.random(), + dialogVersionData: [], + dialogVersionOption: { + ...basicOption, + addBtn: false, + selection: false, + refreshBtn: false, + menu: false, + height: 450, + searchMenuSpan: 8, + highlightCurrentRow: true, + // calcHeight: 100, + column: [ + { + label: '鐗堟湰鍙疯鍒�', + prop: 'id', + searchLabelWidth: 110, + search: true + } + ] + }, + dialogVersionLoading: false, + dialogAttrSelectList: [], + searchAttrParams: {}, + dialogAttrLoading: false, + dialogAttrReload: Math.random(), + attrPage: { + currentPage: 1, + pageSize: 30, + total: 0, + pageSizes: [30, 50, 100, 200], + }, + dialogAttrSaveOption: { + ...basicOption, + addBtn: false, + menu: false, + refreshBtn: false, + index: false, + highlightCurrentRow: true, + height: 450, + searchMenuSpan: 8, + column: [ + { + label: '灞炴�у悕', + prop: 'id', + sortable: true, + search: true, + }, + { + label: '灞炴�х被鍨�', + prop: 'attributeDataType', + sortable: true, + }, + { + label: '鍒濆鍊�', + prop: 'defaultValue', + sortable: true, + }, + { + label: '璇存槑', + prop: 'description', + sortable: true, + overHidden: true + } + ] + }, + dialogAttrSaveData: [], + attrPollDialogVisible: false, + rules: { + id: [ + {required: true, message: '璇疯緭绫诲瀷鍚嶇О', trigger: 'blur'}, + {validator: this.validateEnglishOnly, trigger: 'blur'} + ], + revLevel: [ + {required: true, message: '璇烽�夋嫨鐗堟湰瑙勫垯', trigger: 'blur'}, + ], + lifeCycleId: [ + {required: true, message: '璇烽�夋嫨鐢熷懡鍛ㄦ湡', trigger: 'blur'}, + ] + }, + dialogAttrData: [], + dialogAttrOption: { + ...basicOption, + editBtn: false, + refreshBtn: false, + selection: false, + height: 210, + addBtn: false, + // index:false, + column: [ + { + label: '灞炴�у悕', + prop: 'id', + sortable: true, + }, + { + label: '灞炴�х被鍨�', + prop: 'attributeDataType', + sortable: true, + }, + { + label: '鍒濆鍊�', + prop: 'defaultValue', + sortable: true, + }, + { + label: '璇存槑', + prop: 'description', + overHidden: true + } + ] + }, + title: '', + visible: false, + attrData: [], + attrOption: { + ...basicOption, + calcHeight: -40, + addBtn: false, + menu: false, + index: false, + selection: false, + refreshBtn: false, + column: [ + { + prop: 'id', + label: '灞炴�у悕', + sortable: true + }, + { + prop: 'btmTypeId', + label: '涓氬姟绫诲瀷', + sortable: true + }, + { + prop: 'attrDataType', + label: '灞炴�х被鍨�', + sortable: true + }, + { + prop: 'defaultValue', + label: '榛樿鍊�', + sortable: true + }, + { + prop: 'description', + label: '璇存槑', + overHidden: true + } + ] + }, + form: { + id: '', // 绫诲瀷鍚嶇О + name: '', // 鏍囩 + fName: '', // 缁ф壙鑷� + implClass: '', // 瀹炵幇绫� + description: '', // 鎻忚堪 + revLevel: '', // 鐗堟湰瑙勫垯 + revisionRuleId: '',// 鐗堟湰鍙疯鍒� + inputRevisionFlag: false, // 鎵嬪伐杈撳叆 + versionRule: '', // 鐗堟鍙疯鍒� + lifeCycleId: '', // 鐢熷懡鍛ㄦ湡 + subLifeCycleId: '', // 鐢熷懡鍛ㄦ湡澶囬�夊垪琛�, + apNameArray: "", // 灞炴�ф睜鍒楄〃鈥欙紝鈥樺垎闅� + }, + nodeRow: {}, treeOption: { height: 'auto', defaultExpandAll: false, menu: false, addBtn: false, props: { - label: 'name', - value: 'name', + label: 'id', + value: 'id', children: 'children' } }, treeData: [], descriptionOption: { - labelStyle: 'text-align:center;min-width:80px;', - contentStyle: 'width:200px;text-align:center;word-break;break-all;' + labelStyle: 'text-align:center;width:100px;', + contentStyle: 'max-width:200px;text-align:center;word-break;break-all;' }, icons: { id: 'el-icon-finished', @@ -204,6 +610,7 @@ this.getTreeList(); }, methods: { + //鏍戣〃鏌ヨ getTreeList() { getBizTypes().then(res => { const data = res.data.data.map(item => { @@ -214,16 +621,303 @@ }, // 鏍戠偣鍑� - nodeClick(row){ - console.log(row); + nodeClick(row) { + this.attrData = JSON.parse(row.attributes); this.nodeRow = row; }, + + // 鍒涘缓鎸夐挳 + addClickHandler() { + this.title = 'add'; + this.visible = true; + }, + + // 瀵硅瘽妗� 灞炴�ф睜鍒楄〃澧炲姞鎸夐挳 + addDialogClickHandler() { + this.dialogAttrLoading = true; + this.attrPollDialogVisible = true; + this.dialogAttrReload = Math.random(); // 寮哄埗鍒锋柊琛ㄦ牸 瑙e喅琛ㄦ牸閿欒 + this.getAttrDialogDta(); + }, + + // 鏌ヨ灞炴�ф睜鍒楄〃鏁版嵁 + getAttrDialogDta() { + gridAttribute(this.attrPage.currentPage, this.attrPage.pageSize, this.searchAttrParams).then(res => { + const data = res.data.data; + this.dialogAttrSaveData = data; + this.attrPage.total = res.data.total; + this.dialogAttrLoading = false; + }).catch(err => { + this.$message.error(err); + }); + }, + + // 鏂板灞炴�ф睜鍒楄〃鍏抽棴瀵硅瘽妗� + dialogAttrClose() { + this.attrPollDialogVisible = false; + this.searchAttrParams = {}; + }, + + // 娣诲姞灞炴�ф睜琛ㄦ牸閫夋嫨妗� + dialogAttrSelectChange(row) { + this.dialogAttrSelectList = row; + }, + + // 娣诲姞灞炴�ф睜 琛岀偣鍑� + dialogAttrRowClickHandler(row) { + + func.rowClickHandler( + row, + this.$refs.dialogAttrCrud, + this.attrLastIndex, + (newIndex) => { + this.attrLastIndex = newIndex; + }, + () => { + this.selectList = []; + } + ); + }, + + //娣诲姞灞炴�ф睜 鏉℃暟 + attrSizeChange(val) { + this.attrPage.pageSize = val; + this.getAttrDialogDta() + }, + + //娣诲姞灞炴�ф睜 椤电爜 + attrCurrentChange(val) { + this.attrPage.currentPage = val; + this.getAttrDialogDta(); + }, + + //娣诲姞灞炴�ф睜 鎼滅储 + attrHandleSearch(params, done) { + if (func.isEmptyObject(params)) { + this.searchAttrParams = {}; + } else { + this.searchAttrParams = { + "conditionMap[id]": "*" + params.id + "*" + }; + } + + this.getAttrDialogDta(); + done(); + }, + + //娣诲姞灞炴�ф睜 娓呯┖鎼滅储 + attrHandleReset() { + this.searchAttrParams = {}; + this.getAttrDialogDta(); + }, + + // 娣诲姞灞炴�ф睜 淇濆瓨 + dialogAttrAddClickHandler() { + let hasDuplicate = false; + + // 鍏堝垱寤轰竴涓复鏃舵暟缁勬潵瀛樺偍涓嶉噸澶嶇殑椤� + const newItems = []; + + this.dialogAttrSelectList.forEach(item => { + const exists = this.dialogAttrData.some(existingItem => existingItem.id === item.id); + + if (exists) { + hasDuplicate = true; + return; + } + + // 濡傛灉娌℃湁閲嶅椤癸紝鍒欏皢璇ラ」娣诲姞鍒颁复鏃舵暟缁勪腑 + newItems.push({ + id: item.id, + attributeDataType: item.attributeDataType, + defaultValue: item.defaultValue, + description: item.description + }); + }); + + if (hasDuplicate) { + this.$message.error('璇锋鏌ユ槸鍚︽湁娣诲姞閲嶅椤癸紒'); + } else { + // 濡傛灉娌℃湁閲嶅椤癸紝灏嗘柊椤规坊鍔犲埌 dialogAttrData + this.dialogAttrData.push(...newItems); + this.attrPollDialogVisible = false; + } + }, + + // 鐗堟湰瑙勫垯绠$悊娣诲姞 + versionAddHandler() { + this.dialogVersionVisible = true; + this.dialogVersionKey = Math.random(); // 鎵撳紑鏃跺埛鏂拌〃鏍奸伩鍏嶈〃鏍奸敊琛� + this.dialogVersionLoading = true; + getVersionRuleAllList().then(res => { + const data = res.data.data.map(item => { + return { + id: item.id + } + }); + this.dialogVersionData = data; + this.dialogVersionDefalutData = data; + this.dialogVersionLoading = false; + }).catch(err => { + this.$message.error(err) + }); + }, + + // 鐗堟湰瑙勫垯琛岀偣鍑� + dialogVersionRowClick(row) { + this.dialogVersionSaveRow = row; + }, + + // 鐗堟湰瑙勫垯鎼滅储 + versionHandleSearch(params, done) { + const {id} = params; + + if (!params.id) { + this.dialogVersionData = this.dialogVersionDefalutData; + return done(); + } + ; + + this.dialogVersionData = this.dialogVersionDefalutData.filter(item => { + return item.id && item.id.includes(id); + }); + + done(); + + }, + + // 鐗堟湰绠$悊缃┖ + versionHandleReset() { + this.dialogVersionData = this.dialogVersionDefalutData; + }, + + // 鐗堟湰鍙疯鍒欎繚瀛� + dialogVersionAddClickHandler() { + if (func.isEmptyObject(this.dialogVersionSaveRow)) { + this.$message.error('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�'); + return; + } + this.form.revisionRuleId = this.dialogVersionSaveRow.id; + this.dialogVersionVisible = false; + }, + + // 鐢熷懡鍛ㄦ湡鏂板 + lifeAddHandler(val) { + this.dialogLfeVisible = true; + this.dialogLifeKey = Math.random(); // 鎵撳紑鏃跺埛鏂拌〃鏍奸伩鍏嶈〃鏍奸敊琛� + this.dialogLifeLoading = true; + this.lifeType = val; + gridLifeCycle().then(res => { + const data = res.data.data.map(item => { + return { + id: item.id + } + }); + this.dialogLifeData = data; + this.dialogLifeDefalutData = data; + this.dialogLifeLoading = false + }).catch(err => { + this.$message.error(err) + }); + }, + + // 鐢熷懡鍛ㄦ湡琛岀偣鍑� + dialogLifeRowClick(row) { + this.dialogLifeSaveRow = row; + }, + + // 鐢熷懡鍛ㄦ湡淇濆瓨 + dialogLifeAddClickHandler() { + if (func.isEmptyObject(this.dialogLifeSaveRow)) { + this.$message.error('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�'); + return; + } + if (this.lifeType === 'input') { + this.form.lifeCycleId = this.dialogLifeSaveRow.id; + } else { + const flag = this.dialogLifeTable.some(item => item.id === this.dialogLifeSaveRow.id); + + if (flag) { + this.$message.error('宸插瓨鍦ㄧ浉鍚岀殑鏁版嵁锛岃娣诲姞鍏朵粬鏁版嵁'); + return; + } + this.dialogLifeTable.push(this.dialogLifeSaveRow); + } + this.dialogLfeVisible = false; + }, + + // 鐢熷懡鍛ㄦ湡澶囬�夊垪琛ㄧЩ闄� + dialogDeleteLifeTable(index) { + this.dialogLifeTable.splice(index, 1) + }, + + // 鐢熷懡鍛ㄦ湡鎼滅储 + lifeHandleSearch(params, done) { + const {id} = params; + + if (!params.id) { + this.dialogLifeData = this.dialogLifeDefalutData; + return done(); + } + ; + + this.dialogLifeData = this.dialogLifeDefalutData.filter(item => { + return item.id && item.id.includes(id); + }); + + done(); + + }, + + // 鐢熷懡鍛ㄦ湡閲嶇疆 + lifeHandleReset() { + this.dialogLifeData = this.dialogLifeDefalutData; + }, + + // 鍙兘杈撳叆鑻辨枃姝e垯鏍¢獙 + validateEnglishOnly(rule, value, callback) { + if (!value) { + return callback(new Error('璇疯緭鍏ョ被鍨嬪悕绉�')); + } + if (!/^[A-Za-z]+$/.test(value)) { + return callback(new Error('鍙兘杈撳叆鑻辨枃瀛楁瘝')); + } + callback(); // 楠岃瘉閫氳繃 + }, + + // 鏂板缂栬緫淇濆瓨 + addDialogSavaHandler() { + console.log(this.form) + this.$refs.form.validate((valid) => { + if (valid) { + addLifeCycle(this.form).then(res => { + console.log(res); + }) + } else { + return false; + } + }); + + this.$refs.form.validate((valid) => { + if (valid) { + } else { + return false; + } + }); + + } + } } </script> <style lang="scss" scoped> ::v-deep { + .avue-dialog .el-dialog__body { + padding: 20px 20px 0px 20px; // 涓婂彸涓嬪乏 + margin-bottom: 10px !important; + } + .el-scrollbar__wrap { overflow: auto !important; } @@ -276,8 +970,23 @@ text-align: center; padding-left: 4.5px; } -.descBox{ + +.descBox { width: 32%; margin-left: 20px; } + +.dialogForm { + display: flex; + justify-content: space-around; +} + +.dialogForm > div { + width: 29%; + border: 1px solid #eee; + padding: 25px 20px 5px 10px; /* 涓� 鍙� 涓� 宸� */ + box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2); /* 娣诲姞闃村奖鏁堟灉 */ +} + + </style> diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/enumType/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/enumType/index.vue index 48f06c3..8ef3a18 100644 --- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/enumType/index.vue +++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/enumType/index.vue @@ -84,9 +84,9 @@ </el-form> <span slot="footer" class="dialog-footer"> - <el-button type="primary" @click="rowSaveHandler">纭� 瀹�</el-button> - <el-button @click="dialogVisible = false">鍙� 娑�</el-button> - </span> + <el-button @click="dialogVisible = false">鍙� 娑�</el-button> + <el-button type="primary" @click="rowSaveHandler">纭� 瀹�</el-button> + </span> </el-dialog> <!-- 鏌ョ湅浣跨敤鑼冨洿 --> @@ -243,6 +243,7 @@ dialogData: [], dialogOption: { ...basicOption, + calcHeight: 50, refreshBtn: false, selection: false, column: [ @@ -376,8 +377,12 @@ row, this.$refs.userCrud, this.lastIndex, - (newIndex) => { this.lastIndex = newIndex; }, - () => { this.selectList = []; } + (newIndex) => { + this.lastIndex = newIndex; + }, + () => { + this.selectList = []; + } ); }, @@ -472,61 +477,67 @@ // 瀵硅瘽妗嗘灇涓句繚瀛� rowSaveHandler() { - const lengthStatus = this.dialogData.some(item => item.value.length > this.form.length) - if (lengthStatus) { - this.$message.error('璇锋鏌ユ灇涓惧�兼槸鍚﹁秴杩囨渶澶ч暱搴︼紒') - return; - } - - if (this.form.enumValueDataType === "Integer") { - // 鍒ゆ柇鏄惁鍖呭惈闈炴暟瀛楀瓧绗� - const integerStatus = this.dialogData.some(item => { - if (!/^\-?\d+$/.test(item.value)) { - return true; + const lengthStatus = this.dialogData.some(item => item.value.length > this.form.length); + this.$refs.form.validate((valid) => { + if (valid) { + if (lengthStatus) { + this.$message.error('璇锋鏌ユ灇涓惧�兼槸鍚﹁秴杩囨渶澶ч暱搴︼紒') + return; } - }) - // 鍒ゆ柇鏄惁鏄痠nteger鏍煎紡 - const integerNumStatus = this.dialogData.some(item => { - let numValue = parseInt(item.value); - if (isNaN(numValue) || !Number.isInteger(numValue)) { - return true; + if (this.form.enumValueDataType === "Integer") { + // 鍒ゆ柇鏄惁鍖呭惈闈炴暟瀛楀瓧绗� + const integerStatus = this.dialogData.some(item => { + if (!/^\-?\d+$/.test(item.value)) { + return true; + } + }) + + // 鍒ゆ柇鏄惁鏄痠nteger鏍煎紡 + const integerNumStatus = this.dialogData.some(item => { + let numValue = parseInt(item.value); + if (isNaN(numValue) || !Number.isInteger(numValue)) { + return true; + } + }) + + if (integerStatus || integerNumStatus) { + this.$message.error('鏋氫妇鍊煎繀椤绘槸Integer绫诲瀷'); + return; + } } - }) - if (integerStatus || integerNumStatus) { - this.$message.error('鏋氫妇鍊煎繀椤绘槸Integer绫诲瀷'); - return; + if (this.dialogType === 'add') { + let params = { + ...this.form, + items: this.dialogData + } + addEnumType(params).then(res => { + if (res.data.code === 200) { + this.$message.success(res.data.obj); + this.dialogVisible = false; + this.getTableList(); + } + }) + } else if (this.dialogType === 'edit') { + let params = { + ...this.form, + items: this.dialogData, + oid: this.editRow.oid, + ts: this.editRow.ts + } + updateEnumType(params).then(res => { + if (res.data.code === 200) { + this.$message.success(res.data.obj); + this.dialogVisible = false; + this.getTableList(); + } + }) + } + } else { + return false; } - } - - if (this.dialogType === 'add') { - let params = { - ...this.form, - items: this.dialogData - } - addEnumType(params).then(res => { - if (res.data.code === 200) { - this.$message.success(res.data.obj); - this.dialogVisible = false; - this.getTableList(); - } - }) - } else if (this.dialogType === 'edit') { - let params = { - ...this.form, - items: this.dialogData, - oid: this.editRow.oid, - ts: this.editRow.ts - } - updateEnumType(params).then(res => { - if (res.data.code === 200) { - this.$message.success(res.data.obj); - this.dialogVisible = false; - this.getTableList(); - } - }) - } + }); }, // 鏋氫妇椤规柊澧� diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/lifeCycle/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/lifeCycle/index.vue index 719c75d..142b70c 100644 --- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/lifeCycle/index.vue +++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/lifeCycle/index.vue @@ -374,6 +374,8 @@ startStatus: params.startStatus, startStatusName: params.startStatusName, description: params.description, + ts:params.ts, + oid:params.oid, bounds: params.nodes.map(node => ({ name: node.id, cellx: String(node.x), @@ -392,10 +394,12 @@ : () => addLifeCycle(transformedData); getFunction().then(res => { + console.log(res); if (res.data.code === 200) { this.$message.success(res.data.obj); this.createdHandler(); // this.handleResetTree(); + this.rowData = {}; this.$store.dispatch('updateMethodBtn', Object.keys(this.rowData).length > 0); } }); diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/linkType/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/linkType/index.vue index 706fd41..aa5e091 100644 --- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/linkType/index.vue +++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/linkType/index.vue @@ -41,7 +41,7 @@ <el-main> <basic-container> - <div> + <div style="height: 380px"> <el-descriptions :column="2" border class="margin-top" size="medium"> <el-descriptions-item :contentStyle="descriptionOption.contentStyle" :labelStyle="descriptionOption.labelStyle"> @@ -94,11 +94,13 @@ <i :class="icons.from"></i> From绔被鍨� </template> - <span v-for="item in nodeRow.btmItemsFrom" style="margin-left:2px;"> - <el-tag effect="plain" style="margin-top: 2px;"> + <div style="height: 60px;overflow-y: auto;display: flex;flex-wrap: wrap"> + <span v-for="item in nodeRow.btmItemsFrom" style="margin-left:3px;"> + <el-tag effect="plain" style="margin-top: 3px;"> {{ item }} </el-tag> - </span> + </span> + </div> </el-descriptions-item> <el-descriptions-item :contentStyle="descriptionOption.contentStyle" :labelStyle="descriptionOption.labelStyle"> @@ -128,11 +130,13 @@ <i :class="icons.to"></i> To绔被鍨� </template> - <span v-for="item in nodeRow.btmItemsTo" style="margin-left:2px;"> - <el-tag effect="plain" style="margin-top: 2px;"> + <div style="height: 60px;overflow-y: auto;display: flex;flex-wrap: wrap"> + <span v-for="item in nodeRow.btmItemsTo" style="margin-left:2px;"> + <el-tag effect="plain" style="margin-top: 2px;"> {{ item }} - </el-tag> - </span> + </el-tag> + </span> + </div> </el-descriptions-item> <el-descriptions-item :contentStyle="descriptionOption.contentStyle" :labelStyle="descriptionOption.labelStyle"> @@ -155,7 +159,7 @@ </el-descriptions> </div> - <div style="margin-top: 20px"> + <div style="margin-top: 30px"> <h3>灞炴�ф睜鍒楄〃</h3> <avue-crud :data="tableData" @@ -197,10 +201,6 @@ <div class="centerForm"> <el-form-item label="Form绔被鍨嬶細" label-width="110px"> - <!-- <el-button v-if="!form.btmItemsFrom" plain size="mini" type="success"--> - <!-- @click="FormItemReferChange('form')">娣诲姞--> - <!-- </el-button>--> - <!-- <el-input v-if="form.btmItemsFrom" v-model="form.btmItemsFrom"></el-input>--> <div style="display: flex; align-items: center"> <div style="height: 200px; width: 280px; border: 1px solid #bdbbbb;overflow-y: auto"> <!-- 鍐呭 --> @@ -445,6 +445,7 @@ highlightCurrentRow: true, searchMenuSpan: 8, searchLabelWidth: 100, + calcHeight: 30, column: [ { label: '涓氬姟绫诲瀷鍚�', @@ -575,7 +576,7 @@ editBtn: false, refreshBtn: false, selection: false, - height: 300, + height: 200, addBtn: false, // index:false, column: [ @@ -597,6 +598,7 @@ { label: '璇存槑', prop: 'description', + overHidden: true } ] }, @@ -623,6 +625,7 @@ // index:false, addBtn: false, menu: false, + calcHeight: -40, column: [ { label: '灞炴�у悕', @@ -642,6 +645,7 @@ { label: '璇存槑', prop: 'description', + overHidden: true } ] }, @@ -661,7 +665,7 @@ desc: 'el-icon-chat-line-square' }, bizLastIndex: null, - attrLastIndex:null + attrLastIndex: null } }, created() { @@ -873,8 +877,12 @@ row, this.$refs.dialogAttrCrud, this.attrLastIndex, - (newIndex) => { this.attrLastIndex = newIndex; }, - () => { this.selectList = []; } + (newIndex) => { + this.attrLastIndex = newIndex; + }, + () => { + this.selectList = []; + } ); }, @@ -904,8 +912,6 @@ this.bizFormData = []; this.bizToData = []; this.dialogBottomData = []; - console.log(this.form); - console.log('--', this.nodeRow) }, // 娣诲姞灞炴�ф睜 淇濆瓨 @@ -955,9 +961,13 @@ //娣诲姞灞炴�ф睜 鎼滅储 attrHandleSearch(params, done) { - this.searchAttrParams = { - "conditionMap[id]": "*" + params.id + "*" - }; + if (func.isEmptyObject(params)) { + this.searchAttrParams = {}; + } else { + this.searchAttrParams = { + "conditionMap[id]": "*" + params.id + "*" + }; + } this.getAttrDialogDta(); done(); }, @@ -1011,8 +1021,12 @@ row, this.$refs.bizTypeCrud, this.bizLastIndex, - (newIndex) => { this.bizLastIndex = newIndex; }, - () => { this.selectList = []; } + (newIndex) => { + this.bizLastIndex = newIndex; + }, + () => { + this.selectList = []; + } ); }, @@ -1087,16 +1101,22 @@ this.$message.error('form绔笟鍔$被鍨嬪拰to绔被鍨嬪潎涓嶈兘涓虹┖锛�') return; } - this.form.btmItemsFrom = this.bizFormData.map(item => item.name); - this.form.btmItemsTo = this.bizToData.map(item => item.name); - this.form.attributes = this.dialogBottomData.map(item => item.id); - let flag = this.title === 'add' ? true : false; - addAndEditLink(flag, this.form).then(res => { - if (res.data.code === 200) { - this.visible = false; - this.$message.success(res.data.msg); - this.resetForm(); - this.getTreeList(); + this.$refs.form.validate((valid) => { + if (valid) { + this.form.btmItemsFrom = this.bizFormData.map(item => item.name); + this.form.btmItemsTo = this.bizToData.map(item => item.name); + this.form.attributes = this.dialogBottomData.map(item => item.id); + let flag = this.title === 'add' ? true : false; + addAndEditLink(flag, this.form).then(res => { + if (res.data.code === 200) { + this.visible = false; + this.$message.success(res.data.msg); + this.resetForm(); + this.getTreeList(); + } + }); + } else { + return false; } }); }, diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/statusPool/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/statusPool/index.vue index 41fe5ec..ec3de1a 100644 --- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/statusPool/index.vue +++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/statusPool/index.vue @@ -2,10 +2,10 @@ <basic-container> <avue-crud ref="useCrud" - :table-loading="loading" :data="data" :option="option" :page.sync="page" + :table-loading="loading" @selection-change="selectChange" @row-click="rowClickHandler" @refresh-change="handleRefresh" @@ -107,7 +107,7 @@ name: "index", data() { return { - loading:false, + loading: false, data: [], option: { ...basicOption, @@ -178,8 +178,8 @@ ] }, visible: false, - selectList:[], - lastIndex:null, + selectList: [], + lastIndex: null, page: { currentPage: 1, pageSize: 15, @@ -205,12 +205,12 @@ }, // 琛ㄦ牸鍒锋柊 - handleRefresh(){ + handleRefresh() { this.getTreeList(); }, // 琛ㄦ牸澶氶�� - selectChange(row){ + selectChange(row) { this.selectList = row; }, @@ -232,8 +232,12 @@ row, this.$refs.useCrud, this.lastIndex, - (newIndex) => { this.lastIndex = newIndex; }, - () => { this.selectList = []; } + (newIndex) => { + this.lastIndex = newIndex; + }, + () => { + this.selectList = []; + } ); }, @@ -277,7 +281,7 @@ }, // 琛屽崟涓垹闄� - delRowClickHandler(row){ + delRowClickHandler(row) { this.$confirm('鎮ㄧ‘瀹氳鍒犻櫎鎵�閫夋嫨鐨勬暟鎹悧锛�', '鎻愮ず', { confirmButtonText: '纭畾', cancelButtonText: '鍙栨秷', @@ -315,18 +319,23 @@ // 鍒涘缓鎴栫紪杈戜繚瀛� addSaveHandler() { const saveFunction = this.dialogTitle === 'add' ? addSave : editSave; - - saveFunction(this.form).then(res => { - if (res.data.code === 200) { - this.$message.success(res.data.obj); - this.loading = true; - this.getTreeList(); - this.visible = false; + this.$refs.form.validate((valid) => { + if (valid) { + saveFunction(this.form).then(res => { + if (res.data.code === 200) { + this.$message.success(res.data.obj); + this.loading = true; + this.getTreeList(); + this.visible = false; + } else { + this.$message.error(res.data.obj); + } + }).catch(error => { + this.$message.error(error); + }); } else { - this.$message.error(res.data.obj); + return false; } - }).catch(error => { - this.$message.error(error); }); }, diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/versioning/index.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/versioning/index.vue index 14234ef..aeb9eea 100644 --- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/versioning/index.vue +++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/versioning/index.vue @@ -354,17 +354,22 @@ // 鏂板 缂栬緫 淇濆瓨 addSaveHandler() { const saveFunction = this.dialogTitle === 'add' ? addVersionRule : updateVersionRule; - - saveFunction(this.form).then(res => { - if (res.data.code === 200) { - this.$message.success(res.data.obj); - this.getTreeList(); - this.visible = false; + this.$refs.form.validate((valid) => { + if (valid) { + saveFunction(this.form).then(res => { + if (res.data.code === 200) { + this.$message.success(res.data.obj); + this.getTreeList(); + this.visible = false; + } else { + this.$message.error(res.data.obj); + } + }).catch(error => { + this.$message.error(error); + }); } else { - this.$message.error(res.data.obj); + return false; } - }).catch(error => { - this.$message.error(error); }); }, @@ -441,7 +446,7 @@ } ; - this.checkViewData = this.checkViewData.filter(item => { + this.checkViewData = this.checkViewDataSearch.filter(item => { return item.source && item.source.includes(source); }); diff --git a/Source/plt-web/plt-web-ui/src/views/system/department/index.vue b/Source/plt-web/plt-web-ui/src/views/system/department/index.vue index a87fcba..c8f755e 100644 --- a/Source/plt-web/plt-web-ui/src/views/system/department/index.vue +++ b/Source/plt-web/plt-web-ui/src/views/system/department/index.vue @@ -115,6 +115,7 @@ refreshBtn: false, addBtn: false, menu: false, + calcHeight:80, column: [ { label: '閮ㄩ棬', -- Gitblit v1.9.3