safecheck-client 3.0.39-43 → 3.0.39-45

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 (267) hide show
  1. package/.babelrc +5 -5
  2. package/.editorconfig +9 -9
  3. package/android.html +18 -18
  4. package/config/dev.env.js +6 -6
  5. package/config/index.js +38 -38
  6. package/config/prod.env.js +3 -3
  7. package/config/test.env.js +6 -6
  8. package/docs/AppBase.md +22 -22
  9. package/docs/Busy.md +14 -14
  10. package/docs/CriteriaPaged.md +47 -47
  11. package/docs/DataGrid.md +54 -54
  12. package/docs/DataModel.md +22 -22
  13. package/docs/Dynamic.md +42 -42
  14. package/docs/GetParams.md +11 -11
  15. package/docs/HttpBusy.md +13 -13
  16. package/docs/HttpStore.md +29 -29
  17. package/docs/MessageBox.md +28 -28
  18. package/docs/PagedList.md +29 -29
  19. package/docs/Pager.md +21 -21
  20. package/docs/Project.md +23 -23
  21. package/docs/Route.md +105 -105
  22. package/docs/SafetyCheck/AdjustPlan.md +13 -13
  23. package/docs/SafetyCheck/CheckerPlan.md +12 -12
  24. package/docs/Task.md +46 -46
  25. package/docs/TreeList.md +28 -28
  26. package/docs/TreeMixin.md +18 -18
  27. package/docs/all.md +10 -10
  28. package/docs/list.md +42 -42
  29. package/docs/partial.md +75 -75
  30. package/docs/selector.md +82 -82
  31. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/Snippets.md +28 -28
  32. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/vue-strap/345/217/230/346/233/264/350/256/260/345/275/225.md +7 -7
  33. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/vue/345/217/230/346/233/264/350/256/260/345/275/225.md +13 -13
  34. package/docs//345/274/200/345/217/221/346/226/207/346/241/243//345/274/200/345/217/221/347/216/257/345/242/203/350/256/276/347/275/256.md +77 -77
  35. package/docs//347/225/214/351/235/242/345/210/266/344/275/234/350/247/204/350/214/203.md +54 -54
  36. package/examples/AddressList/App.vue +13 -13
  37. package/examples/AddressList/index.html +11 -11
  38. package/examples/DispatchList/App.vue +10 -10
  39. package/examples/DispatchList/BaseTree.vue +13 -13
  40. package/examples/DispatchList/Init.vue +22 -22
  41. package/examples/DispatchList/Test.vue +20 -20
  42. package/examples/DispatchList/index.html +11 -11
  43. package/examples/DispatchList/main.js +18 -18
  44. package/home.html +16 -16
  45. package/package.json +1 -1
  46. package/publish.bat +7 -7
  47. package/release.bat +5 -5
  48. package/src/App.vue +31 -26
  49. package/src/Widget.vue +13 -13
  50. package/src/android-bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  51. package/src/android-bootstrap/less/.csscomb.json +304 -304
  52. package/src/android-bootstrap/less/.csslintrc +19 -19
  53. package/src/android-bootstrap/less/alerts.less +73 -73
  54. package/src/android-bootstrap/less/badges.less +66 -66
  55. package/src/android-bootstrap/less/bootstrap.less +56 -56
  56. package/src/android-bootstrap/less/breadcrumbs.less +26 -26
  57. package/src/android-bootstrap/less/button-groups.less +247 -247
  58. package/src/android-bootstrap/less/buttons.less +173 -173
  59. package/src/android-bootstrap/less/carousel.less +269 -269
  60. package/src/android-bootstrap/less/close.less +34 -34
  61. package/src/android-bootstrap/less/code.less +69 -69
  62. package/src/android-bootstrap/less/component-animations.less +33 -33
  63. package/src/android-bootstrap/less/grid.less +84 -84
  64. package/src/android-bootstrap/less/input-groups.less +167 -167
  65. package/src/android-bootstrap/less/jumbotron.less +52 -52
  66. package/src/android-bootstrap/less/labels.less +64 -64
  67. package/src/android-bootstrap/less/list-group.less +141 -141
  68. package/src/android-bootstrap/less/media.less +66 -66
  69. package/src/android-bootstrap/less/mixins/alerts.less +14 -14
  70. package/src/android-bootstrap/less/mixins/background-variant.less +9 -9
  71. package/src/android-bootstrap/less/mixins/border-radius.less +18 -18
  72. package/src/android-bootstrap/less/mixins/buttons.less +69 -69
  73. package/src/android-bootstrap/less/mixins/center-block.less +7 -7
  74. package/src/android-bootstrap/less/mixins/clearfix.less +22 -22
  75. package/src/android-bootstrap/less/mixins/forms.less +90 -90
  76. package/src/android-bootstrap/less/mixins/gradients.less +59 -59
  77. package/src/android-bootstrap/less/mixins/grid-framework.less +92 -92
  78. package/src/android-bootstrap/less/mixins/grid.less +122 -122
  79. package/src/android-bootstrap/less/mixins/hide-text.less +21 -21
  80. package/src/android-bootstrap/less/mixins/image.less +33 -33
  81. package/src/android-bootstrap/less/mixins/labels.less +12 -12
  82. package/src/android-bootstrap/less/mixins/list-group.less +30 -30
  83. package/src/android-bootstrap/less/mixins/nav-divider.less +10 -10
  84. package/src/android-bootstrap/less/mixins/nav-vertical-align.less +9 -9
  85. package/src/android-bootstrap/less/mixins/opacity.less +8 -8
  86. package/src/android-bootstrap/less/mixins/pagination.less +24 -24
  87. package/src/android-bootstrap/less/mixins/panels.less +24 -24
  88. package/src/android-bootstrap/less/mixins/progress-bar.less +10 -10
  89. package/src/android-bootstrap/less/mixins/reset-filter.less +8 -8
  90. package/src/android-bootstrap/less/mixins/reset-text.less +18 -18
  91. package/src/android-bootstrap/less/mixins/resize.less +6 -6
  92. package/src/android-bootstrap/less/mixins/responsive-visibility.less +15 -15
  93. package/src/android-bootstrap/less/mixins/size.less +10 -10
  94. package/src/android-bootstrap/less/mixins/tab-focus.less +9 -9
  95. package/src/android-bootstrap/less/mixins/table-row.less +44 -44
  96. package/src/android-bootstrap/less/mixins/text-emphasis.less +9 -9
  97. package/src/android-bootstrap/less/mixins/text-overflow.less +8 -8
  98. package/src/android-bootstrap/less/mixins/vendor-prefixes.less +227 -227
  99. package/src/android-bootstrap/less/mixins.less +40 -40
  100. package/src/android-bootstrap/less/modals.less +151 -151
  101. package/src/android-bootstrap/less/navbar.less +660 -660
  102. package/src/android-bootstrap/less/navs.less +290 -290
  103. package/src/android-bootstrap/less/normalize.less +424 -424
  104. package/src/android-bootstrap/less/pager.less +76 -76
  105. package/src/android-bootstrap/less/pagination.less +89 -89
  106. package/src/android-bootstrap/less/panels.less +274 -274
  107. package/src/android-bootstrap/less/popovers.less +131 -131
  108. package/src/android-bootstrap/less/print.less +101 -101
  109. package/src/android-bootstrap/less/progress-bars.less +87 -87
  110. package/src/android-bootstrap/less/responsive-embed.less +35 -35
  111. package/src/android-bootstrap/less/responsive-utilities.less +194 -194
  112. package/src/android-bootstrap/less/scaffolding.less +161 -161
  113. package/src/android-bootstrap/less/tables.less +262 -262
  114. package/src/android-bootstrap/less/theme.less +291 -291
  115. package/src/android-bootstrap/less/thumbnails.less +36 -36
  116. package/src/android-bootstrap/less/tooltip.less +102 -102
  117. package/src/android-bootstrap/less/type.less +303 -303
  118. package/src/android-bootstrap/less/utilities.less +55 -55
  119. package/src/android-bootstrap/less/variables.less +896 -896
  120. package/src/android-bootstrap/less/wells.less +29 -29
  121. package/src/bootstrap/less/.csscomb.json +304 -304
  122. package/src/bootstrap/less/.csslintrc +19 -19
  123. package/src/bootstrap/less/alerts.less +73 -73
  124. package/src/bootstrap/less/badges.less +66 -66
  125. package/src/bootstrap/less/breadcrumbs.less +26 -26
  126. package/src/bootstrap/less/button-groups.less +247 -247
  127. package/src/bootstrap/less/buttons.less +172 -172
  128. package/src/bootstrap/less/carousel.less +269 -269
  129. package/src/bootstrap/less/close.less +34 -34
  130. package/src/bootstrap/less/code.less +69 -69
  131. package/src/bootstrap/less/component-animations.less +33 -33
  132. package/src/bootstrap/less/dropdowns.less +216 -216
  133. package/src/bootstrap/less/grid.less +84 -84
  134. package/src/bootstrap/less/input-groups.less +167 -167
  135. package/src/bootstrap/less/jumbotron.less +52 -52
  136. package/src/bootstrap/less/labels.less +64 -64
  137. package/src/bootstrap/less/list-group.less +141 -141
  138. package/src/bootstrap/less/media.less +66 -66
  139. package/src/bootstrap/less/mixins/alerts.less +14 -14
  140. package/src/bootstrap/less/mixins/background-variant.less +9 -9
  141. package/src/bootstrap/less/mixins/border-radius.less +18 -18
  142. package/src/bootstrap/less/mixins/buttons.less +69 -69
  143. package/src/bootstrap/less/mixins/center-block.less +7 -7
  144. package/src/bootstrap/less/mixins/clearfix.less +22 -22
  145. package/src/bootstrap/less/mixins/forms.less +90 -90
  146. package/src/bootstrap/less/mixins/gradients.less +59 -59
  147. package/src/bootstrap/less/mixins/grid-framework.less +92 -92
  148. package/src/bootstrap/less/mixins/grid.less +122 -122
  149. package/src/bootstrap/less/mixins/hide-text.less +21 -21
  150. package/src/bootstrap/less/mixins/image.less +33 -33
  151. package/src/bootstrap/less/mixins/labels.less +12 -12
  152. package/src/bootstrap/less/mixins/list-group.less +30 -30
  153. package/src/bootstrap/less/mixins/nav-divider.less +10 -10
  154. package/src/bootstrap/less/mixins/nav-vertical-align.less +9 -9
  155. package/src/bootstrap/less/mixins/opacity.less +8 -8
  156. package/src/bootstrap/less/mixins/pagination.less +24 -24
  157. package/src/bootstrap/less/mixins/panels.less +24 -24
  158. package/src/bootstrap/less/mixins/progress-bar.less +10 -10
  159. package/src/bootstrap/less/mixins/reset-filter.less +8 -8
  160. package/src/bootstrap/less/mixins/reset-text.less +18 -18
  161. package/src/bootstrap/less/mixins/resize.less +6 -6
  162. package/src/bootstrap/less/mixins/responsive-visibility.less +15 -15
  163. package/src/bootstrap/less/mixins/size.less +10 -10
  164. package/src/bootstrap/less/mixins/tab-focus.less +9 -9
  165. package/src/bootstrap/less/mixins/table-row.less +44 -44
  166. package/src/bootstrap/less/mixins/text-emphasis.less +9 -9
  167. package/src/bootstrap/less/mixins/text-overflow.less +8 -8
  168. package/src/bootstrap/less/mixins/vendor-prefixes.less +227 -227
  169. package/src/bootstrap/less/mixins.less +40 -40
  170. package/src/bootstrap/less/modals.less +151 -151
  171. package/src/bootstrap/less/navbar.less +660 -660
  172. package/src/bootstrap/less/normalize.less +424 -424
  173. package/src/bootstrap/less/pagination.less +89 -89
  174. package/src/bootstrap/less/panels.less +275 -275
  175. package/src/bootstrap/less/popovers.less +131 -131
  176. package/src/bootstrap/less/print.less +101 -101
  177. package/src/bootstrap/less/progress-bars.less +87 -87
  178. package/src/bootstrap/less/responsive-embed.less +35 -35
  179. package/src/bootstrap/less/responsive-utilities.less +194 -194
  180. package/src/bootstrap/less/scaffolding.less +161 -161
  181. package/src/bootstrap/less/theme.less +291 -291
  182. package/src/bootstrap/less/thumbnails.less +36 -36
  183. package/src/bootstrap/less/tooltip.less +102 -102
  184. package/src/bootstrap/less/type.less +303 -303
  185. package/src/bootstrap/less/utilities.less +55 -55
  186. package/src/bootstrap/less/wells.less +29 -29
  187. package/src/components/FileUpload.vue +696 -696
  188. package/src/components/Hello.vue +39 -39
  189. package/src/components/LeftTree.vue +27 -27
  190. package/src/components/android/AttendanceTally.vue +116 -116
  191. package/src/components/android/Blank.vue +10 -10
  192. package/src/components/android/CheckUnplanPage.vue +56 -56
  193. package/src/components/android/Checker.vue +12 -12
  194. package/src/components/android/CheckerAnnual.vue +81 -81
  195. package/src/components/android/CheckerAvarta.vue +82 -82
  196. package/src/components/android/EquipmentInspection.vue +348 -348
  197. package/src/components/android/FootprintMap.vue +120 -120
  198. package/src/components/android/HiddentroubleInvestigation.vue +192 -192
  199. package/src/components/android/MasterMain.vue +77 -77
  200. package/src/components/android/Menu.vue +132 -132
  201. package/src/components/android/PaperAlarm.vue +85 -85
  202. package/src/components/android/PaperDeviceNoncivil.vue +214 -214
  203. package/src/components/android/PlumberAnnual.vue +83 -83
  204. package/src/components/android/PlumberAnnualDetail.vue +65 -65
  205. package/src/components/android/PlumberMonthly.vue +84 -84
  206. package/src/components/android/PostMap.vue +83 -83
  207. package/src/components/android/QueryCheckHistory.vue +122 -122
  208. package/src/components/android/QueryCheckHistoryItem.vue +62 -62
  209. package/src/components/android/RepairMain.vue +60 -60
  210. package/src/components/android/Repairman.vue +12 -12
  211. package/src/components/android/StationMaster.vue +12 -12
  212. package/src/components/defects/DefectModal.vue +101 -101
  213. package/src/components/defects/DevicesAndItem.vue +39 -39
  214. package/src/components/issueplan/IssuePlanMain.vue +23 -23
  215. package/src/components/notice/NoticeForm.vue +100 -100
  216. package/src/components/notice/NoticeIssue.vue +20 -20
  217. package/src/components/paper/PicViewer.vue +18 -18
  218. package/src/components/pc/RoleSelector.vue +172 -172
  219. package/src/components/phonestate/MonthlyTraffic.vue +66 -66
  220. package/src/components/phonestate/MonthlyTrafficRouter.vue +15 -15
  221. package/src/components/phonestate/PostMap.vue +82 -82
  222. package/src/components/querycheckpaper/PaperItem.vue +59 -59
  223. package/src/components/rongcheng/AddPlanItem.vue +344 -344
  224. package/src/components/rongcheng/CheckCurrentCreate.vue +1081 -1081
  225. package/src/components/rongcheng/PaperDefectMain.vue +828 -828
  226. package/src/components/userfile/MeterFile.vue +145 -145
  227. package/src/components/userfile/MeterModify.vue +46 -46
  228. package/src/components/userfileaudit/MeterAuditFile.vue +129 -129
  229. package/src/filiale/BFshiye/pc/checkUserList.vue +772 -772
  230. package/src/filiale/baiyin/android/SafecheckUserInfo.vue +775 -0
  231. package/src/filiale/baiyin/android.js +12 -11
  232. package/src/filiale/dexin/pc/PaperList.vue +840 -840
  233. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +823 -823
  234. package/src/filiale/qingjian/pc/NewCheckpaper.vue +1919 -1919
  235. package/src/filiale/rongchuang/android/PhoneUpUserinfo.vue +1262 -1262
  236. package/src/filiale/rongchuang/android.js +16 -16
  237. package/src/filiale/rongchuang/pc/checkPlanList.vue +398 -398
  238. package/src/filiale/rongchuang/pc.js +18 -18
  239. package/src/filiale/wensu/android/SafecheckOrderV.vue +2444 -2444
  240. package/src/filiale/wensu/android/SafecheckUserInfo.vue +712 -712
  241. package/src/filiale/wensu/pc/CheckSearchUser.vue +1251 -1251
  242. package/src/filiale/wenxi/pc/PaperList.vue +955 -955
  243. package/src/filiale/yangchunboneng/android/CurrentCreate.vue +1191 -1191
  244. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +913 -913
  245. package/src/filiale/yangchunboneng/android.js +21 -21
  246. package/src/filiale/yangchunboneng/pc/CheckBookList.vue +353 -353
  247. package/src/filiale/yangchunboneng/pc/CheckSearchUser.vue +1197 -1197
  248. package/src/filiale/yangchunboneng/pc/HiddenSituation.vue +171 -171
  249. package/src/filiale/yangchunboneng/pc/PaperDefectMain.vue +1112 -1112
  250. package/src/filiale/yangchunboneng/pc/PaperList.vue +757 -757
  251. package/src/filiale/yangchunboneng/pc/SelectCheckPlan.vue +331 -331
  252. package/src/filiale/yangchunboneng/pc.js +29 -29
  253. package/src/main.js +33 -33
  254. package/src/plugins/LoadData.js +10 -10
  255. package/src/plugins/LoadParams.js +24 -24
  256. package/src/rongcheng.js +319 -319
  257. package/src/stores/wxconfig.js +10 -10
  258. package/src/utils/getNowDate.js +33 -33
  259. package/test/e2e/custom-assertions/elementCount.js +26 -26
  260. package/test/e2e/nightwatch.conf.js +40 -40
  261. package/test/e2e/runner.js +30 -30
  262. package/test/e2e/specs/test.js +13 -13
  263. package/test/unit/.eslintrc +5 -5
  264. package/test/unit/TestUtil.js +62 -62
  265. package/test/unit/context.html +20 -20
  266. package/test/unit/index.js +13 -13
  267. package/yarn-error.log +0 -140
