safecheck-client 3.0.34-1 → 3.0.34-100

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.
Files changed (183) hide show
  1. package/package.json +1 -1
  2. package/src/App-/345/215/225/351/241/265/351/235/242/346/211/223/345/214/205/347/224/250.vue +55 -0
  3. package/src/assets/123.png +0 -0
  4. package/src/assets/f8632d3c8c4c1cb68e99da754cab1a7.png +0 -0
  5. package/src/components/LoadData.vue +62 -0
  6. package/src/components/NewDefectList/DefectListNew.vue +1 -0
  7. package/src/components/android/AddPlanItemYy.vue +451 -0
  8. package/src/components/android/AndroidDefectDeal.vue +1 -0
  9. package/src/components/android/AndroidDefectDealBeforeSafe.vue +502 -0
  10. package/src/components/android/AreaPlan.vue +1 -7
  11. package/src/components/android/AreaSelect.vue +198 -0
  12. package/src/components/android/BuildingSelect.vue +192 -0
  13. package/src/components/android/CheckPlanSelect.vue +229 -0
  14. package/src/components/android/CurrentCreateYy.vue +1051 -0
  15. package/src/components/android/ImgSelfAndroid.vue +181 -181
  16. package/src/components/android/PaperFeedback.vue +34 -1
  17. package/src/components/android/PaperFeedbackTemp.vue +1 -1
  18. package/src/components/android/QRCode/QRCodeBinding.vue +300 -0
  19. package/src/components/android/QRCode/QRCodePage.vue +212 -0
  20. package/src/components/android/SafecheckDevices.vue +4 -4
  21. package/src/components/android/SafecheckDevicesTemp.vue +1 -1
  22. package/src/components/android/SafecheckOrderV.vue +8 -12
  23. package/src/components/android/UserinfoSelect.vue +714 -0
  24. package/src/components/android/examples/410.png +0 -0
  25. package/src/components/android/examples/SafeListExamples.vue +296 -0
  26. package/src/components/android/examples/UserExamples.vue +137 -0
  27. package/src/components/android/examples/ViewDetailsExamples.vue +1235 -0
  28. package/src/components/android/examples/touxiang.png +0 -0
  29. package/src/components/android/userinfo/SafecheckUserInfo.vue +1 -1
  30. package/src/components/pc/SafeVisitInfo.vue +261 -0
  31. package/src/components/rongcheng/AddPlanItem.vue +8 -0
  32. package/src/components/rongcheng/AspiratedAreaPlan.vue +574 -464
  33. package/src/components/rongcheng/AspiratedUserInfo.vue +1 -1
  34. package/src/components/rongcheng/CheckSearchUser.vue +46 -16
  35. package/src/components/rongcheng/PaperStatem.vue +6 -1
  36. package/src/components/rongcheng/PhoneDevicesInfo.vue +16 -1
  37. package/src/components/rongcheng/PhoneUpUserinfo.vue +1236 -1328
  38. package/src/components/rongcheng/SafecheckOrderV.vue +12 -3
  39. package/src/components/rongcheng/SafecheckOrderVCli.vue +9 -0
  40. package/src/filiale/baiyin/android/AndroidDefectDeal.vue +633 -633
  41. package/src/filiale/baiyin/android/SafecheckOrderV.vue +2785 -0
  42. package/src/filiale/baiyin/android.js +11 -10
  43. package/src/filiale/baiyin/pc/CheckPlanAreaList.vue +485 -485
  44. package/src/filiale/baiyin/pc/CheckSearchUser.vue +1067 -1067
  45. package/src/filiale/baiyin/pc/DefectListNew.vue +597 -597
  46. package/src/filiale/baiyin/pc/DefectMainNew.vue +63 -63
  47. package/src/filiale/baiyin/pc/DefectPaperNew.vue +1052 -1052
  48. package/src/filiale/baiyin/pc/PaperList.vue +790 -790
  49. package/src/filiale/baiyin/pc/PlanChooser.vue +167 -167
  50. package/src/filiale/baiyin/pc/PlanManage.vue +834 -834
  51. package/src/filiale/baiyin/pc/RightTreeSafe.vue +348 -348
  52. package/src/filiale/baiyin/pc/RoleSelector.vue +160 -160
  53. package/src/filiale/bayan/android/AddPlanItem.vue +8 -0
  54. package/src/filiale/bayan/android/PaperFeedback.vue +68 -50
  55. package/src/filiale/bayan/android/PhoneUpUserinfo.vue +40 -40
  56. package/src/filiale/bayan/android/SafecheckDevices.vue +1 -1
  57. package/src/filiale/bayan/android/SafecheckOrderV.vue +58 -58
  58. package/src/filiale/bayan/android/SafecheckUserInfo.vue +6 -1
  59. package/src/filiale/bayan/pc/NewCheckpaper.vue +50 -46
  60. package/src/filiale/bayan/pc/PaperList.vue +1 -0
  61. package/src/filiale/dexin/android/SafecheckDevices.vue +1 -1
  62. package/src/filiale/fugou/pc/CheckBookSearchUser.vue +35 -15
  63. package/src/filiale/hanzhong/android/PaperFeedback.vue +1 -1
  64. package/src/filiale/hanzhong/android/SafecheckDevices.vue +1 -1
  65. package/src/filiale/hanzhong/android/SafecheckUserInfo.vue +1 -1
  66. package/src/filiale/huaran/android/SafecheckOrderV.vue +2803 -0
  67. package/src/filiale/huaran/android.js +12 -0
  68. package/src/filiale/huaran/pc/CheckBook.vue +313 -0
  69. package/src/filiale/huaran/pc/CheckBookAll.vue +69 -0
  70. package/src/filiale/huaran/pc/CheckBookArea.vue +170 -0
  71. package/src/filiale/huaran/pc/CheckBookCompany.vue +166 -0
  72. package/src/filiale/huaran/pc/CheckBookDetails.vue +196 -0
  73. package/src/filiale/huaran/pc/CheckBookEntry.vue +61 -0
  74. package/src/filiale/huaran/pc/CheckBookList.vue +386 -0
  75. package/src/filiale/huaran/pc/CheckBookSearchArea.vue +564 -0
  76. package/src/filiale/huaran/pc/CheckBookSearchUnit.vue +229 -0
  77. package/src/filiale/huaran/pc/CheckBookSearchUser.vue +604 -0
  78. package/src/filiale/huaran/pc/CheckBookUser.vue +112 -0
  79. package/src/filiale/huaran/pc/PaperList.vue +822 -0
  80. package/src/filiale/huaran/pc/PlanManage.vue +887 -0
  81. package/src/filiale/huaran/pc/checkPlanList.vue +419 -0
  82. package/src/filiale/huaran/pc/checkUserList.vue +867 -0
  83. package/src/filiale/huaran/pc.js +27 -0
  84. package/src/filiale/jiaxian/android/AddPlanItem.vue +447 -0
  85. package/src/filiale/jiaxian/android/PhoneUpUserinfo.vue +1229 -0
  86. package/src/filiale/jiaxian/android/SafecheckDevices.vue +1298 -1298
  87. package/src/filiale/jiaxian/android/SafecheckOrderV.vue +2807 -0
  88. package/src/filiale/jiaxian/android/SafecheckUserInfo.vue +784 -0
  89. package/src/filiale/jiaxian/android.js +14 -10
  90. package/src/filiale/jiaxian/pc.js +12 -12
  91. package/src/filiale/jingyang/android/PaperFeedback.vue +1 -1
  92. package/src/filiale/jingyang/android/SafecheckUserInfo.vue +1 -1
  93. package/src/filiale/kelai/pc/CheckPlanAreaList.vue +15 -7
  94. package/src/filiale/pingxiang/android/PaperFeedback.vue +1 -1
  95. package/src/filiale/qianneng/android/SafecheckOrderV.vue +1 -1
  96. package/src/filiale/qingjian/android/PhoneUpUserinfo.vue +1270 -1270
  97. package/src/filiale/qingjian/android/SafecheckDevices.vue +1 -1
  98. package/src/filiale/qingjian/android/SafecheckOrderV.vue +2844 -2844
  99. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +1 -1
  100. package/src/filiale/qingtongxia/android/AddPlanItem.vue +450 -0
  101. package/src/filiale/qingtongxia/android/CurrentCreate.vue +1053 -0
  102. package/src/filiale/qingtongxia/android/PhoneUpUserinfo.vue +1230 -0
  103. package/src/filiale/qingtongxia/android/SafecheckUserInfo.vue +782 -0
  104. package/src/filiale/qingtongxia/android.js +4 -0
  105. package/src/filiale/ruihua/android/SafecheckOrderV.vue +2747 -0
  106. package/src/filiale/ruihua/android/SafecheckUserInfo.vue +804 -0
  107. package/src/filiale/ruihua/android.js +11 -0
  108. package/src/filiale/shanxian/android/AddPlanItem.vue +447 -0
  109. package/src/filiale/shanxian/android/SafecheckOrderV.vue +1 -1
  110. package/src/filiale/shanxian/android.js +1 -0
  111. package/src/filiale/shanxian/pc/PaperList.vue +785 -0
  112. package/src/filiale/shanxian/pc/checkUserList.vue +4 -4
  113. package/src/filiale/shanxian/pc.js +2 -2
  114. package/src/filiale/shiquan/android/SafecheckDevices.vue +1 -1
  115. package/src/filiale/siyang/android/AddPlanItem.vue +450 -0
  116. package/src/filiale/siyang/android/AppCheckPlan.vue +246 -0
  117. package/src/filiale/siyang/android/CurrentCreate.vue +1051 -0
  118. package/src/filiale/siyang/android/SafecheckUserInfo.vue +1 -1
  119. package/src/filiale/siyang/android.js +4 -0
  120. package/src/filiale/siyang/pc/CheckBookList.vue +396 -0
  121. package/src/filiale/siyang/pc/CheckBookSearchArea.vue +667 -0
  122. package/src/filiale/siyang/pc/CheckPlanAreaList.vue +512 -0
  123. package/src/filiale/siyang/pc/CheckSearchUser.vue +1035 -0
  124. package/src/filiale/siyang/pc/HiddenSituation.vue +167 -0
  125. package/src/filiale/siyang/pc/checkPlanList.vue +367 -0
  126. package/src/filiale/siyang/pc/checkUserList.vue +22 -18
  127. package/src/filiale/siyang/pc.js +6 -0
  128. package/src/filiale/tongchuan/android/SafecheckDevices.vue +2 -2
  129. package/src/filiale/tongchuan/android/Select.vue +421 -0
  130. package/src/filiale/tongchuan/android.js +1 -0
  131. package/src/filiale/tongchuan/pc/CheckPlanCountChartArea.vue +3 -1
  132. package/src/filiale/tongchuan/pc/DefectPaperWeiXiu.vue +6 -2
  133. package/src/filiale/tongchuan/pc/HiddenSituation.vue +3 -1
  134. package/src/filiale/tongchuan/pc/NewCheckpaper.vue +13 -22
  135. package/src/filiale/tongchuan/pc/PaperDefectMain.vue +1 -1
  136. package/src/filiale/tongchuan/pc/SelectCheckPlan.vue +5 -2
  137. package/src/filiale/tongchuan/pc/checkUserList.vue +30 -0
  138. package/src/filiale/tongchuan/utils/EventListener.js +29 -0
  139. package/src/filiale/tongchuan/utils/coerceBoolean.js +7 -0
  140. package/src/filiale/weinan/android/SafecheckDevices.vue +1 -1
  141. package/src/filiale/weinan/android/SafecheckOrderV.vue +6 -2
  142. package/src/filiale/weinan/pc/CheckBookSearchUserList.vue +75 -62
  143. package/src/filiale/weinan/pc/CheckDetail.vue +11 -11
  144. package/src/filiale/weinan/pc/DefectPaperNew.vue +31 -0
  145. package/src/filiale/weinan/pc/DeviceChange.vue +1088 -0
  146. package/src/filiale/weinan/pc/checkUserList.vue +49 -113
  147. package/src/filiale/weinan/pc.js +1 -0
  148. package/src/filiale/wuan/android/SafecheckOrderV.vue +5 -1
  149. package/src/filiale/wuan/android/SafecheckUserInfo.vue +10 -5
  150. package/src/filiale/xilan/android/AddPlanItem.vue +457 -0
  151. package/src/filiale/xilan/android/CurrentCreate.vue +1063 -0
  152. package/src/filiale/xilan/android.js +11 -0
  153. package/src/filiale/xilan/pc/checkUserList.vue +772 -0
  154. package/src/filiale/xilan/pc.js +12 -0
  155. package/src/filiale/yangchunboneng/android/CurrentCreate.vue +8 -11
  156. package/src/filiale/yangchunboneng/android/DailyworkloadQuery.vue +8 -13
  157. package/src/filiale/yangchunboneng/android/NewCheckpaperAndroid.vue +1362 -1362
  158. package/src/filiale/yangchunboneng/android/PaperFeedback.vue +1731 -1731
  159. package/src/filiale/yangchunboneng/android/PhoneUpUserinfo.vue +1235 -1235
  160. package/src/filiale/yangchunboneng/android/SafecheckDevices.vue +1336 -1332
  161. package/src/filiale/yangchunboneng/android/SafecheckOrderV.vue +2865 -2845
  162. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +887 -887
  163. package/src/filiale/yangchunboneng/android/safeHistoryLook.vue +8 -13
  164. package/src/filiale/yangchunboneng/pc/CheckBookSearchUser.vue +23 -11
  165. package/src/filiale/yangchunboneng/pc/CheckBookUser.vue +9 -9
  166. package/src/filiale/yangchunboneng/pc/CheckPlanAreaList.vue +96 -30
  167. package/src/filiale/yangchunboneng/pc/CheckSearchUser.vue +1192 -1192
  168. package/src/filiale/yangchunboneng/pc/DefectPaperNew.vue +54 -3
  169. package/src/filiale/yangchunboneng/pc/PaperDefectMain.vue +1046 -944
  170. package/src/filiale/yangchunboneng/pc/PaperList.vue +29 -0
  171. package/src/filiale/yongzhou/android/PaperFeedback.vue +1 -1
  172. package/src/filiale/yongzhou/android/SafecheckDevices.vue +1 -1
  173. package/src/filiale/yongzhou/android/SafecheckUserInfo.vue +1 -1
  174. package/src/filiale/yuansheng/android/SafecheckDevices.vue +11 -1
  175. package/src/filiale/yuansheng/pc/NewCheckpaper.vue +10 -2
  176. package/src/filiale/yunchengminsheng/android/PaperFeedback.vue +1 -1
  177. package/src/filiale/yunchengminsheng/android/SafecheckDevices.vue +1 -1
  178. package/src/filiale/yunchengminsheng/android/SafecheckUserInfo.vue +1 -1
  179. package/src/main-/345/215/225/351/241/265/351/235/242/346/211/223/345/214/205/347/224/250.js +24 -0
  180. package/src/main.js +33 -33
  181. package/src/safecheck-android.js +307 -296
  182. package/src/safecheck-page.js +12 -0
  183. package/src/safecheck.js +3 -0
