wl-design-mobile 0.8.13 → 0.8.15

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 (101) hide show
  1. package/README.md +6 -6
  2. package/api/doc.js +25 -25
  3. package/api/x1.js +56 -56
  4. package/btn/components/lambo-info-btn.vue +123 -123
  5. package/btn/components/lambo-primary-btn.vue +117 -117
  6. package/btn/components/lambo-text-btn.vue +116 -116
  7. package/btn/lambo-btn-divide.vue +35 -35
  8. package/btn/lambo-btn-group.vue +46 -46
  9. package/btn/lambo-btn-split-line.vue +41 -41
  10. package/btn/lambo-btn.vue +68 -68
  11. package/btn/lambo-extend-btn.vue +121 -121
  12. package/btn/lambo-icon-btn.vue +82 -82
  13. package/card-item/card-row-icon.vue +71 -71
  14. package/card-item/filtrate-row.vue +73 -73
  15. package/card-item/lambo-card-footer.vue +40 -40
  16. package/card-item/lambo-card-head.vue +66 -66
  17. package/card-item/lambo-card-row.vue +59 -59
  18. package/collapse/lambo-collapse.vue +93 -93
  19. package/config/config.js +14 -14
  20. package/detail/lambo-detail-grid.vue +58 -58
  21. package/detail/lambo-detail-row.vue +59 -59
  22. package/doc/file/compoents/lambo-file-list.vue +42 -42
  23. package/doc/file/compoents/lambo-file-row.vue +77 -77
  24. package/doc/file/lambo-file-upload-collapse.vue +107 -107
  25. package/doc/file-type/file-type.js +286 -286
  26. package/doc/img/comonents/lambo-img-grid.vue +109 -109
  27. package/doc/img/lambo-img-upload-collapse.vue +107 -109
  28. package/doc/img/styles/css/index.css +3 -3
  29. package/edit/list/Lambo-edit-list.vue +87 -87
  30. package/edit/list/lambo-edit-card-group.vue +100 -100
  31. package/edit/list/styles/css/index.css +39 -39
  32. package/edit/select/lambo-edit-date-range.vue +147 -147
  33. package/edit/select/lambo-edit-date-time.vue +122 -122
  34. package/edit/select/lambo-edit-date.vue +120 -120
  35. package/edit/select/lambo-edit-input-textarea.vue +91 -91
  36. package/edit/select/lambo-edit-input.vue +91 -91
  37. package/edit/select/lambo-edit-multi-select.vue +168 -168
  38. package/edit/select/lambo-edit-search-single-select.vue +186 -186
  39. package/edit/select/lambo-edit-single-select.vue +162 -162
  40. package/edit/select/styles/css/index.css +133 -133
  41. package/flow/approval/flow-approval.vue +552 -552
  42. package/flow/comps/flow-attachment-list.vue +230 -230
  43. package/flow/comps/flow-attachment-modal.vue +194 -194
  44. package/flow/comps/flow-copy-users.vue +358 -358
  45. package/flow/comps/flow-node-card.vue +150 -150
  46. package/flow/comps/flow-node-header.vue +172 -172
  47. package/flow/comps/flow-util.js +156 -156
  48. package/flow/comps/icons/approved.svg +11 -11
  49. package/flow/comps/icons/canceled.svg +11 -11
  50. package/flow/comps/icons/rejected.svg +11 -11
  51. package/flow/comps/icons/underway.svg +11 -11
  52. package/flow/detail/flow-detail.vue +467 -467
  53. package/flow/index.js +51 -51
  54. package/flow/lambo-flow-detail.vue +912 -912
  55. package/flow/lambo-flow-edit.vue +15 -15
  56. package/flow/submit/flow-submit.vue +383 -383
  57. package/icon/lambo-required-red-star.vue +47 -47
  58. package/icon/lambo-vector-icon.vue +71 -71
  59. package/list/lambo-list.vue +412 -294
  60. package/nav/lambo-top-nav.vue +81 -81
  61. package/order/comps/icons/approved.svg +10 -10
  62. package/order/comps/icons/underway.svg +10 -10
  63. package/order/comps/order-attachment-list.vue +228 -228
  64. package/order/comps/order-attachment-modal.vue +194 -194
  65. package/order/comps/order-node-card.vue +126 -126
  66. package/order/comps/order-node-header.vue +133 -133
  67. package/order/comps/order-util.js +132 -132
  68. package/order/detail/order-detail.vue +432 -432
  69. package/order/handle/order-handle.vue +517 -517
  70. package/order/index.js +33 -33
  71. package/package.json +1 -1
  72. package/search/lambo-date-range-page.vue +196 -196
  73. package/search/lambo-date-range.vue +111 -111
  74. package/search/lambo-date.vue +105 -105
  75. package/search/lambo-input.vue +74 -74
  76. package/search/lambo-multi-select.vue +129 -129
  77. package/search/lambo-org-select-page.vue +109 -109
  78. package/search/lambo-search-box.vue +61 -61
  79. package/search/lambo-search-single-select.vue +152 -152
  80. package/search/lambo-single-select.vue +123 -123
  81. package/search/lambo-week-date-select.vue +521 -521
  82. package/search/styles/css/index.css +138 -138
  83. package/styles/base.less +77 -77
  84. package/styles/components/btn.less +7 -7
  85. package/styles/components/search.less +33 -33
  86. package/styles/components/tag.less +181 -181
  87. package/styles/index.less +4 -4
  88. package/table/lambo-ag-table.vue +228 -227
  89. package/tag/lambo-tag.vue +23 -23
  90. package/title/lambo-title1.vue +151 -151
  91. package/title/lambo-title2.vue +37 -37
  92. package/title/lambo-title3.vue +77 -77
  93. package/util/assist.js +43 -43
  94. package/util/axios/cacheconf.js +19 -19
  95. package/util/axios/index.js +11 -11
  96. package/util/axios/interceptors.js +101 -101
  97. package/util/bus.js +4 -4
  98. package/util/jssdk-sczy.js +104 -104
  99. package/util/jssdk.js +565 -565
  100. package/util/math.js +76 -76
  101. package/util/token.js +36 -36
