miaofuhao лет назад: 2
Родитель
Сommit
ddb1de951d

+ 3 - 3
CallCenterWeb.UI/RMYYAPP/pages/myTask/repairList/addRepair/pageData.js

@@ -1,4 +1,4 @@
1
-import {filterTreeDatas,filterTreeDatasNew, filterDepartTreeDatas,filterSelectData,filterMuterDatas} from '@/utils/dataTreating.js'
1
+import {filterTreeDatas,filterTreeDatasNew, filterDepartTreeDatas,filterSelectData,filterMuterDatas,filterGongDanTreeDatas} from '@/utils/dataTreating.js'
2 2
 import { http } from '@/utils/request';
3 3
 export default {
4 4
 	stepData: [{
@@ -31,7 +31,7 @@ export default {
31 31
 		}
32 32
 		http.get("GongDanType/GetList",params).then((res)=>{
33 33
 			if(res.state.toLowerCase() ==="success"){
34
-				dataOrderType = filterTreeDatas(res.data)
34
+				dataOrderType = filterGongDanTreeDatas(res.data,-1,'')
35 35
 				fn(dataOrderType,res.data)
36 36
 			}
37 37
 		})
@@ -40,7 +40,7 @@ export default {
40 40
 		let deptDataTree
41 41
 		http.get("Department/GetTreeList").then((res)=>{
42 42
 			if(res.state.toLowerCase() ==="success"){
43
-				deptDataTree = filterDepartTreeDatas(res.data,0)
43
+				deptDataTree = filterDepartTreeDatas(res.data,0,-1,'')
44 44
 				fn(deptDataTree,res.data)
45 45
 			}
46 46
 		})

+ 1 - 1
CallCenterWeb.UI/RMYYAPP/pages/myTask/vehicleSchedulList/applicantsList/addVehicle/pageData.js

@@ -49,7 +49,7 @@ export default {
49 49
 		let deptDataTree
50 50
 		http.get("Department/GetTreeList").then((res)=>{
51 51
 			if(res.state.toLowerCase() ==="success"){
52
-				deptDataTree = filterDepartTreeDatas(res.data,0)
52
+				deptDataTree = filterDepartTreeDatas(res.data,0,-1,'')
53 53
 				fn(deptDataTree,res.data)
54 54
 			}
55 55
 		})

+ 3 - 1
CallCenterWeb.UI/RMYYAPP/uni_modules/uni-data-picker/components/uni-data-pickerview/uni-data-picker.js

@@ -448,7 +448,7 @@ export default {
448 448
     _filterData(data, paths) {
449 449
       let dataList = []
450 450
       let hasNodes = true
451
-
451
+			// console.log(data, paths)
452 452
       dataList.push(data.filter((item) => {
453 453
         return (item.parent_value === null || item.parent_value === undefined || item.parent_value === '')
454 454
       }))
@@ -543,6 +543,8 @@ export default {
543 543
     },
544 544
     _processLocalData() {
545 545
       this._treeData = []
546
+			// console.log(this.localdata)
547
+			// console.log(this._treeData)
546 548
       this._extractTree(this.localdata, this._treeData)
547 549
 
548 550
       var inputValue = this.dataValue

+ 31 - 14
CallCenterWeb.UI/RMYYAPP/uni_modules/uni-data-picker/components/uni-data-pickerview/uni-data-pickerview.vue

@@ -74,11 +74,12 @@
74 74
 		data() {
75 75
 			return {
76 76
 				candidates:[],
77
+				searchSelectData:[],
77 78
 				nodeList:[],
79
+				
78 80
 			}
79 81
 		},
80 82
 		created() {
81
-			// console.log(this.showSearch)
82 83
 			if (this.managedMode) {
83 84
 				return
84 85
 			}
@@ -87,19 +88,35 @@
87 88
 			})
88 89
 		},
89 90
 		methods: {
91
+			
90 92
 			//搜索框选择员工
91 93
 			handleInput(e){
92 94
 				if(this.candidates.indexOf(e) != -1){
93 95
 					let index = this.candidates.indexOf(e);
94 96
 					let node = this.nodeList[index];
95
-					console.log(this.candidates.indexOf(e));
96
-					console.log(node);
97
-					this._dispatchEvent()
98
-					this.$emit('searchTrue', node)
99
-					// this.$emit('change', node,'search')
100
-					// this.$emit('datachange', node)
97
+					this.getSearchDataList(node)
98
+				}
99
+			},
100
+			getSearchDataList(node){
101
+				const posData = node.position.split('-')
102
+				this.dataList = []
103
+				let dataObj = {}
104
+				let dataSelectObj ={}
105
+				for(let i=1 ;i < posData.length; i++ ){
106
+					if(i===1){
107
+						dataObj = this.localdata
108
+						dataSelectObj = this.localdata[posData[i-1]*1]
109
+					}else {
110
+						dataObj = dataSelectObj.children
111
+						dataSelectObj = dataSelectObj.children[posData[i-1]*1]
112
+					}
113
+					this.dataList.push(dataObj)
114
+					this.selected.splice(this.selected.length-1,0,{
115
+						text:dataSelectObj.text,
116
+						value:dataSelectObj.value
117
+					})
101 118
 				}
102
-				//console.log(this.loadData());
119
+				this.handleNodeClick(node, node.zIndex, node.sort)
103 120
 			},
104 121
 			//点击选择组别
105 122
 			handleClick(item){
@@ -129,28 +146,30 @@
129 146
 				this.selectedIndex = index
130 147
 			},
131 148
 			handleNodeClick(item, i, j) {
132
-				
133 149
 				if (item.disable) {
134 150
 					return
135 151
 				}
136 152
 				const node = this.dataList[i][j]
137 153
 				const text = node[this.map.text]
138 154
 				const value = node[this.map.value]
155
+				
139 156
 				if (i < this.selected.length - 1) {
140 157
 					this.selected.splice(i, this.selected.length - i)
141 158
 					this.selected.push({
142 159
 						text,
143 160
 						value
144 161
 					})
145
-					// console.log(this.selected);
146 162
 				} else if (i === this.selected.length - 1) {
147 163
 					this.selected.splice(i, 1, {
148 164
 						text,
149 165
 						value
150 166
 					})
151
-					// console.log(this.selected);
152 167
 				}
153
-
168
+				if(node.children&&node.children.length>0){
169
+					this._updateBindData(node)
170
+					this.onSelectedChange(node, false)
171
+					return
172
+				}
154 173
 				if (node.isleaf) {
155 174
 					this.onSelectedChange(node, node.isleaf)
156 175
 					return
@@ -182,7 +201,6 @@
182 201
 					}, this._nodeWhere())
183 202
 					return
184 203
 				}
185
-
186 204
 				this.onSelectedChange(node, false)
187 205
 			},
188 206
 			updateData(data) {
@@ -201,7 +219,6 @@
201 219
 				if (!this._treeData.length) {
202 220
 					this.loadData()
203 221
 				} else {
204
-					//this.selected = data.selected
205 222
 					this._updateBindData()
206 223
 				}
207 224
 			},

+ 30 - 5
CallCenterWeb.UI/RMYYAPP/utils/dataTreating.js

@@ -4,11 +4,10 @@ export function filterTreeDatas(tree) {
4 4
 	  let j = -1
5 5
 	  for (const i in tree) { 
6 6
 	    j++
7
-			
8 7
 	    accessedRouters.push({
9 8
 	      value: tree[i].id, //tree[i].id
10 9
 	      text: tree[i].text,
11
-			id: tree[i].id //treeValue
10
+				id: tree[i].id ,//treeValue
12 11
 	    })
13 12
 	    if (tree[i].children) {
14 13
 	      accessedRouters[j].children = filterTreeDatas(tree[i].children)
@@ -17,6 +16,28 @@ export function filterTreeDatas(tree) {
17 16
 		
18 17
 	  return accessedRouters
19 18
 }
19
+export function filterGongDanTreeDatas(tree,zIndex,position) {
20
+	  const accessedRouters = []
21
+	  let j = -1
22
+		zIndex++
23
+	  for (const i in tree) { 
24
+	    j++
25
+	    accessedRouters.push({
26
+	      value: tree[i].id, //tree[i].id
27
+	      text: tree[i].text,
28
+				id: tree[i].id ,//treeValue
29
+				zIndex:zIndex,
30
+				sort:j,
31
+				position:position+i+'-'
32
+	    })
33
+	    if (tree[i].children) {
34
+	      accessedRouters[j].children = filterGongDanTreeDatas(tree[i].children,zIndex,accessedRouters[j].position)
35
+	    }
36
+			
37
+	  }
38
+		
39
+	  return accessedRouters
40
+}
20 41
 export function filterTreeDatasNew(tree) {
21 42
 	  const accessedRouters = []
22 43
 	  let j = -1
@@ -34,19 +55,23 @@ export function filterTreeDatasNew(tree) {
34 55
 
35 56
 	  return accessedRouters
36 57
 }
37
-export function filterDepartTreeDatas(tree,tid) {
58
+export function filterDepartTreeDatas(tree,tid,zIndex,position) {
38 59
 	  const accessedRouters = []
39 60
 	  let j = -1
40 61
 	  tid++
62
+		zIndex++
41 63
 	  for (const i in tree) { 
42 64
 	    j++
43 65
 		accessedRouters.push({
44 66
 		  value: tid+ '_' +tree[i].id,
45 67
 		  text: tree[i].text,
46
-		  id: tree[i].id
68
+		  id: tree[i].id,
69
+			zIndex:zIndex,
70
+			sort:j,
71
+			position:position+i+'-'
47 72
 		})
48 73
 	    if (tree[i].children) {
49
-	      accessedRouters[j].children = filterDepartTreeDatas(tree[i].children, tid)
74
+	      accessedRouters[j].children = filterDepartTreeDatas(tree[i].children, tid,zIndex,accessedRouters[j].position)
50 75
 	    }
51 76
 	  }
52 77
 	  return accessedRouters