From ed04c24eb35a16c122e4c32b2cc703b5c385760f Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: 星期三, 01 四月 2020 09:52:49 +0800
Subject: [PATCH] 代码生成列支持拖动排序
---
ruoyi-ui/package.json | 1 +
ruoyi-ui/src/views/tool/gen/editTable.vue | 15 ++++++++++++++-
ruoyi-ui/src/assets/styles/ruoyi.scss | 7 +++++++
3 files changed, 22 insertions(+), 1 deletions(-)
diff --git a/ruoyi-ui/package.json b/ruoyi-ui/package.json
index 923126c..62c2bdd 100644
--- a/ruoyi-ui/package.json
+++ b/ruoyi-ui/package.json
@@ -54,6 +54,7 @@
"nprogress": "0.2.0",
"path-to-regexp": "2.4.0",
"screenfull": "4.2.0",
+ "sortablejs": "1.8.4",
"vue": "2.6.10",
"vue-count-to": "1.0.13",
"vue-quill-editor": "3.0.6",
diff --git a/ruoyi-ui/src/assets/styles/ruoyi.scss b/ruoyi-ui/src/assets/styles/ruoyi.scss
index 77307e5..42d90a6 100644
--- a/ruoyi-ui/src/assets/styles/ruoyi.scss
+++ b/ruoyi-ui/src/assets/styles/ruoyi.scss
@@ -187,4 +187,11 @@
border-radius: 50%;
box-shadow: 0 0 4px #ccc;
overflow: hidden;
+}
+
+/* 鎷栨嫿鍒楁牱寮� */
+.sortable-ghost{
+ opacity: .8;
+ color: #fff!important;
+ background: #42b983!important;
}
\ No newline at end of file
diff --git a/ruoyi-ui/src/views/tool/gen/editTable.vue b/ruoyi-ui/src/views/tool/gen/editTable.vue
index cf76a27..6f95081 100644
--- a/ruoyi-ui/src/views/tool/gen/editTable.vue
+++ b/ruoyi-ui/src/views/tool/gen/editTable.vue
@@ -5,7 +5,7 @@
<basic-info-form ref="basicInfo" :info="info" />
</el-tab-pane>
<el-tab-pane label="瀛楁淇℃伅" name="cloum">
- <el-table :data="cloumns" :max-height="tableHeight">
+ <el-table ref="dragTable" :data="cloumns" row-key="columnId" :max-height="tableHeight">
<el-table-column label="搴忓彿" type="index" min-width="5%" />
<el-table-column
label="瀛楁鍒楀悕"
@@ -126,6 +126,7 @@
import { optionselect as getDictOptionselect } from "@/api/system/dict/type";
import basicInfoForm from "./basicInfoForm";
import genInfoForm from "./genInfoForm";
+import Sortable from 'sortablejs'
export default {
name: "GenEdit",
components: {
@@ -198,6 +199,18 @@
this.$store.dispatch("tagsView/delView", this.$route);
this.$router.push({ path: "/tool/gen", query: { t: Date.now()}})
}
+ },
+ mounted() {
+ const el = this.$refs.dragTable.$el.querySelectorAll(".el-table__body-wrapper > table > tbody")[0];
+ const sortable = Sortable.create(el, {
+ onEnd: evt => {
+ const targetRow = this.cloumns.splice(evt.oldIndex, 1)[0];
+ this.cloumns.splice(evt.newIndex, 0, targetRow);
+ for (let index in this.cloumns) {
+ this.cloumns[index].sort = parseInt(index) + 1;
+ }
+ }
+ });
}
};
</script>
--
Gitblit v1.9.3