@@ -1,955 +1,955 @@
1
- <template>
2
- <div class="flex-row">
3
- <work-busy :is-busy="showbusy"></work-busy>
4
- <div class="basic-main">
5
- <criteria-paged :model="model" v-ref:paged @sort="sort">
6
- <criteria partial='criteria' class="search_area" @condition-changed='$parent.selfSearch' v-ref:criteria>
7
- <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
8
- <div class="row">
9
- <div class="form-group col-sm-2">
10
- <label class="font_normal_body">客户编号</label>
11
- <input type="text" class="input_search" v-model="model.f_userinfo_code"
12
- style="width: 60%" placeholder="客户编号" condition="f_userinfo_code='{}'">
13
- </div>
14
- <div class="form-group col-sm-2">
15
- <label class="font_normal_body">客户名称</label>
16
- <input type="text" class="input_search" v-model="model.f_user_name"
17
- style="width: 60%" placeholder="客户名称" condition="f_user_name like '%{}%'">
18
- </div>
19
- <div class="form-group col-sm-2">
20
-
21
- <label class="font_normal_body">客户类型</label>
22
- <v-select :value.sync="model.f_check_type" v-model='model.f_check_type'
23
- :value-single="true" style="width: 60%"
24
- class="select_list select"
25
- :options='$parent.$parent.check_types' placeholder='客户类型'
26
- close-on-select
27
- condition="f_check_type = '{}'"></v-select>
28
- </div>
29
- <div class="form-group col-sm-2">
30
- <label class="font_normal_body">小&emsp;&emsp;区</label>
31
- <input type="text" class="input_search" v-model="model.f_residential_area"
32
- style="width: 60%" placeholder="小区" condition="f_residential_area like '%{}%'">
33
- </div>
34
- <div class="form-group col-sm-2" >
35
- <label class="font_normal_body">详细地址</label>
36
- <input type="text" class="input_search" v-model="model.f_address"
37
- style="width: 60%" placeholder="详细地址" condition="f_address like '%{}%'">
38
- </div>
39
- <div class="form-group col-sm-2" style="width: auto;margin-top:8px;float: right">
40
-
41
- <export-excel-safe :data="$parent.$parent.searchData"
42
- :field="$parent.$parent.excelHeaders"
43
- :choose-col="true"
44
- progress="safeGetExportProgress"
45
- sqlurl="rs/logic/SafeExportExcel" sql-name="查找安检单"
46
- template-name='安检结果明细'></export-excel-safe>
47
- <!-- <button class="button_spacing button_search" @click="$parent.$parent.showaudio()" v-if="!$parent.$parent.audioshow">录音</button>-->
48
- <button class="button_spacing button_search" @click="$parent.$parent.showaudio()"
49
- v-if="$parent.$parent.audioshow">隐藏
50
- </button>
51
-
52
- <button id="btnbbb" class="button_spacing button_search" @click="search()">查询</button>
53
- <div style="float: right" class="button_spacing"
54
- :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
55
- @click="$parent.$parent.hidden()"></div>
56
- </div>
57
- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow" >
58
- <label class="font_normal_body">安检计划</label>
59
- <input type="text" class="input_search" v-model="$parent.$parent.model.f_check_plan.f_plan_name"
60
- @click="$parent.$parent.showChooser"
61
- style="width: 60%" placeholder="安检计划" readonly="readonly">
62
- </div>
63
- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
64
- <label class="font_normal_body">开始时间</label>
65
- <datepicker
66
- class="select_list select"
67
- :value.sync="model.f_check_start"
68
- placeholder='开始时间' style="width: 60%"
69
- :disabled-days-of-week="[]"
70
- :format="'yyyy-MM-dd'"
71
- :show-rest-button="reset"
72
- v-model="model.f_check_start"
73
- condition="f_offsite_time > ='{} 00:00:00'">
74
- </datepicker>
75
- </div>
76
- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
77
- <label class="font_normal_body">结束时间</label>
78
- <datepicker
79
- :value.sync="model.f_check_end"
80
- placeholder='结束时间' style="width: 60%"
81
- :disabled-days-of-week="[]"
82
- :format="'yyyy-MM-dd'"
83
- :show-rest-button="reset"
84
- v-model="model.f_check_end"
85
- condition="f_offsite_time <= '{} 23:59:59'">
86
- </datepicker>
87
- </div>
88
- <!-- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow" v-show="false">-->
89
- <!-- <label class="font_normal_body" >安检类型</label>-->
90
- <!-- <v-select :value.sync="model.f_safecheck_type" v-model='model.f_safecheck_type'-->
91
- <!-- :value-single="true" style="width: 60%"-->
92
- <!-- class="select_list select"-->
93
- <!-- :options='$parent.$parent.safetype' placeholder='安检类型'-->
94
- <!-- close-on-select-->
95
- <!-- condition="f_safecheck_type = '{}'"></v-select>-->
96
- <!-- </div>-->
97
- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
98
- <label class="font_normal_body">安检状态</label>
99
- <v-select id="f_entry"
100
- class="select_list select"
101
- placeholder='安检状态' style="width: 60%"
102
- v-model='model.f_entry'
103
- :value.sync="$parent.$parent.model.f_entry"
104
- :options='$parent.$parent.f_entry_status'
105
- condition=""
106
- :value-single="true"
107
- close-on-select clear-button></v-select>
108
- </div>
109
-
110
- <!-- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">-->
111
- <!-- <label class="font_normal_body">安&ensp;检&ensp;员</label>-->
112
- <!-- <v-select :value.sync="model.f_checker_id" v-model='model.f_checker_id'-->
113
- <!-- :value-single="true" style="width: 60%"-->
114
- <!-- class="select_list select"-->
115
- <!-- :options='$parent.$parent.checkersid' placeholder='安检员'-->
116
- <!-- close-on-select-->
117
- <!-- condition="f_checker_id = '{}'"></v-select>-->
118
- <!-- </div>-->
119
- <!-- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">-->
120
- <!-- <label class="font_normal_body" style="margin-right: 2px">公&emsp;&emsp;司</label>-->
121
- <!-- <right-tree @re-res="$parent.$parent.getRes" :initresid="$parent.$parent.$login.f.orgid">-->
122
- <!-- </right-tree>-->
123
- <!-- </div>-->
124
- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
125
-
126
- <label class="font_normal_body">用户状态</label>
127
- <v-select :value.sync="model.f_user_state" v-model='model.f_user_state'
128
- :value-single="true" style="width: 60%"
129
- class="select_list select"
130
- :options='$parent.$parent.user_states' placeholder='用户状态'
131
- close-on-select
132
- condition="f_user_state = '{}'"></v-select>
133
- </div>
134
- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
135
-
136
- <label class="font_normal_body">录音照片状态</label>
137
- <v-select :value.sync="model.f_downloadpath" v-model='model.f_downloadpath'
138
- :value-single="true" style="width: 60%"
139
- class="select_list select"
140
- :options='$parent.$parent.downloadpaths' placeholder='录音/照片'
141
- close-on-select
142
- condition="f_downloadpath = '{}'"></v-select>
143
- </div>
144
- <div class="col-sm-4 form-group" v-if="$parent.$parent.criteriaShow" style="margin: 0">
145
- <role-selector-safe
146
- role-name="安检员"
147
- role-lable="安&nbsp;检&nbsp;员&nbsp;"
148
- @re-res="$parent.$parent.getRes"
149
- :value.sync="model.f_checker_id"
150
- v-model="model.f_checker_id"
151
- condition="f_checker_name = '{}'">
152
- </role-selector-safe>
153
- </div>
154
- <div class="form-group col-sm-2" v-show="false">
155
- <label class="font_normal_body">片&emsp;&emsp;区</label>
156
- <v-select class="select_list select"
157
- placeholder='片区/管理站' style="width: 60%"
158
- :value.sync="model.f_slice_area" v-model="model.f_slice_area"
159
- :options='$parent.$parent.sliceArea'
160
- filer-key="name"
161
- close-on-select clear-button
162
- condition="f_slice_area='{}'"
163
- @change="$parent.$parent.getmeterbook(model.f_slice_area)"
164
- :value-single="true">
165
- </v-select>
166
- </div>
167
- <div class="form-group col-sm-2" v-show="false">
168
- <label class="font_normal_body">抄&ensp;表&ensp;册</label>
169
- <v-select class="select_list select"
170
- placeholder='抄表册' style="width: 60%"
171
- :value.sync="model.f_meter_book_num" v-model="model.f_meter_book_num"
172
- :options='$parent.$parent.cbc'
173
- filer-key="name"
174
- close-on-select clear-button
175
- condition="f_meter_book_num={}"
176
- :value-single="true">
177
- </v-select>
178
- </div>
179
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
180
- <label class="font_normal_body">是否作废</label>
181
- <v-select class="select_list select"
182
- placeholder='是否作废' style="width: 60%"
183
- :value.sync="model.f_is_delete" v-model="model.f_is_delete"
184
- :options='$parent.$parent.isdels'
185
- filer-key="name"
186
- close-on-select clear-button
187
- :value-single="true">
188
- </v-select>
189
- </div>
190
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
191
- <label class="font_normal_body">维修结果</label>
192
- <v-select class="select_list select"
193
- placeholder='维修结果' style="width: 60%"
194
- :value.sync="model.f_repaired" v-model="model.f_repaired"
195
- :options='$parent.$parent.repaireds'
196
- filer-key="name"
197
- close-on-select clear-button
198
- condition="f_repaired = '{}'"
199
- :value-single="true">
200
- </v-select>
201
- </div>
202
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
203
- <label class="font_normal_body">安检结果</label>
204
- <v-select class="select_list select"
205
- placeholder='安检结果' style="width: 60%"
206
- :value.sync="model.f_check_result" v-model="model.f_check_result"
207
- :options='$parent.$parent.checkresults'
208
- filer-key="name"
209
- close-on-select clear-button
210
- condition="f_defect_content like'%{}%'"
211
- :value-single="true">
212
- </v-select>
213
- </div>
214
- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
215
-
216
- <label class="font_normal_body">安检类型</label>
217
- <v-select :value.sync="model.f_safecheck_type" v-model='model.f_safecheck_type'
218
- :value-single="true" style="width: 60%"
219
- class="select_list select"
220
- :options='$parent.$parent.safecheck_type' placeholder='安检类型'
221
- close-on-select
222
- condition="f_safecheck_type = '{}'"></v-select>
223
- </div>
224
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
225
- <label class="font_normal_body">是否有改动</label>
226
- <v-select class="select_list select"
227
- placeholder='安检结果' style="width: 60%"
228
- :value.sync="model.f_gaodong_flag" v-model="model.f_gaodong_flag"
229
- :options='$parent.$parent.isdels'
230
- filer-key="name"
231
- close-on-select clear-button
232
- condition="f_gaodong_flag = '{}'"
233
- :value-single="true">
234
- </v-select>
235
- </div>
236
- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
237
- <label class="font_normal_body">气表状态</label>
238
- <v-select :value.sync="model.f_table_state" v-model='model.f_table_state'
239
- :value-single="true" style="width: 60%"
240
- class="select_list select"
241
- :options='$parent.$parent.table_state' placeholder='气表状态'
242
- close-on-select
243
- condition="f_table_state = '{}'"></v-select>
244
- </div>
245
- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
246
- <label class="font_normal_body">审核状态</label>
247
- <v-select :value.sync="model.f_approved" v-model='model.f_approved'
248
- :value-single="true" style="width: 60%"
249
- class="select_list select"
250
- :options='$parent.$parent.review_status' placeholder='审核状态'
251
- close-on-select
252
- condition="f_approved= '{}'"></v-select>
253
- </div>
254
- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
255
- <label class="font_normal_body">审核开始</label>
256
- <datepicker
257
- class="select_list select"
258
- :value.sync="model.f_checksh_start"
259
- placeholder='审核开始时间' style="width: 60%"
260
- :disabled-days-of-week="[]"
261
- :format="'yyyy-MM-dd'"
262
- :show-rest-button="reset"
263
- v-model="model.f_checksh_start"
264
- condition="f_approved_time > ='{} 00:00:00'">
265
- </datepicker>
266
- </div>
267
- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
268
- <label class="font_normal_body">审核结束</label>
269
- <datepicker
270
- :value.sync="model.f_checksh_end"
271
- placeholder='审核结束时间' style="width: 60%"
272
- :disabled-days-of-week="[]"
273
- :format="'yyyy-MM-dd'"
274
- :show-rest-button="reset"
275
- v-model="model.f_checksh_end"
276
- condition="f_approved_time <= '{} 23:59:59'">
277
- </datepicker>
278
- </div>
279
- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
280
- <label class="font_normal_body">审&ensp;核&ensp;人</label>
281
- <input type="text" class="input_search" v-model="model.f_approved_by"
282
- style="width: 60%" placeholder="审核人" condition="f_approved_by like '%{}%'">
283
- </div>
284
- </div>
285
- <modal :show.sync="$parent.$parent.showModal" v-ref:modal>
286
- <div slot="modal-header" class="modal-header">
287
- <h4 class="modal-title">
288
- 选择计划
289
- </h4>
290
- </div>
291
- <div slot="modal-body" class="modal-body">
292
- <plan-chooser :f.sync="$parent.$parent.fun" v-ref:chooser></plan-chooser>
293
- </div>
294
- <div slot="modal-footer" class="modal-footer" style="text-align: center;white-space: nowrap">
295
- <button class="button_search" @click="$parent.$parent.ok">确认</button>
296
- <button class="button_search" @click="$parent.$parent.cancel">取消</button>
297
- </div>
298
- </modal>
299
- </div>
300
- </criteria>
301
- <data-grid class="list_area table_sy" style="overflow: hidden" :model="model" partial='list' v-ref:grid>
302
- <template partial='head'>
303
- <tr>
304
- <th>
305
- <nobr>客户编号</nobr>
306
- </th>
307
- <th>
308
- <nobr>客户名称</nobr>
309
- </th>
310
- <th>
311
- <nobr>客户电话</nobr>
312
- </th>
313
- <th>
314
- <nobr>客户类型</nobr>
315
- </th>
316
- <th>
317
- <nobr>用户状态</nobr>
318
- </th>
319
- <th>
320
- <nobr>小区</nobr>
321
- </th>
322
- <th>
323
- <nobr>地址</nobr>
324
- </th>
325
- <th>
326
- <nobr>码盘数</nobr>
327
- </th>
328
- <th>
329
- <nobr>气量差值</nobr>
330
- </th>
331
- <th>
332
- <nobr>剩余气量</nobr>
333
- </th>
334
- <th>
335
- <nobr>波纹管数量</nobr>
336
- </th>
337
- <th>
338
- <nobr>自闭阀数量</nobr>
339
- </th>
340
- <th>
341
- <nobr>合同日期</nobr>
342
- </th>
343
- <th>
344
- <nobr>表号</nobr>
345
- </th>
346
- <th>
347
- <nobr>表品牌</nobr>
348
- </th>
349
- <th>
350
- <nobr>表位置</nobr>
351
- </th>
352
- <th>
353
- <nobr>左右表</nobr>
354
- </th>
355
- <th>
356
- <nobr>表封号</nobr>
357
- </th>
358
- <th>
359
- <nobr>气表状态</nobr>
360
- </th>
361
- <th>
362
- <nobr>安检类型</nobr>
363
- </th>
364
- <th>
365
- <nobr>安检结果</nobr>
366
- </th>
367
- <th>
368
- <nobr>隐患详情</nobr>
369
- </th>
370
- <!-- <th>-->
371
- <!-- <nobr>维修状态</nobr>-->
372
- <!-- </th>-->
373
- <!-- <th>-->
374
- <!-- <nobr>维修人</nobr>-->
375
- <!-- </th>-->
376
- <!-- <th>-->
377
- <!-- <nobr>维修时间</nobr>-->
378
- <!-- </th>-->
379
- <!-- <th>-->
380
- <!-- <nobr>维修描述</nobr>-->
381
- <!-- </th>-->
382
-
383
- <th>
384
- <nobr>备注</nobr>
385
- </th>
386
- <th>
387
- <nobr>安检状态</nobr>
388
- </th>
389
- <th>
390
- <nobr>安检计划</nobr>
391
- </th>
392
- <th>
393
- <nobr>整改通知书</nobr>
394
- </th>
395
- <th>
396
- <nobr>录音/照片</nobr>
397
- </th>
398
- <th>
399
- <data-order field="f_offsite_time" name="安检时间"></data-order>
400
- </th>
401
- <th>
402
- <nobr>安检员</nobr>
403
- </th>
404
- <th>
405
- <nobr>审核状态</nobr>
406
- </th>
407
- <th>
408
- <nobr>审核人</nobr>
409
- </th>
410
- <th>
411
- <nobr>审核时间</nobr>
412
- </th>
413
- <th>
414
- <nobr>操作</nobr>
415
- </th>
416
- <th v-if="$parent.$parent.$parent.audioshow">
417
- <nobr>录音</nobr>
418
- </th>
419
- </tr>
420
- </template>
421
- <template partial='body'>
422
- <td style="text-align: center;white-space: nowrap">{{ row.f_userinfo_code }}</td>
423
- <td style="text-align: center;white-space: nowrap">{{ row.f_user_name }}</td>
424
- <td style="text-align: center;white-space: nowrap">{{ row.f_user_phone }}</td>
425
- <td style="text-align: center;white-space: nowrap">{{ row.f_check_type }}</td>
426
- <td style="text-align: center;white-space: nowrap">{{ row.f_user_state }}</td>
427
- <td style="text-align: center;white-space: nowrap">{{ row.f_residential_area }}</td>
428
- <td style="text-align: center;white-space: nowrap">{{ row.f_address }}</td>
429
- <td style="text-align: center;white-space: nowrap">{{ row.f_mapanshu }}</td>
430
- <td style="text-align: center;white-space: nowrap"
431
- @dblclick.stop="$parent.$parent.$parent.tochangeRemark(row)">{{ row.f_chazhi }}
432
- </td>
433
- <td style="text-align: center;white-space: nowrap">{{ row.f_shengyu_gas }}</td>
434
- <td style="text-align: center;white-space: nowrap">{{ row.f_bowenguan }}</td>
435
- <td style="text-align: center;white-space: nowrap">{{ row.f_zibifa }}</td>
436
- <td style="text-align: center;white-space: nowrap">{{ row.f_contractdate }}</td>
437
- <td style="text-align: center;white-space: nowrap">{{ row.f_meternumber }}</td>
438
- <td style="text-align: center;white-space: nowrap">{{ row.f_meter_classify }}</td>
439
- <td style="text-align: center;white-space: nowrap">{{ row.f_position }}</td>
440
- <td style="text-align: center;white-space: nowrap">{{ row.f_aroundmeter }}</td>
441
- <td style="text-align: center;white-space: nowrap">{{ row.f_metertitles }}</td>
442
- <td style="text-align: center;white-space: nowrap">{{ row.f_table_state }}</td>
443
- <td style="text-align: center;white-space: nowrap">{{ row.f_safecheck_type }}</td>
444
- <td style="text-align: center;white-space: nowrap">{{ row.defect_content == '无隐患' ? '正常' : '有隐患' }}</td>
445
- <td style="text-align: center;white-space: nowrap">{{ row.defect_content }}</td>
446
- <!-- <td style="text-align: center;white-space: nowrap">{{ row.repaired}}</td>-->
447
- <!-- <td style="text-align: center;white-space: nowrap">{{ row.f_repairman}}</td>-->
448
- <!-- <td style="text-align: center;white-space: nowrap">{{ row.f_repair_date}}</td>-->
449
- <!-- <td style="text-align: center;white-space: nowrap">{{ row.f_ratification_des}}</td>-->
450
- <td style="text-align: center;white-space: nowrap">{{ row.f_repair_approved_note }}</td>
451
- <td style="text-align: center;white-space: nowrap">{{ row.f_entry_status }}</td>
452
- <td style="text-align: center;white-space: nowrap">{{ row.f_plan_name }}</td>
453
- <!--整改通知书别名-->
454
- <td style="text-align: center;white-space: nowrap">{{ row.f_rectification_notice }}</td>
455
- <td style="text-align: center;white-space: nowrap"
456
- v-if="row.f_entry_status=='到访不遇'|| row.f_entry_status=='拒检'">{{ row.f_downloadpath }}
457
- </td>
458
- <td style="text-align: center;white-space: nowrap" v-else></td>
459
- <td style="text-align: center;white-space: nowrap">{{ row.f_offsite_time }}</td>
460
- <td style="text-align: center;white-space: nowrap">{{ row.f_checker_name }}</td>
461
- <td style="text-align: center;white-space: nowrap">{{ row.f_approved }}</td>
462
- <td style="text-align: center;white-space: nowrap">{{ row.f_approved_by }}</td>
463
- <td style="text-align: center;white-space: nowrap">{{ row.f_approved_time }}</td>
464
- <td style="text-align: center;white-space: nowrap">
465
- <button class="button_spacing button_search-1" @click='$parent.$parent.$parent.change(row)'>查看</button>
466
- <!-- <button class="button_spacing button_search-1" @click='$parent.$parent.$parent.del(row)' v-show="$parent.$parent.$parent.isdel=='否'">作废</button>-->
467
- <button class="button_spacing button_search-1" @click='$parent.$parent.$parent.pass(row)'
468
- v-show ="row.f_approved == '未审核'">通过
469
- </button>
470
- <button type="button" class="button_new-1 button_spacing" data-toggle="dropdown"
471
- @click="$parent.$parent.$parent.print(row)">
472
- 打印
473
- </button>
474
- </td>
475
- <td style="text-align: center;white-space: nowrap" v-if="$parent.$parent.$parent.audioshow">
476
- <!-- <button class="button_spacing button_search-1" @click='$parent.$parent.$parent.change(row)'>查看</button>-->
477
- <audio controls="controls" v-if="row.f_recording1_path">
478
- <source type="audio/mpeg" :src="'rs/audio/file/'+row.f_recording1_path">
479
- </audio>
480
- </td>
481
- </template>
482
- </data-grid>
483
- </criteria-paged>
484
- <check-msg v-if="showcheckmsg" :show="showcheckmsg" :data="checkInfo"></check-msg>
485
- </div>
486
- <modal :show.sync="showModal2" :backdrop="false">
487
- <div slot="modal-header" class="modal-header">
488
- <h4 class="modal-title">
489
- 用户{{ this.paperrow.f_user_name }}备注修改
490
- </h4>
491
- </div>
492
- <div slot="modal-body" class="modal-body">
493
- <div class="row" style="margin-top: 10px">
494
- <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">备注</label>
495
- <div class="col-xs-8 col-md-8">
496
- <textarea class="form-control" type="text" v-model="paperRemark"></textarea>
497
- </div>
498
- </div>
499
- </div>
500
- <div slot="modal-footer" class="modal-footer" style="text-align: center">
501
- <button class="button_search" @click="okshow">确认</button>
502
- <button class="button_search" @click="cancelshow">取消</button>
503
- </div>
504
- </modal>
505
- </div>
506
- </template>
507
-
508
- <script>
509
- import {PagedList} from 'vue-client'
510
- import Vue from 'vue'
511
- import co from 'co'
512
- import AppData from '../../../stores/AppData'
513
- import * as Util from '../../Util'
514
- import getNowDate from "../../../utils/getNowDate";
515
- import HttpResetClass from "vue-client/src/plugins/HttpResetClass";
516
- import BenzAMRRecorder from 'benz-amr-recorder'
517
-
518
- //获取json配置文件
519
- let asyncReady = async function (self) {
520
- // 获取配置信息
521
- try {
522
- let res = await Vue.resetget(`/phone/rs/vue`, {data: {}}, {resolveMsg: null, rejectMsg: null})
523
- Vue.config = res.data
524
- } catch (error) {
525
- // 忽略704,文件找不到异常R
526
- if (error.status !== 704) {
527
- throw error
528
- }
529
- }
530
- }
531
-
532
- let select = function* (self) {
533
- let http = new HttpResetClass()
534
- let getGasman = yield http.load('POST', '/rs/search', {
535
- source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1))',
536
- userid: self.$login.f.id
537
- }, {resolveMsg: null, rejectMsg: null})
538
- ////tag
539
- self.checkersid.push({label: '全部', value: ''})
540
- getGasman.data.forEach((checker) => {
541
- self.checkersid.push({label: checker.name, value: checker.id})
542
- })
543
- }
544
-
545
- export default {
546
- title: '安检结果查看',
547
- data() {
548
- let model = new PagedList('rs/sql/查找安检单', 20, {
549
- f_plan_id: 'this.f_plan_id',
550
- f_approved: 'this.f_approved',
551
- f_entry_status: 'this.f_entry',
552
- f_no_checkplan: 'this.f_no_checkplan',
553
- f_filialeid: 'this.f_filialeid',
554
- f_defect_content:'this.f_defect_content',
555
- orderitem: "'f_offsite_time desc'"
556
- })
557
- model.f_plan_id = ''
558
- model.f_approved = ''
559
- model.f_entry = ''
560
- model.f_no_checkplan = ''
561
- model.f_filialeid = `('${this.$login.f.orgid}')`
562
- model.f_defect_content="CASE WHEN CHARINDEX( '\"result\":\"正常\"', f_defect_content ) > 0 THEN '无隐患' ELSE replace(replace(replace( replace( RIGHT ( f_defect_content, len( f_defect_content ) - 26 ), substring('{}',2,1), '' ), substring('{}',1,1), '' ),']',''),'\"','') END"
563
- return {
564
- showbusy:false,
565
- audioshow: false,
566
- paperRemark:'',
567
- searchData: {
568
- condition: "1=1",
569
- orderitem: "f_offsite_time desc",
570
- f_plan_id: "",
571
- f_approved: '',
572
- f_entry_status: '',
573
- f_defect_content: "CASE WHEN CHARINDEX( '\"result\":\"正常\"', f_defect_content ) > 0 THEN '无隐患' ELSE replace(replace(replace( replace( RIGHT ( f_defect_content, len( f_defect_content ) - 26 ), substring('{}',2,1), '' ), substring('{}',1,1), '' ),']',''),'\"','') END",
574
- f_no_checkplan: '',
575
- f_filialeid: `('${this.$login.f.orgid}')`
576
- },
577
- model: model,
578
- //searchData:searchData,
579
- excelHeaders: {
580
- 'f_userinfo_code': '客户编号',
581
- 'f_user_name': '客户名称',
582
- 'f_user_phone': '客户电话',
583
- 'f_check_type': '客户类型',
584
- 'f_user_state': '客户状态',
585
- 'f_residential_area': '小区',
586
- 'f_address': '地址',
587
- 'f_mapanshu': '码盘数',
588
- 'f_chazhi': '气量差值',
589
- 'f_shengyu_gas':'剩余气量',
590
- 'f_bowenguan':'波纹管数量',
591
- 'f_zibifa':'自闭阀数量',
592
- 'f_contractdate': '合同日期',
593
- 'f_table_state': '气表状态',
594
- 'f_meternumber': '表号',
595
- 'f_meter_classify': '表品牌',
596
- 'f_position': '表位置',
597
- 'f_aroundmeter': '左右表',
598
- 'f_metertitles': '表封号',
599
- 'defect_content': '安检结果',
600
- // 'repaired': '维修状态',
601
- // 'f_repairman': '维修人',
602
- // 'f_repair_date': '维修时间',
603
- // 'f_ratification_des': '维修描述',
604
- 'f_repair_approved_note': '备注',
605
- 'f_plan_name':'计划名称',
606
- 'f_rectification_notice':'整改通知书',
607
- 'f_downloadpath':'录音/照片',
608
- 'f_entry_status': '安检状态',
609
- 'f_offsite_time': '安检时间',
610
- 'f_checker_name': '安检员',
611
- 'f_approved' : '审核状态',
612
- 'f_approved_by' : '审核人',
613
- 'f_approved_time':'审核时间'
614
- },
615
- fun: this.$login.f,
616
- showModal2:false,
617
- paperrow:{},
618
- checkersid: [],
619
- safetype: [
620
- {label: '全部', value: ''}, ...this.$appdata.getParam('安检类型')],
621
- downloadpaths: [{label: '全部', value: ''},{label: '已上传', value: '已上传'},{label: '未上传', value: '未上传'}],
622
- criteriaShow: false,
623
- showModal: false,
624
- table_state: [{label: '全部', value: ''}, ...this.$appdata.getParam('气表状态')],
625
- f_approval_states: this.$appdata.getParam('安检单审核状态'),
626
- f_entry_status: [{label: '全部', value: ''}, ...this.$appdata.getParam('安检状态')],
627
- user_states:[{label: '全部', value: ''}, ...this.$appdata.getParam('用户状态')],
628
- safecheck_type:[{label: '全部', value: ''}, ...this.$appdata.getParam('安检类型')],
629
- check_types:[{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')],
630
- f_checkplans: this.$appdata.getParam('有无计划'),
631
- showcheckmsg: false,
632
- checkInfo: {},
633
- orderDefault: "'f_offsite_time'",
634
- orderFields: {
635
- f_offsite_time: 'no'
636
- },
637
- sliceArea: [],
638
- review_status:[{label: '全部', value: ''},{label: '待审核', value: '未审核'},{label: '正常', value: '通过'}],
639
- isdels: [{label: '全部', value: ''},{label: '是', value: '是'},{label: '否', value: '否'}],
640
- repaireds: [{label: '全部', value: ''},{label: '已修', value: '已修'},{label: '未修', value: '未修'}],
641
- checkresults: [{label: '全部', value: ''},{label: '正常', value: '正常'},{label: '有隐患', value: '有隐患'}],
642
- isdel: '否',
643
- cbc: []
644
- }
645
- },
646
- methods: {
647
- tochangeRemark(row){
648
- //tag
649
- this.paperRemark=row.f_chazhi
650
- this.paperrow=row
651
- this.showModal2=true
652
-
653
- },
654
- okshow(){
655
- let sql=`update t_check_paper set f_chazhi='${this.paperRemark}' where id='${this.paperrow.id}'`
656
- //tag
657
- new HttpResetClass().load('post','rs/logic/runSQL',{data:{sql:sql}},{resolveMsg:'修改成功',rejectMsg:'修改失败'}).then(res=>{
658
- // this.$showMessage("修改成功")
659
- let e = document.createEvent("MouseEvents");
660
- e.initEvent("click", true, true);
661
- document.getElementById("btnbbb").dispatchEvent(e);
662
- this.showModal2=false
663
- })
664
-
665
- },
666
- cancelshow(){
667
- this.showModal2=false
668
- },
669
- pass(row) {
670
- //判断当前登录人是否有审核权限
671
- if(this.$appdata.getSingleValue('开启安检审核权限')=='是'){
672
- if(!this.$login.r.includes('安检结果审核')){
673
- //提示无审核权限
674
- this.$showMessage('您无审核权限')
675
- return
676
- }
677
- }
678
- var reqdata = {
679
- audit_result: '通过',
680
- operator: "success",
681
- audit_time: Util.getNowDate(),
682
- user_name: this.$login.f.name,
683
- id: row.id,
684
- f_check_item_id: row.f_check_item_id
685
- }
686
- this.$showMessage('确认通过当前安检单吗?', ['confirm', 'cancel']).then((res) => {
687
- if (res === 'confirm') {
688
- this.$resetpost('/rs/logic/updateAafeAudit', {data: reqdata}).then((res) => {
689
- //tag
690
- if (res.data.code == 200) {
691
- this.$showMessage('通过成功')
692
- this.search()
693
- } else {
694
- this.$showMessage('通过失败!')
695
- }
696
- }).catch((e) => {
697
- this.$showMessage(JSON.stringify(e) + '通过失败!')
698
- })
699
- }
700
- })
701
- },
702
- del(row) {
703
- //tag
704
- this.$showMessage('确认作废当前安检单吗?', ['confirm', 'cancel']).then((res) => {
705
- if (res === 'confirm') {
706
- this.$resetpost('rs/logic/DelCheckPaper', {id:row.id}).then((res) => {
707
- //tag
708
- if(res.data.code == 200){
709
- this.$showMessage('作废成功')
710
- this.search()
711
- }else {
712
- this.$showMessage('作废失败!')
713
- }
714
- }).catch((e) => {
715
- this.$showMessage(JSON.stringify(e) +'作废失败!')
716
- })
717
- }
718
- })
719
- },
720
- showaudio() {
721
- //tag
722
- this.audioshow = !this.audioshow
723
- //tag
724
- },
725
- getmeterbook(val) {
726
- this.cbc = []
727
- this.cbc.push({
728
- label: '全部',
729
- value: ''
730
- })
731
- if (val == '') {
732
-
733
- this.cbcs.forEach(res => {
734
- this.cbc.push({
735
- label: res.f_book_name,
736
- value: res.id
737
- })
738
- })
739
- } else {
740
- this.cbcs.forEach(res => {
741
- if (res.f_book_slice_area == val) {
742
- this.cbc.push({
743
- label: res.f_book_name,
744
- value: res.id
745
- })
746
- }
747
- })
748
- }
749
- },
750
- Mreadibook(val) {
751
- ////tag
752
- ////tag
753
- this.sliceArea = []
754
- if (val) {
755
- new HttpResetClass().load('POST', `/rs/sql/tel_singleTable_OrderBy`, {
756
- data: {
757
- items: 'name',
758
- tablename: 't_zone',
759
- condition: `parentid in ${val}`,
760
- orderitem: 'id'
761
- }
762
- }, {resolveMsg: null, rejectMsg: null}).then((res) => {
763
- this.sliceArea.push({
764
- label: '全部',
765
- value: ''
766
- })
767
- res.data.forEach(ress => {
768
- this.sliceArea.push({
769
- label: ress.name,
770
- value: ress.name
771
- })
772
- })
773
-
774
- })
775
- }
776
- },
777
- getAllMeterBook(val) {
778
- ////tag
779
- ////tag
780
- this.cbcs = []
781
- if (val) {
782
- new HttpResetClass().load('POST', `/rs/sql/tel_singleTable_OrderBy`, {
783
- data: {
784
- items: 'f_book_name,f_book_slice_area,id',
785
- tablename: 't_meter_book',
786
- condition: `f_filiale_id in ${val}`,
787
- orderitem: 'id'
788
- }
789
- }, {resolveMsg: null, rejectMsg: null}).then((res) => {
790
- res.data.forEach(ress => {
791
- this.cbcs.push({
792
- id: ress.id,
793
- f_book_name: ress.f_book_name,
794
- f_book_slice_area: ress.f_book_slice_area
795
- })
796
- })
797
- this.cbc = []
798
- this.cbc.push({
799
- label: '全部',
800
- value: ''
801
- })
802
- this.cbcs.forEach(res => {
803
- this.cbc.push({
804
- label: res.f_book_name,
805
- value: res.id
806
- })
807
- })
808
- })
809
- }
810
- },
811
- getRes(obj) {
812
- this.model.f_filialeid = this.$login.convertToIn(obj.resids);
813
- this.searchData.f_filialeid = this.$login.convertToIn(obj.resids);
814
- this.Mreadibook(this.model.f_filialeid)
815
- this.getAllMeterBook(this.model.f_filialeid)
816
- //this.$refs.paged.$refs.criteria.search()
817
- },
818
-
819
- change(row) {
820
- // Vue.$login = {jwt: row.f_checker_id}
821
- asyncReady(this).then(() => {
822
- ////tag)
823
- row.f_upload_state = '已传'
824
- this.$goto('new-check-paper', {
825
- f_plan_id: row.f_check_plan_id,
826
- item: row,
827
- role: 'view',
828
- isdel: this.isdel
829
- }, 'self')
830
- }).catch(
831
- (respanse) => {
832
- alert('获取配置文件失败')
833
- })
834
- },
835
- readConfig() {
836
- let gen = asyncReady(this)
837
- return co(gen)
838
- },
839
- showChooser() {
840
- this.showModal = true
841
- },
842
- hidden() {
843
- this.criteriaShow = !this.criteriaShow
844
- },
845
- refresh() {
846
- this.$refs.paged.$refs.criteria.search()
847
- },
848
- ok() {
849
- this.showModal = false
850
- if (this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow.id) {
851
- this.model.f_plan_id = this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow.id
852
- this.model.f_check_plan = this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow
853
- }
854
- },
855
- cancel() {
856
- this.showModal = false
857
- this.model.f_check_plan = {f_plan_name: '', id: ''}
858
- this.model.f_plan_id = ''
859
- },
860
- print(row) {
861
- this.showcheckmsg = true
862
- this.checkInfo = row
863
- },
864
- sort(field, rule) {
865
- // 将所有排序方式设为不排序,实现相互排斥
866
- for (let key in this.orderFields) {
867
- if (key === field) {
868
- this.orderFields[key] = rule
869
- } else {
870
- this.orderFields[key] = 'no'
871
- }
872
- }
873
- // 如果新规则不排序,还原为默认排序
874
- if (rule === 'no') {
875
- this.model.paramSource.orderitem = `'${this.orderDefault}'`
876
- } else {
877
- this.model.paramSource.orderitem = `'${field} ${rule}'`
878
- }
879
- this.search()
880
- },
881
- search() {
882
- this.$refs.paged.$refs.criteria.search()
883
- },
884
- selfSearch(args) {
885
- ////tag
886
- //args.condition+=" and f_check_type='民用'"
887
- //tag
888
- // //tag
889
- if (this.$refs.paged.$refs.criteria.model.f_is_delete == '是') {
890
- //tag
891
- this.isdel = '是'
892
- this.model.url = 'rs/sql/QueryDelCheckPaper'
893
-
894
- } else {
895
- //tag
896
- this.isdel = '否'
897
- this.model.url = 'rs/sql/查找安检单'
898
- }
899
- // if (args.condition.indexOf('f_table_state') == -1){
900
- // args.condition += " and f_table_state = '正常'"
901
- // }
902
- this.model.search(args.condition, args.model, args.condValue)
903
- }
904
- },
905
-
906
- ready() {
907
- ////tag
908
- this.function = this.f
909
- ////tag
910
-
911
- let gen = select(this)
912
- //this.pianqu()
913
- this.Mreadibook(`('${this.$login.f.orgid}')`)
914
- co(gen)
915
- },
916
- watch: {
917
- 'model.f_no_checkplan'(val) {
918
- if (this.model.f_no_checkplan) {
919
- this.searchData.f_no_checkplan = val
920
- }
921
- if (this.model.f_no_checkplan == '有计划安检') {
922
-
923
- this.showChooser()
924
- }
925
- },
926
- 'model.condition'(val) {
927
- if (val) {
928
- this.searchData.condition = val
929
- }
930
-
931
- },
932
- 'model.f_entry'(val) {
933
- if (val) {
934
- this.searchData.f_entry_status = val
935
- }
936
- },
937
- 'model.f_plan_id'(val) {
938
- if (val) {
939
- this.searchData.f_plan_id = val
940
- }
941
- },
942
- 'model.f_slice_area'(val) {
943
- if (val) {
944
-
945
- }
946
- },
947
- 'model.f_approved'(val) {
948
- if (val) {
949
- this.searchData.f_approved = val
950
- }
951
- },
952
- }
953
-
954
- }
955
- </script>
1
+ <template>
2
+ <div class="flex-row">
3
+ <work-busy :is-busy="showbusy"></work-busy>
4
+ <div class="basic-main">
5
+ <criteria-paged :model="model" v-ref:paged @sort="sort">
6
+ <criteria partial='criteria' class="search_area" @condition-changed='$parent.selfSearch' v-ref:criteria>
7
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
8
+ <div class="row">
9
+ <div class="form-group col-sm-2">
10
+ <label class="font_normal_body">客户编号</label>
11
+ <input type="text" class="input_search" v-model="model.f_userinfo_code"
12
+ style="width: 60%" placeholder="客户编号" condition="f_userinfo_code='{}'">
13
+ </div>
14
+ <div class="form-group col-sm-2">
15
+ <label class="font_normal_body">客户名称</label>
16
+ <input type="text" class="input_search" v-model="model.f_user_name"
17
+ style="width: 60%" placeholder="客户名称" condition="f_user_name like '%{}%'">
18
+ </div>
19
+ <div class="form-group col-sm-2">
20
+
21
+ <label class="font_normal_body">客户类型</label>
22
+ <v-select :value.sync="model.f_check_type" v-model='model.f_check_type'
23
+ :value-single="true" style="width: 60%"
24
+ class="select_list select"
25
+ :options='$parent.$parent.check_types' placeholder='客户类型'
26
+ close-on-select
27
+ condition="f_check_type = '{}'"></v-select>
28
+ </div>
29
+ <div class="form-group col-sm-2">
30
+ <label class="font_normal_body">小&emsp;&emsp;区</label>
31
+ <input type="text" class="input_search" v-model="model.f_residential_area"
32
+ style="width: 60%" placeholder="小区" condition="f_residential_area like '%{}%'">
33
+ </div>
34
+ <div class="form-group col-sm-2" >
35
+ <label class="font_normal_body">详细地址</label>
36
+ <input type="text" class="input_search" v-model="model.f_address"
37
+ style="width: 60%" placeholder="详细地址" condition="f_address like '%{}%'">
38
+ </div>
39
+ <div class="form-group col-sm-2" style="width: auto;margin-top:8px;float: right">
40
+
41
+ <export-excel-safe :data="$parent.$parent.searchData"
42
+ :field="$parent.$parent.excelHeaders"
43
+ :choose-col="true"
44
+ progress="safeGetExportProgress"
45
+ sqlurl="rs/logic/SafeExportExcel" sql-name="查找安检单"
46
+ template-name='安检结果明细'></export-excel-safe>
47
+ <!-- <button class="button_spacing button_search" @click="$parent.$parent.showaudio()" v-if="!$parent.$parent.audioshow">录音</button>-->
48
+ <button class="button_spacing button_search" @click="$parent.$parent.showaudio()"
49
+ v-if="$parent.$parent.audioshow">隐藏
50
+ </button>
51
+
52
+ <button id="btnbbb" class="button_spacing button_search" @click="search()">查询</button>
53
+ <div style="float: right" class="button_spacing"
54
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
55
+ @click="$parent.$parent.hidden()"></div>
56
+ </div>
57
+ <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow" >
58
+ <label class="font_normal_body">安检计划</label>
59
+ <input type="text" class="input_search" v-model="$parent.$parent.model.f_check_plan.f_plan_name"
60
+ @click="$parent.$parent.showChooser"
61
+ style="width: 60%" placeholder="安检计划" readonly="readonly">
62
+ </div>
63
+ <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
64
+ <label class="font_normal_body">开始时间</label>
65
+ <datepicker
66
+ class="select_list select"
67
+ :value.sync="model.f_check_start"
68
+ placeholder='开始时间' style="width: 60%"
69
+ :disabled-days-of-week="[]"
70
+ :format="'yyyy-MM-dd'"
71
+ :show-rest-button="reset"
72
+ v-model="model.f_check_start"
73
+ condition="f_offsite_time > ='{} 00:00:00'">
74
+ </datepicker>
75
+ </div>
76
+ <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
77
+ <label class="font_normal_body">结束时间</label>
78
+ <datepicker
79
+ :value.sync="model.f_check_end"
80
+ placeholder='结束时间' style="width: 60%"
81
+ :disabled-days-of-week="[]"
82
+ :format="'yyyy-MM-dd'"
83
+ :show-rest-button="reset"
84
+ v-model="model.f_check_end"
85
+ condition="f_offsite_time <= '{} 23:59:59'">
86
+ </datepicker>
87
+ </div>
88
+ <!-- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow" v-show="false">-->
89
+ <!-- <label class="font_normal_body" >安检类型</label>-->
90
+ <!-- <v-select :value.sync="model.f_safecheck_type" v-model='model.f_safecheck_type'-->
91
+ <!-- :value-single="true" style="width: 60%"-->
92
+ <!-- class="select_list select"-->
93
+ <!-- :options='$parent.$parent.safetype' placeholder='安检类型'-->
94
+ <!-- close-on-select-->
95
+ <!-- condition="f_safecheck_type = '{}'"></v-select>-->
96
+ <!-- </div>-->
97
+ <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
98
+ <label class="font_normal_body">安检状态</label>
99
+ <v-select id="f_entry"
100
+ class="select_list select"
101
+ placeholder='安检状态' style="width: 60%"
102
+ v-model='model.f_entry'
103
+ :value.sync="$parent.$parent.model.f_entry"
104
+ :options='$parent.$parent.f_entry_status'
105
+ condition=""
106
+ :value-single="true"
107
+ close-on-select clear-button></v-select>
108
+ </div>
109
+
110
+ <!-- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">-->
111
+ <!-- <label class="font_normal_body">安&ensp;检&ensp;员</label>-->
112
+ <!-- <v-select :value.sync="model.f_checker_id" v-model='model.f_checker_id'-->
113
+ <!-- :value-single="true" style="width: 60%"-->
114
+ <!-- class="select_list select"-->
115
+ <!-- :options='$parent.$parent.checkersid' placeholder='安检员'-->
116
+ <!-- close-on-select-->
117
+ <!-- condition="f_checker_id = '{}'"></v-select>-->
118
+ <!-- </div>-->
119
+ <!-- <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">-->
120
+ <!-- <label class="font_normal_body" style="margin-right: 2px">公&emsp;&emsp;司</label>-->
121
+ <!-- <right-tree @re-res="$parent.$parent.getRes" :initresid="$parent.$parent.$login.f.orgid">-->
122
+ <!-- </right-tree>-->
123
+ <!-- </div>-->
124
+ <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
125
+
126
+ <label class="font_normal_body">用户状态</label>
127
+ <v-select :value.sync="model.f_user_state" v-model='model.f_user_state'
128
+ :value-single="true" style="width: 60%"
129
+ class="select_list select"
130
+ :options='$parent.$parent.user_states' placeholder='用户状态'
131
+ close-on-select
132
+ condition="f_user_state = '{}'"></v-select>
133
+ </div>
134
+ <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
135
+
136
+ <label class="font_normal_body">录音照片状态</label>
137
+ <v-select :value.sync="model.f_downloadpath" v-model='model.f_downloadpath'
138
+ :value-single="true" style="width: 60%"
139
+ class="select_list select"
140
+ :options='$parent.$parent.downloadpaths' placeholder='录音/照片'
141
+ close-on-select
142
+ condition="f_downloadpath = '{}'"></v-select>
143
+ </div>
144
+ <div class="col-sm-4 form-group" v-if="$parent.$parent.criteriaShow" style="margin: 0">
145
+ <role-selector-safe
146
+ role-name="安检员"
147
+ role-lable="安&nbsp;检&nbsp;员&nbsp;"
148
+ @re-res="$parent.$parent.getRes"
149
+ :value.sync="model.f_checker_id"
150
+ v-model="model.f_checker_id"
151
+ condition="f_checker_name = '{}'">
152
+ </role-selector-safe>
153
+ </div>
154
+ <div class="form-group col-sm-2" v-show="false">
155
+ <label class="font_normal_body">片&emsp;&emsp;区</label>
156
+ <v-select class="select_list select"
157
+ placeholder='片区/管理站' style="width: 60%"
158
+ :value.sync="model.f_slice_area" v-model="model.f_slice_area"
159
+ :options='$parent.$parent.sliceArea'
160
+ filer-key="name"
161
+ close-on-select clear-button
162
+ condition="f_slice_area='{}'"
163
+ @change="$parent.$parent.getmeterbook(model.f_slice_area)"
164
+ :value-single="true">
165
+ </v-select>
166
+ </div>
167
+ <div class="form-group col-sm-2" v-show="false">
168
+ <label class="font_normal_body">抄&ensp;表&ensp;册</label>
169
+ <v-select class="select_list select"
170
+ placeholder='抄表册' style="width: 60%"
171
+ :value.sync="model.f_meter_book_num" v-model="model.f_meter_book_num"
172
+ :options='$parent.$parent.cbc'
173
+ filer-key="name"
174
+ close-on-select clear-button
175
+ condition="f_meter_book_num={}"
176
+ :value-single="true">
177
+ </v-select>
178
+ </div>
179
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
180
+ <label class="font_normal_body">是否作废</label>
181
+ <v-select class="select_list select"
182
+ placeholder='是否作废' style="width: 60%"
183
+ :value.sync="model.f_is_delete" v-model="model.f_is_delete"
184
+ :options='$parent.$parent.isdels'
185
+ filer-key="name"
186
+ close-on-select clear-button
187
+ :value-single="true">
188
+ </v-select>
189
+ </div>
190
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
191
+ <label class="font_normal_body">维修结果</label>
192
+ <v-select class="select_list select"
193
+ placeholder='维修结果' style="width: 60%"
194
+ :value.sync="model.f_repaired" v-model="model.f_repaired"
195
+ :options='$parent.$parent.repaireds'
196
+ filer-key="name"
197
+ close-on-select clear-button
198
+ condition="f_repaired = '{}'"
199
+ :value-single="true">
200
+ </v-select>
201
+ </div>
202
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
203
+ <label class="font_normal_body">安检结果</label>
204
+ <v-select class="select_list select"
205
+ placeholder='安检结果' style="width: 60%"
206
+ :value.sync="model.f_check_result" v-model="model.f_check_result"
207
+ :options='$parent.$parent.checkresults'
208
+ filer-key="name"
209
+ close-on-select clear-button
210
+ condition="f_defect_content like'%{}%'"
211
+ :value-single="true">
212
+ </v-select>
213
+ </div>
214
+ <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
215
+
216
+ <label class="font_normal_body">安检类型</label>
217
+ <v-select :value.sync="model.f_safecheck_type" v-model='model.f_safecheck_type'
218
+ :value-single="true" style="width: 60%"
219
+ class="select_list select"
220
+ :options='$parent.$parent.safecheck_type' placeholder='安检类型'
221
+ close-on-select
222
+ condition="f_safecheck_type = '{}'"></v-select>
223
+ </div>
224
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
225
+ <label class="font_normal_body">是否有改动</label>
226
+ <v-select class="select_list select"
227
+ placeholder='安检结果' style="width: 60%"
228
+ :value.sync="model.f_gaodong_flag" v-model="model.f_gaodong_flag"
229
+ :options='$parent.$parent.isdels'
230
+ filer-key="name"
231
+ close-on-select clear-button
232
+ condition="f_gaodong_flag = '{}'"
233
+ :value-single="true">
234
+ </v-select>
235
+ </div>
236
+ <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
237
+ <label class="font_normal_body">气表状态</label>
238
+ <v-select :value.sync="model.f_table_state" v-model='model.f_table_state'
239
+ :value-single="true" style="width: 60%"
240
+ class="select_list select"
241
+ :options='$parent.$parent.table_state' placeholder='气表状态'
242
+ close-on-select
243
+ condition="f_table_state = '{}'"></v-select>
244
+ </div>
245
+ <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
246
+ <label class="font_normal_body">审核状态</label>
247
+ <v-select :value.sync="model.f_approved" v-model='model.f_approved'
248
+ :value-single="true" style="width: 60%"
249
+ class="select_list select"
250
+ :options='$parent.$parent.review_status' placeholder='审核状态'
251
+ close-on-select
252
+ condition="f_approved= '{}'"></v-select>
253
+ </div>
254
+ <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
255
+ <label class="font_normal_body">审核开始</label>
256
+ <datepicker
257
+ class="select_list select"
258
+ :value.sync="model.f_checksh_start"
259
+ placeholder='审核开始时间' style="width: 60%"
260
+ :disabled-days-of-week="[]"
261
+ :format="'yyyy-MM-dd'"
262
+ :show-rest-button="reset"
263
+ v-model="model.f_checksh_start"
264
+ condition="f_approved_time > ='{} 00:00:00'">
265
+ </datepicker>
266
+ </div>
267
+ <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
268
+ <label class="font_normal_body">审核结束</label>
269
+ <datepicker
270
+ :value.sync="model.f_checksh_end"
271
+ placeholder='审核结束时间' style="width: 60%"
272
+ :disabled-days-of-week="[]"
273
+ :format="'yyyy-MM-dd'"
274
+ :show-rest-button="reset"
275
+ v-model="model.f_checksh_end"
276
+ condition="f_approved_time <= '{} 23:59:59'">
277
+ </datepicker>
278
+ </div>
279
+ <div class="form-group col-sm-2" v-if="$parent.$parent.criteriaShow">
280
+ <label class="font_normal_body">审&ensp;核&ensp;人</label>
281
+ <input type="text" class="input_search" v-model="model.f_approved_by"
282
+ style="width: 60%" placeholder="审核人" condition="f_approved_by like '%{}%'">
283
+ </div>
284
+ </div>
285
+ <modal :show.sync="$parent.$parent.showModal" v-ref:modal>
286
+ <div slot="modal-header" class="modal-header">
287
+ <h4 class="modal-title">
288
+ 选择计划
289
+ </h4>
290
+ </div>
291
+ <div slot="modal-body" class="modal-body">
292
+ <plan-chooser :f.sync="$parent.$parent.fun" v-ref:chooser></plan-chooser>
293
+ </div>
294
+ <div slot="modal-footer" class="modal-footer" style="text-align: center;white-space: nowrap">
295
+ <button class="button_search" @click="$parent.$parent.ok">确认</button>
296
+ <button class="button_search" @click="$parent.$parent.cancel">取消</button>
297
+ </div>
298
+ </modal>
299
+ </div>
300
+ </criteria>
301
+ <data-grid class="list_area table_sy" style="overflow: hidden" :model="model" partial='list' v-ref:grid>
302
+ <template partial='head'>
303
+ <tr>
304
+ <th>
305
+ <nobr>客户编号</nobr>
306
+ </th>
307
+ <th>
308
+ <nobr>客户名称</nobr>
309
+ </th>
310
+ <th>
311
+ <nobr>客户电话</nobr>
312
+ </th>
313
+ <th>
314
+ <nobr>客户类型</nobr>
315
+ </th>
316
+ <th>
317
+ <nobr>用户状态</nobr>
318
+ </th>
319
+ <th>
320
+ <nobr>小区</nobr>
321
+ </th>
322
+ <th>
323
+ <nobr>地址</nobr>
324
+ </th>
325
+ <th>
326
+ <nobr>码盘数</nobr>
327
+ </th>
328
+ <th>
329
+ <nobr>气量差值</nobr>
330
+ </th>
331
+ <th>
332
+ <nobr>剩余气量</nobr>
333
+ </th>
334
+ <th>
335
+ <nobr>波纹管数量</nobr>
336
+ </th>
337
+ <th>
338
+ <nobr>自闭阀数量</nobr>
339
+ </th>
340
+ <th>
341
+ <nobr>合同日期</nobr>
342
+ </th>
343
+ <th>
344
+ <nobr>表号</nobr>
345
+ </th>
346
+ <th>
347
+ <nobr>表品牌</nobr>
348
+ </th>
349
+ <th>
350
+ <nobr>表位置</nobr>
351
+ </th>
352
+ <th>
353
+ <nobr>左右表</nobr>
354
+ </th>
355
+ <th>
356
+ <nobr>表封号</nobr>
357
+ </th>
358
+ <th>
359
+ <nobr>气表状态</nobr>
360
+ </th>
361
+ <th>
362
+ <nobr>安检类型</nobr>
363
+ </th>
364
+ <th>
365
+ <nobr>安检结果</nobr>
366
+ </th>
367
+ <th>
368
+ <nobr>隐患详情</nobr>
369
+ </th>
370
+ <!-- <th>-->
371
+ <!-- <nobr>维修状态</nobr>-->
372
+ <!-- </th>-->
373
+ <!-- <th>-->
374
+ <!-- <nobr>维修人</nobr>-->
375
+ <!-- </th>-->
376
+ <!-- <th>-->
377
+ <!-- <nobr>维修时间</nobr>-->
378
+ <!-- </th>-->
379
+ <!-- <th>-->
380
+ <!-- <nobr>维修描述</nobr>-->
381
+ <!-- </th>-->
382
+
383
+ <th>
384
+ <nobr>备注</nobr>
385
+ </th>
386
+ <th>
387
+ <nobr>安检状态</nobr>
388
+ </th>
389
+ <th>
390
+ <nobr>安检计划</nobr>
391
+ </th>
392
+ <th>
393
+ <nobr>整改通知书</nobr>
394
+ </th>
395
+ <th>
396
+ <nobr>录音/照片</nobr>
397
+ </th>
398
+ <th>
399
+ <data-order field="f_offsite_time" name="安检时间"></data-order>
400
+ </th>
401
+ <th>
402
+ <nobr>安检员</nobr>
403
+ </th>
404
+ <th>
405
+ <nobr>审核状态</nobr>
406
+ </th>
407
+ <th>
408
+ <nobr>审核人</nobr>
409
+ </th>
410
+ <th>
411
+ <nobr>审核时间</nobr>
412
+ </th>
413
+ <th>
414
+ <nobr>操作</nobr>
415
+ </th>
416
+ <th v-if="$parent.$parent.$parent.audioshow">
417
+ <nobr>录音</nobr>
418
+ </th>
419
+ </tr>
420
+ </template>
421
+ <template partial='body'>
422
+ <td style="text-align: center;white-space: nowrap">{{ row.f_userinfo_code }}</td>
423
+ <td style="text-align: center;white-space: nowrap">{{ row.f_user_name }}</td>
424
+ <td style="text-align: center;white-space: nowrap">{{ row.f_user_phone }}</td>
425
+ <td style="text-align: center;white-space: nowrap">{{ row.f_check_type }}</td>
426
+ <td style="text-align: center;white-space: nowrap">{{ row.f_user_state }}</td>
427
+ <td style="text-align: center;white-space: nowrap">{{ row.f_residential_area }}</td>
428
+ <td style="text-align: center;white-space: nowrap">{{ row.f_address }}</td>
429
+ <td style="text-align: center;white-space: nowrap">{{ row.f_mapanshu }}</td>
430
+ <td style="text-align: center;white-space: nowrap"
431
+ @dblclick.stop="$parent.$parent.$parent.tochangeRemark(row)">{{ row.f_chazhi }}
432
+ </td>
433
+ <td style="text-align: center;white-space: nowrap">{{ row.f_shengyu_gas }}</td>
434
+ <td style="text-align: center;white-space: nowrap">{{ row.f_bowenguan }}</td>
435
+ <td style="text-align: center;white-space: nowrap">{{ row.f_zibifa }}</td>
436
+ <td style="text-align: center;white-space: nowrap">{{ row.f_contractdate }}</td>
437
+ <td style="text-align: center;white-space: nowrap">{{ row.f_meternumber }}</td>
438
+ <td style="text-align: center;white-space: nowrap">{{ row.f_meter_classify }}</td>
439
+ <td style="text-align: center;white-space: nowrap">{{ row.f_position }}</td>
440
+ <td style="text-align: center;white-space: nowrap">{{ row.f_aroundmeter }}</td>
441
+ <td style="text-align: center;white-space: nowrap">{{ row.f_metertitles }}</td>
442
+ <td style="text-align: center;white-space: nowrap">{{ row.f_table_state }}</td>
443
+ <td style="text-align: center;white-space: nowrap">{{ row.f_safecheck_type }}</td>
444
+ <td style="text-align: center;white-space: nowrap">{{ row.defect_content == '无隐患' ? '正常' : '有隐患' }}</td>
445
+ <td style="text-align: center;white-space: nowrap">{{ row.defect_content }}</td>
446
+ <!-- <td style="text-align: center;white-space: nowrap">{{ row.repaired}}</td>-->
447
+ <!-- <td style="text-align: center;white-space: nowrap">{{ row.f_repairman}}</td>-->
448
+ <!-- <td style="text-align: center;white-space: nowrap">{{ row.f_repair_date}}</td>-->
449
+ <!-- <td style="text-align: center;white-space: nowrap">{{ row.f_ratification_des}}</td>-->
450
+ <td style="text-align: center;white-space: nowrap">{{ row.f_repair_approved_note }}</td>
451
+ <td style="text-align: center;white-space: nowrap">{{ row.f_entry_status }}</td>
452
+ <td style="text-align: center;white-space: nowrap">{{ row.f_plan_name }}</td>
453
+ <!--整改通知书别名-->
454
+ <td style="text-align: center;white-space: nowrap">{{ row.f_rectification_notice }}</td>
455
+ <td style="text-align: center;white-space: nowrap"
456
+ v-if="row.f_entry_status=='到访不遇'|| row.f_entry_status=='拒检'">{{ row.f_downloadpath }}
457
+ </td>
458
+ <td style="text-align: center;white-space: nowrap" v-else></td>
459
+ <td style="text-align: center;white-space: nowrap">{{ row.f_offsite_time }}</td>
460
+ <td style="text-align: center;white-space: nowrap">{{ row.f_checker_name }}</td>
461
+ <td style="text-align: center;white-space: nowrap">{{ row.f_approved }}</td>
462
+ <td style="text-align: center;white-space: nowrap">{{ row.f_approved_by }}</td>
463
+ <td style="text-align: center;white-space: nowrap">{{ row.f_approved_time }}</td>
464
+ <td style="text-align: center;white-space: nowrap">
465
+ <button class="button_spacing button_search-1" @click='$parent.$parent.$parent.change(row)'>查看</button>
466
+ <!-- <button class="button_spacing button_search-1" @click='$parent.$parent.$parent.del(row)' v-show="$parent.$parent.$parent.isdel=='否'">作废</button>-->
467
+ <button class="button_spacing button_search-1" @click='$parent.$parent.$parent.pass(row)'
468
+ v-show ="row.f_approved == '未审核'">通过
469
+ </button>
470
+ <button type="button" class="button_new-1 button_spacing" data-toggle="dropdown"
471
+ @click="$parent.$parent.$parent.print(row)">
472
+ 打印
473
+ </button>
474
+ </td>
475
+ <td style="text-align: center;white-space: nowrap" v-if="$parent.$parent.$parent.audioshow">
476
+ <!-- <button class="button_spacing button_search-1" @click='$parent.$parent.$parent.change(row)'>查看</button>-->
477
+ <audio controls="controls" v-if="row.f_recording1_path">
478
+ <source type="audio/mpeg" :src="'rs/audio/file/'+row.f_recording1_path">
479
+ </audio>
480
+ </td>
481
+ </template>
482
+ </data-grid>
483
+ </criteria-paged>
484
+ <check-msg v-if="showcheckmsg" :show="showcheckmsg" :data="checkInfo"></check-msg>
485
+ </div>
486
+ <modal :show.sync="showModal2" :backdrop="false">
487
+ <div slot="modal-header" class="modal-header">
488
+ <h4 class="modal-title">
489
+ 用户{{ this.paperrow.f_user_name }}备注修改
490
+ </h4>
491
+ </div>
492
+ <div slot="modal-body" class="modal-body">
493
+ <div class="row" style="margin-top: 10px">
494
+ <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">备注</label>
495
+ <div class="col-xs-8 col-md-8">
496
+ <textarea class="form-control" type="text" v-model="paperRemark"></textarea>
497
+ </div>
498
+ </div>
499
+ </div>
500
+ <div slot="modal-footer" class="modal-footer" style="text-align: center">
501
+ <button class="button_search" @click="okshow">确认</button>
502
+ <button class="button_search" @click="cancelshow">取消</button>
503
+ </div>
504
+ </modal>
505
+ </div>
506
+ </template>
507
+
508
+ <script>
509
+ import {PagedList} from 'vue-client'
510
+ import Vue from 'vue'
511
+ import co from 'co'
512
+ import AppData from '../../../stores/AppData'
513
+ import * as Util from '../../Util'
514
+ import getNowDate from "../../../utils/getNowDate";
515
+ import HttpResetClass from "vue-client/src/plugins/HttpResetClass";
516
+ import BenzAMRRecorder from 'benz-amr-recorder'
517
+
518
+ //获取json配置文件
519
+ let asyncReady = async function (self) {
520
+ // 获取配置信息
521
+ try {
522
+ let res = await Vue.resetget(`/phone/rs/vue`, {data: {}}, {resolveMsg: null, rejectMsg: null})
523
+ Vue.config = res.data
524
+ } catch (error) {
525
+ // 忽略704,文件找不到异常R
526
+ if (error.status !== 704) {
527
+ throw error
528
+ }
529
+ }
530
+ }
531
+
532
+ let select = function* (self) {
533
+ let http = new HttpResetClass()
534
+ let getGasman = yield http.load('POST', '/rs/search', {
535
+ source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1))',
536
+ userid: self.$login.f.id
537
+ }, {resolveMsg: null, rejectMsg: null})
538
+ ////tag
539
+ self.checkersid.push({label: '全部', value: ''})
540
+ getGasman.data.forEach((checker) => {
541
+ self.checkersid.push({label: checker.name, value: checker.id})
542
+ })
543
+ }
544
+
545
+ export default {
546
+ title: '安检结果查看',
547
+ data() {
548
+ let model = new PagedList('rs/sql/查找安检单', 20, {
549
+ f_plan_id: 'this.f_plan_id',
550
+ f_approved: 'this.f_approved',
551
+ f_entry_status: 'this.f_entry',
552
+ f_no_checkplan: 'this.f_no_checkplan',
553
+ f_filialeid: 'this.f_filialeid',
554
+ f_defect_content:'this.f_defect_content',
555
+ orderitem: "'f_offsite_time desc'"
556
+ })
557
+ model.f_plan_id = ''
558
+ model.f_approved = ''
559
+ model.f_entry = ''
560
+ model.f_no_checkplan = ''
561
+ model.f_filialeid = `('${this.$login.f.orgid}')`
562
+ model.f_defect_content="CASE WHEN CHARINDEX( '\"result\":\"正常\"', f_defect_content ) > 0 THEN '无隐患' ELSE replace(replace(replace( replace( RIGHT ( f_defect_content, len( f_defect_content ) - 26 ), substring('{}',2,1), '' ), substring('{}',1,1), '' ),']',''),'\"','') END"
563
+ return {
564
+ showbusy:false,
565
+ audioshow: false,
566
+ paperRemark:'',
567
+ searchData: {
568
+ condition: "1=1",
569
+ orderitem: "f_offsite_time desc",
570
+ f_plan_id: "",
571
+ f_approved: '',
572
+ f_entry_status: '',
573
+ f_defect_content: "CASE WHEN CHARINDEX( '\"result\":\"正常\"', f_defect_content ) > 0 THEN '无隐患' ELSE replace(replace(replace( replace( RIGHT ( f_defect_content, len( f_defect_content ) - 26 ), substring('{}',2,1), '' ), substring('{}',1,1), '' ),']',''),'\"','') END",
574
+ f_no_checkplan: '',
575
+ f_filialeid: `('${this.$login.f.orgid}')`
576
+ },
577
+ model: model,
578
+ //searchData:searchData,
579
+ excelHeaders: {
580
+ 'f_userinfo_code': '客户编号',
581
+ 'f_user_name': '客户名称',
582
+ 'f_user_phone': '客户电话',
583
+ 'f_check_type': '客户类型',
584
+ 'f_user_state': '客户状态',
585
+ 'f_residential_area': '小区',
586
+ 'f_address': '地址',
587
+ 'f_mapanshu': '码盘数',
588
+ 'f_chazhi': '气量差值',
589
+ 'f_shengyu_gas':'剩余气量',
590
+ 'f_bowenguan':'波纹管数量',
591
+ 'f_zibifa':'自闭阀数量',
592
+ 'f_contractdate': '合同日期',
593
+ 'f_table_state': '气表状态',
594
+ 'f_meternumber': '表号',
595
+ 'f_meter_classify': '表品牌',
596
+ 'f_position': '表位置',
597
+ 'f_aroundmeter': '左右表',
598
+ 'f_metertitles': '表封号',
599
+ 'defect_content': '安检结果',
600
+ // 'repaired': '维修状态',
601
+ // 'f_repairman': '维修人',
602
+ // 'f_repair_date': '维修时间',
603
+ // 'f_ratification_des': '维修描述',
604
+ 'f_repair_approved_note': '备注',
605
+ 'f_plan_name':'计划名称',
606
+ 'f_rectification_notice':'整改通知书',
607
+ 'f_downloadpath':'录音/照片',
608
+ 'f_entry_status': '安检状态',
609
+ 'f_offsite_time': '安检时间',
610
+ 'f_checker_name': '安检员',
611
+ 'f_approved' : '审核状态',
612
+ 'f_approved_by' : '审核人',
613
+ 'f_approved_time':'审核时间'
614
+ },
615
+ fun: this.$login.f,
616
+ showModal2:false,
617
+ paperrow:{},
618
+ checkersid: [],
619
+ safetype: [
620
+ {label: '全部', value: ''}, ...this.$appdata.getParam('安检类型')],
621
+ downloadpaths: [{label: '全部', value: ''},{label: '已上传', value: '已上传'},{label: '未上传', value: '未上传'}],
622
+ criteriaShow: false,
623
+ showModal: false,
624
+ table_state: [{label: '全部', value: ''}, ...this.$appdata.getParam('气表状态')],
625
+ f_approval_states: this.$appdata.getParam('安检单审核状态'),
626
+ f_entry_status: [{label: '全部', value: ''}, ...this.$appdata.getParam('安检状态')],
627
+ user_states:[{label: '全部', value: ''}, ...this.$appdata.getParam('用户状态')],
628
+ safecheck_type:[{label: '全部', value: ''}, ...this.$appdata.getParam('安检类型')],
629
+ check_types:[{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')],
630
+ f_checkplans: this.$appdata.getParam('有无计划'),
631
+ showcheckmsg: false,
632
+ checkInfo: {},
633
+ orderDefault: "'f_offsite_time'",
634
+ orderFields: {
635
+ f_offsite_time: 'no'
636
+ },
637
+ sliceArea: [],
638
+ review_status:[{label: '全部', value: ''},{label: '待审核', value: '未审核'},{label: '正常', value: '通过'}],
639
+ isdels: [{label: '全部', value: ''},{label: '是', value: '是'},{label: '否', value: '否'}],
640
+ repaireds: [{label: '全部', value: ''},{label: '已修', value: '已修'},{label: '未修', value: '未修'}],
641
+ checkresults: [{label: '全部', value: ''},{label: '正常', value: '正常'},{label: '有隐患', value: '有隐患'}],
642
+ isdel: '否',
643
+ cbc: []
644
+ }
645
+ },
646
+ methods: {
647
+ tochangeRemark(row){
648
+ //tag
649
+ this.paperRemark=row.f_chazhi
650
+ this.paperrow=row
651
+ this.showModal2=true
652
+
653
+ },
654
+ okshow(){
655
+ let sql=`update t_check_paper set f_chazhi='${this.paperRemark}' where id='${this.paperrow.id}'`
656
+ //tag
657
+ new HttpResetClass().load('post','rs/logic/runSQL',{data:{sql:sql}},{resolveMsg:'修改成功',rejectMsg:'修改失败'}).then(res=>{
658
+ // this.$showMessage("修改成功")
659
+ let e = document.createEvent("MouseEvents");
660
+ e.initEvent("click", true, true);
661
+ document.getElementById("btnbbb").dispatchEvent(e);
662
+ this.showModal2=false
663
+ })
664
+
665
+ },
666
+ cancelshow(){
667
+ this.showModal2=false
668
+ },
669
+ pass(row) {
670
+ //判断当前登录人是否有审核权限
671
+ if(this.$appdata.getSingleValue('开启安检审核权限')=='是'){
672
+ if(!this.$login.r.includes('安检结果审核')){
673
+ //提示无审核权限
674
+ this.$showMessage('您无审核权限')
675
+ return
676
+ }
677
+ }
678
+ var reqdata = {
679
+ audit_result: '通过',
680
+ operator: "success",
681
+ audit_time: Util.getNowDate(),
682
+ user_name: this.$login.f.name,
683
+ id: row.id,
684
+ f_check_item_id: row.f_check_item_id
685
+ }
686
+ this.$showMessage('确认通过当前安检单吗?', ['confirm', 'cancel']).then((res) => {
687
+ if (res === 'confirm') {
688
+ this.$resetpost('/rs/logic/updateAafeAudit', {data: reqdata}).then((res) => {
689
+ //tag
690
+ if (res.data.code == 200) {
691
+ this.$showMessage('通过成功')
692
+ this.search()
693
+ } else {
694
+ this.$showMessage('通过失败!')
695
+ }
696
+ }).catch((e) => {
697
+ this.$showMessage(JSON.stringify(e) + '通过失败!')
698
+ })
699
+ }
700
+ })
701
+ },
702
+ del(row) {
703
+ //tag
704
+ this.$showMessage('确认作废当前安检单吗?', ['confirm', 'cancel']).then((res) => {
705
+ if (res === 'confirm') {
706
+ this.$resetpost('rs/logic/DelCheckPaper', {id:row.id}).then((res) => {
707
+ //tag
708
+ if(res.data.code == 200){
709
+ this.$showMessage('作废成功')
710
+ this.search()
711
+ }else {
712
+ this.$showMessage('作废失败!')
713
+ }
714
+ }).catch((e) => {
715
+ this.$showMessage(JSON.stringify(e) +'作废失败!')
716
+ })
717
+ }
718
+ })
719
+ },
720
+ showaudio() {
721
+ //tag
722
+ this.audioshow = !this.audioshow
723
+ //tag
724
+ },
725
+ getmeterbook(val) {
726
+ this.cbc = []
727
+ this.cbc.push({
728
+ label: '全部',
729
+ value: ''
730
+ })
731
+ if (val == '') {
732
+
733
+ this.cbcs.forEach(res => {
734
+ this.cbc.push({
735
+ label: res.f_book_name,
736
+ value: res.id
737
+ })
738
+ })
739
+ } else {
740
+ this.cbcs.forEach(res => {
741
+ if (res.f_book_slice_area == val) {
742
+ this.cbc.push({
743
+ label: res.f_book_name,
744
+ value: res.id
745
+ })
746
+ }
747
+ })
748
+ }
749
+ },
750
+ Mreadibook(val) {
751
+ ////tag
752
+ ////tag
753
+ this.sliceArea = []
754
+ if (val) {
755
+ new HttpResetClass().load('POST', `/rs/sql/tel_singleTable_OrderBy`, {
756
+ data: {
757
+ items: 'name',
758
+ tablename: 't_zone',
759
+ condition: `parentid in ${val}`,
760
+ orderitem: 'id'
761
+ }
762
+ }, {resolveMsg: null, rejectMsg: null}).then((res) => {
763
+ this.sliceArea.push({
764
+ label: '全部',
765
+ value: ''
766
+ })
767
+ res.data.forEach(ress => {
768
+ this.sliceArea.push({
769
+ label: ress.name,
770
+ value: ress.name
771
+ })
772
+ })
773
+
774
+ })
775
+ }
776
+ },
777
+ getAllMeterBook(val) {
778
+ ////tag
779
+ ////tag
780
+ this.cbcs = []
781
+ if (val) {
782
+ new HttpResetClass().load('POST', `/rs/sql/tel_singleTable_OrderBy`, {
783
+ data: {
784
+ items: 'f_book_name,f_book_slice_area,id',
785
+ tablename: 't_meter_book',
786
+ condition: `f_filiale_id in ${val}`,
787
+ orderitem: 'id'
788
+ }
789
+ }, {resolveMsg: null, rejectMsg: null}).then((res) => {
790
+ res.data.forEach(ress => {
791
+ this.cbcs.push({
792
+ id: ress.id,
793
+ f_book_name: ress.f_book_name,
794
+ f_book_slice_area: ress.f_book_slice_area
795
+ })
796
+ })
797
+ this.cbc = []
798
+ this.cbc.push({
799
+ label: '全部',
800
+ value: ''
801
+ })
802
+ this.cbcs.forEach(res => {
803
+ this.cbc.push({
804
+ label: res.f_book_name,
805
+ value: res.id
806
+ })
807
+ })
808
+ })
809
+ }
810
+ },
811
+ getRes(obj) {
812
+ this.model.f_filialeid = this.$login.convertToIn(obj.resids);
813
+ this.searchData.f_filialeid = this.$login.convertToIn(obj.resids);
814
+ this.Mreadibook(this.model.f_filialeid)
815
+ this.getAllMeterBook(this.model.f_filialeid)
816
+ //this.$refs.paged.$refs.criteria.search()
817
+ },
818
+
819
+ change(row) {
820
+ // Vue.$login = {jwt: row.f_checker_id}
821
+ asyncReady(this).then(() => {
822
+ ////tag)
823
+ row.f_upload_state = '已传'
824
+ this.$goto('new-check-paper', {
825
+ f_plan_id: row.f_check_plan_id,
826
+ item: row,
827
+ role: 'view',
828
+ isdel: this.isdel
829
+ }, 'self')
830
+ }).catch(
831
+ (respanse) => {
832
+ alert('获取配置文件失败')
833
+ })
834
+ },
835
+ readConfig() {
836
+ let gen = asyncReady(this)
837
+ return co(gen)
838
+ },
839
+ showChooser() {
840
+ this.showModal = true
841
+ },
842
+ hidden() {
843
+ this.criteriaShow = !this.criteriaShow
844
+ },
845
+ refresh() {
846
+ this.$refs.paged.$refs.criteria.search()
847
+ },
848
+ ok() {
849
+ this.showModal = false
850
+ if (this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow.id) {
851
+ this.model.f_plan_id = this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow.id
852
+ this.model.f_check_plan = this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow
853
+ }
854
+ },
855
+ cancel() {
856
+ this.showModal = false
857
+ this.model.f_check_plan = {f_plan_name: '', id: ''}
858
+ this.model.f_plan_id = ''
859
+ },
860
+ print(row) {
861
+ this.showcheckmsg = true
862
+ this.checkInfo = row
863
+ },
864
+ sort(field, rule) {
865
+ // 将所有排序方式设为不排序,实现相互排斥
866
+ for (let key in this.orderFields) {
867
+ if (key === field) {
868
+ this.orderFields[key] = rule
869
+ } else {
870
+ this.orderFields[key] = 'no'
871
+ }
872
+ }
873
+ // 如果新规则不排序,还原为默认排序
874
+ if (rule === 'no') {
875
+ this.model.paramSource.orderitem = `'${this.orderDefault}'`
876
+ } else {
877
+ this.model.paramSource.orderitem = `'${field} ${rule}'`
878
+ }
879
+ this.search()
880
+ },
881
+ search() {
882
+ this.$refs.paged.$refs.criteria.search()
883
+ },
884
+ selfSearch(args) {
885
+ ////tag
886
+ //args.condition+=" and f_check_type='民用'"
887
+ //tag
888
+ // //tag
889
+ if (this.$refs.paged.$refs.criteria.model.f_is_delete == '是') {
890
+ //tag
891
+ this.isdel = '是'
892
+ this.model.url = 'rs/sql/QueryDelCheckPaper'
893
+
894
+ } else {
895
+ //tag
896
+ this.isdel = '否'
897
+ this.model.url = 'rs/sql/查找安检单'
898
+ }
899
+ // if (args.condition.indexOf('f_table_state') == -1){
900
+ // args.condition += " and f_table_state = '正常'"
901
+ // }
902
+ this.model.search(args.condition, args.model, args.condValue)
903
+ }
904
+ },
905
+
906
+ ready() {
907
+ ////tag
908
+ this.function = this.f
909
+ ////tag
910
+
911
+ let gen = select(this)
912
+ //this.pianqu()
913
+ this.Mreadibook(`('${this.$login.f.orgid}')`)
914
+ co(gen)
915
+ },
916
+ watch: {
917
+ 'model.f_no_checkplan'(val) {
918
+ if (this.model.f_no_checkplan) {
919
+ this.searchData.f_no_checkplan = val
920
+ }
921
+ if (this.model.f_no_checkplan == '有计划安检') {
922
+
923
+ this.showChooser()
924
+ }
925
+ },
926
+ 'model.condition'(val) {
927
+ if (val) {
928
+ this.searchData.condition = val
929
+ }
930
+
931
+ },
932
+ 'model.f_entry'(val) {
933
+ if (val) {
934
+ this.searchData.f_entry_status = val
935
+ }
936
+ },
937
+ 'model.f_plan_id'(val) {
938
+ if (val) {
939
+ this.searchData.f_plan_id = val
940
+ }
941
+ },
942
+ 'model.f_slice_area'(val) {
943
+ if (val) {
944
+
945
+ }
946
+ },
947
+ 'model.f_approved'(val) {
948
+ if (val) {
949
+ this.searchData.f_approved = val
950
+ }
951
+ },
952
+ }
953
+
954
+ }
955
+ </script>