safecheck-client 4.0.1-86 → 4.0.1-89

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 (249) hide show
  1. package/package.json +132 -132
  2. package/src/App.vue +31 -31
  3. package/src/components/CheckerCount/CheckCountUserList.vue +144 -144
  4. package/src/components/DefectDealMain/DefectListNew.vue +642 -642
  5. package/src/components/NewDefectList/DefectListNew.vue +682 -682
  6. package/src/components/Util/RightTreeSafeDep.vue +362 -362
  7. package/src/components/android/AddPlanItem.vue +447 -447
  8. package/src/components/android/AddPlanItemYy.vue +451 -451
  9. package/src/components/android/AddSpecialPlanItem.vue +426 -426
  10. package/src/components/android/CurrentCreateYy.vue +1051 -1051
  11. package/src/components/android/DailyworkloadQuery.vue +473 -473
  12. package/src/components/android/Devices.vue +327 -327
  13. package/src/components/android/Devicesm.vue +327 -327
  14. package/src/components/android/NewCheckpaperAndroid.vue +1343 -1343
  15. package/src/components/android/PaperFeedbackm.vue +1026 -1026
  16. package/src/components/android/PhoneRecordInfo.vue +113 -113
  17. package/src/components/android/PhoneSellInfo.vue +113 -113
  18. package/src/components/android/PhoneUpDetail.vue +1040 -1040
  19. package/src/components/android/QRCode/QRCodeBinding.vue +300 -300
  20. package/src/components/android/QRCode/QRCodePage.vue +212 -212
  21. package/src/components/android/SafePlanItem.vue +509 -509
  22. package/src/components/android/examples/SafeListExamples.vue +296 -296
  23. package/src/components/android/old/PaperFeedback.vue +1015 -1015
  24. package/src/components/android/recheck/Recheck.vue +402 -402
  25. package/src/components/android/userinfo/SafecheckUserInfo.vue +776 -776
  26. package/src/components/checkplan/checkmsg.vue +459 -459
  27. package/src/components/defect/DefectList.vue +507 -507
  28. package/src/components/defect/DefectListWeixiu.vue +484 -484
  29. package/src/components/filialCircle/CircleList.vue +139 -139
  30. package/src/components/inspections/AddInspectPlanItem.vue +325 -325
  31. package/src/components/inspections/AddInspectPlanItems.vue +325 -325
  32. package/src/components/inspections/AddInspectPlanItemss.vue +317 -317
  33. package/src/components/inspections/DisplayInspectionList.vue +1224 -1224
  34. package/src/components/inspections/inspectionOrderV.vue +1853 -1853
  35. package/src/components/inspections/inspectionOrderVs.vue +1853 -1853
  36. package/src/components/inspections/inspectionOrderVss.vue +1856 -1856
  37. package/src/components/inspections/inspectionUserInfo.vue +398 -398
  38. package/src/components/map/PersonTrack.vue +226 -226
  39. package/src/components/paper/RegionalList.vue +220 -220
  40. package/src/components/pc/AnnouncementPC.vue +524 -524
  41. package/src/components/pc/DefectList.vue +742 -742
  42. package/src/components/pc/DefectMaterialLook.vue +98 -98
  43. package/src/components/pc/DeviceChange.vue +1068 -1068
  44. package/src/components/pc/PaperDefectMain.vue +905 -905
  45. package/src/components/pc/RoleSelectorDep.vue +166 -166
  46. package/src/components/pc/SafeVisitInfo.vue +261 -261
  47. package/src/components/report/HiddenSituation.vue +165 -165
  48. package/src/components/rongcheng/AspiratedOrderV.vue +2377 -2377
  49. package/src/components/rongcheng/CurrentCreateOnline.vue +906 -906
  50. package/src/components/rongcheng/DefectList.vue +560 -560
  51. package/src/components/rongcheng/SafecheckOrderVCli.vue +2641 -2641
  52. package/src/components/safecheckNew/android/AddPlanItem.vue +419 -419
  53. package/src/components/safecheckNew/android/CurrentCreate.vue +1050 -1050
  54. package/src/components/safecheckNew/android/Recheck.vue +379 -379
  55. package/src/components/sendsingle/EquipmentManagement.vue +727 -727
  56. package/src/components/shaoguan/DefectList.vue +473 -473
  57. package/src/components/shaoguan/SafecheckOrderV.vue +2140 -2140
  58. package/src/components/tongcheng/PaperFeedback.vue +1061 -1061
  59. package/src/components/userfile/SecurityAudit.vue +243 -243
  60. package/src/filiale/ALshan/pc/DefectListWeixiu.vue +476 -476
  61. package/src/filiale/ancheng/android/SafecheckOrderV.vue +2703 -2703
  62. package/src/filiale/ancheng/android/SafecheckUserInfo.vue +737 -737
  63. package/src/filiale/ancheng/pc/checkScreen.vue +923 -923
  64. package/src/filiale/ankangyihua/android/AddPlanItem.vue +446 -446
  65. package/src/filiale/ankangyihua/android/SafecheckOrderV.vue +2908 -2908
  66. package/src/filiale/ankangyihua/pc/DefectListWeixiu.vue +491 -491
  67. package/src/filiale/baiyin/android/SafecheckOrderV.vue +2785 -2785
  68. package/src/filiale/baiyin/pc/DefectListNew.vue +597 -597
  69. package/src/filiale/bayan/android/Edit.vue +132 -132
  70. package/src/filiale/bayan/pc/DefectListNew.vue +597 -597
  71. package/src/filiale/bayan/pc/DeviceChange.vue +1838 -1838
  72. package/src/filiale/bayan/pc/HiddenSituation.vue +295 -295
  73. package/src/filiale/dexin/android/CasualSave.vue +1050 -1050
  74. package/src/filiale/dexin/android/SafecheckOrderV.vue +2950 -2950
  75. package/src/filiale/fugou/android/AddPlanItem.vue +413 -413
  76. package/src/filiale/fugou/android/SafecheckOrderV.vue +2796 -2796
  77. package/src/filiale/fugou/pc/CheckBookSearchUser.vue +830 -830
  78. package/src/filiale/fugu/android/SafecheckOrderV.vue +2484 -2484
  79. package/src/filiale/fugu/pc/NewCheckpaper.vue +1287 -1287
  80. package/src/filiale/ganquan/android/AddPlanItem.vue +444 -444
  81. package/src/filiale/ganquan/android/SafecheckOrderV.vue +2485 -2485
  82. package/src/filiale/ganquan/pc/NewCheckpaper.vue +1354 -1354
  83. package/src/filiale/guangxi/pc/DefectListNew.vue +518 -518
  84. package/src/filiale/hanzhong/android/SafecheckOrderV.vue +2683 -2683
  85. package/src/filiale/hanzhong/android/SafecheckUserInfo.vue +786 -786
  86. package/src/filiale/huaran/android/SafecheckOrderV.vue +2803 -2803
  87. package/src/filiale/huatong/android/SafecheckOrderV.vue +2426 -2426
  88. package/src/filiale/huatong/android/SafecheckUserInfo.vue +749 -749
  89. package/src/filiale/huayin/pc/NewCheckpaper.vue +1307 -1307
  90. package/src/filiale/jiaocheng/android/AddPlanItem.vue +435 -435
  91. package/src/filiale/jiaocheng/android/SafecheckUserInfo.vue +737 -737
  92. package/src/filiale/jiaocheng/pc/DefectListNew.vue +576 -576
  93. package/src/filiale/jiaxian/android/AddPlanItem.vue +447 -447
  94. package/src/filiale/jiaxian/android/SafecheckOrderV.vue +2807 -2807
  95. package/src/filiale/jiaxian/android/SafecheckUserInfo.vue +784 -784
  96. package/src/filiale/jinbin/pc/DefectListWeixiu.vue +478 -478
  97. package/src/filiale/jingyang/android/AddPlanItem.vue +458 -458
  98. package/src/filiale/jingyang/android/SafecheckOrderV.vue +2734 -2734
  99. package/src/filiale/jingyang/android/SafecheckUserInfo.vue +781 -781
  100. package/src/filiale/jinhong/pc/CheckBookList.vue +393 -393
  101. package/src/filiale/jinhong/pc/PaperList.vue +853 -853
  102. package/src/filiale/jinhong/pc/PlanManage.vue +927 -927
  103. package/src/filiale/jinhong/pc/checkPlanList.vue +420 -420
  104. package/src/filiale/kelai/android/AddPlanItem.vue +488 -488
  105. package/src/filiale/kelai/android/SafecheckUserInfo.vue +774 -774
  106. package/src/filiale/kelai/android/SafecheckUserInfo1.vue +618 -618
  107. package/src/filiale/kelai/pc/DefectListNew.vue +688 -688
  108. package/src/filiale/kelai/pc/FaultLimitGas/FaultLimitGasList.vue +518 -518
  109. package/src/filiale/kelai/pc/NewCheckpaper.vue +1454 -1454
  110. package/src/filiale/liaoyuan/android/AddPlanItem.vue +412 -412
  111. package/src/filiale/liaoyuan/android/CurrentCreate.vue +1066 -1066
  112. package/src/filiale/liaoyuan/android/SafecheckOrderV.vue +2388 -2388
  113. package/src/filiale/liaoyuan/android/SafecheckUserInfo.vue +557 -557
  114. package/src/filiale/liaoyuan/pc/DefectListWeixiu.vue +489 -489
  115. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +1020 -1020
  116. package/src/filiale/libo/android/CurrentCreate.vue +1085 -1067
  117. package/src/filiale/libo/android.js +15 -15
  118. package/src/filiale/lixian/android/SafecheckOrderV.vue +2404 -2404
  119. package/src/filiale/lixian/android/SafecheckUserInfo.vue +578 -578
  120. package/src/filiale/lixian/pc/NewCheckpaper.vue +1211 -1211
  121. package/src/filiale/meihekou/android/AreaPlan.vue +577 -577
  122. package/src/filiale/meihekou/android/MeterReading.vue +110 -110
  123. package/src/filiale/meihekou/android/PhoneUpUserinfo.vue +1307 -1307
  124. package/src/filiale/meihekou/android/SafecheckUserInfo.vue +785 -785
  125. package/src/filiale/meihekou/pc/NewCheckpaperTemp.vue +1288 -1288
  126. package/src/filiale/minsheng/android/SafecheckUserInfo.vue +754 -754
  127. package/src/filiale/minsheng/pc/DefectListNew.vue +535 -535
  128. package/src/filiale/pingxiang/android/SafecheckOrderV.vue +2424 -2424
  129. package/src/filiale/pingxiang/android/SafecheckUserInfo.vue +600 -600
  130. package/src/filiale/pingxiang/pc/DefectListNew.vue +519 -519
  131. package/src/filiale/pingxiang/pc/NewCheckpaper.vue +1294 -1294
  132. package/src/filiale/qianneng/android/AddPlanItem.vue +482 -482
  133. package/src/filiale/qianneng/android/SafecheckOrderV.vue +2785 -2785
  134. package/src/filiale/qianneng/android/SafecheckUserInfo.vue +775 -775
  135. package/src/filiale/qianneng/pc/DefectListNew.vue +576 -576
  136. package/src/filiale/qianneng/pc/NewCheckpaper.vue +1546 -1546
  137. package/src/filiale/qingjian/android/SafecheckOrderV.vue +2844 -2844
  138. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +800 -800
  139. package/src/filiale/qingjian/pc/NewCheckpaper.vue +1871 -1871
  140. package/src/filiale/qingjian/pc/SecurityCheckCoordinates.vue +359 -359
  141. package/src/filiale/qingjian/pc.js +15 -15
  142. package/src/filiale/qingtongxia/android/AddPlanItem.vue +450 -450
  143. package/src/filiale/qingtongxia/android/SafecheckOrderV.vue +2726 -2726
  144. package/src/filiale/qingtongxia/android/SafecheckUserInfo.vue +782 -782
  145. package/src/filiale/qingtongxia/pc/DefectListNew.vue +594 -594
  146. package/src/filiale/rizhao/android/AddPlanItem.vue +446 -446
  147. package/src/filiale/rizhao/android/SafecheckOrderV.vue +2430 -2430
  148. package/src/filiale/rizhao/android/SafecheckUserInfo.vue +640 -640
  149. package/src/filiale/rizhao/pc/DefectList.vue +489 -489
  150. package/src/filiale/rongchuang/android/SafecheckOrderV.vue +2696 -2696
  151. package/src/filiale/rongchuang/android/checkpapermsg.vue +209 -209
  152. package/src/filiale/ruihua/android/SafecheckOrderV.vue +2747 -2747
  153. package/src/filiale/ruihua/android/SafecheckUserInfo.vue +804 -804
  154. package/src/filiale/shanggao/android/SafecheckOrderV.vue +2426 -2426
  155. package/src/filiale/shanxian/android/SafecheckUserInfo.vue +749 -749
  156. package/src/filiale/shanxian/pc/HiddenSituation.vue +121 -121
  157. package/src/filiale/shanxian/pc/NewCheckpaper.vue +1526 -1526
  158. package/src/filiale/shexian/android/AddPlanItem.vue +444 -444
  159. package/src/filiale/shexian/android/SafecheckOrderV.vue +2879 -2879
  160. package/src/filiale/shexian/pc/DefectListNew.vue +593 -593
  161. package/src/filiale/shexian/pc/NewCheckpaper.vue +1469 -1469
  162. package/src/filiale/shimen/android/SafecheckUserInfo.vue +547 -547
  163. package/src/filiale/shimen/pc/DefectList.vue +473 -473
  164. package/src/filiale/shimen/pc/NewCheckpaper.vue +1275 -1275
  165. package/src/filiale/siyang/android/AddPlanItem.vue +450 -450
  166. package/src/filiale/siyang/android/CurrentCreate.vue +1051 -1051
  167. package/src/filiale/siyang/android/PhoneRecordInfo.vue +214 -214
  168. package/src/filiale/siyang/android/SafecheckOrderV.vue +2796 -2796
  169. package/src/filiale/siyang/android/SafecheckUserInfo.vue +789 -789
  170. package/src/filiale/siyang/pc/HiddenSituation.vue +167 -167
  171. package/src/filiale/taiyuan/pc/NewCheckpaper.vue +1976 -1976
  172. package/src/filiale/taiyuan/pc/PlanManage.vue +891 -891
  173. package/src/filiale/taiyuan/pc/checkUserList.vue +798 -798
  174. package/src/filiale/tianke/android/AddPlanItem.vue +455 -455
  175. package/src/filiale/tianke/android/SafecheckOrderV.vue +2431 -2431
  176. package/src/filiale/tianke/android/SafecheckUserInfo.vue +744 -744
  177. package/src/filiale/tongchuan/android/AddPlanItem.vue +483 -483
  178. package/src/filiale/tongchuan/android/PhoneRecordInfo.vue +191 -191
  179. package/src/filiale/tongchuan/android/PhoneSellInfo.vue +113 -113
  180. package/src/filiale/tongchuan/android/SafecheckUserInfo.vue +720 -720
  181. package/src/filiale/tongchuan/pc/CheckBookDetails.vue +209 -209
  182. package/src/filiale/tongchuan/pc/DefectListWeixiu.vue +484 -484
  183. package/src/filiale/tongchuan/pc/HiddenSituation.vue +166 -166
  184. package/src/filiale/weinan/android/AddPlanItem.vue +438 -438
  185. package/src/filiale/weinan/android/CurrentCreate.vue +1171 -1171
  186. package/src/filiale/weinan/android/CurrentCreateOnline.vue +911 -911
  187. package/src/filiale/weinan/android/SafePlanItem.vue +440 -440
  188. package/src/filiale/weinan/android/SafecheckUserInfo.vue +778 -778
  189. package/src/filiale/weinan/pc/DefectListNew.vue +617 -617
  190. package/src/filiale/weinan/pc/DeviceChange.vue +1088 -1088
  191. package/src/filiale/weinan/pc/HiddenSituation.vue +167 -167
  192. package/src/filiale/weinan/pc/checkScreen.vue +1094 -1094
  193. package/src/filiale/weinanct/android/SafecheckOrderV.vue +2730 -2730
  194. package/src/filiale/weinanct/pc/NewCheckpaper.vue +1315 -1315
  195. package/src/filiale/wensu/android/AddPlanItem.vue +495 -495
  196. package/src/filiale/wensu/android/AndroidDefectDeal.vue +464 -464
  197. package/src/filiale/wensu/android/PaperFeedback.vue +1358 -1358
  198. package/src/filiale/wensu/android/SafecheckOrderV.vue +2430 -2430
  199. package/src/filiale/wensu/android/SafecheckUserInfo.vue +627 -627
  200. package/src/filiale/wensu/pc/DefectListNew.vue +735 -735
  201. package/src/filiale/wenxi/android/AddPlanItem.vue +431 -431
  202. package/src/filiale/wenxi/android/SafecheckOrderV.vue +2671 -2671
  203. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +673 -673
  204. package/src/filiale/wenxi/pc/DefectList.vue +653 -653
  205. package/src/filiale/wenxi/pc/NewCheckpaper.vue +1358 -1358
  206. package/src/filiale/wuan/android/SafecheckOrderV.vue +2241 -2241
  207. package/src/filiale/wuan/android/SafecheckUserInfo.vue +596 -596
  208. package/src/filiale/wuan/pc/DefectListWeixiu.vue +506 -506
  209. package/src/filiale/wuan/pc/NewCheckpaper.vue +1169 -1169
  210. package/src/filiale/wuhai/android/SafecheckOrderV.vue +2456 -2456
  211. package/src/filiale/wuhai/android/SafecheckUserInfo.vue +573 -573
  212. package/src/filiale/wuhai/pc/NewCheckpaper.vue +1281 -1281
  213. package/src/filiale/xiangyuanzhongai/android/PhoneUpUserinfo.vue +1251 -1251
  214. package/src/filiale/xinkang/pc/CheckSearchUser.vue +1026 -1026
  215. package/src/filiale/xinkang/pc/DefectListWeixiu.vue +475 -475
  216. package/src/filiale/xinliansihui/android/AndroidDefectDeal.vue +701 -701
  217. package/src/filiale/xinliansihui/android/AppInstallationMaterial.vue +866 -866
  218. package/src/filiale/yangchunboneng/android/AddPlanItem.vue +496 -496
  219. package/src/filiale/yangchunboneng/android/SafecheckOrderV.vue +2865 -2865
  220. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +887 -887
  221. package/src/filiale/yangchunboneng/pc/DefectListNew.vue +576 -576
  222. package/src/filiale/yongzhou/android/SafecheckOrderV.vue +2774 -2774
  223. package/src/filiale/yongzhou/android/SafecheckUserInfo.vue +776 -776
  224. package/src/filiale/yuansheng/android/SafecheckOrderV.vue +2758 -2758
  225. package/src/filiale/yuansheng/android/SafecheckUserInfo.vue +797 -797
  226. package/src/filiale/yuansheng/pc/DefectListNew.vue +524 -524
  227. package/src/filiale/yuansheng/pc/NewCheckpaper.vue +1371 -1371
  228. package/src/filiale/yuansheng/pc/checkmsg.vue +464 -464
  229. package/src/filiale/yunchengminsheng/android/DailyworkloadQuery.vue +491 -491
  230. package/src/filiale/yunchengminsheng/android/PaperFeedback.vue +1509 -1509
  231. package/src/filiale/yunchengminsheng/android/PhoneSellInfo.vue +113 -113
  232. package/src/filiale/yunchengminsheng/android/SafecheckDevices.vue +1270 -1270
  233. package/src/filiale/yunchengminsheng/android/SafecheckUserInfo.vue +785 -785
  234. package/src/filiale/yunchengminsheng/android.js +15 -15
  235. package/src/filiale/yunchengminsheng/pc/PaperList.vue +811 -811
  236. package/src/filiale/yunchengminsheng/pc.js +15 -15
  237. package/src/filiale/zhongsheng/android/BuyRecords.vue +122 -122
  238. package/src/filiale/zhongsheng/android/SafecheckOrderV.vue +2461 -2461
  239. package/src/filiale/zhongsheng/android/SafecheckUserInfo.vue +690 -690
  240. package/src/filiale/zhongsheng/pc/DefectListWeixiu.vue +514 -514
  241. package/src/filiale/zhongsheng/pc/NewCheckpaper.vue +1322 -1322
  242. package/src/filiale/zhongyi/android/SafecheckOrderV.vue +2431 -2431
  243. package/src/filiale/zhongyi/pc/DefectListNew.vue +514 -514
  244. package/src/filiale/zhoukou/android/SafecheckOrderV.vue +2502 -2502
  245. package/src/filiale/zhoukou/android/SafecheckUserInfo.vue +588 -588
  246. package/src/main.js +32 -33
  247. package/src/safecheck.js +924 -924
  248. package/.trae/.ignore +0 -0
  249. package/.vscode/settings.json +0 -3
