From 5c2f48d14c7606405082a35dd9224983c86b74d5 Mon Sep 17 00:00:00 2001
From: wangting <675591594@qq.com>
Date: 星期四, 05 十二月 2024 18:04:12 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/plt-web/plt-web-ui/src/views/modelingMenu/modeling/businessType/index.vue | 143 ++++++++++++++++++++++++++++++-----------------
1 files changed, 90 insertions(+), 53 deletions(-)
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 88a6823..b041053 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
@@ -35,8 +35,8 @@
</div>
<div style="display: flex;justify-content:left;margin-top: 15px;">
<div class="descBox" style="width: 40%">
- <el-descriptions :column="1" border class="margin-top" size="medium" title="灞炴�т俊鎭�">
- <el-descriptions-item :contentStyle="descriptionOption.contentStyle"
+ <el-descriptions :column="2" border class="margin-top" size="medium" title="灞炴�т俊鎭�">
+ <el-descriptions-item :span="12" :contentStyle="descriptionOption.contentStyle"
:labelStyle="descriptionOption.labelStyle">
<template slot="label">
鍚嶇О
@@ -50,7 +50,19 @@
</template>
<el-tag v-if="nodeRow.name">{{ nodeRow.name }}</el-tag>
</el-descriptions-item>
- <el-descriptions-item :contentStyle="descriptionOption.contentStyle"
+ <el-descriptions-item :contentStyle="descriptionOption.contentStyle+';min-width: 100px;'"
+ :labelStyle="descriptionOption.labelStyle">
+ <template slot="label">
+ 鍥炬爣
+ </template>
+ <span class="avue-icon avue-icon--small" style="display: block">
+ <svg v-if="nodeRow.imageName && nodeRow.imageName.indexOf('#')==0" aria-hidden="true">
+ <use :xlink:href="nodeRow.imageName"></use>
+ </svg>
+ <i v-else :class="nodeRow.imageName"></i>
+ </span>
+ </el-descriptions-item>
+ <el-descriptions-item :span="12" :contentStyle="descriptionOption.contentStyle"
:labelStyle="descriptionOption.labelStyle">
<template slot="label">
瀹炵幇绫�
@@ -60,7 +72,7 @@
<el-tag style="max-width: 100%;overflow: hidden;display: block">{{ nodeRow.implClass }}</el-tag>
</el-tooltip>
</el-descriptions-item>
- <el-descriptions-item :contentStyle="descriptionOption.contentStyle"
+ <el-descriptions-item :span="12" :contentStyle="descriptionOption.contentStyle"
:labelStyle="descriptionOption.labelStyle">
<template slot="label">
鎻忚堪
@@ -69,7 +81,7 @@
</el-descriptions-item>
</el-descriptions>
</div>
- <div class="descBox" style="width: 25%;">
+ <div class="descBox" style="width: 24%;">
<el-descriptions :column="1" border class="margin-top" size="medium" title="鐗堟湰瑙勫垯">
<el-descriptions-item :contentStyle="descriptionOption.contentStyle"
:labelStyle="descriptionOption.labelStyle">
@@ -121,7 +133,7 @@
</el-descriptions>
</div>
- <div class="descBox" style="width: calc(35% - 40px);margin-right: 0">
+ <div class="descBox" style="width: calc(36% - 40px);margin-right: 0">
<el-descriptions :column="1" border class="margin-top" size="medium" title="鐢熷懡鍛ㄦ湡">
<el-descriptions-item :contentStyle="descriptionOption.contentStyle"
:labelStyle="descriptionOption.labelStyle">
@@ -129,6 +141,16 @@
鐢熷懡鍛ㄦ湡
</template>
<el-tag v-if="nodeRow.lifeCycleId">{{ nodeRow.lifeCycleId }}</el-tag>
+ </el-descriptions-item>
+ <el-descriptions-item :contentStyle="descriptionOption.contentStyle"
+ :labelStyle="descriptionOption.labelStyle">
+ <template slot="label">
+ 澶囬�夌敓鍛藉懆鏈�
+ </template>
+ <div v-if="nodeRow.lifeCycleIds">
+ <el-tag v-for="item in nodeRow.lifeCycleIds.split(',')" style="margin-right: 5px;">{{ item }}</el-tag>
+ </div>
+
</el-descriptions-item>
</el-descriptions>
</div>
@@ -158,20 +180,30 @@
<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-row :span="24">
+ <el-col :span="12">
+ <el-form-item label="鏍囩锛�" prop="name">
+ <el-input v-model="form.name"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鍥炬爣锛�" prop="imageName">
+ <avue-input-icon v-model="form.imageName" :icon-list="iconList" placeholder="璇烽�夋嫨鍥炬爣">
+ </avue-input-icon>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-form-item label="缁ф壙鑷細" prop="fName">
<avue-input-tree :disabled="title === 'add'"
v-model="form.fName"
placeholder="璇烽�夋嫨涓氬姟绫诲瀷"
:props="{label: 'id', value: 'id',children: 'children'}"
:dic="inheritTreeData"></avue-input-tree>
</el-form-item>
- <el-form-item label="瀹炵幇绫伙細">
+ <el-form-item label="瀹炵幇绫伙細" prop="implClass">
<el-input v-model="form.implClass"></el-input>
</el-form-item>
- <el-form-item label="鎻忚堪">
+ <el-form-item label="鎻忚堪" prop="description">
<el-input v-model="form.description" :rows="2" type="textarea"></el-input>
</el-form-item>
</div>
@@ -215,7 +247,7 @@
:props="{label: 'id', value: 'id'}"
:dic="lifeData"></avue-select>
</el-form-item>
- <el-form-item label="澶囬�夌敓鍛藉懆鏈熷垪琛細" label-width="138px">
+ <el-form-item label="澶囬�夌敓鍛藉懆鏈熷垪琛細" label-width="138px" prop="subLifeCycleIdList">
<avue-select multiple
:filterable="true"
v-model="form.subLifeCycleIdList"
@@ -229,17 +261,18 @@
</div>
</el-form>
<div class="bottomForm">
- <h3 style="margin-bottom: 10px;">灞炴�ф睜鍒楄〃</h3>
<avue-crud
+ size="mini"
:data="dialogAttrData"
:option="dialogAttrOption"
@row-del="dialogBottomAttrDel">
<template slot="menuLeft">
- <el-button icon="el-icon-plus" size="small" type="primary" @click="addDialogClickHandler">鍒涘缓</el-button>
+ <h3 style="display: inline-block;margin-right: 20px;margin-bottom: 10px;">灞炴�ф睜鍒楄〃</h3>
+ <el-button icon="el-icon-plus" size="mini" type="primary" @click="addDialogClickHandler">鍒涘缓</el-button>
</template>
</avue-crud>
</div>
- <span slot="footer" class="dialog-footer avue-dialog__footer">
+ <span slot="footer" class="dialog-footer">
<el-button type="primary" @click="addDialogSavaHandler">纭� 瀹�</el-button>
<el-button @click="addDialogClose">鍙� 娑�</el-button>
</span>
@@ -271,8 +304,8 @@
>
</avue-crud>
<span slot="footer" class="dialog-footer">
- <el-button @click="dialogAttrClose">鍙� 娑�</el-button>
<el-button type="primary" @click="dialogAttrAddClickHandler">纭� 瀹�</el-button>
+ <el-button @click="dialogAttrClose">鍙� 娑�</el-button>
</span>
</el-dialog>
@@ -409,11 +442,13 @@
import func from "@/util/func";
import {getUsedVersionRuleList, getVersionRuleAllList} from "@/api/modeling/version/api";
import {gridLifeCycle} from "@/api/modeling/lifeCycle/api";
+import iconList from "@/config/iconList";
export default {
name: "index",
data() {
return {
+ iconList: iconList,
indexLoading: false,
indexFormRead: false,
indexAttrRow: {},
@@ -496,6 +531,7 @@
index: false,
selection: false,
refreshBtn: false,
+ header:false,
column: [
{
label: '绫诲瀷鍚�',
@@ -577,12 +613,16 @@
height: 450,
searchMenuSpan: 8,
header: false,
+ selectable:function(row){
+ return row.selectable;
+ },
column: [
{
label: '灞炴�у悕',
prop: 'id',
sortable: true,
search: true,
+ width:260
},
{
label: '灞炴�х被鍨�',
@@ -594,6 +634,7 @@
label: '鍒濆鍊�',
prop: 'defaultValue',
sortable: true,
+ width: 200
},
{
label: '璇存槑',
@@ -610,6 +651,9 @@
{required: true, message: '璇疯緭绫诲瀷鍚嶇О', trigger: 'blur'},
{validator: this.validateEnglishOnly, trigger: 'blur'}
],
+ imageName:[
+ {required: true, message: '璇烽�夋嫨鍥炬爣', trigger: 'blur'},
+ ],
revLevel: [
{required: true, message: '璇烽�夋嫨鐗堟湰瑙勫垯', trigger: 'blur'},
],
@@ -623,8 +667,10 @@
editBtn: false,
refreshBtn: false,
selection: false,
- height: 210,
+ height: 220,
addBtn: false,
+ gridBtn:false,
+ columnBtn:false,
menuWidth:100,
// index:false,
column: [
@@ -632,12 +678,14 @@
label: '灞炴�у悕',
prop: 'id',
sortable: true,
+ width:260,
},
{
prop: 'btmTypeId',
label: '涓氬姟绫诲瀷',
- sortable: true
+ sortable: true,
+ width: 200
},
{
label: '灞炴�х被鍨�',
@@ -649,7 +697,7 @@
label: '鍒濆鍊�',
prop: 'defaultValue',
sortable: true,
- width:150,
+ width:200,
},
{
label: '璇存槑',
@@ -673,22 +721,26 @@
{
prop: 'id',
label: '灞炴�у悕',
- sortable: true
+ sortable: true,
+ width:260
},
{
prop: 'btmTypeId',
label: '涓氬姟绫诲瀷',
- sortable: true
+ sortable: true,
+ width:200
},
{
prop: 'attributeDataType',
label: '灞炴�х被鍨�',
- sortable: true
+ sortable: true,
+ width:150
},
{
prop: 'defaultValue',
label: '榛樿鍊�',
- sortable: true
+ sortable: true,
+ width: 200
},
{
prop: 'description',
@@ -734,8 +786,8 @@
}
],
descriptionOption: {
- labelStyle: 'text-align:center;width:100px;',
- contentStyle: 'max-width:200px;text-align:center;word-break;break-all;'
+ labelStyle: 'text-align:center;width:110px;',
+ contentStyle: 'min-width:200px;text-align:center;word-break:break-all;'
},
icons: {
id: 'el-icon-finished',
@@ -880,7 +932,7 @@
this.form = {...this.nodeRow};
this.form.inputRevisionFlag = JSON.parse(this.form.inputRevisionFlag); // 瀛楃涓瞗alse杞崲涓哄竷灏斿��
// this.form.fName = this.nodeRow.id === 'topNode' ? "" : this.nodeRow.id;
- this.form.subLifeCycleIdList = this.nodeRow.lifeCycleIds.split(',');
+ this.form.subLifeCycleIdList = this.nodeRow.lifeCycleIds?this.nodeRow.lifeCycleIds.split(','):[];
this.dialogAttrData = this.nodeRow.attributes ? JSON.parse(this.nodeRow.attributes) : [];
function processChildren(item,fName) {
if (item.children && item.children.length > 0) {
@@ -929,8 +981,11 @@
// 鏌ヨ灞炴�ф睜鍒楄〃鏁版嵁
getAttrDialogDta() {
gridAttribute(this.attrPage.currentPage, this.attrPage.pageSize, this.searchAttrParams).then(res => {
- const data = res.data.data;
- this.dialogAttrSaveData = data;
+ const data = res.data.data.map(item=>{
+ item.selectable=!this.dialogAttrData.some(existingItem => existingItem.id === item.id);
+ return item;
+ });
+ this.dialogAttrSaveData=data;
this.attrPage.total = res.data.total;
this.dialogAttrLoading = false;
}).catch(err => {
@@ -951,7 +1006,9 @@
// 娣诲姞灞炴�ф睜 琛岀偣鍑�
dialogAttrRowClickHandler(row) {
-
+ if(!row.selectable){
+ return;
+ }
func.rowClickHandler(
row,
this.$refs.dialogAttrCrud,
@@ -999,35 +1056,15 @@
// 娣诲姞灞炴�ф睜 淇濆瓨
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({
+ this.dialogAttrData.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;
- }
+ this.attrPollDialogVisible = false;
},
// 灞炴�ф睜鍒犻櫎
@@ -1411,7 +1448,7 @@
.dialogForm > div {
border: 1px solid #EBEEF5;
border-radius: 2px;
- padding: 25px 20px 5px 10px; /* 涓� 鍙� 涓� 宸� */
+ padding: 15px 20px 0 10px; /* 涓� 鍙� 涓� 宸� */
box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1); /* 娣诲姞闃村奖鏁堟灉 */
}
--
Gitblit v1.9.3