给单据列表增加左右拖拽的功能
This commit is contained in:
@@ -16,18 +16,18 @@
|
|||||||
"codemirror": "^5.46.0",
|
"codemirror": "^5.46.0",
|
||||||
"dayjs": "^1.8.0",
|
"dayjs": "^1.8.0",
|
||||||
"enquire.js": "^2.1.6",
|
"enquire.js": "^2.1.6",
|
||||||
|
"intro.js": "^4.2.2",
|
||||||
|
"jquery": "^1.12.4",
|
||||||
"js-cookie": "^2.2.0",
|
"js-cookie": "^2.2.0",
|
||||||
"lodash.get": "^4.4.2",
|
"lodash.get": "^4.4.2",
|
||||||
"lodash.pick": "^4.4.0",
|
"lodash.pick": "^4.4.0",
|
||||||
"md5": "^2.2.1",
|
"md5": "^2.2.1",
|
||||||
"nprogress": "^0.2.0",
|
"nprogress": "^0.2.0",
|
||||||
"xlsx": "^0.14.3",
|
|
||||||
"intro.js": "^4.2.2",
|
|
||||||
"jquery": "^1.12.4",
|
|
||||||
"viser-vue": "^2.4.4",
|
"viser-vue": "^2.4.4",
|
||||||
"vue": "^2.6.10",
|
"vue": "^2.6.10",
|
||||||
"vue-area-linkage": "^5.1.0",
|
"vue-area-linkage": "^5.1.0",
|
||||||
"vue-cropper": "^0.4.8",
|
"vue-cropper": "^0.4.8",
|
||||||
|
"vue-draggable-resizable": "^2.3.0",
|
||||||
"vue-i18n": "^8.7.0",
|
"vue-i18n": "^8.7.0",
|
||||||
"vue-loader": "^15.7.0",
|
"vue-loader": "^15.7.0",
|
||||||
"vue-ls": "^3.2.0",
|
"vue-ls": "^3.2.0",
|
||||||
@@ -36,7 +36,8 @@
|
|||||||
"vue-router": "^3.0.1",
|
"vue-router": "^3.0.1",
|
||||||
"vue-splitpane": "^1.0.4",
|
"vue-splitpane": "^1.0.4",
|
||||||
"vuedraggable": "^2.20.0",
|
"vuedraggable": "^2.20.0",
|
||||||
"vuex": "^3.1.0"
|
"vuex": "^3.1.0",
|
||||||
|
"xlsx": "^0.14.3"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@babel/polyfill": "^7.2.5",
|
"@babel/polyfill": "^7.2.5",
|
||||||
@@ -90,7 +91,10 @@
|
|||||||
"vue/no-parsing-error": 0,
|
"vue/no-parsing-error": 0,
|
||||||
"no-console": 0,
|
"no-console": 0,
|
||||||
"no-tabs": 0,
|
"no-tabs": 0,
|
||||||
"indent": [1, 4]
|
"indent": [
|
||||||
|
1,
|
||||||
|
4
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"postcss": {
|
"postcss": {
|
||||||
|
|||||||
@@ -67,3 +67,19 @@
|
|||||||
.ant-modal-mask {
|
.ant-modal-mask {
|
||||||
background-color: rgba(0, 0, 0, 0.1) !important;
|
background-color: rgba(0, 0, 0, 0.1) !important;
|
||||||
}
|
}
|
||||||
|
/* 拖拽 */
|
||||||
|
.table-draggable-handle {
|
||||||
|
/* width: 10px !important; */
|
||||||
|
height: 100% !important;
|
||||||
|
left: auto !important;
|
||||||
|
right: -5px;
|
||||||
|
cursor: col-resize;
|
||||||
|
touch-action: none;
|
||||||
|
border: none;
|
||||||
|
position: absolute;
|
||||||
|
transform: none !important;
|
||||||
|
bottom: 0;
|
||||||
|
}
|
||||||
|
.resize-table-th {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
@@ -6,11 +6,15 @@
|
|||||||
import { filterObj,getNowFormatStr } from '@/utils/util';
|
import { filterObj,getNowFormatStr } from '@/utils/util';
|
||||||
import { deleteAction, getAction, postAction, downFile, getFileAccessHttpUrl } from '@/api/manage'
|
import { deleteAction, getAction, postAction, downFile, getFileAccessHttpUrl } from '@/api/manage'
|
||||||
import Vue from 'vue'
|
import Vue from 'vue'
|
||||||
|
import VueDraggableResizable from 'vue-draggable-resizable'
|
||||||
import { ACCESS_TOKEN } from "@/store/mutation-types"
|
import { ACCESS_TOKEN } from "@/store/mutation-types"
|
||||||
import {mixinDevice} from '@/utils/mixin.js'
|
import {mixinDevice} from '@/utils/mixin.js'
|
||||||
|
|
||||||
export const JeecgListMixin = {
|
export const JeecgListMixin = {
|
||||||
mixins: [mixinDevice],
|
mixins: [mixinDevice],
|
||||||
|
components: {
|
||||||
|
VueDraggableResizable
|
||||||
|
},
|
||||||
data(){
|
data(){
|
||||||
return {
|
return {
|
||||||
//token header
|
//token header
|
||||||
@@ -393,6 +397,44 @@ export const JeecgListMixin = {
|
|||||||
this.scroll.y = document.documentElement.clientHeight-searchWrapperDomLen-operatorDomLen-basicLength
|
this.scroll.y = document.documentElement.clientHeight-searchWrapperDomLen-operatorDomLen-basicLength
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
//拖拽组件
|
||||||
|
handleDrag(column){
|
||||||
|
return {
|
||||||
|
header: {
|
||||||
|
cell: (h, props, children) => {
|
||||||
|
const { key, ...restProps } = props
|
||||||
|
const col = column.find((col) => {
|
||||||
|
const k = col.dataIndex || col.key
|
||||||
|
return k === key
|
||||||
|
})
|
||||||
|
|
||||||
|
if (!col || !col.width) {
|
||||||
|
return h('th', { ...restProps }, [...children])
|
||||||
|
}
|
||||||
|
|
||||||
|
const dragProps = {
|
||||||
|
key: col.dataIndex || col.key,
|
||||||
|
class: 'table-draggable-handle',
|
||||||
|
attrs: {
|
||||||
|
w: 10,
|
||||||
|
x: col.width,
|
||||||
|
z: 1,
|
||||||
|
axis: 'x',
|
||||||
|
draggable: true,
|
||||||
|
resizable: false,
|
||||||
|
},
|
||||||
|
on: {
|
||||||
|
dragging: (x, y) => {
|
||||||
|
col.width = Math.max(x, 1)
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
const drag = h(VueDraggableResizable, { ...dragProps })
|
||||||
|
return h('th', { ...restProps, class: 'resize-table-th' }, [...children, drag])
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
/** 表格增加合计行 */
|
/** 表格增加合计行 */
|
||||||
tableAddTotalRow(columns, dataSource) {
|
tableAddTotalRow(columns, dataSource) {
|
||||||
if(dataSource.length>0 && this.ipagination.pageSize%10===1) {
|
if(dataSource.length>0 && this.ipagination.pageSize%10===1) {
|
||||||
|
|||||||
@@ -101,6 +101,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -101,6 +101,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -101,6 +101,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -115,6 +115,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -115,6 +115,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -124,6 +124,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -134,6 +134,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -104,6 +104,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -124,6 +124,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -119,6 +119,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -125,6 +125,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -105,6 +105,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -135,6 +135,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -106,6 +106,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -106,6 +106,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -115,6 +115,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -115,6 +115,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -121,6 +121,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -121,6 +121,7 @@
|
|||||||
rowKey="id"
|
rowKey="id"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
:dataSource="dataSource"
|
:dataSource="dataSource"
|
||||||
|
:components="handleDrag(columns)"
|
||||||
:pagination="ipagination"
|
:pagination="ipagination"
|
||||||
:scroll="scroll"
|
:scroll="scroll"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
|
|||||||
@@ -11163,6 +11163,11 @@ vue-cropper@^0.4.8:
|
|||||||
resolved "https://registry.npmjs.org/vue-cropper/-/vue-cropper-0.4.9.tgz#fe650f32516ecf29014bbd4a9079191c8dc5a5ae"
|
resolved "https://registry.npmjs.org/vue-cropper/-/vue-cropper-0.4.9.tgz#fe650f32516ecf29014bbd4a9079191c8dc5a5ae"
|
||||||
integrity sha512-Uf1i/sCh+ZqSM9hb2YTGRENzJFH+mvDuv8N2brGLjK7UBuF7XDP7zbis8g/dcqZiMojAcBDtObFCn4ERFbRMxQ==
|
integrity sha512-Uf1i/sCh+ZqSM9hb2YTGRENzJFH+mvDuv8N2brGLjK7UBuF7XDP7zbis8g/dcqZiMojAcBDtObFCn4ERFbRMxQ==
|
||||||
|
|
||||||
|
vue-draggable-resizable@^2.3.0:
|
||||||
|
version "2.3.0"
|
||||||
|
resolved "https://registry.npmmirror.com/vue-draggable-resizable/-/vue-draggable-resizable-2.3.0.tgz#94c433ca748bc1a4d0959ba1c5c0e1c3536cee5b"
|
||||||
|
integrity sha512-77CLRj1TPwB30pwsjOf3pkd1UzYanCdKXbqhILJ0Oo5QQl50lvBfyQCXxMFzwWwTc3sbBbQH3FfWSV+BkoSElA==
|
||||||
|
|
||||||
vue-eslint-parser@^2.0.3:
|
vue-eslint-parser@^2.0.3:
|
||||||
version "2.0.3"
|
version "2.0.3"
|
||||||
resolved "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-2.0.3.tgz#c268c96c6d94cfe3d938a5f7593959b0ca3360d1"
|
resolved "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-2.0.3.tgz#c268c96c6d94cfe3d938a5f7593959b0ca3360d1"
|
||||||
|
|||||||
Reference in New Issue
Block a user