@@ -1,573 +1,573 @@
1
- <template>
2
- <div class="auto app-text">
3
- <div class="panel" style="padding: 10px 10px 5px 10px;">
4
- <div class="panel-body panel-self">
5
- <div class="col-xs-12" style="padding: 2px 0">
6
- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户编号:</b></p>
7
- <!--<a class="panel-title col-xs-7 text-left input-font" style="width: 79%;color: blue;text-decoration:underline" @click="searchHistory(userinfo.f_userinfoid)">{{ userinfo.f_userinfo_code }}</a>-->
8
- <p class="panel-title col-xs-7 text-left input-font" >
9
- <label @click="searchHistory(userinfo.f_userinfoid)" style="color: #00b3ee;text-decoration:none;">{{ userinfo.f_userinfo_code }}</label><label v-if="upUserinfoSta=='是'" style="color: #00b3ee;text-decoration:none;" @click="upuserinfo(userinfo.f_userinfoid)">信息变更</label>
10
- </p>
11
- </div>
12
- <div class="col-xs-12" style="padding: 2px 0">
13
- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户名称:</b></p>
14
- <p class="panel-title col-xs-7 text-left input-font">{{ userinfo.f_user_name }}</p>
15
- </div>
16
- <div class="col-xs-12" style="padding: 2px 0">
17
- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户类型:</b></p>
18
- <p class="panel-title col-xs-7 text-left input-font">{{ userinfo.f_check_type }}
19
- </p>
20
- </div>
21
- <div class="col-xs-12" style="padding: 2px 0">
22
- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户电话:</b></p>
23
- <input class="panel-title text-left input-font" style="width: 53%" value="{{ userinfo.f_user_phone2 ? userinfo.f_user_phone2 : userinfo.f_user_phone }}" v-model="userinfo.f_user_phone"/>
24
-
25
- </div>
26
- <!-- <div class="col-xs-12" style="padding: 2px 0" v-if="updateuserphone&&(userinfo.planmeterss.f_aliasname=='机表')">-->
27
- <!-- <p class="panel-title text-left font" style="width: 23%;float: left"><b>机表表号:</b></p>-->
28
- <!-- <input class="panel-title text-left input-font" style="width: 53%" value="{{ userinfo.f_meter_no }}" v-model="userinfo.f_meter_no"/>-->
29
-
30
- <!-- </div>-->
31
- <div class="col-xs-12" style="padding: 2px 0">
32
- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户小区:</b></p>
33
- <p class="panel-title text-left input-font" style="width: 79%">{{ userinfo.f_residential_area }}</p>
34
- </div>
35
- <div class="col-xs-12" style="padding: 2px 0">
36
- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户地址:</b></p>
37
- <p class="panel-title text-left input-font" style="width: 79%">{{ userinfo.f_address }}</p>
38
- </div>
39
- <div class="col-xs-12" style="padding: 2px 0">
40
- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>安检状态:</b></p>
41
- <p class="panel-title col-xs-7 text-left input-font">{{ userinfo.f_state }}</p>
42
- </div>
43
- <div class="col-xs-12">
44
- <button type="button" style="width: 45%;float: left" class="btn btn-primary" v-if="updateuserphone" @click="updatePhone(userinfo.f_user_phone,userinfo.f_userinfoid)">电话修改</button>
45
- <button type="button" style="width: 45%;float: right" class="btn btn-primary" v-if="updateuserphone" @click="showbiaoxinghao()">表型号修改</button>
46
- </div>
47
- <div class="col-xs-12">
48
- <button type="button" style="width: 45%;float: left" class="btn btn-primary" v-if="updateuserphone&&(userinfo.planmeterss.f_aliasname=='机表')" @click="updatebiaohao(userinfo.f_meter_no,userinfo.f_userinfoid)">表号修改</button>
49
- <!-- <button type="button" style="width: 45%;float: right" class="btn btn-primary" v-if="updateuserphone" @click="showbiaoxinghao()">表型号修改</button>-->
50
- </div>
51
- </div>
52
- <div class="panel-body">
53
- <div v-show="false" class="row repair-info-content auto">
54
- <div class="col-xs-12 col-sm-12 col-md-12 form-input-group">
55
- <label class="control-label">
56
- <nobr>到达时间:</nobr>
57
- </label>
58
- <span>{{f_onsite_time}}</span>
59
- </div>
60
- <div class="col-xs-12 col-sm-12 col-md-12 form-input-group" v-if="data.f_date_leave">
61
- <label class="control-label">
62
- <nobr>离开时间:</nobr>
63
- </label>
64
- <span>{{f_offsite_time}}</span>
65
- </div>
66
- </div>
67
-
68
-
69
- <div class="form-group" :class="style__">
70
- <span class="col-md-3 col-sm-4 col-xs-4 text-left"><img src="../../../assets/housestyle.png" style="width: 20px;margin-bottom: 5px;text-align: left" alt="">入户状态:</span>
71
- <div :class="style__" class="col-md-9 col-sm-8 col-xs-8 text-center">
72
- <input type="radio" name="enterstatus" v-model="f_entry_status" id="nopeople" value="到访不遇">到访不遇
73
- <input type="radio" name="enterstatus" v-model="f_entry_status" id="rejectchecck" value="拒检">拒检
74
- <input type="radio" name="enterstatus" v-model="f_entry_status" id="enterhouse" value="入户">入户
75
- </div>
76
- <div class="form-group col-sm-12 col-xs-12" :class="style__" v-show="f_entry_status=='到访不遇'">
77
- <label class="text-left font">到访不遇照片:</label>
78
- <div class="auto">
79
- <div class="panel" style="padding: 10px 10px 5px 10px;">
80
- <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
81
- <div class="row" style="height: 240px;overflow: scroll;top: 1px">
82
- <div class="col-sm-4">
83
- <img-self :src="f_noanswer_path" alt="到访不遇照片" width="150" height="200"></img-self>
84
- </div>
85
- </div>
86
- <div class="row text-right div-photo" :class="style__">
87
- <button type="button" name="button" class="btn btn-primary btn-photo" @click="takePic('f_noanswer_path', '到访不遇照片')">拍照</button>
88
- &nbsp;&nbsp;&nbsp;&nbsp;<img src="../../../assets/remove.png" :class="style__" @click="delfile('f_noanswer_path', this.f_noanswer_path)" style="width: 25%;"></img>
89
- </div>
90
- </div>
91
- </div>
92
- </div>
93
- </div>
94
- <div class="form-group col-sm-12 col-xs-12" :class="style__" v-show="f_entry_status=='拒检'">
95
- <label class="text-left font">拒检照片:</label>
96
- <div class="auto">
97
- <div class="panel" style="padding: 10px 10px 5px 10px;">
98
- <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
99
- <div class="row" style="height: 240px;overflow: scroll;top: 1px">
100
- <div class="col-sm-4">
101
- <img-self :src="f_rejectcheck_path" alt="拒检照片" width="150" height="200"></img-self>
102
- </div>
103
- </div>
104
- <div class="row text-right div-photo">
105
- <button type="button" name="button" class="btn btn-primary btn-photo" @click="takePic('f_rejectcheck_path', '拒检照片')">拍照</button>
106
- &nbsp;&nbsp;&nbsp;&nbsp;<img src="../../../assets/remove.png" :class="style__" @click="delfile('f_rejectcheck_path', this.f_rejectcheck_path)" style="width: 25%;"></img>
107
- </div>
108
- </div>
109
- </div>
110
- </div>
111
- </div>
112
- </div>
113
- <div :class="style__" class="form-group" v-show="f_usegas == '未使用'">
114
- <sapn class="text-left col-md-12 col-sm-12 col-xs-12">处置方式:</sapn>
115
- <div class="col-xs-12 col-sm-12 col-md-12">
116
- <input type="checkbox" v-model="f_no_gas_device">无燃气具
117
- <input type="checkbox" v-model="f_close_valve">关闭表前阀
118
- <input type="checkbox" v-model="f_unload_battery">取下表内电池
119
- </div>
120
- </div>
121
- <div class="auto app-text" style="margin-top: 5px;" v-if="this.$parent.$parent.role != 'view'">
122
- <div class="panel" style="padding: 60px 7px 10px 0px;">
123
- <div class="panel-body panel-self">
124
- <div v-show="false" class="row">
125
- <p class="panel-title col-xs-4 text-left font">建档时间</p>
126
- <p class="panel-title col-xs-8 text-left input-font">{{ newfile_date }}</p>
127
- </div>
128
- <div class="row" v-if="last_check_date != null && last_check_date != ''">
129
- <p class="panel-title col-xs-4 text-left font">上次安检时间</p>
130
- <p class="panel-title col-xs-8 text-left input-font">{{ last_check_date }}</p>
131
- </div>
132
- <div class="row">
133
- <p class="panel-title col-xs-4 text-left font">上次安检状态</p>
134
- <p class="panel-title col-xs-8 text-left input-font" v-if="last_check_date != null && last_check_date != ''">安检完成</p>
135
- <p class="panel-title col-xs-8 text-left input-font" v-if="last_check_date == null || last_check_date == ''">未安检</p>
136
- </div>
137
- <div class="row" v-if="last_check_date != null && last_check_date != ''">
138
- <p class="panel-title col-xs-4 text-left font">上次安检结果</p>
139
- <p class="panel-title col-xs-8 text-left input-font" :class="last_check_result=='正常'?'':'color-red'">{{last_check_result}}</p>
140
- <div v-for="data in last_check_data.data" class="panel-title col-xs-offset-4 col-xs-8 text-left input-font">
141
- <p v-for="(key,item) in data">
142
- {{key}}:{{item}}
143
- </p>
144
- </div>
145
- </div>
146
- </div>
147
- </div>
148
- </div>
149
- </div>
150
- </div>
151
- <div v-if="showbModal">
152
- <modal :show.sync="showbModal" v-ref:modal backdrop="false">
153
- <div slot="modal-header" class="modal-header">
154
- <h4 class="modal-title">
155
- 选择表型号
156
- </h4>
157
- </div>
158
- <div slot="modal-body" class="modal-body">
159
- <div class="col-xs-12">
160
-
161
- <v-select :value.sync="biaoxinghao" v-model='biaoxinghao'
162
- :value-single="true"
163
- class="select_list select"
164
- :options='gmlist' placeholder='请选择表型号'
165
- close-on-select width="100%"></v-select>
166
- </div>
167
- <div class="col-xs-12" style="height: 10px">
168
-
169
- </div>
170
-
171
- </div>
172
- <div slot="modal-footer" class="modal-footer">
173
- <button class="btn btn-default" @click="biaoxinghaook()">确认</button>
174
- <button class="btn btn-default" @click="biaoxinghaocancel()">取消</button>
175
- </div>
176
- </modal>
177
- </div>
178
- </div>
179
- </template>
180
-
181
- <script>
182
- import { HttpResetClass } from 'vue-client'
183
- import * as Util from "../../Util";
184
- import Vue from "vue";
185
- import RadioGroup from "vue-client/src/vue-strap/src/radioGroup";
186
- import Radio from "vue-client/src/vue-strap/src/radioBtn";
187
-
188
- export default {
189
- title: "SafecheckUserInfo",
190
- props: ['userinfo'],
191
- data() {
192
- return this.$parent.$parent.data
193
- },
194
- created(){
195
- this.$set('showbModal',false)
196
- //tag
197
- this.$set('biaoxinghao','')
198
- },
199
- ready() {
200
- //tag
201
- //tag)
202
- // //tag)
203
- // this.$set('userinfo.f_meter_no',this.userinfo.planmeterss.f_meter_no)
204
- // //tag)
205
- this.$set('beforephone',this.userinfo.f_user_phone)
206
- this.$set('gmlist',[])
207
- //tag
208
- if(Vue.config.safecheck != undefined){
209
- if(Vue.config.safecheck.SafecheckUserinfo != undefined){
210
- if(Vue.config.safecheck.SafecheckUserinfo.updateuserphone != undefined) {
211
- this.$set('updateuserphone',Vue.config.safecheck.SafecheckUserinfo.updateuserphone)
212
- }
213
- }
214
- }
215
- for (let i in this.userinfo) {
216
- //tag + ':' + JSON.stringify(this.userinfo[i]))
217
- }
218
- this.safecheckStateReady()
219
- },
220
- methods: {
221
- updatebiaohao(f_meter_no,f_userinfo_id){
222
- this.$showMessage("将用户 "+this.userinfo.f_user_name+"的机表表号从"+this.userinfo.planmeterss.f_meter_no+"修改为"+f_meter_no,['confirm', 'cancel']).then((butt)=>{
223
- if(butt=="confirm"){
224
- let http = new HttpResetClass()
225
- http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/safecheckUpdateBiaoHao`, {
226
- f_meter_no:f_meter_no,
227
- f_userinfo_id: f_userinfo_id
228
- }, {resolveMsg: null, rejectMsg: null}).then((res) => {
229
- if(res.data.code == 200){
230
- this.$showMessage('修改成功!')
231
- }else{
232
- this.$showMessage('修改失败!,网络异常')
233
- }
234
- })
235
- }
236
- })
237
- },
238
- biaoxinghaook(){
239
- if (this.biaoxinghao==''){
240
- this.$showMessage("请选择表型号")
241
- return
242
- }
243
- //tag
244
- //tag
245
- this.$showMessage("是否确定进行修改?",['confirm', 'cancel']).then((butt)=>{
246
- if(butt=="confirm"){
247
- let http = new HttpResetClass()
248
- http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/safecheckUpdateBiaoXingHao`, {
249
- biaoxinghao:this.biaoxinghao,
250
- f_userinfo_id: this.userinfo.f_userinfoid
251
- }, {resolveMsg: null, rejectMsg: null}).then((res) => {
252
- if(res.data.code == 200){
253
- this.$showMessage('修改成功!')
254
- //tag
255
- this.showbModal=false
256
- }else{
257
- this.$showMessage('修改失败!,网络异常')
258
- }
259
- })
260
- }
261
- })
262
- },
263
- biaoxinghaocancel(){
264
- //tag
265
- this.showbModal=false
266
- },
267
- showbiaoxinghao(){
268
- this.gmlist=[]
269
- //tag)
270
- //tag
271
- let http1 = new HttpResetClass()
272
- http1.load('POST',`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_OrderBy`, {data: {
273
- items: 'gm.id,gm.f_meter_style',
274
- tablename: 't_gasbrand gb LEFT JOIN t_gasmodel gm ON gb.id= gm.f_gasbrand_id ',
275
- condition: `f_meter_brand = '${this.userinfo.planmeterss.f_aliasname}'`,
276
- // condition: `f_meter_brand = 'this.userinfo.planmeterss'`,
277
- orderitem: 'gm.id'
278
- }}, {resolveMsg: null, rejectMsg: null}).then((ress) => {
279
- ress.data.forEach(res=>{
280
- this.gmlist.push({
281
- label:res.f_meter_style,
282
- value:res.id
283
- })
284
- })
285
- //tag)
286
- //tag
287
- this.showbModal=true
288
- })
289
- },
290
- updatePhone(f_user_phone,f_userinfo_id){
291
-
292
- this.$showMessage("将用户 "+this.userinfo.f_user_name+"的电话号码从"+this.beforephone+"修改为"+f_user_phone,['confirm', 'cancel']).then((butt)=>{
293
- if(butt=="confirm"){
294
- let http = new HttpResetClass()
295
- http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/safecheckUpdatePhone`, {
296
- f_user_phone:f_user_phone,
297
- f_userinfo_id: f_userinfo_id
298
- }, {resolveMsg: null, rejectMsg: null}).then((res) => {
299
- if(res.data.code == 200){
300
- this.$showMessage('修改成功!')
301
- }else{
302
- this.$showMessage('修改失败!,网络异常')
303
- }
304
- })
305
- }
306
- })
307
- },
308
- upuserinfo(f_userinfo_id) {
309
- this.$dispatch('gotoson', {
310
- _this: this.$parent.$parent,
311
- title: '档案信息变更',
312
- safe: false
313
- })
314
- this.$parent.$parent.$goto('PhoneUpUserinfo', {f_userinfo_id: f_userinfo_id,f_source:'安检'})
315
- },
316
- searchHistory(f_userinfo_id) {
317
- this.$dispatch('gotoson', {
318
- _this: this.$parent.$parent,
319
- title: '购气记录',
320
- safe: false
321
- })
322
- this.$parent.$parent.$goto('phone-sell-info', {f_userinfo_id: f_userinfo_id})
323
- },
324
- cameraCallBack(prop, fileName) {
325
- HostApp.__this__.$set(prop, fileName + '?' + Math.random())
326
- //tag
327
- HostApp.__callback__ = null
328
- HostApp.__this__ = null
329
- },
330
- takePic(prop, title) {
331
- HostApp.__callback__ = this.cameraCallBack
332
- HostApp.__this__ = this
333
- //tag
334
- let fileName
335
- if (!this[prop] || this[prop].includes("nopic.png")) {
336
- fileName = Util.guid() + '-' + prop + '.jpg'
337
- } else {
338
- fileName = Util.getFileName(this[prop])
339
- }
340
- HostApp._open_a_page({
341
- type: 'boomerang',
342
- page: 'com.aofeng.hybrid.android.peripheral.CameraActivity',
343
- param: {
344
- file: fileName,
345
- requestCode: 111,
346
- callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");',
347
- watermark: title + '\t时间:' + Util.toStandardTimeString() + '\t' + Vue.user.name
348
- }
349
- })
350
- },
351
- delfile(prop, fileName) {
352
- if (fileName == Vue.nopic)
353
- return
354
- else {
355
- HostApp.delfile(fileName)
356
- this[prop] = Vue.nopic
357
- }
358
- },
359
- setEntryClass(val) {
360
- if (val == '到访不遇') {
361
- this.f_usegas = ''
362
- this.$set('f_entry_class', 'warning')
363
- } else if (val == '拒检') {
364
- this.f_usegas = ''
365
- this.$set('f_entry_class', 'danger')
366
- } else if (val == '入户') {
367
- this.$set('f_entry_class', 'success')
368
- }
369
- },
370
- setUsegas(val) {
371
- if (val == '未使用')
372
- this.$set('f_useclass', 'default')
373
- if (val == '已使用')
374
- this.$set('f_useclass', 'success')
375
- },
376
- start() {
377
- this.$parent.$parent.isStrat = true
378
- this.$set('action', !this.action)
379
- this.$set('f_onsite_time', Util.toStandardTimeString())
380
- },
381
- safecheckStateReady() {
382
- //tag
383
- //tag
384
- //tag
385
- if (!this.$parent.$parent.showBack) {
386
- this.$parent.$parent.showBack = true
387
- }
388
- //兼容下-如果没有通过外层查询带进来最新安检时间,就拿本地单子里存的上次安检时间
389
- if(this.$parent.$parent.item.f_plan_meters[0].f_last_check_date){
390
- this.$set('last_check_date', this.$parent.$parent.item.f_plan_meters[0].f_last_check_date)
391
- this.$set('newfile_date', this.$parent.$parent.item.f_plan_meters[0].f_newfile_date)
392
- if (this.$parent.$parent.item.f_plan_meters[0].f_last_check_result) {
393
- let checkResult = JSON.parse(this.$parent.$parent.item.f_plan_meters[0].f_last_check_result)
394
- this.$set('last_check_result', checkResult.result)
395
- this.$set('last_check_data.data', checkResult.data)
396
- } else {
397
- this.$set('last_check_result', '')
398
- this.$set('last_check_data.data', [])
399
- }
400
- }else{
401
- this.$set('last_check_date', this.$parent.$parent.item.f_last_check_date)
402
- if (this.$parent.$parent.item.f_last_check_result) {
403
- let checkResult = JSON.parse(this.$parent.$parent.item.f_last_check_result)
404
- this.$set('last_check_result', checkResult.result)
405
- this.$set('last_check_data.data', checkResult.data)
406
- } else {
407
- this.$set('last_check_result', '')
408
- this.$set('last_check_data.data', [])
409
- }
410
- }
411
-
412
- this.$set('upUserinfoSta', '否')
413
- this.upUserinfoSta=this.$appdata.getSingleValue('安检修改档案信息')
414
-
415
- if (this.$parent.$parent.role == 'inspect' && this.f_complete != '已完成') {
416
- this.start()
417
- }
418
- if (this.$parent.$parent.data.f_onsite_time) {
419
- //tag
420
- this.$parent.$parent.startClick = true
421
- }
422
- this.action = true
423
- //tag
424
- if (this.f_onsite_time) {
425
- this.$parent.$parent.isStrat = true
426
- this.$parent.$parent.data.f_onsite_time = Util.toStandardTimeString()
427
- }
428
- if (this.$parent.$parent.role == 'repair') {
429
- this.$set('style__', 'divmask')
430
- this.$set('style_view_', '')
431
- } else if (this.$parent.$parent.role == 'view') {
432
- this.$set('style__', 'divmask')
433
- this.$set('style_view_', 'divmask')
434
- //tag
435
- } else {
436
- this.$set('style__', '')
437
- this.$set('style_view_', '')
438
- }
439
- if (!this.f_nongasuser_path)
440
- this.$set('f_nongasuser_path', '')
441
- if (!this.f_noanswer_path)
442
- this.$set('f_noanswer_path', '')
443
- if (!this.f_rejectcheck_path)
444
- this.$set('f_rejectcheck_path', '')
445
-
446
-
447
- this.$watch('f_usegas', (val) => {
448
- this.setUsegas(val)
449
- })
450
-
451
- this.setEntryClass(this.f_entry_status)
452
- this.$watch('f_entry_status', (val) => {
453
- this.setEntryClass(val)
454
-
455
- if (val == '到访不遇') {
456
- this.f_rejectcheck_path = Vue.nopic
457
- }
458
- if (val == '拒检') {
459
- this.f_noanswer_path = Vue.nopic
460
- }
461
-
462
- if (val != '入户') {
463
- //清理安检概括
464
- this.f_no_gas_device = false
465
- this.f_unload_battery = false
466
- this.f_close_valve = false
467
- //清理全局隐患
468
- this.f_defect_cramped = false
469
- this.f_defect_bedroom = false
470
- this.f_defect_longpipe = false
471
- this.f_defect_firesource = false
472
- this.f_defect_explosive = false
473
- this.f_defect_viacabinet = false
474
- this.f_defect_intermittent = false
475
- this.f_defect_nearfire = false
476
- this.f_defect_openkitchen = false
477
- this.f_defect_hang = false
478
- this.f_cramped_path = Vue.nopic
479
- //用户评价
480
- this.f_client_evaluation = null
481
- //清设备
482
- this.$set('f_meters', [])
483
- this.$set('f_plumbs', [])
484
- this.$set('f_valves', [])
485
- this.$set('f_inner_plumbs', [])
486
- this.$set('f_alarms', [])
487
- this.$set('f_cookers', [])
488
- this.$set('f_heaters', [])
489
- this.$set('f_furnaces', [])
490
- }else{
491
- this.f_rejectcheck_path = Vue.nopic
492
- this.f_noanswer_path = Vue.nopic
493
- this.f_novisit_reason=null
494
- }
495
- })
496
- }
497
- },
498
- components: {
499
- RadioGroup,
500
- Radio
501
- },
502
- }
503
- </script>
504
-
505
- <style scoped>
506
-
507
- .font {
508
- font: 15px PingFang-SC-Medium;
509
- color: #666666;
510
- }
511
-
512
- .input-font {
513
- font: 15px PingFang-SC-Medium;
514
- color: #333333;
515
- }
516
-
517
- .app-text {
518
- font-size: 12px;
519
- }
520
-
521
- .panel-self {
522
- border-radius: 10px;
523
- border: 1px solid #499EDF;
524
- background-color: #F8F8F8;
525
- }
526
-
527
- .app-text {
528
- font-size: 12px;
529
- }
530
-
531
- .panel-self {
532
- border-radius: 5px;
533
- border: 1px solid #c5e1f7;
534
- background-color: #F2F6FA;
535
- }
536
-
537
- .font {
538
- font: 15px PingFang-SC-Medium;
539
- color: #333333;
540
- }
541
-
542
- .panel-self {
543
- border-radius: 5px;
544
- border: 1px solid #c5e1f7;
545
- background-color: #F2F6FA;
546
- }
547
-
548
- .text-left {
549
- text-align: left;
550
- }
551
-
552
- .font {
553
- font: 15px PingFang-SC-Medium;
554
- color: #333333;
555
- }
556
-
557
- .btn-photo {
558
- border: 0;
559
- border-radius: 7px;
560
- background-color: #7dc1f4;
561
- font: 15px PingFang-SC-Bold;
562
- height: 20%;
563
- }
564
-
565
- .div-photo {
566
- width: auto;
567
- height: auto;
568
- /* margin-top: 10px; */
569
- position: absolute;
570
- bottom: 10px;
571
- right: 10px;
572
- }
573
- </style>
1
+ <template>
2
+ <div class="auto app-text">
3
+ <div class="panel" style="padding: 10px 10px 5px 10px;">
4
+ <div class="panel-body panel-self">
5
+ <div class="col-xs-12" style="padding: 2px 0">
6
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户编号:</b></p>
7
+ <!--<a class="panel-title col-xs-7 text-left input-font" style="width: 79%;color: blue;text-decoration:underline" @click="searchHistory(userinfo.f_userinfoid)">{{ userinfo.f_userinfo_code }}</a>-->
8
+ <p class="panel-title col-xs-7 text-left input-font" >
9
+ <label @click="searchHistory(userinfo.f_userinfoid)" style="color: #00b3ee;text-decoration:none;">{{ userinfo.f_userinfo_code }}</label><label v-if="upUserinfoSta=='是'" style="color: #00b3ee;text-decoration:none;" @click="upuserinfo(userinfo.f_userinfoid)">信息变更</label>
10
+ </p>
11
+ </div>
12
+ <div class="col-xs-12" style="padding: 2px 0">
13
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户名称:</b></p>
14
+ <p class="panel-title col-xs-7 text-left input-font">{{ userinfo.f_user_name }}</p>
15
+ </div>
16
+ <div class="col-xs-12" style="padding: 2px 0">
17
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户类型:</b></p>
18
+ <p class="panel-title col-xs-7 text-left input-font">{{ userinfo.f_check_type }}
19
+ </p>
20
+ </div>
21
+ <div class="col-xs-12" style="padding: 2px 0">
22
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户电话:</b></p>
23
+ <input class="panel-title text-left input-font" style="width: 53%" value="{{ userinfo.f_user_phone2 ? userinfo.f_user_phone2 : userinfo.f_user_phone }}" v-model="userinfo.f_user_phone"/>
24
+
25
+ </div>
26
+ <!-- <div class="col-xs-12" style="padding: 2px 0" v-if="updateuserphone&&(userinfo.planmeterss.f_aliasname=='机表')">-->
27
+ <!-- <p class="panel-title text-left font" style="width: 23%;float: left"><b>机表表号:</b></p>-->
28
+ <!-- <input class="panel-title text-left input-font" style="width: 53%" value="{{ userinfo.f_meter_no }}" v-model="userinfo.f_meter_no"/>-->
29
+
30
+ <!-- </div>-->
31
+ <div class="col-xs-12" style="padding: 2px 0">
32
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户小区:</b></p>
33
+ <p class="panel-title text-left input-font" style="width: 79%">{{ userinfo.f_residential_area }}</p>
34
+ </div>
35
+ <div class="col-xs-12" style="padding: 2px 0">
36
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户地址:</b></p>
37
+ <p class="panel-title text-left input-font" style="width: 79%">{{ userinfo.f_address }}</p>
38
+ </div>
39
+ <div class="col-xs-12" style="padding: 2px 0">
40
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>安检状态:</b></p>
41
+ <p class="panel-title col-xs-7 text-left input-font">{{ userinfo.f_state }}</p>
42
+ </div>
43
+ <div class="col-xs-12">
44
+ <button type="button" style="width: 45%;float: left" class="btn btn-primary" v-if="updateuserphone" @click="updatePhone(userinfo.f_user_phone,userinfo.f_userinfoid)">电话修改</button>
45
+ <button type="button" style="width: 45%;float: right" class="btn btn-primary" v-if="updateuserphone" @click="showbiaoxinghao()">表型号修改</button>
46
+ </div>
47
+ <div class="col-xs-12">
48
+ <button type="button" style="width: 45%;float: left" class="btn btn-primary" v-if="updateuserphone&&(userinfo.planmeterss.f_aliasname=='机表')" @click="updatebiaohao(userinfo.f_meter_no,userinfo.f_userinfoid)">表号修改</button>
49
+ <!-- <button type="button" style="width: 45%;float: right" class="btn btn-primary" v-if="updateuserphone" @click="showbiaoxinghao()">表型号修改</button>-->
50
+ </div>
51
+ </div>
52
+ <div class="panel-body">
53
+ <div v-show="false" class="row repair-info-content auto">
54
+ <div class="col-xs-12 col-sm-12 col-md-12 form-input-group">
55
+ <label class="control-label">
56
+ <nobr>到达时间:</nobr>
57
+ </label>
58
+ <span>{{f_onsite_time}}</span>
59
+ </div>
60
+ <div class="col-xs-12 col-sm-12 col-md-12 form-input-group" v-if="data.f_date_leave">
61
+ <label class="control-label">
62
+ <nobr>离开时间:</nobr>
63
+ </label>
64
+ <span>{{f_offsite_time}}</span>
65
+ </div>
66
+ </div>
67
+
68
+
69
+ <div class="form-group" :class="style__">
70
+ <span class="col-md-3 col-sm-4 col-xs-4 text-left"><img src="../../../assets/housestyle.png" style="width: 20px;margin-bottom: 5px;text-align: left" alt="">入户状态:</span>
71
+ <div :class="style__" class="col-md-9 col-sm-8 col-xs-8 text-center">
72
+ <input type="radio" name="enterstatus" v-model="f_entry_status" id="nopeople" value="到访不遇">到访不遇
73
+ <input type="radio" name="enterstatus" v-model="f_entry_status" id="rejectchecck" value="拒检">拒检
74
+ <input type="radio" name="enterstatus" v-model="f_entry_status" id="enterhouse" value="入户">入户
75
+ </div>
76
+ <div class="form-group col-sm-12 col-xs-12" :class="style__" v-show="f_entry_status=='到访不遇'">
77
+ <label class="text-left font">到访不遇照片:</label>
78
+ <div class="auto">
79
+ <div class="panel" style="padding: 10px 10px 5px 10px;">
80
+ <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
81
+ <div class="row" style="height: 240px;overflow: scroll;top: 1px">
82
+ <div class="col-sm-4">
83
+ <img-self :src="f_noanswer_path" alt="到访不遇照片" width="150" height="200"></img-self>
84
+ </div>
85
+ </div>
86
+ <div class="row text-right div-photo" :class="style__">
87
+ <button type="button" name="button" class="btn btn-primary btn-photo" @click="takePic('f_noanswer_path', '到访不遇照片')">拍照</button>
88
+ &nbsp;&nbsp;&nbsp;&nbsp;<img src="../../../assets/remove.png" :class="style__" @click="delfile('f_noanswer_path', this.f_noanswer_path)" style="width: 25%;"></img>
89
+ </div>
90
+ </div>
91
+ </div>
92
+ </div>
93
+ </div>
94
+ <div class="form-group col-sm-12 col-xs-12" :class="style__" v-show="f_entry_status=='拒检'">
95
+ <label class="text-left font">拒检照片:</label>
96
+ <div class="auto">
97
+ <div class="panel" style="padding: 10px 10px 5px 10px;">
98
+ <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
99
+ <div class="row" style="height: 240px;overflow: scroll;top: 1px">
100
+ <div class="col-sm-4">
101
+ <img-self :src="f_rejectcheck_path" alt="拒检照片" width="150" height="200"></img-self>
102
+ </div>
103
+ </div>
104
+ <div class="row text-right div-photo">
105
+ <button type="button" name="button" class="btn btn-primary btn-photo" @click="takePic('f_rejectcheck_path', '拒检照片')">拍照</button>
106
+ &nbsp;&nbsp;&nbsp;&nbsp;<img src="../../../assets/remove.png" :class="style__" @click="delfile('f_rejectcheck_path', this.f_rejectcheck_path)" style="width: 25%;"></img>
107
+ </div>
108
+ </div>
109
+ </div>
110
+ </div>
111
+ </div>
112
+ </div>
113
+ <div :class="style__" class="form-group" v-show="f_usegas == '未使用'">
114
+ <sapn class="text-left col-md-12 col-sm-12 col-xs-12">处置方式:</sapn>
115
+ <div class="col-xs-12 col-sm-12 col-md-12">
116
+ <input type="checkbox" v-model="f_no_gas_device">无燃气具
117
+ <input type="checkbox" v-model="f_close_valve">关闭表前阀
118
+ <input type="checkbox" v-model="f_unload_battery">取下表内电池
119
+ </div>
120
+ </div>
121
+ <div class="auto app-text" style="margin-top: 5px;" v-if="this.$parent.$parent.role != 'view'">
122
+ <div class="panel" style="padding: 60px 7px 10px 0px;">
123
+ <div class="panel-body panel-self">
124
+ <div v-show="false" class="row">
125
+ <p class="panel-title col-xs-4 text-left font">建档时间</p>
126
+ <p class="panel-title col-xs-8 text-left input-font">{{ newfile_date }}</p>
127
+ </div>
128
+ <div class="row" v-if="last_check_date != null && last_check_date != ''">
129
+ <p class="panel-title col-xs-4 text-left font">上次安检时间</p>
130
+ <p class="panel-title col-xs-8 text-left input-font">{{ last_check_date }}</p>
131
+ </div>
132
+ <div class="row">
133
+ <p class="panel-title col-xs-4 text-left font">上次安检状态</p>
134
+ <p class="panel-title col-xs-8 text-left input-font" v-if="last_check_date != null && last_check_date != ''">安检完成</p>
135
+ <p class="panel-title col-xs-8 text-left input-font" v-if="last_check_date == null || last_check_date == ''">未安检</p>
136
+ </div>
137
+ <div class="row" v-if="last_check_date != null && last_check_date != ''">
138
+ <p class="panel-title col-xs-4 text-left font">上次安检结果</p>
139
+ <p class="panel-title col-xs-8 text-left input-font" :class="last_check_result=='正常'?'':'color-red'">{{last_check_result}}</p>
140
+ <div v-for="data in last_check_data.data" class="panel-title col-xs-offset-4 col-xs-8 text-left input-font">
141
+ <p v-for="(key,item) in data">
142
+ {{key}}:{{item}}
143
+ </p>
144
+ </div>
145
+ </div>
146
+ </div>
147
+ </div>
148
+ </div>
149
+ </div>
150
+ </div>
151
+ <div v-if="showbModal">
152
+ <modal :show.sync="showbModal" v-ref:modal backdrop="false">
153
+ <div slot="modal-header" class="modal-header">
154
+ <h4 class="modal-title">
155
+ 选择表型号
156
+ </h4>
157
+ </div>
158
+ <div slot="modal-body" class="modal-body">
159
+ <div class="col-xs-12">
160
+
161
+ <v-select :value.sync="biaoxinghao" v-model='biaoxinghao'
162
+ :value-single="true"
163
+ class="select_list select"
164
+ :options='gmlist' placeholder='请选择表型号'
165
+ close-on-select width="100%"></v-select>
166
+ </div>
167
+ <div class="col-xs-12" style="height: 10px">
168
+
169
+ </div>
170
+
171
+ </div>
172
+ <div slot="modal-footer" class="modal-footer">
173
+ <button class="btn btn-default" @click="biaoxinghaook()">确认</button>
174
+ <button class="btn btn-default" @click="biaoxinghaocancel()">取消</button>
175
+ </div>
176
+ </modal>
177
+ </div>
178
+ </div>
179
+ </template>
180
+
181
+ <script>
182
+ import { HttpResetClass } from 'vue-client'
183
+ import * as Util from "../../Util";
184
+ import Vue from "vue";
185
+ import RadioGroup from "vue-client/src/vue-strap/src/radioGroup";
186
+ import Radio from "vue-client/src/vue-strap/src/radioBtn";
187
+
188
+ export default {
189
+ title: "SafecheckUserInfo",
190
+ props: ['userinfo'],
191
+ data() {
192
+ return this.$parent.$parent.data
193
+ },
194
+ created(){
195
+ this.$set('showbModal',false)
196
+ //tag
197
+ this.$set('biaoxinghao','')
198
+ },
199
+ ready() {
200
+ //tag
201
+ //tag)
202
+ // //tag)
203
+ // this.$set('userinfo.f_meter_no',this.userinfo.planmeterss.f_meter_no)
204
+ // //tag)
205
+ this.$set('beforephone',this.userinfo.f_user_phone)
206
+ this.$set('gmlist',[])
207
+ //tag
208
+ if(Vue.config.safecheck != undefined){
209
+ if(Vue.config.safecheck.SafecheckUserinfo != undefined){
210
+ if(Vue.config.safecheck.SafecheckUserinfo.updateuserphone != undefined) {
211
+ this.$set('updateuserphone',Vue.config.safecheck.SafecheckUserinfo.updateuserphone)
212
+ }
213
+ }
214
+ }
215
+ for (let i in this.userinfo) {
216
+ //tag + ':' + JSON.stringify(this.userinfo[i]))
217
+ }
218
+ this.safecheckStateReady()
219
+ },
220
+ methods: {
221
+ updatebiaohao(f_meter_no,f_userinfo_id){
222
+ this.$showMessage("将用户 "+this.userinfo.f_user_name+"的机表表号从"+this.userinfo.planmeterss.f_meter_no+"修改为"+f_meter_no,['confirm', 'cancel']).then((butt)=>{
223
+ if(butt=="confirm"){
224
+ let http = new HttpResetClass()
225
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/safecheckUpdateBiaoHao`, {
226
+ f_meter_no:f_meter_no,
227
+ f_userinfo_id: f_userinfo_id
228
+ }, {resolveMsg: null, rejectMsg: null}).then((res) => {
229
+ if(res.data.code == 200){
230
+ this.$showMessage('修改成功!')
231
+ }else{
232
+ this.$showMessage('修改失败!,网络异常')
233
+ }
234
+ })
235
+ }
236
+ })
237
+ },
238
+ biaoxinghaook(){
239
+ if (this.biaoxinghao==''){
240
+ this.$showMessage("请选择表型号")
241
+ return
242
+ }
243
+ //tag
244
+ //tag
245
+ this.$showMessage("是否确定进行修改?",['confirm', 'cancel']).then((butt)=>{
246
+ if(butt=="confirm"){
247
+ let http = new HttpResetClass()
248
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/safecheckUpdateBiaoXingHao`, {
249
+ biaoxinghao:this.biaoxinghao,
250
+ f_userinfo_id: this.userinfo.f_userinfoid
251
+ }, {resolveMsg: null, rejectMsg: null}).then((res) => {
252
+ if(res.data.code == 200){
253
+ this.$showMessage('修改成功!')
254
+ //tag
255
+ this.showbModal=false
256
+ }else{
257
+ this.$showMessage('修改失败!,网络异常')
258
+ }
259
+ })
260
+ }
261
+ })
262
+ },
263
+ biaoxinghaocancel(){
264
+ //tag
265
+ this.showbModal=false
266
+ },
267
+ showbiaoxinghao(){
268
+ this.gmlist=[]
269
+ //tag)
270
+ //tag
271
+ let http1 = new HttpResetClass()
272
+ http1.load('POST',`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_OrderBy`, {data: {
273
+ items: 'gm.id,gm.f_meter_style',
274
+ tablename: 't_gasbrand gb LEFT JOIN t_gasmodel gm ON gb.id= gm.f_gasbrand_id ',
275
+ condition: `f_meter_brand = '${this.userinfo.planmeterss.f_aliasname}'`,
276
+ // condition: `f_meter_brand = 'this.userinfo.planmeterss'`,
277
+ orderitem: 'gm.id'
278
+ }}, {resolveMsg: null, rejectMsg: null}).then((ress) => {
279
+ ress.data.forEach(res=>{
280
+ this.gmlist.push({
281
+ label:res.f_meter_style,
282
+ value:res.id
283
+ })
284
+ })
285
+ //tag)
286
+ //tag
287
+ this.showbModal=true
288
+ })
289
+ },
290
+ updatePhone(f_user_phone,f_userinfo_id){
291
+
292
+ this.$showMessage("将用户 "+this.userinfo.f_user_name+"的电话号码从"+this.beforephone+"修改为"+f_user_phone,['confirm', 'cancel']).then((butt)=>{
293
+ if(butt=="confirm"){
294
+ let http = new HttpResetClass()
295
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/safecheckUpdatePhone`, {
296
+ f_user_phone:f_user_phone,
297
+ f_userinfo_id: f_userinfo_id
298
+ }, {resolveMsg: null, rejectMsg: null}).then((res) => {
299
+ if(res.data.code == 200){
300
+ this.$showMessage('修改成功!')
301
+ }else{
302
+ this.$showMessage('修改失败!,网络异常')
303
+ }
304
+ })
305
+ }
306
+ })
307
+ },
308
+ upuserinfo(f_userinfo_id) {
309
+ this.$dispatch('gotoson', {
310
+ _this: this.$parent.$parent,
311
+ title: '档案信息变更',
312
+ safe: false
313
+ })
314
+ this.$parent.$parent.$goto('PhoneUpUserinfo', {f_userinfo_id: f_userinfo_id,f_source:'安检'})
315
+ },
316
+ searchHistory(f_userinfo_id) {
317
+ this.$dispatch('gotoson', {
318
+ _this: this.$parent.$parent,
319
+ title: '购气记录',
320
+ safe: false
321
+ })
322
+ this.$parent.$parent.$goto('phone-sell-info', {f_userinfo_id: f_userinfo_id})
323
+ },
324
+ cameraCallBack(prop, fileName) {
325
+ HostApp.__this__.$set(prop, fileName + '?' + Math.random())
326
+ //tag
327
+ HostApp.__callback__ = null
328
+ HostApp.__this__ = null
329
+ },
330
+ takePic(prop, title) {
331
+ HostApp.__callback__ = this.cameraCallBack
332
+ HostApp.__this__ = this
333
+ //tag
334
+ let fileName
335
+ if (!this[prop] || this[prop].includes("nopic.png")) {
336
+ fileName = Util.guid() + '-' + prop + '.jpg'
337
+ } else {
338
+ fileName = Util.getFileName(this[prop])
339
+ }
340
+ HostApp._open_a_page({
341
+ type: 'boomerang',
342
+ page: 'com.aofeng.hybrid.android.peripheral.CameraActivity',
343
+ param: {
344
+ file: fileName,
345
+ requestCode: 111,
346
+ callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");',
347
+ watermark: title + '\t时间:' + Util.toStandardTimeString() + '\t' + Vue.user.name
348
+ }
349
+ })
350
+ },
351
+ delfile(prop, fileName) {
352
+ if (fileName == Vue.nopic)
353
+ return
354
+ else {
355
+ HostApp.delfile(fileName)
356
+ this[prop] = Vue.nopic
357
+ }
358
+ },
359
+ setEntryClass(val) {
360
+ if (val == '到访不遇') {
361
+ this.f_usegas = ''
362
+ this.$set('f_entry_class', 'warning')
363
+ } else if (val == '拒检') {
364
+ this.f_usegas = ''
365
+ this.$set('f_entry_class', 'danger')
366
+ } else if (val == '入户') {
367
+ this.$set('f_entry_class', 'success')
368
+ }
369
+ },
370
+ setUsegas(val) {
371
+ if (val == '未使用')
372
+ this.$set('f_useclass', 'default')
373
+ if (val == '已使用')
374
+ this.$set('f_useclass', 'success')
375
+ },
376
+ start() {
377
+ this.$parent.$parent.isStrat = true
378
+ this.$set('action', !this.action)
379
+ this.$set('f_onsite_time', Util.toStandardTimeString())
380
+ },
381
+ safecheckStateReady() {
382
+ //tag
383
+ //tag
384
+ //tag
385
+ if (!this.$parent.$parent.showBack) {
386
+ this.$parent.$parent.showBack = true
387
+ }
388
+ //兼容下-如果没有通过外层查询带进来最新安检时间,就拿本地单子里存的上次安检时间
389
+ if(this.$parent.$parent.item.f_plan_meters[0].f_last_check_date){
390
+ this.$set('last_check_date', this.$parent.$parent.item.f_plan_meters[0].f_last_check_date)
391
+ this.$set('newfile_date', this.$parent.$parent.item.f_plan_meters[0].f_newfile_date)
392
+ if (this.$parent.$parent.item.f_plan_meters[0].f_last_check_result) {
393
+ let checkResult = JSON.parse(this.$parent.$parent.item.f_plan_meters[0].f_last_check_result)
394
+ this.$set('last_check_result', checkResult.result)
395
+ this.$set('last_check_data.data', checkResult.data)
396
+ } else {
397
+ this.$set('last_check_result', '')
398
+ this.$set('last_check_data.data', [])
399
+ }
400
+ }else{
401
+ this.$set('last_check_date', this.$parent.$parent.item.f_last_check_date)
402
+ if (this.$parent.$parent.item.f_last_check_result) {
403
+ let checkResult = JSON.parse(this.$parent.$parent.item.f_last_check_result)
404
+ this.$set('last_check_result', checkResult.result)
405
+ this.$set('last_check_data.data', checkResult.data)
406
+ } else {
407
+ this.$set('last_check_result', '')
408
+ this.$set('last_check_data.data', [])
409
+ }
410
+ }
411
+
412
+ this.$set('upUserinfoSta', '否')
413
+ this.upUserinfoSta=this.$appdata.getSingleValue('安检修改档案信息')
414
+
415
+ if (this.$parent.$parent.role == 'inspect' && this.f_complete != '已完成') {
416
+ this.start()
417
+ }
418
+ if (this.$parent.$parent.data.f_onsite_time) {
419
+ //tag
420
+ this.$parent.$parent.startClick = true
421
+ }
422
+ this.action = true
423
+ //tag
424
+ if (this.f_onsite_time) {
425
+ this.$parent.$parent.isStrat = true
426
+ this.$parent.$parent.data.f_onsite_time = Util.toStandardTimeString()
427
+ }
428
+ if (this.$parent.$parent.role == 'repair') {
429
+ this.$set('style__', 'divmask')
430
+ this.$set('style_view_', '')
431
+ } else if (this.$parent.$parent.role == 'view') {
432
+ this.$set('style__', 'divmask')
433
+ this.$set('style_view_', 'divmask')
434
+ //tag
435
+ } else {
436
+ this.$set('style__', '')
437
+ this.$set('style_view_', '')
438
+ }
439
+ if (!this.f_nongasuser_path)
440
+ this.$set('f_nongasuser_path', '')
441
+ if (!this.f_noanswer_path)
442
+ this.$set('f_noanswer_path', '')
443
+ if (!this.f_rejectcheck_path)
444
+ this.$set('f_rejectcheck_path', '')
445
+
446
+
447
+ this.$watch('f_usegas', (val) => {
448
+ this.setUsegas(val)
449
+ })
450
+
451
+ this.setEntryClass(this.f_entry_status)
452
+ this.$watch('f_entry_status', (val) => {
453
+ this.setEntryClass(val)
454
+
455
+ if (val == '到访不遇') {
456
+ this.f_rejectcheck_path = Vue.nopic
457
+ }
458
+ if (val == '拒检') {
459
+ this.f_noanswer_path = Vue.nopic
460
+ }
461
+
462
+ if (val != '入户') {
463
+ //清理安检概括
464
+ this.f_no_gas_device = false
465
+ this.f_unload_battery = false
466
+ this.f_close_valve = false
467
+ //清理全局隐患
468
+ this.f_defect_cramped = false
469
+ this.f_defect_bedroom = false
470
+ this.f_defect_longpipe = false
471
+ this.f_defect_firesource = false
472
+ this.f_defect_explosive = false
473
+ this.f_defect_viacabinet = false
474
+ this.f_defect_intermittent = false
475
+ this.f_defect_nearfire = false
476
+ this.f_defect_openkitchen = false
477
+ this.f_defect_hang = false
478
+ this.f_cramped_path = Vue.nopic
479
+ //用户评价
480
+ this.f_client_evaluation = null
481
+ //清设备
482
+ this.$set('f_meters', [])
483
+ this.$set('f_plumbs', [])
484
+ this.$set('f_valves', [])
485
+ this.$set('f_inner_plumbs', [])
486
+ this.$set('f_alarms', [])
487
+ this.$set('f_cookers', [])
488
+ this.$set('f_heaters', [])
489
+ this.$set('f_furnaces', [])
490
+ }else{
491
+ this.f_rejectcheck_path = Vue.nopic
492
+ this.f_noanswer_path = Vue.nopic
493
+ this.f_novisit_reason=null
494
+ }
495
+ })
496
+ }
497
+ },
498
+ components: {
499
+ RadioGroup,
500
+ Radio
501
+ },
502
+ }
503
+ </script>
504
+
505
+ <style scoped>
506
+
507
+ .font {
508
+ font: 15px PingFang-SC-Medium;
509
+ color: #666666;
510
+ }
511
+
512
+ .input-font {
513
+ font: 15px PingFang-SC-Medium;
514
+ color: #333333;
515
+ }
516
+
517
+ .app-text {
518
+ font-size: 12px;
519
+ }
520
+
521
+ .panel-self {
522
+ border-radius: 10px;
523
+ border: 1px solid #499EDF;
524
+ background-color: #F8F8F8;
525
+ }
526
+
527
+ .app-text {
528
+ font-size: 12px;
529
+ }
530
+
531
+ .panel-self {
532
+ border-radius: 5px;
533
+ border: 1px solid #c5e1f7;
534
+ background-color: #F2F6FA;
535
+ }
536
+
537
+ .font {
538
+ font: 15px PingFang-SC-Medium;
539
+ color: #333333;
540
+ }
541
+
542
+ .panel-self {
543
+ border-radius: 5px;
544
+ border: 1px solid #c5e1f7;
545
+ background-color: #F2F6FA;
546
+ }
547
+
548
+ .text-left {
549
+ text-align: left;
550
+ }
551
+
552
+ .font {
553
+ font: 15px PingFang-SC-Medium;
554
+ color: #333333;
555
+ }
556
+
557
+ .btn-photo {
558
+ border: 0;
559
+ border-radius: 7px;
560
+ background-color: #7dc1f4;
561
+ font: 15px PingFang-SC-Bold;
562
+ height: 20%;
563
+ }
564
+
565
+ .div-photo {
566
+ width: auto;
567
+ height: auto;
568
+ /* margin-top: 10px; */
569
+ position: absolute;
570
+ bottom: 10px;
571
+ right: 10px;
572
+ }
573
+ </style>