n20-common-lib 2.4.59 → 2.4.61

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/package.json CHANGED
@@ -1,10 +1,11 @@
1
1
  {
2
2
  "name": "n20-common-lib",
3
- "version": "2.4.59",
3
+ "version": "2.4.61",
4
4
  "private": false,
5
5
  "main": "src/index.js",
6
6
  "scripts": {
7
7
  "dev": "vue-cli-service serve --doc",
8
+ "build:docs": "vue-cli-service build --doc",
8
9
  "serve": "vue-cli-service serve",
9
10
  "serve:theme": "vue-cli-service serve --testTheme",
10
11
  "test": "vue-cli-service serve --test",
@@ -18,6 +18,28 @@
18
18
 
19
19
  <script>
20
20
  import { $lc } from '../../utils/i18n/index'
21
+ import dayjs from 'dayjs'
22
+ let startDate = ''
23
+
24
+ const onPick = ({ maxDate, minDate }) => {
25
+ startDate = minDate.getMonth() + 1 + '-' + minDate.getDate()
26
+ let startSh = shortcuts_2.find((s) => s.text.includes($lc('开始')))
27
+ startSh.text = startDate + $lc('开始')
28
+ startSh.onClick = (picker) => {
29
+ const start = dayjs(minDate).format('YYYY-MM-DD HH:mm:ss')
30
+ const end = dayjs(minDate).add(100, 'year').format('YYYY-MM-DD HH:mm:ss')
31
+ picker.$emit('pick', [start, end])
32
+ }
33
+
34
+ let endSh = shortcuts_2.find((s) => s.text.includes($lc('截止')))
35
+ endSh.text = startDate + $lc('截止')
36
+ endSh.onClick = (picker) => {
37
+ const end = dayjs(minDate).format('YYYY-MM-DD HH:mm:ss')
38
+ const start = dayjs(minDate).subtract(100, 'year').format('YYYY-MM-DD HH:mm:ss')
39
+ picker.$emit('pick', [start, end])
40
+ }
41
+ }
42
+
21
43
  let disabledDate_1 = (t) => {
22
44
  let now = new Date()
23
45
  now.setHours(0, 0, -1)
@@ -28,44 +50,7 @@ let disabledDate_2 = (t) => {
28
50
  now.setHours(23, 59, 59)
29
51
  return t > now
30
52
  }
31
- let shortcuts_1 = [
32
- {
33
- text: $lc('最近一月'),
34
- onClick(picker) {
35
- const start = new Date()
36
- start.setMonth(start.getMonth() - 1)
37
- start.setHours(0, 0, 0)
38
- picker.$emit('pick', start)
39
- }
40
- },
41
- {
42
- text: $lc('最近三月'),
43
- onClick(picker) {
44
- const start = new Date()
45
- start.setMonth(start.getMonth() - 3)
46
- start.setHours(0, 0, 0)
47
- picker.$emit('pick', start)
48
- }
49
- },
50
- {
51
- text: $lc('最近六月'),
52
- onClick(picker) {
53
- const start = new Date()
54
- start.setMonth(start.getMonth() - 6)
55
- start.setHours(0, 0, 0)
56
- picker.$emit('pick', start)
57
- }
58
- },
59
- {
60
- text: $lc('最近一年'),
61
- onClick(picker) {
62
- const start = new Date()
63
- start.setFullYear(start.getFullYear() - 1)
64
- start.setHours(0, 0, 0)
65
- picker.$emit('pick', start)
66
- }
67
- }
68
- ]
53
+
69
54
  let shortcuts_2 = [
70
55
  {
71
56
  text: $lc('最近一月'),
@@ -110,6 +95,22 @@ let shortcuts_2 = [
110
95
  end.setHours(23, 59, 59)
111
96
  picker.$emit('pick', [start, end])
112
97
  }
98
+ },
99
+ {
100
+ text: $lc('今天开始'),
101
+ onClick(picker) {
102
+ const start = dayjs().format('YYYY-MM-DD HH:mm:ss')
103
+ const end = dayjs().add(99, 'year').format('YYYY-MM-DD HH:mm:ss')
104
+ picker.$emit('pick', [start, end])
105
+ }
106
+ },
107
+ {
108
+ text: $lc('今天截止'),
109
+ onClick(picker) {
110
+ const end = dayjs().format('YYYY-MM-DD HH:mm:ss')
111
+ const start = dayjs().subtract(100, 'year').format('YYYY-MM-DD HH:mm:ss')
112
+ picker.$emit('pick', [start, end])
113
+ }
113
114
  }
114
115
  ]
115
116
 
@@ -118,7 +119,10 @@ export default {
118
119
  props: {
119
120
  type: {
120
121
  type: String,
121
- default: 'date'
122
+ default: 'daterange',
123
+ validator: (value) => {
124
+ return ['daterange', 'datetimerange', 'monthrange'].includes(value)
125
+ }
122
126
  },
123
127
  value: {
124
128
  type: [String, Number, Date],
@@ -159,18 +163,18 @@ export default {
159
163
  },
160
164
  data() {
161
165
  let shortcuts = undefined
162
- if (this.shortcuts && ['date', 'datetime'].includes(this.type)) shortcuts = shortcuts_1
163
166
  if (this.shortcuts && ['daterange', 'datetimerange'].includes(this.type)) shortcuts = shortcuts_2
164
167
 
165
168
  this.pickerOptionsAs = Object.assign(
166
169
  {
167
170
  disabledDate: this.minNow ? disabledDate_1 : this.maxNow ? disabledDate_2 : undefined,
168
- shortcuts
171
+ shortcuts,
172
+ onPick
169
173
  },
170
174
  this.pickerOptions
171
175
  )
172
176
 
173
- this.listeners = Object.assign({}, this.$listeners, { input: () => {}, change: () => {} })
177
+ this.listeners = Object.assign({}, this.$listeners, { input: () => {}, change: () => {}, blur: this.HandleBlur })
174
178
  return {}
175
179
  },
176
180
  computed: {
@@ -198,11 +202,12 @@ export default {
198
202
  let D = end.getDate()
199
203
  let str = `${Y}-${M > 9 ? M : '0' + M}-${D > 9 ? D : '0' + D}`
200
204
  if (this.valueFormat === 'yyyy-MM-dd HH:mm:ss') str = str + ' 23:59:59'
201
-
205
+ startDate = val[0]
202
206
  this.$emit('update:start-date', val[0])
203
207
  this.$emit('update:end-date', str)
204
208
  this.$emit('change', [val[0], str])
205
209
  } else {
210
+ startDate = val[0]
206
211
  this.$emit('update:start-date', val[0])
207
212
  this.$emit('update:end-date', val[1])
208
213
  this.$emit('change', val)
@@ -218,6 +223,24 @@ export default {
218
223
  }
219
224
  }
220
225
  }
226
+ },
227
+ methods: {
228
+ HandleBlur() {
229
+ let startSh = shortcuts_2.find((s) => s.text.includes($lc('开始')))
230
+ let endSh = shortcuts_2.find((s) => s.text.includes($lc('截止')))
231
+ startSh.text = $lc('今天开始')
232
+ startSh.onClick = (picker) => {
233
+ const start = dayjs().format('YYYY-MM-DD HH:mm:ss')
234
+ const end = dayjs().add(100, 'year').format('YYYY-MM-DD HH:mm:ss')
235
+ picker.$emit('pick', [start, end])
236
+ }
237
+ endSh.text = $lc('今天截止')
238
+ endSh.onClick = (picker) => {
239
+ const end = dayjs().format('YYYY-MM-DD HH:mm:ss')
240
+ const start = dayjs().subtract(100, 'year').format('YYYY-MM-DD HH:mm:ss')
241
+ picker.$emit('pick', [start, end])
242
+ }
243
+ }
221
244
  }
222
245
  }
223
246
  </script>
@@ -117,6 +117,11 @@ export default {
117
117
  clearSelect: {
118
118
  type: Boolean,
119
119
  default: true
120
+ },
121
+ // 筛选条件只输出当前筛选的单个条件,默认为全部条件
122
+ isFiliterSingle: {
123
+ type: Boolean,
124
+ default: false
120
125
  }
121
126
  },
122
127
  data() {
@@ -192,7 +197,9 @@ export default {
192
197
  })
193
198
  this.$emit('sort-change-method', orders)
194
199
  },
195
- filterChange({ filterList }) {
200
+ filterChange(data) {
201
+ const { filterList } = data
202
+ // 输出全部条件
196
203
  const obj = {}
197
204
  // 复制默认筛选条件为空
198
205
  this.columns.forEach((item) => {
@@ -207,7 +214,18 @@ export default {
207
214
  this.$set(obj, item.field, item.values && item.values[0])
208
215
  }
209
216
  })
210
- this.$emit('filter-change-method', obj)
217
+ // 输出单个条件
218
+ const singleObj = {}
219
+ for (let key in obj) {
220
+ if (key === data.field) {
221
+ singleObj[data.field] = obj[data.field]
222
+ }
223
+ }
224
+ if (this.isFiliterSingle) {
225
+ this.$emit('filter-change-method', singleObj)
226
+ } else {
227
+ this.$emit('filter-change-method', obj)
228
+ }
211
229
  },
212
230
  handleSelectionChange() {
213
231
  const val = this.$refs.vxeTable.getCheckboxRecords()
@@ -2,20 +2,22 @@
2
2
  <el-carousel height="50px" :interval="3000" direction="vertical" indicator-position="none" :autoplay="true">
3
3
  <el-carousel-item v-for="tip in tips" :key="tip.id">
4
4
  <div v-if="tip.isShow === '1'" v-title:br="list" :class="`tip_color_${tip.style || 'default'}`">
5
- {{ tip.busCode | busType }}
5
+ {{ tip.busNname }}{{ enumData[tip.busState]
6
+ }}{{ tip.busNname === $lc('财司系统') ? '(' + tip.currency + ')' : ''
7
+ }}{{ tip.isError === '1' ? '(有异常)' : '' }}
6
8
  </div>
7
9
  </el-carousel-item>
8
10
  </el-carousel>
9
11
  </template>
10
12
 
11
13
  <script>
14
+ import { $lc } from '../../utils/i18n/index'
12
15
  import axios from '../../utils/axios'
13
16
  import getJsonc from '../../assets/getJsonc.js'
14
17
  import cloneDeep from 'lodash/cloneDeep'
15
- let filterData
16
18
  let enumData = {
17
- D001: '营业中',
18
- D002: '日终处理',
19
+ D001: '营业阶段',
20
+ D002: '日终阶段',
19
21
  D003: '业务截止',
20
22
  D004: '营业结束',
21
23
  D005: '暂停营业',
@@ -24,29 +26,6 @@ let enumData = {
24
26
  }
25
27
  export default {
26
28
  name: 'OperatingStatus',
27
- filters: {
28
- busType(code) {
29
- let value = ''
30
- let item
31
- switch (code) {
32
- case 'D001':
33
- item = filterData.find((c) => c.busCode === 'D001')
34
- value = `${item.busNname}${enumData[item.busState]}${item.isError === '1' ? '(有异常)' : ''}`
35
- break
36
- case 'D002':
37
- item = filterData.find((c) => c.busCode === 'D002')
38
- value = `${item.busNname}${enumData[item.busState]}${item.isError === '1' ? '(有异常)' : ''}`
39
- break
40
- case 'ce001':
41
- item = filterData.find((c) => c.busCode === 'ce001')
42
- value = `${item.busNname}${enumData[item.busState]}${item.isError === '1' ? '(有异常)' : ''}`
43
- break
44
- default:
45
- break
46
- }
47
- return value
48
- }
49
- },
50
29
  data() {
51
30
  return {
52
31
  enumData,
@@ -81,13 +60,15 @@ export default {
81
60
  * 获取营业状态
82
61
  */
83
62
  async getOperatingStatus() {
84
- const { data } = await axios.get(`/bems/portal/portalTopShow/getShowTopAll`, null, { loading: false })
63
+ const { data } = await axios.get(`/bems/portal/portalTopShow/getShowTopAll`, null, {
64
+ loading: false,
65
+ onMsg: true
66
+ })
85
67
  this.tips = data
86
- filterData = data
87
68
  this.list = cloneDeep(data)
88
69
  .map((tip) => {
89
- return `${tip.createTime}${tip.busNname}${enumData[tip.busState]}${
90
- tip.busCode !== 'D001' ? tip.currency || '' : ''
70
+ return `${tip.updateTime || tip.createtime}${tip.busNname}${enumData[tip.busState]}${
71
+ tip.busNname === $lc('财司系统') ? '(' + tip.currency + ')' : ''
91
72
  }`
92
73
  })
93
74
  .join(',')
@@ -98,7 +79,7 @@ export default {
98
79
 
99
80
  <style scoped>
100
81
  .el-carousel {
101
- width: 120px;
82
+ width: 180px;
102
83
  }
103
84
  .el-carousel__item div {
104
85
  font-size: 14px;