From 1a954d2455821e505c4f0ff22290126ec899a9bf Mon Sep 17 00:00:00 2001 From: wangting <wangting@vci-tech.com> Date: 星期二, 31 十二月 2024 15:50:33 +0800 Subject: [PATCH] 删除多余文件 --- /dev/null | 349 ---------------------------------------------------------- 1 files changed, 0 insertions(+), 349 deletions(-) diff --git a/Source/plt-web/plt-web-ui/src/views/base/buttonForm.js b/Source/plt-web/plt-web-ui/src/views/base/buttonForm.js deleted file mode 100644 index 30becea..0000000 --- a/Source/plt-web/plt-web-ui/src/views/base/buttonForm.js +++ /dev/null @@ -1,31 +0,0 @@ -export default { - buttonClick(item,that) { - this.formName = item.name; - const method = item.paramVOS.webUiButtonMethods; - - const handlers = { - add: () => this.handleAdd(that), - edit: () => this.handleEdit(that), - delete: () => this.handleDelete(that), - }; - - const handler = handlers[method]; - if (handler) { - handler(); - } else { - that.$message.error('璇烽噸鏂伴厤缃寜閽紒'); - } - }, - - handleAdd(that) { - that.$message.success('琛ㄥ崟娣诲姞') - }, - - handleEdit(that) { - that.$message.success('琛ㄥ崟缂栬緫') - }, - - handleDelete(that) { - that.$message.success('琛ㄥ崟鍒犻櫎') - }, -} diff --git a/Source/plt-web/plt-web-ui/src/views/base/buttonTable.js b/Source/plt-web/plt-web-ui/src/views/base/buttonTable.js deleted file mode 100644 index 9b5342f..0000000 --- a/Source/plt-web/plt-web-ui/src/views/base/buttonTable.js +++ /dev/null @@ -1,70 +0,0 @@ -export default { - buttonClick(item, that) { - that.formName = item.name; - const location = item.paramVOS.webUiButtonLocation; - const method = item.paramVOS.webUiButtonMethods; - const messageOnlyText = that.selectList.length > 1 ? '鍙兘閫夋嫨涓�鏉℃暟鎹繘琛岀紪杈戯紒' : '璇烽�夋嫨涓�鏉℃暟鎹繘琛岀紪杈戯紒'; - const messageAllText = '璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹紒' - - const handlers = { - add: () => this.handleAdd(that, location), - edit: () => this.handleEdit(that, location, messageOnlyText), - delete: () => this.handleDelete(that, location, messageAllText), - }; - - const handler = handlers[method]; - if (handler) { - handler(); - } else { - that.$message.error('璇烽噸鏂伴厤缃寜閽紒'); - } - }, - - handleAdd(that, location) { - if (location === 'top') { - that.visible = true; - } else { - that.$message.warning('璇烽噸鏂伴厤缃寜閽嚦涓婃柟鍖哄煙锛�'); - } - - }, - - handleEdit(that, location, messageOnlyText) { - if (location === 'menu') { - that.visible = true; - that.$refs.dynamicForm.form = that.scope.row; - - } else if (location === 'top' && that.selectList.length === 1) { - that.visible = true; - that.$refs.dynamicForm.form = that.selectList[0]; - } else { - that.$message.warning(messageOnlyText); - } - - }, - - handleDelete(that, location, messageAllText) { - if (location === 'top') { - if (that.selectList.length <= 0) { - that.$message.warning(messageAllText); - } else { - that.$message.success('鍒犻櫎鎴愬姛锛�'); - } - } else if (location === 'menu') { - that.$message.success('鍒犻櫎鎴愬姛锛�'); - } - - }, - menuConfigurationWarning(location) { - if (location === 'menu') { - this.$message.warning('璇烽噸鏂伴厤缃寜閽嚦涓婃柟鍖哄煙'); - return - } - }, - topConfigurationWarning(location) { - if (location === ' top') { - this.$message.warning('璇烽噸鏂伴厤缃寜閽嚦鎿嶄綔鍖哄煙'); - return - } - } -} diff --git a/Source/plt-web/plt-web-ui/src/views/base/region.vue b/Source/plt-web/plt-web-ui/src/views/base/region.vue deleted file mode 100644 index 80ccf11..0000000 --- a/Source/plt-web/plt-web-ui/src/views/base/region.vue +++ /dev/null @@ -1,429 +0,0 @@ -<template> - <el-row> - <el-col :span="9"> - <div class="box"> - <el-scrollbar> - <basic-container> - <avue-tree :option="treeOption" :data="treeData" @node-click="nodeClick"/> - </basic-container> - </el-scrollbar> - </div> - </el-col> - <el-col :span="15"> - <basic-container> - <el-button-group> - <el-button v-if="permission.region_add" type="primary" size="small" icon="el-icon-circle-plus-outline" @click="addChildren">鏂板涓嬬骇</el-button> - <el-button v-if="permission.region_delete" type="primary" size="small" icon="el-icon-delete" @click="handleDelete">鍒犻櫎</el-button> - <el-button v-if="permission.region_import" type="primary" size="small" icon="el-icon-upload2" @click="handleImport">瀵煎叆</el-button> - <el-button v-if="permission.region_export" type="primary" size="small" icon="el-icon-download" @click="handleExport">瀵煎嚭</el-button> - <el-button v-if="permission.region_debug" type="primary" size="small" icon="el-icon-video-play" @click="handleDebug">璋冭瘯</el-button> - </el-button-group> - </basic-container> - <basic-container> - <avue-form ref="form" :option="regionOption" v-model="regionForm" @submit="handleSubmit"> - <template slot="code" slot-scope="{}"> - <el-input placeholder="璇疯緭鍏� 鍖哄垝瀛愮紪鍙�" v-model="regionForm.subCode"> - <template slot="prepend">{{regionForm.parentCode}}</template> - </el-input> - </template> - </avue-form> - <el-dialog title="琛屾斂鍖哄垝鏁版嵁瀵煎叆" - append-to-body - :visible.sync="excelBox" - width="555px"> - <avue-form :option="excelOption" v-model="excelForm" :upload-after="uploadAfter"> - <template slot="excelTemplate"> - <el-button type="primary" @click="handleTemplate"> - 鐐瑰嚮涓嬭浇<i class="el-icon-download el-icon--right"></i> - </el-button> - </template> - </avue-form> - </el-dialog> - <el-dialog title="琛屾斂鍖哄垝鏁版嵁璋冭瘯" - append-to-body - :visible.sync="debugBox" - width="350px"> - <avue-form :option="debugOption" v-model="debugForm"/> - </el-dialog> - </basic-container> - </el-col> - </el-row> -</template> - -<script> - import {getLazyTree, getDetail, submit, remove} from "@/api/base/region"; - import {exportBlob} from "@/api/common"; - import {mapGetters} from "vuex"; - import {validatenull} from "@/util/validate"; - import {downloadXls} from "@/util/util"; - import {dateNow} from "@/util/date"; - import {getToken} from "@/util/auth"; - import NProgress from 'nprogress'; - import 'nprogress/nprogress.css'; - - export default { - data() { - return { - topCode: '00', - treeCode: '', - treeParentCode: '', - treeData: [], - treeOption: { - nodeKey: 'id', - lazy: true, - treeLoad: function (node, resolve) { - const parentCode = (node.level === 0) ? "00" : node.data.id; - getLazyTree(parentCode).then(res => { - resolve(res.data.data.map(item => { - return { - ...item, - leaf: !item.hasChildren - } - })) - }); - }, - addBtn: false, - menu: false, - size: 'small', - props: { - labelText: '鏍囬', - label: 'title', - value: 'value', - children: 'children' - } - }, - regionForm: {}, - regionOption: { - labelWidth: 100, - column: [ - { - label: "鐖跺尯鍒掔紪鍙�", - prop: "parentCode", - span: 24, - disabled: true, - rules: [{ - required: true, - message: "璇疯緭鍏ョ埗鍖哄垝缂栧彿", - trigger: "blur" - }] - }, - { - label: "鐖跺尯鍒掑悕绉�", - prop: "parentName", - span: 24, - disabled: true, - }, - { - label: "鍖哄垝缂栧彿", - prop: "code", - formslot: true, - span: 24, - rules: [{ - required: true, - message: "璇疯緭鍏ュ尯鍒掔紪鍙�", - trigger: "blur" - }] - }, - { - label: "鍖哄垝瀛愮紪鍙�", - prop: "subCode", - display: false, - }, - { - label: "鍖哄垝鍚嶇О", - prop: "name", - span: 24, - rules: [{ - required: true, - message: "璇疯緭鍏ュ尯鍒掑悕绉�", - trigger: "blur" - }] - }, - { - label: "鍖哄垝绛夌骇", - prop: "regionLevel", - type: "radio", - dicUrl: "/api/blade-system/dict/dictionary?code=region", - props: { - label: "dictValue", - value: "dictKey" - }, - dataType: "number", - span: 24, - rules: [{ - required: true, - message: "璇烽�夋嫨鍖哄垝绛夌骇", - trigger: "blur" - }] - }, - { - label: "鍖哄垝鎺掑簭", - prop: "sort", - type: "number", - span: 24, - rules: [{ - required: true, - message: "璇疯緭鍏ュ尯鍒掓帓搴�", - trigger: "blur" - }] - }, - { - label: "鍖哄垝澶囨敞", - prop: "remark", - type: "textarea", - minRows: 6, - span: 24, - }, - ] - }, - excelBox: false, - excelForm: {}, - excelOption: { - submitBtn: false, - emptyBtn: false, - column: [ - { - label: '妯℃澘涓婁紶', - prop: 'excelFile', - type: 'upload', - drag: true, - loadText: '妯℃澘涓婁紶涓紝璇风◢绛�', - span: 24, - propsHttp: { - res: 'data' - }, - tip: '璇蜂笂浼� .xls,.xlsx 鏍囧噯鏍煎紡鏂囦欢', - action: "/api/blade-system/region/import-region" - }, - { - label: "鏁版嵁瑕嗙洊", - prop: "isCovered", - type: "switch", - align: "center", - width: 80, - dicData: [ - { - label: "鍚�", - value: 0 - }, - { - label: "鏄�", - value: 1 - } - ], - value: 0, - slot: true, - rules: [ - { - required: true, - message: "璇烽�夋嫨鏄惁瑕嗙洊", - trigger: "blur" - } - ] - }, - { - label: '妯℃澘涓嬭浇', - prop: 'excelTemplate', - formslot: true, - span: 24, - } - ] - }, - debugBox: false, - debugForm: {}, - debugOption: { - labelWidth: 50, - submitBtn: false, - emptyBtn: false, - column: [ - { - label: '鐪佷唤', - prop: 'province', - type: 'select', - props: { - label: 'name', - value: 'code' - }, - cascader: ['city'], - dicUrl: '/api/blade-system/region/select', - span: 24, - }, - { - label: '鍦板競', - prop: 'city', - type: 'select', - props: { - label: 'name', - value: 'code' - }, - cascader: ['district'], - dicFlag: false, - dicUrl: '/api/blade-system/region/select?code={{province}}', - span: 24, - }, - { - label: '鍖哄幙', - prop: 'district', - type: 'select', - props: { - label: 'name', - value: 'code' - }, - dicFlag: false, - dicUrl: '/api/blade-system/region/select?code={{city}}', - span: 24, - } - ] - } - }; - }, - watch: { - 'regionForm.subCode'() { - this.regionForm.code = this.regionForm.parentCode + this.regionForm.subCode; - }, - 'excelForm.isCovered'() { - if (this.excelForm.isCovered !== '') { - const column = this.findObject(this.excelOption.column, "excelFile"); - column.action = `/api/blade-system/region/import-region?isCovered=${this.excelForm.isCovered}`; - } - } - }, - computed: { - ...mapGetters(["permission"]), - permissionList() { - return { - addBtn: this.vaildData(this.permission.region_add, false), - viewBtn: this.vaildData(this.permission.region_view, false), - delBtn: this.vaildData(this.permission.region_delete, false), - editBtn: this.vaildData(this.permission.region_edit, false) - }; - }, - ids() { - let ids = []; - this.selectionList.forEach(ele => { - ids.push(ele.id); - }); - return ids.join(","); - } - }, - methods: { - initTree() { - this.treeData = []; - getLazyTree(this.topCode).then(res => { - this.treeData = res.data.data.map(item => { - return { - ...item, - leaf: !item.hasChildren - } - }) - }); - }, - nodeClick(data) { - const column = this.findObject(this.regionOption.column, "parentCode"); - column.disabled = true; - this.treeCode = data.id; - this.treeParentCode = data.parentId; - getDetail(this.treeCode).then(res => { - this.regionForm = res.data.data; - this.regionForm.subCode = this.regionForm.code.replace(this.regionForm.parentCode, ''); - }) - }, - addChildren() { - if (validatenull(this.regionForm.code) || validatenull(this.regionForm.name)) { - this.$message.warning("璇峰厛閫夋嫨涓�椤瑰尯鍒�"); - return; - } - this.regionForm.parentCode = this.regionForm.code; - this.regionForm.parentName = this.regionForm.name; - this.regionForm.code = ''; - this.regionForm.subCode = ''; - this.regionForm.name = ''; - this.regionForm.regionLevel = (this.regionForm.regionLevel === 5) ? 5 : this.regionForm.regionLevel + 1; - }, - handleSubmit(form, done, loading) { - const parentCode = form.parentCode === this.topCode ? '' : form.parentCode; - form.code = parentCode + form.subCode; - submit(form).then(() => { - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - this.initTree(); - this.regionForm.subCode = ''; - this.$refs.form.resetForm(); - done(); - }, error => { - loading(); - window.console.log(error); - }); - }, - handleDelete() { - if (validatenull(this.regionForm.code)) { - this.$message.warning("璇峰厛閫夋嫨涓�椤瑰尯鍒�"); - return; - } - this.$confirm(`纭畾灏� [${this.regionForm.name}] 鏁版嵁鍒犻櫎?`, { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }) - .then(() => { - return remove(this.treeCode); - }) - .then(() => { - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - this.initTree(); - this.regionForm.subCode = ''; - this.$refs.form.resetForm(); - }); - }, - uploadAfter(res, done, loading, column) { - window.console.log(column); - this.excelBox = false; - this.initTree(); - done(); - }, - handleDebug() { - this.debugBox = true; - }, - handleImport() { - this.excelBox = true; - }, - handleExport() { - this.$confirm("鏄惁瀵煎嚭琛屾斂鍖哄垝鏁版嵁?", "鎻愮ず", { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }).then(() => { - NProgress.start(); - exportBlob(`/api/blade-system/region/export-region?${this.website.tokenHeader}=${getToken()}`).then(res => { - downloadXls(res.data, `琛屾斂鍖哄垝鏁版嵁${dateNow()}.xlsx`); - NProgress.done(); - }) - }); - }, - handleTemplate() { - exportBlob(`/api/blade-system/region/export-template?${this.website.tokenHeader}=${getToken()}`).then(res => { - downloadXls(res.data, "琛屾斂鍖哄垝妯℃澘.xlsx"); - }) - }, - } - }; -</script> - -<style> - .box { - height: 800px; - } - - .el-scrollbar { - height: 100%; - } - - .box .el-scrollbar__wrap { - overflow: scroll; - } -</style> diff --git a/Source/plt-web/plt-web-ui/src/views/desk/notice.vue b/Source/plt-web/plt-web-ui/src/views/desk/notice.vue deleted file mode 100644 index 7886ec9..0000000 --- a/Source/plt-web/plt-web-ui/src/views/desk/notice.vue +++ /dev/null @@ -1,294 +0,0 @@ -<template> - <basic-container> - <avue-crud :option="option" - :table-loading="loading" - :data="data" - :page.sync="page" - ref="crud" - @row-del="rowDel" - v-model="form" - :permission="permissionList" - @row-update="rowUpdate" - @row-save="rowSave" - :before-open="beforeOpen" - @search-change="searchChange" - @search-reset="searchReset" - @selection-change="selectionChange" - @current-change="currentChange" - @size-change="sizeChange" - @refresh-change="refreshChange" - @on-load="onLoad"> - <template slot="menuLeft"> - <el-button type="danger" - size="small" - icon="el-icon-delete" - plain - v-if="permission.notice_delete" - @click="handleDelete">鍒� 闄� - </el-button> - </template> - <template slot-scope="{row}" - slot="category"> - <el-tag>{{row.categoryName}}</el-tag> - </template> - </avue-crud> - </basic-container> -</template> - -<script> - import {getList, remove, update, add, getNotice} from "@/api/desk/notice"; - import {mapGetters} from "vuex"; - - export default { - data() { - return { - form: {}, - query: {}, - loading: true, - page: { - pageSize: 10, - currentPage: 1, - total: 0 - }, - selectionList: [], - option: { - height: 'auto', - calcHeight: 30, - dialogWidth: 950, - tip: false, - searchShow: true, - searchMenuSpan: 6, - border: true, - index: true, - viewBtn: true, - selection: true, - excelBtn: true, - dialogClickModal: false, - column: [ - { - label: "閫氱煡鏍囬", - prop: "title", - span: 24, - row: true, - search: true, - rules: [{ - required: true, - message: "璇疯緭鍏ラ�氱煡鏍囬", - trigger: "blur" - }] - }, - { - label: "閫氱煡绫诲瀷", - type: "select", - dicUrl: "/api/blade-system/dict/dictionary?code=notice", - props: { - label: "dictValue", - value: "dictKey" - }, - dataType: "number", - slot: true, - prop: "category", - search: true, - rules: [{ - required: true, - message: "璇疯緭鍏ラ�氱煡绫诲瀷", - trigger: "blur" - }] - }, - { - label: "閫氱煡鏃堕棿", - prop: "releaseTimeRange", - type: "datetime", - format: "yyyy-MM-dd hh:mm:ss", - valueFormat: "yyyy-MM-dd hh:mm:ss", - searchRange:true, - hide: true, - addDisplay: false, - editDisplay: false, - viewDisplay: false, - search: true, - rules: [{ - required: true, - message: "璇疯緭鍏ラ�氱煡鏃堕棿", - trigger: "blur" - }] - }, - { - label: "閫氱煡鏃ユ湡", - prop: "releaseTime", - type: "date", - format: "yyyy-MM-dd hh:mm:ss", - valueFormat: "yyyy-MM-dd hh:mm:ss", - rules: [{ - required: true, - message: "璇疯緭鍏ラ�氱煡鏃ユ湡", - trigger: "click" - }] - }, - { - label: "閫氱煡鍐呭", - prop: "content", - component: 'AvueUeditor', - options: { - action: '/api/blade-resource/oss/endpoint/put-file', - props: { - res: "data", - url: "link", - } - }, - hide: true, - minRows: 6, - span: 24, - } - ] - }, - data: [] - }; - }, - computed: { - ...mapGetters(["permission"]), - permissionList() { - return { - addBtn: this.vaildData(this.permission.notice_add, false), - viewBtn: this.vaildData(this.permission.notice_view, false), - delBtn: this.vaildData(this.permission.notice_delete, false), - editBtn: this.vaildData(this.permission.notice_edit, false) - }; - }, - ids() { - let ids = []; - this.selectionList.forEach(ele => { - ids.push(ele.id); - }); - return ids.join(","); - } - }, - methods: { - rowSave(row, done, loading) { - add(row).then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - done(); - }, error => { - window.console.log(error); - loading(); - }); - }, - rowUpdate(row, index, done, loading) { - update(row).then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - done(); - }, error => { - window.console.log(error); - loading(); - }); - }, - rowDel(row) { - this.$confirm("纭畾灏嗛�夋嫨鏁版嵁鍒犻櫎?", { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }) - .then(() => { - return remove(row.id); - }) - .then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - }); - }, - searchReset() { - this.query = {}; - this.onLoad(this.page); - }, - searchChange(params, done) { - this.query = params; - this.page.currentPage = 1; - this.onLoad(this.page, params); - done(); - }, - selectionChange(list) { - this.selectionList = list; - }, - selectionClear() { - this.selectionList = []; - this.$refs.crud.toggleSelection(); - }, - handleDelete() { - if (this.selectionList.length === 0) { - this.$message.warning("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�"); - return; - } - this.$confirm("纭畾灏嗛�夋嫨鏁版嵁鍒犻櫎?", { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }) - .then(() => { - return remove(this.ids); - }) - .then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - this.$refs.crud.toggleSelection(); - }); - }, - beforeOpen(done, type) { - if (["edit", "view"].includes(type)) { - getNotice(this.form.id).then(res => { - this.form = res.data.data; - }); - } - done(); - }, - currentChange(currentPage) { - this.page.currentPage = currentPage; - }, - sizeChange(pageSize) { - this.page.pageSize = pageSize; - }, - refreshChange() { - this.onLoad(this.page, this.query); - }, - onLoad(page, params = {}) { - const {releaseTimeRange} = this.query; - let values = { - ...params, - ...this.query - }; - if (releaseTimeRange) { - values = { - ...values, - releaseTime_datege: releaseTimeRange[0], - releaseTime_datelt: releaseTimeRange[1], - }; - values.releaseTimeRange = null; - } - this.loading = true; - getList(page.currentPage, page.pageSize, values).then(res => { - const data = res.data.data; - this.page.total = data.total; - this.data = data.records; - this.loading = false; - this.selectionClear(); - }); - } - } - }; -</script> - -<style> -</style> diff --git a/Source/plt-web/plt-web-ui/src/views/report/reportlist.vue b/Source/plt-web/plt-web-ui/src/views/report/reportlist.vue deleted file mode 100644 index b33c12b..0000000 --- a/Source/plt-web/plt-web-ui/src/views/report/reportlist.vue +++ /dev/null @@ -1,203 +0,0 @@ -<template> - <basic-container> - <avue-crud :option="option" - :table-loading="loading" - :data="data" - ref="crud" - v-model="form" - :page.sync="page" - :permission="permissionList" - @row-del="rowDel" - @search-change="searchChange" - @search-reset="searchReset" - @selection-change="selectionChange" - @current-change="currentChange" - @size-change="sizeChange" - @refresh-change="refreshChange" - @on-load="onLoad"> - <template slot="menuLeft"> - <el-button type="danger" - size="small" - icon="el-icon-delete" - plain - @click="handleDelete">鍒� 闄� - </el-button> - </template> - <template slot-scope="scope" slot="menu"> - <el-button - type="text" - icon="el-icon-edit-outline" - size="small" - @click.stop="handleDesign(scope.row.name)" - v-if="userInfo.role_name.includes('admin')" - >璁捐 - </el-button> - <el-button - type="text" - icon="el-icon-view" - size="small" - @click.stop="handlePreview(scope.row.name)" - v-if="userInfo.role_name.includes('admin')" - >棰勮 - </el-button> - </template> - <template slot-scope="{row}" slot="name"> - <el-tag style="cursor:pointer" @click="handlePreview(row.name)">{{ row.name }}</el-tag> - </template> - </avue-crud> - </basic-container> -</template> - -<script> -import {getList, remove} from "@/api/report/report"; -import {mapGetters} from "vuex"; - -export default { - data() { - return { - form: {}, - selectionList: [], - query: {}, - loading: true, - page: { - pageSize: 10, - currentPage: 1, - total: 0 - }, - option: { - height: 'auto', - calcHeight: 30, - tip: false, - searchShow: true, - searchMenuSpan: 6, - border: true, - index: true, - selection: true, - viewBtn: true, - dialogClickModal: false, - column: [ - { - label: "鏂囦欢鍚�", - prop: "name", - search: true, - slot: true, - }, - { - label: "鍒涘缓鏃堕棿", - prop: "createTime", - }, - { - label: "鏇存柊鏃堕棿", - prop: "updateTime", - } - ] - }, - data: [] - }; - }, - computed: { - ...mapGetters(["userInfo", "permission"]), - permissionList() { - return { - addBtn: false, - viewBtn: false, - delBtn: true, - editBtn: false - }; - }, - ids() { - let ids = []; - this.selectionList.forEach(ele => { - ids.push(ele.id); - }); - return ids.join(","); - } - }, - methods: { - handlePreview(name) { - this.$router.push({path: `/myiframe/urlPath?name=preview-${name}&src=${this.website.reportUrl}/preview?_u=blade-${name}`}); - }, - handleDesign(name) { - this.$router.push({path: `/myiframe/urlPath?name=designer-${name}&src=${this.website.reportUrl}/designer?_u=blade-${name}`}); - }, - rowDel(row) { - this.$confirm("纭畾灏嗛�夋嫨鏁版嵁鍒犻櫎?", { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }) - .then(() => { - return remove(row.id); - }) - .then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - }); - }, - searchReset() { - this.query = {}; - this.onLoad(this.page); - }, - searchChange(params, done) { - this.query = params; - this.page.currentPage = 1; - this.onLoad(this.page, params); - done(); - }, - selectionChange(list) { - this.selectionList = list; - }, - selectionClear() { - this.selectionList = []; - this.$refs.crud.toggleSelection(); - }, - handleDelete() { - if (this.selectionList.length === 0) { - this.$message.warning("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�"); - return; - } - this.$confirm("纭畾灏嗛�夋嫨鏁版嵁鍒犻櫎?", { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }) - .then(() => { - return remove(this.ids); - }) - .then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - this.$refs.crud.toggleSelection(); - }); - }, - currentChange(currentPage) { - this.page.currentPage = currentPage; - }, - sizeChange(pageSize) { - this.page.pageSize = pageSize; - }, - refreshChange() { - this.onLoad(this.page, this.query); - }, - onLoad(page, params = {}) { - this.loading = true; - getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => { - const data = res.data.data; - this.page.total = data.total; - this.data = data.records; - this.loading = false; - this.selectionClear(); - }); - } - } -}; -</script> - -<style> -</style> diff --git a/Source/plt-web/plt-web-ui/src/views/tool/code.vue b/Source/plt-web/plt-web-ui/src/views/tool/code.vue deleted file mode 100644 index f8d5740..0000000 --- a/Source/plt-web/plt-web-ui/src/views/tool/code.vue +++ /dev/null @@ -1,624 +0,0 @@ -<template> - <basic-container> - <avue-crud :option="option" - :table-loading="loading" - :data="data" - ref="crud" - v-model="form" - :permission="permissionList" - :page.sync="page" - @row-del="rowDel" - @row-update="rowUpdate" - @row-save="rowSave" - :before-open="beforeOpen" - @search-change="searchChange" - @search-reset="searchReset" - @selection-change="selectionChange" - @current-change="currentChange" - @size-change="sizeChange" - @refresh-change="refreshChange" - @on-load="onLoad"> - <template slot="menuLeft"> - <el-button type="danger" - size="small" - icon="el-icon-delete" - v-if="permission.code_delete" - plain - @click="handleDelete">鍒� 闄� - </el-button> - <el-button type="primary" - size="small" - plain - icon="el-icon-refresh" - @click="handleBuild">浠g爜鐢熸垚 - </el-button> - </template> - <template slot-scope="scope" slot="menu"> - <el-button type="text" - size="small" - icon="el-icon-document-copy" - v-if="permission.code_edit" - class="none-border" - @click.stop="handleCopy(scope.row)">澶嶅埗 - </el-button> - </template> - </avue-crud> - </basic-container> -</template> - -<script> - import {getList, getCode, build, remove, add, update, copy} from "@/api/tool/code"; - import {getDetail as modelDetail, prototypeDetail} from "@/api/tool/model"; - import {templateDic} from "@/const/tool/model"; - import {validatenull} from "@/util/validate"; - import {mapGetters} from "vuex"; - - export default { - data() { - return { - form: {}, - selectionList: [], - loading: true, - query: {}, - page: { - pageSize: 10, - currentPage: 1, - total: 0 - }, - option: { - height: 'auto', - calcHeight: 30, - dialogWidth: 900, - tip: false, - searchShow: true, - searchMenuSpan: 6, - border: true, - index: true, - selection: true, - labelWidth: 120, - menuWidth: 300, - viewBtn: true, - dialogClickModal: false, - tabs: true, - column: [ - { - label: "妯″潡鍚�", - prop: "codeName", - search: true, - display: false, - }, - { - label: '妯$増绫诲瀷', - prop: 'templateType', - type: "select", - dicData: templateDic, - display: false, - }, - { - label: "琛ㄥ悕", - prop: "tableName", - search: true, - display: false, - }, - { - label: "鏈嶅姟鍚�", - prop: "serviceName", - search: true, - display: false, - }, - { - label: "鍖呭悕", - prop: "packageName", - display: false, - }, - ], - group: [ - { - label: '妯″瀷閰嶇疆', - prop: 'modelSetting', - icon: 'el-icon-tickets', - column: [ - { - label: "鏁版嵁妯″瀷", - prop: "modelId", - search: true, - span: 24, - type: "select", - dicUrl: "/api/blade-develop/model/select", - props: { - label: "modelName", - value: "id" - }, - rules: [{ - required: true, - message: "璇烽�夋嫨鏁版嵁妯″瀷", - trigger: "blur" - }] - }, - { - label: "妯″潡鍚�", - prop: "codeName", - search: true, - rules: [{ - required: true, - message: "璇疯緭鍏ユā鍧楀悕", - trigger: "blur" - }] - }, - { - label: "鏈嶅姟鍚�", - prop: "serviceName", - search: true, - rules: [{ - required: true, - message: "璇疯緭鍏ユ湇鍔″悕", - trigger: "blur" - }] - }, - { - label: "琛ㄥ悕", - prop: "tableName", - rules: [{ - required: true, - message: "璇疯緭鍏ヨ〃鍚�", - trigger: "blur" - }] - }, - { - label: "琛ㄥ墠缂�", - prop: "tablePrefix", - hide: true, - rules: [{ - required: true, - message: "璇疯緭鍏ヨ〃鍓嶇紑", - trigger: "blur" - }] - }, - { - label: "涓婚敭鍚�", - prop: "pkName", - hide: true, - rules: [{ - required: true, - message: "璇疯緭鍏ヤ富閿悕", - trigger: "blur" - }] - }, - { - label: "鍖呭悕", - prop: "packageName", - overHidden: true, - rules: [{ - required: true, - message: "璇疯緭鍏ュ寘鍚�", - trigger: "blur" - }] - }, - ] - }, - { - label: '妯$増閰嶇疆', - prop: 'templateSetting', - icon: 'el-icon-copy-document', - column: [ - { - label: '妯$増绫诲瀷', - prop: 'templateType', - type: "select", - dicData: templateDic, - value: "crud", - rules: [{ - required: true, - message: "璇烽�夋嫨妯$増绫诲瀷", - trigger: "blur" - }] - }, - { - label: "浣滆�呬俊鎭�", - prop: "author", - value: "BladeX", - rules: [{ - required: true, - message: "璇疯緭鍏ヤ綔鑰�", - trigger: "blur" - }] - }, - { - label: "瀛愯〃妯″瀷", - prop: "subModelId", - type: "select", - dicUrl: "/api/blade-develop/model/select", - props: { - label: "modelName", - value: "id" - }, - display: false, - hide: true, - }, - { - label: "瀛愯〃澶栭敭", - prop: "subFkId", - display: false, - hide: true, - }, - { - label: "鏍戜富閿瓧娈�", - prop: "treeId", - type: "select", - dicData: [], - props: { - label: "comment", - value: "jdbcName" - }, - display: false, - hide: true, - }, - { - label: "鏍戠埗涓婚敭瀛楁", - prop: "treePid", - type: "select", - dicData: [], - props: { - label: "comment", - value: "jdbcName" - }, - display: false, - hide: true, - }, - { - label: "鏍戝悕绉板瓧娈�", - prop: "treeName", - type: "select", - dicData: [], - props: { - label: "comment", - value: "jdbcName" - }, - display: false, - hide: true, - }, - ] - }, - { - label: '鐢熸垚閰嶇疆', - prop: 'codingSetting', - icon: 'el-icon-printer', - column: [ - { - label: "鍩虹涓氬姟", - labelTip:'閰嶇疆鏄惁浣跨敤BladeX灏佽鐨凚aseService瑙i攣鏇村鍔熻兘', - prop: "baseMode", - type: 'radio', - dicUrl: "/api/blade-system/dict/dictionary?code=yes_no", - props: { - label: "dictValue", - value: "dictKey" - }, - value: 2, - dataType: "number", - hide: true, - rules: [{ - required: true, - message: "璇烽�夋嫨鍩虹涓氬姟", - trigger: "blur" - }] - }, - { - label: "鍖呰鍣�", - labelTip:'閰嶇疆鏄惁浣跨敤Wrapper鍖呰鍣ㄦ潵鎷撳睍Controller杩斿洖鍒楄〃鐨勫瓧娈�', - prop: "wrapMode", - type: 'radio', - dicUrl: "/api/blade-system/dict/dictionary?code=yes_no", - props: { - label: "dictValue", - value: "dictKey" - }, - value: 2, - dataType: "number", - hide: true, - rules: [{ - required: true, - message: "璇烽�夋嫨鍖呰鍣�", - trigger: "blur" - }] - }, - { - label: "杩滅▼璋冪敤", - labelTip:'閰嶇疆鏄惁浣跨敤Feign杩滅▼璋冪敤', - prop: "feignMode", - type: 'radio', - dicUrl: "/api/blade-system/dict/dictionary?code=yes_no", - props: { - label: "dictValue", - value: "dictKey" - }, - value: 1, - dataType: "number", - hide: true, - rules: [{ - required: true, - message: "璇烽�夋嫨鍩虹涓氬姟", - trigger: "blur" - }] - }, - { - label: "浠g爜椋庢牸", - labelTip:'閫夋嫨涓嶅悓搴曞眰瀹炵幇鐨勪唬鐮佹ā鐗�', - prop: "codeStyle", - type: 'radio', - dicData: [ - { - label: "saber", - value: "saber" - }, - { - label: "element", - value: "element" - } - ], - value: "saber", - hide: true, - rules: [{ - required: true, - message: "璇烽�夋嫨浠g爜椋庢牸", - trigger: "blur" - }] - }, - { - label: "鍚庣鐢熸垚璺緞", - prop: "apiPath", - span: 24, - hide: true, - rules: [{ - required: true, - message: "璇疯緭鍏ュ悗绔敓鎴愯矾寰�", - trigger: "blur" - }] - }, - { - label: "鍓嶇鐢熸垚璺緞", - prop: "webPath", - span: 24, - hide: true, - rules: [{ - required: true, - message: "璇疯緭鍏ュ墠绔敓鎴愯矾寰�", - trigger: "blur" - }] - } - ] - } - ] - }, - data: [] - }; - }, - watch: { - 'form.modelId'() { - if (!validatenull(this.form.modelId)) { - // 鑾峰彇鏁版嵁妯″瀷淇℃伅 - modelDetail(this.form.modelId).then(res => { - const result = res.data; - if (result.success) { - const {modelName, modelTable, modelCode} = result.data; - if (validatenull(this.form.tablePrefix)) { - this.form.tablePrefix = modelTable.split("_")[0] + "_"; - } - if (validatenull(this.form.tableName)) { - this.form.tableName = modelTable; - } - if (validatenull(this.form.codeName)) { - this.form.codeName = modelName; - } - if (validatenull(this.form.serviceName)) { - this.form.serviceName = `blade-${modelCode}`; - } - if (validatenull(this.form.pkName)) { - this.form.pkName = "id"; - } - if (validatenull(this.form.packageName)) { - this.form.packageName = `org.springblade.${modelCode}`; - } - if (validatenull(this.form.subFkId) && !validatenull(this.form.tablePrefix)) { - this.form.subFkId = modelTable.replace(this.form.tablePrefix, "") + "_id"; - } - - // 鑾峰彇鏁版嵁鍘熷瀷淇℃伅 - prototypeDetail(this.form.modelId).then(res => { - const result = res.data; - if (result.success) { - const columnTreeId = this.findObject(this.option.group, "treeId"); - const columnTreePid = this.findObject(this.option.group, "treePid"); - const columnTreeName = this.findObject(this.option.group, "treeName"); - columnTreeId.dicData = result.data; - columnTreePid.dicData = result.data; - columnTreeName.dicData = result.data; - } - }); - } - }); - } - }, - 'form.templateType'() { - // 妯$増绫诲瀷 - const type = this.form.templateType; - - // 涓诲瓙琛ㄥ瓧娈垫樉闅� - const columnSubModelId = this.findObject(this.option.group, "subModelId"); - const columnSubFkId = this.findObject(this.option.group, "subFkId"); - columnSubModelId.display = type === "sub"; - columnSubFkId.display = type === "sub"; - - // 鏍戣〃瀛楁鏄鹃殣 - const columnTreeId = this.findObject(this.option.group, "treeId"); - const columnTreePid = this.findObject(this.option.group, "treePid"); - const columnTreeName = this.findObject(this.option.group, "treeName"); - columnTreeId.display = type === "tree"; - columnTreePid.display = type === "tree"; - columnTreeName.display = type === "tree"; - - } - }, - computed: { - ...mapGetters(["permission"]), - permissionList() { - return { - addBtn: this.vaildData(this.permission.code_add, false), - viewBtn: this.vaildData(this.permission.code_view, false), - delBtn: this.vaildData(this.permission.code_delete, false), - editBtn: this.vaildData(this.permission.code_edit, false) - }; - }, - ids() { - let ids = []; - this.selectionList.forEach(ele => { - ids.push(ele.id); - }); - return ids.join(","); - } - }, - methods: { - rowSave(row, done, loading) { - add(row).then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - done(); - }, error => { - window.console.log(error); - loading(); - }); - }, - rowUpdate(row, index, done, loading) { - update(row).then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - done(); - }, error => { - window.console.log(error); - loading(); - }); - }, - rowDel(row) { - this.$confirm("纭畾灏嗛�夋嫨鏁版嵁鍒犻櫎?", { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }) - .then(() => { - return remove(row.id); - }) - .then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - }); - }, - searchReset() { - this.query = {}; - this.onLoad(this.page); - }, - searchChange(params, done) { - this.query = params; - this.page.currentPage = 1; - this.onLoad(this.page, params); - done(); - }, - selectionChange(list) { - this.selectionList = list; - }, - selectionClear() { - this.selectionList = []; - this.$refs.crud.toggleSelection(); - }, - handleDelete() { - if (this.selectionList.length === 0) { - this.$message.warning("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�"); - return; - } - this.$confirm("纭畾灏嗛�夋嫨鏁版嵁鍒犻櫎?", { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }) - .then(() => { - return remove(this.ids); - }) - .then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - this.$refs.crud.toggleSelection(); - }); - }, - handleBuild() { - if (this.selectionList.length === 0) { - this.$message.warning("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�"); - return; - } - this.$confirm("鏄惁鐢熸垚閫変腑妯″潡鐨勪唬鐮�?", { - title: "浠g爜鐢熸垚纭", - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }) - .then(() => { - return build(this.ids); - }) - .then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - this.$refs.crud.toggleSelection(); - }); - }, - handleCopy(row) { - copy(row.id).then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "澶嶅埗鎴愬姛!" - }); - }); - }, - beforeOpen(done, type) { - if (["edit", "view"].includes(type)) { - getCode(this.form.id).then(res => { - this.form = res.data.data; - }); - } - done(); - }, - currentChange(currentPage) { - this.page.currentPage = currentPage; - }, - sizeChange(pageSize) { - this.page.pageSize = pageSize; - }, - refreshChange() { - this.onLoad(this.page, this.query); - }, - onLoad(page, params = {}) { - this.loading = true; - getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => { - const data = res.data.data; - this.page.total = data.total; - this.data = data.records; - this.loading = false; - this.selectionClear(); - }); - } - } - }; -</script> diff --git a/Source/plt-web/plt-web-ui/src/views/tool/datasource.vue b/Source/plt-web/plt-web-ui/src/views/tool/datasource.vue deleted file mode 100644 index 9516941..0000000 --- a/Source/plt-web/plt-web-ui/src/views/tool/datasource.vue +++ /dev/null @@ -1,278 +0,0 @@ -<template> - <basic-container> - <avue-crud :option="option" - :table-loading="loading" - :data="data" - :page.sync="page" - :permission="permissionList" - :before-open="beforeOpen" - v-model="form" - ref="crud" - @row-update="rowUpdate" - @row-save="rowSave" - @row-del="rowDel" - @search-change="searchChange" - @search-reset="searchReset" - @selection-change="selectionChange" - @current-change="currentChange" - @size-change="sizeChange" - @refresh-change="refreshChange" - @on-load="onLoad"> - <template slot="menuLeft"> - <el-button type="danger" - size="small" - icon="el-icon-delete" - plain - v-if="permission.datasource_delete" - @click="handleDelete">鍒� 闄� - </el-button> - </template> - </avue-crud> - </basic-container> -</template> - -<script> - import {getList, getDetail, add, update, remove} from "@/api/tool/datasource"; - import {mapGetters} from "vuex"; - - export default { - data() { - return { - form: {}, - query: {}, - loading: true, - page: { - pageSize: 10, - currentPage: 1, - total: 0 - }, - selectionList: [], - option: { - height: 'auto', - calcHeight: 30, - dialogWidth: 900, - tip: false, - searchShow: true, - searchMenuSpan: 6, - border: true, - index: true, - viewBtn: true, - selection: true, - dialogClickModal: false, - column: [ - { - label: "鍚嶇О", - prop: "name", - width: 120, - rules: [{ - required: true, - message: "璇疯緭鍏ユ暟鎹簮鍚嶇О", - trigger: "blur" - }] - }, - { - label: "椹卞姩绫�", - prop: "driverClass", - type: 'select', - dicData: [ - { - label: 'com.mysql.cj.jdbc.Driver', - value: 'com.mysql.cj.jdbc.Driver', - }, { - label: 'org.postgresql.Driver', - value: 'org.postgresql.Driver', - }, { - label: 'oracle.jdbc.OracleDriver', - value: 'oracle.jdbc.OracleDriver', - }, { - label: 'com.microsoft.sqlserver.jdbc.SQLServerDriver', - value: 'com.microsoft.sqlserver.jdbc.SQLServerDriver', - }, { - label: 'dm.jdbc.driver.DmDriver', - value: 'dm.jdbc.driver.DmDriver', - } - ], - width: 200, - rules: [{ - required: true, - message: "璇疯緭鍏ラ┍鍔ㄧ被", - trigger: "blur" - }] - }, - { - label: "鐢ㄦ埛鍚�", - prop: "username", - width: 120, - rules: [{ - required: true, - message: "璇疯緭鍏ョ敤鎴峰悕", - trigger: "blur" - }] - }, - { - label: "瀵嗙爜", - prop: "password", - hide: true, - rules: [{ - required: true, - message: "璇疯緭鍏ュ瘑鐮�", - trigger: "blur" - }] - }, - { - label: "杩炴帴鍦板潃", - prop: "url", - span: 24, - rules: [{ - required: true, - message: "璇疯緭鍏ヨ繛鎺ュ湴鍧�", - trigger: "blur" - }] - }, - { - label: "澶囨敞", - prop: "remark", - span: 24, - minRows: 3, - hide: true, - type: "textarea" - }, - ] - }, - data: [] - }; - }, - computed: { - ...mapGetters(["permission"]), - permissionList() { - return { - addBtn: this.vaildData(this.permission.datasource_add, false), - viewBtn: this.vaildData(this.permission.datasource_view, false), - delBtn: this.vaildData(this.permission.datasource_delete, false), - editBtn: this.vaildData(this.permission.datasource_edit, false) - }; - }, - ids() { - let ids = []; - this.selectionList.forEach(ele => { - ids.push(ele.id); - }); - return ids.join(","); - } - }, - methods: { - rowSave(row, done, loading) { - add(row).then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - done(); - }, error => { - window.console.log(error); - loading(); - }); - }, - rowUpdate(row, index, done, loading) { - update(row).then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - done(); - }, error => { - window.console.log(error); - loading(); - }); - }, - rowDel(row) { - this.$confirm("纭畾灏嗛�夋嫨鏁版嵁鍒犻櫎?", { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }) - .then(() => { - return remove(row.id); - }) - .then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - }); - }, - handleDelete() { - if (this.selectionList.length === 0) { - this.$message.warning("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�"); - return; - } - this.$confirm("纭畾灏嗛�夋嫨鏁版嵁鍒犻櫎?", { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }) - .then(() => { - return remove(this.ids); - }) - .then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - this.$refs.crud.toggleSelection(); - }); - }, - beforeOpen(done, type) { - if (["edit", "view"].includes(type)) { - getDetail(this.form.id).then(res => { - this.form = res.data.data; - }); - } - done(); - }, - searchReset() { - this.query = {}; - this.onLoad(this.page); - }, - searchChange(params, done) { - this.query = params; - this.page.currentPage = 1; - this.onLoad(this.page, params); - done(); - }, - selectionChange(list) { - this.selectionList = list; - }, - selectionClear() { - this.selectionList = []; - this.$refs.crud.toggleSelection(); - }, - currentChange(currentPage) { - this.page.currentPage = currentPage; - }, - sizeChange(pageSize) { - this.page.pageSize = pageSize; - }, - refreshChange() { - this.onLoad(this.page, this.query); - }, - onLoad(page, params = {}) { - this.loading = true; - getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => { - const data = res.data.data; - this.page.total = data.total; - this.data = data.records; - this.loading = false; - this.selectionClear(); - }); - } - } - }; -</script> - -<style> -</style> diff --git a/Source/plt-web/plt-web-ui/src/views/tool/model.vue b/Source/plt-web/plt-web-ui/src/views/tool/model.vue deleted file mode 100644 index 0c0db08..0000000 --- a/Source/plt-web/plt-web-ui/src/views/tool/model.vue +++ /dev/null @@ -1,349 +0,0 @@ -<template> - <basic-container> - <avue-crud :option="option" - :table-loading="loading" - :data="data" - :page="page" - :permission="permissionList" - :before-open="beforeOpen" - v-model="form" - v-loading.fullscreen.lock="fullscreenLoading" - ref="crud" - @row-update="rowUpdate" - @row-save="rowSave" - @row-del="rowDel" - @search-change="searchChange" - @search-reset="searchReset" - @selection-change="selectionChange" - @current-change="currentChange" - @size-change="sizeChange" - @on-load="onLoad"> - <template slot="menuLeft"> - <el-button type="danger" - size="small" - icon="el-icon-delete" - plain - @click="handleDelete">鍒� 闄� - </el-button> - </template> - <template slot-scope="{row}" slot="menu"> - <el-button type="text" - icon="el-icon-setting" - size="small" - plain - class="none-border" - @click.stop="handleModel(row)">妯″瀷閰嶇疆 - </el-button> - </template> - <template slot-scope="{row}" slot="modelTable"> - <el-tag>{{ row.modelTable }}</el-tag> - </template> - </avue-crud> - <el-dialog title="鏁版嵁搴撴ā鍨嬮厤缃�" - :visible.sync="modelBox" - :fullscreen="true" - append-to-body> - <avue-crud ref="crudModel" :option="optionModel" :table-loading="loading" :data="fields"></avue-crud> - <span slot="footer" class="dialog-footer"> - <el-button type="danger" @click="modelBox = false">鍏� 闂�</el-button> - <el-button type="primary" @click="handleSubmit">鎻� 浜�</el-button> - </span> - </el-dialog> - </basic-container> -</template> - -<script> -import { - getList, - getDetail, - add, - update, - remove, - getTableList, - getTableInfoByName, - getModelPrototype, - submitModelPrototype -} from "@/api/tool/model"; -import {entityDic, option, optionModel} from "@/const/tool/model"; -import {validatenull} from "@/util/validate"; -import {mapGetters} from "vuex"; - -export default { - data() { - return { - form: {}, - query: {}, - loading: true, - loadingOption: { - lock: true, - text: 'Loading', - spinner: 'el-icon-loading', - background: 'rgba(0, 0, 0, 0)' - }, - fullscreenLoading: false, - page: { - pageSize: 10, - currentPage: 1, - total: 0 - }, - selectionList: [], - modelBox: false, - modelId: 0, - datasourceId: 1, - tableInfo: {}, - active: 0, - stepStart: 0, - stepEnd: 4, - data: [], - option: option, - optionModel: optionModel, - formStep: {}, - fields: [], - selectionModelList: [], - }; - }, - watch: { - 'form.datasourceId'() { - if (!validatenull(this.form.datasourceId)) { - const fullLoading = this.$loading(this.loadingOption); - getTableList(this.form.datasourceId).then(res => { - const column = this.findObject(this.option.column, "modelTable"); - column.dicData = res.data.data; - fullLoading.close(); - }).catch(() => { - fullLoading.close(); - }) - } - }, - 'form.modelTable'() { - if (!validatenull(this.form.modelTable)) { - const fullLoading = this.$loading(this.loadingOption); - getTableInfoByName(this.form.modelTable, this.form.datasourceId).then(res => { - const result = res.data; - if (result.success) { - const {comment, entityName} = result.data; - if (validatenull(this.form.modelClass)) { - this.form.modelClass = entityName; - } - if (validatenull(this.form.modelName)) { - this.form.modelName = comment; - } - if (validatenull(this.form.modelCode)) { - this.form.modelCode = entityName.replace(/^\S/, s => s.toLowerCase()); - } - fullLoading.close(); - } - }); - } - } - }, - computed: { - ...mapGetters(["permission"]), - permissionList() { - return { - addBtn: true, - delBtn: true, - editBtn: true, - viewBtn: false - }; - }, - ids() { - let ids = []; - this.selectionList.forEach(ele => { - ids.push(ele.id); - }); - return ids.join(","); - }, - }, - methods: { - rowSave(row, done, loading) { - add(row).then(() => { - done(); - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - }, error => { - loading(); - window.console.log(error); - }); - }, - rowUpdate(row, index, done, loading) { - update(row).then(() => { - done(); - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - }, error => { - loading(); - window.console.log(error); - }); - }, - rowDel(row) { - this.$confirm("纭畾灏嗛�夋嫨鏁版嵁鍒犻櫎?", { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }) - .then(() => { - return remove(row.id); - }) - .then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - }); - }, - handleDelete() { - if (this.selectionList.length === 0) { - this.$message.warning("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�"); - return; - } - this.$confirm("纭畾灏嗛�夋嫨鏁版嵁鍒犻櫎?", { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }) - .then(() => { - return remove(this.ids); - }) - .then(() => { - this.onLoad(this.page); - this.$message({ - type: "success", - message: "鎿嶄綔鎴愬姛!" - }); - this.$refs.crud.toggleSelection(); - }); - }, - beforeOpen(done, type) { - if (["edit", "view"].includes(type)) { - getDetail(this.form.id).then(res => { - this.form = res.data.data; - }); - } - done(); - }, - searchReset() { - this.query = {}; - this.onLoad(this.page); - }, - searchChange(params, done) { - this.query = params; - this.onLoad(this.page, params); - done(); - }, - selectionChange(list) { - this.selectionList = list; - }, - selectionModelChange(list) { - this.selectionModelList = list; - }, - selectionClear() { - this.selectionList = []; - this.$refs.crud.toggleSelection(); - }, - currentChange(currentPage) { - this.page.currentPage = currentPage; - }, - sizeChange(pageSize) { - this.page.pageSize = pageSize; - }, - onLoad(page, params = {}) { - this.loading = true; - getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => { - const data = res.data.data; - this.page.total = data.total; - this.data = data.records; - this.loading = false; - this.selectionClear(); - }); - }, - handleModel(row) { - this.fields = []; - this.modelBox = true; - this.loading = true; - this.modelId = row.id; - this.datasourceId = row.datasourceId; - getModelPrototype(this.modelId, this.datasourceId).then(res => { - const result = res.data; - if (result.success) { - this.fields = result.data; - this.fields.forEach(item => { - item.$cellEdit = true; - item.modelId = this.modelId; - // 棣栨鍔犺浇閰嶇疆榛樿鍊� - if (validatenull(item.id)) { - item.isList = 1; - item.isForm = 1; - item.isRow = 0; - item.isRequired = 0; - item.isQuery = 0; - item.componentType = "input"; - } - if (!validatenull(item.name)) { - item.jdbcName = item.name; - item.jdbcType = item.propertyType; - // 鏍规嵁瀛楁鐗╃悊绫诲瀷鑷姩閫傞厤瀹炰綋绫诲瀷 - if (item.propertyType === "LocalDateTime") { - item.propertyType = "Date"; - item.propertyEntity = "java.util.Date"; - } else { - entityDic.forEach(d => { - if (d.label === item.propertyType) { - item.propertyType = d.label; - item.propertyEntity = d.value; - } - }); - } - } - }); - this.loading = false; - } - }); - }, - handleSubmit() { - console.log(this.fields); - this.$confirm("纭畾鎻愪氦妯″瀷閰嶇疆?", { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }).then(() => { - this.fields.forEach(item => { - entityDic.forEach(d => { - if (d.value === item.propertyEntity) { - item.propertyType = d.label; - } - }); - }); - submitModelPrototype(this.fields).then(res => { - const result = res.data; - if (result.success) { - this.$message.success(result.msg); - this.modelBox = false; - } else { - this.$message.error(result.msg); - } - }) - }); - - } - } -}; -</script> - -<style> -.none-border { - border: 0; - background-color: transparent !important; -} - -.step-div { - margin-top: 30px; -} -</style> -- Gitblit v1.9.3