vxe-table 3.22.8 → 3.22.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/grid/src/grid.js +251 -165
- package/es/index.css +1 -1
- package/es/index.min.css +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/module/custom/panel.js +3 -3
- package/es/table/module/export/mixin.js +56 -36
- package/es/table/render/index.js +12 -2
- package/es/table/src/methods.js +7 -0
- package/es/table/style.css +22 -12
- package/es/table/style.min.css +1 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/es/vxe-table/style.css +22 -12
- package/es/vxe-table/style.min.css +1 -1
- package/lib/grid/src/grid.js +319 -209
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.css +1 -1
- package/lib/index.min.css +1 -1
- package/lib/index.umd.js +442 -267
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/module/custom/panel.js +3 -3
- package/lib/table/module/custom/panel.min.js +1 -1
- package/lib/table/module/export/mixin.js +70 -43
- package/lib/table/module/export/mixin.min.js +1 -1
- package/lib/table/render/index.js +24 -2
- package/lib/table/render/index.min.js +1 -1
- package/lib/table/src/methods.js +3 -3
- package/lib/table/src/methods.min.js +1 -1
- package/lib/table/style/style.css +22 -12
- package/lib/table/style/style.min.css +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/vxe-table/style/style.css +22 -12
- package/lib/vxe-table/style/style.min.css +1 -1
- package/package.json +2 -2
- package/packages/grid/src/grid.ts +239 -157
- package/packages/table/module/custom/panel.ts +3 -3
- package/packages/table/module/export/mixin.ts +54 -33
- package/packages/table/render/index.ts +12 -2
- package/packages/table/src/methods.ts +7 -0
- package/styles/components/table.scss +24 -6
- package/styles/theme/base.scss +0 -1
- /package/es/{iconfont.1785140065609.ttf → iconfont.1785940479746.ttf} +0 -0
- /package/es/{iconfont.1785140065609.woff → iconfont.1785940479746.woff} +0 -0
- /package/es/{iconfont.1785140065609.woff2 → iconfont.1785940479746.woff2} +0 -0
- /package/lib/{iconfont.1785140065609.ttf → iconfont.1785940479746.ttf} +0 -0
- /package/lib/{iconfont.1785140065609.woff → iconfont.1785940479746.woff} +0 -0
- /package/lib/{iconfont.1785140065609.woff2 → iconfont.1785940479746.woff2} +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vxe-table",
|
|
3
|
-
"version": "3.22.
|
|
3
|
+
"version": "3.22.10",
|
|
4
4
|
"description": "A PC-end table component based on Vxe UI, supporting copy-paste, data pivot table, and high-performance virtual list table solution.",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"update": "npm install --legacy-peer-deps",
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
"vue-i18n": "^8.15.1",
|
|
66
66
|
"vue-router": "^3.5.1",
|
|
67
67
|
"vue-template-compiler": "2.6.14",
|
|
68
|
-
"vxe-pc-ui": "3.16.
|
|
68
|
+
"vxe-pc-ui": "3.16.27"
|
|
69
69
|
},
|
|
70
70
|
"vetur": {
|
|
71
71
|
"tags": "helper/vetur/tags.json",
|
|
@@ -656,7 +656,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
656
656
|
const proxyOpts = $xeGrid.computeProxyOpts
|
|
657
657
|
const pagerOpts = $xeGrid.computePagerOpts
|
|
658
658
|
const toolbarOpts = $xeGrid.computeToolbarOpts
|
|
659
|
-
const { beforeQuery, afterQuery, beforeQueryFooter, afterQueryFooter, beforeDelete, afterDelete, beforeSave, afterSave, ajax = {} } = proxyOpts
|
|
659
|
+
const { beforeQuery: oldBeforeQuery, afterQuery: oldAfterQuery, beforeQueryFooter: oldBeforeQueryFooter, afterQueryFooter: oldAfterQueryFooter, beforeDelete: oldBeforeDelete, afterDelete: oldAfterDelete, beforeSave: oldBeforeSave, afterSave: oldAfterSave, ajax = {} } = proxyOpts
|
|
660
660
|
const resConfigs = (proxyOpts.response || proxyOpts.props || {}) as VxeGridDefines.ProxyConfigResponseConfig
|
|
661
661
|
const $xeTable = $xeGrid.$refs.refTable as VxeTableConstructor & VxeTablePrivateMethods
|
|
662
662
|
let formData = $xeGrid.getFormData()
|
|
@@ -706,10 +706,12 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
706
706
|
case 'initial':
|
|
707
707
|
case 'reload':
|
|
708
708
|
case 'query': {
|
|
709
|
-
const
|
|
710
|
-
const
|
|
711
|
-
const
|
|
712
|
-
|
|
709
|
+
const bqMethod = ajax.beforeQuery
|
|
710
|
+
const qMethod = ajax.query
|
|
711
|
+
const aqMethod = ajax.afterQuery
|
|
712
|
+
const qsMethod = ajax.querySuccess
|
|
713
|
+
const qeMethod = ajax.queryError
|
|
714
|
+
if (qMethod) {
|
|
713
715
|
const isInited = code === 'initial'
|
|
714
716
|
const isReload = code === 'reload'
|
|
715
717
|
if (!isInited && reactData.tableLoading) {
|
|
@@ -787,119 +789,164 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
787
789
|
sorts: sortList,
|
|
788
790
|
filters: filterList,
|
|
789
791
|
form: formData,
|
|
790
|
-
options:
|
|
792
|
+
options: qMethod
|
|
791
793
|
}
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
Promise.
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
if (pagerConfig && isEnableConf(pagerOpts)) {
|
|
804
|
-
const totalProp = resConfigs.total
|
|
805
|
-
const total = (XEUtils.isFunction(totalProp) ? totalProp(reParams) : XEUtils.get(rest, totalProp || 'page.total')) || 0
|
|
806
|
-
tablePage.total = XEUtils.toNumber(total)
|
|
807
|
-
const resultProp = resConfigs.result
|
|
808
|
-
tableData = (XEUtils.isFunction(resultProp) ? resultProp(reParams) : XEUtils.get(rest, resultProp || 'result')) || []
|
|
809
|
-
// 检验当前页码,不能超出当前最大页数
|
|
810
|
-
const pageCount = Math.max(Math.ceil(total / tablePage.pageSize), 1)
|
|
811
|
-
if (tablePage.currentPage > pageCount) {
|
|
812
|
-
tablePage.currentPage = pageCount
|
|
813
|
-
}
|
|
794
|
+
const handleQuery = () => {
|
|
795
|
+
reactData.sortData = sortList
|
|
796
|
+
reactData.filterData = filterList
|
|
797
|
+
reactData.tableLoading = true
|
|
798
|
+
return Promise.all([
|
|
799
|
+
Promise.resolve((oldBeforeQuery || qMethod)(commitParams, ...args)),
|
|
800
|
+
operPromise
|
|
801
|
+
]).then(([rest]) => {
|
|
802
|
+
reactData.tableLoading = false
|
|
803
|
+
if (aqMethod) {
|
|
804
|
+
aqMethod({ ...commitParams, response: rest, status: 'success' }, ...args)
|
|
814
805
|
} else {
|
|
815
|
-
|
|
816
|
-
if (
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
806
|
+
let tableData: any[] = []
|
|
807
|
+
if (rest) {
|
|
808
|
+
const reParams = { data: rest, $table: $xeTable, $grid: $xeGrid as VxeGridConstructor, $gantt: null }
|
|
809
|
+
if (pagerConfig && isEnableConf(pagerOpts)) {
|
|
810
|
+
const totalProp = resConfigs.total
|
|
811
|
+
const total = (XEUtils.isFunction(totalProp) ? totalProp(reParams) : XEUtils.get(rest, totalProp || 'page.total')) || 0
|
|
812
|
+
tablePage.total = XEUtils.toNumber(total)
|
|
813
|
+
const resultProp = resConfigs.result
|
|
814
|
+
tableData = (XEUtils.isFunction(resultProp) ? resultProp(reParams) : XEUtils.get(rest, resultProp || 'result')) || []
|
|
815
|
+
// 检验当前页码,不能超出当前最大页数
|
|
816
|
+
const pageCount = Math.max(Math.ceil(total / tablePage.pageSize), 1)
|
|
817
|
+
if (tablePage.currentPage > pageCount) {
|
|
818
|
+
tablePage.currentPage = pageCount
|
|
819
|
+
}
|
|
820
|
+
} else {
|
|
821
|
+
const listProp = resConfigs.list
|
|
822
|
+
if (XEUtils.isArray(rest)) {
|
|
823
|
+
tableData = rest
|
|
824
|
+
} else if (listProp) {
|
|
825
|
+
tableData = (XEUtils.isFunction(listProp) ? listProp(reParams) : XEUtils.get(rest, listProp)) || []
|
|
826
|
+
}
|
|
827
|
+
}
|
|
828
|
+
if (showFooter) {
|
|
829
|
+
const fdProp = resConfigs.footerData
|
|
830
|
+
const footerList = fdProp ? (XEUtils.isFunction(fdProp) ? fdProp(reParams) : XEUtils.get(rest, fdProp)) : []
|
|
831
|
+
if (XEUtils.isArray(footerList)) {
|
|
832
|
+
reactData.footerData = footerList
|
|
833
|
+
}
|
|
834
|
+
}
|
|
827
835
|
}
|
|
828
|
-
}
|
|
829
|
-
}
|
|
830
|
-
if ($xeTable) {
|
|
831
|
-
$xeTable.loadData(tableData)
|
|
832
|
-
} else {
|
|
833
|
-
$xeGrid.$nextTick(() => {
|
|
834
|
-
const $xeTable = $xeGrid.$refs.refTable as VxeTableConstructor & VxeTablePrivateMethods
|
|
835
836
|
if ($xeTable) {
|
|
836
837
|
$xeTable.loadData(tableData)
|
|
838
|
+
} else {
|
|
839
|
+
$xeGrid.$nextTick(() => {
|
|
840
|
+
const $xeTable = $xeGrid.$refs.refTable as VxeTableConstructor & VxeTablePrivateMethods
|
|
841
|
+
if ($xeTable) {
|
|
842
|
+
$xeTable.loadData(tableData)
|
|
843
|
+
}
|
|
844
|
+
})
|
|
837
845
|
}
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
846
|
+
if (oldAfterQuery) {
|
|
847
|
+
oldAfterQuery({ ...commitParams, response: rest }, ...args)
|
|
848
|
+
}
|
|
849
|
+
}
|
|
850
|
+
if (qsMethod) {
|
|
851
|
+
qsMethod({ ...commitParams, response: rest })
|
|
852
|
+
}
|
|
853
|
+
return { status: true }
|
|
854
|
+
}).catch((rest) => {
|
|
855
|
+
reactData.tableLoading = false
|
|
856
|
+
if (aqMethod) {
|
|
857
|
+
aqMethod({ ...commitParams, response: rest, status: 'error' }, ...args)
|
|
858
|
+
}
|
|
859
|
+
if (qeMethod) {
|
|
860
|
+
qeMethod({ ...commitParams, response: rest })
|
|
861
|
+
}
|
|
862
|
+
return { status: false }
|
|
863
|
+
})
|
|
864
|
+
}
|
|
865
|
+
if (bqMethod) {
|
|
866
|
+
return Promise.resolve(bqMethod(commitParams, ...args)).then(status => {
|
|
867
|
+
if (status !== false) {
|
|
868
|
+
return handleQuery()
|
|
869
|
+
}
|
|
870
|
+
})
|
|
871
|
+
}
|
|
872
|
+
return handleQuery()
|
|
854
873
|
} else {
|
|
855
874
|
errLog('vxe.error.notFunc', ['proxy-config.ajax.query'])
|
|
856
875
|
}
|
|
857
876
|
break
|
|
858
877
|
}
|
|
859
878
|
case 'queryFooter': {
|
|
860
|
-
const
|
|
861
|
-
const
|
|
862
|
-
const
|
|
863
|
-
|
|
879
|
+
const bqfMethod = ajax.beforeQueryFooter
|
|
880
|
+
const qfMethod = ajax.queryFooter
|
|
881
|
+
const aqfMethod = ajax.afterQueryFooter
|
|
882
|
+
const qfSuccessMethod = ajax.queryFooterSuccess
|
|
883
|
+
const qfErrorMethod = ajax.queryFooterError
|
|
884
|
+
if (qfMethod) {
|
|
864
885
|
let filterList: VxeTableDefines.FilterCheckedParams[] = []
|
|
865
886
|
if ($xeTable) {
|
|
866
887
|
filterList = $xeTable.getCheckedFilters()
|
|
867
888
|
}
|
|
889
|
+
let pageParams: any = {}
|
|
890
|
+
if (pagerConfig) {
|
|
891
|
+
if (isEnableConf(pagerConfig)) {
|
|
892
|
+
pageParams = { ...tablePage }
|
|
893
|
+
}
|
|
894
|
+
}
|
|
868
895
|
const commitParams = {
|
|
869
896
|
$table: $xeTable,
|
|
870
897
|
$grid: $xeGrid,
|
|
871
898
|
$gantt: null,
|
|
872
899
|
code,
|
|
873
900
|
button,
|
|
901
|
+
page: pageParams,
|
|
874
902
|
filters: filterList,
|
|
875
903
|
form: formData,
|
|
876
|
-
options:
|
|
904
|
+
options: qfMethod
|
|
877
905
|
}
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
906
|
+
const handleQueryFooter = () => {
|
|
907
|
+
return Promise.resolve((oldBeforeQueryFooter || qfMethod)(commitParams, ...args)).then(rest => {
|
|
908
|
+
if (aqfMethod) {
|
|
909
|
+
aqfMethod({ ...commitParams, response: rest, status: 'success' }, ...args)
|
|
910
|
+
} else {
|
|
911
|
+
reactData.footerData = XEUtils.isArray(rest) ? rest : []
|
|
912
|
+
if (oldAfterQueryFooter) {
|
|
913
|
+
oldAfterQueryFooter({ ...commitParams, response: rest }, ...args)
|
|
914
|
+
}
|
|
915
|
+
}
|
|
916
|
+
if (qfSuccessMethod) {
|
|
917
|
+
qfSuccessMethod({ ...commitParams, response: rest })
|
|
918
|
+
}
|
|
919
|
+
return { status: true }
|
|
920
|
+
}).catch((rest) => {
|
|
921
|
+
if (aqfMethod) {
|
|
922
|
+
aqfMethod({ ...commitParams, response: rest, status: 'error' }, ...args)
|
|
923
|
+
}
|
|
924
|
+
if (qfErrorMethod) {
|
|
925
|
+
qfErrorMethod({ ...commitParams, response: rest })
|
|
926
|
+
}
|
|
927
|
+
return { status: false }
|
|
928
|
+
})
|
|
929
|
+
}
|
|
930
|
+
if (bqfMethod) {
|
|
931
|
+
return Promise.resolve(bqfMethod(commitParams, ...args)).then(status => {
|
|
932
|
+
if (status !== false) {
|
|
933
|
+
return handleQueryFooter()
|
|
934
|
+
}
|
|
935
|
+
})
|
|
936
|
+
}
|
|
937
|
+
return handleQueryFooter()
|
|
893
938
|
} else {
|
|
894
939
|
errLog('vxe.error.notFunc', ['proxy-config.ajax.queryFooter'])
|
|
895
940
|
}
|
|
896
941
|
break
|
|
897
942
|
}
|
|
898
943
|
case 'delete': {
|
|
899
|
-
const
|
|
900
|
-
const
|
|
901
|
-
const
|
|
902
|
-
|
|
944
|
+
const bdMethod = ajax.beforeDelete
|
|
945
|
+
const dMethod = ajax.delete
|
|
946
|
+
const adMethod = ajax.afterDelete
|
|
947
|
+
const deleteSuccessMethod = ajax.deleteSuccess
|
|
948
|
+
const deleteErrorMethod = ajax.deleteError
|
|
949
|
+
if (dMethod) {
|
|
903
950
|
const selectRecords = $xeTable.getCheckboxRecords()
|
|
904
951
|
const removeRecords = selectRecords.filter((row) => !$xeTable.isInsertByRow(row))
|
|
905
952
|
const body = { removeRecords }
|
|
@@ -911,49 +958,67 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
911
958
|
button,
|
|
912
959
|
body,
|
|
913
960
|
form: formData,
|
|
914
|
-
options:
|
|
961
|
+
options: dMethod
|
|
915
962
|
}
|
|
916
|
-
const applyArgs = [commitParams].concat(args)
|
|
917
963
|
if (selectRecords.length) {
|
|
918
964
|
return $xeGrid.handleDeleteRow(code, 'vxe.grid.deleteSelectRecord', () => {
|
|
919
965
|
if (!removeRecords.length) {
|
|
920
966
|
return $xeTable.remove(selectRecords)
|
|
921
967
|
}
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
.
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
968
|
+
const handleDelete = () => {
|
|
969
|
+
reactData.tableLoading = true
|
|
970
|
+
return Promise.resolve((oldBeforeDelete || dMethod)(commitParams, ...args))
|
|
971
|
+
.then(rest => {
|
|
972
|
+
reactData.tableLoading = false
|
|
973
|
+
if (adMethod) {
|
|
974
|
+
adMethod({ ...commitParams, response: rest, status: 'success' }, ...args)
|
|
975
|
+
} else {
|
|
976
|
+
$xeTable.setPendingRow(removeRecords, false)
|
|
977
|
+
if (isRespMsg) {
|
|
978
|
+
if (VxeUI.modal) {
|
|
979
|
+
VxeUI.modal.message({ content: $xeGrid.getRespMsg(rest, 'vxe.grid.delSuccess'), status: 'success' })
|
|
980
|
+
}
|
|
981
|
+
}
|
|
982
|
+
if (oldAfterDelete) {
|
|
983
|
+
oldAfterDelete({ ...commitParams, response: rest }, ...args)
|
|
984
|
+
} else {
|
|
985
|
+
internalData.uFoot = true
|
|
986
|
+
$xeGrid.commitProxy('query')
|
|
987
|
+
internalData.uFoot = false
|
|
988
|
+
$xeGrid.updateQueryFooter()
|
|
989
|
+
}
|
|
930
990
|
}
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
afterDelete(...applyArgs)
|
|
934
|
-
} else {
|
|
935
|
-
internalData.uFoot = true
|
|
936
|
-
$xeGrid.commitProxy('query')
|
|
937
|
-
internalData.uFoot = false
|
|
938
|
-
$xeGrid.updateQueryFooter()
|
|
939
|
-
}
|
|
940
|
-
if (deleteSuccessMethods) {
|
|
941
|
-
deleteSuccessMethods({ ...commitParams, response: rest })
|
|
942
|
-
}
|
|
943
|
-
return { status: true }
|
|
944
|
-
})
|
|
945
|
-
.catch(rest => {
|
|
946
|
-
reactData.tableLoading = false
|
|
947
|
-
if (isRespMsg) {
|
|
948
|
-
if (VxeUI.modal) {
|
|
949
|
-
VxeUI.modal.message({ id: code, content: $xeGrid.getRespMsg(rest, 'vxe.grid.operError'), status: 'error' })
|
|
991
|
+
if (deleteSuccessMethod) {
|
|
992
|
+
deleteSuccessMethod({ ...commitParams, response: rest })
|
|
950
993
|
}
|
|
994
|
+
return { status: true }
|
|
995
|
+
})
|
|
996
|
+
.catch(rest => {
|
|
997
|
+
reactData.tableLoading = false
|
|
998
|
+
if (adMethod) {
|
|
999
|
+
adMethod({ ...commitParams, response: rest, status: 'error' }, ...args)
|
|
1000
|
+
} else {
|
|
1001
|
+
if (isRespMsg) {
|
|
1002
|
+
if (VxeUI.modal) {
|
|
1003
|
+
VxeUI.modal.message({ id: code, content: $xeGrid.getRespMsg(rest, 'vxe.grid.operError'), status: 'error' })
|
|
1004
|
+
}
|
|
1005
|
+
}
|
|
1006
|
+
}
|
|
1007
|
+
if (deleteErrorMethod) {
|
|
1008
|
+
deleteErrorMethod({ ...commitParams, response: rest })
|
|
1009
|
+
}
|
|
1010
|
+
return { status: false }
|
|
1011
|
+
})
|
|
1012
|
+
}
|
|
1013
|
+
|
|
1014
|
+
if (bdMethod) {
|
|
1015
|
+
return Promise.resolve(bdMethod(commitParams, ...args)).then(status => {
|
|
1016
|
+
if (status !== false) {
|
|
1017
|
+
return handleDelete()
|
|
951
1018
|
}
|
|
952
|
-
if (deleteErrorMethods) {
|
|
953
|
-
deleteErrorMethods({ ...commitParams, response: rest })
|
|
954
|
-
}
|
|
955
|
-
return { status: false }
|
|
956
1019
|
})
|
|
1020
|
+
}
|
|
1021
|
+
return handleDelete()
|
|
957
1022
|
})
|
|
958
1023
|
} else {
|
|
959
1024
|
if (isActiveMsg) {
|
|
@@ -968,10 +1033,12 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
968
1033
|
break
|
|
969
1034
|
}
|
|
970
1035
|
case 'save': {
|
|
971
|
-
const
|
|
972
|
-
const
|
|
973
|
-
const
|
|
974
|
-
|
|
1036
|
+
const bSaveMethod = ajax.beforeSave
|
|
1037
|
+
const sMethod = ajax.save
|
|
1038
|
+
const aSaveMethod = ajax.afterSave
|
|
1039
|
+
const sSuccessMethod = ajax.saveSuccess
|
|
1040
|
+
const sErrorMethod = ajax.saveError
|
|
1041
|
+
if (sMethod) {
|
|
975
1042
|
const body = $xeGrid.getRecordset()
|
|
976
1043
|
const { insertRecords, removeRecords, updateRecords, pendingRecords } = body
|
|
977
1044
|
const commitParams = {
|
|
@@ -982,9 +1049,8 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
982
1049
|
button,
|
|
983
1050
|
body,
|
|
984
1051
|
form: formData,
|
|
985
|
-
options:
|
|
1052
|
+
options: sMethod
|
|
986
1053
|
}
|
|
987
|
-
const applyArgs = [commitParams].concat(args)
|
|
988
1054
|
// 排除掉新增且标记为删除的数据
|
|
989
1055
|
if (insertRecords.length) {
|
|
990
1056
|
body.pendingRecords = pendingRecords.filter((row) => insertRecords.indexOf(row) === -1)
|
|
@@ -1004,41 +1070,57 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
1004
1070
|
return
|
|
1005
1071
|
}
|
|
1006
1072
|
if (body.insertRecords.length || removeRecords.length || updateRecords.length || body.pendingRecords.length) {
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
.
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1073
|
+
const handleSave = () => {
|
|
1074
|
+
reactData.tableLoading = true
|
|
1075
|
+
return Promise.resolve((oldBeforeSave || sMethod)(commitParams, ...args))
|
|
1076
|
+
.then(rest => {
|
|
1077
|
+
reactData.tableLoading = false
|
|
1078
|
+
if (aSaveMethod) {
|
|
1079
|
+
$xeTable.clearPendingRow()
|
|
1080
|
+
if (isRespMsg) {
|
|
1081
|
+
if (VxeUI.modal) {
|
|
1082
|
+
VxeUI.modal.message({ content: $xeGrid.getRespMsg(rest, 'vxe.grid.saveSuccess'), status: 'success' })
|
|
1083
|
+
}
|
|
1084
|
+
}
|
|
1085
|
+
if (oldAfterSave) {
|
|
1086
|
+
oldAfterSave({ ...commitParams, response: rest }, ...args)
|
|
1087
|
+
} else {
|
|
1088
|
+
internalData.uFoot = true
|
|
1089
|
+
$xeGrid.commitProxy('query')
|
|
1090
|
+
internalData.uFoot = false
|
|
1091
|
+
$xeGrid.updateQueryFooter()
|
|
1092
|
+
}
|
|
1015
1093
|
}
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
afterSave(...applyArgs)
|
|
1019
|
-
} else {
|
|
1020
|
-
internalData.uFoot = true
|
|
1021
|
-
$xeGrid.commitProxy('query')
|
|
1022
|
-
internalData.uFoot = false
|
|
1023
|
-
$xeGrid.updateQueryFooter()
|
|
1024
|
-
}
|
|
1025
|
-
if (saveSuccessMethods) {
|
|
1026
|
-
saveSuccessMethods({ ...commitParams, response: rest })
|
|
1027
|
-
}
|
|
1028
|
-
return { status: true }
|
|
1029
|
-
})
|
|
1030
|
-
.catch(rest => {
|
|
1031
|
-
reactData.tableLoading = false
|
|
1032
|
-
if (isRespMsg) {
|
|
1033
|
-
if (VxeUI.modal) {
|
|
1034
|
-
VxeUI.modal.message({ id: code, content: $xeGrid.getRespMsg(rest, 'vxe.grid.operError'), status: 'error' })
|
|
1094
|
+
if (sSuccessMethod) {
|
|
1095
|
+
sSuccessMethod({ ...commitParams, response: rest })
|
|
1035
1096
|
}
|
|
1097
|
+
return { status: true }
|
|
1098
|
+
})
|
|
1099
|
+
.catch(rest => {
|
|
1100
|
+
reactData.tableLoading = false
|
|
1101
|
+
if (aSaveMethod) {
|
|
1102
|
+
aSaveMethod({ ...commitParams, response: rest, status: 'error' }, ...args)
|
|
1103
|
+
} else {
|
|
1104
|
+
if (isRespMsg) {
|
|
1105
|
+
if (VxeUI.modal) {
|
|
1106
|
+
VxeUI.modal.message({ id: code, content: $xeGrid.getRespMsg(rest, 'vxe.grid.operError'), status: 'error' })
|
|
1107
|
+
}
|
|
1108
|
+
}
|
|
1109
|
+
}
|
|
1110
|
+
if (sErrorMethod) {
|
|
1111
|
+
sErrorMethod({ ...commitParams, response: rest })
|
|
1112
|
+
}
|
|
1113
|
+
return { status: false }
|
|
1114
|
+
})
|
|
1115
|
+
}
|
|
1116
|
+
if (bSaveMethod) {
|
|
1117
|
+
return Promise.resolve(bSaveMethod(commitParams, ...args)).then(status => {
|
|
1118
|
+
if (status !== false) {
|
|
1119
|
+
return handleSave()
|
|
1036
1120
|
}
|
|
1037
|
-
if (saveErrorMethods) {
|
|
1038
|
-
saveErrorMethods({ ...commitParams, response: rest })
|
|
1039
|
-
}
|
|
1040
|
-
return { status: false }
|
|
1041
1121
|
})
|
|
1122
|
+
}
|
|
1123
|
+
return handleSave()
|
|
1042
1124
|
} else {
|
|
1043
1125
|
if (isActiveMsg) {
|
|
1044
1126
|
if (VxeUI.modal) {
|
|
@@ -1513,7 +1513,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
1513
1513
|
? [
|
|
1514
1514
|
h(VxeUIRadioGroupComponent, {
|
|
1515
1515
|
props: {
|
|
1516
|
-
value: column.renderAlign || '',
|
|
1516
|
+
value: column.renderAlign || 'left',
|
|
1517
1517
|
type: 'button',
|
|
1518
1518
|
strict: false,
|
|
1519
1519
|
disabled: isHidden,
|
|
@@ -1542,7 +1542,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
1542
1542
|
? [
|
|
1543
1543
|
h(VxeUIRadioGroupComponent, {
|
|
1544
1544
|
props: {
|
|
1545
|
-
value: column.renderHeaderAlign || '',
|
|
1545
|
+
value: column.renderHeaderAlign || 'left',
|
|
1546
1546
|
type: 'button',
|
|
1547
1547
|
strict: false,
|
|
1548
1548
|
disabled: isHidden,
|
|
@@ -1571,7 +1571,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
1571
1571
|
? [
|
|
1572
1572
|
h(VxeUIRadioGroupComponent, {
|
|
1573
1573
|
props: {
|
|
1574
|
-
value: column.renderFooterAlign || '',
|
|
1574
|
+
value: column.renderFooterAlign || 'left',
|
|
1575
1575
|
type: 'button',
|
|
1576
1576
|
strict: false,
|
|
1577
1577
|
disabled: isHidden,
|