|
@@ -24,9 +24,9 @@
|
|
{{ sc.label }}
|
|
{{ sc.label }}
|
|
<el-select
|
|
<el-select
|
|
v-if="Array.isArray(sc.options) && sc.options.length > 1"
|
|
v-if="Array.isArray(sc.options) && sc.options.length > 1"
|
|
- v-model="sc.selected"
|
|
|
|
|
|
+ :value="sc.selected"
|
|
class="el-select-w120"
|
|
class="el-select-w120"
|
|
- @change="onSelectedChange"
|
|
|
|
|
|
+ @input="onSelectedChange(sc, $event)"
|
|
:disabled="disabled || !sc.checked"
|
|
:disabled="disabled || !sc.checked"
|
|
size="mini"
|
|
size="mini"
|
|
:placeholder="'0' + sc.optionsUnit">
|
|
:placeholder="'0' + sc.optionsUnit">
|
|
@@ -380,6 +380,7 @@ export default {
|
|
disabled: item.disabled,
|
|
disabled: item.disabled,
|
|
}
|
|
}
|
|
}).filter(item => !item.hide).sort((a, b) => a.s_count_year - b.s_count_year)
|
|
}).filter(item => !item.hide).sort((a, b) => a.s_count_year - b.s_count_year)
|
|
|
|
+ obj.optionsValueList = obj.options.map(r => r.value)
|
|
|
|
|
|
// 3. 数据获取和赋值问题
|
|
// 3. 数据获取和赋值问题
|
|
|
|
|
|
@@ -450,7 +451,8 @@ export default {
|
|
onScCheckboxChange(sc, e) {
|
|
onScCheckboxChange(sc, e) {
|
|
sc.checked = e
|
|
sc.checked = e
|
|
},
|
|
},
|
|
- onSelectedChange() {
|
|
|
|
|
|
+ onSelectedChange(sc, e) {
|
|
|
|
+ sc.selected = e
|
|
this.onChange()
|
|
this.onChange()
|
|
},
|
|
},
|
|
onChange() {
|
|
onChange() {
|
|
@@ -481,7 +483,7 @@ export default {
|
|
},
|
|
},
|
|
getState() {
|
|
getState() {
|
|
const { selectedInfoList } = this.getSelected()
|
|
const { selectedInfoList } = this.getSelected()
|
|
- return selectedInfoList.map(s => s.value)
|
|
|
|
|
|
+ return selectedInfoList.map(s => s.selected)
|
|
},
|
|
},
|
|
setState(selectedIds = []) {
|
|
setState(selectedIds = []) {
|
|
const target = selectedIds
|
|
const target = selectedIds
|
|
@@ -489,10 +491,11 @@ export default {
|
|
this.serviceList.forEach(service => {
|
|
this.serviceList.forEach(service => {
|
|
const childrenValue = []
|
|
const childrenValue = []
|
|
service.children.forEach(serve => {
|
|
service.children.forEach(serve => {
|
|
- const value = serve.value
|
|
|
|
- if (target.includes(value)) {
|
|
|
|
- childrenValue.push(value)
|
|
|
|
|
|
+ const t = serve.options.find(item => target.includes(item.value))
|
|
|
|
+ if (t) {
|
|
|
|
+ childrenValue.push(t.value)
|
|
serve.checked = true
|
|
serve.checked = true
|
|
|
|
+ serve.selected = t.value
|
|
}
|
|
}
|
|
})
|
|
})
|
|
service.childrenValue = childrenValue
|
|
service.childrenValue = childrenValue
|
|
@@ -502,14 +505,12 @@ export default {
|
|
const target = disabledIds
|
|
const target = disabledIds
|
|
if (!Array.isArray(target)) return
|
|
if (!Array.isArray(target)) return
|
|
this.serviceList.forEach(service => {
|
|
this.serviceList.forEach(service => {
|
|
- const childrenValue = []
|
|
|
|
service.children.forEach(serve => {
|
|
service.children.forEach(serve => {
|
|
- const value = serve.value
|
|
|
|
- if (target.includes(value)) {
|
|
|
|
|
|
+ const t = serve.options.find(item => target.includes(item.value))
|
|
|
|
+ if (t) {
|
|
serve.disabled = true
|
|
serve.disabled = true
|
|
}
|
|
}
|
|
})
|
|
})
|
|
- service.childrenValue = childrenValue
|
|
|
|
})
|
|
})
|
|
},
|
|
},
|
|
splitChunkWith(list, fn) {
|
|
splitChunkWith(list, fn) {
|