doway-coms 1.6.72 → 1.6.74

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.
Files changed (75) hide show
  1. package/.browserslistrc +2 -2
  2. package/README.md +28 -28
  3. package/dist/css/chunk-vendors.7f83d8f9.css +8 -0
  4. package/dist/css/index.86478f73.css +3 -0
  5. package/dist/favicon.ico +0 -0
  6. package/dist/js/chunk-vendors.307eaa8f.js +347 -0
  7. package/dist/js/index.48e7f7ac.js +2 -0
  8. package/package.json +53 -52
  9. package/packages/BaseButton/index.js +7 -7
  10. package/packages/BaseButton/src/index.vue +241 -241
  11. package/packages/BaseCheckbox/index.js +7 -7
  12. package/packages/BaseCheckbox/src/index.vue +134 -134
  13. package/packages/BaseDate/index.js +7 -7
  14. package/packages/BaseDate/src/index.vue +197 -197
  15. package/packages/BaseDateWeek/index.js +7 -7
  16. package/packages/BaseDateWeek/src/index.vue +163 -163
  17. package/packages/BaseDatetime/index.js +7 -7
  18. package/packages/BaseDatetime/src/index.vue +196 -196
  19. package/packages/BaseForm/index.js +7 -7
  20. package/packages/BaseForm/src/index.vue +688 -688
  21. package/packages/BaseGantt/index.js +9 -9
  22. package/packages/BaseGantt/src/index.vue +608 -608
  23. package/packages/BaseGrid/index.js +9 -9
  24. package/packages/BaseGrid/src/SeqSetting.vue +273 -0
  25. package/packages/BaseGrid/src/index.vue +3117 -2740
  26. package/packages/BaseGridAdjust/index.js +9 -9
  27. package/packages/BaseGridAdjust/src/index.vue +482 -482
  28. package/packages/BaseInput/index.js +7 -7
  29. package/packages/BaseInput/src/index.vue +164 -164
  30. package/packages/BaseIntervalInput/index.js +7 -7
  31. package/packages/BaseIntervalInput/src/index.vue +310 -310
  32. package/packages/BaseKanbanEmpty/index.js +7 -7
  33. package/packages/BaseKanbanEmpty/src/index.vue +176 -176
  34. package/packages/BaseNumberInput/index.js +7 -7
  35. package/packages/BaseNumberInput/src/index.vue +229 -229
  36. package/packages/BasePagination/index.js +7 -7
  37. package/packages/BasePagination/src/index.vue +91 -91
  38. package/packages/BasePictureCard/index.js +7 -7
  39. package/packages/BasePictureCard/src/index.vue +580 -580
  40. package/packages/BasePrintPreview/index.js +7 -7
  41. package/packages/BasePrintPreview/src/index.vue +117 -117
  42. package/packages/BasePulldown/index.js +7 -7
  43. package/packages/BasePulldown/src/index.vue +1136 -1138
  44. package/packages/BaseSearch/index.js +7 -7
  45. package/packages/BaseSearch/src/index.vue +935 -935
  46. package/packages/BaseSelect/index.js +7 -7
  47. package/packages/BaseSelect/src/index.vue +155 -155
  48. package/packages/BaseSelectMulti/index.js +7 -7
  49. package/packages/BaseSelectMulti/src/index.vue +148 -148
  50. package/packages/BaseTextArea/index.js +7 -7
  51. package/packages/BaseTextArea/src/index.vue +178 -178
  52. package/packages/BaseTime/index.js +7 -7
  53. package/packages/BaseTime/src/index.vue +166 -166
  54. package/packages/BaseTool/index.js +7 -7
  55. package/packages/BaseTool/src/index.vue +349 -349
  56. package/packages/BaseToolStatus/index.js +7 -7
  57. package/packages/BaseToolStatus/src/index.vue +388 -388
  58. package/packages/LeaveAMessage/index.js +7 -7
  59. package/packages/LeaveAMessage/src/index.vue +574 -574
  60. package/packages/index.js +167 -167
  61. package/packages/styles/default.less +80 -80
  62. package/packages/styles/icon/drag.svg +1 -0
  63. package/packages/styles/icon/seqConfig.svg +1 -0
  64. package/packages/utils/api.js +88 -88
  65. package/packages/utils/auth.js +38 -38
  66. package/packages/utils/common.js +595 -595
  67. package/packages/utils/dom.js +181 -181
  68. package/packages/utils/enum.js +84 -84
  69. package/packages/utils/filters.js +458 -458
  70. package/packages/utils/gridFormat.js +60 -60
  71. package/packages/utils/msg.js +16 -16
  72. package/packages/utils/patchFiles.js +44 -44
  73. package/packages/utils/request.js +169 -169
  74. package/packages/utils/store.js +261 -261
  75. package/vue.config.js +59 -59
