imatrix-ui 0.2.6-up → 0.2.7-up

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 (206) hide show
  1. package/README.md +7 -7
  2. package/index.html +13 -13
  3. package/lib/super-ui.css +1 -1
  4. package/lib/super-ui.js +2724 -1932
  5. package/lib/super-ui.umd.cjs +24 -24
  6. package/package.json +1 -1
  7. package/packages/IntervalSelection/index.js +6 -6
  8. package/packages/IntervalSelection/src/quarterScope.vue +405 -405
  9. package/packages/IntervalSelection/src/sectionDate.vue +475 -475
  10. package/packages/breadcrumb/index.js +6 -6
  11. package/packages/breadcrumb/src/breadcrumb.vue +81 -81
  12. package/packages/department-tree/index.js +6 -6
  13. package/packages/department-tree/src/department-tree.vue +113 -113
  14. package/packages/department-tree-inline/index.js +6 -6
  15. package/packages/department-tree-inline/src/department-multi-tree-inline.vue +472 -472
  16. package/packages/department-tree-inline/src/department-single-tree-inline.vue +340 -340
  17. package/packages/department-tree-inline/src/department-tree-inline.vue +86 -86
  18. package/packages/department-tree-inline/src/department-tree-service.js +344 -344
  19. package/packages/department-tree-inline/src/search-result.vue +235 -235
  20. package/packages/department-user-tree/index.js +6 -6
  21. package/packages/department-user-tree/src/department-user-multiple-tree.vue +129 -129
  22. package/packages/department-user-tree/src/department-user-single-tree.vue +94 -94
  23. package/packages/department-user-tree/src/department-user-tree.vue +114 -114
  24. package/packages/department-user-tree-inline/index.js +9 -9
  25. package/packages/department-user-tree-inline/src/department-user-multiple-tree-inline.vue +731 -731
  26. package/packages/department-user-tree-inline/src/department-user-single-tree-inline.vue +334 -334
  27. package/packages/department-user-tree-inline/src/department-user-tree-inline.vue +87 -87
  28. package/packages/department-user-tree-inline/src/department-user-tree-multi-service.js +309 -309
  29. package/packages/department-user-tree-inline/src/department-user-tree-single-service.js +179 -179
  30. package/packages/department-user-tree-inline/src/search-result.vue +273 -273
  31. package/packages/directives/prevent-reclick.js +22 -22
  32. package/packages/dynamic-source-select/index.js +6 -6
  33. package/packages/dynamic-source-select/src/dynamic-source-select-service.js +106 -106
  34. package/packages/dynamic-source-select/src/dynamic-source-select.vue +675 -675
  35. package/packages/dynamic-source-select/src/events.js +78 -78
  36. package/packages/fs-preview/index.js +6 -6
  37. package/packages/fs-preview/src/fs-preview.vue +287 -287
  38. package/packages/fs-upload/index.js +6 -6
  39. package/packages/fs-upload/src/fs-upload-multi.vue +443 -443
  40. package/packages/fs-upload/src/fs-upload-single.vue +353 -353
  41. package/packages/fs-upload/src/fs-upload.vue +191 -191
  42. package/packages/fs-upload/src/see-big-picture.vue +67 -67
  43. package/packages/fs-upload-list/index.js +6 -6
  44. package/packages/fs-upload-list/src/fs-upload-list.vue +372 -372
  45. package/packages/hamburger/index.js +6 -6
  46. package/packages/hamburger/src/hamburger.vue +40 -40
  47. package/packages/index.js +123 -123
  48. package/packages/multipart-upload/index.js +6 -6
  49. package/packages/multipart-upload/src/index.vue +66 -66
  50. package/packages/multipart-upload/src/multipart-upload-form.vue +377 -377
  51. package/packages/multipart-upload/src/multipart-upload-list.vue +517 -517
  52. package/packages/organization-input/index.js +6 -6
  53. package/packages/organization-input/src/organization-input.vue +583 -583
  54. package/packages/plugins/export-data-new.js +623 -623
  55. package/packages/plugins/export-data.js +431 -431
  56. package/packages/plugins/index.js +15 -15
  57. package/packages/plugins/public-method.js +47 -47
  58. package/packages/remove-department/index.js +6 -6
  59. package/packages/remove-department/src/remove-department.vue +200 -200
  60. package/packages/remove-department/src/remove-dept-service.js +31 -31
  61. package/packages/remove-user/index.js +6 -6
  62. package/packages/remove-user/src/remove-user-service.js +31 -31
  63. package/packages/remove-user/src/remove-user.vue +226 -226
  64. package/packages/remove-workgroup/index.js +6 -6
  65. package/packages/remove-workgroup/src/remove-workgroup-service.js +31 -31
  66. package/packages/remove-workgroup/src/remove-workgroup.vue +183 -183
  67. package/packages/rich-editor/index.js +7 -7
  68. package/packages/rich-editor/index.vue +297 -297
  69. package/packages/rich-editor/langs/zh-Hans.js +438 -438
  70. package/packages/rich-editor/viewer.vue +105 -105
  71. package/packages/scan-code-input/index.js +6 -6
  72. package/packages/scan-code-input/src/events.js +34 -34
  73. package/packages/scan-code-input/src/scan-code-input-colse.vue +140 -140
  74. package/packages/scan-code-input/src/scan-code-input.vue +132 -132
  75. package/packages/secret-info/index.js +7 -7
  76. package/packages/secret-info/index.vue +100 -100
  77. package/packages/super-grid/index.js +7 -7
  78. package/packages/super-grid/src/apis.js +1092 -1092
  79. package/packages/super-grid/src/columns-config.vue +427 -427
  80. package/packages/super-grid/src/custom-formatter.js +394 -394
  81. package/packages/super-grid/src/eventBus.js +2 -2
  82. package/packages/super-grid/src/events.js +56 -56
  83. package/packages/super-grid/src/formValidatorUtil.js +300 -300
  84. package/packages/super-grid/src/formatter.js +196 -196
  85. package/packages/super-grid/src/group-column.vue +99 -99
  86. package/packages/super-grid/src/header-context-menu.vue +82 -82
  87. package/packages/super-grid/src/index-column.vue +69 -69
  88. package/packages/super-grid/src/public-methods.js +30 -30
  89. package/packages/super-grid/src/row-operation.vue +193 -193
  90. package/packages/super-grid/src/search-button.vue +74 -74
  91. package/packages/super-grid/src/search-condition-input.vue +73 -73
  92. package/packages/super-grid/src/search-condition-list.vue +68 -68
  93. package/packages/super-grid/src/search-form-advancedQuery.vue +819 -819
  94. package/packages/super-grid/src/search-form-dialog.vue +77 -77
  95. package/packages/super-grid/src/search-form-item.vue +495 -495
  96. package/packages/super-grid/src/search-form-number.vue +111 -111
  97. package/packages/super-grid/src/search-form-ordinarySearch.vue +239 -239
  98. package/packages/super-grid/src/search-form.vue +762 -762
  99. package/packages/super-grid/src/search-methods.js +592 -592
  100. package/packages/super-grid/src/selection-column.vue +46 -46
  101. package/packages/super-grid/src/store.js +3 -3
  102. package/packages/super-grid/src/super-grid-service.js +728 -728
  103. package/packages/super-grid/src/super-grid.vue +3011 -3011
  104. package/packages/super-grid/src/utils.js +880 -880
  105. package/packages/super-grid/src/view-image-dialog.vue +176 -176
  106. package/packages/super-nine-grid/index.js +7 -7
  107. package/packages/super-nine-grid/src/apis.js +108 -108
  108. package/packages/super-nine-grid/src/custom-formatter.js +73 -73
  109. package/packages/super-nine-grid/src/formatter.js +134 -134
  110. package/packages/super-nine-grid/src/search-form-number.vue +35 -35
  111. package/packages/super-nine-grid/src/search-form.vue +700 -700
  112. package/packages/super-nine-grid/src/search-methods.js +151 -151
  113. package/packages/super-nine-grid/src/store.js +3 -3
  114. package/packages/super-nine-grid/src/super-grid-service.js +107 -107
  115. package/packages/svg-icon/index.js +6 -6
  116. package/packages/svg-icon/src/svg-icon.vue +43 -43
  117. package/packages/utils/date-util.js +292 -292
  118. package/packages/utils/dom.js +227 -227
  119. package/packages/utils/gogocodeTransfer.js +59 -59
  120. package/packages/utils/memory-cache-utils.js +117 -117
  121. package/packages/utils/utils.js +180 -180
  122. package/packages/utils/value-set.js +97 -97
  123. package/packages/valid-code/index.js +7 -7
  124. package/packages/valid-code/src/valid-code.vue +104 -104
  125. package/packages/workflow-button/index.js +6 -6
  126. package/packages/workflow-button/src/workflow-button.vue +550 -550
  127. package/packages/workflow-history-list/index.js +6 -6
  128. package/packages/workflow-history-list/src/api.js +7 -7
  129. package/packages/workflow-history-list/src/workflow-history-list.vue +291 -291
  130. package/packages/workgroup-tree/index.js +6 -6
  131. package/packages/workgroup-tree/src/workgroup-tree.vue +86 -86
  132. package/packages/workgroup-tree-inline/index.js +6 -6
  133. package/packages/workgroup-tree-inline/src/search-result.vue +222 -222
  134. package/packages/workgroup-tree-inline/src/workgroup-tree-inline.vue +516 -516
  135. package/packages/workgroup-tree-inline/src/workgroup-tree-service.js +93 -93
  136. package/packages/workgroup-user-tree/index.js +6 -6
  137. package/packages/workgroup-user-tree/src/workgroup-user-tree.vue +103 -103
  138. package/packages/workgroup-user-tree-inline/index.js +9 -9
  139. package/packages/workgroup-user-tree-inline/src/search-result.vue +266 -266
  140. package/packages/workgroup-user-tree-inline/src/workgroup-tree-inline-service.js +239 -239
  141. package/packages/workgroup-user-tree-inline/src/workgroup-user-tree-inline.vue +657 -657
  142. package/packages/year-range-picker/index.js +6 -6
  143. package/packages/year-range-picker/src/year-range-picker.vue +53 -53
  144. package/src/api/sso-service.js +172 -172
  145. package/src/api/tab.js +36 -36
  146. package/src/api/user-service.js +11 -11
  147. package/src/directives/permission/index.js +13 -13
  148. package/src/directives/permission/permission.js +20 -20
  149. package/src/i18n/langs/cn.js +259 -259
  150. package/src/i18n/langs/en.js +269 -269
  151. package/src/index.js +93 -93
  152. package/src/plugins.js +18 -18
  153. package/src/router/index.js +8 -26
  154. package/src/store/getters.js +15 -15
  155. package/src/store/index.js +19 -19
  156. package/src/store/modules/app.js +54 -54
  157. package/src/store/modules/tab-content.js +36 -36
  158. package/src/store/modules/user.js +285 -285
  159. package/src/utils/auth.js +61 -61
  160. package/src/utils/calculator/calculator-factory-wf.js +558 -558
  161. package/src/utils/calculator/calculator-factory.js +145 -145
  162. package/src/utils/calculator/calculator-util.js +166 -166
  163. package/src/utils/eventBus.js +2 -2
  164. package/src/utils/iconUtils.js +28 -28
  165. package/src/utils/index.js +102 -102
  166. package/src/utils/jump-page-utils.js +824 -824
  167. package/src/utils/menu.js +19 -19
  168. package/src/utils/permission.js +31 -31
  169. package/src/utils/permissionAuth.js +96 -96
  170. package/src/utils/range-selector.js +188 -188
  171. package/src/utils/request.js +269 -269
  172. package/src/utils/restful-interface-utils.js +57 -57
  173. package/src/utils/util.js +703 -703
  174. package/src/utils/validate.js +34 -34
  175. package/src/utils/watermark.js +108 -108
  176. package/src/utils/workflow-util.js +93 -93
  177. package/src/views/404.vue +248 -248
  178. package/src/views/dsc-component/Sidebar/Item.vue +84 -84
  179. package/src/views/dsc-component/Sidebar/Link.vue +38 -38
  180. package/src/views/dsc-component/Sidebar/SidebarItem.vue +198 -198
  181. package/src/views/dsc-component/Sidebar/index.vue +229 -229
  182. package/src/views/dsc-component/tabs/tab-content.vue +203 -203
  183. package/src/views/error-page/401.vue +106 -106
  184. package/src/views/error-page/404.vue +248 -248
  185. package/src/views/layout/EmptyLayout.vue +3 -3
  186. package/src/views/layout/Layout.vue +81 -81
  187. package/src/views/layout/NewLayout.vue +18 -18
  188. package/src/views/layout/components/AppMain.vue +39 -39
  189. package/src/views/layout/components/Breadcrumb/index.vue +158 -158
  190. package/src/views/layout/components/Menubar/Item.vue +79 -79
  191. package/src/views/layout/components/Menubar/Link.vue +38 -38
  192. package/src/views/layout/components/Menubar/index.vue +210 -210
  193. package/src/views/layout/components/Sidebar/Item.vue +53 -53
  194. package/src/views/layout/components/Sidebar/Link.vue +38 -38
  195. package/src/views/layout/components/Sidebar/index.vue +141 -141
  196. package/src/views/layout/components/iframe-page.vue +38 -38
  197. package/src/views/layout/components/index.js +4 -4
  198. package/src/views/layout/components/tabs/tab-content.vue +207 -207
  199. package/src/views/layout/mixin/ResizeHandler.js +41 -41
  200. package/src/views/layout/tab-content-iframe-index.vue +38 -38
  201. package/src/views/layout/tab-content-index.vue +93 -93
  202. package/src/views/login/authredirect.vue +10 -10
  203. package/src/views/login/index.vue +296 -296
  204. package/src/views/login/update-password.vue +243 -243
  205. package/src/views/redirect/index.vue +14 -14
  206. package/src/views/wf-history/tache-subprocess-history.vue +45 -45
