f569bb2d by lihua

数据产品管理优化

1 parent 12a66bd2
...@@ -349,6 +349,13 @@ export const existDamName = (params) => request({ ...@@ -349,6 +349,13 @@ export const existDamName = (params) => request({
349 method: 'get' 349 method: 'get'
350 }); 350 });
351 351
352 // 获取数据产品目录登记评估详情
353 export const getRegisterCatalogDetailGuids = (params) => request({
354 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/register-evaluation-grounding-trading`,
355 method: 'get',
356 params
357 })
358
352 /** 获取资产目录基本信息的详情 */ 359 /** 获取资产目录基本信息的详情 */
353 export const getRegisterCatalogDetail = (params) => request({ 360 export const getRegisterCatalogDetail = (params) => request({
354 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/detail`, 361 url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/detail`,
...@@ -553,6 +560,13 @@ export const getContractDetail = (params) => request({ ...@@ -553,6 +560,13 @@ export const getContractDetail = (params) => request({
553 params 560 params
554 }) 561 })
555 562
563 // 流通中的数据产品交易详情
564 export const getTransactionDetail = (params) => request({
565 url: `${import.meta.env.VITE_API_BASEURL}circulation/api/ms-data-circulation-tx-mgr-service/ading-info/detail`,
566 method: 'get',
567 params
568 })
569
556 // 获取所有字典 570 // 获取所有字典
557 export const getDictAllList = () => request({ 571 export const getDictAllList = () => request({
558 url: `${import.meta.env.VITE_APP_CONFIG_URL}/dict/data/get-all` 572 url: `${import.meta.env.VITE_APP_CONFIG_URL}/dict/data/get-all`
......
...@@ -26,7 +26,7 @@ const routes: RouteRecordRaw[] = [ ...@@ -26,7 +26,7 @@ const routes: RouteRecordRaw[] = [
26 path: '/data-asset/register-catalog', 26 path: '/data-asset/register-catalog',
27 component: Layout, 27 component: Layout,
28 meta: { 28 meta: {
29 title: '数据产品目录', 29 title: '自有数据产品',
30 icon: 'sidebar-videos', 30 icon: 'sidebar-videos',
31 }, 31 },
32 children: [ 32 children: [
...@@ -35,7 +35,7 @@ const routes: RouteRecordRaw[] = [ ...@@ -35,7 +35,7 @@ const routes: RouteRecordRaw[] = [
35 name: 'registerCatalogManagement', 35 name: 'registerCatalogManagement',
36 component: () => import('@/views/data_asset/registerCatalogManagement.vue'), 36 component: () => import('@/views/data_asset/registerCatalogManagement.vue'),
37 meta: { 37 meta: {
38 title: '数据产品目录', 38 title: '自有数据产品',
39 sidebar: false, 39 sidebar: false,
40 breadcrumb: false, 40 breadcrumb: false,
41 cache: true 41 cache: true
...@@ -46,7 +46,7 @@ const routes: RouteRecordRaw[] = [ ...@@ -46,7 +46,7 @@ const routes: RouteRecordRaw[] = [
46 name: 'registerCatalogCreate', 46 name: 'registerCatalogCreate',
47 component: () => import('@/views/data_asset/registerCatalogCreate.vue'), 47 component: () => import('@/views/data_asset/registerCatalogCreate.vue'),
48 meta: { 48 meta: {
49 title: '新建产品目录', 49 title: '新建自有数据产品',
50 sidebar: false, 50 sidebar: false,
51 breadcrumb: false, 51 breadcrumb: false,
52 cache: true, 52 cache: true,
...@@ -95,25 +95,6 @@ const routes: RouteRecordRaw[] = [ ...@@ -95,25 +95,6 @@ const routes: RouteRecordRaw[] = [
95 reuse: true 95 reuse: true
96 } 96 }
97 }, 97 },
98 // {
99 // path: 'import-table-field',
100 // name: 'importTableField',
101 // component: () => import('@/views/data_asset/importTableField.vue'),
102 // meta: {
103 // title: '导入表字段',
104 // sidebar: false,
105 // breadcrumb: false,
106 // cache: true,
107 // editPage: true,
108 // reuse: true
109 // },
110 // beforeEnter: (to, from) => {
111 // if (to.query.guid) {
112 // to.meta.title = `编辑-`;
113 // to.meta.editPage = true;
114 // }
115 // }
116 // },
117 { 98 {
118 path: 'register-catalog-detail', 99 path: 'register-catalog-detail',
119 name: 'registerCatalogDetail', 100 name: 'registerCatalogDetail',
...@@ -131,11 +112,28 @@ const routes: RouteRecordRaw[] = [ ...@@ -131,11 +112,28 @@ const routes: RouteRecordRaw[] = [
131 name: 'registerCatalogContractDetail', 112 name: 'registerCatalogContractDetail',
132 component: () => import('@/views/data_asset/registerCatalogContractDetail.vue'), 113 component: () => import('@/views/data_asset/registerCatalogContractDetail.vue'),
133 meta: { 114 meta: {
134 title: '详情-', 115 title: '合同详情-',
116 sidebar: false,
117 breadcrumb: false,
118 cache: true,
119 reuse: true
120 }
121 },
122 {
123 path: 'register-catalog-transaction-detail',
124 name: 'registerCatalogTransactionDetail',
125 component: () => import('@/views/data_asset/transactionDetail.vue'),
126 meta: {
127 title: '产品交易详情-',
135 sidebar: false, 128 sidebar: false,
136 breadcrumb: false, 129 breadcrumb: false,
137 cache: true, 130 cache: true,
138 reuse: true 131 reuse: true
132 },
133 beforeEnter: (to, from) => {
134 if (to.query.guid) {
135 to.meta.title = `产品交易详情-${to.query.damName}`;
136 }
139 } 137 }
140 }, 138 },
141 { 139 {
...@@ -158,6 +156,139 @@ const routes: RouteRecordRaw[] = [ ...@@ -158,6 +156,139 @@ const routes: RouteRecordRaw[] = [
158 ] 156 ]
159 }, 157 },
160 { 158 {
159 path: '/data-asset/authordata-catalog',
160 component: Layout,
161 meta: {
162 title: '授权数据产品',
163 icon: 'sidebar-videos',
164 },
165 children: [
166 {
167 path: '',
168 name: 'authorDataCatalogManagement',
169 component: () => import('@/views/data_asset/authorDataCatalogManagement.vue'),
170 meta: {
171 title: '授权数据产品',
172 sidebar: false,
173 breadcrumb: false,
174 cache: true
175 },
176 },
177 {
178 path: 'register-ctalog-create',
179 name: 'authorDataCatalogCreate',
180 component: () => import('@/views/data_asset/registerCatalogCreate.vue'),
181 meta: {
182 title: '新建授权数据产品',
183 sidebar: false,
184 breadcrumb: false,
185 cache: true,
186 editPage: true,
187 reuse: true
188 },
189 beforeEnter: (to, from) => {
190 if (to.query.type) {
191 to.meta.title = `详情-`;
192 return;
193 }
194 if (to.query.guid) {
195 to.meta.title = `编辑-${to.query.damName}`;
196 to.meta.editPage = true;
197 }
198 }
199 },
200 {
201 path: 'import-file-dam',
202 name: 'authorImportFileDam',
203 component: () => import('@/views/importFile.vue'),
204 meta: {
205 title: '导入数据',
206 sidebar: false,
207 breadcrumb: false,
208 cache: true,
209 reuse: true
210 },
211 beforeEnter: (to, from) => {
212 if (to.query.bizGuid) {
213 to.meta.title = `导入数据-${to.query.name}(${to.query.damName})`;
214 }
215 }
216 },
217 {
218 // path: 'processDetail',
219 // name: 'APIProcessDetail',
220 path: 'api-detail',
221 name: 'authorApiDetail',
222 component: () => import('@/views/data_asset/detail_serviceApi.vue'),
223 meta: {
224 title: '流程详情',
225 sidebar: false,
226 breadcrumb: false,
227 cache: true,
228 reuse: true
229 }
230 },
231 {
232 path: 'register-catalog-detail',
233 name: 'authorRegisterCatalogDetail',
234 component: () => import('@/views/data_asset/registerCatalogDetail.vue'),
235 meta: {
236 title: '详情-',
237 sidebar: false,
238 breadcrumb: false,
239 cache: true,
240 reuse: true
241 }
242 },
243 {
244 path: 'register-catalog-contract-detail',
245 name: 'authorRegisterCatalogContractDetail',
246 component: () => import('@/views/data_asset/registerCatalogContractDetail.vue'),
247 meta: {
248 title: '合同详情-',
249 sidebar: false,
250 breadcrumb: false,
251 cache: true,
252 reuse: true
253 }
254 },
255 {
256 path: 'register-catalog-transaction-detail',
257 name: 'authorRegisterCatalogTransactionDetail',
258 component: () => import('@/views/data_asset/transactionDetail.vue'),
259 meta: {
260 title: '产品交易详情-',
261 sidebar: false,
262 breadcrumb: false,
263 cache: true,
264 reuse: true
265 },
266 beforeEnter: (to, from) => {
267 if (to.query.guid) {
268 to.meta.title = `产品交易详情-${to.query.damName}`;
269 }
270 }
271 },
272 {
273 path: 'damTableDataView',
274 name: 'authorDamTableDataView',
275 component: () => import('@/views/data_asset/damTableDataView.vue'),
276 meta: {
277 title: '查看数据',
278 sidebar: false,
279 breadcrumb: false,
280 cache: true,
281 reuse: true
282 },
283 beforeEnter: (to, from) => {
284 if (to.query.guid) {
285 to.meta.title = `查看数据-${to.query.name}(${to.query.damName})`;
286 }
287 }
288 },
289 ]
290 },
291 {
161 path: '/data-product/product-listing', 292 path: '/data-product/product-listing',
162 component: Layout, 293 component: Layout,
163 meta: { 294 meta: {
......
1 <route lang="yaml">
2 name: authorDataCatalogManagement
3 </route>
4
5 <script lang="ts" setup name="authorDataCatalogManagement">
6 import { ref } from "vue";
7 import registerCatalogManagement from "./registerCatalogManagement.vue";
8
9 </script>
10
11 <template>
12 <registerCatalogManagement :dataSources="1"></registerCatalogManagement>
13 </template>
...\ No newline at end of file ...\ No newline at end of file
...@@ -187,8 +187,8 @@ onActivated(() => { ...@@ -187,8 +187,8 @@ onActivated(() => {
187 if (tab) { 187 if (tab) {
188 switch (detailType) { 188 switch (detailType) {
189 case 'detail': 189 case 'detail':
190 tab.meta.title = `详情-${damName}`; 190 tab.meta.title = `合同详情-${damName}`;
191 document.title = `详情-${damName}`; 191 document.title = `合同详情-${damName}`;
192 break; 192 break;
193 } 193 }
194 } 194 }
......
...@@ -22,7 +22,8 @@ import { ...@@ -22,7 +22,8 @@ import {
22 registerCatalogTableUpdate, 22 registerCatalogTableUpdate,
23 registerCatalogTableDelete, 23 registerCatalogTableDelete,
24 getRegisterCatalogTableList, 24 getRegisterCatalogTableList,
25 checkDamTableChange 25 checkDamTableChange,
26 getTenantList
26 } from "@/api/modules/dataAsset"; 27 } from "@/api/modules/dataAsset";
27 import { ContentWrap } from '@/components/ContentWrap'; 28 import { ContentWrap } from '@/components/ContentWrap';
28 import importTableField from "./importTableField.vue"; 29 import importTableField from "./importTableField.vue";
...@@ -101,7 +102,7 @@ const getArea = (node, resolve) => { ...@@ -101,7 +102,7 @@ const getArea = (node, resolve) => {
101 const baseInfoExpand = ref(true); 102 const baseInfoExpand = ref(true);
102 const assetTableInfoExpand = ref(true); 103 const assetTableInfoExpand = ref(true);
103 const importTableFieldRef = ref(); 104 const importTableFieldRef = ref();
104 105 const rightMainTenantList = ref([]); //权利主体下拉列表选择
105 const baseInfoFormRef = ref(); 106 const baseInfoFormRef = ref();
106 107
107 const baseInfoFormItems = ref([ 108 const baseInfoFormItems = ref([
...@@ -130,13 +131,20 @@ const baseInfoFormItems = ref([ ...@@ -130,13 +131,20 @@ const baseInfoFormItems = ref([
130 }, 131 },
131 { 132 {
132 label: '权利主体', 133 label: '权利主体',
133 type: 'input', 134 type: route.query.dataSources == '1' ? 'select' : 'input',
134 placeholder: '请输入', 135 placeholder: route.query.dataSources == '1' ? '请选择' : '请输入',
135 field: 'rightMain', 136 field: 'rightMain',
136 maxlength: 20, 137 maxlength: 20,
137 default: JSON.parse(userStore.userData).tenantName, 138 options: rightMainTenantList.value,
139 props: {
140 value: 'guid',
141 label: 'tenantName'
142 },
143 filterable: true,
144 clearable: true,
145 default: route.query.dataSources == '1' ? JSON.parse(userStore.userData).tenantGuid : JSON.parse(userStore.userData).tenantName,
138 required: true, 146 required: true,
139 disabled: true 147 disabled: route.query.dataSources == '1' ? false : true,
140 }, 148 },
141 { 149 {
142 label: '所属主题', 150 label: '所属主题',
...@@ -216,8 +224,22 @@ const baseInfoFormItems = ref([ ...@@ -216,8 +224,22 @@ const baseInfoFormItems = ref([
216 placeholder: "", 224 placeholder: "",
217 field: "dataSources", 225 field: "dataSources",
218 block: false, 226 block: false,
219 default: 1, 227 default: route.query.dataSources == '1' ? 1 : 2,
220 options: dataSourcesList, 228 options: route.query.dataSources == '1' ? [{ //如果是授权数据则不能选择其余的
229 value: 1,
230 label: '授权数据',
231 }]: [{
232 value: 2,
233 label: '自有数据',
234 },
235 {
236 value: 3,
237 label: '购买数据',
238 },
239 {
240 value: 4,
241 label: '其他来源',
242 }], //dataSourcesList
221 required: true, 243 required: true,
222 }, 244 },
223 // 是否公共数据 245 // 是否公共数据
...@@ -297,7 +319,7 @@ const baseInfoFormRules = ref({ ...@@ -297,7 +319,7 @@ const baseInfoFormRules = ref({
297 propertyDescription: [required('请填写资源描述')], 319 propertyDescription: [required('请填写资源描述')],
298 sceneDescription: [required('请填写应用场景描述')], 320 sceneDescription: [required('请填写应用场景描述')],
299 sceneLimit: [required('请填写应用场景限制')], 321 sceneLimit: [required('请填写应用场景限制')],
300 rightMain: [required('请填写权利主体')], 322 rightMain: [required(route.query.dataSources == '1' ? '请选择权利主体' : '请填写权利主体')],
301 dataSources: [required('请选择数据来源')], 323 dataSources: [required('请选择数据来源')],
302 isPublicData: [required('请选择是否公共数据')], 324 isPublicData: [required('请选择是否公共数据')],
303 }); 325 });
...@@ -420,12 +442,14 @@ const assetDataTableInfo = ref({ ...@@ -420,12 +442,14 @@ const assetDataTableInfo = ref({
420 label: "导入数据", value: "importData", click: (scope) => { 442 label: "导入数据", value: "importData", click: (scope) => {
421 let row = scope.row; 443 let row = scope.row;
422 router.push({ 444 router.push({
423 name: "importFileDam", 445 path: route.query.dataSources == '1' ? '/data-asset/authordata-catalog/import-file-dam' : '/data-asset/register-catalog/import-file-dam',
446 // name: "importFileDam",
424 query: { 447 query: {
425 bizGuid: row.guid, 448 bizGuid: row.guid,
426 name: row.tableChName, 449 name: row.tableChName,
427 isfileImport: '2', 450 isfileImport: '2',
428 damName: route.query.damName 451 damName: route.query.damName,
452 dataSources: route.query.dataSources
429 } 453 }
430 }) 454 })
431 } 455 }
...@@ -434,11 +458,13 @@ const assetDataTableInfo = ref({ ...@@ -434,11 +458,13 @@ const assetDataTableInfo = ref({
434 label: "查看样例数据", value: "viewData", click: (scope) => { 458 label: "查看样例数据", value: "viewData", click: (scope) => {
435 let row = scope.row; 459 let row = scope.row;
436 router.push({ 460 router.push({
437 name: 'damTableDataView', 461 path: route.query.dataSources == '1' ? '/data-asset/authordata-catalog/damTableDataView' : '/data-asset/register-catalog/damTableDataView',
462 // name: 'damTableDataView',
438 query: { 463 query: {
439 guid: row.guid, 464 guid: row.guid,
440 name: row.tableChName, 465 name: row.tableChName,
441 damName: detailInfo.value.damName 466 damName: detailInfo.value.damName,
467 dataSources: route.query.dataSources
442 } 468 }
443 }); 469 });
444 } 470 }
...@@ -571,7 +597,7 @@ onBeforeMount(() => { ...@@ -571,7 +597,7 @@ onBeforeMount(() => {
571 } 597 }
572 } 598 }
573 } else if (item.field == 'rightMain') { 599 } else if (item.field == 'rightMain') {
574 item.default = detailInfo.value.rightMainName; 600 item.default = route.query.dataSources == '1' ? detailInfo.value.rightMain : detailInfo.value.rightMainName;
575 } 601 }
576 }); 602 });
577 if (route.query.guid && route.query.foundMode == '2') { 603 if (route.query.guid && route.query.foundMode == '2') {
...@@ -599,6 +625,23 @@ onBeforeMount(() => { ...@@ -599,6 +625,23 @@ onBeforeMount(() => {
599 } 625 }
600 }); 626 });
601 } 627 }
628
629 if (route.query.dataSources == '1') {
630 getTenantList({
631 bizState: 'Y',
632 pageSize: -1
633 }).then((res: any) => {
634 rightMainTenantList.value = [];
635 if (res.code == proxy.$passCode) {
636 rightMainTenantList.value = res.data?.records || [];
637 let item = baseInfoFormItems.value.find(b => b.field == 'rightMain');
638 item && (item.options = rightMainTenantList.value);
639 } else {
640 proxy.$ElMessage.error(res.msg);
641 }
642 })
643 }
644
602 function replaceChildDictListKey(data) { 645 function replaceChildDictListKey(data) {
603 if (Array.isArray(data)) { 646 if (Array.isArray(data)) {
604 return data.map(item => replaceChildDictListKey(item)); 647 return data.map(item => replaceChildDictListKey(item));
...@@ -639,7 +682,7 @@ const cancel = () => { ...@@ -639,7 +682,7 @@ const cancel = () => {
639 proxy.$openMessageBox("当前页面尚未保存,确定放弃修改吗?", () => { 682 proxy.$openMessageBox("当前页面尚未保存,确定放弃修改吗?", () => {
640 userStore.setTabbar(userStore.tabbar.filter((tab: any) => tab.fullPath !== fullPath)); 683 userStore.setTabbar(userStore.tabbar.filter((tab: any) => tab.fullPath !== fullPath));
641 router.push({ 684 router.push({
642 path: '/data-asset/register-catalog' 685 path: route.query.dataSources == '1' ? '/data-asset/authordata-catalog' : '/data-asset/register-catalog'
643 }); 686 });
644 }, () => { 687 }, () => {
645 proxy.$ElMessage.info("已取消"); 688 proxy.$ElMessage.info("已取消");
...@@ -676,14 +719,17 @@ const save = () => { ...@@ -676,14 +719,17 @@ const save = () => {
676 if (damGuid.value) { 719 if (damGuid.value) {
677 params.guid = damGuid.value; 720 params.guid = damGuid.value;
678 params.foundMode = route.query.foundMode; 721 params.foundMode = route.query.foundMode;
722 if (route.query.dataSources != '1') {
679 params.rightMain = detailInfo.value.rightMain; 723 params.rightMain = detailInfo.value.rightMain;
724 }
680 fullscreenLoading.value = true; 725 fullscreenLoading.value = true;
681 registerCatalogUpdate(params).then((res: any) => { 726 registerCatalogUpdate(params).then((res: any) => {
682 fullscreenLoading.value = false; 727 fullscreenLoading.value = false;
683 if (res.code == proxy.$passCode) { 728 if (res.code == proxy.$passCode) {
684 proxy.$ElMessage.success('资源目录编辑提交成功'); 729 proxy.$ElMessage.success('资源目录编辑提交成功');
685 router.push({ 730 router.push({
686 name: 'registerCatalogManagement' 731 // name: 'registerCatalogManagement'
732 path: route.query.dataSources == '1' ? '/data-asset/authordata-catalog' : '/data-asset/register-catalog'
687 }); 733 });
688 userStore.setTabbar(userStore.tabbar.filter((tab: any) => tab.fullPath !== fullPath)); 734 userStore.setTabbar(userStore.tabbar.filter((tab: any) => tab.fullPath !== fullPath));
689 assetStore.setDamCatalogRefresh(true); 735 assetStore.setDamCatalogRefresh(true);
...@@ -695,13 +741,14 @@ const save = () => { ...@@ -695,13 +741,14 @@ const save = () => {
695 params.damCatalogTableInfo = assetDataTableInfo.value.data; 741 params.damCatalogTableInfo = assetDataTableInfo.value.data;
696 fullscreenLoading.value = true; 742 fullscreenLoading.value = true;
697 console.log(params, 'params'); 743 console.log(params, 'params');
698 params.rightMain = JSON.parse(userStore.userData).tenantGuid; 744 // params.rightMain = JSON.parse(userStore.userData).tenantGuid;
699 registerCatalogSave(params).then((res: any) => { 745 registerCatalogSave(params).then((res: any) => {
700 fullscreenLoading.value = false; 746 fullscreenLoading.value = false;
701 if (res.code == proxy.$passCode) { 747 if (res.code == proxy.$passCode) {
702 proxy.$ElMessage.success('资源目录新建提交成功'); 748 proxy.$ElMessage.success('资源目录新建提交成功');
703 router.push({ 749 router.push({
704 name: 'registerCatalogManagement' 750 // name: 'registerCatalogManagement'
751 path: route.query.dataSources == '1' ? '/data-asset/authordata-catalog' : '/data-asset/register-catalog'
705 }); 752 });
706 userStore.setTabbar(userStore.tabbar.filter((tab: any) => tab.fullPath !== fullPath)); 753 userStore.setTabbar(userStore.tabbar.filter((tab: any) => tab.fullPath !== fullPath));
707 assetStore.setDamCatalogRefresh(true); 754 assetStore.setDamCatalogRefresh(true);
......
...@@ -16,7 +16,8 @@ import { ...@@ -16,7 +16,8 @@ import {
16 getEvaDetail, 16 getEvaDetail,
17 getCostDetail, 17 getCostDetail,
18 getDataReceiveContractDetail, 18 getDataReceiveContractDetail,
19 getCertificateDetail 19 getCertificateDetail,
20 getRegisterCatalogDetailGuids
20 } from "@/api/modules/dataAsset"; 21 } from "@/api/modules/dataAsset";
21 import { changeNum } from '@/utils/common' 22 import { changeNum } from '@/utils/common'
22 import { ElMessage, ElMessageBox } from "element-plus"; 23 import { ElMessage, ElMessageBox } from "element-plus";
...@@ -93,6 +94,79 @@ const deploymentId = ref(''); ...@@ -93,6 +94,79 @@ const deploymentId = ref('');
93 94
94 const processInstanceId = ref(''); 95 const processInstanceId = ref('');
95 96
97 const registerDetailTableInfo = ref({
98 id: 'register-data-table',
99 rowKey: 'guid',
100 height: 220,
101 loading: false,
102 fields: [ { label: "序号", type: "index", width: 56, align: "center" },
103 { label: "事项", field: "title", width: 160, align: "left" },
104 { label: "对接主体", field: "institutionName", width: 160, align: "left" },
105 ],
106 data: <any>[],
107 showPage: false,
108 actionInfo: {
109 label: "操作",
110 type: "btn",
111 width: 130,
112 btns: [{
113 label: "查看详情", value: "detail", click: (scope) => {
114 let row = scope.row;
115 if (row.type == 'asset') {
116 router.push({
117 name: 'registerInfoDetail',
118 query: { guid: row.guid, name: detailInfo.value.damName, tenantGuid: row.tenantGuid, tenantName: row.tenantName, type: 'asset' }
119 });
120 } else if (row.type == 'qualityEvaluate') {
121 if (row.registerApproveState == 'Y') {
122 router.push({
123 name: 'registerDetail',
124 query: { guid: row.registerGuid, evaGuid: row.guid, type: 'qualityEvaluate', tenantGuid: row.tenantGuid, tenantName: row.tenantName }
125 });
126 } else {
127 router.push({
128 name: 'evaCatalogDetail',
129 query: { guid: route.query.guid, evaGuid: row.guid, type: 'qualityEvaluate', tenantGuid: row.tenantGuid }
130 });
131 }
132 } else if (row.type == 'costAssess') {
133 if (row.registerApproveState == 'Y') {
134 router.push({
135 name: 'registerValueDetail',
136 query: { guid: row.registerGuid, costAssessGuid: row.guid, type: 'costAssess', tenantGuid: row.tenantGuid, tenantName: row.tenantName }
137 });
138 } else {
139 router.push({
140 name: 'costAssessDetail',
141 query: { guid: route.query.guid, costAssessGuid: row.guid, type: 'costAssess', tenantGuid: row.tenantGuid }
142 });
143 }
144 } else if (row.type == 'product') {
145 router.push({
146 name: 'productListingDetail',
147 query: {
148 guid: row.guid,
149 type: 'detail',
150 name: detailInfo.value.damName,
151 exchangeGuid: row.institutionGuid ? row.institutionGuid : '',
152 tenantGuid: row.tenantGuid
153 }
154 });
155 } else if (row.type == 'trade') {
156 router.push({
157 path: route.query.dataSources == '1' ? '/data-asset/authordata-catalog/register-catalog-transaction-detail' : '/data-asset/register-catalog/register-catalog-transaction-detail',
158 //name: 'transactionManagement'
159 query: {
160 guid: row.guid,
161 damName: detailInfo.value.damName,
162 }
163 });
164 }
165 }
166 }]
167 }
168 });
169
96 const getDetailInfo = () => { 170 const getDetailInfo = () => {
97 fullscreenLoading.value = true; 171 fullscreenLoading.value = true;
98 getRegisterCatalogDetail({ guid: catalogGuid, serviceTenantGuid: route.query.tenantGuid }).then((res: any) => { 172 getRegisterCatalogDetail({ guid: catalogGuid, serviceTenantGuid: route.query.tenantGuid }).then((res: any) => {
...@@ -181,6 +255,44 @@ const getDetailInfo = () => { ...@@ -181,6 +255,44 @@ const getDetailInfo = () => {
181 } 255 }
182 }) 256 })
183 } 257 }
258 getRegisterCatalogDetailGuids({ damGuid: catalogGuid, serviceTenantGuid: route.query.tenantGuid }).then((res: any) => {
259 registerDetailTableInfo.value.data = [];
260 if (res.code == proxy.$passCode) {
261 const data = res.data || {};
262 if (data.registerBaseRSVO) {
263 registerDetailTableInfo.value.data.push(Object.assign({}, data.registerBaseRSVO, {
264 title: "资产登记",
265 type: 'asset'
266 }));
267 }
268 if (data.qualityEvaluationRSVO) {
269 registerDetailTableInfo.value.data.push(Object.assign({}, data.qualityEvaluationRSVO, {
270 title: "质量评估",
271 type: 'qualityEvaluate'
272 }));
273 }
274 if (data.costAssessmentRSVO) {
275 registerDetailTableInfo.value.data.push(Object.assign({}, data.costAssessmentRSVO, {
276 title: "价值评估",
277 type: 'costAssess'
278 }));
279 }
280 if (data.productGroundingRSVO) {
281 registerDetailTableInfo.value.data.push(Object.assign({}, data.productGroundingRSVO, {
282 title: "数据产品上架",
283 type: 'product'
284 }));
285 }
286 if (data.mfTradingInfoRSVO) {
287 registerDetailTableInfo.value.data.push(Object.assign({}, data.mfTradingInfoRSVO, {
288 title: "数据产品交易",
289 type: 'trade'
290 }));
291 }
292 } else {
293 proxy.$ElMessage.error(res.msg);
294 }
295 })
184 } 296 }
185 297
186 onBeforeMount(() => { 298 onBeforeMount(() => {
...@@ -220,7 +332,7 @@ const isTextTruncated = () => { ...@@ -220,7 +332,7 @@ const isTextTruncated = () => {
220 if (!domDesc) { 332 if (!domDesc) {
221 return; 333 return;
222 } 334 }
223 if (domDesc.clientHeight > 64) { 335 if (domDesc.clientHeight > 82) {
224 isTruncated.value = true; 336 isTruncated.value = true;
225 } else { 337 } else {
226 isTruncated.value = false; 338 isTruncated.value = false;
...@@ -248,7 +360,8 @@ const handleTableExpandChange = (row: any, expandedRows: any[]) => { ...@@ -248,7 +360,8 @@ const handleTableExpandChange = (row: any, expandedRows: any[]) => {
248 const handleTableViewData = (scope) => { 360 const handleTableViewData = (scope) => {
249 let row = scope.row; 361 let row = scope.row;
250 router.push({ 362 router.push({
251 name: 'damTableDataView', 363 // name: 'damTableDataView',
364 path: route.query.dataSources == '1' ? '/data-asset/authordata-catalog/damTableDataView' : '/data-asset/register-catalog/damTableDataView',
252 query: { 365 query: {
253 guid: row.guid, 366 guid: row.guid,
254 name: row.tableChName, 367 name: row.tableChName,
...@@ -284,7 +397,8 @@ const btnClick = (btn) => { ...@@ -284,7 +397,8 @@ const btnClick = (btn) => {
284 console.log('detailType', detailType.value); 397 console.log('detailType', detailType.value);
285 if (detailType.value == 'asset') { 398 if (detailType.value == 'asset') {
286 router.push({ 399 router.push({
287 name: 'registerCatalogManagement', 400 path: route.query.dataSources == '1' ? '/data-asset/authordata-catalog' : '/data-asset/register-catalog',
401 //name: 'registerCatalogManagement',
288 query: {} 402 query: {}
289 }); 403 });
290 } else { 404 } else {
...@@ -936,7 +1050,8 @@ const handleClick = () => { ...@@ -936,7 +1050,8 @@ const handleClick = () => {
936 // 跳转到 apiDetail 页面 1050 // 跳转到 apiDetail 页面
937 if (detailInfo.value.foundMode == '2') { 1051 if (detailInfo.value.foundMode == '2') {
938 router.push({ 1052 router.push({
939 name: 'apiDetail', 1053 path: route.query.dataSources == '1' ? '/data-asset/authordata-catalog/api-detail' : '/data-asset/register-catalog/api-detail',
1054 //name: 'apiDetail',
940 query: { 1055 query: {
941 guid: detailInfo.value.guid, 1056 guid: detailInfo.value.guid,
942 type: 'detaile', 1057 type: 'detaile',
...@@ -966,7 +1081,8 @@ const deliverySpanMethod = ({ ...@@ -966,7 +1081,8 @@ const deliverySpanMethod = ({
966 1081
967 const clickContractDetail = (item) => { 1082 const clickContractDetail = (item) => {
968 router.push({ 1083 router.push({
969 name: 'registerCatalogContractDetail', 1084 path: route.query.dataSources == '1' ? '/data-asset/authordata-catalog/register-catalog-contract-detail' : '/data-asset/register-catalog/register-catalog-contract-detail',
1085 //name: 'registerCatalogContractDetail',
970 query: { 1086 query: {
971 guid: item.dataContractGuid, 1087 guid: item.dataContractGuid,
972 name: item.dataContractName, 1088 name: item.dataContractName,
...@@ -1000,6 +1116,7 @@ const viewDeliveryFile = (file) => { ...@@ -1000,6 +1116,7 @@ const viewDeliveryFile = (file) => {
1000 <div class="dataLabel dataLabel1">{{ detailInfo.dataSourcesName }}</div> 1116 <div class="dataLabel dataLabel1">{{ detailInfo.dataSourcesName }}</div>
1001 </div> 1117 </div>
1002 </div> 1118 </div>
1119 <div class="applicationScenarios">{{ '权利主体:' + detailInfo.rightMainName }}</div>
1003 <div class="applicationScenarios" 1120 <div class="applicationScenarios"
1004 :style="{ 'margin-right': (isTruncated && !isExpanded) ? '30px' : '0px', WebkitLineClamp: (!isTruncated ? 'inherit' : (isExpanded ? 'inherit' : 1)), WebkitBoxOrient: 'vertical' }"> 1121 :style="{ 'margin-right': (isTruncated && !isExpanded) ? '30px' : '0px', WebkitLineClamp: (!isTruncated ? 'inherit' : (isExpanded ? 'inherit' : 1)), WebkitBoxOrient: 'vertical' }">
1005 {{'覆盖地域:' + (detailInfo.coverageArea?.[0]?.[0] == 'all' ? '全国' : (detailInfo.coverageAreaName?.map(c => 1122 {{'覆盖地域:' + (detailInfo.coverageArea?.[0]?.[0] == 'all' ? '全国' : (detailInfo.coverageAreaName?.map(c =>
...@@ -1020,7 +1137,7 @@ const viewDeliveryFile = (file) => { ...@@ -1020,7 +1137,7 @@ const viewDeliveryFile = (file) => {
1020 :highlight-current-row="true" stripe border @expand-change="handleTableExpandChange" height="100%" 1137 :highlight-current-row="true" stripe border @expand-change="handleTableExpandChange" height="100%"
1021 tooltip-effect="light" row-key="guid" :style="{ 1138 tooltip-effect="light" row-key="guid" :style="{
1022 width: '100%', 1139 width: '100%',
1023 height: '400px', 1140 height: '350px',
1024 display: 'inline-block', 1141 display: 'inline-block',
1025 }"> 1142 }">
1026 <el-table-column type="expand"> 1143 <el-table-column type="expand">
...@@ -1329,6 +1446,10 @@ const viewDeliveryFile = (file) => { ...@@ -1329,6 +1446,10 @@ const viewDeliveryFile = (file) => {
1329 </div> 1446 </div>
1330 </ContentWrap> 1447 </ContentWrap>
1331 1448
1449 <ContentWrap v-if="route.query.type == 'asset' && registerDetailTableInfo.data.length > 0" id="id-registerDetail" title="登记评估上架交易" description="" style="margin: 16px 16px 16px">
1450 <Table :table-info="registerDetailTableInfo"></Table>
1451 </ContentWrap>
1452
1332 <ContentWrap 1453 <ContentWrap
1333 v-if="(route.query.type == 'qualityEvaluate' && evaDetailInfo.approveVO && evaDetailInfo.isApprove != 'N') || (route.query.type == 'costAssess' && costAssessDetail.approveVO && costAssessDetail.isApprove != 'N')" 1454 v-if="(route.query.type == 'qualityEvaluate' && evaDetailInfo.approveVO && evaDetailInfo.isApprove != 'N') || (route.query.type == 'costAssess' && costAssessDetail.approveVO && costAssessDetail.isApprove != 'N')"
1334 id="id-approveInfo" title="审批信息" description="" style="margin: 16px 16px 16px"> 1455 id="id-approveInfo" title="审批信息" description="" style="margin: 16px 16px 16px">
...@@ -1582,7 +1703,7 @@ const viewDeliveryFile = (file) => { ...@@ -1582,7 +1703,7 @@ const viewDeliveryFile = (file) => {
1582 .expand_btn { 1703 .expand_btn {
1583 position: absolute; 1704 position: absolute;
1584 right: 0px; 1705 right: 0px;
1585 top: 34px; 1706 top: 58px;
1586 font-size: 14px; 1707 font-size: 14px;
1587 line-height: 21px; 1708 line-height: 21px;
1588 } 1709 }
......
...@@ -25,6 +25,13 @@ const userData = JSON.parse(userStore.userData); ...@@ -25,6 +25,13 @@ const userData = JSON.parse(userStore.userData);
25 25
26 const assetStore = useDataAssetStore(); 26 const assetStore = useDataAssetStore();
27 27
28 const props = defineProps({
29 dataSources: {
30 type: Number,
31 default: 2,
32 }
33 })
34
28 const router = useRouter(); 35 const router = useRouter();
29 const { proxy } = getCurrentInstance() as any; 36 const { proxy } = getCurrentInstance() as any;
30 const damTypes: any = ref([]); 37 const damTypes: any = ref([]);
...@@ -156,8 +163,9 @@ const tableBtnClick = (scope, btn) => { ...@@ -156,8 +163,9 @@ const tableBtnClick = (scope, btn) => {
156 currTableData.value = row; 163 currTableData.value = row;
157 if (type === "edit") { 164 if (type === "edit") {
158 router.push({ 165 router.push({
159 name: "registerCatalogCreate", 166 // name: "registerCatalogCreate",
160 query: { guid: row.guid, damName: row.damName, foundMode: row.foundMode }, 167 path: props.dataSources == 1 ? '/data-asset/authordata-catalog/register-ctalog-create' : '/data-asset/register-catalog/register-ctalog-create',
168 query: { guid: row.guid, damName: row.damName, foundMode: row.foundMode, dataSources: props.dataSources },
161 }); 169 });
162 } else if (type == "delete") { 170 } else if (type == "delete") {
163 proxy.$openMessageBox('此操作将永久删除该资源,是否继续', () => { 171 proxy.$openMessageBox('此操作将永久删除该资源,是否继续', () => {
...@@ -181,13 +189,15 @@ const tableBtnClick = (scope, btn) => { ...@@ -181,13 +189,15 @@ const tableBtnClick = (scope, btn) => {
181 const handleDataClick = (item) => { 189 const handleDataClick = (item) => {
182 if (item.isRegister == "N" && item.foundMode != 3) { 190 if (item.isRegister == "N" && item.foundMode != 3) {
183 router.push({ 191 router.push({
184 name: "registerCatalogCreate", 192 path: props.dataSources == 1 ? '/data-asset/authordata-catalog/register-ctalog-create' : '/data-asset/register-catalog/register-ctalog-create',
185 query: { guid: item.guid, damName: item.damName, foundMode: item.foundMode }, 193 // name: "registerCatalogCreate",
194 query: { guid: item.guid, damName: item.damName, foundMode: item.foundMode, dataSources: props.dataSources },
186 }); 195 });
187 } else { 196 } else {
188 router.push({ 197 router.push({
189 name: "registerCatalogDetail", 198 // name: "registerCatalogDetail",
190 query: { guid: item.guid, type: "asset" }, 199 path: props.dataSources == 1 ? '/data-asset/authordata-catalog/register-catalog-detail' : '/data-asset/register-catalog/register-catalog-detail',
200 query: { guid: item.guid, type: "asset", dataSources: props.dataSources },
191 }); 201 });
192 } 202 }
193 }; 203 };
...@@ -201,7 +211,7 @@ const getTableData = () => { ...@@ -201,7 +211,7 @@ const getTableData = () => {
201 damType: pageInfo.value.damType, 211 damType: pageInfo.value.damType,
202 subjectDomain: pageInfo.value.subjectDomain || [], 212 subjectDomain: pageInfo.value.subjectDomain || [],
203 tenantGuid: pageInfo.value.tenantGuid, 213 tenantGuid: pageInfo.value.tenantGuid,
204 dataSources: pageInfo.value.dataSources, 214 dataSources: props.dataSources,
205 isRegister: pageInfo.value.isRegister, 215 isRegister: pageInfo.value.isRegister,
206 foundMode: pageInfo.value.foundMode, 216 foundMode: pageInfo.value.foundMode,
207 }).then((res: any) => { 217 }).then((res: any) => {
...@@ -228,7 +238,7 @@ const toSearch = (val: any, clear: boolean = false) => { ...@@ -228,7 +238,7 @@ const toSearch = (val: any, clear: boolean = false) => {
228 pageInfo.value.subjectDomain = []; 238 pageInfo.value.subjectDomain = [];
229 pageInfo.value.tenantGuid = ""; 239 pageInfo.value.tenantGuid = "";
230 pageInfo.value.isRegister = ""; 240 pageInfo.value.isRegister = "";
231 pageInfo.value.dataSources = ""; 241 // pageInfo.value.dataSources = "";
232 pageInfo.value.foundMode = ""; 242 pageInfo.value.foundMode = "";
233 } else { 243 } else {
234 pageInfo.value.damName = val.damName; 244 pageInfo.value.damName = val.damName;
...@@ -236,7 +246,7 @@ const toSearch = (val: any, clear: boolean = false) => { ...@@ -236,7 +246,7 @@ const toSearch = (val: any, clear: boolean = false) => {
236 pageInfo.value.subjectDomain = val.subjectDomain; 246 pageInfo.value.subjectDomain = val.subjectDomain;
237 pageInfo.value.tenantGuid = val.tenantGuid; 247 pageInfo.value.tenantGuid = val.tenantGuid;
238 pageInfo.value.isRegister = val.isRegister; 248 pageInfo.value.isRegister = val.isRegister;
239 pageInfo.value.dataSources = val.dataSources; 249 // pageInfo.value.dataSources = val.dataSources;
240 pageInfo.value.foundMode = val.foundMode; 250 pageInfo.value.foundMode = val.foundMode;
241 } 251 }
242 getTableData(); 252 getTableData();
...@@ -308,7 +318,11 @@ function replaceChildDictListKey(data) { ...@@ -308,7 +318,11 @@ function replaceChildDictListKey(data) {
308 318
309 const handleCreate = () => { 319 const handleCreate = () => {
310 router.push({ 320 router.push({
311 name: "registerCatalogCreate", 321 path: props.dataSources == 1 ? '/data-asset/authordata-catalog/register-ctalog-create' : '/data-asset/register-catalog/register-ctalog-create',
322 query: {
323 dataSources: props.dataSources
324 }
325 // name: "registerCatalogCreate",
312 }); 326 });
313 }; 327 };
314 328
...@@ -387,8 +401,9 @@ const handleUploadClose = (itemGuid) => { ...@@ -387,8 +401,9 @@ const handleUploadClose = (itemGuid) => {
387 if (itemGuid) { 401 if (itemGuid) {
388 assetStore.setDamCatalogRefresh(true); 402 assetStore.setDamCatalogRefresh(true);
389 router.push({ 403 router.push({
390 name: "registerCatalogDetail", 404 path: props.dataSources == 1 ? '/data-asset/authordata-catalog/register-catalog-detail' : '/data-asset/register-catalog/register-catalog-detail',
391 query: { guid: itemGuid, type: "asset" }, 405 //name: "registerCatalogDetail",
406 query: { guid: itemGuid, type: "asset", dataSources: props.dataSources },
392 }); 407 });
393 } 408 }
394 } 409 }
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!