@@ -1,227 +1,228 @@
1
- <template>
2
- <div class="table-container">
3
- <div class="ag-theme-balham" :style="{width: '100%', height: tableHeight}">
4
- <ag-grid-vue
5
- :columnDefs="columns"
6
- :rowData="rowData"
7
- :pinnedBottomRowData="sumData"
8
- :defaultColDef="defaultColDef"
9
- @grid-ready="onGridReady"
10
- @sortChanged="onSortChanged"
11
- @cell-clicked="onCellClicked"
12
- :row-selection="isMultiSelect === true ? 'multiple' : false"
13
- :rowMultiSelectWithClick="isMultiSelect"
14
- :suppressCellSelection="isMultiSelect"
15
- class="ag-grid-tb"
16
- :overlay-no-rows-template="overlayNoRowsTemplate"
17
- ></ag-grid-vue>
18
- </div>
19
- <van-pagination
20
- v-if="isPage"
21
- v-model="currentPage"
22
- :total-items="total"
23
- :items-per-page="limit"
24
- @change="onPageChanged"
25
- mode="simple"
26
- class="vant-page-comp">
27
- <template #prev-text>
28
- <van-icon name="arrow-left"/>
29
- </template>
30
- <template #next-text>
31
- <van-icon name="arrow"/>
32
- </template>
33
- </van-pagination>
34
- </div>
35
- </template>
36
- <script>
37
- import 'ag-grid-community/styles/ag-grid.css'
38
- import 'ag-grid-community/styles/ag-theme-balham.css'
39
- /**
40
- * 打包时候把这一行放开,下面的一行注释掉
41
- *
42
- */
43
- import {AgGridVue} from 'ag-grid-vue/lib/main.cjs.js'
44
- /**
45
- * 本地运行的时候,把这一行放开,上面的一行注释掉
46
- * import {AgGridVue} from 'ag-grid-vue'
47
- */
48
- import {Toast} from "vant"
49
- import {axios} from "../util/axios"
50
-
51
- // 合计行标志
52
- const TOTAL_ROW_FIELD_KEY = "total_row"
53
- // 是否下钻标志
54
- const PAGE_DRILL_FLAG_KEY = "drill"
55
-
56
- export default {
57
- name: 'LamboAgTable',
58
- components: {AgGridVue},
59
- props: {
60
- tableHeight: {
61
- type: String,
62
- default: '381px', // 默认10行的高度
63
- },
64
- url: {
65
- type: String,
66
- required: true
67
- },
68
- columns: {
69
- type: Array,
70
- required: true
71
- },
72
- searchParams: {
73
- type: Object
74
- },
75
- isPage: {
76
- type: Boolean,
77
- default: false
78
- },
79
- isMultiSelect: {
80
- type: Boolean,
81
- default: false
82
- }
83
- },
84
- data() {
85
- return {
86
- rowData: null,
87
- sumData: null,
88
- defaultColDef: {
89
- lockPosition: true,
90
- editable: false,
91
- sortable: true,
92
- autoHeight: true,
93
- resizable: true,
94
- filter: true
95
- },
96
- currentPage: 1,
97
- offset: 0,
98
- limit: 10,
99
- total: 0,
100
- gridApi: null,
101
- overlayNoRowsTemplate:'<span>没有可显示的数据</span>',
102
- }
103
- },
104
- methods: {
105
- onGridReady(params) {
106
- this.gridApi = params.api
107
- },
108
- columnsFilter() {
109
- if (this.columns && this.columns.length > 0) {
110
- for (const item of this.columns) {
111
- if (item && item.hasOwnProperty("field")) {
112
- item['comparator'] = this.preventComparator
113
- }
114
- if (item.hasOwnProperty(PAGE_DRILL_FLAG_KEY) && item[PAGE_DRILL_FLAG_KEY] === '1') {
115
- item.cellStyle= (params) => {
116
- console.log("lambo-ag-grid columnsFilter params:", params)
117
- if (params.hasOwnProperty("data") && !(params.data.hasOwnProperty(TOTAL_ROW_FIELD_KEY) && params.data[TOTAL_ROW_FIELD_KEY] === '1')) {
118
- return {color: '#0070D2'}
119
- }
120
- }
121
- }
122
- }
123
- }
124
- },
125
- preventComparator(v1, v2) {
126
- return 0;
127
- },
128
- onSortChanged(event) {
129
- console.log("lambo-ag-table onSortChanged event:", event)
130
- if (event && event.hasOwnProperty("columns") && event.columns) {
131
- let sortColumns = event.columns
132
- if (sortColumns && sortColumns.length > 0) {
133
- let sortCol = sortColumns[sortColumns.length - 1]
134
- if (sortCol && sortCol.hasOwnProperty("colId") && sortCol.hasOwnProperty("sort")) {
135
- let sortField = sortCol.colId
136
- let sortType = sortCol.sort
137
- console.log("lambo-ag-table onSortChanged sortField:" + sortField + ",sortType:" + sortType)
138
- if (sortField && (sortType === 'desc' || sortType === 'asc')) {
139
- this.searchParams.sort = sortField
140
- this.searchParams.order = sortType
141
- this.dataRefresh()
142
- }
143
- }
144
- }
145
- }
146
- },
147
- onPageChanged() {
148
- this.offset = (this.currentPage - 1) * this.limit
149
- this.dataRefresh()
150
- },
151
- dataRefresh() {
152
- let params = {}
153
- if (this.isPage === true) {
154
- params = {offset: this.offset, limit: this.limit, ...this.searchParams}
155
- } else {
156
- params = {...this.searchParams}
157
- }
158
- console.log("lambo-ag-table onLoad params:", params)
159
- axios.get(this.url, {params}).then(res => {
160
- console.log("lambo-ag-table onLoad dataRefresh res:", res)
161
- if (res && res.code === 1) {
162
- let dataObj = res.data
163
- this.rowData = dataObj.rows || []
164
- this.sumData = dataObj.sum || []
165
-
166
- if (this.isPage === true) {
167
- this.total = dataObj.total || 0
168
- }
169
- } else {
170
- console.error("lambo-ag-table onLoad 查询[" + this.url + "]数据失败", res)
171
- Toast.fail("查询[" + this.url + "]数据失败:" + res.data || '')
172
- }
173
- }).catch(err => {
174
- console.error("lambo-ag-table onLoad 查询[" + this.title + "]异常:", err)
175
- Toast.fail("查询[" + this.url + "]数据异常")
176
- })
177
- },
178
- getSelectedRows() {
179
- let selData = []
180
- if (this.gridApi) {
181
- const selectedNodes = this.gridApi.getSelectedNodes()
182
- if (selectedNodes) {
183
- selData = selectedNodes.map(node => node.data)
184
- }
185
- console.log('lambo-ag-grid getSelectedRows:', selData);
186
- }
187
- return selData
188
- },
189
- onCellClicked(event) {
190
- console.log('lambo-ag-grid onCellClicked event:', event);
191
- if (event && event.hasOwnProperty("colDef") && event.colDef.hasOwnProperty("field") && event.hasOwnProperty("data")) {
192
- let detailField = event.colDef.field
193
- let rowData = event.data
194
- if (!(rowData.hasOwnProperty(TOTAL_ROW_FIELD_KEY) && rowData[TOTAL_ROW_FIELD_KEY] === '1')) {
195
- this.$emit('on-cell-click', detailField, event.value, rowData);
196
- }
197
- } else {
198
- console.error("lambo-ag-grid onCellClicked event异常无法点击")
199
- }
200
- }
201
- },
202
- watch: {
203
- searchParams: {
204
- handler: function (val, oldVal) {
205
- console.log(`lambo-ag-table watch searchParams val,oldVal:`, {val, oldVal}, `val===oldVal:`, val === oldVal)
206
- this.rowData = []
207
- this.sumData = []
208
- this.dataRefresh()
209
- },
210
- deep: true
211
- }
212
- },
213
- created() {
214
- this.columnsFilter()
215
- }
216
- }
217
- </script>
218
- <style scoped>
219
- .ag-grid-tb {
220
- height: 100%;
221
- width: 100%;
222
- }
223
-
224
- /deep/ .vant-page-comp .van-pagination__item {
225
- color: #0070D2
226
- }
227
- </style>
1
+ <template>
2
+ <div class="table-container">
3
+ <div class="ag-theme-balham" :style="{width: '100%', height: tableHeight}">
4
+ <ag-grid-vue
5
+ :columnDefs="columns"
6
+ :rowData="rowData"
7
+ :pinnedBottomRowData="sumData"
8
+ :defaultColDef="defaultColDef"
9
+ @grid-ready="onGridReady"
10
+ @sortChanged="onSortChanged"
11
+ @cell-clicked="onCellClicked"
12
+ :row-selection="isMultiSelect === true ? 'multiple' : false"
13
+ :rowMultiSelectWithClick="isMultiSelect"
14
+ :suppressCellSelection="isMultiSelect"
15
+ class="ag-grid-tb"
16
+ :overlay-no-rows-template="overlayNoRowsTemplate"
17
+ ></ag-grid-vue>
18
+ </div>
19
+ <van-pagination
20
+ v-if="isPage"
21
+ v-model="currentPage"
22
+ :total-items="total"
23
+ :items-per-page="limit"
24
+ @change="onPageChanged"
25
+ mode="simple"
26
+ class="vant-page-comp">
27
+ <template #prev-text>
28
+ <van-icon name="arrow-left"/>
29
+ </template>
30
+ <template #next-text>
31
+ <van-icon name="arrow"/>
32
+ </template>
33
+ </van-pagination>
34
+ </div>
35
+ </template>
36
+ <script>
37
+ import 'ag-grid-community/styles/ag-grid.css'
38
+ import 'ag-grid-community/styles/ag-theme-balham.css'
39
+ /**
40
+ * 打包时候把这一行放开,下面的一行注释掉
41
+ * import {AgGridVue} from 'ag-grid-vue/lib/main.cjs.js'
42
+ */
43
+
44
+ /**
45
+ * 本地运行的时候,把这一行放开,上面的一行注释掉
46
+ *
47
+ */
48
+ import {AgGridVue} from 'ag-grid-vue'
49
+ import {Toast} from "vant"
50
+ import {axios} from "../util/axios"
51
+
52
+ // 合计行标志
53
+ const TOTAL_ROW_FIELD_KEY = "total_row"
54
+ // 是否下钻标志
55
+ const PAGE_DRILL_FLAG_KEY = "drill"
56
+
57
+ export default {
58
+ name: 'LamboAgTable',
59
+ components: {AgGridVue},
60
+ props: {
61
+ tableHeight: {
62
+ type: String,
63
+ default: '381px', // 默认10行的高度
64
+ },
65
+ url: {
66
+ type: String,
67
+ required: true
68
+ },
69
+ columns: {
70
+ type: Array,
71
+ required: true
72
+ },
73
+ searchParams: {
74
+ type: Object
75
+ },
76
+ isPage: {
77
+ type: Boolean,
78
+ default: false
79
+ },
80
+ isMultiSelect: {
81
+ type: Boolean,
82
+ default: false
83
+ }
84
+ },
85
+ data() {
86
+ return {
87
+ rowData: null,
88
+ sumData: null,
89
+ defaultColDef: {
90
+ lockPosition: true,
91
+ editable: false,
92
+ sortable: true,
93
+ autoHeight: true,
94
+ resizable: true,
95
+ filter: true
96
+ },
97
+ currentPage: 1,
98
+ offset: 0,
99
+ limit: 10,
100
+ total: 0,
101
+ gridApi: null,
102
+ overlayNoRowsTemplate:'<span>没有可显示的数据</span>',
103
+ }
104
+ },
105
+ methods: {
106
+ onGridReady(params) {
107
+ this.gridApi = params.api
108
+ },
109
+ columnsFilter() {
110
+ if (this.columns && this.columns.length > 0) {
111
+ for (const item of this.columns) {
112
+ if (item && item.hasOwnProperty("field")) {
113
+ item['comparator'] = this.preventComparator
114
+ }
115
+ if (item.hasOwnProperty(PAGE_DRILL_FLAG_KEY) && item[PAGE_DRILL_FLAG_KEY] === '1') {
116
+ item.cellStyle= (params) => {
117
+ console.log("lambo-ag-grid columnsFilter params:", params)
118
+ if (params.hasOwnProperty("data") && !(params.data.hasOwnProperty(TOTAL_ROW_FIELD_KEY) && params.data[TOTAL_ROW_FIELD_KEY] === '1')) {
119
+ return {color: '#0070D2'}
120
+ }
121
+ }
122
+ }
123
+ }
124
+ }
125
+ },
126
+ preventComparator(v1, v2) {
127
+ return 0;
128
+ },
129
+ onSortChanged(event) {
130
+ console.log("lambo-ag-table onSortChanged event:", event)
131
+ if (event && event.hasOwnProperty("columns") && event.columns) {
132
+ let sortColumns = event.columns
133
+ if (sortColumns && sortColumns.length > 0) {
134
+ let sortCol = sortColumns[sortColumns.length - 1]
135
+ if (sortCol && sortCol.hasOwnProperty("colId") && sortCol.hasOwnProperty("sort")) {
136
+ let sortField = sortCol.colId
137
+ let sortType = sortCol.sort
138
+ console.log("lambo-ag-table onSortChanged sortField:" + sortField + ",sortType:" + sortType)
139
+ if (sortField && (sortType === 'desc' || sortType === 'asc')) {
140
+ this.searchParams.sort = sortField
141
+ this.searchParams.order = sortType
142
+ this.dataRefresh()
143
+ }
144
+ }
145
+ }
146
+ }
147
+ },
148
+ onPageChanged() {
149
+ this.offset = (this.currentPage - 1) * this.limit
150
+ this.dataRefresh()
151
+ },
152
+ dataRefresh() {
153
+ let params = {}
154
+ if (this.isPage === true) {
155
+ params = {offset: this.offset, limit: this.limit, ...this.searchParams}
156
+ } else {
157
+ params = {...this.searchParams}
158
+ }
159
+ console.log("lambo-ag-table onLoad params:", params)
160
+ axios.get(this.url, {params}).then(res => {
161
+ console.log("lambo-ag-table onLoad dataRefresh res:", res)
162
+ if (res && res.code === 1) {
163
+ let dataObj = res.data
164
+ this.rowData = dataObj.rows || []
165
+ this.sumData = dataObj.sum || []
166
+
167
+ if (this.isPage === true) {
168
+ this.total = dataObj.total || 0
169
+ }
170
+ } else {
171
+ console.error("lambo-ag-table onLoad 查询[" + this.url + "]数据失败", res)
172
+ Toast.fail("查询[" + this.url + "]数据失败:" + res.data || '')
173
+ }
174
+ }).catch(err => {
175
+ console.error("lambo-ag-table onLoad 查询[" + this.title + "]异常:", err)
176
+ Toast.fail("查询[" + this.url + "]数据异常")
177
+ })
178
+ },
179
+ getSelectedRows() {
180
+ let selData = []
181
+ if (this.gridApi) {
182
+ const selectedNodes = this.gridApi.getSelectedNodes()
183
+ if (selectedNodes) {
184
+ selData = selectedNodes.map(node => node.data)
185
+ }
186
+ console.log('lambo-ag-grid getSelectedRows:', selData);
187
+ }
188
+ return selData
189
+ },
190
+ onCellClicked(event) {
191
+ console.log('lambo-ag-grid onCellClicked event:', event);
192
+ if (event && event.hasOwnProperty("colDef") && event.colDef.hasOwnProperty("field") && event.hasOwnProperty("data")) {
193
+ let detailField = event.colDef.field
194
+ let rowData = event.data
195
+ if (!(rowData.hasOwnProperty(TOTAL_ROW_FIELD_KEY) && rowData[TOTAL_ROW_FIELD_KEY] === '1')) {
196
+ this.$emit('on-cell-click', detailField, event.value, rowData);
197
+ }
198
+ } else {
199
+ console.error("lambo-ag-grid onCellClicked event异常无法点击")
200
+ }
201
+ }
202
+ },
203
+ watch: {
204
+ searchParams: {
205
+ handler: function (val, oldVal) {
206
+ console.log(`lambo-ag-table watch searchParams val,oldVal:`, {val, oldVal}, `val===oldVal:`, val === oldVal)
207
+ this.rowData = []
208
+ this.sumData = []
209
+ this.dataRefresh()
210
+ },
211
+ deep: true
212
+ }
213
+ },
214
+ created() {
215
+ this.columnsFilter()
216
+ }
217
+ }
218
+ </script>
219
+ <style scoped>
220
+ .ag-grid-tb {
221
+ height: 100%;
222
+ width: 100%;
223
+ }
224
+
225
+ /deep/ .vant-page-comp .van-pagination__item {
226
+ color: #0070D2
227
+ }
228
+ </style>
package/tag/lambo-tag.vue CHANGED
@@ -1,23 +1,23 @@
1
- <template>
2
- <div>
3
- <van-tag :class="tagClass">{{ title }}</van-tag>
4
- </div>
5
- </template>
6
- <script>
7
- export default {
8
- name: "LamboTag",
9
- props: {
10
- tagClass: {
11
- type: String,
12
- default: "tag-blue-half-opacity"
13
- },
14
- title: {
15
- type: String,
16
- default: ""
17
- },
18
- }
19
- }
20
- </script>
21
- <style scoped>
22
-
23
- </style>
1
+ <template>
2
+ <div>
3
+ <van-tag :class="tagClass">{{ title }}</van-tag>
4
+ </div>
5
+ </template>
6
+ <script>
7
+ export default {
8
+ name: "LamboTag",
9
+ props: {
10
+ tagClass: {
11
+ type: String,
12
+ default: "tag-blue-half-opacity"
13
+ },
14
+ title: {
15
+ type: String,
16
+ default: ""
17
+ },
18
+ }
19
+ }
20
+ </script>
21
+ <style scoped>
22
+
23
+ </style>