lw-cdp-ui 1.4.22 → 1.4.23
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/dist/components/lwBiChart/page.vue +71 -38
- package/dist/lw-cdp-ui.esm.js +391 -374
- package/dist/lw-cdp-ui.umd.js +13 -13
- package/dist/style.css +1 -1
- package/package.json +1 -1
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
<div v-if="item.data?.setting?.activeDateUnitFilter" class="filter-top">
|
|
12
12
|
<el-radio-group v-model="item.timeUnit" @change="changeTimeUnit(item, index)">
|
|
13
13
|
<el-radio-button :label="key" :value="value"
|
|
14
|
-
v-for="(value, key) in item.data?.setting?.optionalDateUnitRanges" />
|
|
14
|
+
v-for="(value, key) in item.data?.setting?.optionalDateUnitRanges" :key="key" />
|
|
15
15
|
<el-radio-button disabled
|
|
16
16
|
v-if="Object.keys(item.data?.setting?.optionalDateUnitRanges).length == 0">未选择周期列表</el-radio-button>
|
|
17
17
|
</el-radio-group>
|
|
@@ -160,60 +160,93 @@ export default {
|
|
|
160
160
|
removeChart(index) {
|
|
161
161
|
this.modelValue.splice(index, 1)
|
|
162
162
|
},
|
|
163
|
-
getFilter(filterControls) {
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
case 'DATA_PICKER':
|
|
167
|
-
case 'DATA_CASCADE':
|
|
168
|
-
if (control.dataPickerSetting.options.type == 'DICT') {
|
|
169
|
-
this.searchOptions.push({
|
|
170
|
-
label: control.name,
|
|
171
|
-
prop: `values.${control.dataPickerSetting.code}`,
|
|
172
|
-
renderType: 'select',
|
|
173
|
-
options: Object.entries(control.dataPickerSetting.options.dict).map(([key, value]) => ({
|
|
174
|
-
value: key,
|
|
175
|
-
label: value
|
|
176
|
-
})),
|
|
177
|
-
valueKey: 'value',
|
|
178
|
-
labelKey: 'label'
|
|
179
|
-
})
|
|
180
|
-
} else {
|
|
181
|
-
let list = await this.$api.dimensionChild.list({}, control.dataPickerSetting.options.dimensionTableId)
|
|
182
|
-
this.searchOptions.push({
|
|
183
|
-
label: control.name,
|
|
184
|
-
prop: `values.${control.dataPickerSetting.code}`,
|
|
185
|
-
renderType: 'select',
|
|
186
|
-
options: list.map(item => ({
|
|
187
|
-
value: item.id,
|
|
188
|
-
label: item.name
|
|
189
|
-
})),
|
|
190
|
-
valueKey: 'value',
|
|
191
|
-
labelKey: 'label'
|
|
192
|
-
})
|
|
193
|
-
}
|
|
163
|
+
async getFilter(filterControls) {
|
|
164
|
+
for (const control of filterControls) {
|
|
165
|
+
const { type } = control
|
|
194
166
|
|
|
167
|
+
const getOptions = async (setting) => {
|
|
168
|
+
const { type, dict, dataInterfaceUri, dimensionTableId } = setting.options
|
|
169
|
+
if (type === 'DICT') {
|
|
170
|
+
return Object.entries(dict).map(([key, value]) => ({ value: key, label: value }))
|
|
171
|
+
} else if (type === 'DATA_INTERFACE') {
|
|
172
|
+
const res = await this.$http.get(dataInterfaceUri)
|
|
173
|
+
return res.map((item) => ({ value: item.id, label: item.name }))
|
|
174
|
+
} else {
|
|
175
|
+
const res = await this.$api.dimensionChild.list({}, dimensionTableId)
|
|
176
|
+
return res.map((item) => ({ value: item.id, label: item.name }))
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
const getTreeOptions = async (setting) => {
|
|
181
|
+
const { type, dict, dataInterfaceUri, dimensionTableId } = setting.options
|
|
182
|
+
if (type === 'DICT') {
|
|
183
|
+
return Object.entries(dict).map(([key, value]) => ({ value: key, label: value }))
|
|
184
|
+
} else if (type === 'DATA_INTERFACE') {
|
|
185
|
+
const res = await this.$http.get(dataInterfaceUri)
|
|
186
|
+
return this.listToTree(res)
|
|
187
|
+
} else {
|
|
188
|
+
const res = await this.$api.dimensionChild.list({}, dimensionTableId)
|
|
189
|
+
return this.listToTree(res)
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
switch (type) {
|
|
194
|
+
case 'DATA_PICKER': {
|
|
195
|
+
const setting = control.dataPickerSetting
|
|
196
|
+
const options = await getOptions(setting)
|
|
197
|
+
this.searchOptions.push({
|
|
198
|
+
label: control.name,
|
|
199
|
+
prop: `values.${setting.code}`,
|
|
200
|
+
renderType: 'select',
|
|
201
|
+
options,
|
|
202
|
+
valueKey: 'value',
|
|
203
|
+
labelKey: 'label'
|
|
204
|
+
})
|
|
195
205
|
break
|
|
196
|
-
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
case 'DATA_CASCADE': {
|
|
209
|
+
const setting = control.dataPickerSetting
|
|
210
|
+
const items = await getTreeOptions(setting)
|
|
211
|
+
this.searchOptions.push({
|
|
212
|
+
label: control.name,
|
|
213
|
+
name: `values.${setting.code}`,
|
|
214
|
+
value: '',
|
|
215
|
+
component: 'treeSelect',
|
|
216
|
+
options: {
|
|
217
|
+
items,
|
|
218
|
+
placeholder: '请选择' + control.name,
|
|
219
|
+
checkStrictly: true
|
|
220
|
+
}
|
|
221
|
+
})
|
|
222
|
+
break
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
case 'DATA_INPUT': {
|
|
197
226
|
this.searchOptions.push({
|
|
198
227
|
label: control.name,
|
|
199
228
|
prop: `values.${control.dataInputSetting.code}`,
|
|
200
229
|
renderType: 'input'
|
|
201
230
|
})
|
|
202
231
|
break
|
|
203
|
-
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
case 'DATE_PICKER': {
|
|
235
|
+
const setting = control.datePickerSetting
|
|
204
236
|
this.searchOptions.push({
|
|
205
237
|
label: control.name,
|
|
206
|
-
prop: `ranges.${
|
|
238
|
+
prop: `ranges.${setting.code}`,
|
|
207
239
|
renderType: 'dateRange',
|
|
208
240
|
valueFormat: 'YYYY-MM-DDTHH:mm:ss.SSSZ'
|
|
209
241
|
})
|
|
210
|
-
this.globalFilter.ranges[
|
|
242
|
+
this.globalFilter.ranges[setting.code] = {
|
|
211
243
|
timeRange: {},
|
|
212
|
-
type:
|
|
244
|
+
type: setting.type
|
|
213
245
|
}
|
|
214
246
|
break
|
|
247
|
+
}
|
|
215
248
|
}
|
|
216
|
-
}
|
|
249
|
+
}
|
|
217
250
|
}
|
|
218
251
|
}
|
|
219
252
|
}
|