@@ -1,10 +1,10 @@
1
- // 导入组件,组件必须声明 name
2
- import BaseGrid from './src/index.vue';
3
- import VXETable from 'vxe-table'
4
- // 为组件提供 install 安装方法,供按需引入
5
- BaseGrid.install = function(Vue) {
6
- Vue.use(VXETable)
7
- Vue.component(BaseGrid.name, BaseGrid);
8
- };
9
- // 默认导出组件
1
+ // 导入组件,组件必须声明 name
2
+ import BaseGrid from './src/index.vue';
3
+ import VXETable from 'vxe-table'
4
+ // 为组件提供 install 安装方法,供按需引入
5
+ BaseGrid.install = function(Vue) {
6
+ Vue.use(VXETable)
7
+ Vue.component(BaseGrid.name, BaseGrid);
8
+ };
9
+ // 默认导出组件
10
10
  export default BaseGrid;
@@ -0,0 +1,273 @@
1
+ <template>
2
+ <div class="content-card">
3
+ <!-- 查询框 -->
4
+ <div style="margin: 10px 10px 10px 0px">
5
+ <a-input
6
+ ref="searchInput"
7
+ v-model="searchField"
8
+ placeholder="搜索添加更多字段"
9
+ ><a-icon slot="prefix" type="search" />
10
+ </a-input>
11
+ </div>
12
+ <div :style="{ height: height-160+'px', overflow:'auto' }" class="field-content">
13
+ <div class="field-card">
14
+ <div class="card-tltle">显示字段</div>
15
+ <div ref="dragForm">
16
+ <div
17
+ :class="{ 'not-sort': searchField }"
18
+ v-for="item in columns.filter(x=> x.visible && showField(x.title))"
19
+ :key="item.currentKey"
20
+ :data-id="item.currentKey"
21
+ class="drag-row show-sort"
22
+ >
23
+ <div style="margin-right: 7px;">
24
+ <img src="../../styles/icon/drag.svg" alt="" style="width: 20px" >
25
+ </div>
26
+ <div>{{ item.title }}</div>
27
+ <div style="margin-left: auto;"><a-switch v-model="item.visible" @change="onCheckboxChange(item)" size="small"/></div>
28
+ </div>
29
+ </div>
30
+ </div>
31
+ <div class="field-card">
32
+ <div class="card-tltle">未显示字段</div>
33
+ <div ref="notShownField">
34
+ <div
35
+ v-for="(item, index) in columns.filter(x=> !x.visible)"
36
+ :key="index"
37
+ :data-id="index"
38
+ class="drag-row"
39
+ >
40
+ <div>{{ item.title }}</div>
41
+ <div style="margin-left: auto;"><a-switch v-model="item.visible" @change="onCheckboxChange(item)" size="small"/></div>
42
+ </div>
43
+ </div>
44
+ </div>
45
+ </div>
46
+ </div>
47
+ </template>
48
+ <script>
49
+ import {
50
+ Row,
51
+ Col,
52
+ Input,
53
+ Checkbox,
54
+ Button,
55
+ Icon,
56
+ Switch,
57
+ } from "ant-design-vue";
58
+ import Sortable from 'sortablejs'
59
+ import { saveUserModuleDataFieldApi } from "../../utils/api";
60
+ export default {
61
+ components: {
62
+ "a-icon": Icon,
63
+ "a-row": Row,
64
+ "a-col": Col,
65
+ "a-input": Input,
66
+ "a-checkbox": Checkbox,
67
+ "a-button": Button,
68
+ "a-switch": Switch,
69
+ },
70
+ props: {
71
+ userDefineColumns: {
72
+ type: Array,
73
+ default: function () {
74
+ return [];
75
+ },
76
+ },
77
+ height: {
78
+ type: Number,
79
+ default: function () {
80
+ return 0;
81
+ },
82
+ },
83
+ moduleCode: {
84
+ type: String,
85
+ default: function () {
86
+ return '';
87
+ },
88
+ },
89
+ dataCode: {
90
+ type: String,
91
+ default: function () {
92
+ return '';
93
+ },
94
+ },
95
+ },
96
+ data() {
97
+ return {
98
+ searchField: null,
99
+ // 接收所有字段数据
100
+ adjustUserDefineColumns: [],
101
+ // 可显示字段数据
102
+ columns:[],
103
+ // 改变后顺序记录数组
104
+ currentSortKeys: [],
105
+ // 拖拽表单配置
106
+ options: {}
107
+ }
108
+ },
109
+ created() {
110
+ this.setColumnsOptions()
111
+ },
112
+ mounted() {
113
+ // 初始排序数组
114
+ this.currentSortKeys = this.columns.map(x=>x.currentKey)
115
+ this.setOptions()
116
+ },
117
+ methods: {
118
+ setColumnsOptions() {
119
+ this.adjustUserDefineColumns = this.userDefineColumns;
120
+ // 设置唯一标识,用于保存时找到字段并重新排序
121
+ this.adjustUserDefineColumns.forEach((x, index)=> x.currentKey = index + x.field)
122
+ this.columns = [];
123
+ this.adjustUserDefineColumns.forEach((item) => {
124
+ // 去除操作列和序号、多选框列
125
+ if (item.field === "operation" || item.field == undefined) {
126
+ return;
127
+ }
128
+ const column = {
129
+ currentKey: item.currentKey,
130
+ field: item.field,
131
+ title: item.title,
132
+ visible: item.visible,
133
+ width: item.width,
134
+ filters: item.filters,
135
+ order: item.order,
136
+ }
137
+ this.columns.push(column);
138
+ })
139
+ },
140
+ // 配置方法
141
+ setOptions() {
142
+ var vm = this
143
+ //获取对象
144
+ var el = vm.$refs.dragForm
145
+ //设置配置
146
+ vm.options = {
147
+ group:'sortableDrag',
148
+ animation: 200,
149
+ sort: true,
150
+ filter: ".not-sort", // not-sort用来控制筛选时不可拖拽
151
+ forceFallback: true, // 禁用html5原生拖拽行为,使得可以同时使用拖拽及鼠标滚轴
152
+ //拖动结束
153
+ onEnd: function (evt) {
154
+ //获取拖动后的排序
155
+ vm.currentSortKeys = sortable.toArray()
156
+ // 调取保存
157
+ vm.saveSortable()
158
+ },
159
+ };
160
+ //初始化
161
+ var sortable = Sortable.create(el, vm.options);
162
+ },
163
+ onCheckboxChange() {
164
+ let vm = this
165
+ // 在渲染切换后获取渲染后div内容,进行赋值
166
+ this.$nextTick(()=>{
167
+ let sortableElement = vm.$refs.dragForm
168
+ let sortKeys = []
169
+ for (let i = 0; i < sortableElement.children.length; i++) {
170
+ sortKeys.push(sortableElement.children[i].dataset.id)
171
+ }
172
+ vm.currentSortKeys = sortKeys
173
+ this.saveSortable()
174
+ })
175
+ // 保存之前将显示字段数组删除当前的
176
+ },
177
+ // 保存拖拽后排序
178
+ saveSortable() {
179
+ let vm = this
180
+ let postData = {
181
+ moduleCode: vm.moduleCode,
182
+ dataCode: vm.dataCode,
183
+ fields: [],
184
+ }
185
+ let currentDrag = JSON.parse(JSON.stringify(vm.currentSortKeys))
186
+ // 将不显示数组最后放入
187
+ let notShowColumns = vm.columns.filter(x=>!x.visible).map(i=>i.currentKey)
188
+ currentDrag.push(...notShowColumns)
189
+ // 循环按照当前顺序赋值序号
190
+ currentDrag.forEach((item, index) => {
191
+ let tempObject = vm.columns.find(x => x.currentKey == item)
192
+ let tempData = {
193
+ field: tempObject.field,
194
+ sort: index + 1,
195
+ hidden: !tempObject.visible,
196
+ width: tempObject.width,
197
+ extraInfo:{}
198
+ }
199
+ if (tempObject.filters && tempObject.filters[0].data.bindingValues.length) {
200
+ tempObject.filters[0].checked = true;
201
+ tempData.extraInfo.filterExpression = tempObject.filters
202
+ }
203
+ if (tempObject.order) {
204
+ tempData.extraInfo.order = tempObject.order
205
+ }
206
+ postData.fields.push(tempData)
207
+ })
208
+ saveUserModuleDataFieldApi(postData)
209
+ .then(res => {
210
+ // 更改columns序号
211
+ // vm.columns.forEach(column => {
212
+ // let tempObject = postData.fields.find(x => x.field == column.field)
213
+ // if (tempObject) {
214
+ // column.sort = tempObject.sort
215
+ // }
216
+ // })
217
+ // console.log('1',vm.columns);
218
+ // 返回表格组件触发更新
219
+ vm.$emit('saveSeqConfig',postData, res.content)
220
+ })
221
+ .catch((err) => {
222
+ console.debug(err)
223
+ })
224
+ .finally(() => {})
225
+ },
226
+ showField(title) {
227
+ let isShow = true
228
+ if (this.searchField && (title.indexOf(this.searchField) == -1)) {
229
+ isShow = false
230
+ }
231
+ return isShow
232
+ }
233
+ },
234
+ }
235
+ </script>
236
+ <style scoped lang="scss">
237
+ .content-card {
238
+ font-weight: 600;
239
+ min-width: 240px;
240
+ }
241
+ .show-sort:hover {
242
+ background-color: #f7f7f7;
243
+ }
244
+ .drag-row {
245
+ padding-right: 5px;
246
+ font-size: 15px;
247
+ height: 36px;
248
+ display: flex;
249
+ align-items: center;
250
+ }
251
+ /* 修改滚动条整体样式 */
252
+ .field-content::-webkit-scrollbar {
253
+ width: 7px; /* 设置滚动条宽度 */
254
+ }
255
+ /* 修改滚动条轨道样式 */
256
+ .field-content::-webkit-scrollbar-track {
257
+ background-color: #f1f1f1; /* 设置轨道背景色 */
258
+ }
259
+ /* 修改滚动条滑块样式 */
260
+ .field-content::-webkit-scrollbar-thumb {
261
+ background-color: #888; /* 设置滑块背景色 */
262
+ }
263
+ /* 修改滚动条滑块在hover状态下的样式 */
264
+ .field-content::-webkit-scrollbar-thumb:hover {
265
+ background-color: #555; /* 设置滑块hover时背景色 */
266
+ }
267
+ .field-card {
268
+ margin: 10px 10px 0px 0px;
269
+ .card-tltle {
270
+ margin-bottom: 10px;
271
+ }
272
+ }
273
+ </style>