Browse Source

元数据系统代码改成系统id存储

master
xueyinfei 4 months ago
parent
commit
fa6c0deb84
  1. 174
      vue-fastapi-backend/module_admin/dao/meta_dao.py
  2. 20
      vue-fastapi-backend/module_admin/entity/do/meta_do.py
  3. 45
      vue-fastapi-backend/module_admin/entity/do/metadata_config_do.py
  4. 10
      vue-fastapi-backend/module_admin/entity/vo/meta_vo.py
  5. 132
      vue-fastapi-backend/module_admin/service/meta_service.py
  6. 6
      vue-fastapi-frontend/src/views/meta/metaInfo/bloodRelation.vue
  7. 49
      vue-fastapi-frontend/src/views/meta/metaInfo/index.vue
  8. 163
      vue-fastapi-frontend/src/views/metadataConfig/metaclas/index.vue

174
vue-fastapi-backend/module_admin/dao/meta_dao.py

@ -14,29 +14,28 @@ from datetime import datetime
class MetaDao: class MetaDao:
@classmethod @classmethod
async def get_meta_tab_clas(cls, db: AsyncSession, sysCode: str, mdlName: str, tabName: str): async def get_meta_tab_clas(cls, db: AsyncSession, sysId: int, mdlName: str, tabName: str):
query_result = ( query_result = (
( (
await db.execute( await db.execute(
select( select(
MetaBatchTabClas.onum, MetaBatchTabClas.onum,
MetaBatchTabClas.ssys_cd, MetaBatchTabClas.ssys_id,
MetaBatchTabClas.data_whs_name, MetaBatchTabClas.data_whs_name,
MetaBatchTabClas.mdl_name, MetaBatchTabClas.mdl_name,
MetaBatchTabClas.tab_no, MetaBatchTabClas.tab_no,
MetaBatchTabClas.tab_eng_name, MetaBatchTabClas.tab_eng_name,
MetaBatchTabClas.clas_onum, MetaBatchTabClas.clas_onum,
MetaBatchTabClas.clas_value, MetaBatchTabClas.clas_value,
MetadataClas.clas_pri_clas, MetadataClas.clas_tmpl,
MetadataClas.clas_scd_clas,
MetadataClas.clas_thre_clas,
MetadataClas.clas_eff_flag, MetadataClas.clas_eff_flag,
MetadataClas.rec_subm_prsn, MetadataClas.rec_subm_prsn,
MetadataClas.clas_name MetadataClas.clas_name,
MetadataClas.belt_batch_content,
).join( ).join(
MetadataClas, MetaBatchTabClas.clas_onum == MetadataClas.clas_onum MetadataClas, MetaBatchTabClas.clas_onum == MetadataClas.clas_onum
) )
.where(MetaBatchTabClas.ssys_cd == sysCode, .where(MetaBatchTabClas.ssys_id == sysId,
MetaBatchTabClas.mdl_name == mdlName, MetaBatchTabClas.mdl_name == mdlName,
MetaBatchTabClas.tab_eng_name == tabName).distinct() MetaBatchTabClas.tab_eng_name == tabName).distinct()
) )
@ -45,13 +44,13 @@ class MetaDao:
return query_result return query_result
@classmethod @classmethod
async def get_meta_fld_clas(cls, db: AsyncSession, sysCode: str, mdlName: str, tabName: str, fldName: str): async def get_meta_fld_clas(cls, db: AsyncSession, sysId: int, mdlName: str, tabName: str, fldName: str):
query_result = ( query_result = (
( (
await db.execute( await db.execute(
select( select(
MetaBatchFldClas.onum, MetaBatchFldClas.onum,
MetaBatchFldClas.ssys_cd, MetaBatchFldClas.ssys_id,
MetaBatchFldClas.data_whs_name, MetaBatchFldClas.data_whs_name,
MetaBatchFldClas.mdl_name, MetaBatchFldClas.mdl_name,
MetaBatchFldClas.tab_no, MetaBatchFldClas.tab_no,
@ -59,16 +58,15 @@ class MetaDao:
MetaBatchFldClas.fld_eng_name, MetaBatchFldClas.fld_eng_name,
MetaBatchFldClas.clas_onum, MetaBatchFldClas.clas_onum,
MetaBatchFldClas.clas_value, MetaBatchFldClas.clas_value,
MetadataClas.clas_pri_clas, MetadataClas.clas_tmpl,
MetadataClas.clas_scd_clas,
MetadataClas.clas_thre_clas,
MetadataClas.clas_eff_flag, MetadataClas.clas_eff_flag,
MetadataClas.rec_subm_prsn, MetadataClas.rec_subm_prsn,
MetadataClas.belt_batch_content,
MetadataClas.clas_name MetadataClas.clas_name
).join( ).join(
MetadataClas, MetaBatchFldClas.clas_onum == MetadataClas.clas_onum MetadataClas, MetaBatchFldClas.clas_onum == MetadataClas.clas_onum
) )
.where(MetaBatchFldClas.ssys_cd == sysCode, .where(MetaBatchFldClas.ssys_id == sysId,
MetaBatchFldClas.mdl_name == mdlName, MetaBatchFldClas.mdl_name == mdlName,
MetaBatchFldClas.tab_eng_name == tabName, MetaBatchFldClas.tab_eng_name == tabName,
MetaBatchFldClas.fld_eng_name == fldName).distinct() MetaBatchFldClas.fld_eng_name == fldName).distinct()
@ -88,7 +86,7 @@ class MetaDao:
MetadataExtractInfo.onum.label('extract_onum'), MetadataExtractInfo.onum.label('extract_onum'),
MetadataExtractInfo.extract_ver_num, MetadataExtractInfo.extract_ver_num,
MetadataExtractInfo.ver_desc.label('extract_ver_desc'), MetadataExtractInfo.ver_desc.label('extract_ver_desc'),
MetadataExtractInfo.ssys_cd, MetadataExtractInfo.ssys_id,
MetadataExtractInfo.data_whs_name, MetadataExtractInfo.data_whs_name,
MetadataExtractInfo.mdl_name, MetadataExtractInfo.mdl_name,
MetadataExtractInfo.tab_no, MetadataExtractInfo.tab_no,
@ -109,26 +107,26 @@ class MetaDao:
MetadataSuppInfo.upd_time.label('supp_upd_time'), MetadataSuppInfo.upd_time.label('supp_upd_time'),
).join(MetadataSuppInfo, ).join(MetadataSuppInfo,
and_( and_(
MetadataExtractInfo.ssys_cd == MetadataSuppInfo.ssys_cd, MetadataExtractInfo.ssys_id == MetadataSuppInfo.ssys_id,
MetadataExtractInfo.mdl_name == MetadataSuppInfo.mdl_name, MetadataExtractInfo.mdl_name == MetadataSuppInfo.mdl_name,
MetadataExtractInfo.tab_eng_name == MetadataSuppInfo.tab_eng_name MetadataExtractInfo.tab_eng_name == MetadataSuppInfo.tab_eng_name
), isouter=True) ), isouter=True)
.join( .join(
MetadataFldTabExtractInfo, MetadataFldTabExtractInfo,
and_( and_(
MetadataExtractInfo.ssys_cd == MetadataFldTabExtractInfo.ssys_cd, MetadataExtractInfo.ssys_id == MetadataFldTabExtractInfo.ssys_id,
MetadataExtractInfo.mdl_name == MetadataFldTabExtractInfo.mdl_name, MetadataExtractInfo.mdl_name == MetadataFldTabExtractInfo.mdl_name,
MetadataExtractInfo.tab_eng_name == MetadataFldTabExtractInfo.tab_eng_name MetadataExtractInfo.tab_eng_name == MetadataFldTabExtractInfo.tab_eng_name
), isouter=True) ), isouter=True)
.join( .join(
MetadataFldSuppInfo, MetadataFldSuppInfo,
and_( and_(
MetadataExtractInfo.ssys_cd == MetadataFldSuppInfo.ssys_cd, MetadataExtractInfo.ssys_id == MetadataFldSuppInfo.ssys_id,
MetadataExtractInfo.mdl_name == MetadataFldSuppInfo.mdl_name, MetadataExtractInfo.mdl_name == MetadataFldSuppInfo.mdl_name,
MetadataExtractInfo.tab_eng_name == MetadataFldSuppInfo.tab_eng_name MetadataExtractInfo.tab_eng_name == MetadataFldSuppInfo.tab_eng_name
), isouter=True) ), isouter=True)
.where( .where(
MetadataExtractInfo.ssys_cd == query_object.ssys_cd if query_object.ssys_cd else True, MetadataExtractInfo.ssys_id == query_object.ssys_id if query_object.ssys_id else True,
MetadataExtractInfo.mdl_name == query_object.mdl_name if query_object.mdl_name else True, MetadataExtractInfo.mdl_name == query_object.mdl_name if query_object.mdl_name else True,
or_(MetadataExtractInfo.tab_eng_name.like(f'%{query_object.tab_name}%'), or_(MetadataExtractInfo.tab_eng_name.like(f'%{query_object.tab_name}%'),
MetadataExtractInfo.tab_cn_name.like(f'%{query_object.tab_name}%'), MetadataExtractInfo.tab_cn_name.like(f'%{query_object.tab_name}%'),
@ -156,7 +154,7 @@ class MetaDao:
select( select(
MetadataFldTabExtractInfo.onum.label('extract_onum'), MetadataFldTabExtractInfo.onum.label('extract_onum'),
MetadataFldTabExtractInfo.extract_ver_num, MetadataFldTabExtractInfo.extract_ver_num,
MetadataFldTabExtractInfo.ssys_cd, MetadataFldTabExtractInfo.ssys_id,
MetadataFldTabExtractInfo.data_whs_name, MetadataFldTabExtractInfo.data_whs_name,
MetadataFldTabExtractInfo.mdl_name, MetadataFldTabExtractInfo.mdl_name,
MetadataFldTabExtractInfo.tab_no, MetadataFldTabExtractInfo.tab_no,
@ -186,7 +184,7 @@ class MetaDao:
.join( .join(
MetadataFldSuppInfo, MetadataFldSuppInfo,
and_( and_(
MetadataFldTabExtractInfo.ssys_cd == MetadataFldSuppInfo.ssys_cd, MetadataFldTabExtractInfo.ssys_id == MetadataFldSuppInfo.ssys_id,
MetadataFldTabExtractInfo.mdl_name == MetadataFldSuppInfo.mdl_name, MetadataFldTabExtractInfo.mdl_name == MetadataFldSuppInfo.mdl_name,
MetadataFldTabExtractInfo.tab_eng_name == MetadataFldSuppInfo.tab_eng_name, MetadataFldTabExtractInfo.tab_eng_name == MetadataFldSuppInfo.tab_eng_name,
MetadataFldTabExtractInfo.fld_eng_name == MetadataFldSuppInfo.fld_eng_name MetadataFldTabExtractInfo.fld_eng_name == MetadataFldSuppInfo.fld_eng_name
@ -197,7 +195,7 @@ class MetaDao:
DataStdDict.onum == MetadataFldSuppInfo.data_dict_id DataStdDict.onum == MetadataFldSuppInfo.data_dict_id
), isouter=True ), isouter=True
).where( ).where(
MetadataFldTabExtractInfo.ssys_cd == query_object.ssys_cd, MetadataFldTabExtractInfo.ssys_id == query_object.ssys_id,
MetadataFldTabExtractInfo.mdl_name == query_object.mdl_name, MetadataFldTabExtractInfo.mdl_name == query_object.mdl_name,
MetadataFldTabExtractInfo.tab_eng_name == query_object.tab_name MetadataFldTabExtractInfo.tab_eng_name == query_object.tab_name
).distinct().order_by(MetadataFldTabExtractInfo.fld_no) ).distinct().order_by(MetadataFldTabExtractInfo.fld_no)
@ -218,11 +216,11 @@ class MetaDao:
return query_result return query_result
@classmethod @classmethod
async def get_lastest_meta_data_supp_vett(cls, db: AsyncSession, ssys_cd: str, mdl_name: str, tab_eng_name: str): async def get_lastest_meta_data_supp_vett(cls, db: AsyncSession, ssys_id: int, mdl_name: str, tab_eng_name: str):
query_result = ( query_result = (
( (
await db.execute( await db.execute(
select(MetadataSuppInfoVett).where(MetadataSuppInfoVett.ssys_cd == ssys_cd, select(MetadataSuppInfoVett).where(MetadataSuppInfoVett.ssys_id == ssys_id,
MetadataSuppInfoVett.mdl_name == mdl_name, MetadataSuppInfoVett.mdl_name == mdl_name,
MetadataSuppInfoVett.tab_eng_name == tab_eng_name) MetadataSuppInfoVett.tab_eng_name == tab_eng_name)
.order_by(desc(MetadataSuppInfoVett.apply_time)) .order_by(desc(MetadataSuppInfoVett.apply_time))
@ -251,7 +249,7 @@ class MetaDao:
async def insertMetadataSuppInfo(cls, table: MetadataSuppInfoVett, db: AsyncSession): async def insertMetadataSuppInfo(cls, table: MetadataSuppInfoVett, db: AsyncSession):
suppTable = MetadataSuppInfo() suppTable = MetadataSuppInfo()
suppTable.onum = uuid.uuid4() suppTable.onum = uuid.uuid4()
suppTable.ssys_cd = table.ssys_cd suppTable.ssys_id = table.ssys_id
suppTable.mdl_name = table.mdl_name suppTable.mdl_name = table.mdl_name
suppTable.tab_eng_name = table.tab_eng_name suppTable.tab_eng_name = table.tab_eng_name
suppTable.tab_crrct_name = table.tab_crrct_name suppTable.tab_crrct_name = table.tab_crrct_name
@ -304,7 +302,7 @@ class MetaDao:
MetadataFldSuppInfoVett.data_dict_id == DataStdDict.onum, # 假设关联条件 MetadataFldSuppInfoVett.data_dict_id == DataStdDict.onum, # 假设关联条件
isouter=True, # 可选,是否左连接 isouter=True, # 可选,是否左连接
).where( ).where(
MetadataFldSuppInfoVett.ssys_cd == tableInfo.ssys_cd, MetadataFldSuppInfoVett.ssys_id == tableInfo.ssys_id,
MetadataFldSuppInfoVett.mdl_name == tableInfo.mdl_name, MetadataFldSuppInfoVett.mdl_name == tableInfo.mdl_name,
MetadataFldSuppInfoVett.tab_eng_name == tableInfo.tab_eng_name, MetadataFldSuppInfoVett.tab_eng_name == tableInfo.tab_eng_name,
MetadataFldSuppInfoVett.apply_time == tableInfo.apply_time MetadataFldSuppInfoVett.apply_time == tableInfo.apply_time
@ -319,7 +317,7 @@ class MetaDao:
result.append({ result.append({
"onum": vett_info.onum, "onum": vett_info.onum,
"crrct_ver_num": vett_info.crrct_ver_num, "crrct_ver_num": vett_info.crrct_ver_num,
"ssys_cd": vett_info.ssys_cd, "ssys_id": vett_info.ssys_id,
"mdl_name": vett_info.mdl_name, "mdl_name": vett_info.mdl_name,
"tab_eng_name": vett_info.tab_eng_name, "tab_eng_name": vett_info.tab_eng_name,
"fld_eng_name": vett_info.fld_eng_name, "fld_eng_name": vett_info.fld_eng_name,
@ -342,11 +340,11 @@ class MetaDao:
return result return result
@classmethod @classmethod
async def get_supp_table_by_vett(cls, sysCode: str, mdlName: str, tableName: str, db: AsyncSession): async def get_supp_table_by_vett(cls, ssys_id: int, mdlName: str, tableName: str, db: AsyncSession):
query_result = ( query_result = (
( (
await db.execute( await db.execute(
select(MetadataSuppInfo).where(MetadataSuppInfo.ssys_cd == sysCode, select(MetadataSuppInfo).where(MetadataSuppInfo.ssys_id == ssys_id,
MetadataSuppInfo.mdl_name == mdlName, MetadataSuppInfo.mdl_name == mdlName,
MetadataSuppInfo.tab_eng_name == tableName).distinct() MetadataSuppInfo.tab_eng_name == tableName).distinct()
) )
@ -355,11 +353,11 @@ class MetaDao:
return query_result return query_result
@classmethod @classmethod
async def get_meta_table(cls, sysCode: str, mdlName: str, tableName: str, db: AsyncSession): async def get_meta_table(cls, ssys_id: int, mdlName: str, tableName: str, db: AsyncSession):
query_result = ( query_result = (
( (
await db.execute( await db.execute(
select(MetadataExtractInfo).where(MetadataExtractInfo.ssys_cd == sysCode, select(MetadataExtractInfo).where(MetadataExtractInfo.ssys_id == ssys_id,
MetadataExtractInfo.mdl_name == mdlName, MetadataExtractInfo.mdl_name == mdlName,
MetadataExtractInfo.tab_eng_name == tableName).distinct() MetadataExtractInfo.tab_eng_name == tableName).distinct()
) )
@ -401,7 +399,7 @@ class MetaDao:
async def insertMetadataFldSuppInfo(cls, column: MetadataFldSuppInfoVett, db: AsyncSession): async def insertMetadataFldSuppInfo(cls, column: MetadataFldSuppInfoVett, db: AsyncSession):
suppColumn = MetadataFldSuppInfo() suppColumn = MetadataFldSuppInfo()
suppColumn.onum = uuid.uuid4() suppColumn.onum = uuid.uuid4()
suppColumn.ssys_cd = column.ssys_cd suppColumn.ssys_id = column.ssys_id
suppColumn.mdl_name = column.mdl_name suppColumn.mdl_name = column.mdl_name
suppColumn.tab_eng_name = column.tab_eng_name suppColumn.tab_eng_name = column.tab_eng_name
suppColumn.fld_eng_name = column.fld_eng_name suppColumn.fld_eng_name = column.fld_eng_name
@ -421,7 +419,7 @@ class MetaDao:
@classmethod @classmethod
async def get_meta_col_supp_vett(cls, table: MetadataSuppInfoVett, db: AsyncSession): async def get_meta_col_supp_vett(cls, table: MetadataSuppInfoVett, db: AsyncSession):
sql_query = text("select max(apply_time) from t_metadata_fld_supp_info_vett where ssys_cd ='" + table.ssys_cd + sql_query = text("select max(apply_time) from t_metadata_fld_supp_info_vett where ssys_id ='" + table.ssys_id +
"' and mdl_name = '" + table.mdl_name + "' and tab_eng_name = '" + table.tab_eng_name + "' and mdl_name = '" + table.mdl_name + "' and tab_eng_name = '" + table.tab_eng_name +
"'") "'")
maxTime = (await db.execute(sql_query)).scalar() maxTime = (await db.execute(sql_query)).scalar()
@ -430,7 +428,7 @@ class MetaDao:
( (
await db.execute( await db.execute(
select(MetadataFldSuppInfoVett) select(MetadataFldSuppInfoVett)
.where(MetadataFldSuppInfoVett.ssys_cd == table.ssys_cd, .where(MetadataFldSuppInfoVett.ssys_id == table.ssys_id,
MetadataFldSuppInfoVett.mdl_name == table.mdl_name, MetadataFldSuppInfoVett.mdl_name == table.mdl_name,
MetadataFldSuppInfoVett.tab_eng_name == table.tab_eng_name, MetadataFldSuppInfoVett.tab_eng_name == table.tab_eng_name,
MetadataFldSuppInfoVett.apply_time == maxTime).distinct() MetadataFldSuppInfoVett.apply_time == maxTime).distinct()
@ -445,7 +443,7 @@ class MetaDao:
( (
await db.execute( await db.execute(
select(MetadataFldSuppInfo) select(MetadataFldSuppInfo)
.where(MetadataFldSuppInfo.ssys_cd == column.ssys_cd, .where(MetadataFldSuppInfo.ssys_id == column.ssys_id,
MetadataFldSuppInfo.mdl_name == column.mdl_name, MetadataFldSuppInfo.mdl_name == column.mdl_name,
MetadataFldSuppInfo.tab_eng_name == column.tab_eng_name, MetadataFldSuppInfo.tab_eng_name == column.tab_eng_name,
MetadataFldSuppInfo.fld_eng_name == column.fld_eng_name).distinct() MetadataFldSuppInfo.fld_eng_name == column.fld_eng_name).distinct()
@ -455,12 +453,12 @@ class MetaDao:
return query_result return query_result
@classmethod @classmethod
async def get_supp_column_by_columnInfo(cls, sysCode, mdlName, tabEngName, fldEngName, db: AsyncSession): async def get_supp_column_by_columnInfo(cls, ssys_id: int, mdlName: str, tabEngName: str, fldEngName: str, db: AsyncSession):
query_result = ( query_result = (
( (
await db.execute( await db.execute(
select(MetadataFldSuppInfo) select(MetadataFldSuppInfo)
.where(MetadataFldSuppInfo.ssys_cd == sysCode, .where(MetadataFldSuppInfo.ssys_id == ssys_id,
MetadataFldSuppInfo.mdl_name == mdlName, MetadataFldSuppInfo.mdl_name == mdlName,
MetadataFldSuppInfo.tab_eng_name == tabEngName, MetadataFldSuppInfo.tab_eng_name == tabEngName,
MetadataFldSuppInfo.fld_eng_name == fldEngName).distinct() MetadataFldSuppInfo.fld_eng_name == fldEngName).distinct()
@ -471,12 +469,12 @@ class MetaDao:
return query_result return query_result
@classmethod @classmethod
async def get_meta_column(cls, sysCode, mdlName, tabEngName, fldEngName, db: AsyncSession): async def get_meta_column(cls, ssys_id: int, mdlName: str, tabEngName: str, fldEngName: str, db: AsyncSession):
query_result = ( query_result = (
( (
await db.execute( await db.execute(
select(MetadataFldTabExtractInfo) select(MetadataFldTabExtractInfo)
.where(MetadataFldTabExtractInfo.ssys_cd == sysCode, .where(MetadataFldTabExtractInfo.ssys_id == ssys_id,
MetadataFldTabExtractInfo.mdl_name == mdlName, MetadataFldTabExtractInfo.mdl_name == mdlName,
MetadataFldTabExtractInfo.tab_eng_name == tabEngName, MetadataFldTabExtractInfo.tab_eng_name == tabEngName,
MetadataFldTabExtractInfo.fld_eng_name == fldEngName).distinct() MetadataFldTabExtractInfo.fld_eng_name == fldEngName).distinct()
@ -498,7 +496,7 @@ class MetaDao:
MetadataExtractInfo.onum.label('extract_onum'), MetadataExtractInfo.onum.label('extract_onum'),
MetadataExtractInfo.extract_ver_num, MetadataExtractInfo.extract_ver_num,
MetadataExtractInfo.ver_desc.label('extract_ver_desc'), MetadataExtractInfo.ver_desc.label('extract_ver_desc'),
MetadataExtractInfo.ssys_cd, MetadataExtractInfo.ssys_id,
MetadataExtractInfo.data_whs_name, MetadataExtractInfo.data_whs_name,
MetadataExtractInfo.mdl_name, MetadataExtractInfo.mdl_name,
MetadataExtractInfo.tab_no, MetadataExtractInfo.tab_no,
@ -519,21 +517,21 @@ class MetaDao:
MetadataSuppInfo.upd_time.label('supp_upd_time'), MetadataSuppInfo.upd_time.label('supp_upd_time'),
).join(MetadataSuppInfo, ).join(MetadataSuppInfo,
and_( and_(
MetadataExtractInfo.ssys_cd == MetadataSuppInfo.ssys_cd, MetadataExtractInfo.ssys_id == MetadataSuppInfo.ssys_id,
MetadataExtractInfo.mdl_name == MetadataSuppInfo.mdl_name, MetadataExtractInfo.mdl_name == MetadataSuppInfo.mdl_name,
MetadataExtractInfo.tab_eng_name == MetadataSuppInfo.tab_eng_name MetadataExtractInfo.tab_eng_name == MetadataSuppInfo.tab_eng_name
), isouter=True) ), isouter=True)
.join( .join(
MetadataFldTabExtractInfo, MetadataFldTabExtractInfo,
and_( and_(
MetadataExtractInfo.ssys_cd == MetadataFldTabExtractInfo.ssys_cd, MetadataExtractInfo.ssys_id == MetadataFldTabExtractInfo.ssys_id,
MetadataExtractInfo.mdl_name == MetadataFldTabExtractInfo.mdl_name, MetadataExtractInfo.mdl_name == MetadataFldTabExtractInfo.mdl_name,
MetadataExtractInfo.tab_eng_name == MetadataFldTabExtractInfo.tab_eng_name MetadataExtractInfo.tab_eng_name == MetadataFldTabExtractInfo.tab_eng_name
), isouter=True) ), isouter=True)
.join( .join(
MetadataFldSuppInfo, MetadataFldSuppInfo,
and_( and_(
MetadataExtractInfo.ssys_cd == MetadataFldSuppInfo.ssys_cd, MetadataExtractInfo.ssys_id == MetadataFldSuppInfo.ssys_id,
MetadataExtractInfo.mdl_name == MetadataFldSuppInfo.mdl_name, MetadataExtractInfo.mdl_name == MetadataFldSuppInfo.mdl_name,
MetadataExtractInfo.tab_eng_name == MetadataFldSuppInfo.tab_eng_name MetadataExtractInfo.tab_eng_name == MetadataFldSuppInfo.tab_eng_name
), isouter=True) ), isouter=True)
@ -544,14 +542,14 @@ class MetaDao:
return CamelCaseUtil.transform_result(result) return CamelCaseUtil.transform_result(result)
@classmethod @classmethod
async def get_meta_table_cn_name(cls, db: AsyncSession, sysCode, mdlName, tabEngName): async def get_meta_table_cn_name(cls, db: AsyncSession, ssys_id: int, mdlName: str, tabEngName: str):
sql = text("select case when a.tab_cn_name is null then b.tab_crrct_name" sql = text("select case when a.tab_cn_name is null then b.tab_crrct_name"
" when a.tab_cn_name is not null then a.tab_cn_name end as tab_cn_name" " when a.tab_cn_name is not null then a.tab_cn_name end as tab_cn_name"
" from t_metadata_extract_info a " " from t_metadata_extract_info a "
"left join t_metadata_supp_info b " "left join t_metadata_supp_info b "
"on a.ssys_cd = b.ssys_cd and a.mdl_name=b.mdl_name and a.tab_eng_name=b.tab_crrct_name " "on a.ssys_id = b.ssys_id and a.mdl_name=b.mdl_name and a.tab_eng_name=b.tab_crrct_name "
"where a.ssys_cd = :sysCode and a.mdl_name = :mdlName and a.tab_eng_name = :tabEngName") "where a.ssys_id = :ssys_id and a.mdl_name = :mdlName and a.tab_eng_name = :tabEngName")
result = (await db.execute(sql, {"sysCode": sysCode, "mdlName": mdlName, "tabEngName": tabEngName})) result = (await db.execute(sql, {"ssys_id": ssys_id, "mdlName": mdlName, "tabEngName": tabEngName}))
return result.first().tab_cn_name return result.first().tab_cn_name
@ -561,7 +559,7 @@ class MetaDao:
( (
await db.execute( await db.execute(
select( select(
MetadataFldTabExtractInfo.ssys_cd, MetadataFldTabExtractInfo.ssys_id,
MetadataFldTabExtractInfo.mdl_name, MetadataFldTabExtractInfo.mdl_name,
MetadataFldTabExtractInfo.tab_eng_name, MetadataFldTabExtractInfo.tab_eng_name,
MetadataFldTabExtractInfo.fld_eng_name, MetadataFldTabExtractInfo.fld_eng_name,
@ -570,7 +568,7 @@ class MetaDao:
MetadataFldTabExtractInfo.pk_flag, MetadataFldTabExtractInfo.pk_flag,
MetadataFldTabExtractInfo.fld_no MetadataFldTabExtractInfo.fld_no
).where( ).where(
MetadataFldTabExtractInfo.ssys_cd == query_object.ssys_cd, MetadataFldTabExtractInfo.ssys_id == query_object.ssys_id,
MetadataFldTabExtractInfo.mdl_name == query_object.mdl_name, MetadataFldTabExtractInfo.mdl_name == query_object.mdl_name,
MetadataFldTabExtractInfo.tab_eng_name == query_object.tab_name MetadataFldTabExtractInfo.tab_eng_name == query_object.tab_name
).distinct().order_by(MetadataFldTabExtractInfo.fld_no) ).distinct().order_by(MetadataFldTabExtractInfo.fld_no)
@ -580,18 +578,18 @@ class MetaDao:
return [row._asdict() for row in query_result] return [row._asdict() for row in query_result]
@classmethod @classmethod
async def get_er_relation_by_table(cls, result_db: AsyncSession, ssys_cd: str, mdl_name: str, tab_eng_name: str): async def get_er_relation_by_table(cls, result_db: AsyncSession, ssys_id: int, mdl_name: str, tab_eng_name: str):
sql = text("with tmp as (select a1.*,row_number()over(partition by b_ssys_cd,b_mdl_name,b_tab_eng_name," sql = text("with tmp as (select a1.*,row_number()over(partition by b_ssys_id,b_mdl_name,b_tab_eng_name,"
"b_fld_eng_name order by concat(op_relation,',',jd_relation) desc) as rn " "b_fld_eng_name order by concat(op_relation,',',jd_relation) desc) as rn "
"from t_batch_er_relation_step1 a1)select a1.*,'A' AS father from tmp a1 where a1.rn = 1 " "from t_batch_er_relation_step1 a1)select a1.*,'A' AS father from tmp a1 where a1.rn = 1 "
" and a1.a_ssys_cd = :sysCode and a1.a_mdl_name = :mdlName and a1.a_tab_eng_name = :tabName") " and a1.a_ssys_id = :ssys_id and a1.a_mdl_name = :mdlName and a1.a_tab_eng_name = :tabName")
sql2 = text("with tmp as (select a1.*,row_number()over(partition by b_ssys_cd,b_mdl_name,b_tab_eng_name," sql2 = text("with tmp as (select a1.*,row_number()over(partition by b_ssys_id,b_mdl_name,b_tab_eng_name,"
"b_fld_eng_name order by concat(op_relation,',',jd_relation) desc) as rn " "b_fld_eng_name order by concat(op_relation,',',jd_relation) desc) as rn "
"from t_batch_er_relation_step1 a1)select a1.*,'A' AS father from tmp a1 where a1.rn = 1 " "from t_batch_er_relation_step1 a1)select a1.*,'A' AS father from tmp a1 where a1.rn = 1 "
" and a1.b_ssys_cd = :sysCode and a1.b_mdl_name = :mdlName and a1.b_tab_eng_name = :tabName") " and a1.b_ssys_id = :ssys_id and a1.b_mdl_name = :mdlName and a1.b_tab_eng_name = :tabName")
result = (await result_db.execute(sql, {"sysCode": ssys_cd, result = (await result_db.execute(sql, {"ssys_id": ssys_id,
"mdlName": mdl_name, "tabName": tab_eng_name})) "mdlName": mdl_name, "tabName": tab_eng_name}))
result2 = (await result_db.execute(sql2, {"sysCode": ssys_cd, result2 = (await result_db.execute(sql2, {"ssys_id": ssys_id,
"mdlName": mdl_name, "tabName": tab_eng_name})) "mdlName": mdl_name, "tabName": tab_eng_name}))
# 获取列名 # 获取列名
columns = result.keys() # 返回列名列表 columns = result.keys() # 返回列名列表
@ -604,28 +602,28 @@ class MetaDao:
return result3 return result3
@classmethod @classmethod
async def get_op_relation_by_table(cls, result_db: AsyncSession, ssys_cd: str, mdl_name: str, tab_eng_name: str): async def get_op_relation_by_table(cls, result_db: AsyncSession, ssys_id: int, mdl_name: str, tab_eng_name: str):
sql = text("select a1.* ,case when a2.rela_value = '1' then 'A' when a2.rela_value = '2' then 'B' end as father" sql = text("select a1.* ,case when a2.rela_value = '1' then 'A' when a2.rela_value = '2' then 'B' end as father"
" from (select distinct a_ssys_cd ,a_mdl_name ,a_tab_eng_name ,a_fld_eng_name ,b_ssys_cd,b_mdl_name," " from (select distinct a_ssys_id ,a_mdl_name ,a_tab_eng_name ,a_fld_eng_name ,b_ssys_id,b_mdl_name,"
"b_tab_eng_name ,b_fld_eng_name from ( select a_ssys_cd ,a_mdl_name ,a_tab_eng_name ,a_fld_eng_name," "b_tab_eng_name ,b_fld_eng_name from ( select a_ssys_id ,a_mdl_name ,a_tab_eng_name ,a_fld_eng_name,"
"b_ssys_cd,b_mdl_name ,b_tab_eng_name ,b_fld_eng_name from t_batch_fld_relation " "b_ssys_id,b_mdl_name ,b_tab_eng_name ,b_fld_eng_name from t_batch_fld_relation "
"where rela_type in ('jd_relation','op_relation') and rela_value not in ('0') union all " "where rela_type in ('jd_relation','op_relation') and rela_value not in ('0') union all "
"SELECT a_ssys_cd ,a_mdl_name ,a_tab_eng_name ,a_fld_eng_name ,b_ssys_cd ,b_mdl_name,b_tab_eng_name," "SELECT a_ssys_id ,a_mdl_name ,a_tab_eng_name ,a_fld_eng_name ,b_ssys_id ,b_mdl_name,b_tab_eng_name,"
"b_fld_eng_name FROM t_batch_fld_relation t ,JSON_TABLE(replace(t.rela_value,'''','\"'),'$[*]' " "b_fld_eng_name FROM t_batch_fld_relation t ,JSON_TABLE(replace(t.rela_value,'''','\"'),'$[*]' "
"COLUMNS (value_num DOUBLE PATH '$.value')) AS j group by a_ssys_cd ,a_mdl_name ,a_tab_eng_name ," "COLUMNS (value_num DOUBLE PATH '$.value')) AS j group by a_ssys_id ,a_mdl_name ,a_tab_eng_name ,"
"a_fld_eng_name ,b_ssys_cd ,b_mdl_name ,b_tab_eng_name ,b_fld_eng_name " "a_fld_eng_name ,b_ssys_id ,b_mdl_name ,b_tab_eng_name ,b_fld_eng_name "
"having max(j.value_num) > 0.1) b1 ) a1 left join t_batch_fld_relation a2 " "having max(j.value_num) > 0.1) b1 ) a1 left join t_batch_fld_relation a2 "
"on a1.a_ssys_cd = a2.a_ssys_cd and a1.a_mdl_name = a2.a_mdl_name " "on a1.a_ssys_id = a2.a_ssys_id and a1.a_mdl_name = a2.a_mdl_name "
"and a1.a_tab_eng_name = a2.a_tab_eng_name and a1.a_fld_eng_name = a2.a_fld_eng_name " "and a1.a_tab_eng_name = a2.a_tab_eng_name and a1.a_fld_eng_name = a2.a_fld_eng_name "
"and a1.b_ssys_cd = a2.b_ssys_cd and a1.b_mdl_name = a2.b_mdl_name " "and a1.b_ssys_id = a2.b_ssys_id and a1.b_mdl_name = a2.b_mdl_name "
"and a1.b_tab_eng_name = a2.b_tab_eng_name and a1.b_fld_eng_name = a2.b_fld_eng_name " "and a1.b_tab_eng_name = a2.b_tab_eng_name and a1.b_fld_eng_name = a2.b_fld_eng_name "
"and a2.rela_type = 'set_flag' left join t_batch_fld_clas a4 on a1.a_ssys_cd = a4.ssys_cd " "and a2.rela_type = 'set_flag' left join t_batch_fld_clas a4 on a1.a_ssys_id = a4.ssys_id "
"and a1.a_mdl_name = a4.mdl_name and a1.a_tab_eng_name = a4.tab_eng_name " "and a1.a_mdl_name = a4.mdl_name and a1.a_tab_eng_name = a4.tab_eng_name "
"and a1.a_fld_eng_name = a4.fld_eng_name and a4.clas_onum = '2001001002' " "and a1.a_fld_eng_name = a4.fld_eng_name and a4.clas_onum = '2001001002' "
"where coalesce(a4.clas_value,' ') <> '日期时间类'" "where coalesce(a4.clas_value,' ') <> '日期时间类'"
" and ((a1.a_ssys_cd = :sysCode and a1.a_mdl_name = :mdlName and a1.a_tab_eng_name = :tabName) " " and ((a1.a_ssys_id = :ssys_id and a1.a_mdl_name = :mdlName and a1.a_tab_eng_name = :tabName) "
" or (a1.b_ssys_cd = :sysCode and a1.b_mdl_name = :mdlName and a1.b_tab_eng_name = :tabName))") " or (a1.b_ssys_id = :ssys_id and a1.b_mdl_name = :mdlName and a1.b_tab_eng_name = :tabName))")
result = (await result_db.execute(sql, {"sysCode": ssys_cd, result = (await result_db.execute(sql, {"ssys_id": ssys_id,
"mdlName": mdl_name, "tabName": tab_eng_name})) "mdlName": mdl_name, "tabName": tab_eng_name}))
# 获取列名 # 获取列名
columns = result.keys() # 返回列名列表 columns = result.keys() # 返回列名列表
@ -637,18 +635,18 @@ class MetaDao:
@classmethod @classmethod
async def get_er_relation_by_column(cls, result_db: AsyncSession, column: {}, module: str): async def get_er_relation_by_column(cls, result_db: AsyncSession, column: {}, module: str):
if module == 'pre': if module == 'pre':
sql = text("with tmp as (select a1.*,row_number()over(partition by b_ssys_cd,b_mdl_name,b_tab_eng_name," sql = text("with tmp as (select a1.*,row_number()over(partition by b_ssys_id,b_mdl_name,b_tab_eng_name,"
"b_fld_eng_name order by concat(op_relation,',',jd_relation) desc) as rn " "b_fld_eng_name order by concat(op_relation,',',jd_relation) desc) as rn "
"from t_batch_er_relation_step1 a1)select a1.*,'A' AS father from tmp a1 where a1.rn = 1 " "from t_batch_er_relation_step1 a1)select a1.*,'A' AS father from tmp a1 where a1.rn = 1 "
"and a1.b_ssys_cd = :sysCode and a1.b_mdl_name = :mdlName " "and a1.b_ssys_id = :ssys_id and a1.b_mdl_name = :mdlName "
"and a1.b_tab_eng_name = :tabName and a1.b_fld_eng_name = :fldName ") "and a1.b_tab_eng_name = :tabName and a1.b_fld_eng_name = :fldName ")
else: else:
sql = text("with tmp as (select a1.*,row_number()over(partition by b_ssys_cd,b_mdl_name,b_tab_eng_name," sql = text("with tmp as (select a1.*,row_number()over(partition by b_ssys_id,b_mdl_name,b_tab_eng_name,"
"b_fld_eng_name order by concat(op_relation,',',jd_relation) desc) as rn " "b_fld_eng_name order by concat(op_relation,',',jd_relation) desc) as rn "
"from t_batch_er_relation_step1 a1)select a1.*,'A' AS father from tmp a1 where a1.rn = 1 " "from t_batch_er_relation_step1 a1)select a1.*,'A' AS father from tmp a1 where a1.rn = 1 "
"and a1.a_ssys_cd = :sysCode and a1.a_mdl_name = :mdlName " "and a1.a_ssys_id = :ssys_id and a1.a_mdl_name = :mdlName "
"and a1.a_tab_eng_name = :tabName and a1.a_fld_eng_name = :fldName ") "and a1.a_tab_eng_name = :tabName and a1.a_fld_eng_name = :fldName ")
result = (await result_db.execute(sql, {"sysCode": column['ssys_cd'], result = (await result_db.execute(sql, {"ssys_id": column['ssys_id'],
"mdlName": column['mdl_name'], "tabName": column['tab_eng_name'], "mdlName": column['mdl_name'], "tabName": column['tab_eng_name'],
"fldName": column['fld_eng_name'] "fldName": column['fld_eng_name']
})) }))
@ -661,28 +659,28 @@ class MetaDao:
@classmethod @classmethod
async def get_op_relation_by_column(cls, result_db: AsyncSession, column: {}, module: str): async def get_op_relation_by_column(cls, result_db: AsyncSession, column: {}, module: str):
sql = text("select a1.* ,case when a2.rela_value = '1' then 'A' when a2.rela_value = '2' then 'B' end as father" sql = text("select a1.* ,case when a2.rela_value = '1' then 'A' when a2.rela_value = '2' then 'B' end as father"
" from (select distinct a_ssys_cd ,a_mdl_name ,a_tab_eng_name ,a_fld_eng_name ,b_ssys_cd,b_mdl_name," " from (select distinct a_ssys_id ,a_mdl_name ,a_tab_eng_name ,a_fld_eng_name ,b_ssys_id,b_mdl_name,"
"b_tab_eng_name ,b_fld_eng_name from ( select a_ssys_cd ,a_mdl_name ,a_tab_eng_name ,a_fld_eng_name," "b_tab_eng_name ,b_fld_eng_name from ( select a_ssys_id ,a_mdl_name ,a_tab_eng_name ,a_fld_eng_name,"
"b_ssys_cd,b_mdl_name ,b_tab_eng_name ,b_fld_eng_name from t_batch_fld_relation " "b_ssys_id,b_mdl_name ,b_tab_eng_name ,b_fld_eng_name from t_batch_fld_relation "
"where rela_type in ('jd_relation','op_relation') and rela_value not in ('0') union all " "where rela_type in ('jd_relation','op_relation') and rela_value not in ('0') union all "
"SELECT a_ssys_cd ,a_mdl_name ,a_tab_eng_name ,a_fld_eng_name ,b_ssys_cd ,b_mdl_name,b_tab_eng_name," "SELECT a_ssys_id ,a_mdl_name ,a_tab_eng_name ,a_fld_eng_name ,b_ssys_id ,b_mdl_name,b_tab_eng_name,"
"b_fld_eng_name FROM t_batch_fld_relation t ,JSON_TABLE(replace(t.rela_value,'''','\"'),'$[*]' " "b_fld_eng_name FROM t_batch_fld_relation t ,JSON_TABLE(replace(t.rela_value,'''','\"'),'$[*]' "
"COLUMNS (value_num DOUBLE PATH '$.value')) AS j group by a_ssys_cd ,a_mdl_name ,a_tab_eng_name ," "COLUMNS (value_num DOUBLE PATH '$.value')) AS j group by a_ssys_id ,a_mdl_name ,a_tab_eng_name ,"
"a_fld_eng_name ,b_ssys_cd ,b_mdl_name ,b_tab_eng_name ,b_fld_eng_name " "a_fld_eng_name ,b_ssys_id ,b_mdl_name ,b_tab_eng_name ,b_fld_eng_name "
"having max(j.value_num) > 0.1) b1 ) a1 left join t_batch_fld_relation a2 " "having max(j.value_num) > 0.1) b1 ) a1 left join t_batch_fld_relation a2 "
"on a1.a_ssys_cd = a2.a_ssys_cd and a1.a_mdl_name = a2.a_mdl_name " "on a1.a_ssys_id = a2.a_ssys_id and a1.a_mdl_name = a2.a_mdl_name "
"and a1.a_tab_eng_name = a2.a_tab_eng_name and a1.a_fld_eng_name = a2.a_fld_eng_name " "and a1.a_tab_eng_name = a2.a_tab_eng_name and a1.a_fld_eng_name = a2.a_fld_eng_name "
"and a1.b_ssys_cd = a2.b_ssys_cd and a1.b_mdl_name = a2.b_mdl_name " "and a1.b_ssys_id = a2.b_ssys_id and a1.b_mdl_name = a2.b_mdl_name "
"and a1.b_tab_eng_name = a2.b_tab_eng_name and a1.b_fld_eng_name = a2.b_fld_eng_name " "and a1.b_tab_eng_name = a2.b_tab_eng_name and a1.b_fld_eng_name = a2.b_fld_eng_name "
"and a2.rela_type = 'set_flag' left join t_batch_fld_clas a4 on a1.a_ssys_cd = a4.ssys_cd " "and a2.rela_type = 'set_flag' left join t_batch_fld_clas a4 on a1.a_ssys_id = a4.ssys_id "
"and a1.a_mdl_name = a4.mdl_name and a1.a_tab_eng_name = a4.tab_eng_name " "and a1.a_mdl_name = a4.mdl_name and a1.a_tab_eng_name = a4.tab_eng_name "
"and a1.a_fld_eng_name = a4.fld_eng_name and a4.clas_onum = '2001001002' " "and a1.a_fld_eng_name = a4.fld_eng_name and a4.clas_onum = '2001001002' "
"where coalesce(a4.clas_value,' ') <> '日期时间类'" "where coalesce(a4.clas_value,' ') <> '日期时间类'"
"and ((a1.a_ssys_cd = :sysCode and a1.a_mdl_name = :mdlName and a1.a_tab_eng_name = :tabName " "and ((a1.a_ssys_id = :ssys_id and a1.a_mdl_name = :mdlName and a1.a_tab_eng_name = :tabName "
" and a1.a_fld_eng_name = :fldName and a2.rela_value = :rela_value) " " and a1.a_fld_eng_name = :fldName and a2.rela_value = :rela_value) "
" or (a1.b_ssys_cd = :sysCode and a1.b_mdl_name = :mdlName and a1.b_tab_eng_name = :tabName " " or (a1.b_ssys_id = :ssys_id and a1.b_mdl_name = :mdlName and a1.b_tab_eng_name = :tabName "
" and a1.b_fld_eng_name = :fldName and a2.rela_value = :rela_value2))") " and a1.b_fld_eng_name = :fldName and a2.rela_value = :rela_value2))")
result = (await result_db.execute(sql, {"sysCode": column['ssys_cd'], result = (await result_db.execute(sql, {"ssys_id": column['ssys_id'],
"mdlName": column['mdl_name'], "tabName": column['tab_eng_name'], "mdlName": column['mdl_name'], "tabName": column['tab_eng_name'],
"fldName": column['fld_eng_name'], "fldName": column['fld_eng_name'],
"rela_value": '2' if module == 'pre' else '1', "rela_value": '2' if module == 'pre' else '1',
@ -696,12 +694,12 @@ class MetaDao:
return result_as_dict return result_as_dict
@classmethod @classmethod
async def get_proc_by_table(cls, result_db: AsyncSession, ssys_cd: str, mdl_name: str, tab_eng_name: str): async def get_proc_by_table(cls, result_db: AsyncSession, ssys_id: int, mdl_name: str, tab_eng_name: str):
sql = text("select onum, proc_text from t_metadata_data_lineage_info" sql = text("select onum, proc_text from t_metadata_data_lineage_info"
" where onum in (" " where onum in ("
"select proId from meta_blood_analysis " "select proId from meta_blood_analysis "
"where targetSysCd = :ssysCd and targetMdlName = :mdlName and targetTableName= :tableName)") "where targetSysId = :ssys_id and targetMdlName = :mdlName and targetTableName= :tableName)")
result = (await result_db.execute(sql, {"ssysCd": ssys_cd, "mdlName": mdl_name, "tableName": tab_eng_name})) result = (await result_db.execute(sql, {"ssys_id": ssys_id, "mdlName": mdl_name, "tableName": tab_eng_name}))
# 获取列名 # 获取列名
columns = result.keys() # 返回列名列表 columns = result.keys() # 返回列名列表
# 将结果转换为字典列表 # 将结果转换为字典列表

20
vue-fastapi-backend/module_admin/entity/do/meta_do.py

@ -13,7 +13,7 @@ class MetadataExtractInfo(Base):
onum = Column(Integer, primary_key=True, comment='唯一编号') onum = Column(Integer, primary_key=True, comment='唯一编号')
extract_ver_num = Column(String(50, collation='utf8_general_ci'), comment='采集版本号') extract_ver_num = Column(String(50, collation='utf8_general_ci'), comment='采集版本号')
ver_desc = Column(String(250, collation='utf8_general_ci'), comment='版本描述') ver_desc = Column(String(250, collation='utf8_general_ci'), comment='版本描述')
ssys_cd = Column(String(50, collation='utf8_general_ci'), comment='系统代码') ssys_id = Column(Integer, comment='系统代码')
data_whs_name = Column(String(50, collation='utf8_general_ci'), comment='数据仓库名称') data_whs_name = Column(String(50, collation='utf8_general_ci'), comment='数据仓库名称')
mdl_name = Column(String(50, collation='utf8_general_ci'), comment='模式名称') mdl_name = Column(String(50, collation='utf8_general_ci'), comment='模式名称')
tab_no = Column(Integer, comment='表编号') tab_no = Column(Integer, comment='表编号')
@ -33,7 +33,7 @@ class MetadataSuppInfo(Base):
# onum = Column(Integer, primary_key=True, comment='唯一编号') # onum = Column(Integer, primary_key=True, comment='唯一编号')
onum = Column(String(36, collation='utf8mb4_unicode_ci'), primary_key=True, comment='唯一编号') onum = Column(String(36, collation='utf8mb4_unicode_ci'), primary_key=True, comment='唯一编号')
crrct_ver_num = Column(String(50, collation='utf8_general_ci'), comment='补录版本号') crrct_ver_num = Column(String(50, collation='utf8_general_ci'), comment='补录版本号')
ssys_cd = Column(String(50, collation='utf8_general_ci'), comment='系统代码') ssys_id = Column(Integer, comment='系统代码')
mdl_name = Column(String(50, collation='utf8_general_ci'), comment='模型名称') mdl_name = Column(String(50, collation='utf8_general_ci'), comment='模型名称')
tab_eng_name = Column(String(250, collation='utf8_general_ci'), comment='表英文名称') tab_eng_name = Column(String(250, collation='utf8_general_ci'), comment='表英文名称')
tab_crrct_name = Column(String(250, collation='utf8_general_ci'), comment='表补录名称') tab_crrct_name = Column(String(250, collation='utf8_general_ci'), comment='表补录名称')
@ -55,7 +55,7 @@ class MetadataSuppInfoVett(Base):
# onum = Column(Integer, primary_key=True, comment='唯一编号') # onum = Column(Integer, primary_key=True, comment='唯一编号')
onum = Column(String(36, collation='utf8mb4_unicode_ci'), primary_key=True, comment='唯一编号') onum = Column(String(36, collation='utf8mb4_unicode_ci'), primary_key=True, comment='唯一编号')
crrct_ver_num = Column(String(50, collation='utf8_general_ci'), comment='补录版本号') crrct_ver_num = Column(String(50, collation='utf8_general_ci'), comment='补录版本号')
ssys_cd = Column(String(50, collation='utf8_general_ci'), comment='系统代码') ssys_id = Column(Integer, comment='系统代码')
mdl_name = Column(String(50, collation='utf8_general_ci'), comment='模型名称') mdl_name = Column(String(50, collation='utf8_general_ci'), comment='模型名称')
tab_eng_name = Column(String(250, collation='utf8_general_ci'), comment='表英文名称') tab_eng_name = Column(String(250, collation='utf8_general_ci'), comment='表英文名称')
tab_crrct_name = Column(String(250, collation='utf8_general_ci'), comment='表补录名称') tab_crrct_name = Column(String(250, collation='utf8_general_ci'), comment='表补录名称')
@ -97,7 +97,7 @@ class MetadataFldTabExtractInfo(Base):
onum = Column(Integer, primary_key=True, comment='唯一编号') onum = Column(Integer, primary_key=True, comment='唯一编号')
extract_ver_num = Column(String(50, collation='utf8_general_ci'), comment='采集版本号') extract_ver_num = Column(String(50, collation='utf8_general_ci'), comment='采集版本号')
ssys_cd = Column(String(50, collation='utf8_general_ci'), comment='系统代码') ssys_id = Column(Integer, comment='系统代码')
data_whs_name = Column(String(255, collation='utf8_general_ci'), comment='数据仓库名称') data_whs_name = Column(String(255, collation='utf8_general_ci'), comment='数据仓库名称')
mdl_name = Column(String(255, collation='utf8_general_ci'), comment='模块名称') mdl_name = Column(String(255, collation='utf8_general_ci'), comment='模块名称')
tab_no = Column(String(50, collation='utf8_general_ci'), comment='表编号') tab_no = Column(String(50, collation='utf8_general_ci'), comment='表编号')
@ -120,7 +120,7 @@ class MetadataFldSuppInfo(Base):
onum = Column(String(50, collation='utf8_general_ci'), primary_key=True, comment='唯一编号') onum = Column(String(50, collation='utf8_general_ci'), primary_key=True, comment='唯一编号')
crrct_ver_num = Column(String(50, collation='utf8_general_ci'), comment='补充版本号') crrct_ver_num = Column(String(50, collation='utf8_general_ci'), comment='补充版本号')
ssys_cd = Column(String(50, collation='utf8_general_ci'), comment='系统代码') ssys_id = Column(Integer, comment='系统代码')
mdl_name = Column(String(255, collation='utf8_general_ci'), comment='模块名称') mdl_name = Column(String(255, collation='utf8_general_ci'), comment='模块名称')
tab_eng_name = Column(String(250, collation='utf8_general_ci'), comment='表英文名称') tab_eng_name = Column(String(250, collation='utf8_general_ci'), comment='表英文名称')
fld_eng_name = Column(String(255, collation='utf8_general_ci'), comment='字段英文名称') fld_eng_name = Column(String(255, collation='utf8_general_ci'), comment='字段英文名称')
@ -144,7 +144,7 @@ class MetadataFldSuppInfoVett(Base):
onum = Column(String(50, collation='utf8_general_ci'), primary_key=True, comment='唯一编号') onum = Column(String(50, collation='utf8_general_ci'), primary_key=True, comment='唯一编号')
crrct_ver_num = Column(String(50, collation='utf8_general_ci'), comment='补充版本号') crrct_ver_num = Column(String(50, collation='utf8_general_ci'), comment='补充版本号')
ssys_cd = Column(String(50, collation='utf8_general_ci'), comment='系统代码') ssys_id = Column(Integer, comment='系统代码')
mdl_name = Column(String(255, collation='utf8_general_ci'), comment='模块名称') mdl_name = Column(String(255, collation='utf8_general_ci'), comment='模块名称')
tab_eng_name = Column(String(250, collation='utf8_general_ci'), comment='表英文名称') tab_eng_name = Column(String(250, collation='utf8_general_ci'), comment='表英文名称')
fld_eng_name = Column(String(255, collation='utf8_general_ci'), comment='字段英文名称') fld_eng_name = Column(String(255, collation='utf8_general_ci'), comment='字段英文名称')
@ -169,7 +169,7 @@ class MetaBatchTabClas(Base):
__tablename__ = 't_batch_tab_clas' __tablename__ = 't_batch_tab_clas'
onum = Column(Integer, primary_key=True, comment='序号(主键自增)') onum = Column(Integer, primary_key=True, comment='序号(主键自增)')
ssys_cd = Column(String(50, collation='utf8_general_ci'), comment='源系统代码') ssys_id = Column(Integer, comment='源系统id')
data_whs_name = Column(String(50, collation='utf8_general_ci'), comment='数据库名称') data_whs_name = Column(String(50, collation='utf8_general_ci'), comment='数据库名称')
mdl_name = Column(String(50, collation='utf8_general_ci'), comment='模式名称') mdl_name = Column(String(50, collation='utf8_general_ci'), comment='模式名称')
tab_no = Column(Integer, comment='表编号') tab_no = Column(Integer, comment='表编号')
@ -183,7 +183,7 @@ class MetaBatchFldClas(Base):
__tablename__ = 't_batch_fld_clas' __tablename__ = 't_batch_fld_clas'
onum = Column(Integer, primary_key=True, comment='序号(主键自增)') onum = Column(Integer, primary_key=True, comment='序号(主键自增)')
ssys_cd = Column(String(50, collation='utf8_general_ci'), comment='源系统代码') ssys_id = Column(Integer, comment='源系统代码')
data_whs_name = Column(String(50, collation='utf8_general_ci'), comment='数据库名称') data_whs_name = Column(String(50, collation='utf8_general_ci'), comment='数据库名称')
mdl_name = Column(String(50, collation='utf8_general_ci'), comment='模式名称') mdl_name = Column(String(50, collation='utf8_general_ci'), comment='模式名称')
tab_no = Column(Integer, comment='表编号') tab_no = Column(Integer, comment='表编号')
@ -200,14 +200,14 @@ class MetaBloodAnalysis(Base):
id = Column(String(50, collation='utf8_general_ci'), primary_key=True, comment='id') id = Column(String(50, collation='utf8_general_ci'), primary_key=True, comment='id')
proId = Column(Integer, comment='存储过程ID') proId = Column(Integer, comment='存储过程ID')
proName = Column(String(100, collation='utf8_general_ci'), comment='存储过程名称') proName = Column(String(100, collation='utf8_general_ci'), comment='存储过程名称')
targetSysCd = Column(String(100, collation='utf8_general_ci'), comment='目标系统') targetSysId = Column(String(100, collation='utf8_general_ci'), comment='目标系统')
targetMdlName = Column(String(100, collation='utf8_general_ci'), comment='目标模式') targetMdlName = Column(String(100, collation='utf8_general_ci'), comment='目标模式')
targetTableName = Column(String(100, collation='utf8_general_ci'), comment='目标表') targetTableName = Column(String(100, collation='utf8_general_ci'), comment='目标表')
targetTableCnName = Column(String(100, collation='utf8_general_ci'), comment='目标表中文名') targetTableCnName = Column(String(100, collation='utf8_general_ci'), comment='目标表中文名')
targetColName = Column(String(100, collation='utf8_general_ci'), comment='目标字段名') targetColName = Column(String(100, collation='utf8_general_ci'), comment='目标字段名')
targetColCnName = Column(String(100, collation='utf8_general_ci'), comment='目标字段中文名') targetColCnName = Column(String(100, collation='utf8_general_ci'), comment='目标字段中文名')
targetColType = Column(String(100, collation='utf8_general_ci'), comment='目标字段类型') targetColType = Column(String(100, collation='utf8_general_ci'), comment='目标字段类型')
sourceSysCd = Column(String(100, collation='utf8_general_ci'), comment='源系统代码') sourceSysId = Column(String(100, collation='utf8_general_ci'), comment='源系统代码')
sourceMdlName = Column(String(100, collation='utf8_general_ci'), comment='源系统模式') sourceMdlName = Column(String(100, collation='utf8_general_ci'), comment='源系统模式')
sourceTableName = Column(String(100, collation='utf8_general_ci'), comment='源系统表名') sourceTableName = Column(String(100, collation='utf8_general_ci'), comment='源系统表名')
sourceTableCnName = Column(String(100, collation='utf8_general_ci'), comment='源系统表中文名') sourceTableCnName = Column(String(100, collation='utf8_general_ci'), comment='源系统表中文名')

45
vue-fastapi-backend/module_admin/entity/do/metadata_config_do.py

@ -1,5 +1,5 @@
from datetime import datetime from datetime import datetime
from sqlalchemy import Column,Text,Date, String, Integer, DateTime, TIMESTAMP,Boolean, func,DECIMAL from sqlalchemy import Column, String, Integer, DateTime, TIMESTAMP, Boolean, func, DECIMAL, Text, Date
from config.database import Base from config.database import Base
@ -15,7 +15,7 @@ from config.database import Base
# # clas_thre_clas = Column(String(50), default=None, comment='标签三级分类') # # clas_thre_clas = Column(String(50), default=None, comment='标签三级分类')
# clas_name = Column(String(200), default=None, comment='标签名称') # clas_name = Column(String(200), default=None, comment='标签名称')
# clas_tmpl = Column(String(200), default=None, comment='标签模版') # clas_tmpl = Column(String(200), default=None, comment='标签模版')
# belt_batch_content = Column(Integer, default=None, comment='分类') # belt_batch_content = Column(Integer, default=None, comment='分类')
# clas_eff_flag = Column(String(1), default=None, comment='标签有效标志') # clas_eff_flag = Column(String(1), default=None, comment='标签有效标志')
# rec_subm_prsn = Column(String(64), default=None, comment='记录提交人') # rec_subm_prsn = Column(String(64), default=None, comment='记录提交人')
# upd_time = Column(TIMESTAMP, default=func.now(), onupdate=func.now(), nullable=True, comment='更新时间') # upd_time = Column(TIMESTAMP, default=func.now(), onupdate=func.now(), nullable=True, comment='更新时间')
@ -32,7 +32,8 @@ class MetadataSec(Base):
sec_level_name = Column(String(50), default=None, comment='等级名称') sec_level_name = Column(String(50), default=None, comment='等级名称')
sec_level_desc = Column(String(200), default=None, comment='等级说明') sec_level_desc = Column(String(200), default=None, comment='等级说明')
sec_level_summary = Column(String(200), comment='等级简介') sec_level_summary = Column(String(200), comment='等级简介')
class SecuBizConfigRela(Base): class SecuBizConfigRela(Base):
""" """
业务域配置关联表 ORM 映射类对应表 t_secu_biz_config_rela 业务域配置关联表 ORM 映射类对应表 t_secu_biz_config_rela
@ -43,7 +44,9 @@ class SecuBizConfigRela(Base):
biz_onum = Column(Integer, nullable=True, comment="业务域id") biz_onum = Column(Integer, nullable=True, comment="业务域id")
tab_onum = Column(Integer, nullable=True, comment="表id") tab_onum = Column(Integer, nullable=True, comment="表id")
create_by = Column(String(20), nullable=True, comment="创建者") create_by = Column(String(20), nullable=True, comment="创建者")
create_time = Column(DateTime, nullable=True, comment="创建时间") create_time = Column(DateTime, nullable=True, comment="创建时间")
class TaskBizConfigRela(Base): class TaskBizConfigRela(Base):
""" """
业务域调度配置关联表 ORM 映射类对应表 t_task_biz_config_rela 业务域调度配置关联表 ORM 映射类对应表 t_task_biz_config_rela
@ -54,7 +57,8 @@ class TaskBizConfigRela(Base):
biz_onum = Column(Integer, nullable=True, comment="业务域id") biz_onum = Column(Integer, nullable=True, comment="业务域id")
tab_onum = Column(Integer, nullable=True, comment="表id") tab_onum = Column(Integer, nullable=True, comment="表id")
create_by = Column(String(20), nullable=True, comment="创建者") create_by = Column(String(20), nullable=True, comment="创建者")
create_time = Column(DateTime, nullable=True, comment="创建时间") create_time = Column(DateTime, nullable=True, comment="创建时间")
class SecuBizPermiConfig(Base): class SecuBizPermiConfig(Base):
__tablename__ = "t_secu_biz_permi_config" __tablename__ = "t_secu_biz_permi_config"
@ -69,7 +73,8 @@ class SecuBizPermiConfig(Base):
create_time = Column(DateTime, nullable=True, comment="创建时间") create_time = Column(DateTime, nullable=True, comment="创建时间")
update_by = Column(String(20), nullable=True, comment="更新者") update_by = Column(String(20), nullable=True, comment="更新者")
update_time = Column(DateTime, nullable=True, comment="更新时间") update_time = Column(DateTime, nullable=True, comment="更新时间")
class SecuBizConfig(Base): class SecuBizConfig(Base):
__tablename__ = "t_secu_biz_config" __tablename__ = "t_secu_biz_config"
@ -81,6 +86,8 @@ class SecuBizConfig(Base):
create_time = Column(DateTime, nullable=True, comment="创建时间") create_time = Column(DateTime, nullable=True, comment="创建时间")
update_by = Column(String(20), nullable=True, comment="更新者") update_by = Column(String(20), nullable=True, comment="更新者")
update_time = Column(DateTime, nullable=True, comment="更新时间") update_time = Column(DateTime, nullable=True, comment="更新时间")
class TaskBizConfig(Base): class TaskBizConfig(Base):
__tablename__ = "t_task_biz_config" __tablename__ = "t_task_biz_config"
@ -91,11 +98,13 @@ class TaskBizConfig(Base):
create_by = Column(String(20), nullable=True, comment="创建者") create_by = Column(String(20), nullable=True, comment="创建者")
create_time = Column(DateTime, nullable=True, comment="创建时间") create_time = Column(DateTime, nullable=True, comment="创建时间")
update_by = Column(String(20), nullable=True, comment="更新者") update_by = Column(String(20), nullable=True, comment="更新者")
update_time = Column(DateTime, nullable=True, comment="更新时间") update_time = Column(DateTime, nullable=True, comment="更新时间")
status = Column(String(10), nullable=False, default="OFFLINE", comment="状态") status = Column(String(10), nullable=False, default="OFFLINE", comment="状态")
ds_time = Column(DateTime, nullable=True, comment="调度时间") ds_time = Column(DateTime, nullable=True, comment="调度时间")
ds_ids = Column(String(50), nullable=True, comment="任务ID") ds_ids = Column(String(50), nullable=True, comment="任务ID")
schId = Column(String(50), nullable=True, comment="调度id") schId = Column(String(50), nullable=True, comment="调度id")
class BatchBusiLabelConfig(Base): class BatchBusiLabelConfig(Base):
""" """
批处理业务标签配置表 ORM 映射类对应表 t_batch_busi_label_config 批处理业务标签配置表 ORM 映射类对应表 t_batch_busi_label_config
@ -107,9 +116,11 @@ class BatchBusiLabelConfig(Base):
regex_pattern = Column(String(255), nullable=True, comment="正则表达式") regex_pattern = Column(String(255), nullable=True, comment="正则表达式")
ssys_cd = Column(String(50), nullable=True) ssys_cd = Column(String(50), nullable=True)
mdl_name = Column(String(50), nullable=True) mdl_name = Column(String(50), nullable=True)
ratio = Column(DECIMAL(10, 4), nullable=True) ratio = Column(DECIMAL(10, 4), nullable=True)
upd_by = Column(String(50), nullable=True) upd_by = Column(String(50), nullable=True)
upd_time = Column(DateTime, nullable=True, comment='更新时间') upd_time = Column(DateTime, nullable=True, comment='更新时间')
class BatchDataopLabelConfig(Base): class BatchDataopLabelConfig(Base):
""" """
批处理数据操作标签配置表 ORM 映射类对应表 t_batch_dataop_label_config 批处理数据操作标签配置表 ORM 映射类对应表 t_batch_dataop_label_config
@ -127,8 +138,10 @@ class BatchDataopLabelConfig(Base):
config7 = Column(DECIMAL(10, 4), nullable=True, comment="参数7") config7 = Column(DECIMAL(10, 4), nullable=True, comment="参数7")
ssys_cd = Column(String(50), nullable=True) ssys_cd = Column(String(50), nullable=True)
mdl_name = Column(String(50), nullable=True) mdl_name = Column(String(50), nullable=True)
upd_by = Column(String(50), nullable=True) upd_by = Column(String(50), nullable=True)
upd_time = Column(DateTime, nullable=True, comment='更新时间') upd_time = Column(DateTime, nullable=True, comment='更新时间')
class BatchDatatypeLabelConfig(Base): class BatchDatatypeLabelConfig(Base):
""" """
批处理字段类型标签配置表 ORM 映射类对应表 t_batch_datatype_label_config 批处理字段类型标签配置表 ORM 映射类对应表 t_batch_datatype_label_config
@ -139,9 +152,11 @@ class BatchDatatypeLabelConfig(Base):
datatype = Column(String(100), nullable=True, comment="字段类型") datatype = Column(String(100), nullable=True, comment="字段类型")
ratio = Column(DECIMAL(10, 4), nullable=True, comment="比率") ratio = Column(DECIMAL(10, 4), nullable=True, comment="比率")
ssys_cd = Column(String(50), nullable=True) ssys_cd = Column(String(50), nullable=True)
mdl_name = Column(String(50), nullable=True) mdl_name = Column(String(50), nullable=True)
upd_by = Column(String(50), nullable=True) upd_by = Column(String(50), nullable=True)
upd_time = Column(DateTime, nullable=True, comment='更新时间') upd_time = Column(DateTime, nullable=True, comment='更新时间')
class DatasecConfig(Base): class DatasecConfig(Base):
""" """
数据安全参数配置 ORM 映射类对应表 t_datasec_config 数据安全参数配置 ORM 映射类对应表 t_datasec_config
@ -185,4 +200,4 @@ class DataAstContentRela(Base):
rela_eff_begn_date = Column(Date, nullable=True, comment='关系生效开始日期') rela_eff_begn_date = Column(Date, nullable=True, comment='关系生效开始日期')
rela_eff_end_date = Column(Date, nullable=True, comment='关系生效结束日期') rela_eff_end_date = Column(Date, nullable=True, comment='关系生效结束日期')
upd_prsn = Column(String(255), nullable=False, comment='更新人员') upd_prsn = Column(String(255), nullable=False, comment='更新人员')
rela_status = Column(String(18), nullable=True, comment='关系状态') rela_status = Column(String(18), nullable=True, comment='关系状态')

10
vue-fastapi-backend/module_admin/entity/vo/meta_vo.py

@ -7,7 +7,7 @@ from pydantic.alias_generators import to_camel
class MetaModel(BaseModel): class MetaModel(BaseModel):
model_config = ConfigDict(alias_generator=to_camel, from_attributes=True) model_config = ConfigDict(alias_generator=to_camel, from_attributes=True)
ssys_cd: Optional[str] = Field(default=None, description='系统名称') ssys_id: Optional[int] = Field(default=None, description='系统名称')
mdl_name: Optional[str] = Field(default=None, description='模式名称') mdl_name: Optional[str] = Field(default=None, description='模式名称')
tab_name: Optional[str] = Field(default=None, description='表名') tab_name: Optional[str] = Field(default=None, description='表名')
tab_type: Optional[str] = Field(default=None, description='表类型') tab_type: Optional[str] = Field(default=None, description='表类型')
@ -25,7 +25,7 @@ class MetaPageObject(MetaModel):
@as_query @as_query
class MetaColObject(BaseModel): class MetaColObject(BaseModel):
model_config = ConfigDict(alias_generator=to_camel, from_attributes=True) model_config = ConfigDict(alias_generator=to_camel, from_attributes=True)
ssys_cd: Optional[str] = Field(default=None, description='系统名称') ssys_id: Optional[int] = Field(default=None, description='系统名称')
mdl_name: Optional[str] = Field(default=None, description='模式名称') mdl_name: Optional[str] = Field(default=None, description='模式名称')
tab_name: Optional[str] = Field(default=None, description='表名') tab_name: Optional[str] = Field(default=None, description='表名')
@ -46,7 +46,7 @@ class ColumnSuppleModel(BaseModel):
class SuppleModel(BaseModel): class SuppleModel(BaseModel):
model_config = ConfigDict(alias_generator=to_camel, from_attributes=True) model_config = ConfigDict(alias_generator=to_camel, from_attributes=True)
ssys_cd: Optional[str] = None ssys_id: Optional[int] = None
mdl_name: Optional[str] = None mdl_name: Optional[str] = None
tab_eng_name: Optional[str] = None tab_eng_name: Optional[str] = None
tab_crrct_name: Optional[str] = None tab_crrct_name: Optional[str] = None
@ -61,7 +61,7 @@ class SuppleModel(BaseModel):
@as_query @as_query
class MetaBusinessRelShipObject(BaseModel): class MetaBusinessRelShipObject(BaseModel):
model_config = ConfigDict(alias_generator=to_camel, from_attributes=True) model_config = ConfigDict(alias_generator=to_camel, from_attributes=True)
ssys_cd: Optional[str] ssys_id: Optional[int]
mdl_name: Optional[str] mdl_name: Optional[str]
tab_eng_name: Optional[str] tab_eng_name: Optional[str]
type: Optional[str] type: Optional[str]
@ -70,6 +70,6 @@ class MetaBusinessRelShipObject(BaseModel):
@as_query @as_query
class MetaProcQueryObject(BaseModel): class MetaProcQueryObject(BaseModel):
model_config = ConfigDict(alias_generator=to_camel, from_attributes=True) model_config = ConfigDict(alias_generator=to_camel, from_attributes=True)
ssys_cd: Optional[str] ssys_id: Optional[int]
mdl_name: Optional[str] mdl_name: Optional[str]
tab_eng_name: Optional[str] tab_eng_name: Optional[str]

132
vue-fastapi-backend/module_admin/service/meta_service.py

@ -41,7 +41,7 @@ class MetaService:
meta_rel_list = await MetaDao.get_meta_rel_list(result_db, query_object) meta_rel_list = await MetaDao.get_meta_rel_list(result_db, query_object)
if meta_rel_list and len(meta_rel_list.rows) > 0: if meta_rel_list and len(meta_rel_list.rows) > 0:
for table in meta_rel_list.rows: for table in meta_rel_list.rows:
tab_list = await MetaDao.get_meta_tab_clas(result_db, table['ssysCd'], table['mdlName'], tab_list = await MetaDao.get_meta_tab_clas(result_db, table['ssysId'], table['mdlName'],
table['tabEngName']) table['tabEngName'])
table['batchTabClas'] = CamelCaseUtil.transform_result(tab_list) table['batchTabClas'] = CamelCaseUtil.transform_result(tab_list)
return meta_rel_list return meta_rel_list
@ -49,7 +49,7 @@ class MetaService:
meta_rel_list = await MetaDao.get_meta_rel_list(result_db, query_object) meta_rel_list = await MetaDao.get_meta_rel_list(result_db, query_object)
if meta_rel_list and len(meta_rel_list.rows) > 0: if meta_rel_list and len(meta_rel_list.rows) > 0:
for table in meta_rel_list.rows: for table in meta_rel_list.rows:
tab_list = await MetaDao.get_meta_tab_clas(result_db, table['ssysCd'], table['mdlName'], tab_list = await MetaDao.get_meta_tab_clas(result_db, table['ssysId'], table['mdlName'],
table['tabEngName']) table['tabEngName'])
table['batchTabClas'] = CamelCaseUtil.transform_result(tab_list) table['batchTabClas'] = CamelCaseUtil.transform_result(tab_list)
return meta_rel_list return meta_rel_list
@ -59,7 +59,7 @@ class MetaService:
meta_result = await MetaDao.get_meta_col_list(result_db, query_object) meta_result = await MetaDao.get_meta_col_list(result_db, query_object)
result = CamelCaseUtil.transform_result(meta_result) result = CamelCaseUtil.transform_result(meta_result)
for column in result: for column in result:
fld_list = await MetaDao.get_meta_fld_clas(result_db, column['ssysCd'], column['mdlName'], fld_list = await MetaDao.get_meta_fld_clas(result_db, column['ssysId'], column['mdlName'],
column['tabEngName'], column['fldEngName']) column['tabEngName'], column['fldEngName'])
column['batchFldClas'] = CamelCaseUtil.transform_result(fld_list) column['batchFldClas'] = CamelCaseUtil.transform_result(fld_list)
if column['dataSecLvl'] is None and column['dataDictId'] is not None: if column['dataSecLvl'] is None and column['dataDictId'] is not None:
@ -76,10 +76,10 @@ class MetaService:
@classmethod @classmethod
async def meta_supp(cls, result_db: AsyncSession, supple: SuppleModel, current_user: CurrentUserModel): async def meta_supp(cls, result_db: AsyncSession, supple: SuppleModel, current_user: CurrentUserModel):
# 0,暂存 waiting,申请中,pending审核中,succeed,rejected已审核,canceled已取消 # 0,暂存 waiting,申请中,pending审核中,succeed,rejected已审核,canceled已取消
hasTable = await MetaDao.get_lastest_meta_data_supp_vett(result_db, supple.ssys_cd, supple.mdl_name, hasTable = await MetaDao.get_lastest_meta_data_supp_vett(result_db, supple.ssys_id, supple.mdl_name,
supple.tab_eng_name) supple.tab_eng_name)
oldTable = await MetaDao.get_supp_table_by_vett(supple.ssys_cd, supple.mdl_name, supple.tab_eng_name, result_db) oldTable = await MetaDao.get_supp_table_by_vett(supple.ssys_id, supple.mdl_name, supple.tab_eng_name, result_db)
tableInfo = await MetaDao.get_meta_table(supple.ssys_cd, supple.mdl_name, supple.tab_eng_name, result_db) tableInfo = await MetaDao.get_meta_table(supple.ssys_id, supple.mdl_name, supple.tab_eng_name, result_db)
tableOnum = uuid.uuid4() tableOnum = uuid.uuid4()
if hasTable is not None: if hasTable is not None:
if hasTable.apply_status == 'waiting': if hasTable.apply_status == 'waiting':
@ -89,7 +89,7 @@ class MetaService:
applyTime = datetime.now().strftime("%Y-%m-%d %H:%M:%S") applyTime = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
suppTableInfo = MetadataSuppInfoVett() suppTableInfo = MetadataSuppInfoVett()
suppTableInfo.onum = tableOnum suppTableInfo.onum = tableOnum
suppTableInfo.ssys_cd = supple.ssys_cd suppTableInfo.ssys_id = supple.ssys_id
suppTableInfo.mdl_name = supple.mdl_name suppTableInfo.mdl_name = supple.mdl_name
suppTableInfo.tab_eng_name = supple.tab_eng_name suppTableInfo.tab_eng_name = supple.tab_eng_name
suppTableInfo.tab_crrct_name = supple.tab_crrct_name suppTableInfo.tab_crrct_name = supple.tab_crrct_name
@ -104,18 +104,18 @@ class MetaService:
await MetaDao.insertMetadataSuppInfoVett(suppTableInfo, result_db) await MetaDao.insertMetadataSuppInfoVett(suppTableInfo, result_db)
if supple.columnInfo is not None and len(supple.columnInfo) > 0: if supple.columnInfo is not None and len(supple.columnInfo) > 0:
for column in supple.columnInfo: for column in supple.columnInfo:
oldColumn = await MetaDao.get_supp_column_by_columnInfo(supple.ssys_cd, supple.mdl_name, oldColumn = await MetaDao.get_supp_column_by_columnInfo(supple.ssys_id, supple.mdl_name,
supple.tab_eng_name, supple.tab_eng_name,
column.fld_eng_name, result_db) column.fld_eng_name, result_db)
data_dict_name = '' data_dict_name = ''
if oldColumn and oldColumn.data_dict_id and oldColumn.data_dict_id != '': if oldColumn and oldColumn.data_dict_id and oldColumn.data_dict_id != '':
oldDict = await DataStdDao.get_data_dict_by_id(result_db, oldColumn.data_dict_id) oldDict = await DataStdDao.get_data_dict_by_id(result_db, oldColumn.data_dict_id)
data_dict_name = oldDict.data_dict_cn_name if oldDict else '' data_dict_name = oldDict.data_dict_cn_name if oldDict else ''
columnInfo = await MetaDao.get_meta_column(supple.ssys_cd, supple.mdl_name, supple.tab_eng_name, columnInfo = await MetaDao.get_meta_column(supple.ssys_id, supple.mdl_name, supple.tab_eng_name,
column.fld_eng_name, result_db) column.fld_eng_name, result_db)
suppColumnInfo = MetadataFldSuppInfoVett() suppColumnInfo = MetadataFldSuppInfoVett()
suppColumnInfo.onum = uuid.uuid4() suppColumnInfo.onum = uuid.uuid4()
suppColumnInfo.ssys_cd = supple.ssys_cd suppColumnInfo.ssys_id = supple.ssys_id
suppColumnInfo.mdl_name = supple.mdl_name suppColumnInfo.mdl_name = supple.mdl_name
suppColumnInfo.tab_eng_name = supple.tab_eng_name suppColumnInfo.tab_eng_name = supple.tab_eng_name
suppColumnInfo.fld_eng_name = column.fld_eng_name suppColumnInfo.fld_eng_name = column.fld_eng_name
@ -146,7 +146,7 @@ class MetaService:
tableDict = dict( tableDict = dict(
onum=tableInfo.onum, onum=tableInfo.onum,
crrctVerNum=table.crrct_ver_num if table else None, crrctVerNum=table.crrct_ver_num if table else None,
ssysCd=tableInfo.ssys_cd, ssysId=tableInfo.ssys_id,
mdlName=tableInfo.mdl_name, mdlName=tableInfo.mdl_name,
tabEngName=tableInfo.tab_eng_name, tabEngName=tableInfo.tab_eng_name,
tabCnName=tableInfo.tab_cn_name, tabCnName=tableInfo.tab_cn_name,
@ -168,7 +168,7 @@ class MetaService:
columnDict = dict( columnDict = dict(
onum=columnInfo.onum, onum=columnInfo.onum,
crrctVerNum=column.crrct_ver_num if column and column.crrct_ver_num else None, crrctVerNum=column.crrct_ver_num if column and column.crrct_ver_num else None,
ssysCd=columnInfo.ssys_cd, ssysId=columnInfo.ssys_id,
mdlName=columnInfo.mdl_name, mdlName=columnInfo.mdl_name,
tabEngName=columnInfo.tab_eng_name, tabEngName=columnInfo.tab_eng_name,
fldEngName=columnInfo.fld_eng_name, fldEngName=columnInfo.fld_eng_name,
@ -195,13 +195,13 @@ class MetaService:
async def get_meta_apply_detail_services(cls, result_db: AsyncSession, businessId: str): async def get_meta_apply_detail_services(cls, result_db: AsyncSession, businessId: str):
tableData = await MetaDao.get_supp_table_vett_by_id(businessId, result_db) tableData = await MetaDao.get_supp_table_vett_by_id(businessId, result_db)
table = CamelCaseUtil.transform_result(tableData) table = CamelCaseUtil.transform_result(tableData)
clas_list = await MetaDao.get_meta_tab_clas(result_db, tableData.ssys_cd, tableData.mdl_name, clas_list = await MetaDao.get_meta_tab_clas(result_db, tableData.ssys_id, tableData.mdl_name,
tableData.tab_eng_name) tableData.tab_eng_name)
table['batchTabClas'] = CamelCaseUtil.transform_result(clas_list) table['batchTabClas'] = CamelCaseUtil.transform_result(clas_list)
columnData = await MetaDao.get_supp_column_vett_by_tableInfo(result_db, tableData) columnData = await MetaDao.get_supp_column_vett_by_tableInfo(result_db, tableData)
column_list = CamelCaseUtil.transform_result(columnData) column_list = CamelCaseUtil.transform_result(columnData)
for column in column_list: for column in column_list:
col_list = await MetaDao.get_meta_fld_clas(result_db, column['ssysCd'], column['mdlName'], col_list = await MetaDao.get_meta_fld_clas(result_db, column['ssysId'], column['mdlName'],
column['tabEngName'], column['fldEngName']) column['tabEngName'], column['fldEngName'])
column['batchColClas'] = CamelCaseUtil.transform_result(col_list) column['batchColClas'] = CamelCaseUtil.transform_result(col_list)
result = dict( result = dict(
@ -213,16 +213,16 @@ class MetaService:
@classmethod @classmethod
async def get_table_by_id(cls, result_db: AsyncSession, tableId: int): async def get_table_by_id(cls, result_db: AsyncSession, tableId: int):
table = await MetaDao.get_meta_table_by_id(tableId, result_db) table = await MetaDao.get_meta_table_by_id(tableId, result_db)
tab_list = await MetaDao.get_meta_tab_clas(result_db, table['ssysCd'], table['mdlName'], tab_list = await MetaDao.get_meta_tab_clas(result_db, table['ssysId'], table['mdlName'],
table['tabEngName']) table['tabEngName'])
table['batchTabClas'] = CamelCaseUtil.transform_result(tab_list) table['batchTabClas'] = CamelCaseUtil.transform_result(tab_list)
colQuery = MetaColObject() colQuery = MetaColObject()
colQuery.ssys_cd = table['ssysCd'] colQuery.ssys_id = table['ssysId']
colQuery.mdl_name = table['mdlName'] colQuery.mdl_name = table['mdlName']
colQuery.tab_name = table['tabEngName'] colQuery.tab_name = table['tabEngName']
columnList = await MetaDao.get_meta_col_list(result_db, colQuery) columnList = await MetaDao.get_meta_col_list(result_db, colQuery)
for column in columnList: for column in columnList:
col_list = await MetaDao.get_meta_fld_clas(result_db, column['ssys_cd'], column['mdl_name'], col_list = await MetaDao.get_meta_fld_clas(result_db, column['ssys_id'], column['mdl_name'],
column['tab_eng_name'], column['fld_eng_name']) column['tab_eng_name'], column['fld_eng_name'])
column['batchColClas'] = CamelCaseUtil.transform_result(col_list) column['batchColClas'] = CamelCaseUtil.transform_result(col_list)
table['columnList'] = CamelCaseUtil.transform_result(columnList) table['columnList'] = CamelCaseUtil.transform_result(columnList)
@ -230,37 +230,37 @@ class MetaService:
@classmethod @classmethod
async def getBusinessRelationShip(cls, result_db: AsyncSession, meta_query: MetaBusinessRelShipObject): async def getBusinessRelationShip(cls, result_db: AsyncSession, meta_query: MetaBusinessRelShipObject):
currentNodeList = await cls.getRelationByTable(result_db, meta_query.ssys_cd, meta_query.mdl_name, currentNodeList = await cls.getRelationByTable(result_db, meta_query.ssys_id, meta_query.mdl_name,
meta_query.tab_eng_name, meta_query.type) meta_query.tab_eng_name, meta_query.type)
relationList = [] relationList = []
if currentNodeList is not None and len(currentNodeList) > 0: if currentNodeList is not None and len(currentNodeList) > 0:
for currentNode in currentNodeList: for currentNode in currentNodeList:
if currentNode['father'] is None: if currentNode['father'] is None:
relation = {"source": {"ssys_cd": currentNode['a_ssys_cd'], relation = {"source": {"ssys_id": currentNode['a_ssys_id'],
"mdl_name": currentNode['a_mdl_name'], "mdl_name": currentNode['a_mdl_name'],
"tab_eng_name": currentNode['a_tab_eng_name'], "tab_eng_name": currentNode['a_tab_eng_name'],
"fld_eng_name": currentNode['a_fld_eng_name']}, "fld_eng_name": currentNode['a_fld_eng_name']},
"target": {'ssys_cd': currentNode['b_ssys_cd'], "target": {'ssys_id': currentNode['b_ssys_id'],
'mdl_name': currentNode['b_mdl_name'], 'mdl_name': currentNode['b_mdl_name'],
'tab_eng_name': currentNode['b_tab_eng_name'], 'tab_eng_name': currentNode['b_tab_eng_name'],
'fld_eng_name': currentNode['b_fld_eng_name']}, 'fld_eng_name': currentNode['b_fld_eng_name']},
"endArrow": False} "endArrow": False}
else: else:
relation = {"source": {"ssys_cd": currentNode['a_ssys_cd'], relation = {"source": {"ssys_id": currentNode['a_ssys_id'],
"mdl_name": currentNode['a_mdl_name'], "mdl_name": currentNode['a_mdl_name'],
"tab_eng_name": currentNode['a_tab_eng_name'], "tab_eng_name": currentNode['a_tab_eng_name'],
"fld_eng_name": currentNode['a_fld_eng_name']}, "fld_eng_name": currentNode['a_fld_eng_name']},
"target": {'ssys_cd': currentNode['b_ssys_cd'], "target": {'ssys_id': currentNode['b_ssys_id'],
'mdl_name': currentNode['b_mdl_name'], 'mdl_name': currentNode['b_mdl_name'],
'tab_eng_name': currentNode['b_tab_eng_name'], 'tab_eng_name': currentNode['b_tab_eng_name'],
'fld_eng_name': currentNode['b_fld_eng_name']}, 'fld_eng_name': currentNode['b_fld_eng_name']},
"endArrow": True} if \ "endArrow": True} if \
currentNode['father'] == 'A' else { currentNode['father'] == 'A' else {
"source": {'ssys_cd': currentNode['b_ssys_cd'], "source": {'ssys_id': currentNode['b_ssys_id'],
'mdl_name': currentNode['b_mdl_name'], 'mdl_name': currentNode['b_mdl_name'],
'tab_eng_name': currentNode['b_tab_eng_name'], 'tab_eng_name': currentNode['b_tab_eng_name'],
'fld_eng_name': currentNode['b_fld_eng_name']}, 'fld_eng_name': currentNode['b_fld_eng_name']},
"target": {"ssys_cd": currentNode['a_ssys_cd'], "target": {"ssys_id": currentNode['a_ssys_id'],
"mdl_name": currentNode['a_mdl_name'], "mdl_name": currentNode['a_mdl_name'],
"tab_eng_name": currentNode['a_tab_eng_name'], "tab_eng_name": currentNode['a_tab_eng_name'],
"fld_eng_name": currentNode['a_fld_eng_name']}, "fld_eng_name": currentNode['a_fld_eng_name']},
@ -270,7 +270,7 @@ class MetaService:
if currentNode['a_tab_eng_name'] == meta_query.tab_eng_name: if currentNode['a_tab_eng_name'] == meta_query.tab_eng_name:
if currentNode['father'] == 'A': if currentNode['father'] == 'A':
# b为下游,取b字段的下下游 # b为下游,取b字段的下下游
nextNodeList = (await cls.getRelationByColumn(result_db, currentNode['b_ssys_cd'], nextNodeList = (await cls.getRelationByColumn(result_db, currentNode['b_ssys_id'],
currentNode['b_mdl_name'], currentNode['b_mdl_name'],
currentNode['b_tab_eng_name'], currentNode['b_tab_eng_name'],
currentNode['b_fld_eng_name'], currentNode['b_fld_eng_name'],
@ -278,20 +278,20 @@ class MetaService:
'next')) 'next'))
if nextNodeList and len(nextNodeList) > 0: if nextNodeList and len(nextNodeList) > 0:
for nextNode in nextNodeList: for nextNode in nextNodeList:
relation = {"source": {"ssys_cd": nextNode['a_ssys_cd'], relation = {"source": {"ssys_id": nextNode['a_ssys_id'],
"mdl_name": nextNode['a_mdl_name'], "mdl_name": nextNode['a_mdl_name'],
"tab_eng_name": nextNode['a_tab_eng_name'], "tab_eng_name": nextNode['a_tab_eng_name'],
"fld_eng_name": nextNode['a_fld_eng_name']}, "fld_eng_name": nextNode['a_fld_eng_name']},
"target": {'ssys_cd': nextNode['b_ssys_cd'], "target": {'ssys_id': nextNode['b_ssys_id'],
'mdl_name': nextNode['b_mdl_name'], 'mdl_name': nextNode['b_mdl_name'],
'tab_eng_name': nextNode['b_tab_eng_name'], 'tab_eng_name': nextNode['b_tab_eng_name'],
'fld_eng_name': nextNode['b_fld_eng_name']}, 'fld_eng_name': nextNode['b_fld_eng_name']},
"endArrow": True} if nextNode['father'] == 'A' else \ "endArrow": True} if nextNode['father'] == 'A' else \
{"source": {'ssys_cd': nextNode['b_ssys_cd'], {"source": {'ssys_id': nextNode['b_ssys_id'],
'mdl_name': nextNode['b_mdl_name'], 'mdl_name': nextNode['b_mdl_name'],
'tab_eng_name': nextNode['b_tab_eng_name'], 'tab_eng_name': nextNode['b_tab_eng_name'],
'fld_eng_name': nextNode['b_fld_eng_name']}, 'fld_eng_name': nextNode['b_fld_eng_name']},
"target": {"ssys_cd": nextNode['a_ssys_cd'], "target": {"ssys_id": nextNode['a_ssys_id'],
"mdl_name": nextNode['a_mdl_name'], "mdl_name": nextNode['a_mdl_name'],
"tab_eng_name": nextNode['a_tab_eng_name'], "tab_eng_name": nextNode['a_tab_eng_name'],
"fld_eng_name": nextNode['a_fld_eng_name']}, "fld_eng_name": nextNode['a_fld_eng_name']},
@ -300,7 +300,7 @@ class MetaService:
relationList.append(relation) relationList.append(relation)
if currentNode['father'] == 'B': if currentNode['father'] == 'B':
# b为上游, 取b字段的上上游 # b为上游, 取b字段的上上游
preNodeList = await cls.getRelationByColumn(result_db, currentNode['b_ssys_cd'], preNodeList = await cls.getRelationByColumn(result_db, currentNode['b_ssys_id'],
currentNode['b_mdl_name'], currentNode['b_mdl_name'],
currentNode['b_tab_eng_name'], currentNode['b_tab_eng_name'],
currentNode['b_fld_eng_name'], currentNode['b_fld_eng_name'],
@ -308,20 +308,20 @@ class MetaService:
'pre') 'pre')
if preNodeList and len(preNodeList) > 0: if preNodeList and len(preNodeList) > 0:
for preNode in preNodeList: for preNode in preNodeList:
relation = {"source": {"ssys_cd": preNode['a_ssys_cd'], relation = {"source": {"ssys_id": preNode['a_ssys_id'],
"mdl_name": preNode['a_mdl_name'], "mdl_name": preNode['a_mdl_name'],
"tab_eng_name": preNode['a_tab_eng_name'], "tab_eng_name": preNode['a_tab_eng_name'],
"fld_eng_name": preNode['a_fld_eng_name']}, "fld_eng_name": preNode['a_fld_eng_name']},
"target": {'ssys_cd': preNode['b_ssys_cd'], "target": {'ssys_id': preNode['b_ssys_id'],
'mdl_name': preNode['b_mdl_name'], 'mdl_name': preNode['b_mdl_name'],
'tab_eng_name': preNode['b_tab_eng_name'], 'tab_eng_name': preNode['b_tab_eng_name'],
'fld_eng_name': preNode['b_fld_eng_name']}, 'fld_eng_name': preNode['b_fld_eng_name']},
"endArrow": True} if preNode['father'] == 'A' else \ "endArrow": True} if preNode['father'] == 'A' else \
{"source": {'ssys_cd': preNode['b_ssys_cd'], {"source": {'ssys_id': preNode['b_ssys_id'],
'mdl_name': preNode['b_mdl_name'], 'mdl_name': preNode['b_mdl_name'],
'tab_eng_name': preNode['b_tab_eng_name'], 'tab_eng_name': preNode['b_tab_eng_name'],
'fld_eng_name': preNode['b_fld_eng_name']}, 'fld_eng_name': preNode['b_fld_eng_name']},
"target": {"ssys_cd": preNode['a_ssys_cd'], "mdl_name": preNode['a_mdl_name'], "target": {"ssys_id": preNode['a_ssys_id'], "mdl_name": preNode['a_mdl_name'],
"tab_eng_name": preNode['a_tab_eng_name'], "tab_eng_name": preNode['a_tab_eng_name'],
"fld_eng_name": preNode['a_fld_eng_name']}, "fld_eng_name": preNode['a_fld_eng_name']},
"endArrow": True} "endArrow": True}
@ -329,7 +329,7 @@ class MetaService:
if currentNode['b_tab_eng_name'] == meta_query.tab_eng_name: if currentNode['b_tab_eng_name'] == meta_query.tab_eng_name:
if currentNode['father'] == 'A': if currentNode['father'] == 'A':
# a 为上游,取a字段的上上游 # a 为上游,取a字段的上上游
preNodeList = await cls.getRelationByColumn(result_db, currentNode['a_ssys_cd'], preNodeList = await cls.getRelationByColumn(result_db, currentNode['a_ssys_id'],
currentNode['a_mdl_name'], currentNode['a_mdl_name'],
currentNode['a_tab_eng_name'], currentNode['a_tab_eng_name'],
currentNode['a_fld_eng_name'], currentNode['a_fld_eng_name'],
@ -337,49 +337,49 @@ class MetaService:
'pre') 'pre')
if preNodeList and len(preNodeList) > 0: if preNodeList and len(preNodeList) > 0:
for preNode in preNodeList: for preNode in preNodeList:
relation = {"source": {"ssys_cd": preNode['a_ssys_cd'], relation = {"source": {"ssys_id": preNode['a_ssys_id'],
"mdl_name": preNode['a_mdl_name'], "mdl_name": preNode['a_mdl_name'],
"tab_eng_name": preNode['a_tab_eng_name'], "tab_eng_name": preNode['a_tab_eng_name'],
"fld_eng_name": preNode['a_fld_eng_name']}, "fld_eng_name": preNode['a_fld_eng_name']},
"target": {'ssys_cd': preNode['b_ssys_cd'], "target": {'ssys_id': preNode['b_ssys_id'],
'mdl_name': preNode['b_mdl_name'], 'mdl_name': preNode['b_mdl_name'],
'tab_eng_name': preNode['b_tab_eng_name'], 'tab_eng_name': preNode['b_tab_eng_name'],
'fld_eng_name': preNode['b_fld_eng_name']}, 'fld_eng_name': preNode['b_fld_eng_name']},
"endArrow": True} if \ "endArrow": True} if \
preNode['father'] == 'A' else { preNode['father'] == 'A' else {
"source": {'ssys_cd': preNode['b_ssys_cd'], "source": {'ssys_id': preNode['b_ssys_id'],
'mdl_name': preNode['b_mdl_name'], 'mdl_name': preNode['b_mdl_name'],
'tab_eng_name': preNode['b_tab_eng_name'], 'tab_eng_name': preNode['b_tab_eng_name'],
'fld_eng_name': preNode['b_fld_eng_name']}, 'fld_eng_name': preNode['b_fld_eng_name']},
"target": {"ssys_cd": preNode['a_ssys_cd'], "mdl_name": preNode['a_mdl_name'], "target": {"ssys_id": preNode['a_ssys_id'], "mdl_name": preNode['a_mdl_name'],
"tab_eng_name": preNode['a_tab_eng_name'], "tab_eng_name": preNode['a_tab_eng_name'],
"fld_eng_name": preNode['a_fld_eng_name']}, "fld_eng_name": preNode['a_fld_eng_name']},
"endArrow": True} "endArrow": True}
relationList.append(relation) relationList.append(relation)
if currentNode['father'] == 'B': if currentNode['father'] == 'B':
# a 为下游,取a字段的下下游 # a 为下游,取a字段的下下游
nextNodeList = await cls.getRelationByColumn(result_db, currentNode['a_ssys_cd'], nextNodeList = await cls.getRelationByColumn(result_db, currentNode['a_ssys_id'],
currentNode['a_mdl_name'], currentNode['a_mdl_name'],
currentNode['a_tab_eng_name'], currentNode['a_tab_eng_name'],
currentNode['a_fld_eng_name'], currentNode['a_fld_eng_name'],
meta_query.type, meta_query.type,
'next') 'next')
for nextNode in nextNodeList: for nextNode in nextNodeList:
relation = {"source": {"ssys_cd": nextNode['a_ssys_cd'], relation = {"source": {"ssys_id": nextNode['a_ssys_id'],
"mdl_name": nextNode['a_mdl_name'], "mdl_name": nextNode['a_mdl_name'],
"tab_eng_name": nextNode['a_tab_eng_name'], "tab_eng_name": nextNode['a_tab_eng_name'],
"fld_eng_name": nextNode['a_fld_eng_name']}, "fld_eng_name": nextNode['a_fld_eng_name']},
"target": {'ssys_cd': nextNode['b_ssys_cd'], "target": {'ssys_id': nextNode['b_ssys_id'],
'mdl_name': nextNode['b_mdl_name'], 'mdl_name': nextNode['b_mdl_name'],
'tab_eng_name': nextNode['b_tab_eng_name'], 'tab_eng_name': nextNode['b_tab_eng_name'],
'fld_eng_name': nextNode['b_fld_eng_name']}, 'fld_eng_name': nextNode['b_fld_eng_name']},
"endArrow": True} if \ "endArrow": True} if \
nextNode['father'] == 'A' else { nextNode['father'] == 'A' else {
"source": {'ssys_cd': nextNode['b_ssys_cd'], "source": {'ssys_id': nextNode['b_ssys_id'],
'mdl_name': nextNode['b_mdl_name'], 'mdl_name': nextNode['b_mdl_name'],
'tab_eng_name': nextNode['b_tab_eng_name'], 'tab_eng_name': nextNode['b_tab_eng_name'],
'fld_eng_name': nextNode['b_fld_eng_name']}, 'fld_eng_name': nextNode['b_fld_eng_name']},
"target": {"ssys_cd": nextNode['a_ssys_cd'], "mdl_name": nextNode['a_mdl_name'], "target": {"ssys_id": nextNode['a_ssys_id'], "mdl_name": nextNode['a_mdl_name'],
"tab_eng_name": nextNode['a_tab_eng_name'], "tab_eng_name": nextNode['a_tab_eng_name'],
"fld_eng_name": nextNode['a_fld_eng_name']}, "fld_eng_name": nextNode['a_fld_eng_name']},
"endArrow": True} "endArrow": True}
@ -391,38 +391,38 @@ class MetaService:
hasSourceTable = False hasSourceTable = False
hasTargetTable = False hasTargetTable = False
for tab in tableList: for tab in tableList:
if tab['ssys_cd'] == relation['source']['ssys_cd'] and tab['mdl_name'] == \ if tab['ssys_id'] == relation['source']['ssys_id'] and tab['mdl_name'] == \
relation['source']['mdl_name'] and tab['tab_eng_name'] == \ relation['source']['mdl_name'] and tab['tab_eng_name'] == \
relation['source']['tab_eng_name']: relation['source']['tab_eng_name']:
hasSourceTable = True hasSourceTable = True
if tab['ssys_cd'] == relation['target']['ssys_cd'] and tab['mdl_name'] == \ if tab['ssys_id'] == relation['target']['ssys_id'] and tab['mdl_name'] == \
relation['target']['mdl_name'] and tab['tab_eng_name'] == \ relation['target']['mdl_name'] and tab['tab_eng_name'] == \
relation['target']['tab_eng_name']: relation['target']['tab_eng_name']:
hasTargetTable = True hasTargetTable = True
if not hasSourceTable: if not hasSourceTable:
tableList.append({"ssys_cd": relation['source']['ssys_cd'], tableList.append({"ssys_id": relation['source']['ssys_id'],
"mdl_name": relation['source']['mdl_name'], "mdl_name": relation['source']['mdl_name'],
"tab_eng_name": relation['source']['tab_eng_name']}) "tab_eng_name": relation['source']['tab_eng_name']})
if not hasTargetTable: if not hasTargetTable:
tableList.append({"ssys_cd": relation['target']['ssys_cd'], tableList.append({"ssys_id": relation['target']['ssys_id'],
"mdl_name": relation['target']['mdl_name'], "mdl_name": relation['target']['mdl_name'],
"tab_eng_name": relation['target']['tab_eng_name']}) "tab_eng_name": relation['target']['tab_eng_name']})
else: else:
tableList.append({"ssys_cd": relation['source']['ssys_cd'], tableList.append({"ssys_id": relation['source']['ssys_id'],
"mdl_name": relation['source']['mdl_name'], "mdl_name": relation['source']['mdl_name'],
"tab_eng_name": relation['source']['tab_eng_name']}) "tab_eng_name": relation['source']['tab_eng_name']})
tableList.append({"ssys_cd": relation['target']['ssys_cd'], tableList.append({"ssys_id": relation['target']['ssys_id'],
"mdl_name": relation['target']['mdl_name'], "mdl_name": relation['target']['mdl_name'],
"tab_eng_name": relation['target']['tab_eng_name']}) "tab_eng_name": relation['target']['tab_eng_name']})
if len(tableList) > 0: if len(tableList) > 0:
for table in tableList: for table in tableList:
query_object = MetaColObject() query_object = MetaColObject()
query_object.ssys_cd = table['ssys_cd'] query_object.ssys_id = table['ssys_id']
query_object.mdl_name = table['mdl_name'] query_object.mdl_name = table['mdl_name']
query_object.tab_name = table['tab_eng_name'] query_object.tab_name = table['tab_eng_name']
meta_result = await MetaDao.get_meta_col_name_list(result_db, query_object) meta_result = await MetaDao.get_meta_col_name_list(result_db, query_object)
result = CamelCaseUtil.transform_result(meta_result) result = CamelCaseUtil.transform_result(meta_result)
tableCnName = await MetaDao.get_meta_table_cn_name(result_db, table['ssys_cd'], table['mdl_name'], tableCnName = await MetaDao.get_meta_table_cn_name(result_db, table['ssys_id'], table['mdl_name'],
table['tab_eng_name']) table['tab_eng_name'])
table['tab_cn_name'] = tableCnName table['tab_cn_name'] = tableCnName
table['column'] = result table['column'] = result
@ -433,21 +433,21 @@ class MetaService:
return result return result
@classmethod @classmethod
async def getRelationByTable(cls, result_db: AsyncSession, ssys_cd: str, mdl_name: str, async def getRelationByTable(cls, result_db: AsyncSession, ssys_id: int, mdl_name: str,
tab_eng_name: str, rel_type: str): tab_eng_name: str, rel_type: str):
if rel_type == 'op': if rel_type == 'op':
currentNodeList = await MetaDao.get_op_relation_by_table(result_db, ssys_cd, mdl_name, tab_eng_name) currentNodeList = await MetaDao.get_op_relation_by_table(result_db, ssys_id, mdl_name, tab_eng_name)
return currentNodeList return currentNodeList
if rel_type == 'er': if rel_type == 'er':
currentNodeList = await MetaDao.get_er_relation_by_table(result_db, ssys_cd, mdl_name, tab_eng_name) currentNodeList = await MetaDao.get_er_relation_by_table(result_db, ssys_id, mdl_name, tab_eng_name)
return currentNodeList return currentNodeList
return None return None
@classmethod @classmethod
async def getRelationByColumn(cls, result_db: AsyncSession, ssys_cd: str, mdl_name: str, async def getRelationByColumn(cls, result_db: AsyncSession, ssys_id: int, mdl_name: str,
tab_eng_name: str, fld_eng_name: str, rel_type: str, module: str): tab_eng_name: str, fld_eng_name: str, rel_type: str, module: str):
col = { col = {
'ssys_cd': ssys_cd, 'ssys_id': ssys_id,
'mdl_name': mdl_name, 'mdl_name': mdl_name,
'tab_eng_name': tab_eng_name, 'tab_eng_name': tab_eng_name,
'fld_eng_name': fld_eng_name 'fld_eng_name': fld_eng_name
@ -462,7 +462,7 @@ class MetaService:
@classmethod @classmethod
async def getMetaProc(cls, result_db: AsyncSession, meta_query: MetaProcQueryObject): async def getMetaProc(cls, result_db: AsyncSession, meta_query: MetaProcQueryObject):
result = await MetaDao.get_proc_by_table(result_db, meta_query.ssys_cd, meta_query.mdl_name, result = await MetaDao.get_proc_by_table(result_db, meta_query.ssys_id, meta_query.mdl_name,
meta_query.tab_eng_name) meta_query.tab_eng_name)
return result return result
@ -473,38 +473,38 @@ class MetaService:
if bloodRelations is not None and len(bloodRelations) > 0: if bloodRelations is not None and len(bloodRelations) > 0:
for blood in bloodRelations: for blood in bloodRelations:
if len(tableList) > 0: if len(tableList) > 0:
exists1 = any(item["ssys_cd"].lower() == blood.targetSysCd.lower() exists1 = any(item["ssys_id"] == blood.targetSysId
and item["mdl_name"].lower() == blood.targetMdlName.lower() and item["mdl_name"].lower() == blood.targetMdlName.lower()
and item["tab_eng_name"].lower() == blood.targetTableName.lower() and item["tab_eng_name"].lower() == blood.targetTableName.lower()
for item in tableList) for item in tableList)
if not exists1: if not exists1:
tableList.append({"ssys_cd": blood.targetSysCd.lower(), tableList.append({"ssys_id": blood.targetSysId,
"mdl_name": blood.targetMdlName.lower(), "mdl_name": blood.targetMdlName.lower(),
"tab_eng_name": blood.targetTableName.lower()}) "tab_eng_name": blood.targetTableName.lower()})
exists2 = any(item["ssys_cd"].lower() == blood.sourceSysCd.lower() exists2 = any(item["ssys_id"] == blood.sourceSysId
and item["mdl_name"].lower() == blood.sourceMdlName.lower() and item["mdl_name"].lower() == blood.sourceMdlName.lower()
and item["tab_eng_name"].lower() == blood.sourceTableName.lower() and item["tab_eng_name"].lower() == blood.sourceTableName.lower()
for item in tableList) for item in tableList)
if not exists2: if not exists2:
tableList.append({"ssys_cd": blood.sourceSysCd.lower(), tableList.append({"ssys_id": blood.sourceSysId,
"mdl_name": blood.sourceMdlName.lower(), "mdl_name": blood.sourceMdlName.lower(),
"tab_eng_name": blood.sourceTableName.lower()}) "tab_eng_name": blood.sourceTableName.lower()})
else: else:
tableList.append({"ssys_cd": blood.targetSysCd.lower(), tableList.append({"ssys_id": blood.targetSysId,
"mdl_name": blood.targetMdlName.lower(), "mdl_name": blood.targetMdlName.lower(),
"tab_eng_name": blood.targetTableName.lower()}) "tab_eng_name": blood.targetTableName.lower()})
tableList.append({"ssys_cd": blood.sourceSysCd.lower(), tableList.append({"ssys_id": blood.sourceSysId,
"mdl_name": blood.sourceMdlName.lower(), "mdl_name": blood.sourceMdlName.lower(),
"tab_eng_name": blood.sourceTableName.lower()}) "tab_eng_name": blood.sourceTableName.lower()})
if len(tableList) > 0: if len(tableList) > 0:
for table in tableList: for table in tableList:
query_object = MetaColObject() query_object = MetaColObject()
query_object.ssys_cd = table['ssys_cd'] query_object.ssys_id = table['ssys_id']
query_object.mdl_name = table['mdl_name'] query_object.mdl_name = table['mdl_name']
query_object.tab_name = table['tab_eng_name'] query_object.tab_name = table['tab_eng_name']
meta_result = await MetaDao.get_meta_col_name_list(result_db, query_object) meta_result = await MetaDao.get_meta_col_name_list(result_db, query_object)
result1 = CamelCaseUtil.transform_result(meta_result) result1 = CamelCaseUtil.transform_result(meta_result)
tableCnName = await MetaDao.get_meta_table_cn_name(result_db, table['ssys_cd'], table['mdl_name'], tableCnName = await MetaDao.get_meta_table_cn_name(result_db, table['ssys_id'], table['mdl_name'],
table['tab_eng_name']) table['tab_eng_name'])
table['tab_cn_name'] = tableCnName table['tab_cn_name'] = tableCnName
table['column'] = result1 table['column'] = result1

6
vue-fastapi-frontend/src/views/meta/metaInfo/bloodRelation.vue

@ -653,7 +653,7 @@ watch(
for (let i = 0; i < props.data.tableList.length; i++) { for (let i = 0; i < props.data.tableList.length; i++) {
let table = props.data.tableList[i] let table = props.data.tableList[i]
let g6Tab = { let g6Tab = {
id: table.ssys_cd+"-"+table.mdl_name+"-"+table.tab_eng_name, id: table.ssys_id+"-"+table.mdl_name+"-"+table.tab_eng_name,
label: table.tab_eng_name + ((table.tab_cn_name && table.tab_cn_name.length>0)?"("+table.tab_cn_name+")":""), label: table.tab_eng_name + ((table.tab_cn_name && table.tab_cn_name.length>0)?"("+table.tab_cn_name+")":""),
attrs:[], attrs:[],
collapsed:true collapsed:true
@ -670,8 +670,8 @@ watch(
for (let i = 0; i < props.data.relation.length; i++) { for (let i = 0; i < props.data.relation.length; i++) {
let relation = props.data.relation[i] let relation = props.data.relation[i]
let key = relation.targetColName.toLowerCase() let key = relation.targetColName.toLowerCase()
let tableKey = relation.sourceSysCd.toLowerCase()+"-"+relation.sourceMdlName.toLowerCase()+"-"+relation.sourceTableName.toLowerCase() let tableKey = relation.sourceSysId+"-"+relation.sourceMdlName.toLowerCase()+"-"+relation.sourceTableName.toLowerCase()
let nodeId = relation.targetSysCd.toLowerCase()+"-"+relation.targetMdlName.toLowerCase()+"-"+relation.targetTableName.toLowerCase() let nodeId = relation.targetSysId+"-"+relation.targetMdlName.toLowerCase()+"-"+relation.targetTableName.toLowerCase()
if (g6data.value.length > 0){ if (g6data.value.length > 0){
for (let j = 0; j < g6data.value.length; j++) { for (let j = 0; j < g6data.value.length; j++) {
if (g6data.value[j].id === tableKey){ if (g6data.value[j].id === tableKey){

49
vue-fastapi-frontend/src/views/meta/metaInfo/index.vue

@ -758,7 +758,7 @@
const data = reactive({ const data = reactive({
queryParams:{ queryParams:{
ssysCd:'', ssysId:'',
mdlName:'', mdlName:'',
tabName:'', tabName:'',
colName:'', colName:'',
@ -772,6 +772,7 @@
tabEngName:'', tabEngName:'',
tabCnName:'', tabCnName:'',
ssysCd:'', ssysCd:'',
ssysId:-1,
mdlName:'', mdlName:'',
tabCrrctName:'', tabCrrctName:'',
tabDesc:'', tabDesc:'',
@ -863,18 +864,10 @@
} }
} }
function remoteStddict(){ function remoteStddict(){
let param = {ssysCd:""} let param = {ssysCd:currentMetaData.value.ssysId + ""}
let dbList = databaseList.value[0].children; listStdDictNoPage(param).then(res=>{
for (let i = 0; i < dbList.length; i++) { stddictOptions.value = res.data
if (currentMetaData.value.ssysCd.toUpperCase() === dbList[i].name.toUpperCase()){ })
param.ssysCd = dbList[i].id + ""
}
}
if (param.ssysCd !== ""){
listStdDictNoPage(param).then(res=>{
stddictOptions.value = res.data
})
}
} }
function remoteSecLvl(){ function remoteSecLvl(){
listMetadataSecOptions().then(res=>{ listMetadataSecOptions().then(res=>{
@ -883,7 +876,7 @@
} }
function generateDemoData(){ function generateDemoData(){
let param ={ let param ={
dataAstSrc: currentMetaData.value.ssysCd, dataAstSrc: currentMetaData.value.ssysId,
dataAstEngName:currentMetaData.value.mdlName+"."+currentMetaData.value.tabEngName dataAstEngName:currentMetaData.value.mdlName+"."+currentMetaData.value.tabEngName
} }
getMetaSecurityData(param).then(res=>{ getMetaSecurityData(param).then(res=>{
@ -894,7 +887,7 @@
function changeBusinessOption(){ function changeBusinessOption(){
loadingBusiness.value = true; loadingBusiness.value = true;
let data = { let data = {
ssysCd: currentMetaData.value.ssysCd, ssysId: currentMetaData.value.ssysId,
mdlName: currentMetaData.value.mdlName, mdlName: currentMetaData.value.mdlName,
tabEngName: currentMetaData.value.tabEngName, tabEngName: currentMetaData.value.tabEngName,
type: businessOptionSelect.value type: businessOptionSelect.value
@ -1236,6 +1229,7 @@
tabEngName: tableData.tabEngName, tabEngName: tableData.tabEngName,
tabCnName: tableData.tabCnName, tabCnName: tableData.tabCnName,
ssysCd: tableData.ssysCd, ssysCd: tableData.ssysCd,
ssysId: tableData.ssysId,
mdlName:tableData.mdlName, mdlName:tableData.mdlName,
tabCrrctName:tableData.tabCrrctName, tabCrrctName:tableData.tabCrrctName,
tabDesc:tableData.tabDesc, tabDesc:tableData.tabDesc,
@ -1245,7 +1239,7 @@
} }
let columnData = { let columnData = {
tabName: row.tabEngName, tabName: row.tabEngName,
ssysCd: row.ssysCd, ssysId: row.ssysId,
mdlName: row.mdlName mdlName: row.mdlName
} }
getColumnList(columnData).then(res=>{ getColumnList(columnData).then(res=>{
@ -1305,7 +1299,7 @@
drawer.value = true drawer.value = true
changedColumns.value = [] changedColumns.value = []
let param = { let param = {
ssysCd: currentMetaData.value.ssysCd, ssysId: currentMetaData.value.ssysId,
mdlName: currentMetaData.value.mdlName, mdlName: currentMetaData.value.mdlName,
tabEngName: currentMetaData.value.tabEngName tabEngName: currentMetaData.value.tabEngName
} }
@ -1313,7 +1307,7 @@
if(res.data.length >0){ if(res.data.length >0){
let dbList = databaseList.value[0].children; let dbList = databaseList.value[0].children;
for (let i = 0; i < dbList.length; i++) { for (let i = 0; i < dbList.length; i++) {
if (currentMetaData.value.ssysCd.toUpperCase() === dbList[i].name.toUpperCase()){ if (currentMetaData.value.ssysId === dbList[i].id){
dbType.value = dbList[i].type dbType.value = dbList[i].type
} }
} }
@ -1341,7 +1335,7 @@
} }
function resetQuery(){ function resetQuery(){
queryParams.value ={ queryParams.value ={
ssysCd:'', ssysId:'',
mdlName:'', mdlName:'',
tabName:'', tabName:'',
colName:'', colName:'',
@ -1386,8 +1380,15 @@
function getList(){ function getList(){
getMetaDataList(queryParams.value).then(res=>{ getMetaDataList(queryParams.value).then(res=>{
dataList.value = res.data.rows dataList.value = res.data.rows
let dbList = databaseList.value[0].children
console.log(dataList.value[0].ssysId)
if (dataList.value.length>0){ if (dataList.value.length>0){
for (let i = 0; i < dataList.value.length; i++) { for (let i = 0; i < dataList.value.length; i++) {
for (let j = 0; j < dbList.length; j++) {
if (dataList.value[i].ssysId === dbList[j].id){
dataList.value[i].ssysCd = dbList[j].name
}
}
let batchTabClas = dataList.value[i].batchTabClas let batchTabClas = dataList.value[i].batchTabClas
let tabClas =[] let tabClas =[]
if (dataList.value[i].tabClas && dataList.value[i].tabClas !== '[]'){ if (dataList.value[i].tabClas && dataList.value[i].tabClas !== '[]'){
@ -1496,7 +1497,7 @@
dataAstType: row.tabType, dataAstType: row.tabType,
dataAstStat: '1', dataAstStat: '1',
dataAstDesc:'', dataAstDesc:'',
dataAstSrc: row.ssysCd, dataAstSrc: row.ssysId,
astNo: row.extractOnum, astNo: row.extractOnum,
dataAstClas: JSON.stringify(row.batchTabClas), dataAstClas: JSON.stringify(row.batchTabClas),
showTabClas: row.showTabClas, showTabClas: row.showTabClas,
@ -1512,7 +1513,7 @@
return data.name.indexOf(value) !== -1; return data.name.indexOf(value) !== -1;
}; };
function handleNodeClick(data) { function handleNodeClick(data) {
queryParams.value.ssysCd = data.name; queryParams.value.ssysId = data.id;
handleQuery(); handleQuery();
} }
watch(database, val => { watch(database, val => {
@ -1520,7 +1521,7 @@
}); });
function submit(){ function submit(){
let data = { let data = {
ssysCd: currentMetaData.value.ssysCd, ssysId: currentMetaData.value.ssysId,
mdlName: currentMetaData.value.mdlName, mdlName: currentMetaData.value.mdlName,
tabEngName: currentMetaData.value.tabEngName, tabEngName: currentMetaData.value.tabEngName,
tabCrrctName: currentMetaData.value.tabCrrctName, tabCrrctName: currentMetaData.value.tabCrrctName,
@ -1556,8 +1557,8 @@
function cancel(){ function cancel(){
drawer.value = false drawer.value = false
} }
onMounted(()=>{ onMounted(async () => {
getDatabaseList() await getDatabaseList()
handleQuery() handleQuery()
}) })

163
vue-fastapi-frontend/src/views/metadataConfig/metaclas/index.vue

@ -16,106 +16,82 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
</el-row> </el-row>
<el-tabs v-model="activeTab" type="border-card" class="full-height-tabs">
<el-tab-pane label="值类型参数调整" name="valueType">
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="Plus" @click="openAddDialog1">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="success" plain icon="Edit" :disabled="selectedRows1.length !== 1" @click="openEditDialog1(selectedRows1[0])">修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="danger" plain icon="Delete" :disabled="selectedRows1.length === 0" @click="deleteSelected1">删除</el-button>
</el-col>
</el-row>
<el-table v-loading="loading" :data="configList1" @selection-change="handleSelectionChange1" style="width: 100%" height="400" border stripe>
<el-table-column type="selection" width="55" />
<el-table-column prop="datatype" label="值类型" />
<el-table-column prop="ratio" label="阈值" />
<el-table-column prop="updBy" label="更新人" />
<el-table-column prop="updTime" label="更新时间" />
</el-table>
</el-tab-pane>
<el-tab-pane label="业务类型参数调整" name="businessType">
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="Plus" @click="openAddDialog2">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="success" plain icon="Edit" :disabled="selectedRows2.length !== 1" @click="openEditDialog2(selectedRows2[0])">修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="danger" plain icon="Delete" :disabled="selectedRows2.length === 0" @click="deleteSelected2">删除</el-button>
</el-col>
</el-row>
<el-table v-loading="loading" :data="configList2" @selection-change="handleSelectionChange2" style="width: 100%" height="400" border stripe>
<el-table-column type="selection" width="55" />
<el-table-column prop="regexName" label="业务类型" />
<el-table-column prop="regexPattern" label="正则表达式" />
<el-table-column prop="ratio" label="阈值" />
<el-table-column prop="updBy" label="更新人" />
<el-table-column prop="updTime" label="更新时间" />
</el-table>
</el-tab-pane>
<el-tab-pane label="字段处理类型参数调整" name="columnType">
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="Plus" @click="openAddDialog2">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="success" plain icon="Edit" :disabled="selectedRows2.length !== 1" @click="openEditDialog2(selectedRows2[0])">修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="danger" plain icon="Delete" :disabled="selectedRows2.length === 0" @click="deleteSelected2">删除</el-button>
</el-col>
</el-row>
<el-table v-loading="loading" :data="configList3" @selection-change="handleSelectionChange3" style="width: 100%" height="400" border stripe>
<el-table-column type="selection" width="55" />
<el-table-column prop="opType" label="处理类型" />
<el-table-column prop="colType" label="字段类型" />
<el-table-column prop="colAttr" label="字段属性" />
<el-table-column prop="ratio" label="阈值" />
<el-table-column prop="updBy" label="更新人" />
<el-table-column prop="updTime" label="更新时间" />
</el-table>
</el-tab-pane>
</el-tabs>
<el-divider content-position="center" ><span style=" font-size: 18px; font-weight: bold; ">值类型参数调整</span></el-divider>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="Plus" @click="openAddDialog1">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="success" plain icon="Edit" :disabled="selectedRows1.length !== 1" @click="openEditDialog1(selectedRows1[0])">修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="danger" plain icon="Delete" :disabled="selectedRows1.length === 0" @click="deleteSelected1">删除</el-button>
</el-col>
</el-row>
<el-table v-loading="loading" :data="configList1" @selection-change="handleSelectionChange1" style="width: 100%" height="400" border stripe>
<el-table-column type="selection" width="55" />
<el-table-column prop="datatype" label="值类型" />
<el-table-column prop="ratio" label="阈值" />
<el-table-column prop="updBy" label="更新人" />
<el-table-column prop="updTime" label="更新时间" />
</el-table>
<el-divider content-position="center" ><span style=" font-size: 18px; font-weight: bold; ">业务类型参数调整</span></el-divider>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="Plus" @click="openAddDialog2">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="success" plain icon="Edit" :disabled="selectedRows2.length !== 1" @click="openEditDialog2(selectedRows2[0])">修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="danger" plain icon="Delete" :disabled="selectedRows2.length === 0" @click="deleteSelected2">删除</el-button>
</el-col>
</el-row>
<el-table v-loading="loading" :data="configList2" @selection-change="handleSelectionChange2" style="width: 100%" height="400" border stripe>
<el-table-column type="selection" width="55" />
<el-table-column prop="regexName" label="业务类型" />
<el-table-column prop="regexPattern" label="正则表达式" />
<el-table-column prop="ratio" label="阈值" />
<el-table-column prop="updBy" label="更新人" />
<el-table-column prop="updTime" label="更新时间" />
</el-table>
<el-divider content-position="center" ><span style=" font-size: 18px; font-weight: bold; ">字段处理类型参数调整</span></el-divider>
<div style="margin-bottom: 10px">
<span style="display: inline-block; font-size: 14px; font-weight: bold; margin-bottom: 4px">唯一类型数值类判定条件</span>
<el-form :inline="true" :model="form3" size="medium">
<el-form-item label="空值率小于">
<el-input v-model="form3.config1" style="width: 100px" />
</el-form-item>
<el-form-item label="值长度方差小于">
<el-input v-model.number="form3.config2" style="width: 100px" />
</el-form-item>
<el-form-item label="重复率大于">
<el-input v-model.number="form3.config3" style="width: 100px" />
</el-form-item>
</el-form>
</div>
<div style="margin-bottom: 10px">
<span style="display: inline-block; font-size: 14px; font-weight: bold; margin-bottom: 4px">唯一类型非数值类判定条件</span>
<el-form :inline="true" :model="form3" size="medium">
<el-form-item label="重复率大于">
<el-input v-model.number="form3.config4" style="width: 100px" />
</el-form-item>
</el-form>
</div>
<div style="border-top: 1px dashed #999; margin: 10px 0;"></div>
<div style="margin-bottom: 10px">
<span style="display: inline-block; font-size: 14px; font-weight: bold; margin-bottom: 4px">忽略类型数值类判断条件</span>
<el-form :inline="true" :model="form3" size="medium">
<el-form-item label="空值率大于">
<el-input v-model.number="form3.config5" style="width: 100px" />
</el-form-item>
</el-form>
</div>
<div style="margin-bottom: 10px">
<span style="display: inline-block; font-size: 14px; font-weight: bold; margin-bottom: 4px">忽略类型其他判断条件</span>
<el-form :inline="true" :model="form3" size="medium">
<el-form-item label="平均值长大于">
<el-input v-model.number="form3.config6" style="width: 100px" />
</el-form-item>
<el-form-item >
<el-button type="primary" @click="submitForm3">保存</el-button>
</el-form-item>
</el-form>
</div>
<el-dialog :title="title" v-model="open1" width="500px" append-to-body :before-close="handleClose1"> <el-dialog :title="title" v-model="open1" width="500px" append-to-body :before-close="handleClose1">
<el-form ref="clasFormRef1" :model="form1" :rules="rules1" label-width="120px" size="medium"> <el-form ref="clasFormRef1" :model="form1" :rules="rules1" label-width="120px" >
<el-form-item label="值类型" prop="datatype"> <el-form-item label="值类型" prop="datatype">
<el-input v-model="form1.datatype" autocomplete="off" /> <el-input v-model="form1.datatype" autocomplete="off" />
</el-form-item> </el-form-item>
@ -173,9 +149,10 @@ const queryForm = reactive({
ssysCd: "*", ssysCd: "*",
mdlName: "*", mdlName: "*",
}); });
const activeTab = ref('valueType');
const configList1 = ref([]); // const configList1 = ref([]); //
const configList2 = ref([]); // const configList2 = ref([]); //
const configList3 = ref([]); //
const loading = ref(false); const loading = ref(false);
const open1 = ref(false); // const open1 = ref(false); //
@ -216,6 +193,7 @@ const rules2 = {
const selectedRows1 = ref([]); const selectedRows1 = ref([]);
const selectedRows2 = ref([]); const selectedRows2 = ref([]);
const selectedRows3 = ref([]);
function handleSelectionChange1(val) { function handleSelectionChange1(val) {
selectedRows1.value = val; selectedRows1.value = val;
@ -223,6 +201,9 @@ function handleSelectionChange1(val) {
function handleSelectionChange2(val) { function handleSelectionChange2(val) {
selectedRows2.value = val; selectedRows2.value = val;
} }
function handleSelectionChange3(val) {
selectedRows3.value = val;
}
async function getList1() { async function getList1() {
loading.value = true; loading.value = true;

Loading…
Cancel
Save