Commit 98c5b476 by yuwei

项目初始化

parent 1225032f
......@@ -6,6 +6,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
......@@ -37,4 +38,9 @@ public class MetadataChangeRecordDto implements Serializable {
private String fieldOldValue;
@ApiModelProperty(value = "该字段最新的值")
private String fieldNewValue;
@ApiModelProperty(value = "状态")
@NotNull(message = "状态不能为空", groups = {ValidationGroups.Insert.class, ValidationGroups.Update.class})
private String status;
@ApiModelProperty(value = "备注")
private String remark;
}
......@@ -18,5 +18,6 @@ public class MetadataChangeRecordQuery extends BaseQueryParams {
private static final long serialVersionUID=1L;
private String objectId;
private String fieldName;
}
......@@ -20,7 +20,7 @@ public class MetadataChangeRecordVo implements Serializable {
private static final long serialVersionUID=1L;
private String id;
private Integer status;
private String status;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private LocalDateTime createTime;
private Integer version;
......
......@@ -72,6 +72,7 @@ public class MetadataChangeRecordController extends BaseController {
@GetMapping("/page")
public R getMetadataChangeRecordPage(MetadataChangeRecordQuery metadataChangeRecordQuery) {
QueryWrapper<MetadataChangeRecordEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq(StrUtil.isNotBlank(metadataChangeRecordQuery.getObjectId()), "object_id", metadataChangeRecordQuery.getObjectId());
queryWrapper.like(StrUtil.isNotBlank(metadataChangeRecordQuery.getFieldName()), "field_name", metadataChangeRecordQuery.getFieldName());
IPage<MetadataChangeRecordEntity> page = metadataChangeRecordService.page(new Page<>(metadataChangeRecordQuery.getPageNum(), metadataChangeRecordQuery.getPageSize()), queryWrapper);
List<MetadataChangeRecordVo> collect = page.getRecords().stream().map(metadataChangeRecordMapper::toVO).collect(Collectors.toList());
......
......@@ -9,21 +9,18 @@
</div>
<div :style="classCardbody">
<el-form ref="form" :model="form" label-width="80px" disabled>
<el-form-item label="源数据表主键" prop="objectId">
<el-input v-model="form.objectId" />
</el-form-item>
<el-form-item label="源数据表的字段名" prop="fieldName">
<el-input v-model="form.fieldName" />
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="form.version" />
</el-form-item>
<el-form-item label="原来的值" prop="fieldOldValue">
<el-input v-model="form.fieldOldValue" />
</el-form-item>
<el-form-item label="最新的值" prop="fieldNewValue">
<el-input v-model="form.fieldNewValue" />
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="form.version" />
</el-form-item>
<el-form-item label="状态" prop="status">
<el-radio-group v-model="form.status">
<el-radio
......
......@@ -10,21 +10,18 @@
</div>
<div :style="classCardbody">
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="源数据表主键" prop="objectId">
<el-input v-model="form.objectId" placeholder="请输入源数据表主键" />
</el-form-item>
<el-form-item label="源数据表的字段名" prop="fieldName">
<el-input v-model="form.fieldName" placeholder="请输入源数据表的字段名" />
<el-input v-model="form.fieldName" placeholder="请输入源数据表的字段名" disabled />
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="form.version" placeholder="请输入版本号" />
</el-form-item>
<el-form-item label="原来的值" prop="fieldOldValue">
<el-input v-model="form.fieldOldValue" placeholder="请输入原来的值" />
<el-input v-model="form.fieldOldValue" placeholder="请输入原来的值" disabled />
</el-form-item>
<el-form-item label="最新的值" prop="fieldNewValue">
<el-input v-model="form.fieldNewValue" placeholder="请输入最新的值" />
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="form.version" placeholder="请输入版本号" />
</el-form-item>
<el-form-item label="状态" prop="status">
<el-radio-group v-model="form.status">
<el-radio
......
......@@ -21,12 +21,6 @@
<el-col :span="12">
<el-button-group>
<el-button
type="primary"
icon="el-icon-plus"
size="mini"
@click="handleAdd"
>新增</el-button>
<el-button
type="success"
icon="el-icon-edit-outline"
size="mini"
......@@ -184,7 +178,7 @@ export default {
// 表格头
tableColumns: [
{ prop: 'objectId', label: '源数据表主键', show: true },
{ prop: 'fieldName', label: '源数据表的字段名', show: true },
{ prop: 'fieldName', label: '源数据表的字段名', show: true, formatter: this.fieldNameFormatter },
{ prop: 'fieldOldValue', label: '原来的值', show: true },
{ prop: 'fieldNewValue', label: '最新的值', show: true },
{ prop: 'version', label: '版本号', show: true },
......@@ -210,7 +204,18 @@ export default {
pageNum: 1,
pageSize: 20,
fieldName: ''
}
},
dicts: new Map([
['columnName', '字段名称'],
['columnComment', '字段注释'],
['dataDefault', '数据默认值'],
['columnKey', '是否主键'],
['columnNullable', '是否允许为空'],
['dataType', '数据类型'],
['dataLength', '数据长度'],
['dataPrecision', '数据精度'],
['dataScale', '数据小数位']
])
}
},
created () {
......@@ -272,15 +277,6 @@ export default {
this.single = selection.length !== 1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd () {
this.showOptions.data = {}
this.showOptions.showList = false
this.showOptions.showAdd = true
this.showOptions.showEdit = false
this.showOptions.showDetail = false
this.$emit('showCard', this.showOptions)
},
/** 修改按钮操作 */
handleEdit (row) {
this.showOptions.data.id = row.id || this.ids[0]
......@@ -341,6 +337,9 @@ export default {
} else {
return <el-tag type="warning">{dictLabel}</el-tag>
}
},
fieldNameFormatter (row, column, cellValue, index) {
return this.dicts.get(cellValue)
}
}
}
......
......@@ -5,12 +5,14 @@
<el-col :span="4">
<el-tree
:data="treeOptions"
default-expand-all
ref="tree"
node-key="id"
empty-text="加载中,请稍后"
:props="defaultProps"
default-expand-all
:expand-on-click-node="false"
@node-click="handleNodeClick"
:render-content="renderContent"
></el-tree>
</el-col>
<el-col :span="20" style="border-left: 2px solid #aaa;">
......@@ -284,12 +286,24 @@ export default {
this.queryParams.pageNum = val
this.getList()
},
renderContent (h, { node, data, store }) {
if (node.level === 1) {
data.icon = 'icon iconfont icon-weidu'
} else {
data.icon = 'icon iconfont icon-zhibiao'
}
return (
<span class="custom-tree-node">
<i class={data.icon}></i>
<span>{node.label}</span>
</span>)
},
/** 节点单击事件 */
handleNodeClick (data) {
if ('database' === data.type) {
if (data.type === 'database') {
this.queryParams.sourceId = data.id
this.queryParams.tableId = ''
} else if ('table' === data.type) {
} else if (data.type === 'table') {
this.queryParams.tableId = data.id
this.queryParams.sourceId = ''
}
......@@ -317,4 +331,13 @@ export default {
.right-toolbar {
float: right;
}
::v-deep .custom-tree-node {
flex: 1;
display: flex;
font-size: 14px;
.icon {
margin-right: 5px;
}
}
</style>
<template>
<div class="app-container">
<el-card class="box-card" shadow="always">
<div slot="header" class="clearfix">
<span>{{ title }}</span>
</div>
<div :style="classCardbody">
<el-row>
<el-col :span="24">
......@@ -86,9 +83,8 @@ export default {
return {
classCardbody: {
overflow: 'auto',
height: document.body.offsetHeight - 240 + 'px'
height: document.body.offsetHeight - 170 + 'px'
},
title: 'SQL工作台',
// 数据源数据字典
sourceOptions: [],
sqlDataSource: undefined,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment