|
|
@@ -18,17 +18,23 @@
|
|
|
:tree-data="treeData"
|
|
|
tree-node-filter-prop="label"
|
|
|
:replace-fields="{children:'children', title:'label', key:'id', value: 'id' }"
|
|
|
+ @change="deptChange"
|
|
|
/>
|
|
|
</a-form-model-item>
|
|
|
- <a-form-model-item label="线别" prop="lineId">
|
|
|
+ <a-form-model-item label="线路" prop="lineId">
|
|
|
<j-list-select-tag
|
|
|
+ v-if="lineShow"
|
|
|
v-model="model.lineId"
|
|
|
+ :dept-id="model.deptId"
|
|
|
dict-code="line"
|
|
|
+ @selectChange="lineChange"
|
|
|
/>
|
|
|
</a-form-model-item>
|
|
|
<a-form-model-item label="站场区间" prop="stationId">
|
|
|
<j-list-select-tag
|
|
|
+ v-if="stationShow"
|
|
|
v-model="model.stationId"
|
|
|
+ :line-id="model.lineId"
|
|
|
dict-code="station"
|
|
|
/>
|
|
|
</a-form-model-item>
|
|
|
@@ -83,6 +89,8 @@ export default {
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
+ stationShow: false,
|
|
|
+ lineShow: false,
|
|
|
treeData: [],
|
|
|
labelCol: { span: 4 },
|
|
|
wrapperCol: { span: 19 },
|
|
|
@@ -117,7 +125,34 @@ export default {
|
|
|
created() {
|
|
|
this.loadTree()
|
|
|
},
|
|
|
+ watch: {
|
|
|
+ 'model.deptId': {
|
|
|
+ deep: true,
|
|
|
+ handler: function(newV, oldV) {
|
|
|
+ this.lineShow = false
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.lineShow = true
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ 'model.lineId': {
|
|
|
+ deep: true,
|
|
|
+ handler: function(newV, oldV) {
|
|
|
+ this.stationShow = false
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.stationShow = true
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
methods: {
|
|
|
+ lineChange() {
|
|
|
+ this.model.stationId = undefined
|
|
|
+ },
|
|
|
+ deptChange() {
|
|
|
+ this.model.lineId = undefined
|
|
|
+ this.model.stationId = undefined
|
|
|
+ },
|
|
|
loadTree() {
|
|
|
this.treeData = []
|
|
|
getAction(this.url.tree).then((res) => {
|