safecheck-client 3.0.34-21 → 3.0.34-24
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 +3 -3
- package/src/App-/345/215/225/351/241/265/351/235/242/346/211/223/345/214/205/347/224/250.vue +55 -0
- package/src/App.vue +31 -31
- package/src/assets/123.png +0 -0
- package/src/assets/f8632d3c8c4c1cb68e99da754cab1a7.png +0 -0
- package/src/components/LoadData.vue +62 -0
- package/src/components/android/ImgSelfAndroid.vue +181 -181
- package/src/components/android/QRCode/QRCodeBinding.vue +247 -0
- package/src/components/android/QRCode/QRCodePage.vue +199 -0
- package/src/components/android/examples/SafeListExamples.vue +95 -0
- package/src/components/android/examples/UserExamples.vue +125 -0
- package/src/filiale/baiyin/android/AndroidDefectDeal.vue +633 -633
- package/src/filiale/baiyin/pc/CheckPlanAreaList.vue +485 -485
- package/src/filiale/baiyin/pc/CheckSearchUser.vue +1067 -1067
- package/src/filiale/baiyin/pc/DefectListNew.vue +597 -597
- package/src/filiale/baiyin/pc/DefectMainNew.vue +63 -63
- package/src/filiale/baiyin/pc/DefectPaperNew.vue +1052 -1052
- package/src/filiale/baiyin/pc/PaperList.vue +790 -790
- package/src/filiale/baiyin/pc/PlanChooser.vue +167 -167
- package/src/filiale/baiyin/pc/PlanManage.vue +834 -834
- package/src/filiale/baiyin/pc/RightTreeSafe.vue +348 -348
- package/src/filiale/baiyin/pc/RoleSelector.vue +160 -160
- package/src/filiale/fugou/pc/CheckBookSearchUser.vue +35 -15
- package/src/filiale/jiaxian/android/AddPlanItem.vue +447 -447
- package/src/filiale/jiaxian/android/SafecheckDevices.vue +1298 -1298
- package/src/filiale/jiaxian/android/SafecheckOrderV.vue +2811 -2811
- package/src/filiale/jiaxian/android/SafecheckUserInfo.vue +784 -784
- package/src/filiale/jiaxian/android.js +13 -13
- package/src/filiale/jiaxian/pc.js +12 -12
- package/src/filiale/kelai/pc/CheckPlanAreaList.vue +476 -476
- package/src/filiale/qingjian/android/PhoneUpUserinfo.vue +1270 -1270
- package/src/filiale/qingjian/android/SafecheckOrderV.vue +2844 -2844
- package/src/filiale/yangchunboneng/android/NewCheckpaperAndroid.vue +1362 -1362
- package/src/filiale/yangchunboneng/android/PhoneUpUserinfo.vue +1235 -1235
- package/src/filiale/yangchunboneng/android/SafecheckOrderV.vue +2845 -2845
- package/src/filiale/yangchunboneng/pc/CheckSearchUser.vue +1192 -1192
- package/src/main-/345/215/225/351/241/265/351/235/242/346/211/223/345/214/205/347/224/250.js +24 -0
- package/src/main.js +33 -33
- package/src/safecheck-android.js +4 -0
@@ -1,160 +1,160 @@
|
|
1
|
-
<template>
|
2
|
-
<div style="width: 100%;height: 100%">
|
3
|
-
<div class="col-sm-6 form-group" style="margin-bottom: 0px">
|
4
|
-
<label class="font_normal_body">公  司</label>
|
5
|
-
<right-tree-safe :width="leftWidth" @re-res="getRes" :resobjprop.sync="resobjprop"></right-tree-safe>
|
6
|
-
</div>
|
7
|
-
<div class="col-sm-6 form-group" style="margin-bottom: 0px">
|
8
|
-
<label class="font_normal_body">{{ roleLable }}</label>
|
9
|
-
<v-select :value="selVal" v-model='selVal'
|
10
|
-
:value-single="!valueMultiple"
|
11
|
-
class="select_list select"
|
12
|
-
:options='users' :placeholder='roleName'
|
13
|
-
:close-on-select = 'valueClose'
|
14
|
-
:multiple="valueMultiple"
|
15
|
-
:width="rightWidth"
|
16
|
-
@change="valuechange">
|
17
|
-
</v-select>
|
18
|
-
</div>
|
19
|
-
</div>
|
20
|
-
</template>
|
21
|
-
|
22
|
-
<script>
|
23
|
-
import {HttpResetClass} from 'vue-client'
|
24
|
-
|
25
|
-
export default {
|
26
|
-
name: "RoleSelector",
|
27
|
-
props: {
|
28
|
-
valueMultiple: {
|
29
|
-
type: Boolean,
|
30
|
-
default: false
|
31
|
-
},
|
32
|
-
roleName: {
|
33
|
-
type: String,
|
34
|
-
default: '安检员'
|
35
|
-
},
|
36
|
-
roleLable: {
|
37
|
-
type: String,
|
38
|
-
default: '安检员'
|
39
|
-
},
|
40
|
-
leftWidth: {
|
41
|
-
type: String,
|
42
|
-
default: '60%'
|
43
|
-
},
|
44
|
-
rightWidth: {
|
45
|
-
type: String,
|
46
|
-
default: '60%'
|
47
|
-
},
|
48
|
-
value: {
|
49
|
-
default: ''
|
50
|
-
},
|
51
|
-
resobjprop: {
|
52
|
-
default: {}
|
53
|
-
},
|
54
|
-
valueClose: {
|
55
|
-
type: Boolean,
|
56
|
-
default: true
|
57
|
-
}
|
58
|
-
},
|
59
|
-
data() {
|
60
|
-
return {
|
61
|
-
source: `tool.getChildrenOfResName($${this.roleName}$)`,
|
62
|
-
//source: `root.getResourceById($${this.$login.f.f_orgids.substring(0,this.$login.f.f_orgids.length-1)}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolesnames$).indexOf($${this.roleName}$) != -1)`,
|
63
|
-
allUsers: [],
|
64
|
-
users: [],
|
65
|
-
selVal: '',
|
66
|
-
organizationname:this.$login.f.f_fengongsi,
|
67
|
-
resids: [],
|
68
|
-
changeval: ''
|
69
|
-
}
|
70
|
-
},
|
71
|
-
watch: {
|
72
|
-
'value'(val) {
|
73
|
-
console.log("969696", val)
|
74
|
-
if (val) {
|
75
|
-
if (this.valueMultiple) {
|
76
|
-
|
77
|
-
} else {
|
78
|
-
this.selVal = val
|
79
|
-
}
|
80
|
-
|
81
|
-
}
|
82
|
-
}
|
83
|
-
},
|
84
|
-
async ready() {
|
85
|
-
await this.search()
|
86
|
-
await this.filterUser(this.resids)
|
87
|
-
},
|
88
|
-
methods: {
|
89
|
-
async search() {
|
90
|
-
let http = new HttpResetClass()
|
91
|
-
const res = await http.load('POST', '/rs/search', {
|
92
|
-
data: {
|
93
|
-
source: this.source,
|
94
|
-
userid: this.$login.f.id
|
95
|
-
}
|
96
|
-
}, {resolveMsg: null, rejectMsg: null})
|
97
|
-
this.allUsers = res.data
|
98
|
-
},
|
99
|
-
valuechange(val) {
|
100
|
-
console.log(`val instanceof Array======${!val instanceof Array}`)
|
101
|
-
if ((typeof val === 'object' && !val instanceof Array) || (val instanceof Event)) {
|
102
|
-
return
|
103
|
-
}
|
104
|
-
if (this.valueMultiple && Array.isArray(val)) {
|
105
|
-
if (val && val.length > 0) {
|
106
|
-
let valuesele = `(`
|
107
|
-
for (let i = 0; i < val.length; i++) {
|
108
|
-
valuesele += `'${val[i]}',`
|
109
|
-
}
|
110
|
-
this.value = valuesele.substring(0, valuesele.length - 1) + ')'
|
111
|
-
} else {
|
112
|
-
this.value = ''
|
113
|
-
}
|
114
|
-
} else {
|
115
|
-
this.value = val
|
116
|
-
}
|
117
|
-
// this.changeval = val
|
118
|
-
},
|
119
|
-
getRes(obj) {
|
120
|
-
this.resids = obj.resids
|
121
|
-
this.organizationname = obj.res[0]
|
122
|
-
this.filterUser(this.resids)
|
123
|
-
this.$dispatch('re-res', obj)
|
124
|
-
},
|
125
|
-
async filterUser(resids) {
|
126
|
-
// 处理第一次进入页面值异常问题
|
127
|
-
if (resids.length > 0 && typeof resids[0] == "object") {
|
128
|
-
resids = resids[0]
|
129
|
-
}
|
130
|
-
if (resids[0]) {
|
131
|
-
this.source = `tool.getChildrenOfResName($${this.roleName}$)`
|
132
|
-
await this.search()
|
133
|
-
}
|
134
|
-
this.users = []
|
135
|
-
this.allUsers.forEach(user => {
|
136
|
-
if (this.organizationname == user.organizationname || !user.organizationname){
|
137
|
-
this.users.push({label: user.name, value: user.name})
|
138
|
-
}
|
139
|
-
})
|
140
|
-
if (!this.valueMultiple && this.users.length > 0) {
|
141
|
-
this.users = [{label: '全部', value: ''}, ...this.users]
|
142
|
-
}
|
143
|
-
let temp = []
|
144
|
-
this.users = this.users.filter(item => {
|
145
|
-
if (!temp.includes(item.label)) {
|
146
|
-
temp.push(item.label)
|
147
|
-
return true
|
148
|
-
}
|
149
|
-
return false
|
150
|
-
})
|
151
|
-
this.$emit('alluser', this.allUsers)
|
152
|
-
//tag
|
153
|
-
}
|
154
|
-
}
|
155
|
-
}
|
156
|
-
</script>
|
157
|
-
|
158
|
-
<style scoped>
|
159
|
-
|
160
|
-
</style>
|
1
|
+
<template>
|
2
|
+
<div style="width: 100%;height: 100%">
|
3
|
+
<div class="col-sm-6 form-group" style="margin-bottom: 0px">
|
4
|
+
<label class="font_normal_body">公  司</label>
|
5
|
+
<right-tree-safe :width="leftWidth" @re-res="getRes" :resobjprop.sync="resobjprop"></right-tree-safe>
|
6
|
+
</div>
|
7
|
+
<div class="col-sm-6 form-group" style="margin-bottom: 0px">
|
8
|
+
<label class="font_normal_body">{{ roleLable }}</label>
|
9
|
+
<v-select :value="selVal" v-model='selVal'
|
10
|
+
:value-single="!valueMultiple"
|
11
|
+
class="select_list select"
|
12
|
+
:options='users' :placeholder='roleName'
|
13
|
+
:close-on-select = 'valueClose'
|
14
|
+
:multiple="valueMultiple"
|
15
|
+
:width="rightWidth"
|
16
|
+
@change="valuechange">
|
17
|
+
</v-select>
|
18
|
+
</div>
|
19
|
+
</div>
|
20
|
+
</template>
|
21
|
+
|
22
|
+
<script>
|
23
|
+
import {HttpResetClass} from 'vue-client'
|
24
|
+
|
25
|
+
export default {
|
26
|
+
name: "RoleSelector",
|
27
|
+
props: {
|
28
|
+
valueMultiple: {
|
29
|
+
type: Boolean,
|
30
|
+
default: false
|
31
|
+
},
|
32
|
+
roleName: {
|
33
|
+
type: String,
|
34
|
+
default: '安检员'
|
35
|
+
},
|
36
|
+
roleLable: {
|
37
|
+
type: String,
|
38
|
+
default: '安检员'
|
39
|
+
},
|
40
|
+
leftWidth: {
|
41
|
+
type: String,
|
42
|
+
default: '60%'
|
43
|
+
},
|
44
|
+
rightWidth: {
|
45
|
+
type: String,
|
46
|
+
default: '60%'
|
47
|
+
},
|
48
|
+
value: {
|
49
|
+
default: ''
|
50
|
+
},
|
51
|
+
resobjprop: {
|
52
|
+
default: {}
|
53
|
+
},
|
54
|
+
valueClose: {
|
55
|
+
type: Boolean,
|
56
|
+
default: true
|
57
|
+
}
|
58
|
+
},
|
59
|
+
data() {
|
60
|
+
return {
|
61
|
+
source: `tool.getChildrenOfResName($${this.roleName}$)`,
|
62
|
+
//source: `root.getResourceById($${this.$login.f.f_orgids.substring(0,this.$login.f.f_orgids.length-1)}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolesnames$).indexOf($${this.roleName}$) != -1)`,
|
63
|
+
allUsers: [],
|
64
|
+
users: [],
|
65
|
+
selVal: '',
|
66
|
+
organizationname:this.$login.f.f_fengongsi,
|
67
|
+
resids: [],
|
68
|
+
changeval: ''
|
69
|
+
}
|
70
|
+
},
|
71
|
+
watch: {
|
72
|
+
'value'(val) {
|
73
|
+
console.log("969696", val)
|
74
|
+
if (val) {
|
75
|
+
if (this.valueMultiple) {
|
76
|
+
|
77
|
+
} else {
|
78
|
+
this.selVal = val
|
79
|
+
}
|
80
|
+
|
81
|
+
}
|
82
|
+
}
|
83
|
+
},
|
84
|
+
async ready() {
|
85
|
+
await this.search()
|
86
|
+
await this.filterUser(this.resids)
|
87
|
+
},
|
88
|
+
methods: {
|
89
|
+
async search() {
|
90
|
+
let http = new HttpResetClass()
|
91
|
+
const res = await http.load('POST', '/rs/search', {
|
92
|
+
data: {
|
93
|
+
source: this.source,
|
94
|
+
userid: this.$login.f.id
|
95
|
+
}
|
96
|
+
}, {resolveMsg: null, rejectMsg: null})
|
97
|
+
this.allUsers = res.data
|
98
|
+
},
|
99
|
+
valuechange(val) {
|
100
|
+
console.log(`val instanceof Array======${!val instanceof Array}`)
|
101
|
+
if ((typeof val === 'object' && !val instanceof Array) || (val instanceof Event)) {
|
102
|
+
return
|
103
|
+
}
|
104
|
+
if (this.valueMultiple && Array.isArray(val)) {
|
105
|
+
if (val && val.length > 0) {
|
106
|
+
let valuesele = `(`
|
107
|
+
for (let i = 0; i < val.length; i++) {
|
108
|
+
valuesele += `'${val[i]}',`
|
109
|
+
}
|
110
|
+
this.value = valuesele.substring(0, valuesele.length - 1) + ')'
|
111
|
+
} else {
|
112
|
+
this.value = ''
|
113
|
+
}
|
114
|
+
} else {
|
115
|
+
this.value = val
|
116
|
+
}
|
117
|
+
// this.changeval = val
|
118
|
+
},
|
119
|
+
getRes(obj) {
|
120
|
+
this.resids = obj.resids
|
121
|
+
this.organizationname = obj.res[0]
|
122
|
+
this.filterUser(this.resids)
|
123
|
+
this.$dispatch('re-res', obj)
|
124
|
+
},
|
125
|
+
async filterUser(resids) {
|
126
|
+
// 处理第一次进入页面值异常问题
|
127
|
+
if (resids.length > 0 && typeof resids[0] == "object") {
|
128
|
+
resids = resids[0]
|
129
|
+
}
|
130
|
+
if (resids[0]) {
|
131
|
+
this.source = `tool.getChildrenOfResName($${this.roleName}$)`
|
132
|
+
await this.search()
|
133
|
+
}
|
134
|
+
this.users = []
|
135
|
+
this.allUsers.forEach(user => {
|
136
|
+
if (this.organizationname == user.organizationname || !user.organizationname){
|
137
|
+
this.users.push({label: user.name, value: user.name})
|
138
|
+
}
|
139
|
+
})
|
140
|
+
if (!this.valueMultiple && this.users.length > 0) {
|
141
|
+
this.users = [{label: '全部', value: ''}, ...this.users]
|
142
|
+
}
|
143
|
+
let temp = []
|
144
|
+
this.users = this.users.filter(item => {
|
145
|
+
if (!temp.includes(item.label)) {
|
146
|
+
temp.push(item.label)
|
147
|
+
return true
|
148
|
+
}
|
149
|
+
return false
|
150
|
+
})
|
151
|
+
this.$emit('alluser', this.allUsers)
|
152
|
+
//tag
|
153
|
+
}
|
154
|
+
}
|
155
|
+
}
|
156
|
+
</script>
|
157
|
+
|
158
|
+
<style scoped>
|
159
|
+
|
160
|
+
</style>
|
@@ -170,30 +170,35 @@
|
|
170
170
|
|
171
171
|
<div class="col-sm-3 form-group">
|
172
172
|
<label class="font_normal_body">街道/乡镇</label>
|
173
|
-
<v-select :value.sync="model.f_street_id"
|
173
|
+
<v-select :value.sync="model.f_street_id"
|
174
|
+
:multiple="true"
|
174
175
|
:options='$parent.$parent.streetslist' placeholder='请选择'
|
175
|
-
condition="f_street_id
|
176
|
+
condition="f_street_id in {}"
|
176
177
|
v-model='model.f_street_id'
|
177
178
|
@change="$parent.$parent.streetChange"
|
178
|
-
|
179
|
+
:search="true" >
|
179
180
|
</v-select>
|
180
181
|
</div>
|
181
182
|
<div class="col-sm-3 form-group">
|
182
183
|
<label class="font_normal_body">片区/行政村</label>
|
183
|
-
<v-select :value.sync="model.f_community_id"
|
184
|
-
:
|
185
|
-
|
184
|
+
<v-select :value.sync="model.f_community_id"
|
185
|
+
:multiple="true"
|
186
|
+
v-model='model.f_community_id'
|
187
|
+
:options='$parent.$parent.communitylist'
|
188
|
+
placeholder='片区/管理站' filer-key="name"
|
189
|
+
condition="f_community_id in {}"
|
186
190
|
@change="$parent.$parent.communityChange"
|
187
|
-
|
191
|
+
v-ref:slice>
|
188
192
|
</v-select>
|
189
193
|
</div>
|
190
194
|
<div class="col-sm-3 form-group">
|
191
195
|
<label class="font_normal_body">小区/自然村</label>
|
192
|
-
<v-select :value.sync="model.f_residential_area_id"
|
196
|
+
<v-select :value.sync="model.f_residential_area_id"
|
197
|
+
:multiple="true"
|
193
198
|
:options='$parent.$parent.areaslist' placeholder='请选择'
|
194
|
-
condition="f_residential_area_id
|
199
|
+
condition="f_residential_area_id in {}"
|
195
200
|
v-model='model.f_residential_area_id'
|
196
|
-
|
201
|
+
>
|
197
202
|
</v-select>
|
198
203
|
</div>
|
199
204
|
<div class="col-sm-3 form-group">
|
@@ -712,15 +717,30 @@ export default {
|
|
712
717
|
})
|
713
718
|
this.communitylist=redata
|
714
719
|
},
|
715
|
-
async streetChange(val){
|
716
|
-
if(val){
|
717
|
-
|
720
|
+
async streetChange(val) {
|
721
|
+
if (val.length > 0) {
|
722
|
+
// 使用数组来收集值
|
723
|
+
const ids = [];
|
724
|
+
for (let i = 0; i < val.length; i++) {
|
725
|
+
ids.push(val[i]);
|
726
|
+
}
|
727
|
+
// 将数组转换为逗号分隔的字符串
|
728
|
+
const strs = ids.join(',');
|
729
|
+
// 调用 initcommunity 方法时确保 SQL 语法正确
|
730
|
+
await this.initcommunity(`f_filialeid = '${this.f_filialeids}' and f_street_id in (${strs})`);
|
718
731
|
}
|
719
732
|
},
|
720
733
|
async communityChange(val){
|
721
734
|
console.log(val)
|
722
|
-
if(val){
|
723
|
-
|
735
|
+
if(val.length > 0){
|
736
|
+
// 使用数组来收集值
|
737
|
+
const ids = [];
|
738
|
+
for (let i = 0; i < val.length; i++) {
|
739
|
+
ids.push(val[i]);
|
740
|
+
}
|
741
|
+
// 将数组转换为逗号分隔的字符串
|
742
|
+
const strs = ids.join(',');
|
743
|
+
await this.initareas(` f_filialeid = '${this.f_filialeids}' and f_community_id in (${strs}) `)
|
724
744
|
}
|
725
745
|
}
|
726
746
|
},
|