Commit 6822437d by yuwei

2.0.0项目初始化

parent 40d820f6
......@@ -13,7 +13,7 @@ public class DataMetaObjectHandler implements MetaObjectHandler {
public void insertFill(MetaObject metaObject) {
this.strictInsertFill(metaObject, "createTime", LocalDateTime.class, LocalDateTime.now());
this.strictInsertFill(metaObject, "updateTime", LocalDateTime.class, LocalDateTime.now());
this.strictInsertFill(metaObject, "status", String.class, DataConstant.EnableState.ENABLE);
this.strictInsertFill(metaObject, "status", String.class, DataConstant.EnableState.ENABLE.getKey());
String userId = getUserId();
this.strictInsertFill(metaObject, "createBy", String.class, userId);
this.strictInsertFill(metaObject, "updateBy", String.class, userId);
......
......@@ -63,7 +63,7 @@ public class DataSetController extends BaseController {
@GetMapping("/list")
public R getDataSetList() {
QueryWrapper<DataSetEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("status", DataConstant.EnableState.ENABLE);
queryWrapper.eq("status", DataConstant.EnableState.ENABLE.getKey());
List<DataSetEntity> list = dataSetService.list(queryWrapper);
List<DataSetVo> collect = list.stream().map(dataSetMapper::toVO).collect(Collectors.toList());
return R.ok().setData(collect);
......
......@@ -69,7 +69,7 @@ public class DataSourceController extends BaseController {
@GetMapping("/list")
public R getDataSourceList() {
QueryWrapper<DataSourceEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("status", DataConstant.EnableState.ENABLE);
queryWrapper.eq("status", DataConstant.EnableState.ENABLE.getKey());
List<DataSourceEntity> list = dataSourceService.list(queryWrapper);
List<DataSourceVo> collect = list.stream().map(dataSourceMapper::toVO).collect(Collectors.toList());
return R.ok().setData(collect);
......
......@@ -64,7 +64,7 @@ public class QrtzJobController extends BaseController {
@GetMapping("/list")
public R getQrtzJobList() {
QueryWrapper<QrtzJobEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("status", DataConstant.EnableState.ENABLE);
queryWrapper.eq("status", DataConstant.EnableState.ENABLE.getKey());
List<QrtzJobEntity> list = qrtzJobService.list(queryWrapper);
List<QrtzJobVo> collect = list.stream().map(qrtzJobMapper::toVO).collect(Collectors.toList());
return R.ok().setData(collect);
......
......@@ -2,7 +2,7 @@ import request from '@/utils/request'
export function listDataSet (data) {
return request({
url: '/factory/dataSets/list',
url: '/data/factory/dataSets/list',
method: 'get',
params: data
})
......@@ -10,7 +10,7 @@ export function listDataSet (data) {
export function pageDataSet (data) {
return request({
url: '/factory/dataSets/page',
url: '/data/factory/dataSets/page',
method: 'get',
params: data
})
......@@ -18,28 +18,28 @@ export function pageDataSet (data) {
export function getDataSet (id) {
return request({
url: '/factory/dataSets/' + id,
url: '/data/factory/dataSets/' + id,
method: 'get'
})
}
export function delDataSet (id) {
return request({
url: '/factory/dataSets/' + id,
url: '/data/factory/dataSets/' + id,
method: 'delete'
})
}
export function delDataSets (ids) {
return request({
url: '/factory/dataSets/batch/' + ids,
url: '/data/factory/dataSets/batch/' + ids,
method: 'delete'
})
}
export function addDataSet (data) {
return request({
url: '/factory/dataSets',
url: '/data/factory/dataSets',
method: 'post',
data: data
})
......@@ -47,7 +47,7 @@ export function addDataSet (data) {
export function updateDataSet (data) {
return request({
url: '/factory/dataSets/' + data.id,
url: '/data/factory/dataSets/' + data.id,
method: 'put',
data: data
})
......
......@@ -2,7 +2,7 @@ import request from '@/utils/request'
export function listDataSource (data) {
return request({
url: '/factory/dataSources/list',
url: '/data/factory/dataSources/list',
method: 'get',
params: data
})
......@@ -10,7 +10,7 @@ export function listDataSource (data) {
export function pageDataSource (data) {
return request({
url: '/factory/dataSources/page',
url: '/data/factory/dataSources/page',
method: 'get',
params: data
})
......@@ -18,28 +18,28 @@ export function pageDataSource (data) {
export function getDataSource (id) {
return request({
url: '/factory/dataSources/' + id,
url: '/data/factory/dataSources/' + id,
method: 'get'
})
}
export function delDataSource (id) {
return request({
url: '/factory/dataSources/' + id,
url: '/data/factory/dataSources/' + id,
method: 'delete'
})
}
export function delDataSources (ids) {
return request({
url: '/factory/dataSources/batch/' + ids,
url: '/data/factory/dataSources/batch/' + ids,
method: 'delete'
})
}
export function addDataSource (data) {
return request({
url: '/factory/dataSources',
url: '/data/factory/dataSources',
method: 'post',
data: data
})
......@@ -47,7 +47,7 @@ export function addDataSource (data) {
export function updateDataSource (data) {
return request({
url: '/factory/dataSources/' + data.id,
url: '/data/factory/dataSources/' + data.id,
method: 'put',
data: data
})
......
......@@ -66,6 +66,7 @@ export default {
position: relative;
height: 100%;
width: 100%;
overflow: hidden;
&.mobile.openSidebar {
position: fixed;
......
......@@ -25,7 +25,7 @@
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPerm="['system:post:add']"
v-hasPerm="['factory:dataset:add']"
>新增</el-button>
<el-button
type="success"
......@@ -33,7 +33,7 @@
size="mini"
:disabled="single"
@click="handleEdit"
v-hasPerm="['system:post:edit']"
v-hasPerm="['factory:dataset:edit']"
>修改</el-button>
<el-button
type="info"
......@@ -41,7 +41,7 @@
size="mini"
:disabled="single"
@click="handleDetail"
v-hasPerm="['system:post:detail']"
v-hasPerm="['factory:dataset:detail']"
>详情</el-button>
<el-button
type="danger"
......@@ -49,7 +49,7 @@
size="mini"
:disabled="multiple"
@click="handleBatchDelete"
v-hasPerm="['system:post:remove']"
v-hasPerm="['factory:dataset:remove']"
>删除</el-button>
</el-button-group>
</el-col>
......@@ -126,21 +126,21 @@
type="text"
icon="el-icon-edit-outline"
@click="handleEdit(scope.row)"
v-hasPerm="['system:post:edit']"
v-hasPerm="['factory:dataset:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-view"
@click="handleDetail(scope.row)"
v-hasPerm="['system:post:detail']"
v-hasPerm="['factory:dataset:detail']"
>详情</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPerm="['system:post:remove']"
v-hasPerm="['factory:dataset:remove']"
>删除</el-button>
</template>
</el-table-column>
......@@ -328,9 +328,9 @@ export default {
let status = row.status
let status_dictText = row.status_dictText
if (status === '0') {
return `<el-tag type="warning">{status_dictText}</el-tag>`
return <el-tag type="warning">{status_dictText}</el-tag>
} else {
return `<el-tag type="success">{status_dictText}</el-tag>`
return <el-tag type="success">{status_dictText}</el-tag>
}
}
}
......
......@@ -9,8 +9,33 @@
</el-button-group>
</div>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="岗位名称" prop="postName">
<el-input v-model="form.postName" placeholder="请输入岗位名称" />
<el-form-item label="数据源类型" prop="dbType">
<el-select v-model="form.dbType">
<el-option
v-for="item in dbTypeOptions"
:key="item.id"
:label="item.itemValue"
:value="item.itemText"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="数据源名称" prop="sourceName">
<el-input v-model="form.sourceName" placeholder="请输入数据源名称" />
</el-form-item>
<el-form-item label="主机" prop="host">
<el-input v-model="form.dbSchema.host" placeholder="请输入主机" />
</el-form-item>
<el-form-item label="端口" prop="port">
<el-input v-model="form.dbSchema.port" placeholder="请输入端口" />
</el-form-item>
<el-form-item label="数据库" prop="dbName">
<el-input v-model="form.dbSchema.dbName" placeholder="请输入数据库" />
</el-form-item>
<el-form-item label="用户名" prop="username">
<el-input v-model="form.dbSchema.username" placeholder="请输入用户名" />
</el-form-item>
<el-form-item label="密码" prop="password">
<el-input v-model="form.dbSchema.password" placeholder="请输入密码" />
</el-form-item>
<el-form-item label="状态" prop="status">
<el-radio-group v-model="form.status">
......@@ -62,16 +87,37 @@ export default {
},
// 表单参数
form: {
status: '1'
status: '1',
dbSchema: {}
},
// 表单校验
rules: {
postName: [
{ required: true, message: '岗位名称不能为空', trigger: 'blur' }
dbType: [
{ required: true, message: '数据源类型不能为空', trigger: 'blur' }
],
sourceName: [
{ required: true, message: '数据源名称不能为空', trigger: 'blur' }
],
host: [
{ required: true, message: '主机不能为空', trigger: 'blur' }
],
port: [
{ required: true, message: '端口不能为空', trigger: 'blur' }
],
dbName: [
{ required: true, message: '数据库不能为空', trigger: 'blur' }
],
username: [
{ required: true, message: '用户名不能为空', trigger: 'blur' }
],
password: [
{ required: true, message: '密码不能为空', trigger: 'blur' }
]
},
// 状态数据字典
statusOptions: []
statusOptions: [],
// 数据源类型数据字典
dbTypeOptions: []
}
},
created () {
......@@ -80,6 +126,11 @@ export default {
this.statusOptions = response.data
}
})
this.getDicts('data_db_type').then(response => {
if (response.success) {
this.dbTypeOptions = response.data
}
})
},
methods: {
showCard () {
......@@ -92,7 +143,7 @@ export default {
this.loadingOptions.loading = true
this.loadingOptions.loadingText = '保存中...'
this.loadingOptions.isDisabled = true
addPost(this.form).then(response => {
addDataSource(this.form).then(response => {
if (response.success) {
this.$message.success('保存成功')
setTimeout(() => {
......
......@@ -8,10 +8,35 @@
</el-button-group>
</div>
<el-form ref="form" :model="form" label-width="80px" disabled>
<el-form-item label="岗位名称" prop="postName">
<el-input v-model="form.postName" />
<el-form-item label="数据源类型" prop="dbType">
<el-select v-model="form.dbType">
<el-option
v-for="item in dbTypeOptions"
:key="item.id"
:label="item.itemValue"
:value="item.itemText"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="岗位状态" prop="status">
<el-form-item label="数据源名称" prop="sourceName">
<el-input v-model="form.sourceName" placeholder="请输入数据源名称" />
</el-form-item>
<el-form-item label="主机" prop="host">
<el-input v-model="form.dbSchema.host" placeholder="请输入主机" />
</el-form-item>
<el-form-item label="端口" prop="port">
<el-input v-model="form.dbSchema.port" placeholder="请输入端口" />
</el-form-item>
<el-form-item label="数据库" prop="dbName">
<el-input v-model="form.dbSchema.dbName" placeholder="请输入数据库" />
</el-form-item>
<el-form-item label="用户名" prop="username">
<el-input v-model="form.dbSchema.username" placeholder="请输入用户名" />
</el-form-item>
<el-form-item label="密码" prop="password">
<el-input v-model="form.dbSchema.password" placeholder="请输入密码" />
</el-form-item>
<el-form-item label="状态" prop="status">
<el-radio-group v-model="form.status">
<el-radio
v-for="dict in statusOptions"
......@@ -21,7 +46,7 @@
</el-radio-group>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" type="textarea" />
<el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
</el-form-item>
</el-form>
</el-card>
......@@ -56,7 +81,9 @@ export default {
// 表单参数
form: {},
// 状态数据字典
statusOptions: []
statusOptions: [],
// 数据源类型数据字典
dbTypeOptions: []
}
},
created () {
......@@ -66,15 +93,20 @@ export default {
this.statusOptions = response.data
}
})
this.getPost(this.data.id)
this.getDicts('data_db_type').then(response => {
if (response.success) {
this.dbTypeOptions = response.data
}
})
this.getDataSource(this.data.id)
},
methods: {
showCard () {
this.$emit('showCard', this.showOptions)
},
/** 获取详情 */
getPost: function (id) {
getPost(id).then(response => {
getDataSource: function (id) {
getDataSource(id).then(response => {
if (response.success) {
this.form = response.data
}
......
......@@ -9,10 +9,35 @@
</el-button-group>
</div>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="岗位名称" prop="postName">
<el-input v-model="form.postName" placeholder="请输入岗位名称" />
<el-form-item label="数据源类型" prop="dbType">
<el-select v-model="form.dbType">
<el-option
v-for="item in dbTypeOptions"
:key="item.id"
:label="item.itemValue"
:value="item.itemText"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="岗位状态" prop="status">
<el-form-item label="数据源名称" prop="sourceName">
<el-input v-model="form.sourceName" placeholder="请输入数据源名称" />
</el-form-item>
<el-form-item label="主机" prop="host">
<el-input v-model="form.dbSchema.host" placeholder="请输入主机" />
</el-form-item>
<el-form-item label="端口" prop="port">
<el-input v-model="form.dbSchema.port" placeholder="请输入端口" />
</el-form-item>
<el-form-item label="数据库" prop="dbName">
<el-input v-model="form.dbSchema.dbName" placeholder="请输入数据库" />
</el-form-item>
<el-form-item label="用户名" prop="username">
<el-input v-model="form.dbSchema.username" placeholder="请输入用户名" />
</el-form-item>
<el-form-item label="密码" prop="password">
<el-input v-model="form.dbSchema.password" placeholder="请输入密码" />
</el-form-item>
<el-form-item label="状态" prop="status">
<el-radio-group v-model="form.status">
<el-radio
v-for="dict in statusOptions"
......@@ -64,12 +89,32 @@ export default {
form: {},
// 表单校验
rules: {
postName: [
{ required: true, message: '岗位名称不能为空', trigger: 'blur' }
dbType: [
{ required: true, message: '数据源类型不能为空', trigger: 'blur' }
],
sourceName: [
{ required: true, message: '数据源名称不能为空', trigger: 'blur' }
],
host: [
{ required: true, message: '主机不能为空', trigger: 'blur' }
],
port: [
{ required: true, message: '端口不能为空', trigger: 'blur' }
],
dbName: [
{ required: true, message: '数据库不能为空', trigger: 'blur' }
],
username: [
{ required: true, message: '用户名不能为空', trigger: 'blur' }
],
password: [
{ required: true, message: '密码不能为空', trigger: 'blur' }
]
},
// 状态数据字典
statusOptions: []
statusOptions: [],
// 数据源类型数据字典
dbTypeOptions: []
}
},
created () {
......@@ -79,15 +124,20 @@ export default {
this.statusOptions = response.data
}
})
this.getPost(this.data.id)
this.getDicts('data_db_type').then(response => {
if (response.success) {
this.dbTypeOptions = response.data
}
})
this.getDataSource(this.data.id)
},
methods: {
showCard () {
this.$emit('showCard', this.showOptions)
},
/** 获取详情 */
getPost: function (id) {
getPost(id).then(response => {
getDataSource: function (id) {
getDataSource(id).then(response => {
if (response.success) {
this.form = response.data
}
......@@ -100,7 +150,7 @@ export default {
this.loadingOptions.loading = true
this.loadingOptions.loadingText = '保存中...'
this.loadingOptions.isDisabled = true
updatePost(this.form).then(response => {
updateDataSource(this.form).then(response => {
if (response.success) {
this.$message.success('保存成功')
setTimeout(() => {
......
......@@ -25,7 +25,7 @@
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPerm="['system:post:add']"
v-hasPerm="['factory:datasource:add']"
>新增</el-button>
<el-button
type="success"
......@@ -33,7 +33,7 @@
size="mini"
:disabled="single"
@click="handleEdit"
v-hasPerm="['system:post:edit']"
v-hasPerm="['factory:datasource:edit']"
>修改</el-button>
<el-button
type="info"
......@@ -41,7 +41,7 @@
size="mini"
:disabled="single"
@click="handleDetail"
v-hasPerm="['system:post:detail']"
v-hasPerm="['factory:datasource:detail']"
>详情</el-button>
<el-button
type="danger"
......@@ -49,7 +49,7 @@
size="mini"
:disabled="multiple"
@click="handleBatchDelete"
v-hasPerm="['system:post:remove']"
v-hasPerm="['factory:datasource:remove']"
>删除</el-button>
</el-button-group>
</el-col>
......@@ -126,21 +126,21 @@
type="text"
icon="el-icon-edit-outline"
@click="handleEdit(scope.row)"
v-hasPerm="['system:post:edit']"
v-hasPerm="['factory:datasource:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-view"
@click="handleDetail(scope.row)"
v-hasPerm="['system:post:detail']"
v-hasPerm="['factory:datasource:detail']"
>详情</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPerm="['system:post:remove']"
v-hasPerm="['factory:datasource:remove']"
>删除</el-button>
</template>
</el-table-column>
......@@ -328,9 +328,9 @@ export default {
let status = row.status
let status_dictText = row.status_dictText
if (status === '0') {
return `<el-tag type="warning">{status_dictText}</el-tag>`
return <el-tag type="warning">{status_dictText}</el-tag>
} else {
return `<el-tag type="success">{status_dictText}</el-tag>`
return <el-tag type="success">{status_dictText}</el-tag>
}
}
}
......
......@@ -56,7 +56,7 @@
</template>
<script>
import { getLog } from '@/api/monitor/operlog'
import { getLog } from '@/api/monitor/operlog'
export default {
name: 'OperLogDetail',
......
<template>
<div>
<el-card class="box-card" shadow="always" :body-style="{ height: bodyHeight }" style="overflow-y: auto;">
<el-card class="box-card" shadow="always">
<el-form :model="queryParams" ref="queryForm" :inline="true">
<el-form-item label="模块名称" prop="module">
<el-input
......@@ -99,7 +99,7 @@
border
tooltip-effect="dark"
:size="tableSize"
:max-height="tableHeight"
:height="tableHeight"
style="width: 100%;margin: 15px 0;"
>
<el-table-column type="selection" width="55" align="center" />
......@@ -159,8 +159,7 @@ export default {
name: 'OperLogList',
data () {
return {
bodyHeight: document.body.offsetHeight - 130 + 'px',
tableHeight: document.body.offsetHeight - 230 + 'px',
tableHeight: document.body.offsetHeight - 330 + 'px',
// 展示切换
showOptions: {
data: {},
......
......@@ -32,7 +32,7 @@
import { getLog } from '@/api/scheduler/log'
export default {
name: 'JobDetail',
name: 'JobLogDetail',
props: {
data: {
type: Object,
......
......@@ -149,7 +149,7 @@ import { pageLog, delLog } from '@/api/scheduler/log'
import { listJob } from '@/api/scheduler/job'
export default {
name: 'LogList',
name: 'JobLogList',
data () {
return {
bodyHeight: document.body.offsetHeight - 130 + 'px',
......@@ -260,7 +260,7 @@ export default {
handleDetail (row) {
this.showOptions.data.id = row.id || this.ids[0]
this.showOptions.showList = false
this.showOptions.showDetail = false
this.showOptions.showDetail = true
this.$emit('showCard', this.showOptions)
},
/** 删除按钮操作 */
......
......@@ -14,7 +14,7 @@ import JobLogList from './JobLogList'
import JobLogDetail from './JobLogDetail'
export default {
name: 'Job',
name: 'JobLog',
components: { JobLogList, JobLogDetail },
data () {
return {
......
......@@ -47,7 +47,7 @@ export default {
},
data () {
return {
bodyHeight: document.body.offsetHeight - 130 + 'px',
bodyHeight: document.body.offsetHeight - 200 + 'px',
title: '字典编辑',
// 展示切换
showOptions: {
......
<template>
<div>
<el-card class="box-card" shadow="always" :body-style="{ height: bodyHeight }" style="overflow-y: auto;">
<el-card class="box-card" shadow="always">
<el-form :model="queryParams" ref="queryForm" :inline="true">
<el-form-item label="字典名称" prop="dictName">
<el-input
......@@ -113,7 +113,7 @@
border
tooltip-effect="dark"
:size="tableSize"
:max-height="tableHeight"
:height="tableHeight"
style="width: 100%;margin: 15px 0;"
>
<el-table-column type="selection" width="55" align="center" />
......@@ -186,8 +186,7 @@ export default {
name: 'DictList',
data () {
return {
bodyHeight: document.body.offsetHeight - 130 + 'px',
tableHeight: document.body.offsetHeight - 230 + 'px',
tableHeight: document.body.offsetHeight - 340 + 'px',
// 展示切换
showOptions: {
data: {},
......
......@@ -161,7 +161,7 @@ export default {
this.statusOptions = response.data
}
})
this.getConfigKey("sys.user.initPassword").then(response => {
this.getConfigKey('sys.user.initPassword').then(response => {
if (response.success) {
this.initPassword = response.data
this.form.password = this.initPassword
......
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