@@ -1,475 +1,475 @@
1
- <template>
2
- <div>
3
- <!-- 年份选择器 -->
4
- <div v-if="colFieldSetting.options.showType === 'year'" class="select">
5
- <el-date-picker
6
- :shortcuts="pickerOptions && pickerOptions.shortcuts"
7
- :disabled-date="pickerOptions && pickerOptions.disabledDate"
8
- :cell-class-name="pickerOptions && pickerOptions.cellClassName"
9
- v-model="yearStartDate"
10
- type="year"
11
- :placeholder="colFieldSetting.options.startPlaceholder"
12
- :disabled="colFieldSetting.options.disabled"
13
- :clearable="colFieldSetting.options.clearable"
14
- :size="
15
- colFieldSetting.options.size ? colFieldSetting.options.size : 'small'
16
- "
17
- @change="onChangeStatYear"
18
- ></el-date-picker>
19
- <div class="intervalCenter">-</div>
20
- <el-date-picker
21
- :shortcuts="pickerOptions && pickerOptions.shortcuts"
22
- :disabled-date="pickerOptions && pickerOptions.disabledDate"
23
- :cell-class-name="pickerOptions && pickerOptions.cellClassName"
24
- v-model="yearDate"
25
- type="year"
26
- :placeholder="colFieldSetting.options.endPlaceholder"
27
- :disabled="colFieldSetting.options.disabled"
28
- :clearable="colFieldSetting.options.clearable"
29
- :size="
30
- colFieldSetting.options.size ? colFieldSetting.options.size : 'small'
31
- "
32
- @change="onChangeEndYear"
33
- ></el-date-picker>
34
- </div>
35
- <!-- 季度选择器 -->
36
- <!--<div-->
37
- <!-- v-else-if="colFieldSetting.options.showType === 'quarterScope'"-->
38
- <!-- class="select"-->
39
- <!--&gt;-->
40
- <!-- <quarterScope-->
41
- <!-- v-model:value="ScopeStartDate"-->
42
- <!-- :size="-->
43
- <!-- colFieldSetting.options.size ? colFieldSetting.options.size : 'small'-->
44
- <!-- "-->
45
- <!-- :disabled="colFieldSetting.options.disabled"-->
46
- <!-- :clearable="colFieldSetting.options.clearable"-->
47
- <!-- :placeholder="colFieldSetting.options.placeholder"-->
48
- <!-- :format="-->
49
- <!-- 'yyyy' +-->
50
- <!-- $t('IntervalSelection.upload') +-->
51
- <!-- 'q' +-->
52
- <!-- $t('IntervalSelection.quarter')-->
53
- <!-- "-->
54
- <!-- style="width: 100%"-->
55
- <!-- @change="quarterStatrt"-->
56
- <!-- />-->
57
- <!-- <div class="intervalCenter">-</div>-->
58
- <!-- <quarterScope-->
59
- <!-- v-model:value="ScopeEndDate"-->
60
- <!-- :size="-->
61
- <!-- colFieldSetting.options.size ? colFieldSetting.options.size : 'small'-->
62
- <!-- "-->
63
- <!-- :disabled="colFieldSetting.options.disabled"-->
64
- <!-- :clearable="colFieldSetting.options.clearable"-->
65
- <!-- :placeholder="colFieldSetting.options.placeholder"-->
66
- <!-- style="width: 100%"-->
67
- <!-- :format="-->
68
- <!-- 'yyyy' +-->
69
- <!-- $t('IntervalSelection.upload') +-->
70
- <!-- 'q' +-->
71
- <!-- $t('IntervalSelection.quarter')-->
72
- <!-- "-->
73
- <!-- :end-quarter-date="true"-->
74
- <!-- @change="quarterEnd"-->
75
- <!-- />-->
76
- <!--</div>-->
77
- <!-- 星期选择器 -->
78
- <div v-else-if="colFieldSetting.options.showType === 'week'" class="select">
79
- <el-date-picker
80
- :shortcuts="{ firstDayOfWeek: 1 } && { firstDayOfWeek: 1 }.shortcuts"
81
- :disabled-date="
82
- { firstDayOfWeek: 1 } && { firstDayOfWeek: 1 }.disabledDate
83
- "
84
- :cell-class-name="
85
- { firstDayOfWeek: 1 } && { firstDayOfWeek: 1 }.cellClassName
86
- "
87
- v-model="weekStareDate"
88
- :type="colFieldSetting.options.showType"
89
- :is-range="colFieldSetting.options.range"
90
- :placeholder="colFieldSetting.options.placeholder"
91
- :start-placeholder="colFieldSetting.options.startPlaceholder"
92
- :end-placeholder="colFieldSetting.options.endPlaceholder"
93
- :readonly="colFieldSetting.options.readonly"
94
- :disabled="colFieldSetting.options.disabled"
95
- :editable="colFieldSetting.options.editable"
96
- :size="
97
- colFieldSetting.options.size ? colFieldSetting.options.size : 'small'
98
- "
99
- :clearable="colFieldSetting.options.clearable"
100
- :format="
101
- 'yyyy' +
102
- $t('IntervalSelection.auxiliary') +
103
- 'WW' +
104
- $t('IntervalSelection.week')
105
- "
106
- @change="weekStatChange"
107
- ></el-date-picker>
108
- <div class="intervalCenter">-</div>
109
- <el-date-picker
110
- :shortcuts="{ firstDayOfWeek: 1 } && { firstDayOfWeek: 1 }.shortcuts"
111
- :disabled-date="
112
- { firstDayOfWeek: 1 } && { firstDayOfWeek: 1 }.disabledDate
113
- "
114
- :cell-class-name="
115
- { firstDayOfWeek: 1 } && { firstDayOfWeek: 1 }.cellClassName
116
- "
117
- v-model="weekDate"
118
- :type="colFieldSetting.options.showType"
119
- :is-range="colFieldSetting.options.range"
120
- :placeholder="colFieldSetting.options.placeholder"
121
- :start-placeholder="colFieldSetting.options.startPlaceholder"
122
- :end-placeholder="colFieldSetting.options.endPlaceholder"
123
- :readonly="colFieldSetting.options.readonly"
124
- :disabled="colFieldSetting.options.disabled"
125
- :editable="colFieldSetting.options.editable"
126
- :size="
127
- colFieldSetting.options.size ? colFieldSetting.options.size : 'small'
128
- "
129
- :clearable="colFieldSetting.options.clearable"
130
- :format="
131
- 'yyyy' +
132
- $t('IntervalSelection.auxiliary') +
133
- 'WW' +
134
- $t('IntervalSelection.week')
135
- "
136
- @change="weekChange"
137
- ></el-date-picker>
138
- </div>
139
- <!-- 月份选择 -->
140
- <div
141
- v-else-if="colFieldSetting.options.showType === 'monthrange'"
142
- class="select"
143
- >
144
- <el-date-picker
145
- v-model="monthStareDate"
146
- type="month"
147
- :is-range="colFieldSetting.options.range"
148
- :placeholder="colFieldSetting.options.placeholder"
149
- :start-placeholder="colFieldSetting.options.startPlaceholder"
150
- :end-placeholder="colFieldSetting.options.endPlaceholder"
151
- :readonly="colFieldSetting.options.readonly"
152
- :disabled="colFieldSetting.options.disabled"
153
- :editable="colFieldSetting.options.editable"
154
- :clearable="colFieldSetting.options.clearable"
155
- :size="
156
- colFieldSetting.options.size ? colFieldSetting.options.size : 'small'
157
- "
158
- value-format="timestamp"
159
- @change="monthStatChange"
160
- />
161
- <div class="intervalCenter">-</div>
162
- <el-date-picker
163
- v-model="monthDate"
164
- type="month"
165
- :is-range="colFieldSetting.options.range"
166
- :placeholder="colFieldSetting.options.placeholder"
167
- :start-placeholder="colFieldSetting.options.startPlaceholder"
168
- :end-placeholder="colFieldSetting.options.endPlaceholder"
169
- :readonly="colFieldSetting.options.readonly"
170
- :disabled="colFieldSetting.options.disabled"
171
- :editable="colFieldSetting.options.editable"
172
- :clearable="colFieldSetting.options.clearable"
173
- :size="
174
- colFieldSetting.options.size ? colFieldSetting.options.size : 'small'
175
- "
176
- @change="monthChange"
177
- />
178
- </div>
179
- <div v-else style="width: 100%; height: 100%">
180
- <el-date-picker
181
- v-model="datStareDate"
182
- :type="colFieldSetting.options.showType"
183
- :is-range="colFieldSetting.options.range"
184
- :placeholder="colFieldSetting.options.placeholder"
185
- :start-placeholder="colFieldSetting.options.startPlaceholder"
186
- :end-placeholder="colFieldSetting.options.endPlaceholder"
187
- :readonly="colFieldSetting.options.readonly"
188
- :disabled="colFieldSetting.options.disabled"
189
- :size="
190
- colFieldSetting.options.size ? colFieldSetting.options.size : 'small'
191
- "
192
- :editable="colFieldSetting.options.editable"
193
- :clearable="colFieldSetting.options.clearable"
194
- value-format="timestamp"
195
- style="width: 100%"
196
- @change="changeForm"
197
- />
198
- </div>
199
- </div>
200
- </template>
201
-
202
- <script>
203
- import { $on, $off, $once, $emit } from '../../utils/gogocodeTransfer'
204
- // import quarterScope from './quarterScope'
205
- import {
206
- getFirstDayOfSeason,
207
- getWeekOfSeason,
208
- formatTimefn,
209
- getDateRangeSelectorDefaultValue,
210
- } from '../../../src/utils/range-selector'
211
- export default {
212
- name: 'SectionDate',
213
- components: {
214
- // quarterScope,
215
- },
216
- props: {
217
- // 组件数据项目
218
- colFieldSetting: {
219
- type: Object,
220
- default: null,
221
- },
222
- },
223
- data() {
224
- return {
225
- modelValue: {},
226
- startDate: '',
227
- endDate: '',
228
- weekStareDate: '',
229
- weekDate: '',
230
- monthStareDate: '',
231
- monthDate: '',
232
- datStareDate: [],
233
- yearStartDate: '',
234
- yearDate: '',
235
- ScopeStartDate: '',
236
- ScopeEndDate: '',
237
- pickerOptions: {
238
- disabledDate(time) {
239
- return time.getFullYear() < 2000
240
- },
241
- },
242
- fordateParams: '',
243
- }
244
- },
245
- watch: {
246
- datStareDate: {
247
- handler(newValue) {
248
- this.startDate = this.formatTimefn(
249
- this.colFieldSetting.options.format,
250
- newValue[0]
251
- )
252
- this.endDate = this.formatTimefn(
253
- this.colFieldSetting.options.format,
254
- newValue[1]
255
- )
256
- },
257
- immediate: false,
258
- deep: true,
259
- },
260
- },
261
- created() {
262
- this.setTimeScope()
263
- },
264
- methods: {
265
- // 时间格式处理函数
266
- formatTimefn(format, dateTime) {
267
- return formatTimefn(format, dateTime)
268
- },
269
- getFirstDayOfSeason(date) {
270
- return getFirstDayOfSeason(date)
271
- },
272
- getWeekOfSeason(date) {
273
- return getWeekOfSeason(date)
274
- },
275
- // 填充默认值
276
- setTimeScope() {
277
- const dataOptions = this.colFieldSetting.options
278
- const defaultValueMap = getDateRangeSelectorDefaultValue(
279
- dataOptions.stareScopeTimeType,
280
- dataOptions.format
281
- )
282
- if (defaultValueMap) {
283
- const startTimeTemp = defaultValueMap.startTimeTemp
284
- const endTimeTemp = defaultValueMap.endTimeTemp
285
- const myStartDate = defaultValueMap.startDate
286
- const myEndDate = defaultValueMap.endDate
287
- if (
288
- dataOptions.showType === 'year' &&
289
- dataOptions.stareScopeTimeType !== '' &&
290
- dataOptions.stareScopeTimeType !== null &&
291
- dataOptions.stareScopeTimeType !== undefined
292
- ) {
293
- // 年范围选择器
294
- this.yearStartDate = startTimeTemp
295
- this.yearDate = endTimeTemp
296
- } else if (
297
- dataOptions.showType === 'quarterScope' &&
298
- dataOptions.stareScopeTimeType !== '' &&
299
- dataOptions.stareScopeTimeType !== null &&
300
- dataOptions.stareScopeTimeType !== undefined
301
- ) {
302
- // 季度范围选择器
303
- this.ScopeStartDate = startTimeTemp
304
- this.ScopeEndDate = endTimeTemp
305
- } else if (
306
- dataOptions.showType === 'week' &&
307
- dataOptions.stareScopeTimeType !== '' &&
308
- dataOptions.stareScopeTimeType !== null &&
309
- dataOptions.stareScopeTimeType !== undefined
310
- ) {
311
- // 周范围选择器
312
- this.weekStareDate = startTimeTemp
313
- this.weekDate = endTimeTemp
314
- } else if (
315
- dataOptions.showType === 'monthrange' &&
316
- dataOptions.stareScopeTimeType !== '' &&
317
- dataOptions.stareScopeTimeType !== null &&
318
- dataOptions.stareScopeTimeType !== undefined
319
- ) {
320
- // 月份范围选择器
321
- this.monthStareDate = startTimeTemp
322
- this.monthDate = endTimeTemp
323
- } else if (
324
- dataOptions.showType === 'daterange' &&
325
- dataOptions.stareScopeTimeType !== '' &&
326
- dataOptions.stareScopeTimeType !== null &&
327
- dataOptions.stareScopeTimeType !== undefined
328
- ) {
329
- // 日期范围选择器
330
- this.datStareDate = [startTimeTemp, endTimeTemp]
331
- }
332
- this.startDate = myStartDate
333
- this.endDate = myEndDate
334
- }
335
- this.changeForm()
336
- },
337
- getTimeTamp(date) {
338
- return new Date(date).getTime()
339
- },
340
- onChangeStatYear() {
341
- this.startDate = this.formatTimefn(
342
- this.colFieldSetting.options.format,
343
- new Date(this.yearStartDate).getTime()
344
- )
345
- this.changeForm()
346
- },
347
- onChangeEndYear() {
348
- const year = new Date(this.yearDate).getFullYear()
349
- if ((year % 4 === 0 && year % 100 !== 0) || year % 400 === 0) {
350
- // 是闰年
351
- this.forTimeParams =
352
- new Date(this.yearDate).getTime() + 365 * 24 * 60 * 60 * 1000
353
- } else {
354
- // 不是闰年
355
- this.forTimeParams =
356
- new Date(this.yearDate).getTime() + 364 * 24 * 60 * 60 * 1000
357
- }
358
- this.endDate = this.formatTimefn(
359
- this.colFieldSetting.options.format,
360
- this.forTimeParams
361
- )
362
- this.startDate = this.formatTimefn(
363
- this.colFieldSetting.options.format,
364
- new Date(this.yearStartDate).getTime()
365
- )
366
- this.changeForm()
367
- },
368
- // 选择周处理函数
369
- weekChange() {
370
- this.forTimeParams =
371
- new Date(this.weekDate).getTime() + 5 * 24 * 60 * 60 * 1000
372
- this.endDate = this.formatTimefn(
373
- this.colFieldSetting.options.format,
374
- this.forTimeParams
375
- )
376
- this.changeForm()
377
- },
378
- weekStatChange() {
379
- // 组件返回默认日期是周二
380
- const time = new Date(this.weekStareDate) - 24 * 60 * 60 * 1000
381
- this.startDate = this.formatTimefn(
382
- this.colFieldSetting.options.format,
383
- new Date(time).getTime()
384
- )
385
- this.changeForm()
386
- },
387
- changeForm() {
388
- const mondValue = [this.startDate, this.endDate]
389
- $emit(this, 'SectionDateTransfer', mondValue)
390
- },
391
- quarterStatrt(date) {
392
- this.startDate = this.formatTimefn(
393
- this.colFieldSetting.options.format,
394
- new Date(date).getTime()
395
- )
396
- this.changeForm()
397
- },
398
- quarterEnd(date) {
399
- this.endDate = this.formatTimefn(
400
- this.colFieldSetting.options.format,
401
- new Date(date).getTime()
402
- )
403
- this.changeForm()
404
- },
405
- monthChange() {
406
- const year = new Date(this.monthDate).getFullYear()
407
- const month = new Date(this.monthDate).getMonth() + 1
408
- const solarMonth = [1, 3, 5, 7, 8, 10, 12]
409
- if (
410
- this.monthStareDate !== '' &&
411
- this.monthStareDate !== null &&
412
- this.monthStareDate !== undefined
413
- ) {
414
- this.startDate = this.formatTimefn(
415
- this.colFieldSetting.options.format,
416
- this.monthStareDate
417
- )
418
- }
419
- if ((year % 4 === 0 && year % 100 !== 0) || year % 400 === 0) {
420
- // 是闰年
421
- if (month === 2) {
422
- this.forTimeParams =
423
- new Date(this.monthDate).getTime() + 28 * 24 * 60 * 60 * 1000
424
- } else if (solarMonth.indexOf(month) !== -1) {
425
- this.forTimeParams =
426
- new Date(this.monthDate).getTime() + 30 * 24 * 60 * 60 * 1000
427
- } else {
428
- this.forTimeParams =
429
- new Date(this.monthDate).getTime() + 29 * 24 * 60 * 60 * 1000
430
- }
431
- } else {
432
- // 不是闰年
433
- if (month === 2) {
434
- this.forTimeParams =
435
- new Date(this.monthDate).getTime() + 27 * 24 * 60 * 60 * 1000
436
- } else if (solarMonth.indexOf(month) !== -1) {
437
- this.forTimeParams =
438
- new Date(this.monthDate).getTime() + 30 * 24 * 60 * 60 * 1000
439
- } else {
440
- this.forTimeParams =
441
- new Date(this.monthDate).getTime() + 29 * 24 * 60 * 60 * 1000
442
- }
443
- }
444
- this.endDate = this.formatTimefn(
445
- this.colFieldSetting.options.format,
446
- this.forTimeParams
447
- )
448
- this.changeForm()
449
- },
450
- monthStatChange() {
451
- this.startDate = this.formatTimefn(
452
- this.colFieldSetting.options.format,
453
- this.monthStareDate
454
- )
455
- this.changeForm()
456
- },
457
- },
458
- emits: ['SectionDateTransfer'],
459
- }
460
- </script>
461
-
462
- <style lang="scss" scoped>
463
- .select {
464
- width: 100%;
465
- height: 100%;
466
- display: grid;
467
- grid-template-columns: calc(50% - 10px) 20px calc(50% - 10px);
468
- align-items: center;
469
- .intervalCenter {
470
- width: 100%;
471
- height: 100%;
472
- text-align: center;
473
- }
474
- }
475
- </style>
1
+ <template>
2
+ <div>
3
+ <!-- 年份选择器 -->
4
+ <div v-if="colFieldSetting.options.showType === 'year'" class="select">
5
+ <el-date-picker
6
+ :shortcuts="pickerOptions && pickerOptions.shortcuts"
7
+ :disabled-date="pickerOptions && pickerOptions.disabledDate"
8
+ :cell-class-name="pickerOptions && pickerOptions.cellClassName"
9
+ v-model="yearStartDate"
10
+ type="year"
11
+ :placeholder="colFieldSetting.options.startPlaceholder"
12
+ :disabled="colFieldSetting.options.disabled"
13
+ :clearable="colFieldSetting.options.clearable"
14
+ :size="
15
+ colFieldSetting.options.size ? colFieldSetting.options.size : 'small'
16
+ "
17
+ @change="onChangeStatYear"
18
+ ></el-date-picker>
19
+ <div class="intervalCenter">-</div>
20
+ <el-date-picker
21
+ :shortcuts="pickerOptions && pickerOptions.shortcuts"
22
+ :disabled-date="pickerOptions && pickerOptions.disabledDate"
23
+ :cell-class-name="pickerOptions && pickerOptions.cellClassName"
24
+ v-model="yearDate"
25
+ type="year"
26
+ :placeholder="colFieldSetting.options.endPlaceholder"
27
+ :disabled="colFieldSetting.options.disabled"
28
+ :clearable="colFieldSetting.options.clearable"
29
+ :size="
30
+ colFieldSetting.options.size ? colFieldSetting.options.size : 'small'
31
+ "
32
+ @change="onChangeEndYear"
33
+ ></el-date-picker>
34
+ </div>
35
+ <!-- 季度选择器 -->
36
+ <!--<div-->
37
+ <!-- v-else-if="colFieldSetting.options.showType === 'quarterScope'"-->
38
+ <!-- class="select"-->
39
+ <!--&gt;-->
40
+ <!-- <quarterScope-->
41
+ <!-- v-model:value="ScopeStartDate"-->
42
+ <!-- :size="-->
43
+ <!-- colFieldSetting.options.size ? colFieldSetting.options.size : 'small'-->
44
+ <!-- "-->
45
+ <!-- :disabled="colFieldSetting.options.disabled"-->
46
+ <!-- :clearable="colFieldSetting.options.clearable"-->
47
+ <!-- :placeholder="colFieldSetting.options.placeholder"-->
48
+ <!-- :format="-->
49
+ <!-- 'yyyy' +-->
50
+ <!-- $t('IntervalSelection.upload') +-->
51
+ <!-- 'q' +-->
52
+ <!-- $t('IntervalSelection.quarter')-->
53
+ <!-- "-->
54
+ <!-- style="width: 100%"-->
55
+ <!-- @change="quarterStatrt"-->
56
+ <!-- />-->
57
+ <!-- <div class="intervalCenter">-</div>-->
58
+ <!-- <quarterScope-->
59
+ <!-- v-model:value="ScopeEndDate"-->
60
+ <!-- :size="-->
61
+ <!-- colFieldSetting.options.size ? colFieldSetting.options.size : 'small'-->
62
+ <!-- "-->
63
+ <!-- :disabled="colFieldSetting.options.disabled"-->
64
+ <!-- :clearable="colFieldSetting.options.clearable"-->
65
+ <!-- :placeholder="colFieldSetting.options.placeholder"-->
66
+ <!-- style="width: 100%"-->
67
+ <!-- :format="-->
68
+ <!-- 'yyyy' +-->
69
+ <!-- $t('IntervalSelection.upload') +-->
70
+ <!-- 'q' +-->
71
+ <!-- $t('IntervalSelection.quarter')-->
72
+ <!-- "-->
73
+ <!-- :end-quarter-date="true"-->
74
+ <!-- @change="quarterEnd"-->
75
+ <!-- />-->
76
+ <!--</div>-->
77
+ <!-- 星期选择器 -->
78
+ <div v-else-if="colFieldSetting.options.showType === 'week'" class="select">
79
+ <el-date-picker
80
+ :shortcuts="{ firstDayOfWeek: 1 } && { firstDayOfWeek: 1 }.shortcuts"
81
+ :disabled-date="
82
+ { firstDayOfWeek: 1 } && { firstDayOfWeek: 1 }.disabledDate
83
+ "
84
+ :cell-class-name="
85
+ { firstDayOfWeek: 1 } && { firstDayOfWeek: 1 }.cellClassName
86
+ "
87
+ v-model="weekStareDate"
88
+ :type="colFieldSetting.options.showType"
89
+ :is-range="colFieldSetting.options.range"
90
+ :placeholder="colFieldSetting.options.placeholder"
91
+ :start-placeholder="colFieldSetting.options.startPlaceholder"
92
+ :end-placeholder="colFieldSetting.options.endPlaceholder"
93
+ :readonly="colFieldSetting.options.readonly"
94
+ :disabled="colFieldSetting.options.disabled"
95
+ :editable="colFieldSetting.options.editable"
96
+ :size="
97
+ colFieldSetting.options.size ? colFieldSetting.options.size : 'small'
98
+ "
99
+ :clearable="colFieldSetting.options.clearable"
100
+ :format="
101
+ 'yyyy' +
102
+ $t('IntervalSelection.auxiliary') +
103
+ 'WW' +
104
+ $t('IntervalSelection.week')
105
+ "
106
+ @change="weekStatChange"
107
+ ></el-date-picker>
108
+ <div class="intervalCenter">-</div>
109
+ <el-date-picker
110
+ :shortcuts="{ firstDayOfWeek: 1 } && { firstDayOfWeek: 1 }.shortcuts"
111
+ :disabled-date="
112
+ { firstDayOfWeek: 1 } && { firstDayOfWeek: 1 }.disabledDate
113
+ "
114
+ :cell-class-name="
115
+ { firstDayOfWeek: 1 } && { firstDayOfWeek: 1 }.cellClassName
116
+ "
117
+ v-model="weekDate"
118
+ :type="colFieldSetting.options.showType"
119
+ :is-range="colFieldSetting.options.range"
120
+ :placeholder="colFieldSetting.options.placeholder"
121
+ :start-placeholder="colFieldSetting.options.startPlaceholder"
122
+ :end-placeholder="colFieldSetting.options.endPlaceholder"
123
+ :readonly="colFieldSetting.options.readonly"
124
+ :disabled="colFieldSetting.options.disabled"
125
+ :editable="colFieldSetting.options.editable"
126
+ :size="
127
+ colFieldSetting.options.size ? colFieldSetting.options.size : 'small'
128
+ "
129
+ :clearable="colFieldSetting.options.clearable"
130
+ :format="
131
+ 'yyyy' +
132
+ $t('IntervalSelection.auxiliary') +
133
+ 'WW' +
134
+ $t('IntervalSelection.week')
135
+ "
136
+ @change="weekChange"
137
+ ></el-date-picker>
138
+ </div>
139
+ <!-- 月份选择 -->
140
+ <div
141
+ v-else-if="colFieldSetting.options.showType === 'monthrange'"
142
+ class="select"
143
+ >
144
+ <el-date-picker
145
+ v-model="monthStareDate"
146
+ type="month"
147
+ :is-range="colFieldSetting.options.range"
148
+ :placeholder="colFieldSetting.options.placeholder"
149
+ :start-placeholder="colFieldSetting.options.startPlaceholder"
150
+ :end-placeholder="colFieldSetting.options.endPlaceholder"
151
+ :readonly="colFieldSetting.options.readonly"
152
+ :disabled="colFieldSetting.options.disabled"
153
+ :editable="colFieldSetting.options.editable"
154
+ :clearable="colFieldSetting.options.clearable"
155
+ :size="
156
+ colFieldSetting.options.size ? colFieldSetting.options.size : 'small'
157
+ "
158
+ value-format="timestamp"
159
+ @change="monthStatChange"
160
+ />
161
+ <div class="intervalCenter">-</div>
162
+ <el-date-picker
163
+ v-model="monthDate"
164
+ type="month"
165
+ :is-range="colFieldSetting.options.range"
166
+ :placeholder="colFieldSetting.options.placeholder"
167
+ :start-placeholder="colFieldSetting.options.startPlaceholder"
168
+ :end-placeholder="colFieldSetting.options.endPlaceholder"
169
+ :readonly="colFieldSetting.options.readonly"
170
+ :disabled="colFieldSetting.options.disabled"
171
+ :editable="colFieldSetting.options.editable"
172
+ :clearable="colFieldSetting.options.clearable"
173
+ :size="
174
+ colFieldSetting.options.size ? colFieldSetting.options.size : 'small'
175
+ "
176
+ @change="monthChange"
177
+ />
178
+ </div>
179
+ <div v-else style="width: 100%; height: 100%">
180
+ <el-date-picker
181
+ v-model="datStareDate"
182
+ :type="colFieldSetting.options.showType"
183
+ :is-range="colFieldSetting.options.range"
184
+ :placeholder="colFieldSetting.options.placeholder"
185
+ :start-placeholder="colFieldSetting.options.startPlaceholder"
186
+ :end-placeholder="colFieldSetting.options.endPlaceholder"
187
+ :readonly="colFieldSetting.options.readonly"
188
+ :disabled="colFieldSetting.options.disabled"
189
+ :size="
190
+ colFieldSetting.options.size ? colFieldSetting.options.size : 'small'
191
+ "
192
+ :editable="colFieldSetting.options.editable"
193
+ :clearable="colFieldSetting.options.clearable"
194
+ value-format="timestamp"
195
+ style="width: 100%"
196
+ @change="changeForm"
197
+ />
198
+ </div>
199
+ </div>
200
+ </template>
201
+
202
+ <script>
203
+ import { $on, $off, $once, $emit } from '../../utils/gogocodeTransfer'
204
+ // import quarterScope from './quarterScope'
205
+ import {
206
+ getFirstDayOfSeason,
207
+ getWeekOfSeason,
208
+ formatTimefn,
209
+ getDateRangeSelectorDefaultValue,
210
+ } from '../../../src/utils/range-selector'
211
+ export default {
212
+ name: 'SectionDate',
213
+ components: {
214
+ // quarterScope,
215
+ },
216
+ props: {
217
+ // 组件数据项目
218
+ colFieldSetting: {
219
+ type: Object,
220
+ default: null,
221
+ },
222
+ },
223
+ data() {
224
+ return {
225
+ modelValue: {},
226
+ startDate: '',
227
+ endDate: '',
228
+ weekStareDate: '',
229
+ weekDate: '',
230
+ monthStareDate: '',
231
+ monthDate: '',
232
+ datStareDate: [],
233
+ yearStartDate: '',
234
+ yearDate: '',
235
+ ScopeStartDate: '',
236
+ ScopeEndDate: '',
237
+ pickerOptions: {
238
+ disabledDate(time) {
239
+ return time.getFullYear() < 2000
240
+ },
241
+ },
242
+ fordateParams: '',
243
+ }
244
+ },
245
+ watch: {
246
+ datStareDate: {
247
+ handler(newValue) {
248
+ this.startDate = this.formatTimefn(
249
+ this.colFieldSetting.options.format,
250
+ newValue[0]
251
+ )
252
+ this.endDate = this.formatTimefn(
253
+ this.colFieldSetting.options.format,
254
+ newValue[1]
255
+ )
256
+ },
257
+ immediate: false,
258
+ deep: true,
259
+ },
260
+ },
261
+ created() {
262
+ this.setTimeScope()
263
+ },
264
+ methods: {
265
+ // 时间格式处理函数
266
+ formatTimefn(format, dateTime) {
267
+ return formatTimefn(format, dateTime)
268
+ },
269
+ getFirstDayOfSeason(date) {
270
+ return getFirstDayOfSeason(date)
271
+ },
272
+ getWeekOfSeason(date) {
273
+ return getWeekOfSeason(date)
274
+ },
275
+ // 填充默认值
276
+ setTimeScope() {
277
+ const dataOptions = this.colFieldSetting.options
278
+ const defaultValueMap = getDateRangeSelectorDefaultValue(
279
+ dataOptions.stareScopeTimeType,
280
+ dataOptions.format
281
+ )
282
+ if (defaultValueMap) {
283
+ const startTimeTemp = defaultValueMap.startTimeTemp
284
+ const endTimeTemp = defaultValueMap.endTimeTemp
285
+ const myStartDate = defaultValueMap.startDate
286
+ const myEndDate = defaultValueMap.endDate
287
+ if (
288
+ dataOptions.showType === 'year' &&
289
+ dataOptions.stareScopeTimeType !== '' &&
290
+ dataOptions.stareScopeTimeType !== null &&
291
+ dataOptions.stareScopeTimeType !== undefined
292
+ ) {
293
+ // 年范围选择器
294
+ this.yearStartDate = startTimeTemp
295
+ this.yearDate = endTimeTemp
296
+ } else if (
297
+ dataOptions.showType === 'quarterScope' &&
298
+ dataOptions.stareScopeTimeType !== '' &&
299
+ dataOptions.stareScopeTimeType !== null &&
300
+ dataOptions.stareScopeTimeType !== undefined
301
+ ) {
302
+ // 季度范围选择器
303
+ this.ScopeStartDate = startTimeTemp
304
+ this.ScopeEndDate = endTimeTemp
305
+ } else if (
306
+ dataOptions.showType === 'week' &&
307
+ dataOptions.stareScopeTimeType !== '' &&
308
+ dataOptions.stareScopeTimeType !== null &&
309
+ dataOptions.stareScopeTimeType !== undefined
310
+ ) {
311
+ // 周范围选择器
312
+ this.weekStareDate = startTimeTemp
313
+ this.weekDate = endTimeTemp
314
+ } else if (
315
+ dataOptions.showType === 'monthrange' &&
316
+ dataOptions.stareScopeTimeType !== '' &&
317
+ dataOptions.stareScopeTimeType !== null &&
318
+ dataOptions.stareScopeTimeType !== undefined
319
+ ) {
320
+ // 月份范围选择器
321
+ this.monthStareDate = startTimeTemp
322
+ this.monthDate = endTimeTemp
323
+ } else if (
324
+ dataOptions.showType === 'daterange' &&
325
+ dataOptions.stareScopeTimeType !== '' &&
326
+ dataOptions.stareScopeTimeType !== null &&
327
+ dataOptions.stareScopeTimeType !== undefined
328
+ ) {
329
+ // 日期范围选择器
330
+ this.datStareDate = [startTimeTemp, endTimeTemp]
331
+ }
332
+ this.startDate = myStartDate
333
+ this.endDate = myEndDate
334
+ }
335
+ this.changeForm()
336
+ },
337
+ getTimeTamp(date) {
338
+ return new Date(date).getTime()
339
+ },
340
+ onChangeStatYear() {
341
+ this.startDate = this.formatTimefn(
342
+ this.colFieldSetting.options.format,
343
+ new Date(this.yearStartDate).getTime()
344
+ )
345
+ this.changeForm()
346
+ },
347
+ onChangeEndYear() {
348
+ const year = new Date(this.yearDate).getFullYear()
349
+ if ((year % 4 === 0 && year % 100 !== 0) || year % 400 === 0) {
350
+ // 是闰年
351
+ this.forTimeParams =
352
+ new Date(this.yearDate).getTime() + 365 * 24 * 60 * 60 * 1000
353
+ } else {
354
+ // 不是闰年
355
+ this.forTimeParams =
356
+ new Date(this.yearDate).getTime() + 364 * 24 * 60 * 60 * 1000
357
+ }
358
+ this.endDate = this.formatTimefn(
359
+ this.colFieldSetting.options.format,
360
+ this.forTimeParams
361
+ )
362
+ this.startDate = this.formatTimefn(
363
+ this.colFieldSetting.options.format,
364
+ new Date(this.yearStartDate).getTime()
365
+ )
366
+ this.changeForm()
367
+ },
368
+ // 选择周处理函数
369
+ weekChange() {
370
+ this.forTimeParams =
371
+ new Date(this.weekDate).getTime() + 5 * 24 * 60 * 60 * 1000
372
+ this.endDate = this.formatTimefn(
373
+ this.colFieldSetting.options.format,
374
+ this.forTimeParams
375
+ )
376
+ this.changeForm()
377
+ },
378
+ weekStatChange() {
379
+ // 组件返回默认日期是周二
380
+ const time = new Date(this.weekStareDate) - 24 * 60 * 60 * 1000
381
+ this.startDate = this.formatTimefn(
382
+ this.colFieldSetting.options.format,
383
+ new Date(time).getTime()
384
+ )
385
+ this.changeForm()
386
+ },
387
+ changeForm() {
388
+ const mondValue = [this.startDate, this.endDate]
389
+ $emit(this, 'SectionDateTransfer', mondValue)
390
+ },
391
+ quarterStatrt(date) {
392
+ this.startDate = this.formatTimefn(
393
+ this.colFieldSetting.options.format,
394
+ new Date(date).getTime()
395
+ )
396
+ this.changeForm()
397
+ },
398
+ quarterEnd(date) {
399
+ this.endDate = this.formatTimefn(
400
+ this.colFieldSetting.options.format,
401
+ new Date(date).getTime()
402
+ )
403
+ this.changeForm()
404
+ },
405
+ monthChange() {
406
+ const year = new Date(this.monthDate).getFullYear()
407
+ const month = new Date(this.monthDate).getMonth() + 1
408
+ const solarMonth = [1, 3, 5, 7, 8, 10, 12]
409
+ if (
410
+ this.monthStareDate !== '' &&
411
+ this.monthStareDate !== null &&
412
+ this.monthStareDate !== undefined
413
+ ) {
414
+ this.startDate = this.formatTimefn(
415
+ this.colFieldSetting.options.format,
416
+ this.monthStareDate
417
+ )
418
+ }
419
+ if ((year % 4 === 0 && year % 100 !== 0) || year % 400 === 0) {
420
+ // 是闰年
421
+ if (month === 2) {
422
+ this.forTimeParams =
423
+ new Date(this.monthDate).getTime() + 28 * 24 * 60 * 60 * 1000
424
+ } else if (solarMonth.indexOf(month) !== -1) {
425
+ this.forTimeParams =
426
+ new Date(this.monthDate).getTime() + 30 * 24 * 60 * 60 * 1000
427
+ } else {
428
+ this.forTimeParams =
429
+ new Date(this.monthDate).getTime() + 29 * 24 * 60 * 60 * 1000
430
+ }
431
+ } else {
432
+ // 不是闰年
433
+ if (month === 2) {
434
+ this.forTimeParams =
435
+ new Date(this.monthDate).getTime() + 27 * 24 * 60 * 60 * 1000
436
+ } else if (solarMonth.indexOf(month) !== -1) {
437
+ this.forTimeParams =
438
+ new Date(this.monthDate).getTime() + 30 * 24 * 60 * 60 * 1000
439
+ } else {
440
+ this.forTimeParams =
441
+ new Date(this.monthDate).getTime() + 29 * 24 * 60 * 60 * 1000
442
+ }
443
+ }
444
+ this.endDate = this.formatTimefn(
445
+ this.colFieldSetting.options.format,
446
+ this.forTimeParams
447
+ )
448
+ this.changeForm()
449
+ },
450
+ monthStatChange() {
451
+ this.startDate = this.formatTimefn(
452
+ this.colFieldSetting.options.format,
453
+ this.monthStareDate
454
+ )
455
+ this.changeForm()
456
+ },
457
+ },
458
+ emits: ['SectionDateTransfer'],
459
+ }
460
+ </script>
461
+
462
+ <style lang="scss" scoped>
463
+ .select {
464
+ width: 100%;
465
+ height: 100%;
466
+ display: grid;
467
+ grid-template-columns: calc(50% - 10px) 20px calc(50% - 10px);
468
+ align-items: center;
469
+ .intervalCenter {
470
+ width: 100%;
471
+ height: 100%;
472
+ text-align: center;
473
+ }
474
+ }
475
+ </style>