@@ -0,0 +1,421 @@
1
+ <template>
2
+ <div v-el:group class="btn-group" v-bind:class="{open: show, dropup: direction === 'up'}" :style="{width:width, fontSize: fontSize}">
3
+ <button v-el:btn type="button" class="btn btn-default dropdown-toggle select-style" :style="{minWidth: '100%', fontSize: fontSize}"
4
+ :id="'vc-select-button-'+attach"
5
+ @click="toggleDropdown"
6
+ @blur="show = (search ? show : false)"
7
+ v-bind="{disabled: disabled}"
8
+ >
9
+ <span class="btn-placeholder" v-show="showPlaceholder">{{placeholder}}</span>
10
+ <span class="btn-content" :style="{textOverflow:'ellipsis',overflow: 'hidden'}">{{ selectedItems }}</span>
11
+ <span class="caret"></span>
12
+ </button>
13
+ <ul class="dropdown-menu" v-bind:class="{'menu-align-right': align=== 'right'}" :style="{overflow:'scroll',maxHeight: maxHeight + 'px',width: menuWidth,minWidth:minWidth,left:left+'px', fontSize: fontSize }" v-el:dropdown>
14
+ <template v-if="options.length">
15
+ <li v-if="search" class="bs-searchbox" style="white-space: nowrap">
16
+ <input type="text" placeholder="Search"
17
+ style="width: 80%;display: inline"
18
+ v-model="searchText"
19
+ class="form-control" autocomplete="off"
20
+ @keyup.enter="putOptions(searchText)">
21
+
22
+ <span style="width: 20%;display: inline"
23
+ v-if="search&&multiple&&show&&!isSelectAll"
24
+ @mousedown.prevent="selectAll(options)">全选</span>
25
+ <span style="width: 20%;display: inline"
26
+ v-if="search&&multiple&&show&&isSelectAll"
27
+ @mousedown.prevent="selectAll(options)">取消</span>
28
+ </li>
29
+ <li v-for="option in options | findBy searchText " style="position:relative">
30
+ <a @mousedown.prevent="select(option.value,null)" style="cursor:pointer" :id="'vc-select-a-'+attach+'-'+$index">
31
+ {{ option.label }}
32
+ <span class="glyphicon glyphicon-ok check-mark" v-show="isSelected(option.value)"></span>
33
+ </a>
34
+ </li>
35
+ </template>
36
+ <slot v-else></slot>
37
+ <div class="notify" v-show="showNotify" transition="fadein">Limit reached ({{limit}} items max).
38
+ </div>
39
+ </ul>
40
+ </div>
41
+ </template>
42
+
43
+ <script>
44
+ import EventListener from '../utils/EventListener'
45
+ import coerceBoolean from '../utils/coerceBoolean.js'
46
+
47
+ export default {
48
+ props: {
49
+ options: {
50
+ type: Array,
51
+ default() { return [] },
52
+ },
53
+ value: {
54
+ twoWay: true
55
+ },
56
+ placeholder: {
57
+ type: String,
58
+ default: '请选择'
59
+ },
60
+ multiple: {
61
+ type: Boolean,
62
+ coerce: coerceBoolean,
63
+ default: false
64
+ },
65
+ search: { // Allow searching (only works when options are provided)
66
+ type: Boolean,
67
+ coerce: coerceBoolean,
68
+ default: true
69
+ },
70
+ limit: {
71
+ type: Number,
72
+ default: 1024
73
+ },
74
+ closeOnSelect: { // only works when multiple==false
75
+ type: Boolean,
76
+ coerce: coerceBoolean,
77
+ default: false
78
+ },
79
+ disabled: {
80
+ type: Boolean,
81
+ coerce: coerceBoolean,
82
+ default: false
83
+ },
84
+ attach: {
85
+ type: String,
86
+ default: 'vuestrap'
87
+ },
88
+ enterPush: {
89
+ type: Boolean,
90
+ dafault: false
91
+ },
92
+ maxHeight: {
93
+ type: [Number,String],
94
+ default: 300
95
+ },
96
+ minWidth:{
97
+ type:[Number,String],
98
+ default:'100%'
99
+ },
100
+ valueSingle: {
101
+ type: Boolean,
102
+ default: false
103
+ },
104
+ //全选标志位
105
+ isSelectAll: {
106
+ type: Boolean,
107
+ default: false
108
+ },
109
+ filerKey: {
110
+ default: 'id'
111
+ },
112
+ direction: { // 展开方向,默认为向下,可以向上up
113
+ type: String,
114
+ default: 'down'
115
+ },
116
+ align: {
117
+ type: String,
118
+ default: 'left' // 内内容框对齐方式,默认是左对齐,也可以right,右对齐
119
+ },
120
+ width:{
121
+ type:String,
122
+ default:'60%'
123
+ },
124
+ timeout: {
125
+ type: Number,
126
+ default: 300
127
+ },
128
+ fontSize: {
129
+ type: String,
130
+ default: '16px'
131
+ },
132
+ menuMode: {
133
+ type: String
134
+ }
135
+ },
136
+ ready() {
137
+ if(this.search&&this.multiple){
138
+ this.minWidth='190px'
139
+ }
140
+ // 如果this.value不存在或正length不等于0
141
+ if ((this.value === false? false :!this.value) || this.value.length === 0) {
142
+ if (this.valueSingle) {
143
+ this.value = ''
144
+ } else {
145
+ this.value = []
146
+ }
147
+ }else {
148
+ // 如果this.value不是数组
149
+ if (this.value.constructor !== Array) {
150
+ if (!this.valueSingle) {
151
+ this.value = [this.value]
152
+ }
153
+ } else {
154
+ // this.value不是数组并且不是多选
155
+ if (!this.multiple && this.value.length > 1) {
156
+ this.value = this.value.slice(0, 1)
157
+ } else if (this.multiple && this.value.length > this.limit) {
158
+ this.value = this.value.slice(0, this.limit)
159
+ }
160
+ }
161
+ }
162
+ let el = this.$els.dropdown
163
+ let elbtn = this.$els.btn
164
+ this._closeEvent = EventListener.listen(window, 'mouseup', (e)=> {
165
+ if (!el.contains(e.target) && this.show && !elbtn.contains(e.target)) {
166
+ this.show = false
167
+ }
168
+ })
169
+ },
170
+ data() {
171
+ return {
172
+ left:'0',
173
+
174
+ searchText: null,
175
+ show: false,
176
+ showNotify: false,
177
+ paramsData: [],
178
+ // isShowModify: false
179
+ timer: null,
180
+ menuwidth: 'auto'
181
+ }
182
+ },
183
+ computed: {
184
+ // 返回显示的选择内容
185
+ selectedItems() {
186
+ // 值为空,返回空串
187
+ if (this.value === false? false: !this.value) {
188
+ return ''
189
+ }
190
+ // 把单选变成数组
191
+ let value
192
+ if (this.valueSingle) {
193
+ value = [this.value]
194
+ } else {
195
+ value = this.value
196
+ }
197
+
198
+ // 根据value值,找到label
199
+ let foundItems = []
200
+ if (value === false?true:value && value.length) {
201
+ for (var item of value) {
202
+ // 如果没有可选项,直接value内容
203
+ if (this.options.length === 0)
204
+ {
205
+ foundItems = value;
206
+ }
207
+ // 有可选项
208
+ else
209
+ {
210
+ // 如果是对象,显示对象给定的列
211
+ if (typeof item === "object") {
212
+ for(let o of this.options) {
213
+ // 选中对象鱼可选项value值相同,取选项的label
214
+ if((o.value === false?true:o.value)&& o.value[this.filerKey] === item[this.filerKey]) {
215
+ foundItems.push(o.label)
216
+ break
217
+ }
218
+ }
219
+ } else {
220
+ // 否则,显示值本身
221
+ let option
222
+ this.options.some(o => {
223
+ if(o.value === item) {
224
+ option = o
225
+ return true
226
+ }
227
+ })
228
+ option && foundItems.push(option.label)
229
+ }
230
+ }
231
+ }
232
+ if (foundItems.length === 0 || foundItems[0].constructor === Object) {
233
+ return ''
234
+ }
235
+ //选中的
236
+ let str= foundItems.join(', ')
237
+ // if(str.length > 4)
238
+ // return str.substring(0,4)+'...'
239
+ // else
240
+ return str
241
+ }
242
+ },
243
+ showPlaceholder() {
244
+ if (this.value ===false? true :this.value) {
245
+ return this.value.length === 0 || this.selectedItems === ''
246
+ }
247
+ return true
248
+ }
249
+ },
250
+ watch: {
251
+ menuMode: {
252
+ immediate: true,
253
+ handler() {
254
+ if (this.menuMode == 'align-button'){
255
+ this.menuWidth = '100%'
256
+ }
257
+ }
258
+ },
259
+ value(val) {
260
+ this.$emit('change', val)
261
+ this.$emit('selected', this.selected)
262
+ if (val && val.length > this.limit) {
263
+ this.showNotify = true
264
+ this.value.pop()
265
+ setTimeout(() => this.showNotify = false, 1000)
266
+ }
267
+ },
268
+ show(){
269
+ this.judgBoundary();
270
+ },
271
+ searchText() {
272
+ // 防抖
273
+ if (this.timer) {
274
+ clearTimeout(this.timer)
275
+ }
276
+ this.timer = setTimeout(() => {
277
+ this.$emit('select-search', this.searchText)
278
+ }, this.timeout)
279
+ }
280
+ },
281
+ methods: {
282
+ //全选
283
+ selectAll(v) {
284
+ this.isSelectAll=!this.isSelectAll
285
+ if(this.searchText === null){
286
+ v.forEach((item) => {
287
+ this.select(item.value, this.isSelectAll)
288
+ })
289
+ }else {
290
+ let result= v.filter((item) => {
291
+ return item.label.includes(this.searchText)
292
+ }).forEach((item) => {
293
+ this.select(item.value, this.isSelectAll)
294
+ })
295
+ }
296
+ },
297
+ select (v, flag) {
298
+ if (flag == true) {
299
+ if (this.multiple) {
300
+ this.value.$remove(v)
301
+ this.value.push(v)
302
+ } else if (this.closeOnSelect) {
303
+ this.toggleDropdown()
304
+ }
305
+ } else if (flag == false) {
306
+ if (this.multiple) {
307
+ this.value.$remove(v)
308
+ } else if (this.closeOnSelect) {
309
+ this.toggleDropdown()
310
+ }
311
+ } else if (flag == null) {
312
+ if (this.valueSingle || !this.value || this.value.indexOf(v) === -1) {
313
+ if (this.multiple) {
314
+ this.value.push(v)
315
+ } else {
316
+ if (this.value == v) {
317
+ this.value = undefined
318
+ } else if (this.valueSingle) {
319
+ this.value = v
320
+ } else {
321
+ this.value = [v]
322
+ }
323
+ }
324
+ } else {
325
+ if (this.multiple || this.value) {
326
+ this.value.$remove(v)
327
+ }
328
+ }
329
+ if (this.closeOnSelect) {
330
+ this.toggleDropdown()
331
+ }
332
+ }
333
+ this.judgBoundary()
334
+ this.$emit('select-changed', v)
335
+ },
336
+
337
+ isSelected(v) {
338
+ if (this.value === false? false: !this.value) {
339
+ return false
340
+ }
341
+ if (this.value.constructor !== Array) {
342
+ return this.value == v
343
+ } else {
344
+ return this.value.indexOf(v) !== -1
345
+ }
346
+
347
+ },
348
+ toggleDropdown() {
349
+ this.width = this.$els.group.clientWidth * this.width +'px'
350
+ this.show = !this.show
351
+ },
352
+ putOptions (val) {
353
+ if (this.enterPush) {
354
+ let sign = false
355
+ this.options.forEach((item) => {
356
+ if (val === item.label) {
357
+ sign = true
358
+ }
359
+ })
360
+ }
361
+ this.judgBoundary();
362
+ },
363
+ judgBoundary(){
364
+ //判断是否超出边界,超出移动
365
+ if(this.menuMode != 'align-button' && document.documentElement.offsetWidth< this.$els.dropdown.getBoundingClientRect().right){
366
+ this.left = document.documentElement.offsetWidth - this.$els.dropdown.getBoundingClientRect().right - 25
367
+ }
368
+ }
369
+ },
370
+ beforeDestroy() {
371
+ if (this._closeEvent) this._closeEvent.remove()
372
+ }
373
+ }
374
+ </script>
375
+
376
+ <style scoped>
377
+ .bs-searchbox {
378
+ padding: 4px 8px;
379
+ }
380
+ .menu-align-right {
381
+ left: unset;
382
+ right: 0;
383
+ }
384
+ .btn-group .dropdown-menu .notify {
385
+ position: absolute;
386
+ bottom: 5px;
387
+ width: 96%;
388
+ margin: 0 2%;
389
+ min-height: 26px;
390
+ padding: 3px 5px;
391
+ background: #f5f5f5;
392
+ /*border: 1px solid #e3e3e3;*/
393
+ box-shadow: inset 0 1px 1px rgba(0,0,0,.05);
394
+ pointer-events: none;
395
+ opacity: .9;
396
+ overflow: hidden;
397
+ text-overflow: ellipsis;
398
+ }
399
+ .select-style {
400
+ border: 0px;
401
+ /*border-bottom: 2px solid #C9CCCF;*/
402
+ border: 1px solid #93B2D3;
403
+ border-radius: 0px;
404
+ color: #555;
405
+ overflow:hidden;text-overflow:ellipsis;
406
+ }
407
+ /* 为新产品增加修改菜单选项 */
408
+ .vselect-self-style {
409
+ text-align: center;
410
+ border: 2px dashed #ccc;
411
+ margin: 5px 10px;
412
+ border-radius: 5px;
413
+ }
414
+ /* 当内容超过最大时,显示省略,长度不能超过最大值 */
415
+ .btn-group > button {
416
+ max-width: 100%;
417
+ }
418
+ .btn-group > button .btn-content {
419
+ max-width: 100%;
420
+ }
421
+ </style>
@@ -4,6 +4,7 @@ import Vue from "vue";
4
4
  // 手机特殊目录注册到该文件中
