b43111cd by lihua

数据资产登记专区

1 parent e6181892
......@@ -30,7 +30,7 @@
"crypto-js": "^4.2.0",
"dayjs": "^1.11.7",
"echarts": "^5.4.3",
"element-plus": "^2.5.2",
"element-plus": "^2.9.0",
"eruda": "^3.0.0",
"file-saver": "^2.0.5",
"hotkeys-js": "^3.10.2",
......
......@@ -51,8 +51,8 @@ dependencies:
specifier: ^5.4.3
version: 5.5.1
element-plus:
specifier: ^2.5.2
version: 2.8.8(vue@3.5.13)
specifier: ^2.9.0
version: 2.9.0(vue@3.5.13)
eruda:
specifier: ^3.0.0
version: 3.4.1
......@@ -4015,8 +4015,8 @@ packages:
resolution: {integrity: sha512-IXEuxU+5ClW2IGEYFC2T7szbyVgehupCWQe5GNh+H065CD6U6IFN0s4KeAMFGNmQolRU4IV7zGBWSYMmZ8uuqQ==}
dev: true
/element-plus@2.8.8(vue@3.5.13):
resolution: {integrity: sha512-MLAH1x2PGTnOT7Iwqh9ASgfZhvgqQqrdbxuJH0w2fGjzE4ZjryyLQj24HXoQO7Zon66U3lrYxbdLI57M6OX0qw==}
/element-plus@2.9.0(vue@3.5.13):
resolution: {integrity: sha512-ccOFXKsauo2dtokAr4OX7gZsb7TuAoVxA2zGRZo5o2yyDDBLBaZxOoFQPoxITSLcHbBfQuNDGK5Iag5hnyKkZA==}
peerDependencies:
vue: ^3.2.0
dependencies:
......
......@@ -2,14 +2,14 @@ import request from "@/utils/request";
/** 获取登记列表。 */
export const getRegisterList = (params) => request({
url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/page-list`,
url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-register-overview/page-list`,
method: 'post',
data: params
})
/** 获取登记详情 */
export const getRegiaterDetail = (params) => request({
url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/detail`,
url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-register-overview/detail`,
method: 'get',
params
})
......@@ -30,9 +30,8 @@ export const registerUpdate = (params) => request({
/** 删除登记信息 */
export const registerDelete = (params) => request({
url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/delete`,
method: 'delete',
data: params
url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-register-overview/delete?guid=${params}`,
method: 'delete'
});
/** 获取当前会员审批流程信息 */
......@@ -433,7 +432,7 @@ export const updateDissentState = (params) => request({
// 获取数交所数据
export const getExchangeList = (params) => request({
url: `${import.meta.env.VITE_API_NEW_PORTAL}/register-base/register-num`,
url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-register-overview/register-num`,
method: 'post',
data: params
})
......
import request from "@/utils/request";
/** 获取登记详情 */
export const getRegiaterDetail = (params) => request({
url: `${import.meta.env.VITE_API_NEW_PORTAL}/public-data-products-main/detail`,
method: 'get',
params
})
/** 提交登记信息。 */
export const registerSave = (params) => request({
url: `${import.meta.env.VITE_API_NEW_PORTAL}/public-data-products-main/save`,
method: 'post',
data: params
});
/** 更新登记信息 */
export const registerUpdate = (params) => request({
url: `${import.meta.env.VITE_API_NEW_PORTAL}/public-data-products-main/update`,
method: 'post',
data: params
});
/** 删除登记信息 */
export const registerDelete = (params) => request({
url: `${import.meta.env.VITE_API_NEW_PORTAL}/public-data-products-main/delete`,
method: 'delete',
data: params
});
\ No newline at end of file
......@@ -310,3 +310,10 @@ export const exportTemplate = (params) => request({
method: 'post',
responseType: 'blob'
});
/** 获取字典列表数据 */
export const getParamsList = (params) => request({
url: `${import.meta.env.VITE_APP_CONFIG_URL}/dict/data/get-by-dictType`,
method: 'get',
params
})
\ No newline at end of file
......
......@@ -816,7 +816,9 @@ const panelChange = (scope, row) => {
</span>
<el-select v-if="child.type == 'select'" v-model="formInline[child.field]"
:placeholder="child.placeholder" :disabled="child.disabled || readonly" :filterable="child.filterable"
:teleported="child.teleported || true">
:multiple="child.multiple ?? false"
:collapse-tags="child.collapse ?? false" :collapse-tags-tooltip="child.tagsTooltip ?? false"
:max-collapse-tags="child.maxTags ?? 1" :teleported="child.teleported || true">
<el-option v-for="opts in child.options"
:label="child.props?.label ? opts[child.props.label] : opts.label"
:value="child.props?.value ? opts[child.props.value] : opts.value" :disabled="opts.disabled" />
......@@ -1520,11 +1522,14 @@ const panelChange = (scope, row) => {
:disabled="btn.disabled" :style="btn.style ?? {}" @click="btnClick(btn, null)">{{ btn.label }}</el-button>
</template>
</template>
<el-input-tag :class="[item.col, { is_block: item.block }]" v-else-if="item.type == 'inputTag'"
v-model.trim="formInline[item.field]" :placeholder="item.placeholder" draggable
:clearable="item.clearable" :maxlength="item.maxlength ?? ''" :disabled="item.disabled"
:readonly="item.autocompleteSetting?.readonly || item.readonly" />
<el-input :class="[item.col, { is_block: item.block }]" v-else-if="item.type == 'password'"
v-model.trim="formInline[item.field]" type="password" :placeholder="item.placeholder"
:clearable="item.clearable" :maxlength="item.maxlength ?? ''" show-password :disabled="item.disabled"
:autocomplete="item.autocompleteSetting?.autocomplete || item.autocomplete
" :readonly="item.autocompleteSetting?.readonly || item.readonly" @click="handlerIptClick(item)" />
:autocomplete="item.autocompleteSetting?.autocomplete || item.autocomplete" :readonly="item.autocompleteSetting?.readonly || item.readonly" @click="handlerIptClick(item)" />
<div class="input_def" v-else>
<span v-if="item.beforeMsg" style="color: #212121;">{{ item.beforeMsg }}</span>
<el-input :class="[item.col, { is_block: item.block }]" v-model.trim="formInline[item.field]" :style="item.width ? { width: item.width } : null"
......
......@@ -415,6 +415,9 @@ onMounted(() => {
" @input="inputKeyUp(editForm[item.field].regexp, scope, editForm[item.field])"
@change="(val) => inputChange(val, scope, item)"
@focus="(event) => inputFocus(event, scope, editForm[item.field])"></el-input>
<el-date-picker v-else-if="editForm[item.field] && editForm[item.field].type == 'date'" v-model="scope.row[item.field]" :placeholder="editForm[item.field].placeholder"
:clearable="editForm[item.field].clearable" type="date"
format="YYYY-MM-DD" value-format="YYYY-MM-DD" />
<template v-else-if="editForm[item.field] && editForm[item.field].type == 'defaultValue'">
<el-date-picker v-if="scope.row[item.dataTypeName] === 'date'" v-model="scope.row[item.field]" type="date"
format="YYYY-MM-DD" value-format="YYYY-MM-DD" :placeholder="editForm[item.field].placeholder" />
......
......@@ -23,6 +23,23 @@ const routes: RouteRecordRaw[] = [
},
},
{
path: 'register-start-js',
name: 'registerStartJS',
component: () => import('@/views/data_asset/registerStartJS.vue'),
meta: {
title: '新建资产登记',
sidebar: false,
breadcrumb: false,
cache: true,
editPage: true,
reuse: true
},
beforeEnter: (to, from) => {
to.meta.title = to.query.type == 'create' ? '新建资产登记' : `编辑-${to.query.name}`;
to.meta.editPage = true;
}
},
{
path: 'register-start',
name: 'registerStart',
component: () => import('@/views/data_asset/registerStart.vue'),
......@@ -50,6 +67,18 @@ const routes: RouteRecordRaw[] = [
cache: true,
reuse: true
},
},
{
path: 'register-JQZQ-detail',
name: 'registerInfoJSZQDetail',
component: () => import('@/views/data_asset/registerJSZQDetail.vue'),
meta: {
title: '详情-',
sidebar: false,
breadcrumb: false,
cache: true,
reuse: true
},
}
],
},
......@@ -85,6 +114,18 @@ const routes: RouteRecordRaw[] = [
}
},
{
path: 'register-JSZQ-detail',
name: 'registerJSZQDetail',
component: () => import('@/views/data_asset/registerJSZQDetail.vue'),
meta: {
title: '详情-',
sidebar: false,
breadcrumb: false,
cache: true,
reuse: true
}
},
{
path: 'register-catalog-detail',
name: 'evaCatalogDetail',
component: () => import('@/views/data_asset/registerCatalogDetail.vue'),
......@@ -129,6 +170,18 @@ const routes: RouteRecordRaw[] = [
reuse: true
}
},
{
path: 'register-value-JSZQ-detail',
name: 'registerValueJSZQDetail',
component: () => import('@/views/data_asset/registerJSZQDetail.vue'),
meta: {
title: '详情-',
sidebar: false,
breadcrumb: false,
cache: true,
reuse: true
}
},
{
path: 'register-catalog-detail',
name: 'costAssessDetail',
......@@ -174,6 +227,18 @@ const routes: RouteRecordRaw[] = [
reuse: true
}
},
{
path: 'register-certi-JSZQ-detail',
name: 'certificateJSZQDetail',
component: () => import('@/views/data_asset/registerJSZQDetail.vue'),
meta: {
title: '详情-',
sidebar: false,
breadcrumb: false,
cache: true,
reuse: true
}
},
{
path: 'register-catalog-detail',
name: 'certiCatalogDetail',
......
......@@ -261,7 +261,10 @@ const tableBtnClick = (scope, btn) => {
});
} else if (type === 'path_detail') { // 详情
if (row.registerGuid) {
router.push({
row.dataSource == '1' ? router.push({
name: 'certificateJSZQDetail',
query: { guid: row.registerGuid, certificateGuid: row.guid, type: 'certificate', tenantGuid: row.tenantGuid }
}) : router.push({
name: 'certificateDetail',
query: { guid: row.registerGuid, certificateGuid: row.guid, type: 'certificate', tenantGuid: row.tenantGuid }
});
......@@ -291,6 +294,7 @@ const formItems = ref([{
label: 'daName',
value: 'damGuid'
},
filterable: true,
disabled: false,
clearable: true,
required: true,
......
......@@ -382,7 +382,10 @@ const tableBtnClick = (scope, btn) => {
});
} else if (type === 'detail') { // 详情
if (row.registerApproveState == 'Y') {
router.push({
row.dataSource == '1' ? router.push({
name: 'registerJSZQDetail',
query: { guid: row.registerGuid, evaGuid: row.guid, type: 'qualityEvaluate', tenantGuid: row.tenantGuid, tenantName: row.tenantName }
}) : router.push({
name: 'registerDetail',
query: { guid: row.registerGuid, evaGuid: row.guid, type: 'qualityEvaluate', tenantGuid: row.tenantGuid, tenantName: row.tenantName }
});
......@@ -451,6 +454,7 @@ const formItems = ref([{
value: 'guid',
label: 'damName'
},
filterable: true,
visible: true,
required: true
}, {
......@@ -465,6 +469,7 @@ const formItems = ref([{
value: 'guid',
label: 'tenantName'
},
filterable: true,
visible: false,
required: true
}, {
......
......@@ -119,7 +119,10 @@ const registerDetailTableInfo = ref({
});
} else if (row.type == 'qualityEvaluate') {
if (row.registerApproveState == 'Y') {
router.push({
row.dataSource == '1' ? router.push({
name: 'registerJSZQDetail',
query: { guid: row.registerGuid, evaGuid: row.guid, type: 'qualityEvaluate', tenantGuid: row.tenantGuid, tenantName: row.tenantName }
}) : router.push({
name: 'registerDetail',
query: { guid: row.registerGuid, evaGuid: row.guid, type: 'qualityEvaluate', tenantGuid: row.tenantGuid, tenantName: row.tenantName }
});
......@@ -131,7 +134,10 @@ const registerDetailTableInfo = ref({
}
} else if (row.type == 'costAssess') {
if (row.registerApproveState == 'Y') {
router.push({
row.dataSource == '1' ? router.push({
name: 'registerValueJSZQDetail',
query: { guid: row.registerGuid, costAssessGuid: row.guid, type: 'costAssess', tenantGuid: row.tenantGuid, tenantName: row.tenantName }
}) : router.push({
name: 'registerValueDetail',
query: { guid: row.registerGuid, costAssessGuid: row.guid, type: 'costAssess', tenantGuid: row.tenantGuid, tenantName: row.tenantName }
});
......
This diff could not be displayed because it is too large.
......@@ -43,7 +43,7 @@ const searchItemList = ref([
{
type: "input",
label: "",
field: "daName",
field: "damName",
default: "",
placeholder: "资产名称",
clearable: true,
......@@ -90,15 +90,15 @@ const pageInfo = ref({
{ label: "150", value: 150 },
{ label: "200", value: 200 },
],
daName: '',
damName: '',
approveState: '',
tenantGuid: '',
});
const tableFields = ref([{ label: "序号", type: "index", width: 56, align: "center" },
{ label: "资产名称", field: "daName", width: 160, align: "left" },
{ label: "数据分类", field: "dataCategoryName", width: 120, align: "left" },
{ label: "存储方式", field: "storageFormName", width: 120, align: "left" },
{ label: "资产名称", field: "damName", width: 160, align: "left" },
{ label: "数据分类", field: "dataTypeName", width: 120, align: "left" },
{ label: "更新频率", field: "updateFrequencyName", width: 120, align: "left" },
{ label: "数交所名称", field: "exchangeName", width: 160, align: "left" },
{ label: "专区名称", field: "zqName", width: 160, align: "left" },
{
......@@ -206,10 +206,17 @@ const currTableData: any = ref({});
const btnClick = (btn) => {
const type = btn.value;
if (type == 'create') {
router.push({
name: 'registerStart',
query: { exchangeGuid: btn.exchangeGuid, type }
});
if (btn.exchangeName.includes('数交所(勿删)') || btn.exchangeName.includes('江苏省数据交易所')) {
router.push({
name: 'registerStartJS',
query: { exchangeGuid: btn.exchangeGuid, type }
});
} else {
router.push({
name: 'registerStart',
query: { exchangeGuid: btn.exchangeGuid, type }
});
}
} else if (type == 'search') {
exchangGuid.value = btn.exchangeGuid;
pageInfo.value.curr = 1;
......@@ -223,10 +230,17 @@ const tableBtnClick = (scope, btn) => {
const row = scope.row;
currTableData.value = row;
if (type === "edit") { //草稿中\已驳回\已撤销\已通过 状态,才可以编辑。
router.push({
name: 'registerStart',
query: { guid: row.guid, exchangeGuid: row.exchangeGuid, name: row.daName, tenantGuid: row.tenantGuid, type }
});
if (row.dataSource == '1') {
router.push({
name: 'registerStartJS',
query: { guid: row.bizGuid, exchangeGuid: row.exchangeGuid, name: row.damName, tenantGuid: row.tenantGuid, type }
});
} else {
router.push({
name: 'registerStart',
query: { guid: row.guid, exchangeGuid: row.exchangeGuid, name: row.damName, tenantGuid: row.tenantGuid, type }
});
}
} else if (type == "delete") {
delTableOpen("此操作将永久删除该资产登记,是否继续?", "warning");
} else if (type === 'revoke') { // 撤销,状态为审批中时可以撤销。
......@@ -263,10 +277,17 @@ const tableBtnClick = (scope, btn) => {
});
});
} else if (type === 'detail') { // 详情, 若是草稿中,详情就是编辑,
router.push({
name: 'registerInfoDetail',
query: { guid: row.guid, name: row.daName, tenantGuid: row.tenantGuid, tenantName: row.tenantName, type: 'asset' }
});
if (row.dataSource == '1') {
router.push({
name: 'registerInfoJSZQDetail',
query: { guid: row.guid, name: row.damName, tenantGuid: row.tenantGuid, tenantName: row.tenantName, type: 'asset' }
});
} else {
router.push({
name: 'registerInfoDetail',
query: { guid: row.guid, name: row.damName, tenantGuid: row.tenantGuid, tenantName: row.tenantName, type: 'asset' }
});
}
} else if (type === 'pass') {
passDialogInfo.value.visible = true;
} else if (type == 'reject') {
......@@ -281,7 +302,7 @@ const delTableOpen = (msg, type, isBatch: boolean = false) => {
type: type,
}).then(() => {
let guids: any = [];
guids = [currTableData.value.guid]
guids = currTableData.value.guid;
loading.value = true;
registerDelete(guids).then((res: any) => {
loading.value = false;
......@@ -315,7 +336,7 @@ const getTableData = () => {
getRegisterList({
pageSize: pageInfo.value.limit,
pageIndex: pageInfo.value.curr,
daName: pageInfo.value.daName,
damName: pageInfo.value.damName,
approveState: pageInfo.value.approveState,
tenantGuid: pageInfo.value.tenantGuid,
exchangGuid: exchangGuid.value,
......@@ -355,12 +376,12 @@ const toSearch = (val: any, clear: boolean = false) => {
pageInfo.value.curr = 1;
if (clear) {
searchItemList.value.map((item) => item.default = "");
pageInfo.value.daName = '';
pageInfo.value.damName = '';
pageInfo.value.approveState = "";
pageInfo.value.tenantGuid = "";
val && (exchangGuid.value = '');
} else {
pageInfo.value.daName = val.daName;
pageInfo.value.damName = val.damName;
pageInfo.value.approveState = val.approveState;
pageInfo.value.tenantGuid = val.tenantGuid;
}
......
......@@ -426,7 +426,10 @@ const tableBtnClick = (scope, btn) => {
});
} else if (type === 'detail') { // 详情
if (row.registerApproveState == 'Y') {
router.push({
row.dataSource == '1' ? router.push({
name: 'registerValueJSZQDetail',
query: { guid: row.registerGuid, costAssessGuid: row.guid, type: 'costAssess', tenantGuid: row.tenantGuid, tenantName: row.tenantName }
}) : router.push({
name: 'registerValueDetail',
query: { guid: row.registerGuid, costAssessGuid: row.guid, type: 'costAssess', tenantGuid: row.tenantGuid, tenantName: row.tenantName }
});
......@@ -499,6 +502,7 @@ const formItems = ref<any>([
value: 'guid',
label: 'damName'
},
filterable: true,
visible: true,
required: true
}, {
......@@ -513,6 +517,7 @@ const formItems = ref<any>([
value: 'guid',
label: 'tenantName'
},
filterable: true,
visible: false,
required: true
},
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!