数字合约带逻辑空间的修改
Showing
5 changed files
with
55 additions
and
2 deletions
| ... | @@ -65,6 +65,9 @@ const updateFrequencyDictList: any = ref([]); | ... | @@ -65,6 +65,9 @@ const updateFrequencyDictList: any = ref([]); |
| 65 | /** 所属科室下拉列表 */ | 65 | /** 所属科室下拉列表 */ |
| 66 | const medDepartmentCodeList: any = ref([]); | 66 | const medDepartmentCodeList: any = ref([]); |
| 67 | 67 | ||
| 68 | /** 逻辑空间下拉列表 */ | ||
| 69 | const logicSpaceList: any = ref([]); | ||
| 70 | |||
| 68 | const getArea = (node, resolve) => { | 71 | const getArea = (node, resolve) => { |
| 69 | const { level } = node | 72 | const { level } = node |
| 70 | let params = { | 73 | let params = { |
| ... | @@ -426,6 +429,22 @@ const baseInfoFormItems = ref([ | ... | @@ -426,6 +429,22 @@ const baseInfoFormItems = ref([ |
| 426 | required: true, | 429 | required: true, |
| 427 | }, | 430 | }, |
| 428 | { | 431 | { |
| 432 | label: "逻辑空间", | ||
| 433 | type: "select", | ||
| 434 | placeholder: "请选择", | ||
| 435 | field: "spaceGuid", | ||
| 436 | default: '', | ||
| 437 | props: { | ||
| 438 | value: 'value', | ||
| 439 | label: 'label' | ||
| 440 | }, | ||
| 441 | multiple: false, | ||
| 442 | options: logicSpaceList.value, | ||
| 443 | filterable: true, | ||
| 444 | required: false, //非必填,只能选择跟领域匹配的逻辑空间 | ||
| 445 | clearable: true, | ||
| 446 | }, | ||
| 447 | { | ||
| 429 | label: '资源描述', | 448 | label: '资源描述', |
| 430 | type: 'textarea', | 449 | type: 'textarea', |
| 431 | placeholder: '该数据资源主要包含的信息,数据更新方式等。', | 450 | placeholder: '该数据资源主要包含的信息,数据更新方式等。', |
| ... | @@ -682,6 +701,8 @@ const baseSelectChange = (val, item, row) => { | ... | @@ -682,6 +701,8 @@ const baseSelectChange = (val, item, row) => { |
| 682 | } | 701 | } |
| 683 | } else if (item.field == 'domain') { | 702 | } else if (item.field == 'domain') { |
| 684 | row.scenario = ''; //清空下应用场景 | 703 | row.scenario = ''; //清空下应用场景 |
| 704 | // TODO,更新下逻辑空间的列表,顺便清空值。 | ||
| 705 | row.spaceGuid = ''; | ||
| 685 | setFormItems(row); | 706 | setFormItems(row); |
| 686 | } | 707 | } |
| 687 | } | 708 | } |
| ... | @@ -1018,6 +1039,9 @@ onBeforeMount(() => { | ... | @@ -1018,6 +1039,9 @@ onBeforeMount(() => { |
| 1018 | proxy.$ElMessage.error(res.msg); | 1039 | proxy.$ElMessage.error(res.msg); |
| 1019 | } | 1040 | } |
| 1020 | }) | 1041 | }) |
| 1042 | |||
| 1043 | // TODO 获取逻辑空间下拉列表。 | ||
| 1044 | |||
| 1021 | }); | 1045 | }); |
| 1022 | 1046 | ||
| 1023 | const cancel = () => { | 1047 | const cancel = () => { | ... | ... |
| ... | @@ -1328,7 +1328,11 @@ const respParamsTableInfo = ref({ | ... | @@ -1328,7 +1328,11 @@ const respParamsTableInfo = ref({ |
| 1328 | <div v-if="detailInfo.domain == '004'">{{ '所属主题:' + (detailInfo.subjectDomainName || '--') }}</div> | 1328 | <div v-if="detailInfo.domain == '004'">{{ '所属主题:' + (detailInfo.subjectDomainName || '--') }}</div> |
| 1329 | </div> | 1329 | </div> |
| 1330 | <!-- </template> --> | 1330 | <!-- </template> --> |
| 1331 | <div v-show="detailInfo.rightMainName" class="applicationScenarios">{{ '权利主体:' + detailInfo.rightMainName }} | 1331 | <div class="row-extra-desc" v-if="detailInfo.spaceName"> |
| 1332 | <div class="per-extra-desc">{{ '权利主体:' + detailInfo.rightMainName }}</div> | ||
| 1333 | <div>{{ '逻辑空间:' + detailInfo.spaceName }}</div> | ||
| 1334 | </div> | ||
| 1335 | <div v-else v-show="detailInfo.rightMainName" class="applicationScenarios">{{ '权利主体:' + detailInfo.rightMainName }} | ||
| 1332 | </div> | 1336 | </div> |
| 1333 | <div class="applicationScenarios" | 1337 | <div class="applicationScenarios" |
| 1334 | :style="{ 'margin-right': (isTruncated && !isExpanded) ? '30px' : '0px', WebkitLineClamp: (!isTruncated ? 'inherit' : (isExpanded ? 'inherit' : 1)), WebkitBoxOrient: 'vertical' }"> | 1338 | :style="{ 'margin-right': (isTruncated && !isExpanded) ? '30px' : '0px', WebkitLineClamp: (!isTruncated ? 'inherit' : (isExpanded ? 'inherit' : 1)), WebkitBoxOrient: 'vertical' }"> | ... | ... |
| ... | @@ -191,6 +191,10 @@ const props = defineProps({ | ... | @@ -191,6 +191,10 @@ const props = defineProps({ |
| 191 | isReport: { | 191 | isReport: { |
| 192 | type: Boolean, | 192 | type: Boolean, |
| 193 | default: false | 193 | default: false |
| 194 | }, | ||
| 195 | templateJson: { // 数据产品来自所属逻辑空间配置的策略模板 | ||
| 196 | type: Array<any>, | ||
| 197 | default: [] | ||
| 194 | } | 198 | } |
| 195 | }) | 199 | }) |
| 196 | 200 | ||
| ... | @@ -641,6 +645,15 @@ const arraySpanMethod = ({ row, column, rowIndex, columnIndex }) => { | ... | @@ -641,6 +645,15 @@ const arraySpanMethod = ({ row, column, rowIndex, columnIndex }) => { |
| 641 | 645 | ||
| 642 | /** 弹出模板选择对话框 */ | 646 | /** 弹出模板选择对话框 */ |
| 643 | const invokeTemplate = () => { | 647 | const invokeTemplate = () => { |
| 648 | // TODO,判断是否有策略模板信息。 | ||
| 649 | if (props.templateJson?.length) { | ||
| 650 | proxy.$openMessageBox("使用模板会覆盖现有策略信息,确定要使用产品所在逻辑空间的模板配置吗?", () => { | ||
| 651 | strategyValueInfo.value = transferValueToNew(props.templateJson, true); | ||
| 652 | }, () => { | ||
| 653 | proxy.$ElMessage.info("已取消"); | ||
| 654 | }) | ||
| 655 | return; | ||
| 656 | } | ||
| 644 | /** 调用获取启用的模板列表接口,如果返回null则提示没有可调用的模板。 */ | 657 | /** 调用获取启用的模板列表接口,如果返回null则提示没有可调用的模板。 */ |
| 645 | getValidContractTemplateList().then((res: any) => { | 658 | getValidContractTemplateList().then((res: any) => { |
| 646 | if (res?.code == proxy.$passCode) { | 659 | if (res?.code == proxy.$passCode) { | ... | ... |
| ... | @@ -241,6 +241,7 @@ const productTableInfo = ref({ | ... | @@ -241,6 +241,7 @@ const productTableInfo = ref({ |
| 241 | { label: "数据产品编码", field: "dataProductId", width: 261 }, | 241 | { label: "数据产品编码", field: "dataProductId", width: 261 }, |
| 242 | { label: "产品类型", field: "dataProductTypeName", width: 100 }, | 242 | { label: "产品类型", field: "dataProductTypeName", width: 100 }, |
| 243 | { label: "所属主体名称", field: "dataProductEntityName", width: 200 }, | 243 | { label: "所属主体名称", field: "dataProductEntityName", width: 200 }, |
| 244 | { label: "逻辑空间", field: "logicSpaceName", width: 200 }, //TODO,字段名称 | ||
| 244 | { label: "产品简介", field: "dataProductAbstract", width: 240 }, | 245 | { label: "产品简介", field: "dataProductAbstract", width: 240 }, |
| 245 | ], | 246 | ], |
| 246 | editInfo: { | 247 | editInfo: { |
| ... | @@ -308,6 +309,8 @@ const hanldeTableSelectChange = (val, scope, item) => { | ... | @@ -308,6 +309,8 @@ const hanldeTableSelectChange = (val, scope, item) => { |
| 308 | scope.row.dataProductGuid = productItem?.productGuid; | 309 | scope.row.dataProductGuid = productItem?.productGuid; |
| 309 | scope.row.dataProductType = productItem?.productType; | 310 | scope.row.dataProductType = productItem?.productType; |
| 310 | scope.row.dataProductTypeName = productItem?.productTypeName; | 311 | scope.row.dataProductTypeName = productItem?.productTypeName; |
| 312 | //TODO,逻辑空间名称 | ||
| 313 | scope.row.logicSpaceName = productItem?.logicSpaceName; | ||
| 311 | /** 选择了产品,需要重新查询去重字段 */ | 314 | /** 选择了产品,需要重新查询去重字段 */ |
| 312 | if (productItem?.productGuid) { | 315 | if (productItem?.productGuid) { |
| 313 | getDamFieldsByProductGuid(productItem?.productGuid, isDataUse.value ? 'Y' : 'N').then((res: any) => { | 316 | getDamFieldsByProductGuid(productItem?.productGuid, isDataUse.value ? 'Y' : 'N').then((res: any) => { |
| ... | @@ -326,9 +329,17 @@ const hanldeTableSelectChange = (val, scope, item) => { | ... | @@ -326,9 +329,17 @@ const hanldeTableSelectChange = (val, scope, item) => { |
| 326 | res?.msg && proxy.$ElMessage.error(res?.msg) | 329 | res?.msg && proxy.$ElMessage.error(res?.msg) |
| 327 | } | 330 | } |
| 328 | }) | 331 | }) |
| 332 | // TODO,需要重新更新数据使用方的下拉列表,如果逻辑空间是空值,则可以选择所有企业,否则只能选择逻辑空间下的成员企业。 | ||
| 333 | if (productItem?.logicSpaceName) { | ||
| 334 | // 建议使用方下拉列表企业包含所在的逻辑空间。一个企业可能有多个逻辑空间。或者根据逻辑空间获取成员列表。 | ||
| 335 | // tenantList.value.filter(); | ||
| 336 | // 调用逻辑空间接口,因为策略模板也需要使用。 | ||
| 337 | //templateJson.value = res.data; | ||
| 338 | } | ||
| 329 | } else { | 339 | } else { |
| 330 | productFieldList.value = initProductFieldValue.value; | 340 | productFieldList.value = initProductFieldValue.value; |
| 331 | annonFieldsList.value = initProductFieldValue.value; | 341 | annonFieldsList.value = initProductFieldValue.value; |
| 342 | // TODO,需要更新数据使用方下拉列表 | ||
| 332 | } | 343 | } |
| 333 | // 连接器只能选择数据提供方的产品,不需要切换了 | 344 | // 连接器只能选择数据提供方的产品,不需要切换了 |
| 334 | // let nodeInfo = nodeInfoFormRef.value.formInline; | 345 | // let nodeInfo = nodeInfoFormRef.value.formInline; | ... | ... |
| ... | @@ -316,7 +316,8 @@ const productTableInfo = ref({ | ... | @@ -316,7 +316,8 @@ const productTableInfo = ref({ |
| 316 | { label: "序号", type: "index", width: TableColumnWidth.INDEX, align: "center" }, | 316 | { label: "序号", type: "index", width: TableColumnWidth.INDEX, align: "center" }, |
| 317 | { label: "数据产品", field: "dataProductName", width: 270 }, | 317 | { label: "数据产品", field: "dataProductName", width: 270 }, |
| 318 | { label: "数据产品编码", field: "dataProductId", width: 261 }, | 318 | { label: "数据产品编码", field: "dataProductId", width: 261 }, |
| 319 | { label: "所属主体名称", field: "dataProductEntityName", width: 240 }, | 319 | { label: "所属主体名称", field: "dataProductEntityName", width: 200 }, |
| 320 | { label: "逻辑空间", field: "logicSpaceName", width: 200 }, //TODO,字段名称 | ||
| 320 | { label: "产品简介", field: "dataProductAbstract", width: 240 }, | 321 | { label: "产品简介", field: "dataProductAbstract", width: 240 }, |
| 321 | ], | 322 | ], |
| 322 | data: <any>[], | 323 | data: <any>[], | ... | ... |
-
Please register or sign in to post a comment