5
5
  let specialComp = {
6
6
  'safecheck-order-v': (resolve) => { require(['./android/SafecheckOrderV'], resolve) },
7
+ 'v-select': (resolve) => { require(['./android/Select'], resolve) },
7
8
  'paper-feedback' : (resolve) => { require(['./android/PaperFeedback'], resolve) },
8
9
  'safecheck-userinfo' : (resolve) => { require(['./android/SafecheckUserInfo'], resolve) },
9
10
  'safecheck-devices' : (resolve) => { require(['./android/SafecheckDevices'], resolve) },
@@ -6,12 +6,14 @@
6
6
  <div class="row">
7
7
  <div class="col-sm-4 form-group">
8
8
  <role-selector-safe
9
+ :value-multiple="true"
10
+ :value-close="false"
9
11
  role-name="安检员"
10
12
  role-lable="安&ensp;检&ensp;员"
11
13
  @re-res="$parent.$parent.getRes"
12
14
  :value.sync="model.f_checker_id"
13
15
  v-model="model.f_checker_id"
14
- condition="f_checker_name = '{}'">
16
+ condition="f_checker_name in {}">
15
17
  </role-selector-safe>
16
18
  </div>
17
19
  <div class="col-sm-2 form-group">
@@ -74,12 +74,14 @@
74
74
  </div>
75
75
  <div :class="$parent.$parent.style2" style="margin: 0">
76
76
  <role-selector-safe
77
+ :value-multiple="true"
78
+ :value-close="false"
77
79
  role-name="安检员"
78
80
  role-lable="安&nbsp;检&nbsp;员&nbsp;"
79
81
  @re-res="$parent.$parent.getRes"
80
82
  :value.sync="model.f_checker_id"
81
83
  v-model="model.f_checker_id"
82
- condition="f_checker_name = '{}'">
84
+ condition="f_checker_name in {}">
83
85
  </role-selector-safe>
84
86
  </div>
85
87
 
@@ -222,12 +224,14 @@
222
224
 
223
225
  <div :class="$parent.$parent.style2" style="margin: 0">
224
226
  <role-selector-safe
227
+ :value-multiple="true"
228
+ :value-close="false"
225
229
  role-name="安检员"
226
230
  role-lable="安&nbsp;检&nbsp;员&nbsp;"
227
231
  @re-res="$parent.$parent.getRes"
228
232
  :value.sync="model.f_checker_id"
229
233
  v-model="model.f_checker_id"
230
- condition="f_checker_name = '{}'">
234
+ condition="f_checker_name in {}">
231
235
  </role-selector-safe>
232
236
  </div>
233
237
  </div>
@@ -6,12 +6,14 @@
6
6
  <div class="row">
7
7
  <div class="col-sm-4 form-group">
8
8
  <role-selector-safe
9
+ :value-multiple="true"
10
+ :value-close="false"
9
11
  role-name="安检员"
10
12
  role-lable="安&ensp;检&ensp;员"
11
13
  @re-res="$parent.$parent.getRes"
12
14
  :value.sync="model.f_checker_id"
13
15
  v-model="model.f_checker_id"
14
- condition="f_checker_name = '{}'">
16
+ condition="f_checker_name in {}">
15
17
  </role-selector-safe>
16
18
  </div>
17
19
  <div class="col-sm-2 form-group">
@@ -549,11 +549,6 @@ export default {
549
549
  },
550
550
  methods: {
551
551
  devicesCollect() {
552
- //tag
553
- //tag)
554
- //tag)
555
- //tag
556
-
557
552
  this.deviceCollects = []
558
553
  let checkResult = '正常'
559
554
  this.result = '正常'
@@ -577,26 +572,22 @@ export default {
577
572
  if ((items.type === 'selector' || items.type === 'radio' || items.type === 'checkbox') && items.f_item_value != null && items.f_item_value instanceof Array) {
578
573
  for (let i in items.f_item_value) {
579
574
  let f_item_value = items.f_item_value[i]
580
-
581
- //tag)
582
- //tag)
583
- //tag)
584
- //tag)
585
- if (!this.config[this.data[device][item].f_device_type].items[items.f_item_name]) {
586
- continue
587
- }
588
- let options = this.config[this.data[device][item].f_device_type].items[items.f_item_name].options
589
- for (let option in options) {
590
- if (options[option].data == f_item_value) {
591
- if (options[option].isdefect == 'true' || options[option].isdefect == true) {
592
- checkResult = '有隐患'
593
- this.result = '有隐患'
594
- defects = `${defects}:${options[option].data}/`
595
- // let level = options[option].level
575
+ for (let j = 0; j < this.config[this.data[device][item].f_device_type].items.length; j++) {
576
+ if(this.config[this.data[device][item].f_device_type].items[j].lname===items.f_item_name){
577
+ if(this.config[this.data[device][item].f_device_type].items[j].options){
578
+ let options = this.config[this.data[device][item].f_device_type].items[j].options
579
+ for (let option in options) {
580
+ if (options[option].data === f_item_value) {
581
+ if (options[option].isdefect === 'true' || options[option].isdefect === true) {
582
+ checkResult = '有隐患'
583
+ this.result = '有隐患'
584
+ defects = `${defects}:${options[option].data}/`
585
+ }
586
+ }
587
+ }
596
588
  }
597
589
  }
598
590
  }
599
- //tag)
600
591
  }
601
592
  if (defects != '') {
602
593
  deviceInfos.push(`${items.f_item_name}${defects.substring(0, defects.length - 1)}`)
@@ -653,7 +653,7 @@
653
653
  }
654
654
  defectIdStr = `(${defectIds.join(',')})`
655
655
  let http = new HttpResetClass()
656
- let sql = `update t_devices_items set f_deal_dispose = '自行整改',f_live_dispose = '是' where id in ${defectIdStr}`
656
+ let sql = `update t_devices_items set f_deal_dispose = '自行整改' where id in ${defectIdStr}`
657
657
  http.load('POST', 'rs/logic/runSQL', { data: { sql: sql } },
658
658
  { resolveMsg: null, rejectMsg: null }).then(()=>{
659
659
  this.showModal3 = false
@@ -6,6 +6,8 @@
6
6
  <div class="row">
7
7
  <div :class="{'form-group col-sm-6':$parent.$parent.$parent.showItem,'form-group col-sm-4':!$parent.$parent.$parent.showItem}" style="margin: 0">
8
8
  <role-selector-safe
9
+ :value-multiple="true"
10
+ :value-close="false"
9
11
  role-name="安检员"
10
12
  role-lable="安&ensp;检&ensp;员"
11
13
  @re-res="$parent.$parent.getRes"
@@ -223,8 +225,9 @@
223
225
  condition2 += ` AND f_offsite_time <= '${this.f_end_time} 23:59:59'`
224
226
  }
225
227
  if (this.$refs.paged.$refs.cri.model.f_checker_id){
226
- condition3 += ` AND f_checker = '${this.$refs.paged.$refs.cri.model.f_checker_id}' `
227
- condition2 += ` AND f_checker_name = '${this.$refs.paged.$refs.cri.model.f_checker_id}' `
228
+ debugger
229
+ condition3 += ` AND f_checker in ${this.$refs.paged.$refs.cri.model.f_checker_id} `
230
+ condition2 += ` AND f_checker_name in ${this.$refs.paged.$refs.cri.model.f_checker_id} `
228
231
  }
229
232
  this.model.f_start_time=this.f_start_time
230
233
  this.model.f_end_time=this.f_end_time
@@ -115,6 +115,21 @@
115
115
  >
116
116
  </v-select>
117
117
  </div>
118
+ <div class="form-group col-sm-4" >
119
+ <label class="font_normal_body">街&ensp;&ensp;&ensp;&ensp;道:</label>
120
+ <v-select
121
+ class="select select_list"
122
+ :value.sync="model.f_street"
123
+ v-model="model.f_street"
124
+ :options='$parent.$parent.streets'
125
+ placeholder='请选择'
126
+ condition="ua.f_street like '%{}%'"
127
+ :search="false"
128
+ close-on-select
129
+ value-single
130
+ >
131
+ </v-select>
132
+ </div>
118
133
  <!--<div class="form-group col-sm-4" >
119
134
  <label class="font_normal_body">小区名称:</label>
120
135
  <input type="text" class="input_search" v-model="model.f_userinfo_code"
@@ -336,6 +351,7 @@
336
351
  meterbooks:[],
337
352
  cbc:[],
338
353
  areaList:[],
354
+ streets:[],
339
355
  checkAll:false,
340
356
  checkes:[],
341
357
  excelUserCondtion:false,
@@ -355,6 +371,7 @@
355
371
  this.select_search()
356
372
  this.Mreadibook()
357
373
  this.getSliceArea()
374
+ this.getstreets()
358
375
  },
359
376
  cancel(){
360
377
  this.showCondtion=false
@@ -418,6 +435,19 @@
418
435
 
419
436
  })
420
437
  },
438
+ getstreets(){
439
+ new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/rs/sql/safe_singleTable_OrderBy`, {data:{items:"*",tablename:"t_street",orderitem:"id",condition:`f_orgid = '${this.userlogin.orgid}' `}}, {resolveMsg: null, rejectMsg: null}).then((res)=>{
440
+ ////tag)
441
+ this.streets=[]
442
+ if(res.data.length>0){
443
+ this.streets.push({label:"全部",value:""})
444
+ res.data.forEach((result)=>{
445
+ this.streets.push({label:result.f_street,value:result.f_street})
446
+ })
447
+ }
448
+
449
+ })
450
+ },
421
451
  //获取抄表册
422
452
  async Mreadibook(){
423
453
  this.cbc=[]
@@ -0,0 +1,29 @@
1
+ const EventListener = {
2
+ /**
3
+ * Listen to DOM events during the bubble phase.
4
+ *
5
+ * @param {DOMEventTarget} target DOM element to register listener on.
6
+ * @param {string} eventType Event type, e.g. 'click' or 'mouseover'.
7
+ * @param {function} callback Callback function.
8
+ * @return {object} Object with a `remove` method.
9
+ */
10
+ listen(target, eventType, callback) {
11
+ if (target.addEventListener) {
12
+ target.addEventListener(eventType, callback, false)
13
+ return {
14
+ remove() {
15
+ target.removeEventListener(eventType, callback, false)
16
+ }
17
+ }
18
+ } else if (target.attachEvent) {
19
+ target.attachEvent('on' + eventType, callback)
20
+ return {
21
+ remove() {
22
+ target.detachEvent('on' + eventType, callback)
23
+ }
24
+ }
25
+ }
26
+ }
27
+ }
28
+
29
+ export default EventListener
@@ -0,0 +1,7 @@
1
+ // Attempt to convert a string value to a Boolean. Otherwise, return the value
2
+ // without modification so Vue can throw a warning.
3
+ export default (val) => (typeof val !== "string" ? val :
4
+ val === "true" ? true :
5
+ val === "false" ? false :
6
+ val === "null" ? false :
7
+ val === "undefined" ? false : val)
@@ -997,7 +997,7 @@ export default {
997
997
  f_repair_department: this.config[this.device.device].items[item].repairDepartment ? this.config[this.device.device].items[item].repairDepartment : '',
998
998
  f_deal_dispose: this.config[this.device.device].items[item].dealDispose ? this.config[this.device.device].items[item].dealDispose : '',
999
999
  f_handle_date: '',
1000
- f_block_pitfall: this.config[this.device.device].items[item].blockPitfall ? this.config[this.device.device].items[item].blockPitfall : false,
1000
+ f_block_pitfall: this.config[this.device.device].items[item].blockPitfall ? this.config[this.device.device].items[item].blockPitfall : '否',
1001
1001
  f_lose_efficacy: this.config[this.device.device].items[item].loseEfficacy ? this.config[this.device.device].items[item].loseEfficacy : '',
1002
1002
  isshow: this.config[this.device.device].items[item].isshow == false ? this.config[this.device.device].items[item].isshow : true,
1003
1003
  readonly: this.config[this.device.device].items[item].readonly == true ? true : false,