safecheck-client 3.0.30-62 → 3.0.30-62-t4

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 (998) hide show
  1. package/docs/GridTree.md +47 -47
  2. package/docs/PrintFile.md +38 -38
  3. package/docs/tree.md +40 -40
  4. package/examples/ChangeConfig/comp.js +548 -548
  5. package/examples/PhoneSafePlan/comp.js +33 -33
  6. package/examples/SafePlan/App.vue +89 -89
  7. package/examples/SafePlan/comp.js +1527 -1527
  8. package/examples/SafePlan-aode/comp.js +1132 -1132
  9. package/examples/SafePlan-liaoyuan/App.vue +82 -82
  10. package/examples/SafePlan-liaoyuan/comp.js +1432 -1432
  11. package/examples/SafePlan-shaoguan/comp.js +1190 -1190
  12. package/examples/SafePlan-tongchuan/App.vue +81 -81
  13. package/examples/SafePlan-tongchuan/comp.js +1480 -1480
  14. package/examples/SafePlan-wenxi/App.vue +80 -80
  15. package/examples/SafePlan-wenxi/comp.js +1545 -1545
  16. package/examples/SafePlan-zhoukou/App.vue +81 -81
  17. package/examples/SafePlan-zhoukou/comp.js +1525 -1525
  18. package/examples/SafePlanItem/comp.js +69 -69
  19. package/examples/SafePlanrongcheng/comp.js +1141 -1141
  20. package/examples/SafePlanrongcheng-gs/comp.js +1140 -1140
  21. package/examples/SafePlanrongcheng-gssq/comp.js +1143 -1143
  22. package/examples/SafePlanrongcheng-mysq/comp.js +1144 -1144
  23. package/examples/UserFiles/comp.js +227 -227
  24. package/index.html +6 -2
  25. package/package.json +4 -4
  26. package/src/App-/345/215/225/351/241/265/351/235/242/346/211/223/345/214/205/347/224/250.vue +55 -0
  27. package/src/assets/123.png +0 -0
  28. package/src/assets/f8632d3c8c4c1cb68e99da754cab1a7.png +0 -0
  29. package/src/assets//345/215/225/345/205/203/345/217/267.png +0 -0
  30. package/src/assets//345/234/260/345/235/200.png +0 -0
  31. package/src/assets//345/247/223/345/220/215.png +0 -0
  32. package/src/assets//345/260/217/345/214/272.png +0 -0
  33. package/src/assets//345/260/217/345/214/272/350/223/235/350/211/262.png +0 -0
  34. package/src/assets//345/272/225/346/225/260.png +0 -0
  35. package/src/assets//346/210/267/347/274/226/345/217/267.png +0 -0
  36. package/src/assets//346/245/274/345/217/267.png +0 -0
  37. package/src/assets//346/245/274/345/261/202.png +0 -0
  38. package/src/assets//350/241/250/347/261/273/345/236/213.png +0 -0
  39. package/src/assets//351/227/250/347/211/214/345/217/267.png +0 -0
  40. package/src/components/CheckerCount/CheckCountAreaList.vue +1 -1
  41. package/src/components/CheckerCount/CheckCountUserList.vue +4 -4
  42. package/src/components/CheckerCount/ZhouKouCheckCount.vue +4 -4
  43. package/src/components/DefectDealMain/DefectListNew.vue +11 -11
  44. package/src/components/DefectDealMain/DefectPaperNew.vue +13 -13
  45. package/src/components/ExportExcel.vue +4 -2
  46. package/src/components/LoadData.vue +62 -0
  47. package/src/components/NewDefectList/DefectListNew.vue +8 -7
  48. package/src/components/NewDefectList/DefectPaperNew.vue +13 -13
  49. package/src/components/Util/ImgSelfSafePlus.vue +19 -10
  50. package/src/components/Util/SafecheckUpload.vue +1 -1
  51. package/src/components/Util.js +7 -0
  52. package/src/components/android/AddGas.vue +2 -2
  53. package/src/components/android/AddPlanItem.vue +6 -6
  54. package/src/components/android/AddPlanItemYy.vue +451 -0
  55. package/src/components/android/AddSpecialPlanItem.vue +6 -6
  56. package/src/components/android/AdviseCommit.vue +1 -1
  57. package/src/components/android/AndroidCheckResult.vue +1 -1
  58. package/src/components/android/AndroidDefectDeal.vue +9 -8
  59. package/src/components/android/AndroidDefectDealBeforeSafe.vue +502 -0
  60. package/src/components/android/Announcement.vue +2 -2
  61. package/src/components/android/AreaPlan.vue +7 -12
  62. package/src/components/android/AreaSelect.vue +198 -0
  63. package/src/components/android/BlackUserOnLine.vue +5 -5
  64. package/src/components/android/BuildingSelect.vue +192 -0
  65. package/src/components/android/CheckNotice.vue +1 -1
  66. package/src/components/android/CheckPlan.vue +2 -2
  67. package/src/components/android/CheckPlanDown.vue +1 -1
  68. package/src/components/android/CheckPlanItems.vue +2 -2
  69. package/src/components/android/CheckPlanSelect.vue +229 -0
  70. package/src/components/android/CheckerMonthly.vue +1 -1
  71. package/src/components/android/CivilCurrentCreate.vue +7 -7
  72. package/src/components/android/ClockIn.vue +2 -2
  73. package/src/components/android/CurrentCreate.vue +7 -7
  74. package/src/components/android/CurrentCreateYy.vue +1051 -0
  75. package/src/components/android/CurrentCreate_new.vue +6 -6
  76. package/src/components/android/DailyworkloadQuery.vue +2 -2
  77. package/src/components/android/Devices.vue +1 -1
  78. package/src/components/android/Devicesm.vue +1 -1
  79. package/src/components/android/DoorService.vue +3 -3
  80. package/src/components/android/ExtractCheckPlan.vue +1 -1
  81. package/src/components/android/ExtractPlanItem.vue +5 -5
  82. package/src/components/android/ImgSelfAndroid.vue +1 -1
  83. package/src/components/android/Insurance/PhoneInsurancePurchase.vue +1 -1
  84. package/src/components/android/Insurance/PhoneInsurancePurchaseDetail.vue +2 -2
  85. package/src/components/android/Insurance/PhoneInsuranceRecordList.vue +1 -1
  86. package/src/components/android/Iotinstructionsview/IoTinstruction.vue +1 -1
  87. package/src/components/android/LcheckUnplan.vue +1 -1
  88. package/src/components/android/Login.vue +1 -1
  89. package/src/components/android/NewCheckpaperAndroid.vue +1 -1
  90. package/src/components/android/NoCivilCurrentCreate.vue +7 -7
  91. package/src/components/android/OnlineCheckByArea.vue +1 -1
  92. package/src/components/android/OnlineRepairSafe.vue +3 -3
  93. package/src/components/android/OnlineVindicate.vue +1 -1
  94. package/src/components/android/PaperFeedback.vue +47 -12
  95. package/src/components/android/PaperFeedbackTemp.vue +10 -10
  96. package/src/components/android/PaperFeedbackm.vue +4 -4
  97. package/src/components/android/PaperMeter.vue +1 -1
  98. package/src/components/android/PaperMeterNoncivil.vue +1 -1
  99. package/src/components/android/PaperSet.vue +2 -2
  100. package/src/components/android/PaperSetNoncivil.vue +2 -2
  101. package/src/components/android/PaperUser.vue +1 -1
  102. package/src/components/android/PaperUserNoncivil.vue +1 -1
  103. package/src/components/android/PhoneChangemeterInfo.vue +1 -1
  104. package/src/components/android/PhoneRecordInfo.vue +1 -1
  105. package/src/components/android/PhoneSellInfo.vue +1 -1
  106. package/src/components/android/PhoneState.vue +2 -2
  107. package/src/components/android/PhoneUpDetail.vue +8 -8
  108. package/src/components/android/PhoneUpUserinfo.vue +17 -11
  109. package/src/components/android/PhoneUserFind.vue +1 -1
  110. package/src/components/android/PrearrangedPlan.vue +1 -1
  111. package/src/components/android/QRCode/QRCodeBinding.vue +300 -0
  112. package/src/components/android/QRCode/QRCodePage.vue +212 -0
  113. package/src/components/android/RelieveRestrict.vue +3 -3
  114. package/src/components/android/RepairQuery.vue +1 -1
  115. package/src/components/android/ResAreaList.vue +1 -1
  116. package/src/components/android/Restriction.vue +3 -3
  117. package/src/components/android/SafePlanItem.vue +19 -7
  118. package/src/components/android/SafecheckDevices.vue +7 -3
  119. package/src/components/android/SafecheckDevicesTemp.vue +1 -1
  120. package/src/components/android/SafecheckOrderV.vue +90 -18
  121. package/src/components/android/SafecheckUser.vue +1 -1
  122. package/src/components/android/SwitchValve.vue +4 -4
  123. package/src/components/android/SystemSetting.vue +1 -1
  124. package/src/components/android/UploadPage.vue +1 -1
  125. package/src/components/android/UserinfoSelect.vue +714 -0
  126. package/src/components/android/YuYueAddPlanItem.vue +2 -2
  127. package/src/components/android/checkPlanResult.vue +2 -2
  128. package/src/components/android/examples/410.png +0 -0
  129. package/src/components/android/examples/SafeListExamples.vue +296 -0
  130. package/src/components/android/examples/UserExamples.vue +137 -0
  131. package/src/components/android/examples/ViewDetailsExamples.vue +1235 -0
  132. package/src/components/android/examples/touxiang.png +0 -0
  133. package/src/components/android/old/PaperFeedback.vue +4 -4
  134. package/src/components/android/recheck/Recheck.vue +5 -5
  135. package/src/components/android/safeHistoryLook.vue +2 -2
  136. package/src/components/android/userinfo/SafecheckUserInfo.vue +5 -5
  137. package/src/components/android/wasm/comp.js +1 -1
  138. package/src/components/attendance/DailyAttendance.vue +1 -1
  139. package/src/components/attendance/MonthlyAttendance.vue +4 -4
  140. package/src/components/callincheck/CallInCheckMain.vue +1 -1
  141. package/src/components/callincheck/CallInPlan.vue +1 -1
  142. package/src/components/callincheck/UserFileList.vue +1 -1
  143. package/src/components/checkAreaClassification.vue +2 -2
  144. package/src/components/checkerphonestate/Checker.vue +1 -1
  145. package/src/components/checkerphonestate/CheckerState.vue +1 -1
  146. package/src/components/checkplan/CheckDetail.vue +7 -7
  147. package/src/components/checkplan/SelectCheckPlan.vue +3 -3
  148. package/src/components/checkplan/SelectMessage.vue +1 -1
  149. package/src/components/checkplan/checkmsg.vue +2 -2
  150. package/src/components/checkplan/checkmsgZG.vue +1 -1
  151. package/src/components/createcheckplan/CreatePlan.vue +10 -10
  152. package/src/components/createcheckplan/CreatePlanWuan.vue +9 -9
  153. package/src/components/createcheckplan/DelPlanRepeat.vue +5 -5
  154. package/src/components/createcheckplan/PlanList.vue +4 -4
  155. package/src/components/createcheckplan/PlanUersList.vue +4 -4
  156. package/src/components/defect/DefectDetail.vue +1 -1
  157. package/src/components/defect/DefectDetailWeixiu.vue +1 -1
  158. package/src/components/defect/DefectList.vue +6 -6
  159. package/src/components/defect/DefectListWeixiu.vue +6 -6
  160. package/src/components/defect/DefectPaper.vue +9 -9
  161. package/src/components/defect/DefectPaperWeiXiu.vue +7 -7
  162. package/src/components/defects/AddDefectModal.vue +2 -2
  163. package/src/components/defects/AddDevice.vue +1 -1
  164. package/src/components/defects/CheckPaperItem.vue +1 -1
  165. package/src/components/defects/CheckPaperItems.vue +1 -1
  166. package/src/components/defects/CheckPaperSearch.vue +1 -1
  167. package/src/components/defects/DefectSeting.vue +2 -2
  168. package/src/components/defects/DefectsQuery.vue +1 -1
  169. package/src/components/defects/DevicesSeting.vue +1 -1
  170. package/src/components/equipment/BoilerUsage.vue +1 -1
  171. package/src/components/equipment/CheckRate.vue +7 -7
  172. package/src/components/equipment/CheckerRate.vue +6 -6
  173. package/src/components/equipment/CookerUsage.vue +1 -1
  174. package/src/components/equipment/DeviceUsage.vue +1 -1
  175. package/src/components/equipment/FurnaceUsage.vue +1 -1
  176. package/src/components/equipment/GasMeterUsage.vue +1 -1
  177. package/src/components/equipment/HeaterUsage.vue +1 -1
  178. package/src/components/equipment/MonthCheckRate.vue +6 -6
  179. package/src/components/filialCircle/AddCircleFiliale.vue +1 -1
  180. package/src/components/filialCircle/CircleList.vue +2 -2
  181. package/src/components/gasusage/GasUsage.vue +1 -1
  182. package/src/components/inspections/AddInspectPlanItem.vue +4 -4
  183. package/src/components/inspections/AddInspectPlanItems.vue +4 -4
  184. package/src/components/inspections/AddInspectPlanItemss.vue +3 -3
  185. package/src/components/inspections/Checked.vue +1 -1
  186. package/src/components/inspections/DisplayInspectionList.vue +2 -2
  187. package/src/components/inspections/InspectionList.vue +5 -5
  188. package/src/components/inspections/InspectionLists.vue +5 -5
  189. package/src/components/inspections/InspectionListss.vue +5 -5
  190. package/src/components/inspections/inspectionDevices.vue +1 -1
  191. package/src/components/inspections/inspectionFeedback.vue +7 -7
  192. package/src/components/inspections/inspectionOrderV.vue +2 -2
  193. package/src/components/inspections/inspectionOrderVs.vue +2 -2
  194. package/src/components/inspections/inspectionOrderVss.vue +2 -2
  195. package/src/components/inspections/inspectionUserInfo.vue +4 -4
  196. package/src/components/issueplan/IssuePlanAction.vue +2 -2
  197. package/src/components/issueplan/IssuePlanQuery.vue +1 -1
  198. package/src/components/levelplan/AdjustPlan.vue +3 -3
  199. package/src/components/levelplan/CheckerLeft.vue +2 -2
  200. package/src/components/levelplan/CheckerPlanAdjust.vue +3 -3
  201. package/src/components/levelplan/CheckerRight.vue +2 -2
  202. package/src/components/map/AMapTrailShow.vue +1 -1
  203. package/src/components/map/AMapTrailShowZk.vue +2 -2
  204. package/src/components/map/FootPrintList.vue +2 -2
  205. package/src/components/map/PersonTrack.vue +2 -2
  206. package/src/components/map/checkScreen.vue +30 -24
  207. package/src/components/metterfiles/AddUserfiles.vue +1 -1
  208. package/src/components/metterfiles/MetterFiles.vue +3 -3
  209. package/src/components/metterfiles/MetterfilesChange.vue +1 -1
  210. package/src/components/metterfiles/UserFiles.vue +2 -2
  211. package/src/components/metterfiles/Userfileschange.vue +3 -3
  212. package/src/components/noplan/NoPlanPaperList.vue +1 -1
  213. package/src/components/noplan/NoPlanSearchUser.vue +7 -7
  214. package/src/components/notice/NoticeQuery.vue +1 -1
  215. package/src/components/olddata/OldPaperList.vue +3 -3
  216. package/src/components/paper/PaperList.vue +21 -13
  217. package/src/components/paper/PaperVerify.vue +1 -1
  218. package/src/components/paper/PlanChooser.vue +5 -3
  219. package/src/components/paper/RepairVerify.vue +1 -1
  220. package/src/components/paper/RepairVerifyForm.vue +1 -1
  221. package/src/components/paper/VerifyForm.vue +3 -3
  222. package/src/components/paper/filialeCheckInfo.vue +3 -3
  223. package/src/components/pc/AddToCheckBook.vue +3 -3
  224. package/src/components/pc/AnnouncementPC.vue +6 -6
  225. package/src/components/pc/CheckBook.vue +4 -4
  226. package/src/components/pc/CheckBookArea.vue +1 -1
  227. package/src/components/pc/CheckBookCompany.vue +1 -1
  228. package/src/components/pc/CheckBookDetails.vue +1 -1
  229. package/src/components/pc/CheckBookList.vue +5 -5
  230. package/src/components/pc/CheckBookSearchArea.vue +6 -6
  231. package/src/components/pc/CheckBookSearchUnit.vue +2 -2
  232. package/src/components/pc/CheckBookSearchUser.vue +6 -6
  233. package/src/components/pc/CheckBookSearchUserList.vue +5 -5
  234. package/src/components/pc/CheckBookUser.vue +3 -3
  235. package/src/components/pc/CheckNoDetail.vue +4 -4
  236. package/src/components/pc/CheckPlanCountChart.vue +1 -1
  237. package/src/components/pc/DefectDeal.vue +11 -11
  238. package/src/components/pc/DefectList.vue +5 -5
  239. package/src/components/pc/DepSelector.vue +1 -1
  240. package/src/components/pc/DeviceChange.vue +1 -1
  241. package/src/components/pc/Edit.vue +1 -1
  242. package/src/components/pc/HiddenChart.vue +2 -2
  243. package/src/components/pc/NewCheckpaper.vue +49 -43
  244. package/src/components/pc/NewCheckpaperTemp.vue +4 -4
  245. package/src/components/pc/PaperChazhiMain.vue +5 -5
  246. package/src/components/pc/PaperDefectMain.vue +7 -7
  247. package/src/components/pc/PaperEdit.vue +4 -4
  248. package/src/components/pc/PaperVisitMain.vue +3 -3
  249. package/src/components/pc/SafeCheckOrder/SafeCheckOrderApplyDisposeBasics.vue +3 -3
  250. package/src/components/pc/SafeCheckOrder/SafeCheckOrderList.vue +2 -2
  251. package/src/components/pc/SafeVisitHistory.vue +4 -4
  252. package/src/components/pc/SafeVisitInfo.vue +261 -0
  253. package/src/components/pc/SafecheckDeviceList.vue +4 -4
  254. package/src/components/pc/SelectCheckNoPlan.vue +5 -5
  255. package/src/components/pc/SelectCheckPlanAndNoPLan.vue +3 -3
  256. package/src/components/phonestate/DailyTraffic.vue +1 -1
  257. package/src/components/phonestate/FootprintMap.vue +1 -1
  258. package/src/components/phonestate/LastKnownState.vue +1 -1
  259. package/src/components/plancheck/CheckPlanList.vue +1 -1
  260. package/src/components/planmanage/PlanManage.vue +21 -11
  261. package/src/components/planmanage/checkPlanList.vue +369 -368
  262. package/src/components/planmanage/checkUserList.vue +773 -739
  263. package/src/components/querycheckpaper/CheckPaperList.vue +1 -1
  264. package/src/components/querycheckpaper/CheckSearchUser.vue +11 -11
  265. package/src/components/querycheckpaper/CheckSearchUserNew.vue +11 -11
  266. package/src/components/querycheckpaper/PaperItems.vue +1 -1
  267. package/src/components/querycheckpaper/ShebeiPaperList.vue +1 -1
  268. package/src/components/querycheckpaper/ShebeiSearchUser.vue +9 -9
  269. package/src/components/report/CheckPlanAreaList.vue +5 -5
  270. package/src/components/report/CheckPlanCountChartArea.vue +5 -0
  271. package/src/components/report/CheckPlanUserList.vue +4 -4
  272. package/src/components/report/HiddenSituation.vue +4 -4
  273. package/src/components/report/ManageBusSummary.vue +3 -3
  274. package/src/components/report/NoCheckplanSafecheck.vue +4 -4
  275. package/src/components/report/YinHuanBiHuan.vue +1 -1
  276. package/src/components/rongcheng/AddPlanItem.vue +11 -3
  277. package/src/components/rongcheng/AreaPlan.vue +2 -2
  278. package/src/components/rongcheng/AspPaperFeedback.vue +7 -7
  279. package/src/components/rongcheng/AspiratedAreaPlan.vue +2 -2
  280. package/src/components/rongcheng/AspiratedCurrentCreate.vue +6 -6
  281. package/src/components/rongcheng/AspiratedDevices.vue +34 -1
  282. package/src/components/rongcheng/AspiratedDistribute.vue +2 -2
  283. package/src/components/rongcheng/AspiratedOrderV.vue +6 -6
  284. package/src/components/rongcheng/AspiratedPaperFeedbackm.vue +1045 -1019
  285. package/src/components/rongcheng/AspiratedPaperMessage.vue +1 -1
  286. package/src/components/rongcheng/AspiratedUploadPage.vue +1 -1
  287. package/src/components/rongcheng/AspiratedUserInfo.vue +1 -1
  288. package/src/components/rongcheng/CheckCurrentCreate.vue +13 -5
  289. package/src/components/rongcheng/CheckPaperList.vue +1 -1
  290. package/src/components/rongcheng/CheckPlanList.vue +1 -1
  291. package/src/components/rongcheng/CheckSearchArea.vue +8 -8
  292. package/src/components/rongcheng/CheckSearchUser.vue +53 -23
  293. package/src/components/rongcheng/CheckSearchUserNo.vue +5 -5
  294. package/src/components/rongcheng/CheckUserList.vue +4 -4
  295. package/src/components/rongcheng/CurrentCreateOnline.vue +11 -11
  296. package/src/components/rongcheng/DefectList.vue +5 -5
  297. package/src/components/rongcheng/DefectPaper.vue +12 -9
  298. package/src/components/rongcheng/PaperFeedback.vue +9 -9
  299. package/src/components/rongcheng/PaperListAJ.vue +4 -4
  300. package/src/components/rongcheng/PaperListNPAJ.vue +4 -4
  301. package/src/components/rongcheng/PaperListNPSQ.vue +40 -5
  302. package/src/components/rongcheng/PaperListSQ.vue +36 -15
  303. package/src/components/rongcheng/PaperStatem.vue +48 -2
  304. package/src/components/rongcheng/PhoneDevicesInfo.vue +20 -5
  305. package/src/components/rongcheng/PhoneUpUserinfo.vue +1236 -1241
  306. package/src/components/rongcheng/SafecheckDevices.vue +34 -1
  307. package/src/components/rongcheng/SafecheckOrderV.vue +2533 -2515
  308. package/src/components/rongcheng/SafecheckOrderVCli.vue +2641 -2632
  309. package/src/components/rongcheng/SafecheckUserInfo.vue +436 -0
  310. package/src/components/rongcheng/UploadPage.vue +1 -1
  311. package/src/components/rongcheng/checkerplan/SelectCheckPlan.vue +3 -3
  312. package/src/components/rongcheng/report/CheckPlanAreaList.vue +435 -419
  313. package/src/components/rongcheng/report/CheckPlanUserList.vue +7 -7
  314. package/src/components/safecheckNew/PaperList.vue +785 -0
  315. package/src/components/safecheckNew/android/AddPlanItem.vue +419 -0
  316. package/src/components/safecheckNew/android/AreaPlan.vue +561 -0
  317. package/src/components/safecheckNew/android/CurrentCreate.vue +1050 -0
  318. package/src/components/safecheckNew/android/Recheck.vue +379 -0
  319. package/src/components/safecheckNew/android/SafecheckDevices.vue +1400 -0
  320. package/src/components/safecheckNew/android/SafecheckOrderV.vue +2731 -0
  321. package/src/components/sendsingle/EquipmentManagement.vue +2 -2
  322. package/src/components/sendsingle/onlineChangeMeter.vue +4 -4
  323. package/src/components/sendsingle/onlineoperation.vue +3 -3
  324. package/src/components/sendsingle/onlinequeryuser.vue +3 -3
  325. package/src/components/shaoguan/CheckPlanUserList.vue +4 -4
  326. package/src/components/shaoguan/DefectDetail.vue +1 -1
  327. package/src/components/shaoguan/DefectList.vue +6 -6
  328. package/src/components/shaoguan/DefectPaper.vue +3 -3
  329. package/src/components/shaoguan/PaperList.vue +4 -4
  330. package/src/components/shaoguan/SafecheckOrderV.vue +2 -2
  331. package/src/components/task/RepairAnnual.vue +1 -1
  332. package/src/components/task/RepairAnnualDetail.vue +1 -1
  333. package/src/components/task/RepairMonthly.vue +1 -1
  334. package/src/components/task/TaskAnnual.vue +1 -1
  335. package/src/components/task/TaskAnnualDetail.vue +1 -1
  336. package/src/components/task/TaskMonthly.vue +1 -1
  337. package/src/components/tongcheng/AreaPlan.vue +2 -2
  338. package/src/components/tongcheng/CurrentCreate.vue +2 -2
  339. package/src/components/tongcheng/PaperFeedback.vue +4 -4
  340. package/src/components/tongcheng/PaperSet.vue +2 -2
  341. package/src/components/tongcheng/PaperUser.vue +1 -1
  342. package/src/components/userfile/SecurityAudit.vue +7 -7
  343. package/src/components/userfile/UserFile.vue +2 -2
  344. package/src/components/userfile/UserInfoAudit.vue +8 -8
  345. package/src/components/userfile/UserfileChange.vue +2 -2
  346. package/src/components/userfileNew/UserInfoAuditNew.vue +6 -6
  347. package/src/components/userfileNew/UserinfoModify.vue +6 -6
  348. package/src/components/userfileaudit/UserFileaudit.vue +1 -1
  349. package/src/components/userfileaudit/UserfileChangeaudit.vue +2 -2
  350. package/src/filiale/ALshan/pc/CheckSearchUser.vue +9 -9
  351. package/src/filiale/ALshan/pc/DefectListWeixiu.vue +6 -6
  352. package/src/filiale/ALshan/pc/checkUserList.vue +9 -9
  353. package/src/filiale/Util.js +12 -0
  354. package/src/filiale/ancheng/android/NewCheckpaperAndroid.vue +1 -1
  355. package/src/filiale/ancheng/android/PaperFeedback.vue +6 -6
  356. package/src/filiale/ancheng/android/SafecheckOrderV.vue +2 -2
  357. package/src/filiale/ancheng/android/SafecheckUserInfo.vue +4 -4
  358. package/src/filiale/ancheng/pc/NewCheckpaper.vue +2 -2
  359. package/src/filiale/ancheng/pc/PaperList.vue +8 -8
  360. package/src/filiale/ancheng/pc/checkScreen.vue +2 -2
  361. package/src/filiale/ankangyihua/android/AddPlanItem.vue +6 -6
  362. package/src/filiale/ankangyihua/android/AndroidDefectDeal.vue +4 -4
  363. package/src/filiale/ankangyihua/android/CurrentCreate.vue +7 -7
  364. package/src/filiale/ankangyihua/android/SafecheckOrderV.vue +2 -2
  365. package/src/filiale/ankangyihua/android/UploadPage.vue +1 -1
  366. package/src/filiale/ankangyihua/pc/CheckPlanAreaList.vue +5 -5
  367. package/src/filiale/ankangyihua/pc/CheckSearchUser.vue +11 -11
  368. package/src/filiale/ankangyihua/pc/DefectListWeixiu.vue +6 -6
  369. package/src/filiale/ankangyihua/pc/DefectPaperWeiXiu.vue +7 -7
  370. package/src/filiale/ankangyihua/pc/NewCheckpaper.vue +3 -3
  371. package/src/filiale/ankangyihua/pc/PaperDefectMain.vue +6 -6
  372. package/src/filiale/ankangyihua/pc/PaperList.vue +7 -7
  373. package/src/filiale/ankangyihua/pc/PlanManage.vue +7 -7
  374. package/src/filiale/ankangyihua/pc/checkUserList.vue +10 -9
  375. package/src/filiale/baiyin/android/AndroidDefectDeal.vue +633 -0
  376. package/src/filiale/baiyin/android/SafecheckOrderV.vue +2785 -0
  377. package/src/filiale/baiyin/android.js +11 -0
  378. package/src/filiale/baiyin/pc/CheckPlanAreaList.vue +485 -0
  379. package/src/filiale/baiyin/pc/CheckSearchUser.vue +1067 -0
  380. package/src/filiale/baiyin/pc/DefectListNew.vue +597 -0
  381. package/src/filiale/baiyin/pc/DefectMainNew.vue +63 -0
  382. package/src/filiale/baiyin/pc/DefectPaperNew.vue +1052 -0
  383. package/src/filiale/baiyin/pc/PaperList.vue +790 -0
  384. package/src/filiale/baiyin/pc/PlanChooser.vue +167 -0
  385. package/src/filiale/baiyin/pc/PlanManage.vue +834 -0
  386. package/src/filiale/baiyin/pc/RightTreeSafe.vue +348 -0
  387. package/src/filiale/baiyin/pc/RoleSelector.vue +160 -0
  388. package/src/filiale/baiyin/pc/checkUserList.vue +771 -0
  389. package/src/filiale/baiyin/pc.js +21 -0
  390. package/src/filiale/bayan/android/AddPlanItem.vue +26 -9
  391. package/src/filiale/bayan/android/CheckPlanDown.vue +249 -0
  392. package/src/filiale/bayan/android/CurrentCreate.vue +8 -8
  393. package/src/filiale/bayan/android/Edit.vue +132 -0
  394. package/src/filiale/bayan/android/PaperFeedback.vue +1669 -1651
  395. package/src/filiale/bayan/android/PhoneUpUserinfo.vue +53 -53
  396. package/src/filiale/bayan/android/SafecheckDevices.vue +1 -1
  397. package/src/filiale/bayan/android/SafecheckOrderV.vue +84 -68
  398. package/src/filiale/bayan/android/SafecheckUserInfo.vue +868 -806
  399. package/src/filiale/bayan/android.js +3 -1
  400. package/src/filiale/bayan/pc/CheckDetail.vue +205 -0
  401. package/src/filiale/bayan/pc/CheckPlan.vue +59 -0
  402. package/src/filiale/bayan/pc/CheckPlanAreaList.vue +565 -0
  403. package/src/filiale/bayan/pc/CheckSearchUser.vue +1110 -0
  404. package/src/filiale/bayan/pc/DefectListNew.vue +597 -0
  405. package/src/filiale/bayan/pc/DefectMainNew.vue +63 -0
  406. package/src/filiale/bayan/pc/DefectPaperNew.vue +1218 -0
  407. package/src/filiale/bayan/pc/DeviceChange.vue +1838 -0
  408. package/src/filiale/bayan/pc/HiddenSituation.vue +256 -0
  409. package/src/filiale/bayan/pc/NewCheckpaper.vue +86 -52
  410. package/src/filiale/bayan/pc/PaperList.vue +900 -792
  411. package/src/filiale/bayan/pc/PlanManage.vue +36 -15
  412. package/src/filiale/bayan/pc/SelectCheckPlan.vue +333 -0
  413. package/src/filiale/bayan/pc.js +7 -0
  414. package/src/filiale/dexin/android/CasualSave.vue +1050 -0
  415. package/src/filiale/dexin/android/SafecheckDevices.vue +1305 -0
  416. package/src/filiale/dexin/android/SafecheckOrderV.vue +2950 -2684
  417. package/src/filiale/dexin/android/WebMeterOpen.vue +377 -0
  418. package/src/filiale/dexin/android/WebMeterOpenEdit.vue +213 -0
  419. package/src/filiale/dexin/android.js +5 -1
  420. package/src/filiale/dexin/pc/PaperList.vue +805 -0
  421. package/src/filiale/dexin/pc.js +12 -0
  422. package/src/filiale/fugou/android/AddPlanItem.vue +6 -6
  423. package/src/filiale/fugou/android/SafecheckOrderV.vue +2796 -0
  424. package/src/filiale/fugou/android.js +2 -1
  425. package/src/filiale/fugou/pc/AddToCheckBook.vue +97 -0
  426. package/src/filiale/fugou/pc/CheckBook.vue +303 -0
  427. package/src/filiale/fugou/pc/CheckBookAll.vue +67 -0
  428. package/src/filiale/fugou/pc/CheckBookArea.vue +146 -0
  429. package/src/filiale/fugou/pc/CheckBookCompany.vue +144 -0
  430. package/src/filiale/fugou/pc/CheckBookDetails.vue +161 -0
  431. package/src/filiale/fugou/pc/CheckBookEntry.vue +94 -0
  432. package/src/filiale/fugou/pc/CheckBookList.vue +366 -0
  433. package/src/filiale/fugou/pc/CheckBookSearchArea.vue +560 -0
  434. package/src/filiale/fugou/pc/CheckBookSearchUnit.vue +229 -0
  435. package/src/filiale/fugou/pc/CheckBookSearchUser.vue +830 -0
  436. package/src/filiale/fugou/pc/CheckBookSearchUserList.vue +674 -0
  437. package/src/filiale/fugou/pc/CheckBookUser.vue +158 -0
  438. package/src/filiale/fugou/pc/DefectMainNew.vue +63 -0
  439. package/src/filiale/fugou/pc/DefectPaperNew.vue +1085 -0
  440. package/src/filiale/fugou/pc/PaperDefectMain.vue +928 -0
  441. package/src/filiale/fugou/pc/PaperList.vue +62 -8
  442. package/src/filiale/fugou/pc/PlanManage.vue +1061 -0
  443. package/src/filiale/fugou/pc/checkPlanList.vue +371 -0
  444. package/src/filiale/fugou/pc/checkUserList.vue +904 -0
  445. package/src/filiale/fugou/pc.js +60 -1
  446. package/src/filiale/fugu/android/SafecheckOrderV.vue +2 -2
  447. package/src/filiale/fugu/pc/CheckSearchUser.vue +11 -11
  448. package/src/filiale/fugu/pc/NewCheckpaper.vue +1 -1
  449. package/src/filiale/fugu/pc/SelectCheckPlan.vue +3 -3
  450. package/src/filiale/fugu/pc/planmanage/checkUserList.vue +9 -9
  451. package/src/filiale/ganquan/android/AddPlanItem.vue +6 -6
  452. package/src/filiale/ganquan/android/AndroidDefectDeal.vue +1 -1
  453. package/src/filiale/ganquan/android/PhoneUpUserinfo.vue +9 -9
  454. package/src/filiale/ganquan/android/SafecheckOrderV.vue +2 -2
  455. package/src/filiale/ganquan/pc/DefectPaperNew.vue +11 -11
  456. package/src/filiale/ganquan/pc/NewCheckpaper.vue +1 -1
  457. package/src/filiale/ganquan/pc/PaperList.vue +7 -7
  458. package/src/filiale/ganquan/pc/PaperVisitMain.vue +3 -3
  459. package/src/filiale/ganquan/pc/SelectCheckPlan.vue +3 -3
  460. package/src/filiale/ganquan/pc/checkUserList.vue +9 -9
  461. package/src/filiale/gehua/android/CurrentCreate.vue +6 -6
  462. package/src/filiale/gehua/pc/PaperList.vue +6 -6
  463. package/src/filiale/gehua/pc/checkUserList.vue +10 -10
  464. package/src/filiale/guangxi/android/AreaPlan.vue +2 -2
  465. package/src/filiale/guangxi/android/CurrentCreate.vue +5 -5
  466. package/src/filiale/guangxi/pc/CheckPlanAreaList.vue +5 -5
  467. package/src/filiale/guangxi/pc/DefectListNew.vue +7 -7
  468. package/src/filiale/guangxi/pc/DefectPaperNew.vue +12 -12
  469. package/src/filiale/hanzhong/android/PaperFeedback.vue +10 -10
  470. package/src/filiale/hanzhong/android/SafecheckDevices.vue +1 -1
  471. package/src/filiale/hanzhong/android/SafecheckOrderV.vue +5 -5
  472. package/src/filiale/hanzhong/android/SafecheckUserInfo.vue +5 -5
  473. package/src/filiale/hanzhong/pc/CheckHiddenDanger.vue +713 -703
  474. package/src/filiale/hanzhong/pc/CheckNumberStatistics.vue +2 -2
  475. package/src/filiale/hanzhong/pc/CheckSafeDetail.vue +573 -563
  476. package/src/filiale/hanzhong/pc/CheckSafeStatus.vue +508 -499
  477. package/src/filiale/hanzhong/pc/CheckSearchUser.vue +24 -11
  478. package/src/filiale/hanzhong/pc/CheckUserList.vue +39 -20
  479. package/src/filiale/hanzhong/pc/CheckerSafeDetail.vue +595 -586
  480. package/src/filiale/hanzhong/pc/NewCheckpaper.vue +4 -4
  481. package/src/filiale/hanzhong/pc/PaperList.vue +7 -7
  482. package/src/filiale/huaran/android/SafecheckOrderV.vue +2803 -0
  483. package/src/filiale/huaran/android.js +12 -0
  484. package/src/filiale/huaran/pc/CheckBook.vue +313 -0
  485. package/src/filiale/huaran/pc/CheckBookAll.vue +69 -0
  486. package/src/filiale/huaran/pc/CheckBookArea.vue +170 -0
  487. package/src/filiale/huaran/pc/CheckBookCompany.vue +166 -0
  488. package/src/filiale/huaran/pc/CheckBookDetails.vue +196 -0
  489. package/src/filiale/huaran/pc/CheckBookEntry.vue +61 -0
  490. package/src/filiale/huaran/pc/CheckBookList.vue +386 -0
  491. package/src/filiale/huaran/pc/CheckBookSearchArea.vue +564 -0
  492. package/src/filiale/huaran/pc/CheckBookSearchUnit.vue +229 -0
  493. package/src/filiale/huaran/pc/CheckBookSearchUser.vue +604 -0
  494. package/src/filiale/huaran/pc/CheckBookUser.vue +112 -0
  495. package/src/filiale/huaran/pc/PaperList.vue +822 -0
  496. package/src/filiale/huaran/pc/PlanManage.vue +887 -0
  497. package/src/filiale/huaran/pc/checkPlanList.vue +419 -0
  498. package/src/filiale/huaran/pc/checkUserList.vue +867 -0
  499. package/src/filiale/huaran/pc.js +27 -0
  500. package/src/filiale/huatong/android/AndroidDefectDeal.vue +1 -1
  501. package/src/filiale/huatong/android/CurrentCreate.vue +6 -6
  502. package/src/filiale/huatong/android/PaperFeedback.vue +9 -9
  503. package/src/filiale/huatong/android/SafecheckOrderV.vue +3 -3
  504. package/src/filiale/huatong/android/SafecheckUserInfo.vue +4 -4
  505. package/src/filiale/huatong/pc/PaperDefectMain.vue +7 -7
  506. package/src/filiale/huatong/pc/PaperList.vue +8 -8
  507. package/src/filiale/huayin/android/AreaPlan.vue +2 -2
  508. package/src/filiale/huayin/android/PaperFeedback.vue +9 -9
  509. package/src/filiale/huayin/android/SafecheckOrderV.vue +4 -4
  510. package/src/filiale/huayin/pc/NewCheckpaper.vue +1 -1
  511. package/src/filiale/huayin/pc/PaperList.vue +7 -7
  512. package/src/filiale/jiaocheng/android/AddPlanItem.vue +6 -6
  513. package/src/filiale/jiaocheng/android/PaperFeedback.vue +6 -6
  514. package/src/filiale/jiaocheng/android/SafecheckUserInfo.vue +4 -4
  515. package/src/filiale/jiaocheng/pc/CheckSearchUser.vue +11 -11
  516. package/src/filiale/jiaocheng/pc/DefectListNew.vue +7 -7
  517. package/src/filiale/jiaocheng/pc/NewCheckpaper.vue +2 -2
  518. package/src/filiale/jiaxian/android/AddPlanItem.vue +447 -0
  519. package/src/filiale/jiaxian/android/PhoneUpUserinfo.vue +1229 -0
  520. package/src/filiale/jiaxian/android/SafecheckDevices.vue +1298 -0
  521. package/src/filiale/jiaxian/android/SafecheckOrderV.vue +2807 -0
  522. package/src/filiale/jiaxian/android/SafecheckUserInfo.vue +784 -0
  523. package/src/filiale/jiaxian/android.js +14 -0
  524. package/src/filiale/jiaxian/pc.js +12 -0
  525. package/src/filiale/jinbin/android/AndroidDefectDeal.vue +1 -1
  526. package/src/filiale/jinbin/android/DailyworkloadQuery.vue +1 -1
  527. package/src/filiale/jinbin/android/PhoneUpUserinfo.vue +9 -9
  528. package/src/filiale/jinbin/pc/CheckPlanAreaList.vue +5 -5
  529. package/src/filiale/jinbin/pc/DefectListWeixiu.vue +6 -6
  530. package/src/filiale/jingyang/android/AddPlanItem.vue +458 -0
  531. package/src/filiale/jingyang/android/CurrentCreate.vue +1080 -0
  532. package/src/filiale/jingyang/android/PaperFeedback.vue +10 -10
  533. package/src/filiale/jingyang/android/PhoneUpUserinfo.vue +12 -12
  534. package/src/filiale/jingyang/android/SafecheckOrderV.vue +2734 -0
  535. package/src/filiale/jingyang/android/SafecheckUserInfo.vue +781 -0
  536. package/src/filiale/jingyang/android.js +4 -0
  537. package/src/filiale/jingyang/pc/CheckSearchUser.vue +11 -11
  538. package/src/filiale/jingyang/pc/InfoModifyModal.vue +2 -2
  539. package/src/filiale/jingyang/pc/PaperList.vue +8 -8
  540. package/src/filiale/jingyang/pc/ReportCheckItemList.vue +543 -0
  541. package/src/filiale/jingyang/pc/UserInfoAuditNew.vue +6 -6
  542. package/src/filiale/jingyang/pc.js +1 -0
  543. package/src/filiale/kelai/android/AddPlanItem.vue +6 -6
  544. package/src/filiale/kelai/android/AndroidDefectDeal.vue +5 -5
  545. package/src/filiale/kelai/android/CurrentCreate.vue +5 -5
  546. package/src/filiale/kelai/android/PaperFeedback.vue +9 -9
  547. package/src/filiale/kelai/android/PhoneUpUserinfo.vue +10 -10
  548. package/src/filiale/kelai/android/RelieveRestrict.vue +3 -3
  549. package/src/filiale/kelai/android/SafecheckDevices.vue +1 -1
  550. package/src/filiale/kelai/android/SafecheckOrderV.vue +4 -4
  551. package/src/filiale/kelai/android/SafecheckUserInfo.vue +5 -5
  552. package/src/filiale/kelai/android/SafecheckUserInfo1.vue +4 -4
  553. package/src/filiale/kelai/pc/CheckPlanAreaList.vue +476 -488
  554. package/src/filiale/kelai/pc/CheckSearchUser.vue +11 -11
  555. package/src/filiale/kelai/pc/DefectListNew.vue +8 -8
  556. package/src/filiale/kelai/pc/DefectPaperNew.vue +13 -13
  557. package/src/filiale/kelai/pc/FaultLimitGas/FaultLimitGasList.vue +7 -7
  558. package/src/filiale/kelai/pc/FaultLimitGas/FaultLimitGasPaper.vue +9 -9
  559. package/src/filiale/kelai/pc/NewCheckpaper.vue +4 -4
  560. package/src/filiale/kelai/pc/PaperList.vue +7 -7
  561. package/src/filiale/kelai/pc/UserInfoAudit.vue +6 -6
  562. package/src/filiale/kelai/pc/checkUserList.vue +9 -9
  563. package/src/filiale/liaoyuan/android/AddPlanItem.vue +6 -6
  564. package/src/filiale/liaoyuan/android/CurrentCreate.vue +1066 -0
  565. package/src/filiale/liaoyuan/android/SafecheckOrderV.vue +4 -4
  566. package/src/filiale/liaoyuan/android/SafecheckUserInfo.vue +4 -4
  567. package/src/filiale/liaoyuan/android.js +1 -0
  568. package/src/filiale/liaoyuan/pc/CheckSearchUser.vue +6 -6
  569. package/src/filiale/liaoyuan/pc/DefectListWeixiu.vue +6 -6
  570. package/src/filiale/liaoyuan/pc/DefectPaperWeiXiu.vue +11 -11
  571. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +2 -2
  572. package/src/filiale/liaoyuan/pc/PaperList.vue +4 -4
  573. package/src/filiale/liaoyuan/pc/checkPlanList.vue +373 -0
  574. package/src/filiale/liaoyuan/pc.js +2 -1
  575. package/src/filiale/lixian/android/CurrentCreate.vue +5 -5
  576. package/src/filiale/lixian/android/SafecheckOrderV.vue +2 -2
  577. package/src/filiale/lixian/android/SafecheckUserInfo.vue +4 -4
  578. package/src/filiale/lixian/pc/CheckPlanAreaList.vue +5 -5
  579. package/src/filiale/lixian/pc/CheckSearchUser.vue +9 -9
  580. package/src/filiale/lixian/pc/NewCheckpaper.vue +2 -2
  581. package/src/filiale/lixian/pc/PaperChazhiMain.vue +5 -5
  582. package/src/filiale/lixian/pc/PaperDefectMain.vue +5 -5
  583. package/src/filiale/lixian/pc/PaperList.vue +8 -8
  584. package/src/filiale/lixian/pc/checkPlanList.vue +6 -6
  585. package/src/filiale/lixian/pc/checkUserList.vue +9 -9
  586. package/src/filiale/minsheng/android/AreaPlan.vue +2 -2
  587. package/src/filiale/minsheng/android/CurrentCreate.vue +6 -6
  588. package/src/filiale/minsheng/android/PhoneUpUserinfo.vue +11 -11
  589. package/src/filiale/minsheng/android/SafecheckUserInfo.vue +4 -4
  590. package/src/filiale/minsheng/android/SwitchValve.vue +7 -7
  591. package/src/filiale/minsheng/pc/CheckSearchUser.vue +11 -11
  592. package/src/filiale/minsheng/pc/DefectListNew.vue +7 -7
  593. package/src/filiale/minsheng/pc/checkUserList.vue +9 -9
  594. package/src/filiale/pingxiang/android/PaperFeedback.vue +10 -10
  595. package/src/filiale/pingxiang/android/SafecheckOrderV.vue +2 -2
  596. package/src/filiale/pingxiang/android/SafecheckUserInfo.vue +4 -4
  597. package/src/filiale/pingxiang/pc/DefectListNew.vue +7 -7
  598. package/src/filiale/pingxiang/pc/DefectPaperNew.vue +12 -12
  599. package/src/filiale/pingxiang/pc/NewCheckpaper.vue +1 -1
  600. package/src/filiale/pingxiang/pc/PaperList.vue +7 -7
  601. package/src/filiale/qianneng/android/AddPlanItem.vue +5 -5
  602. package/src/filiale/qianneng/android/AreaPlan.vue +2 -2
  603. package/src/filiale/qianneng/android/CurrentCreate.vue +5 -5
  604. package/src/filiale/qianneng/android/PaperFeedback.vue +9 -9
  605. package/src/filiale/qianneng/android/PhoneUpUserinfo.vue +11 -11
  606. package/src/filiale/qianneng/android/SafecheckOrderV.vue +4 -4
  607. package/src/filiale/qianneng/android/SafecheckUserInfo.vue +5 -5
  608. package/src/filiale/qianneng/android/SwitchValve.vue +4 -4
  609. package/src/filiale/qianneng/pc/DefectListNew.vue +7 -7
  610. package/src/filiale/qianneng/pc/DefectPaperNew.vue +13 -13
  611. package/src/filiale/qianneng/pc/NewCheckpaper.vue +2 -2
  612. package/src/filiale/qianneng/pc/NoCheckplanSafecheck.vue +4 -4
  613. package/src/filiale/qianneng/pc/PaperList.vue +777 -741
  614. package/src/filiale/qianneng/pc/PlanManage.vue +7 -7
  615. package/src/filiale/qianneng/pc/UserInfoAudit.vue +6 -6
  616. package/src/filiale/qianneng/pc/checkPlanList.vue +9 -9
  617. package/src/filiale/qianneng/pc/checkUserList.vue +13 -13
  618. package/src/filiale/qingjian/android/PhoneUpUserinfo.vue +18 -16
  619. package/src/filiale/qingjian/android/SafecheckDevices.vue +1 -1
  620. package/src/filiale/qingjian/android/SafecheckOrderV.vue +2844 -2778
  621. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +9 -5
  622. package/src/filiale/qingjian/pc/NewCheckpaper.vue +4 -4
  623. package/src/filiale/qingjian/pc/PaperDefectMain.vue +7 -7
  624. package/src/filiale/qingtongxia/android/AddPlanItem.vue +450 -0
  625. package/src/filiale/qingtongxia/android/CurrentCreate.vue +1053 -0
  626. package/src/filiale/qingtongxia/android/PhoneUpUserinfo.vue +1230 -0
  627. package/src/filiale/qingtongxia/android/SafecheckOrderV.vue +3 -3
  628. package/src/filiale/qingtongxia/android/SafecheckUserInfo.vue +782 -0
  629. package/src/filiale/qingtongxia/android.js +4 -0
  630. package/src/filiale/qingtongxia/pc/DefectListNew.vue +7 -7
  631. package/src/filiale/qingtongxia/pc/NewCheckpaper.vue +4 -4
  632. package/src/filiale/qingtongxia/pc/PaperDefectMain.vue +7 -7
  633. package/src/filiale/rizhao/android/AddPlanItem.vue +6 -6
  634. package/src/filiale/rizhao/android/PaperFeedback.vue +9 -9
  635. package/src/filiale/rizhao/android/SafecheckOrderV.vue +2 -2
  636. package/src/filiale/rizhao/android/SafecheckUserInfo.vue +4 -4
  637. package/src/filiale/rizhao/pc/DefectList.vue +6 -6
  638. package/src/filiale/rizhao/pc/NewCheckpaper.vue +1 -1
  639. package/src/filiale/rizhao/pc/PaperList.vue +7 -7
  640. package/src/filiale/rongchuang/android/PaperFeedback.vue +9 -9
  641. package/src/filiale/rongchuang/android/SafecheckDevices.vue +1400 -0
  642. package/src/filiale/rongchuang/android/SafecheckOrderV.vue +2696 -2455
  643. package/src/filiale/rongchuang/android/checkpapermsg.vue +1 -1
  644. package/src/filiale/rongchuang/android.js +1 -0
  645. package/src/filiale/rongchuang/pc/NewCheckpaper.vue +1342 -1290
  646. package/src/filiale/rongchuang/pc/PaperList.vue +812 -0
  647. package/src/filiale/rongchuang/pc/checkUserList.vue +8 -8
  648. package/src/filiale/rongchuang/pc.js +1 -0
  649. package/src/filiale/ruihua/android/SafecheckOrderV.vue +2747 -0
  650. package/src/filiale/ruihua/android/SafecheckUserInfo.vue +804 -0
  651. package/src/filiale/ruihua/android.js +11 -0
  652. package/src/filiale/shanggao/android/PaperFeedback.vue +9 -9
  653. package/src/filiale/shanggao/android/SafecheckOrderV.vue +2 -2
  654. package/src/filiale/shanxian/android/AddPlanItem.vue +447 -0
  655. package/src/filiale/shanxian/android/AndroidDefectDeal.vue +6 -6
  656. package/src/filiale/shanxian/android/CurrentCreate_new.vue +6 -6
  657. package/src/filiale/shanxian/android/PaperFeedback.vue +9 -9
  658. package/src/filiale/shanxian/android/PhoneUpUserinfo.vue +9 -9
  659. package/src/filiale/shanxian/android/SafecheckOrderV.vue +4 -4
  660. package/src/filiale/shanxian/android/SafecheckUserInfo.vue +4 -4
  661. package/src/filiale/shanxian/android.js +1 -0
  662. package/src/filiale/shanxian/pc/CheckDetail.vue +7 -7
  663. package/src/filiale/shanxian/pc/CheckSearchUser.vue +11 -11
  664. package/src/filiale/shanxian/pc/DefectPaperNew.vue +14 -14
  665. package/src/filiale/shanxian/pc/HiddenSituation.vue +1 -1
  666. package/src/filiale/shanxian/pc/NewCheckpaper.vue +1 -1
  667. package/src/filiale/shanxian/pc/PaperList.vue +785 -0
  668. package/src/filiale/shanxian/pc/SelectCheckPlan.vue +3 -3
  669. package/src/filiale/shanxian/pc/checkUserList.vue +13 -13
  670. package/src/filiale/shanxian/pc.js +2 -2
  671. package/src/filiale/shaoguan/pc/PaperList.vue +6 -6
  672. package/src/filiale/shexian/android/AddPlanItem.vue +6 -6
  673. package/src/filiale/shexian/android/AndroidDefectDeal.vue +3 -3
  674. package/src/filiale/shexian/android/AreaPlan.vue +2 -2
  675. package/src/filiale/shexian/android/DailyworkloadQuery.vue +1 -1
  676. package/src/filiale/shexian/android/PaperFeedback.vue +9 -9
  677. package/src/filiale/shexian/android/PhoneUpUserinfo.vue +9 -9
  678. package/src/filiale/shexian/android/SafecheckOrderV.vue +2 -2
  679. package/src/filiale/shexian/pc/DefectListNew.vue +7 -7
  680. package/src/filiale/shexian/pc/DefectPaperNew.vue +13 -13
  681. package/src/filiale/shexian/pc/NewCheckpaper.vue +2 -2
  682. package/src/filiale/shexian/pc/PaperDefectMain.vue +7 -7
  683. package/src/filiale/shexian/pc/PaperList.vue +822 -0
  684. package/src/filiale/shexian/pc.js +1 -0
  685. package/src/filiale/shimen/android/CurrentCreate.vue +6 -6
  686. package/src/filiale/shimen/android/PaperFeedback.vue +9 -9
  687. package/src/filiale/shimen/android/PhoneSellInfo.vue +1 -1
  688. package/src/filiale/shimen/android/SafecheckUserInfo.vue +4 -4
  689. package/src/filiale/shimen/pc/CheckPlanAreaList.vue +5 -5
  690. package/src/filiale/shimen/pc/CheckSearchUser.vue +9 -9
  691. package/src/filiale/shimen/pc/DefectList.vue +6 -6
  692. package/src/filiale/shimen/pc/NewCheckpaper.vue +1 -1
  693. package/src/filiale/shimen/pc/PaperDefectMain.vue +5 -5
  694. package/src/filiale/shimen/pc/PaperList.vue +5 -5
  695. package/src/filiale/shiquan/android/AreaPlan.vue +2 -2
  696. package/src/filiale/shiquan/android/CurrentCreate.vue +6 -6
  697. package/src/filiale/shiquan/android/SafecheckDevices.vue +1 -1
  698. package/src/filiale/shiquan/pc/checkUserList.vue +9 -9
  699. package/src/filiale/siyang/android/AddPlanItem.vue +450 -0
  700. package/src/filiale/siyang/android/AppCheckPlan.vue +246 -0
  701. package/src/filiale/siyang/android/CurrentCreate.vue +1051 -0
  702. package/src/filiale/siyang/android/PhoneRecordInfo.vue +214 -0
  703. package/src/filiale/siyang/android/SafecheckOrderV.vue +2796 -0
  704. package/src/filiale/siyang/android/SafecheckUserInfo.vue +789 -0
  705. package/src/filiale/siyang/android.js +15 -0
  706. package/src/filiale/siyang/pc/CheckBookList.vue +396 -0
  707. package/src/filiale/siyang/pc/CheckBookSearchArea.vue +667 -0
  708. package/src/filiale/siyang/pc/CheckPlanAreaList.vue +512 -0
  709. package/src/filiale/siyang/pc/CheckSearchUser.vue +1035 -0
  710. package/src/filiale/siyang/pc/HiddenSituation.vue +167 -0
  711. package/src/filiale/siyang/pc/NewCheckpaper.vue +1938 -0
  712. package/src/filiale/siyang/pc/PaperDefectMain.vue +864 -0
  713. package/src/filiale/siyang/pc/PaperList.vue +834 -0
  714. package/src/filiale/siyang/pc/PlanManage.vue +839 -0
  715. package/src/filiale/siyang/pc/checkPlanList.vue +367 -0
  716. package/src/filiale/siyang/pc/checkUserList.vue +790 -0
  717. package/src/filiale/siyang/pc.js +22 -0
  718. package/src/filiale/tianke/android/AddPlanItem.vue +6 -6
  719. package/src/filiale/tianke/android/CurrentCreate.vue +5 -5
  720. package/src/filiale/tianke/android/SafecheckOrderV.vue +2 -2
  721. package/src/filiale/tianke/android/SafecheckUserInfo.vue +4 -4
  722. package/src/filiale/tianke/pc/DefectListNew.vue +7 -7
  723. package/src/filiale/tianke/pc/PaperDefectMain.vue +7 -7
  724. package/src/filiale/tianke/pc/checkScreen.vue +786 -781
  725. package/src/filiale/tianke/pc/cq.jpg +0 -0
  726. package/src/filiale/tianke/pc/qy.jpg +0 -0
  727. package/src/filiale/tongchuan/android/AddPlanItem.vue +6 -6
  728. package/src/filiale/tongchuan/android/AndroidDefectDeal.vue +3 -3
  729. package/src/filiale/tongchuan/android/CurrentCreate.vue +6 -6
  730. package/src/filiale/tongchuan/android/PaperFeedback.vue +7 -7
  731. package/src/filiale/tongchuan/android/PhoneRecordInfo.vue +1 -1
  732. package/src/filiale/tongchuan/android/PhoneSellInfo.vue +1 -1
  733. package/src/filiale/tongchuan/android/PhoneUpDetail.vue +3 -3
  734. package/src/filiale/tongchuan/android/PhoneUpUserinfo.vue +1323 -1265
  735. package/src/filiale/tongchuan/android/SafecheckDevices.vue +2 -2
  736. package/src/filiale/tongchuan/android/SafecheckOrderV.vue +10 -11
  737. package/src/filiale/tongchuan/android/SafecheckUserInfo.vue +5 -5
  738. package/src/filiale/tongchuan/android/Select.vue +421 -0
  739. package/src/filiale/tongchuan/android/SwitchValve.vue +4 -4
  740. package/src/filiale/tongchuan/android/UploadPage.vue +1 -1
  741. package/src/filiale/tongchuan/android.js +1 -0
  742. package/src/filiale/tongchuan/pc/CheckBookArea.vue +1 -1
  743. package/src/filiale/tongchuan/pc/CheckBookDetails.vue +2 -2
  744. package/src/filiale/tongchuan/pc/CheckBookList.vue +5 -5
  745. package/src/filiale/tongchuan/pc/CheckDetail.vue +7 -7
  746. package/src/filiale/tongchuan/pc/CheckPlanAreaList.vue +6 -6
  747. package/src/filiale/tongchuan/pc/CheckPlanCountChartArea.vue +5 -3
  748. package/src/filiale/tongchuan/pc/CheckPlanUserList.vue +4 -4
  749. package/src/filiale/tongchuan/pc/CheckSearchUser.vue +11 -11
  750. package/src/filiale/tongchuan/pc/DefectListWeixiu.vue +6 -6
  751. package/src/filiale/tongchuan/pc/DefectPaper.vue +7 -7
  752. package/src/filiale/tongchuan/pc/DefectPaperWeiXiu.vue +13 -9
  753. package/src/filiale/tongchuan/pc/HiddenSituation.vue +4 -2
  754. package/src/filiale/tongchuan/pc/NewCheckpaper.vue +15 -24
  755. package/src/filiale/tongchuan/pc/NoCheckplanSafecheck.vue +4 -4
  756. package/src/filiale/tongchuan/pc/PaperDefectMain.vue +1060 -1095
  757. package/src/filiale/tongchuan/pc/PaperList.vue +8 -8
  758. package/src/filiale/tongchuan/pc/PlanManage.vue +7 -7
  759. package/src/filiale/tongchuan/pc/SelectCheckPlan.vue +8 -5
  760. package/src/filiale/tongchuan/pc/checkUserList.vue +639 -609
  761. package/src/filiale/tongchuan/pc/repairScreen.vue +1 -1
  762. package/src/filiale/tongchuan/utils/EventListener.js +29 -0
  763. package/src/filiale/tongchuan/utils/coerceBoolean.js +7 -0
  764. package/src/filiale/weinan/android/AddPlanItem.vue +6 -6
  765. package/src/filiale/weinan/android/AndroidDefectDeal.vue +1 -1
  766. package/src/filiale/weinan/android/AreaPlan.vue +2 -2
  767. package/src/filiale/weinan/android/CurrentCreate.vue +6 -6
  768. package/src/filiale/weinan/android/CurrentCreateOnline.vue +11 -11
  769. package/src/filiale/weinan/android/PaperFeedback.vue +17 -17
  770. package/src/filiale/weinan/android/PhoneUpDetail.vue +8 -8
  771. package/src/filiale/weinan/android/PhoneUpUserinfo.vue +8 -8
  772. package/src/filiale/weinan/android/SafePlanItem.vue +6 -6
  773. package/src/filiale/weinan/android/SafecheckDevices.vue +1086 -1025
  774. package/src/filiale/weinan/android/SafecheckOrderV.vue +98 -35
  775. package/src/filiale/weinan/android/SafecheckUserInfo.vue +11 -6
  776. package/src/filiale/weinan/pc/CheckBook.vue +4 -4
  777. package/src/filiale/weinan/pc/CheckBookArea.vue +1 -1
  778. package/src/filiale/weinan/pc/CheckBookCompany.vue +1 -1
  779. package/src/filiale/weinan/pc/CheckBookCompanyUser.vue +1 -1
  780. package/src/filiale/weinan/pc/CheckBookDetails.vue +1 -1
  781. package/src/filiale/weinan/pc/CheckBookList.vue +5 -5
  782. package/src/filiale/weinan/pc/CheckBookSearchUser.vue +6 -6
  783. package/src/filiale/weinan/pc/CheckBookSearchUserList.vue +735 -722
  784. package/src/filiale/weinan/pc/CheckBookUser.vue +3 -3
  785. package/src/filiale/weinan/pc/CheckDetail.vue +18 -18
  786. package/src/filiale/weinan/pc/CheckDetailOutHelp.vue +7 -7
  787. package/src/filiale/weinan/pc/CheckNoDetail.vue +7 -7
  788. package/src/filiale/weinan/pc/CheckPlanAreaList.vue +2 -2
  789. package/src/filiale/weinan/pc/CheckPlanUserList.vue +4 -4
  790. package/src/filiale/weinan/pc/CheckSearchUser.vue +1078 -0
  791. package/src/filiale/weinan/pc/DefectListNew.vue +617 -0
  792. package/src/filiale/weinan/pc/DefectMainNew.vue +1 -1
  793. package/src/filiale/weinan/pc/DefectPaperNew.vue +49 -12
  794. package/src/filiale/weinan/pc/DeviceChange.vue +1088 -0
  795. package/src/filiale/weinan/pc/HiddenSituation.vue +1 -1
  796. package/src/filiale/weinan/pc/NewCheckpaper.vue +3 -3
  797. package/src/filiale/weinan/pc/PaperDefectMain.vue +6 -6
  798. package/src/filiale/weinan/pc/PaperList.vue +8 -8
  799. package/src/filiale/weinan/pc/PersonTrack.vue +2 -2
  800. package/src/filiale/weinan/pc/PlanManage.vue +8 -8
  801. package/src/filiale/weinan/pc/SelectCheckNoPlan.vue +5 -5
  802. package/src/filiale/weinan/pc/SelectCheckPlan.vue +4 -4
  803. package/src/filiale/weinan/pc/SelectCheckPlanOutHelp.vue +5 -5
  804. package/src/filiale/weinan/pc/checkPlanList.vue +7 -7
  805. package/src/filiale/weinan/pc/checkScreen.vue +3 -3
  806. package/src/filiale/weinan/pc/checkUserList.vue +712 -776
  807. package/src/filiale/weinan/pc.js +3 -0
  808. package/src/filiale/weinanct/android/SafecheckOrderV.vue +2 -2
  809. package/src/filiale/weinanct/pc/NewCheckpaper.vue +1 -1
  810. package/src/filiale/weinanct/pc/PaperList.vue +7 -7
  811. package/src/filiale/wensu/android/AddPlanItem.vue +6 -6
  812. package/src/filiale/wensu/android/AndroidDefectDeal.vue +2 -2
  813. package/src/filiale/wensu/android/AndroidDefectDealItems.vue +1 -1
  814. package/src/filiale/wensu/android/CurrentCreate.vue +6 -6
  815. package/src/filiale/wensu/android/PaperFeedback.vue +5 -5
  816. package/src/filiale/wensu/android/PhoneUpUserinfo.vue +1 -1
  817. package/src/filiale/wensu/android/SafecheckOrderV.vue +2 -2
  818. package/src/filiale/wensu/android/SafecheckUserInfo.vue +5 -5
  819. package/src/filiale/wensu/pc/CheckDetail.vue +7 -7
  820. package/src/filiale/wensu/pc/CheckSearchUser.vue +1238 -1167
  821. package/src/filiale/wensu/pc/DefectListNew.vue +7 -7
  822. package/src/filiale/wensu/pc/DefectPaperNew.vue +30 -24
  823. package/src/filiale/wensu/pc/NewCheckpaper.vue +4 -4
  824. package/src/filiale/wensu/pc/PlanManage.vue +831 -0
  825. package/src/filiale/wensu/pc/PrintMaterialBill.vue +28 -11
  826. package/src/filiale/wensu/pc/RoleSelector.vue +2 -2
  827. package/src/filiale/wensu/pc/SelectCheckPlan.vue +342 -302
  828. package/src/filiale/wensu/pc/checkUserList.vue +21 -17
  829. package/src/filiale/wensu/pc.js +1 -0
  830. package/src/filiale/wenxi/android/AddPlanItem.vue +6 -6
  831. package/src/filiale/wenxi/android/AndroidDefectDealHY.vue +1 -1
  832. package/src/filiale/wenxi/android/AndroidDefectDealWX.vue +1 -1
  833. package/src/filiale/wenxi/android/AreaPlan.vue +2 -2
  834. package/src/filiale/wenxi/android/CurrentCreate.vue +6 -6
  835. package/src/filiale/wenxi/android/DailyworkloadQuery.vue +1 -1
  836. package/src/filiale/wenxi/android/PaperFeedback.vue +15 -15
  837. package/src/filiale/wenxi/android/PhoneUpUserinfo.vue +10 -10
  838. package/src/filiale/wenxi/android/SafecheckOrderV.vue +17 -3
  839. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +673 -651
  840. package/src/filiale/wenxi/android/UploadPage.vue +1 -1
  841. package/src/filiale/wenxi/pc/CheckPlanAreaList.vue +5 -5
  842. package/src/filiale/wenxi/pc/CheckPlanUserList.vue +4 -4
  843. package/src/filiale/wenxi/pc/CheckSearchUser.vue +11 -11
  844. package/src/filiale/wenxi/pc/DefectList.vue +7 -7
  845. package/src/filiale/wenxi/pc/DefectPaper.vue +7 -7
  846. package/src/filiale/wenxi/pc/NewCheckpaper.vue +5 -5
  847. package/src/filiale/wenxi/pc/PaperDefectMain.vue +6 -6
  848. package/src/filiale/wenxi/pc/PaperList.vue +11 -11
  849. package/src/filiale/wenxi/pc/checkPlanList.vue +10 -10
  850. package/src/filiale/wenxi/pc/checkUserList.vue +9 -9
  851. package/src/filiale/wuan/android/AreaPlan.vue +2 -2
  852. package/src/filiale/wuan/android/CurrentCreate.vue +5 -5
  853. package/src/filiale/wuan/android/CurrentCreateSheBei.vue +5 -5
  854. package/src/filiale/wuan/android/PaperFeedback.vue +9 -9
  855. package/src/filiale/wuan/android/SafecheckOrderV.vue +7 -3
  856. package/src/filiale/wuan/android/SafecheckUserInfo.vue +14 -9
  857. package/src/filiale/wuan/pc/DefectListWeixiu.vue +7 -7
  858. package/src/filiale/wuan/pc/DefectPaperWeiXiu.vue +7 -7
  859. package/src/filiale/wuan/pc/NewCheckpaper.vue +1 -1
  860. package/src/filiale/wuan/pc/PaperList.vue +5 -5
  861. package/src/filiale/wuhai/android/AreaPlan.vue +2 -2
  862. package/src/filiale/wuhai/android/CurrentCreate.vue +5 -5
  863. package/src/filiale/wuhai/android/PaperFeedback.vue +9 -9
  864. package/src/filiale/wuhai/android/PhoneUpUserinfo.vue +8 -8
  865. package/src/filiale/wuhai/android/SafecheckOrderV.vue +2456 -2428
  866. package/src/filiale/wuhai/android/SafecheckUserInfo.vue +4 -4
  867. package/src/filiale/wuhai/pc/CheckSearchUser.vue +10 -10
  868. package/src/filiale/wuhai/pc/NewCheckpaper.vue +27 -25
  869. package/src/filiale/wuhai/pc/PaperList.vue +785 -0
  870. package/src/filiale/wuhai/pc/checkUserList.vue +8 -8
  871. package/src/filiale/wuhai/pc.js +1 -0
  872. package/src/filiale/xilan/android/AddPlanItem.vue +457 -0
  873. package/src/filiale/xilan/android/CurrentCreate.vue +1063 -0
  874. package/src/filiale/xilan/android.js +11 -0
  875. package/src/filiale/xilan/pc/checkUserList.vue +772 -0
  876. package/src/filiale/xilan/pc.js +12 -0
  877. package/src/filiale/xinkang/android/AndroidDefectDeal.vue +1 -1
  878. package/src/filiale/xinkang/android/CurrentCreate.vue +5 -5
  879. package/src/filiale/xinkang/android/OrderBacklog.vue +5 -5
  880. package/src/filiale/xinkang/android/SafecheckOrderV.vue +2 -2
  881. package/src/filiale/xinkang/android/SafecheckUserInfo.vue +4 -4
  882. package/src/filiale/xinkang/pc/CheckPlanAreaList.vue +5 -5
  883. package/src/filiale/xinkang/pc/CheckPlanUserList.vue +4 -4
  884. package/src/filiale/xinkang/pc/CheckSearchUser.vue +10 -10
  885. package/src/filiale/xinkang/pc/DefectListWeixiu.vue +6 -6
  886. package/src/filiale/xinkang/pc/DefectPaperWeiXiu.vue +7 -7
  887. package/src/filiale/xinkang/pc/NewCheckpaper.vue +2 -2
  888. package/src/filiale/xinkang/pc/PaperDefectMain.vue +5 -5
  889. package/src/filiale/xinkang/pc/PaperList.vue +7 -7
  890. package/src/filiale/xinkang/pc/checkUserList.vue +8 -8
  891. package/src/filiale/yangchunboneng/android/AddPlanItem.vue +52 -7
  892. package/src/filiale/yangchunboneng/android/AndiroidSecurityAudit.vue +3 -3
  893. package/src/filiale/yangchunboneng/android/CurrentCreate.vue +65 -23
  894. package/src/filiale/yangchunboneng/android/DailyworkloadQuery.vue +12 -17
  895. package/src/filiale/yangchunboneng/android/DailyworkloadQueryNew.vue +3 -3
  896. package/src/filiale/yangchunboneng/android/NewCheckpaperAndroid.vue +21 -21
  897. package/src/filiale/yangchunboneng/android/PaperFeedback.vue +13 -13
  898. package/src/filiale/yangchunboneng/android/PhoneUpUserinfo.vue +1235 -0
  899. package/src/filiale/yangchunboneng/android/SafecheckDevices.vue +17 -13
  900. package/src/filiale/yangchunboneng/android/SafecheckOrderV.vue +2865 -2797
  901. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +36 -18
  902. package/src/filiale/yangchunboneng/android/safeHistoryLook.vue +12 -16
  903. package/src/filiale/yangchunboneng/android.js +1 -0
  904. package/src/filiale/yangchunboneng/pc/AddToCheckBook.vue +5 -5
  905. package/src/filiale/yangchunboneng/pc/CheckBook.vue +4 -4
  906. package/src/filiale/yangchunboneng/pc/CheckBookDetails.vue +2 -2
  907. package/src/filiale/yangchunboneng/pc/CheckBookList.vue +9 -9
  908. package/src/filiale/yangchunboneng/pc/CheckBookSearchUser.vue +93 -37
  909. package/src/filiale/yangchunboneng/pc/CheckBookUser.vue +269 -198
  910. package/src/filiale/yangchunboneng/pc/CheckPlanAreaList.vue +101 -35
  911. package/src/filiale/yangchunboneng/pc/CheckSearchUser.vue +1192 -1018
  912. package/src/filiale/yangchunboneng/pc/DefectListNew.vue +7 -7
  913. package/src/filiale/yangchunboneng/pc/DefectPaperNew.vue +67 -16
  914. package/src/filiale/yangchunboneng/pc/NewCheckpaper.vue +2 -2
  915. package/src/filiale/yangchunboneng/pc/PaperDefectMain.vue +1046 -849
  916. package/src/filiale/yangchunboneng/pc/PaperList.vue +54 -8
  917. package/src/filiale/yongzhou/android/PaperFeedback.vue +11 -11
  918. package/src/filiale/yongzhou/android/PhoneUpUserinfo.vue +11 -11
  919. package/src/filiale/yongzhou/android/SafecheckDevices.vue +1 -1
  920. package/src/filiale/yongzhou/android/SafecheckOrderV.vue +2774 -2809
  921. package/src/filiale/yongzhou/android/SafecheckUserInfo.vue +5 -5
  922. package/src/filiale/yongzhou/pc/CheckPlan.vue +59 -0
  923. package/src/filiale/yongzhou/pc/CheckSearchUser.vue +1092 -0
  924. package/src/filiale/yongzhou/pc/DefectPaperNew.vue +1105 -0
  925. package/src/filiale/yongzhou/pc/NoCheckplanSafecheck.vue +416 -111
  926. package/src/filiale/yongzhou/pc/PaperDefectMain.vue +872 -0
  927. package/src/filiale/yongzhou/pc/PaperList.vue +8 -8
  928. package/src/filiale/yongzhou/pc/PlanManage.vue +7 -7
  929. package/src/filiale/yongzhou/pc/SelectCheckPlan.vue +364 -0
  930. package/src/filiale/yongzhou/pc/checkUserList.vue +9 -9
  931. package/src/filiale/yongzhou/pc/communityDetail.vue +194 -194
  932. package/src/filiale/yongzhou/pc/communityTypeDetailG.vue +58 -127
  933. package/src/filiale/yongzhou/pc/communityTypeDetailM.vue +114 -207
  934. package/src/filiale/yongzhou/pc/safeDetail.vue +539 -248
  935. package/src/filiale/yongzhou/pc/safeStatistics.vue +175 -124
  936. package/src/filiale/yongzhou/pc/safeStatisticsDay.vue +455 -455
  937. package/src/filiale/yongzhou/pc/safeStatisticsMonth.vue +267 -267
  938. package/src/filiale/yongzhou/pc/safeStatisticsYear.vue +135 -110
  939. package/src/filiale/yongzhou/pc/safeTable.vue +3 -3
  940. package/src/filiale/yongzhou/pc.js +5 -0
  941. package/src/filiale/yuansheng/android/AndroidDefectDeal.vue +652 -0
  942. package/src/filiale/yuansheng/android/PaperFeedback.vue +9 -9
  943. package/src/filiale/yuansheng/android/PhoneUpUserinfo.vue +8 -8
  944. package/src/filiale/yuansheng/android/SafecheckDevices.vue +11 -1
  945. package/src/filiale/yuansheng/android/SafecheckOrderV.vue +2 -2
  946. package/src/filiale/yuansheng/android/SafecheckUserInfo.vue +4 -4
  947. package/src/filiale/yuansheng/android/SwitchValve.vue +322 -0
  948. package/src/filiale/yuansheng/android.js +2 -0
  949. package/src/filiale/yuansheng/pc/DefectListNew.vue +7 -7
  950. package/src/filiale/yuansheng/pc/NewCheckpaper.vue +11 -3
  951. package/src/filiale/yuansheng/pc/PaperList.vue +7 -7
  952. package/src/filiale/yuansheng/pc/checkmsg.vue +2 -2
  953. package/src/filiale/yunchengminsheng/android/DailyworkloadQuery.vue +2 -2
  954. package/src/filiale/yunchengminsheng/android/PaperFeedback.vue +10 -10
  955. package/src/filiale/yunchengminsheng/android/PhoneUpUserinfo.vue +11 -11
  956. package/src/filiale/yunchengminsheng/android/SafecheckDevices.vue +4 -1
  957. package/src/filiale/yunchengminsheng/android/SafecheckOrderV.vue +2 -2
  958. package/src/filiale/yunchengminsheng/android/SafecheckUserInfo.vue +5 -5
  959. package/src/filiale/yunchengminsheng/pc/NewCheckpaper.vue +3 -3
  960. package/src/filiale/yunchengminsheng/pc/checkUserList.vue +27 -10
  961. package/src/filiale/zhongsheng/android/AreaPlan.vue +2 -2
  962. package/src/filiale/zhongsheng/android/BuyRecords.vue +2 -2
  963. package/src/filiale/zhongsheng/android/CurrentCreate.vue +12 -7
  964. package/src/filiale/zhongsheng/android/IgnitionInformation.vue +2 -2
  965. package/src/filiale/zhongsheng/android/PaperFeedback.vue +9 -9
  966. package/src/filiale/zhongsheng/android/PhoneUpUserinfo.vue +8 -8
  967. package/src/filiale/zhongsheng/android/SafecheckOrderV.vue +2 -2
  968. package/src/filiale/zhongsheng/android/SafecheckUserInfo.vue +4 -4
  969. package/src/filiale/zhongsheng/pc/CheckPlanAreaList.vue +5 -5
  970. package/src/filiale/zhongsheng/pc/DefectListWeixiu.vue +7 -7
  971. package/src/filiale/zhongsheng/pc/DefectPaperWeiXiu.vue +13 -9
  972. package/src/filiale/zhongsheng/pc/NewCheckpaper.vue +1 -1
  973. package/src/filiale/zhongsheng/pc/PaperList.vue +7 -7
  974. package/src/filiale/zhongsheng/pc/UserInfoAudit.vue +6 -6
  975. package/src/filiale/zhongyi/android/CurrentCreate.vue +5 -5
  976. package/src/filiale/zhongyi/android/SafecheckOrderV.vue +2 -2
  977. package/src/filiale/zhongyi/pc/DefectListNew.vue +12 -12
  978. package/src/filiale/zhongyi/pc/checkScreen.vue +1 -1
  979. package/src/filiale/zhoukou/android/AndroidDefectDeal.vue +1 -1
  980. package/src/filiale/zhoukou/android/AreaPlan.vue +2 -2
  981. package/src/filiale/zhoukou/android/CurrentCreate.vue +5 -5
  982. package/src/filiale/zhoukou/android/PaperFeedback.vue +9 -9
  983. package/src/filiale/zhoukou/android/PhoneUpUserinfo.vue +8 -8
  984. package/src/filiale/zhoukou/android/SafecheckOrderV.vue +2 -2
  985. package/src/filiale/zhoukou/android/SafecheckUserInfo.vue +4 -4
  986. package/src/filiale/zhoukou/android/UploadPage.vue +1 -1
  987. package/src/filiale/zhoukou/pc/CheckSearchUser.vue +9 -9
  988. package/src/filiale/zhoukou/pc/PaperDefectMain.vue +5 -5
  989. package/src/main-/345/215/225/351/241/265/351/235/242/346/211/223/345/214/205/347/224/250.js +24 -0
  990. package/src/main.js +33 -33
  991. package/src/plugins/GetCheckParams.js +1 -1
  992. package/src/plugins/LoadCheckParams.js +1 -1
  993. package/src/rongcheng.js +3 -1
  994. package/src/safecheck-android.js +17 -0
  995. package/src/safecheck-page.js +12 -0
  996. package/src/safecheck.js +6 -0
  997. package/static/stretch_bottom.png +0 -0
  998. package/static/stretch_top.png +0 -0
@@ -1,2428 +1,2456 @@
1
- <template>
2
- <!--<div class="app-botton" @click="back()">-->
3
- <!--返回<span class="glyphicon glyphicon-menu-right"></span>-->
4
- <!--</div>-->
5
- <div id="savebut" class="no-close row android-repair-order" style="background-color: #f9f9f9">
6
- <div class="col-sm-12 col-xs-12" >
7
- <ul class="nav nav-tabs" style="background:#ffffff;overflow-y: hidden">
8
- <li v-for="row in tabs" @click="tabSelect(row,$index)" :class="{active1: row.complete === componentName}"
9
- v-if="$index < number+1 && $index < faultshow.number" >
10
- <a href="#" style="background-color: #ffffff;color: #666666;font-size: 16px;font-family:SimSun" :class="row.class">
11
- <span class="spanboder">{{row.header}}</span>
12
- <img class="butt2" :src="imgback(row.complete === componentName,row.header === header)"></a>
13
- <p></p>
14
- </li>
15
- <div class="col-sm-12 col-xs-12 repair-bg" v-show="routeShow">
16
- <route name='repair' :reuse="false"></route>
17
- </div>
18
- <li v-for="row in tabs" @click="tabSelect(row,$index)" :class="{active1: row.complete === componentName}"
19
- v-if="$index > number && $index < faultshow.number ">
20
- <a href="#" style="background-color: #ffffff;color: #666666;font-size: 16px;font-family:SimSun" :class="row.class">
21
- <span class="spanboder">{{row.header}}</span>
22
- <img class="butt2" :src="imgback(row.complete === componentName,row.header === header)"></a>
23
- <p></p>
24
- </li>
25
- <div class="col-sm-12 col-xs-12 repair-bg" v-if="actionEnabled ">
26
- <div class="auto select-overspread form-horizontal repair-bg " style="padding-bottom:5px;">
27
- <div class="bq-parent">
28
- <blockquote class="blockquote">
29
- <p>安检上传</p>
30
- </blockquote>
31
- </div>
32
- <div class="panel panel-default auto repair-info-content">
33
- <div class="panel-body ">
34
- <div class="row auto">
35
- <!--<div class="col-xs-12 col-sm-12 col-md-12" :style="timeSet(this.isneedDate)?'':'display:none'">-->
36
- <!--<label>请输入超期原因:</label><br/>-->
37
- <!--<textarea style="width: 100%;" v-model=""></textarea>-->
38
- <!--</div>-->
39
- <div class="col-xs-12 col-sm-12 col-md-12 flex-between" style="margin-top: 20px;">
40
- <div class="col-xs-3 col-sm-3 col-md-3" v-if="parentPage=='CurrentCreate'">
41
- <button type="button" name="button" class="col-sm-3 btn btn-primary" @click="save('temp')">
42
- 临时保存
43
- </button>
44
- </div>
45
- <div class="col-xs-3 col-sm-3 col-md-3">
46
- <button class="col-sm-3 btn btn-primary" @click="save('finish')">
47
- 本地缓存
48
- </button>
49
- </div>
50
- <div class="col-xs-3 col-sm-3 col-md-3">
51
- <button type="button" name="button" class="col-sm-3 btn btn-primary" @click="uploadCheckPaper">
52
- 上传
53
- </button>
54
- </div>
55
- </div>
56
- </div>
57
- </div>
58
- </div>
59
- </div>
60
- </div>
61
- </ul>
62
- </div>
63
-
64
- </div>
65
- </template>
66
-
67
- <script>
68
- // 户内维修
69
- import Vue from 'vue'
70
- import * as Util from '../../Util'
71
- // import DoorService from './DoorService'
72
- // import Pipeline from './Pipeline'
73
- // import DeviceService from './DeviceService'
74
- // import TroubleRemoval from './TroubleRemoval'
75
- // import FirstGasCheck from './FirstGasCheck'
76
- // import RepairMatterInfo from './RepairMatterInfo'
77
- // import TelChangeMatter from './TelChangeMatter'
78
- import { HttpResetClass } from 'vue-client'
79
- import co from 'co'
80
- import $ from "jquery";
81
- let loadParamGem = async function (self) {
82
- await self.$LoadParams.loadParam()
83
- }
84
-
85
- export default {
86
- title: '安检单',
87
- props: ['f_plan_id', 'item', 'role','parentPage','source'],
88
- // props: ['f_plan_id', 'role'],
89
- data() {
90
- return {
91
- //测试数据
92
- // f_plan_id:'',
93
- // role:'inspect',
94
- // item:{"f_approved_time":null,"f_user_family_remarks":null,"f_street":"测试街道","f_repair_approved_time":null,
95
- // "f_user_type":null,"f_approved_by":null,"f_card_id":null,"f_remark":null,"f_building":"1","f_batch_number":null,
96
- // "f_idnumber":null,"f_state":"未检","id":"0EFE0EE2-B155-46F9-8DE0-38C022664A4D","f_complete":null,"f_check_state":null,"f_last_check_state":"拒检",
97
- // "f_user_inhome_time":null,"f_residential_area":"测试小区1","version":1,"f_processid":null,"f_last_check_result":"{\"result\":\"正常\",\"data\":[]}",
98
- // "f_area":null,"f_usegas":null,"f_user_phone":"16566546548","f_slice_area":"营业大区","f_approved":"未审核","f_upload_state":"未传","f_user_check_time":null,
99
- // "f_unit":"1","f_user_spare_phone":null,"f_last_check_date":null,"f_userproperties":null,"f_userfile_id":null,"f_prearranged_date":null,"f_filialeid":"453",
100
- // "f_branch":null,"f_orgstr":null,"f_plan_year":2020,"f_orgid":null,"f_approval_notified":null,"f_plan_month":4,"f_approved_note":null,"f_filialeids":null,
101
- // "f_floor":"1","f_flag":null,"f_repair_approved_note":null,"f_userinfo_code":"00000002","f_create_time":"2020-05-10 18:56:03","f_meter_no":"","f_station":null,
102
- // "f_repair_approved":"未审核","f_no_checkplan":"有计划安检","f_plan_name":"关于","f_repair_approved_by":null,"f_room":"1","f_office":null,"f_comments":null,
103
- // "f_address":"兰山街道泰盛小区1栋1单元1层1室","id_back":null,"f_userinfoid":"2","f_subcompany":null,"f_addressid":null,"f_user_phone2":null,
104
- // "f_user_equipment_remarks":null,"f_plan_id":"0819ea6707ad4d9dad217c06a87f4227","f_user_name":"用户二",
105
- // "f_plan_meters":[{"f_weizhi":null,"f_flow_direction":"右表","f_metertitles":"","f_prior_reading":0,"f_meter_no":"2119035714","f_collection_type":"按金额","f_aliasname":"先锋系统结算物联网表","f_meter_type":"物联网表","version":3,"f_maker":null,"f_metergasnums":0,"f_total_fee":100,"f_diaphgram_size":"G2.5","f_total_gas":0,"id":18663},{"f_weizhi":null,"f_flow_direction":"右表","f_metertitles":"","f_prior_reading":0,"f_meter_no":"2118999901","f_collection_type":"按金额","f_aliasname":"先锋系统结算物联网表","f_meter_type":"物联网表","version":1,"f_maker":null,"f_metergasnums":0,"f_total_fee":0,"f_diaphgram_size":"G2.5","f_total_gas":0,"id":18663}]
106
- // },
107
-
108
- data: {
109
- f_devices: [],
110
- f_defect_content:'',
111
- f_recording1_path:''
112
- },
113
- updateuserphone:false, //安检时是否更新用户电话
114
- beforephone:'',
115
- isUpload:false,
116
- onlySave:true, //判断保存还是保存并上传
117
- livedispose:'',
118
- startClick:false, //开始安检按钮是否可点击
119
- isStrat: false, //是否开始安检
120
- checkResult:{},//查询结果
121
- newcheckResult:{},
122
- timer: null,
123
- showModal: false,
124
- pic_to_be_viewed: '',
125
- showBack:true,
126
- devices: [],
127
- f_devices : [],
128
- isToRepair:false,
129
- clickBack:true, //是否点击返回按钮
130
- isSafeCheckToRepair:false,//是否转维修
131
- Url:this.$androidUtil.getProxyUrl(),
132
- detail:{},
133
- defectDevice:{},
134
- user:{},
135
- model: { //转维修数据
136
- // 一次派单
137
- serviceacitivity: [{
138
- f_service_acitivity_type: '派单'
139
- }],
140
- f_source:'安检',
141
- f_service_id: '',
142
- f_contact_phone: '',
143
- f_meetunit: '',
144
- f_phone: '',
145
- f_user_name: '',
146
- f_address: '',
147
- f_repair_date: Util.toStandardTimeString(),
148
- f_card_id: '',
149
- // f_department: '', 站点选择
150
- f_reciever:'',
151
- f_remarks: '',
152
- f_user_type: '',
153
- f_area: '',
154
- f_unit_name:'',
155
- f_street: '',
156
- f_residential_area: '',
157
- f_building: '',
158
- f_unit: '',
159
- f_floor: '',
160
- f_room: '',
161
- aState: null,
162
- f_repairtype: '',
163
- f_repairitems:{},
164
- },
165
- repairitems:[],
166
- meading:'转站点',
167
- config: {
168
- "燃气表":{
169
- "checkmust":true,
170
- "index":1,
171
- "items":{
172
- //"燃气表照片":{"index":1,"type":"picture","remark":"(拍摄清晰的表具编号、字轮数、剩余气量等)"},
173
- "基表编号":{"index":1,"type":"string","readonly":true},
174
- "气表型号":{"index":2,"type":"string","readonly":true},
175
- "气表品牌":{"index":3,"type":"string","readonly":true},
176
- "进气方向":{"index":4,"type":"selector","options":[{"data":"左表","isdefault":false},{"data":"右表","isdefault":false}],"checkmust": true},
177
- "初始表底":{"index":5,"type":"number","isshow":false,"readonly":true},
178
- "上期表读数":{"index":6,"type":"number","readonly":true,isshow:false},
179
- "累购气量":{"index":7,"type":"number","readonly":true},
180
- "累购金额":{"index":7,"type":"number","readonly":true},
181
- "已用气量":{"index":8,"type":"number","checkmust": false},//基表数
182
- "已用金额":{"index":8,"type":"number","checkmust": false},
183
- "剩余气量":{"index":9,"type":"number","checkmust": false},//累购-已用
184
- //显示屏数 --实际剩余气量
185
- "剩余金额":{"index":9,"type":"number","checkmust": false},
186
- "气量异常差值":{"index":10,"type":"number","readonly": true,isshow:true},
187
- "金额异常差值":{"index":10,"type":"number","readonly": true,isshow:true},
188
- "表箱号":{"index":11,"type":"string","readonly": true}
189
- }
190
- // 注意,配置项的index必须与上面的固定配置保持'顺序'
191
- },
192
- // "燃气表2":{
193
- // "checkmust":true,
194
- // "index":2,src
195
- // "items":{
196
- // "燃气表照片":{"index":1,"type":"picture"},
197
- // "表品牌":{"index":2,"type":"string","readonly":true},
198
- // "表号":{"index":3,"type":"string","readonly":true},
199
- // "表封号":{"index":4,"type":"number","readonly":true},
200
- // "表型号":{"index":5,"type":"string","readonly":true},
201
- // "位置":{"index":6,"type":"string","readonly":true},
202
- // "表底数":{"index":7,"type":"number","readonly":true},
203
- // "累购气量":{"index":8,"type":"number","readonly":true},
204
- // "累购金额":{"index":8,"type":"number","readonly":true}
205
- // }
206
- // }
207
- },
208
- // 维修项
209
- isneedDate:'',
210
- routeShow:true,
211
- number:0,
212
- shupingshow:false,
213
- pipeline: {},
214
- details: [],
215
- ids: '',
216
- savevalid: {
217
- uservalid: false,
218
- doorvalid: true,
219
- changetable: false
220
- },
221
- doordetails: {},
222
- devicedetails: {},
223
- cookdetails: {},
224
- componentName: 'safecheck-userinfo',
225
- header:'客户信息',
226
- tabs: [
227
- // 参数全部设置成空,在ready时,等model处理好了,再添加
228
- {
229
- header: '客户信息',complete:'safecheck-userinfo',class: 'repair-info-class', props: null
230
- },
231
- {
232
- header: '拍照签名',complete:'paper-feedback', class: 'outlay-class', props: null
233
- }
234
- ],
235
- faultshow:{
236
- number : 8
237
- } // 控制 故障汇总 在 菜单里显示与否,
238
- }
239
- },
240
- computed: {
241
- actionEnabled: {
242
- get() {
243
- return this.role == 'inspect'
244
- }
245
- }
246
- },
247
- methods: {
248
- closely(isdelete){
249
- try {
250
- var startOrStopAudioClipStr;
251
- if (isdelete===true) {
252
- //tag
253
- startOrStopAudioClipStr= HostApp.startOrStopAudioClip("----",'停止并删除录音') //停止并删除录音
254
- }else {
255
- //tag
256
- startOrStopAudioClipStr= HostApp.startOrStopAudioClip("----",'停止录音') //停止录音
257
- }
258
- if (startOrStopAudioClipStr.code == 200) {
259
- //tag
260
- return true;
261
- }else {
262
- return false;
263
- }
264
- } catch (e) {
265
- console.error("关闭录音方法异常")
266
- console.error(e)
267
- return false;
268
- }
269
- },
270
- // 录音方法
271
- record() {
272
- //tag
273
- if (this.role != 'inspect') {
274
- if (this.data.f_recording1_path != '') {
275
- window.location = "/rs/file"+this.data.f_recording1_path
276
- }
277
- } else {
278
- //tag
279
- let fileName
280
- if (!this.data.f_recording1_path) {
281
- fileName = Util.guid() + '.amr'
282
- } else {
283
- fileName = Util.getFileName(this.data.f_recording1_path)
284
- }
285
- //HostApp.__this__ = this
286
- /*调用无限制录音模块*/
287
- let startOrStopState = HostApp.startOrStopAudioClip(fileName,"开始录音")
288
- //tag
289
- if (startOrStopState.code == 200) {
290
- this.data.f_recording1_path = "file:///storage/emulated/0/safecheck/" + fileName
291
- //tag
292
- return true;
293
- }else {
294
- return false;
295
- }
296
- }
297
- },
298
- saveNoclick() {
299
- // 禁用点击事件
300
- $("#savebut").addClass("noclickbut");
301
- //tag
302
-
303
- // 5秒后启用点击事件
304
- setTimeout(function(){
305
- $("#savebut").removeClass("noclickbut");
306
- },5000);
307
- },
308
- timeSet(val){
309
- if (!val){
310
- return
311
- }
312
- let time =new Date(val).getTime()
313
- let time2=new Date().getTime()
314
- if (time2>time) {
315
- return true
316
- }
317
- },
318
- imgback(val,isheader){
319
- if(val && this.routeShow && isheader){
320
- return require('../../../assets/xiangxia1.png')
321
- }else{
322
- return require('../../../assets/xiangyou1.png')
323
- }
324
- },
325
- changediv(val){
326
- //tag
327
- return val
328
- },
329
- // 选择tab
330
- tabSelect (item,number) {
331
- this.header = item.header
332
- //tag
333
- //tag
334
- //tag
335
- //tag
336
- // 处理关闭/显示 内容
337
- if(this.number == number && !this.routeShow ){
338
- this.routeShow = true
339
- }else if(this.number == number && this.routeShow){
340
- this.routeShow = false
341
- }else if(this.number != item.complete){
342
- this.routeShow = true
343
- }
344
- this.number = number
345
- this.componentName = item.complete
346
- //tag
347
- if(item.complete == 'safecheck-devices'){
348
- //tag
349
- if(item.header != '燃气表' && this.data['device'+item.number].length == 0){
350
- this.data['device' + item.number].push({})
351
- }
352
- //tag
353
- //tag)
354
- let idx=this.data['device' + item.number].length - 1
355
- let itemprops = {
356
- config:this.config,
357
- device:this.devices[item.number-1],
358
- idx:idx,
359
- role:'inspect'
360
- }
361
- //tag
362
- //tag)
363
- //tag)
364
- //tag
365
- if(this.routeShow){
366
- this.$goto(item.complete, itemprops, 'repair')
367
- //tag
368
- }
369
- }else{
370
- //tag
371
- if(this.routeShow){
372
- this.$goto(item.complete, {userinfo:this.data}, 'repair')
373
- }
374
- }
375
- this.shupingshow = true
376
- },
377
- // 给组件添加参数
378
- getImgPath() {
379
- for (var i = 0; i < this.model.serviceacitivity[0].imgs.length; i++) {
380
- this.ids += this.model.serviceacitivity[0].imgs[i].imgid + ','
381
- }
382
- this.ids = this.ids.substring(0, this.ids.length - 1)
383
- if(this.ids){
384
- this.getImgGen();
385
- }
386
- },
387
- getImgGen(){
388
- let http = new HttpResetClass()
389
- http.load('POST','rs/sql/tel_singleTable_OrderBy', {data: {
390
- items: '*',
391
- tablename: 't_files',
392
- condition: `id in (${this.ids})`,
393
- orderitem: 'id'
394
- }}, {resolveMsg: null, rejectMsg: null}).then((res) => {
395
- for (let i = 0; i < res.data.length; i++) {
396
- for (let j = 0; j < this.model.serviceacitivity[0].imgs.length; j++) {
397
- //tag)
398
- //tag
399
- if (res.data[i].id.toString() === this.model.serviceacitivity[0].imgs[j].imgid) {
400
- this.model.serviceacitivity[0].imgs[j] = Object.assign({}, res.data[i], this.model.serviceacitivity[0].imgs[j])
401
- }
402
- }
403
-
404
- }
405
- })
406
- },
407
-
408
- sortDetails(){
409
- for (let i = 0; i < this.details.length; i++) {
410
- if (this.details[i].details.length) {
411
- for (let j = 0; j < this.details[i].details.length; j++) {
412
- if (this.details[i].details[j].f_type === 'a') {
413
- this.doordetails = {details: this.details[i].details}
414
- break
415
- }
416
- if (this.details[i].details[j].f_type === 'b') {
417
- this.devicedetails = {details: this.details[i].details}
418
- break
419
- }
420
- if (this.details[i].details[j].f_type === 'c') {
421
- this.cookdetails = {details: this.details[i].details}
422
- break
423
- }
424
- }
425
- }
426
- }
427
- },
428
- // 复制数据
429
- back () {
430
- let _this = this
431
- if(this.issee){
432
- _this.$back()
433
- return
434
- }
435
- this.$showMessage('所填写内容将不可恢复!', ['confirm', 'cancel']).then((res) => {
436
- if (res === 'confirm') {
437
- this.closely()
438
- _this.$back()
439
- }
440
- })
441
- },
442
- confirm(){
443
- this.$dispatch('confirm')
444
- },
445
- tick() {
446
- this.timer = null
447
- this.data.f_offsite_time = Util.toStandardTimeString()
448
- this.timer = window.setTimeout(this.tick, 1000)
449
- },
450
- getRepairState() {
451
- let repaired = true
452
- this.data.f_defects.forEach((defect) => {
453
- repaired = repaired & (defect.f_ratification == '已处理')
454
- })
455
- return repaired
456
- },
457
- verifyRepairDefects() {
458
- this.data.f_repair_date = Util.toStandardTimeString()
459
- this.data.f_repaired = this.getRepairState() ? '已修' : '在修'
460
- },
461
- errorVerify() {
462
- let hasError = this.verifyState()
463
- if(hasError)
464
- return hasError
465
-
466
- if(this.data.f_entry_status != '入户')
467
- return null
468
- hasError = this.verifyUser()
469
- if(hasError)
470
- return hasError
471
- hasError = this.verifyDevices()
472
- if(hasError)
473
- return hasError
474
- hasError = this.verifyFeedback()
475
- if(hasError)
476
- return hasError
477
- },
478
- verifyState() {
479
- if(Vue.android && this.data.f_entry_status == '未使用天然气' && this.data.f_nongasuser_path == Vue.nopic)
480
- return '未使用天然气则必须拍照'
481
- if(Vue.android && this.data.f_entry_status == '到访不遇' && this.data.f_noanswer_path == Vue.nopic)
482
- return '到访不遇必须拍照'
483
- },
484
- verifyUser() {
485
- //tag
486
- //tag
487
- //tag)
488
- let prefix = '用户基本信息:'
489
- if(Util.required(this.data.f_user_name))
490
- return prefix + '用户名必须输入'
491
- if(!(/^\d{11}$/.test(this.data.f_user_phone))) {
492
-
493
- return '请输入正确的电话号码'
494
- }
495
- // if(Util.required(this.data.f_residential_area))
496
- // return prefix + '小区名称必须输入'
497
- if(Util.required(this.data.f_address))
498
- return prefix + '地址必须输入'
499
- },
500
- verifyDevices() {
501
- for (let dev in this.config) {
502
- if (this.config[dev].checkmust == true) {
503
- let error = true
504
- for(let device in this.data) {
505
- if (device.startsWith("device")) {
506
- for (let item in this.data[device]) {
507
- if (this.data[device].length != 0 && this.data[device][item].f_device_type == dev) {
508
- error = false
509
- }
510
- }
511
- }
512
- }
513
- if (error) {
514
- return "请检查" + dev
515
- }
516
- }
517
- }
518
-
519
- for (let dev in this.config) {
520
- for(let device in this.data) {
521
- if (device.startsWith("device")) {
522
- for (let item in this.data[device]) {
523
- //检查每一条安检结果
524
- if (this.data[device].length != 0 && this.data[device][item].f_device_type == dev) {
525
- for (let i in this.data[device][item].f_items) {
526
- for (let it in this.config[dev].items) {
527
- if (it == this.data[device][item].f_items[i].f_item_name) {
528
- let check=false
529
- if (!this.data[device][item].f_items[i].f_item_value){
530
- check=true
531
- }else if (Array.isArray(this.data[device][item].f_items[i].f_item_value)){
532
- if (this.data[device][item].f_items[i].f_item_value.length==0){
533
- check=true
534
- }
535
- }
536
-
537
- if(this.config[dev].items[it].type=='picture' && this.config[dev].items[it].checkmust == true && !this.data[device][item].f_items[i].f_path){
538
- return dev + (this.data[device].indexOf(this.data[device][item]) + 1) + this.data[device][item].f_items[i].f_item_name + "未检查"
539
- }
540
- if (this.config[dev].items[it].type !='picture' && this.config[dev].items[it].checkmust == true && check) {
541
- return dev + (this.data[device].indexOf(this.data[device][item]) + 1) + this.data[device][item].f_items[i].f_item_name + "未检查"
542
- }
543
- }
544
- }
545
- //检查安检下拉结果
546
- if (this.data[device][item].f_items[i].type == 'selector' || this.data[device][item].f_items[i].type == 'radio') {
547
- if (this.data[device][item].f_items[i].f_is_defect == true && this.data[device][item].f_items[i].f_path == Vue.nopic) {
548
- return dev + (this.data[device].indexOf(this.data[device][item]) + 1) + this.data[device][item].f_items[i].f_item_name + this.data[device][item].f_items[i].f_item_value + "选中必须拍照"
549
- }
550
- }
551
- }
552
- }
553
- }
554
- }
555
- }
556
- }
557
- },
558
-
559
-
560
- verifyFeedback() {
561
- let prefix = '拍照签名:'
562
- //tag)
563
- if(Vue.android && (!this.data.f_overall_imgs || this.data.f_overall_imgs.length == 0) && this.data.f_entry_status == '入户')
564
- return prefix + '必须有安检总体照片'
565
- if(Vue.android && (!this.data.f_sign_path || this.data.f_sign_path.length == 0) && this.data.f_entry_status == '入户')
566
- return prefix + '必须有用户签名'
567
- if(Vue.android && this.data.f_defect_notified && this.data.f_notified_path == Vue.nopic)
568
- return prefix + '下发安检通知书则必须给通知书拍照'
569
- if(Vue.android && this.data.f_blacklist && this.data.f_blocking_cause=='')
570
- return prefix + '请填写拉黑原因'
571
- if(!this.data.f_client_evaluation && this.data.f_entry_status == '入户')
572
- return prefix + '请选择服务评价'
573
- },
574
-
575
- getAllDefect() {
576
- let checkResults = {
577
- result: '正常',
578
- data: []
579
- }
580
- let value = ''
581
- let codata = JSON.parse(JSON.stringify(this.data))
582
- //tag)
583
- //tag)
584
- codata.f_devices = []
585
- this.f_devices = []
586
- for (let device in codata) {
587
- let f_device_type
588
- if (device.startsWith("device")) {
589
- //tag)
590
- let hasOther = ''
591
- let otherValue = null
592
- for (let item in codata[device]) {
593
- if(typeof codata[device][item]=='function'){
594
- continue
595
- }
596
- codata[device][item].f_create_time = Util.toStandardTimeString()
597
- // if (codata[device].length > 1) {
598
- // let j = Number.parseInt(item) + 1
599
- // f_device_type = `${codata[device][item].f_device_type}${j}`
600
- // } else {
601
- // f_device_type = codata[device][item].f_device_type
602
- // }
603
- //tag
604
- //tag
605
- //tag)
606
- //tag)
607
- if(item == 'sum' || item == 'removeEmpty'){
608
- continue
609
- }
610
- for (let i = 0; i < codata[device][item].f_items.length ; i++) {
611
- //tag
612
- if(i == 'sum' || i == 'removeEmpty'){
613
- continue
614
- }
615
- //tag)
616
- var items = codata[device][item].f_items[i]
617
- items.f_create_time = Util.toStandardTimeString()
618
- //tag)
619
- items.f_item_lists = []
620
- //tag)
621
- // //tag)
622
- // //tag} name => ${JSON.stringify(items.f_item_name)} value => ${JSON.stringify(items.f_item_value)}`)
623
- // console.log(`f_is_defect => ${this.config[codata[device][item]
624
- // .f_device_type]
625
- // .items[items.f_item_name]
626
- // .options
627
- // .find((option)=>option.data === items.f_item_value)
628
- // .map((option)=>option.f_is_defect)}`)
629
- // if (items.f_is_defect && (items.f_is_defect == true || items.f_is_defect == 'true')) {
630
- // //tag
631
- // checkResults.result = '有隐患'
632
- // //tag)
633
- // //tag)
634
- // // this.$set('checkResult.' + items.f_item_name, items.f_item_value)
635
- // this.checkResult[items.f_item_name] = items.f_item_value
636
- // //tag)
637
- // // this.$set('checkResultsss.' + items.f_item_name, `${f_device_type}${items.f_item_value}`)
638
- // // //tag)
639
- // }
640
- if (items.type == 'selector') {
641
- items.selected = []
642
- } else if (items.type == 'inputSelector') {
643
- items.selected = ''
644
- }
645
- //遍历配置项 将所选隐患项的配置信息放入保存的数据中
646
- let f_is_defect //是否是隐患
647
- let f_defect_level //是否是隐患
648
- let f_item_name = items.f_item_name
649
- let f_item_value
650
- let f_is_eliminate //隐患是否消除
651
- let f_meternumber = ''
652
- let f_user_defects = [] // 用户所有隐患
653
- //tag
654
- //tag
655
- if (items.type == 'selector' || items.type == 'checkbox' || items.type == 'radio') {
656
- for (let i in items.f_item_value) {
657
- if(typeof items.f_item_value[i]=='function'){
658
- continue
659
- }
660
- let configItems = this.config[codata[device][item].f_device_type].items[f_item_name]
661
- //tag)
662
- for (let k in configItems.options) {
663
- if(typeof configItems.options[k]=='function'){
664
- continue
665
- }
666
- //tag)
667
- if (items.f_item_value[i] === configItems.options[k].data) {
668
-
669
- f_is_defect = configItems.options[k].isdefect
670
- f_item_value = items.f_item_value[i]
671
- f_defect_level = configItems.options[k].level
672
-
673
- //tag
674
- //tag
675
- //tag
676
-
677
- if (f_is_defect) {
678
- if (checkResults.result !== '有隐患') {
679
- checkResults.result = '有隐患'
680
- }
681
- if (!this.checkResult.hasOwnProperty(f_item_name)) {
682
- //tag
683
- this.checkResult[f_item_name] = []
684
- }
685
-
686
- //tag
687
- this.checkResult[f_item_name].push(f_item_value)
688
-
689
- }
690
-
691
- let items_list = {
692
- f_is_defect: f_is_defect,
693
- f_item_value: f_item_value,
694
- f_defect_level: f_defect_level,
695
- f_is_eliminate: null,
696
- f_create_time: Util.toStandardTimeString()
697
- }
698
- if (!items.f_item_lists) {
699
- //tag
700
- items.f_item_lists = []
701
- //tag)
702
- if (JSON.stringify(items_list) !== '{}') {
703
- //tag
704
- items.f_item_lists.push(items_list)
705
- }
706
- } else {
707
- //tag)
708
- if (JSON.stringify(items_list) !== '{}') {
709
- //tag
710
- items.f_item_lists.push(items_list)
711
- }
712
- }
713
- }
714
- }
715
- }
716
- } else {
717
- let configItems = this.config[codata[device][item].f_device_type].items[items.f_item_name]
718
- //tag)
719
- f_is_defect = configItems.isdefect
720
- f_defect_level = configItems.level
721
- f_item_value = items.f_item_value
722
- //tag
723
- //tag
724
- //tag
725
- let items_list = {
726
- f_is_defect: f_is_defect,
727
- f_item_value: f_item_value,
728
- f_defect_level: f_defect_level,
729
- f_create_time: Util.toStandardTimeString()
730
- }
731
- if (f_is_defect && f_item_value) {
732
- items.f_is_defect = true
733
- if (checkResults.result !== '有隐患') {
734
- checkResults.result = '有隐患'
735
- }
736
- if (!this.checkResult.hasOwnProperty(items.f_item_name)) {
737
- //tag
738
- this.checkResult[items.f_item_name] = []
739
- }
740
-
741
- //tag
742
- this.checkResult[items.f_item_name].push(f_item_value)
743
-
744
- }
745
- //tag)
746
- //tag)
747
- if (!items.f_item_lists) {
748
- //tag
749
- items.f_item_lists = []
750
- if (JSON.stringify(items_list) != '{}') {
751
- //tag
752
- items.f_item_lists.push(items_list)
753
- }
754
- } else {
755
- // items.f_item_lists[0].f_item_value = f_item_value
756
- if (JSON.stringify(items_list) != '{}') {
757
- //tag
758
- //tag)
759
- //tag)
760
- //tag
761
- items.f_item_lists.push(items_list)
762
- }
763
- }
764
- }
765
- if (hasOther !== '' && otherValue !== null) {
766
- //tag
767
- this.checkResult[hasOther].push(otherValue)
768
- hasOther = ''
769
- otherValue = null
770
- }
771
- items.f_item_value = ''
772
- }
773
- //tag)
774
- this.f_devices.push(codata[device][item])
775
- }
776
- }
777
- }
778
- if (this.checkResult) {
779
- for (let key in this.checkResult) {
780
- if(typeof this.checkResult[key]=='function'){
781
- continue
782
- }
783
- // 上次安检结果数据组织
784
- //tag
785
- //tag
786
- let temp = {}
787
- temp[key] = this.checkResult[key].join(',')
788
- checkResults.data.push(temp)
789
- // this.newcheckResult[key] = this.checkResult[key]
790
- // checkResults.data.push(this.newcheckResult)
791
- //tag)
792
- // this.newcheckResult = {}
793
- }
794
- this.checkResult = {}
795
- }
796
- //tag
797
- //tag)
798
- codata.f_defect_content = JSON.stringify(checkResults)
799
- this.data.f_defect_content = JSON.stringify(checkResults)
800
- //tag
801
- return codata
802
- },
803
- uploadCheckPaper(){
804
- this.saveNoclick()
805
- //tag
806
- //tag
807
- this.closely(false) // 保存本地,不删除录音文件停止录音
808
- let errString = this.errorVerify()
809
- if (errString) {
810
- //tag
811
- //tag
812
- //tag
813
- if (Vue.android){
814
- // if(this.isUpload){
815
- // this.isUpload = false
816
- // }
817
- this.$showMessage(errString)
818
- }
819
- return
820
- } else {
821
- this.$set('data.f_offsite_time', Util.toStandardTimeString())
822
- this.$set('data.f_upload_time', Util.toStandardTimeString())
823
- this.$set('data.f_upload_date', Util.toStandardTimeString())
824
- //tag
825
- this.data.f_complete = '已完成'
826
- this.disableTimer()
827
- }
828
- //tag
829
- this.onlySave = false
830
- let res = this.save()
831
- // if(res) {
832
- // try {
833
- // let codata = this.getAllDefect()
834
- // //获取微信推送内容
835
- // let WxResult = this.getWeixin(codata)
836
- // let haslivedispose = this.$androidUtil.bzLogic('getLiveDispose', {
837
- // f_check_item_id: this.data.f_check_item_id
838
- // })
839
- // //如果是转维修上传,则不做校验,上传完成后自动转维修
840
- // //tag
841
- // //tag
842
- // if(!this.isToRepair){
843
- // if(haslivedispose.data.length > 0 && (this.livedispose == 'true' || this.livedispose == true)){
844
- // //tag
845
- // //tag
846
- // if(!this.isSafeCheckToRepair){
847
- // this.$showMessage('有未处理的隐患,请前往拍照上传中将安检转为维修单!')
848
- // return
849
- // }
850
- // }
851
- // }
852
- // //tag
853
- // for (let key in codata){
854
- // if(key.startsWith("device")){
855
- // codata[key] = []
856
- // }
857
- // }
858
- // //tag}`)
859
- //
860
- // //tag
861
- // let isStart = true
862
- // let res
863
- // for (let i in this.f_devices){
864
- // res = HostApp.organizeJSON({isStart:isStart,isDevice:true,device:this.f_devices[i]})
865
- // if(res.code == 200){
866
- // isStart = false
867
- // }else{
868
- // this.$showMessage("保存失败!")
869
- // }
870
- // }
871
- // let result = HostApp.organizeJSON({
872
- // isStart:false,
873
- // isJSON:true,
874
- // jsonstr:{
875
- // f_check_item_id: this.data.f_check_item_id,
876
- // f_checker_id: this.data.f_checker_id,
877
- // row: codata
878
- // }
879
- // })
880
- // if(result.code == 200){
881
- // HostApp.__this__ = this
882
- // this.runSyncLogic('上传安检信息','javascript:HostApp.__this__.uploadCallBack()',1)
883
- // }
884
- //
885
- //
886
- // // let response = this.$androidUtil.bzLogic('上传安检信息', {
887
- // // f_check_item_id: this.data.f_check_item_id,
888
- // // f_checker_id: this.data.f_checker_id,
889
- // // row: codata
890
- // // })
891
- // // if (response.code == 200) {
892
- // // //tag
893
- // // //tag)
894
- // // let f_paper_id
895
- // // if(response.data != '' && response.data != null){
896
- // // f_paper_id = JSON.parse(response.data).id
897
- // // }
898
- // // this.$set('data.f_paper_id', f_paper_id)
899
- // // //tag
900
- // // //tag)
901
- // // //tag
902
- // // //tag)
903
- // // for (let device in this.data){
904
- // // //tag
905
- // // //tag)
906
- // // if(device.startsWith("device")){
907
- // // for(let devices of this.data[device]) {
908
- // // devices.f_paper_id = f_paper_id
909
- // // let ret = this.$androidUtil.bzLogic('UpCheckPaperDevices', {
910
- // // row: devices
911
- // // })
912
- // // //tag}`)
913
- // // if(ret.code == 200){
914
- // // //tag
915
- // // devices.f_device_id = JSON.parse(ret.data.f_device_id).id
916
- // // }
917
- // // //tag
918
- // // //tag)
919
- // // if (ret.code != 200) {
920
- // // //TODO 失败后处理
921
- // // // this.isUpload = false
922
- // // this.$showMessage("上传失败!")
923
- // // return false
924
- // // }
925
- // // }
926
- // // }
927
- // // }
928
- // // // for (let device of this.f_devices) {
929
- // // // device.f_paper_id = f_paper_id
930
- // // // //tag
931
- // // // //tag)
932
- // // // let ret = this.$androidUtil.bzLogic('UpCheckPaperDevices', {
933
- // // // row: device
934
- // // // })
935
- // // // //tag
936
- // // // if (ret.code != 200) {
937
- // // // //TODO 失败后处理
938
- // // // HostApp.alert("上传失败!")
939
- // // // return false
940
- // // // }
941
- // // // }
942
- // // let result = this.$androidUtil.bzLogic('FinishUpload',
943
- // // {
944
- // // f_check_item_id: this.data.f_check_item_id,
945
- // // f_userinfo_id: codata.f_userinfoid,
946
- // // f_last_check_result: codata.f_defect_content
947
- // // })
948
- // // if(result.code == 200){
949
- // // // this.$showAlert('上传成功!', 'success', 2000)
950
- // // this.$showMessage('上传成功!')
951
- // // this.isStrat=false
952
- // // if(url != "" ){
953
- // // this.$resetpost(`${url}`,{data:WxResult})
954
- // // }
955
- // // return true
956
- // // }else{
957
- // // // this.isUpload = false
958
- // // this.$showMessage("上传失败!")
959
- // // return false
960
- // // }
961
- // // }else{
962
- // // // this.isUpload = false
963
- // // this.$showMessage("上传失败!")
964
- // // return false
965
- // // }
966
- // }catch (e) {
967
- // //tag)
968
- // // this.isUpload = false
969
- // this.$showMessage("上传失败!")
970
- // }
971
- // }
972
- },
973
- save(type) {
974
- //禁用事件
975
- this.saveNoclick()
976
- //tag
977
- //tag
978
- if(type == 'temp'){
979
- this.data.f_complete = '未完成'
980
- // 关闭录音方法
981
- this.closely(true) //临时保存,删除录音文件并暂停录音
982
- this.disableTimer()
983
- }else {
984
- // 关闭录音方法
985
- this.closely(false) // 保存本地,不删除录音文件暂停录音
986
- let errString = this.errorVerify()
987
- if (errString) {
988
- //tag
989
- //tag
990
- //tag
991
- if (Vue.android){
992
- this.$showMessage(errString)
993
- }
994
- return
995
- } else {
996
- this.data.f_complete = '已完成'
997
- this.$set('data.f_offsite_time', Util.toStandardTimeString())
998
- this.disableTimer()
999
- }
1000
- }
1001
- //tag
1002
- if(this.data.f_blacklist!='是'){
1003
- delete this.data.f_blocking_cause
1004
- }
1005
- // try {
1006
- let codata = this.getAllDefect()
1007
- //tag
1008
- //tag}`)
1009
- for (let key in codata) {
1010
- if (key.startsWith("device")) {
1011
- //tag)
1012
- codata[key] = []
1013
- }
1014
- }
1015
- //tag}`)
1016
- //tag}`)
1017
- //tag
1018
- if (Vue.android) {
1019
- //tag
1020
- let value = this.$androidUtil.path({
1021
- alias: 'getUserinfomation',
1022
- data: {condition: "f_userinfoid = '" + this.item.f_userinfoid + "' and f_no_checkplan = '无计划安检'"}
1023
- })
1024
- //tag)
1025
- if (this.item.f_no_checkplan == '无计划安检' && this.item.f_no_checkplan != '打回') {
1026
- // let result = this.$androidUtil.bzLogic('SafeSaveNoPaper', {
1027
- // f_check_item_id: this.data.f_check_item_id,
1028
- // f_checker_id: this.data.f_checker_id,
1029
- // f_upload_state:'未传',
1030
- // row: codata
1031
- // })
1032
- //tag
1033
- let isStart = true
1034
- // let res
1035
- // for (let i in this.f_devices) {
1036
- // res = HostApp.organizeJSON({isStart: isStart, isDevice: true, device: this.f_devices[i]})
1037
- // if (res.code == 200) {
1038
- // isStart = false
1039
- // } else {
1040
- // this.$showMessage("保存失败!")
1041
- // }
1042
- // }
1043
- // let result = HostApp.organizeJSON({
1044
- // isStart: false,
1045
- // isJSON: true,
1046
- // jsonstr: {
1047
- // f_check_item_id: this.data.f_check_item_id,
1048
- // f_checker_id: this.data.f_checker_id,
1049
- // f_upload_state: '未传',
1050
- // row: codata
1051
- // }
1052
- // })
1053
- codata.f_devices = this.f_devices
1054
- let param = {
1055
- f_check_item_id: this.data.f_check_item_id,
1056
- f_checker_id: this.data.f_checker_id,
1057
- f_upload_state: '未传',
1058
- row: codata
1059
- }
1060
- //tag)
1061
- let paramStr = JSON.stringify(param)
1062
- // 多长截断一次
1063
- let subLength = 800
1064
- for (let i = 0; i < paramStr.length; i += subLength) {
1065
- HostApp.param_cache(paramStr.substr(i, subLength))
1066
- }
1067
- HostApp.__this__ = this
1068
- HostApp.syncLogic({
1069
- // logic别名,key必须为logic
1070
- 'logic': 'SafeSaveNoPaper',
1071
- // 回调执行方法名,key必须为callback
1072
- 'callback': 'javascript:HostApp.__this__.saveCallBack()',
1073
- // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
1074
- // 执行回调方法传入key为backresult
1075
- // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
1076
- 'backresult': 1
1077
- })
1078
- } else {
1079
- //tag
1080
- let isStart = true
1081
- let res
1082
- //tag)
1083
- // for (let i in this.f_devices) {
1084
- // //tag)
1085
- // for (let j = 0; j < this.f_devices[i].f_items.length; j++) {
1086
- // //tag)
1087
- // }
1088
- // res = HostApp.organizeJSON({isStart: isStart, isDevice: true, device: this.f_devices[i]})
1089
- // //tag)
1090
- // if (res.code == 200) {
1091
- // isStart = false
1092
- // } else {
1093
- // this.$showMessage("保存失败!")
1094
- // }
1095
- // }
1096
- //tag)
1097
- //tag)
1098
- //tag)
1099
- // let result = HostApp.organizeJSON({
1100
- // isStart: false,
1101
- // isJSON: true,
1102
- // jsonstr: {
1103
- // f_check_item_id: this.data.f_check_item_id,
1104
- // f_checker_id: this.data.f_checker_id,
1105
- // row: codata
1106
- // }
1107
- // })
1108
- codata.f_devices = this.f_devices
1109
- let param = {
1110
- f_check_item_id: this.data.f_check_item_id,
1111
- f_checker_id: this.data.f_checker_id,
1112
- row: codata
1113
- }
1114
- //tag)
1115
- let paramStr = JSON.stringify(param)
1116
- // 多长截断一次
1117
- let subLength = 800
1118
- for (let i = 0; i < paramStr.length; i += subLength) {
1119
- HostApp.param_cache(paramStr.substr(i, subLength))
1120
- }
1121
- HostApp.__this__ = this
1122
- HostApp.syncLogic({
1123
- // logic别名,key必须为logic
1124
- 'logic': '保存安检单信息',
1125
- // 回调执行方法名,key必须为callback
1126
- 'callback': 'javascript:HostApp.__this__.saveCallBack()',
1127
- // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
1128
- // 执行回调方法传入key为backresult
1129
- // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
1130
- 'backresult': 1
1131
- })
1132
- }
1133
-
1134
- } else {
1135
- //tag
1136
- let value = this.$androidUtil.path({
1137
- alias: 'getUserinfomation',
1138
- data: {condition: "f_userinfoid = '" + this.item.f_userinfoid + "' and f_no_checkplan = '无计划安检'"}
1139
- })
1140
-
1141
- if (this.item.f_no_checkplan == '无计划安检' && value.data.length == 0 && this.item.f_no_checkplan != '打回') {
1142
- this.$androidUtil.bzLogic('SafeSaveNoPaper', {
1143
- f_check_item_id: this.data.f_check_item_id,
1144
- f_checker_id: this.data.f_checker_id,
1145
- f_upload_state: '未传',
1146
- row: codata
1147
- }).then((res) => {
1148
- if (res.data.code == 200) {
1149
- //保存devices
1150
- this.$androidUtil.bzLogic('getPaperInfo', {
1151
- f_check_item_id: this.data.f_check_item_id
1152
- }).then((res) => {
1153
- //tag
1154
- if (res.data.code == 200) {
1155
-
1156
- let f_paper_id = res.data.data[0].id
1157
- for (let device of this.f_devices) {
1158
- device.f_paper_id = f_paper_id
1159
- //tag
1160
- this.$androidUtil.bzLogic('saveDevice', {
1161
- row: device
1162
- }).then((ret) => {
1163
- //tag
1164
- if (ret.code != 200) {
1165
- // if(this.isUpload){
1166
- // this.isUpload = false
1167
- // }
1168
- //TODO 失败后处理
1169
- this.$showMessage("保存失败!")
1170
- return false
1171
- }
1172
- })
1173
- }
1174
- }
1175
- })
1176
- // this.$showAlert('保存成功!', 'success', 2000)
1177
- this.$showMessage('保存成功!')
1178
- return true
1179
- } else {
1180
- // if(this.isUpload){
1181
- // this.isUpload = false
1182
- // }
1183
- this.$showMessage("保存失败!")
1184
- return false
1185
- }
1186
- })
1187
- } else {
1188
- this.$androidUtil.bzLogic('保存安检单信息', {
1189
- f_check_item_id: this.data.f_check_item_id,
1190
- f_checker_id: this.data.f_checker_id,
1191
- row: codata
1192
- }).then((res) => {
1193
- //tag
1194
- if (res.data.code == 200) {
1195
- //保存devices
1196
- this.$androidUtil.bzLogic('getPaperInfo', {
1197
- f_check_item_id: this.data.f_check_item_id
1198
- }).then((res) => {
1199
- //tag
1200
- if (res.data.code == 200) {
1201
-
1202
- let f_paper_id = res.data.data[0].id
1203
- for (let device of this.f_devices) {
1204
- device.f_paper_id = f_paper_id
1205
- //tag
1206
- this.$androidUtil.bzLogic('saveDevice', {
1207
- row: device
1208
- }).then((ret) => {
1209
- //tag
1210
- if (ret.code != 200) {
1211
- // if(this.isUpload){
1212
- // this.isUpload = false
1213
- // }
1214
- //TODO 失败后处理
1215
- this.$showMessage("保存失败!")
1216
- return false
1217
- }
1218
- })
1219
- }
1220
- }
1221
- })
1222
- // this.$showAlert('保存成功!', 'success', 2000)
1223
- this.$showMessage('保存成功!')
1224
- return true
1225
- } else {
1226
- // if(this.isUpload){
1227
- // this.isUpload = false
1228
- // }
1229
- this.$showMessage("保存失败!")
1230
- return false
1231
- }
1232
- })
1233
- }
1234
- }
1235
- // }catch (e) {
1236
- // //tag)
1237
- // // this.isUpload = false
1238
- // this.$showMessage("保存失败!")
1239
- // }
1240
- },
1241
- runSyncLogic(logic,callback,backresult){
1242
- HostApp.runSyncLogic({
1243
- // logic别名,key必须为logic
1244
- 'logic': logic,
1245
- // 回调执行方法名,key必须为callback
1246
- 'callback': callback,
1247
- // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
1248
- // 执行回调方法传入key为backresult
1249
- // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
1250
- 'backresult':backresult
1251
- })
1252
- },
1253
- logicWithHint(logic,data,callback,backresult){
1254
- HostApp.logicWithHint({
1255
- // logic别名,key必须为logic
1256
- 'logic': logic,
1257
- // 回调执行方法名,key必须为callback
1258
- 'callback': callback,
1259
- // logic执行需要的业务参数
1260
- 'data': data,
1261
- // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
1262
- // 执行回调方法传入key为backresult
1263
- // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
1264
- 'backresult':backresult
1265
- })
1266
- },
1267
- saveCallBack(jo){
1268
- //tag)
1269
- if(jo.state == 'ok'){
1270
- let res = JSON.parse(jo.result)
1271
- //tag)
1272
- if(res.code == 200){
1273
- //tag
1274
- if(!this.onlySave){
1275
- let codata = this.getAllDefect()
1276
- //获取微信推送内容
1277
- // let WxResult = this.getWeixin(codata)
1278
- let haslivedispose = this.$androidUtil.bzLogic('getLiveDispose', {
1279
- f_check_item_id: this.data.f_check_item_id
1280
- })
1281
- //如果是转维修上传,则不做校验,上传完成后自动转维修
1282
- //tag
1283
- //tag
1284
- if(!this.isToRepair){
1285
- if(haslivedispose.data.length > 0 && (this.livedispose == 'true' || this.livedispose == true)){
1286
- //tag
1287
- //tag
1288
- if(!this.isSafeCheckToRepair){
1289
-
1290
- }
1291
- }
1292
- }
1293
- //tag
1294
- for (let key in codata){
1295
- if(key.startsWith("device")){
1296
- codata[key] = []
1297
- }
1298
- }
1299
- //tag}`)
1300
-
1301
- //tag
1302
- // let isStart = true
1303
- // let res
1304
- // for (let i in this.f_devices){
1305
- // res = HostApp.organizeJSON({isStart:isStart,isDevice:true,device:this.f_devices[i]})
1306
- // if(res.code == 200){
1307
- // isStart = false
1308
- // }else{
1309
- // this.$showMessage("上传失败!")
1310
- // return
1311
- // }
1312
- // }
1313
- // let result = HostApp.organizeJSON({
1314
- // isStart:false,
1315
- // isJSON:true,
1316
- // jsonstr:{
1317
- // f_check_item_id: this.data.f_check_item_id,
1318
- // f_checker_id: this.data.f_checker_id,
1319
- // row: codata
1320
- // }
1321
- // })
1322
- codata.f_devices = this.f_devices
1323
- let param = {
1324
- f_check_item_id: this.data.f_check_item_id,
1325
- f_checker_id: this.data.f_checker_id,
1326
- row: codata
1327
- }
1328
- //tag)
1329
- let paramStr = JSON.stringify(param)
1330
- // 多长截断一次
1331
- let subLength = 800
1332
- for (let i = 0; i < paramStr.length; i += subLength) {
1333
- HostApp.param_cache(paramStr.substr(i, subLength))
1334
- }
1335
- HostApp.__this__ = this
1336
- HostApp.syncLogic({
1337
- // logic别名,key必须为logic
1338
- 'logic': '上传安检信息',
1339
- // 回调执行方法名,key必须为callback
1340
- 'callback': 'javascript:HostApp.__this__.uploadCallBack()',
1341
- // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
1342
- // 执行回调方法传入key为backresult
1343
- // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
1344
- 'backresult': 1
1345
- })
1346
- }else{
1347
- this.$showMessage('保存成功!')
1348
- if(this.clickBack){
1349
- this.isStrat = false
1350
- this.$dispatch('confirm')
1351
- //this.$back()
1352
- }
1353
- }
1354
- }else{
1355
- this.$showMessage('保存失败!')
1356
- return
1357
- }
1358
- }else{
1359
- this.$showMessage('服务器内部错误,保存失败!')
1360
- return
1361
- }
1362
- },
1363
- uploadCallBack(jo){
1364
- //获取微信推送路径
1365
- let url = ""
1366
- if(Vue.config.safecheck != undefined) {
1367
- if (Vue.config.safecheck.ApproveConfig != undefined) {
1368
- if (Vue.config.safecheck.ApproveConfig.weixinurl != undefined) {
1369
- url = Vue.config.safecheck.ApproveConfig.weixinurl
1370
- }
1371
- }
1372
- }
1373
- //tag)
1374
- //tag)
1375
- if(jo.state == 'ok'){
1376
- let res = JSON.parse(jo.result)
1377
- //tag)
1378
- //tag)
1379
- if(res.code == 200){
1380
- this.$set('data.f_paper_id', res.id)
1381
- this.isStrat=false
1382
- if(url != ""){
1383
- this.$resetpost(`${url}`,{data:WxResult})
1384
- }
1385
- //tag
1386
- if(this.isToRepair){
1387
- for (let device in this.data){
1388
- if(device.startsWith("device")){
1389
- this.data[device] = []
1390
- if(res.data.length > 0){
1391
- for(let i in res.data[0].f_devices){
1392
- if(this.data[device].length > 0){
1393
- if(this.data[device][0].f_device_type == res.data[0].f_devices[i].f_device_type){
1394
- this.data[device].push(res.data[0].f_devices[i])
1395
- res.data[0].f_devices.splice(i,1)
1396
- }
1397
- }else{
1398
- this.data[device].push(res.data[0].f_devices[i])
1399
- res.data[0].f_devices.splice(i,1)
1400
- }
1401
- }
1402
- }
1403
- }
1404
- }
1405
- this.todo()
1406
- }else{
1407
- this.$showMessage('上传成功!')
1408
- //tag
1409
- this.$dispatch('confirm')
1410
- // this.$back()
1411
- }
1412
- }else if(res.code == 309){
1413
- this.$showMessage('该安检单已作废!')
1414
- //tag
1415
- this.$dispatch('confirm')
1416
- }else if(res.code == 710){
1417
- this.$showMessage('上传照片失败,请检查用户签名或安检照片缺失,如无问题请检查手机当前网络是否正常(多次上传失败请先点击*本地缓存*按钮,在网络通畅情况下统一上传)!')
1418
- return
1419
- }else if(res.code == 711){
1420
- this.$showMessage('该安检单已被管理员调整,请联系管理员!')
1421
- return
1422
- }else if(res.code == 712){
1423
- this.$showMessage('网络异常,请重新上传,多次上传失败请联系管理员!')
1424
- return
1425
- }
1426
- else{
1427
- this.$showMessage('上传失败!')
1428
- }
1429
- }else {
1430
- this.$showMessage('网络异常,上传失败!')
1431
- }
1432
- this.onlySave = true
1433
- },
1434
- safecheckToRepairCallBack(jo){
1435
- //获取微信推送路径
1436
- if(jo.state == 'ok'){
1437
- let res = JSON.parse(jo.result)
1438
- //tag)
1439
- if(res.code == 200){
1440
- //tag
1441
- if(res.data.code == 200){
1442
- this.$showMessage('上传并转维修成功!')
1443
- }else{
1444
- this.$showMessage('上传并转维修成功,回写安检单失败!')
1445
- }
1446
- this.$dispatch('confirm')
1447
- // this.$back()
1448
- }else{
1449
- this.$showMessage('上传失败!')
1450
- this.onlySave = true
1451
- }
1452
- }else{
1453
- this.$showMessage('网络异常,上传失败!')
1454
- this.onlySave = true
1455
- }
1456
- },
1457
- todo(){
1458
- let gen = getRepairParam(this)
1459
- co(gen)
1460
- },
1461
- undo(){
1462
- this.showCheckToRepair = !this.showCheckToRepair
1463
- this.model.serviceacitivity[0].f_reciever = ''
1464
- this.model.serviceacitivity[0].f_meetunit = ''
1465
- this.model.f_repairtype = ''
1466
- this.meading = '转站点'
1467
- },
1468
- disableTimer() {
1469
- if(this.timer) {
1470
- window.clearTimeout(this.timer)
1471
- this.timer = null
1472
- }
1473
- },
1474
- loaded(paper) {
1475
- if(!paper.hasOwnProperty('id')) {
1476
- this.$showMessage("该安检单在手机上已经不存在,可能是卸载过程序。可以进入重新安检,或返回安检计划。")
1477
- this.init()
1478
- } else {
1479
- Util.booleanFilter(paper)
1480
- HostApp.__this__.$set('data', paper)
1481
- HostApp.__this__.$goto('safecheck-userinfo', {}, 'paper-router')
1482
- // 如果打回重检则重新计时
1483
- //tag
1484
- if(HostApp.__this__.role == 'inspect'
1485
- && HostApp.__this__.data.f_approved
1486
- && HostApp.__this__.data.f_approved == '打回') {
1487
- //tag
1488
- HostApp.__this__.data.f_onsite_time = Util.toStandardTimeString()
1489
- HostApp.__this__.tick()
1490
- }
1491
- }
1492
- HostApp.__callback__ = null
1493
- HostApp.__this__ = null
1494
- },
1495
- S4() {
1496
- return (((1+Math.random())*0x10000)|0).toString(16).substring(1);
1497
- },
1498
- extend(initalObj, finalObj) {
1499
- var obj = finalObj || {};
1500
- for (var i in initalObj) {
1501
- var prop = initalObj[i];
1502
-
1503
- // 避免相互引用对象导致死循环,如initalObj.a = initalObj的情况
1504
- if (prop === obj) {
1505
- continue;
1506
- }
1507
-
1508
- if (typeof prop === 'object') {
1509
- if (obj[i]) {
1510
- this.extend(obj[i], prop)
1511
- } else {
1512
- obj[i] = prop;
1513
- }
1514
- }
1515
- }
1516
- return obj;
1517
- },
1518
- // async isoverDate(){
1519
- // let res= await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/sql/androidGetuserinfo`, {data:{
1520
- // condition:"f_plan_item_id='"+this.item.id+"'"
1521
- // }
1522
- // })
1523
- // this.isneedDate=res.data[0]["f_subscribe_date"]
1524
- // },
1525
- putDevices() {
1526
- //tag)
1527
- //tag)
1528
- this.$set('data.approve', "true")
1529
- this.$set('data.writeback', "false")
1530
- if (Vue.config.safecheck != undefined) {
1531
- if (Vue.config.safecheck.ApproveConfig != undefined) {
1532
- if (Vue.config.safecheck.ApproveConfig.approve != undefined) {
1533
- this.$set('data.approve', Vue.config.safecheck.ApproveConfig.approve)
1534
- }
1535
- if (Vue.config.safecheck.ApproveConfig.writeback != undefined) {
1536
- this.$set('data.writeback', Vue.config.safecheck.ApproveConfig.writeback)
1537
- }
1538
- if (Vue.config.safecheck.ApproveConfig.livedispose != undefined) {
1539
- this.livedispose = Vue.config.safecheck.ApproveConfig.livedispose
1540
- }
1541
- }
1542
- //tag
1543
- //tag)
1544
- //tag)
1545
- //tag
1546
- if(this.item.f_user_type == '民用'){
1547
- // 民用户
1548
-
1549
- if (Vue.config.safecheck.DevicesConfig != undefined){
1550
- if(this.item.f_safecheck_type == undefined || this.item.f_safecheck_type == '' || Vue.config.safecheck.SafecheckType == undefined) {
1551
- this.config = this.extend(this.config, Vue.config.safecheck.DevicesConfig)
1552
- }else{
1553
- //tag
1554
- //tag
1555
- //tag
1556
- this.config = this.extend(this.config, Vue.config.safecheck[Vue.config.safecheck.SafecheckType[this.item.f_safecheck_type][this.item.f_user_type]])
1557
- }
1558
- // this.config = this.extend(this.config, Vue.config.safecheck.DevicesConfig)
1559
- }
1560
- }else {
1561
- // 非民用
1562
- if (Vue.config.safecheck.DevicesSetConfig != undefined){
1563
- if(this.item.f_safecheck_type == undefined || this.item.f_safecheck_type == '' || Vue.config.safecheck.SafecheckType == undefined) {
1564
- this.config = this.extend(this.config, Vue.config.safecheck.DevicesSetConfig)
1565
- }else{
1566
- //tag
1567
- //tag
1568
- //tag
1569
- this.config = this.extend(this.config, Vue.config.safecheck[Vue.config.safecheck.SafecheckType[this.item.f_safecheck_type][this.item.f_user_type]])
1570
- }
1571
- //this.config = this.extend(this.config, Vue.config.safecheck.DevicesSetConfig)
1572
- }
1573
- }
1574
-
1575
- }
1576
- //tag)
1577
- // 预留设备项位置
1578
- for (let i in this.config) {
1579
- this.tabs.splice(1,0,null)
1580
- }
1581
- //遍历安检项配置
1582
- for (let i in this.config) {
1583
- //取得安检项索引值
1584
- let n = this.config[i].index
1585
- //tag
1586
- this.devices[n - 1] = {device: i, n: n, checkmust: this.config[i].checkmust}
1587
- this.$set('data.' + 'device' + n, [])
1588
- //tag
1589
- // this.tabs.splice(2 + n - 1, 0,
1590
- // {
1591
- // header:i,
1592
- // complete:'safecheck-devices',
1593
- // class:'repair-details-class',
1594
- // number:n
1595
- // })
1596
- this.tabs[n] = {
1597
- header: i,
1598
- complete: 'safecheck-devices',
1599
- class: 'repair-details-class',
1600
- number: n
1601
- }
1602
-
1603
- if(this.config[i].quantity && this.config[i].quantity >0){
1604
- let items = []
1605
- for (let it in this.config[i].items) {
1606
- //赋值下拉选项
1607
- if (this.config[i].items[it].type == 'selector') {
1608
- for (let op in this.config[i].items[it].options) {
1609
- if (this.config[i].items[it].options[op].isdefault == true) {
1610
- items.push({
1611
- f_defect_level: this.config[i].items[it].options[op].level,
1612
- f_is_defect: this.config[i].items[it].options[op].isdefect,
1613
- f_item_name: it,
1614
- f_item_value: this.config[i].items[it].options[op].data,
1615
- f_path: "",
1616
- type: "selector"
1617
- })
1618
- }
1619
- }
1620
- }
1621
- }
1622
- for(let q =0;q<this.config[i].quantity;q++) {
1623
- this.data['device' + n].push(
1624
- {f_device_type: i, f_items:items}
1625
- )
1626
- }
1627
- }
1628
- // this.data['device' + n].push(
1629
- // {f_device_type: i, f_items: items}
1630
- // )
1631
- n = n + 1
1632
- }
1633
- //tag
1634
- this.faultshow.number = this.tabs.length
1635
- },
1636
- init () {
1637
- //tag
1638
- // this.data.f_noplan_item_id = this.S4()+""+this.S4()+""+this.S4()+""+this.S4()+""+this.S4()+""+this.S4()+""+this.S4()+""+this.S4()
1639
- this.data.ename = Vue.user.ename
1640
- this.data.f_outlets = Vue.user.f_parentname
1641
- this.data.f_meetunit = Vue.user.orgpathnames
1642
- this.data.orgpathstr = Vue.user.orgpathstr
1643
- this.data.f_check_item_id = this.item.id
1644
- this.data.f_check_plan_id = this.f_plan_id
1645
- this.data.f_checker_id = Vue.user.id
1646
- this.data.f_checker_name = Vue.user.name
1647
- this.data.f_check_type = this.item.f_user_type
1648
- this.data.f_safecheck_type = this.item.f_safecheck_type
1649
- //this.data.f_exceed_reason = ''//存放送气超期原因
1650
- //tag
1651
- this.data.f_subcompany = this.item.f_subcompany
1652
- this.data.f_read_instructions=true
1653
- this.data.f_repair_approved = this.item.f_repair_approved
1654
- this.data.f_no_checkplan = this.item.f_no_checkplan
1655
- this.data.f_approved = this.item.f_approved
1656
- this.data.f_filialeid = this.item.f_filialeid
1657
- this.data.f_orgstr = this.item.f_orgstr
1658
- this.data.version = this.item.version
1659
- this.data.f_check_version=this.item.f_check_version
1660
- this.$set('data.f_meters', this.item.f_plan_meters)
1661
- this.$set('data.f_userinfo_code', this.item.f_userinfo_code)
1662
- // 安检状态
1663
- this.$set('data.f_entry_status', '入户')
1664
- this.$set('data.f_usegas', '已使用')
1665
- this.$set('data.f_state',this.item.f_state)
1666
- this.$set('data.f_source', this.source?this.source:'安检')
1667
- //tag
1668
- // 用户信息
1669
- this.$set('data.f_user_name', this.item.f_user_name)
1670
- this.$set('data.f_user_phone', this.item.f_user_phone)
1671
- this.$set('data.f_userinfoid', this.item.f_userinfoid)
1672
- this.$set('data.f_address', this.item.f_address)
1673
- this.$set('data.f_card_id', this.item.f_card_id)
1674
- this.$set('data.f_area', this.item.f_area)
1675
- this.$set('data.f_street', this.item.f_street)
1676
- this.$set('data.f_room', this.item.f_room)
1677
- this.$set('data.f_building', this.item.f_building)
1678
- this.$set('data.f_unit', this.item.f_unit)
1679
- //tag
1680
- this.$set('data.f_floor', this.item.f_floor)
1681
- this.$set('data.f_residential_area' , this.item.f_residential_area)
1682
- this.$set('data.f_idnumber', this.item.f_idnumber)
1683
- this.$set('data.f_comments', this.item.f_comments)
1684
- this.$set('data.f_userproperties', this.item.f_userproperties)
1685
- // this.$set('data.f_user_inhome_time', this.item.f_user_inhome_time)
1686
- // this.$set('data.f_user_check_time', this.item.f_user_check_time)
1687
- // this.$set('data.f_user_spare_phone', this.item.f_user_spare_phone)
1688
- // this.$set('data.f_user_family_remarks', this.item.f_user_family_remarks)
1689
- // this.$set('data.f_user_equipment_remarks', this.item.f_user_equipment_remarks)
1690
- // 处置方式
1691
- //tag
1692
- this.$set('data.f_gas_guidelines', true)
1693
- this.$set('data.f_safety_warning', true)
1694
- this.$set('data.f_gas_manual', true)
1695
- this.$set('data.f_no_gas_device', false)
1696
- this.$set('data.f_close_valve', false)
1697
- this.$set('data.f_unload_battery', false)
1698
- //tag
1699
- if (this.data.f_check_item_id == '' && this.item.f_no_checkplan == '无计划安检') {
1700
- this.data.f_check_item_id = this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4()
1701
- }
1702
- //tag
1703
- if(this.item.f_plan_meters) {
1704
- for (let de in this.devices) {
1705
- if(typeof this.devices[de]=='function'){
1706
- continue
1707
- }
1708
- this.$set('data.device' + this.devices[de].n, [])
1709
- for (let i = 0; i < this.item.f_plan_meters.length; i++) {
1710
- if (this.item.f_plan_meters[i].f_meter_type) {
1711
- //tag)
1712
- if (this.devices[de].device == "燃气表" && this.item.f_plan_meters[i].f_meter_type.indexOf('机表') > 0) {
1713
- this.data['device' + this.devices[de].n].push({
1714
- f_device_type: "燃气表",
1715
- f_items: [
1716
- {
1717
- f_defect_level: null,
1718
- f_device_id: "",
1719
- f_is_defect: "",
1720
- f_item_name: "基表编号",
1721
- f_item_value: this.item.f_plan_meters[i].f_meter_no,
1722
- f_path: "",
1723
- type: "number"
1724
- },
1725
- {
1726
- f_defect_level: null,
1727
- f_device_id: "",
1728
- f_is_defect: "",
1729
- f_item_name: "气表型号",
1730
- f_item_value: this.item.f_plan_meters[i].f_diaphgram_size,
1731
- f_path: "",
1732
- type: "string"
1733
- },
1734
- {
1735
- f_defect_level: null,
1736
- f_device_id: "",
1737
- f_is_defect: "",
1738
- f_item_name: "气表品牌",
1739
- f_item_value: this.item.f_plan_meters[i].f_aliasname,
1740
- f_path: "",
1741
- type: "string"
1742
- },
1743
- {
1744
- f_defect_level: null,
1745
- f_device_id: "",
1746
- f_is_defect: "",
1747
- f_item_name: "进气方向",
1748
- f_item_value: this.item.f_plan_meters[i].f_flow_direction,
1749
- f_path: "",
1750
- type: "selector"
1751
- },
1752
- {
1753
- f_defect_level: null,
1754
- f_device_id: "",
1755
- f_is_defect: "",
1756
- f_item_name: "上期表读数",
1757
- f_item_value: this.item.f_plan_meters[i].f_prior_reading,
1758
- f_path: "",
1759
- type: "number"
1760
- },
1761
- {
1762
- f_defect_level: null,
1763
- f_device_id: "",
1764
- f_is_defect: "",
1765
- f_item_name: "表箱号",
1766
- f_item_value: this.item.f_plan_meters[i].f_metertitles,
1767
- f_path: "",
1768
- type: "string"
1769
- }
1770
- ]
1771
- })
1772
- }
1773
- else if (this.devices[de].device == "燃气表") {
1774
- // delete this.config['燃气表']['items']['表底数']
1775
- this.data['device' + this.devices[de].n].push({
1776
- f_device_type: "燃气表",
1777
- f_items: [
1778
- {
1779
- f_defect_level: null,
1780
- f_device_id: "",
1781
- f_is_defect: "",
1782
- f_item_name: "基表编号",
1783
- f_item_value: this.item.f_plan_meters[i].f_meter_no,
1784
- f_path: "",
1785
- type: "number"
1786
- },
1787
- {
1788
- f_defect_level: null,
1789
- f_device_id: "",
1790
- f_is_defect: "",
1791
- f_item_name: "气表型号",
1792
- f_item_value: this.item.f_plan_meters[i].f_diaphgram_size,
1793
- f_path: "",
1794
- type: "string"
1795
- },
1796
- {
1797
- f_defect_level: null,
1798
- f_device_id: "",
1799
- f_is_defect: "",
1800
- f_item_name: "气表品牌",
1801
- f_item_value: this.item.f_plan_meters[i].f_aliasname,
1802
- f_path: "",
1803
- type: "string"
1804
- },
1805
- {
1806
- f_defect_level: null,
1807
- f_device_id: "",
1808
- f_is_defect: "",
1809
- f_item_name: "进气方向",
1810
- f_item_value: this.item.f_plan_meters[i].f_flow_direction,
1811
- f_path: "",
1812
- type: "selector"
1813
- },
1814
- {
1815
- f_defect_level: null,
1816
- f_device_id: "",
1817
- f_is_defect: "",
1818
- f_item_name: "上期表读数",
1819
- f_item_value: this.item.f_plan_meters[i].f_prior_reading,
1820
- f_path: "",
1821
- type: "number"
1822
- },
1823
- {
1824
- f_defect_level: null,
1825
- f_device_id: "",
1826
- f_is_defect: "",
1827
- f_item_name: "表箱号",
1828
- f_item_value: this.item.f_plan_meters[i].f_metertitles,
1829
- f_path: "",
1830
- type: "string"
1831
- }
1832
- ]
1833
- })
1834
- }
1835
- if (this.devices[de].device == "燃气表" && this.item.f_plan_meters[i].f_collection_type) {
1836
- this.data['device' + this.devices[de].n].forEach(device => {
1837
- //tag)
1838
- //tag)
1839
- /*
1840
- "累购气量":{"index":8,"type":"number","readonly":true},
1841
- "累购金额":{"index":8,"type":"number","readonly":true},
1842
- "字轮读数":{"index":9,"type":"number","checkmust": true},
1843
- "已用金额":{"index":9,"type":"number","checkmust": true},
1844
- "剩余气量":{"index":10,"type":"number","checkmust": true},
1845
- "剩余金额":{"index":10,"type":"number","checkmust": true},
1846
- "气量异常差值":{"index":11,"type":"number","readonly": true},
1847
- "金额异常差值":{"index":11,"type":"number","readonly": true}
1848
- */
1849
- if (this.item.f_plan_meters[i].f_collection_type == '按金额') {
1850
- if (!this.data.f_collection_type) {
1851
- this.data.f_collection_type = this.item.f_plan_meters[i].f_collection_type
1852
- delete this.config['燃气表']['items']['累购气量']
1853
- delete this.config['燃气表']['items']['已用气量']
1854
- delete this.config['燃气表']['items']['剩余气量']
1855
- delete this.config['燃气表']['items']['气量异常差值']
1856
- device.f_items.push(
1857
- {
1858
- f_defect_level: null,
1859
- f_device_id: "",
1860
- f_is_defect: "",
1861
- f_item_name: "初始表底",
1862
- isshow: false,
1863
- f_item_value: '',
1864
- f_path: "",
1865
- type: "number"
1866
- },
1867
- {
1868
- f_defect_level: null,
1869
- f_device_id: "",
1870
- f_is_defect: "",
1871
- f_item_name: "累购金额",
1872
- f_item_value: this.item.f_plan_meters[i].f_total_fee,
1873
- f_path: "",
1874
- type: "number"
1875
- },
1876
- {
1877
- f_defect_level: null,
1878
- f_device_id: "",
1879
- f_is_defect: "",
1880
- f_item_name: "已用金额",
1881
- f_item_value: null,
1882
- f_path: "",
1883
- type: "number"
1884
- },
1885
- {
1886
- f_defect_level: null,
1887
- f_device_id: "",
1888
- f_is_defect: "",
1889
- f_item_name: "剩余金额",
1890
- f_item_value: null,
1891
- f_path: "",
1892
- type: "number"
1893
- },
1894
- {
1895
- f_defect_level: null,
1896
- f_device_id: "",
1897
- f_is_defect: "",
1898
- isshow: true,
1899
- f_item_name: "金额异常差值",
1900
- f_item_value: null,
1901
- f_path: "",
1902
- type: "number"
1903
- }
1904
- )
1905
- //tag)
1906
- }
1907
- } else
1908
- if (this.item.f_plan_meters[i].f_collection_type == '按气量') {
1909
- if (!this.data.f_collection_type) {
1910
- this.data.f_collection_type = this.item.f_plan_meters[i].f_collection_type
1911
- delete this.config['燃气表']['items']['累购金额']
1912
- delete this.config['燃气表']['items']['已用金额']
1913
- delete this.config['燃气表']['items']['剩余金额']
1914
- delete this.config['燃气表']['items']['金额异常差值']
1915
- device.f_items.push(
1916
- {
1917
- f_defect_level: null,
1918
- f_device_id: "",
1919
- f_is_defect: "",
1920
- f_item_name: "初始表底",
1921
- isshow: true,
1922
- f_item_value: this.item.f_plan_meters[i].f_initial_base,
1923
- f_path: "",
1924
- type: "number"
1925
- },
1926
- {
1927
- f_defect_level: null,
1928
- f_device_id: "",
1929
- f_is_defect: "",
1930
- f_item_name: "累购气量",
1931
- f_item_value: this.item.f_plan_meters[i].f_total_gas,
1932
- f_path: "",
1933
- type: "number"
1934
- },
1935
- {
1936
- f_defect_level: null,
1937
- f_device_id: "",
1938
- f_is_defect: "",
1939
- f_item_name: "已用气量",
1940
- f_item_value: this.item.f_plan_meters[i].f_meter_base,
1941
- f_path: "",
1942
- type: "number"
1943
- },
1944
- {
1945
- f_defect_level: null,
1946
- f_device_id: "",
1947
- f_is_defect: "",
1948
- f_item_name: "剩余气量",
1949
- f_item_value: "",
1950
- f_path: "",
1951
- type: "number"
1952
- },
1953
- {
1954
- f_defect_level: null,
1955
- f_device_id: "",
1956
- f_is_defect: "",
1957
- isshow: true,
1958
- f_item_name: "气量异常差值",
1959
- f_item_value: null,
1960
- f_path: "",
1961
- type: "number"
1962
- }
1963
- )
1964
- //tag)
1965
- }
1966
- }
1967
- })
1968
- }else if(this.devices[de].device == "燃气表"){
1969
- //tag
1970
- this.data['device' + this.devices[de].n].forEach(device => {
1971
- //tag)
1972
- if (!this.data.f_collection_type) {
1973
- this.data.f_collection_type = this.item.f_plan_meters[i].f_collection_type
1974
- delete this.config['燃气表']['items']['累购金额']
1975
- delete this.config['燃气表']['items']['已用金额']
1976
- delete this.config['燃气表']['items']['剩余金额']
1977
- delete this.config['燃气表']['items']['金额异常差值']
1978
- device.f_items.push(
1979
- {
1980
- f_defect_level: null,
1981
- f_device_id: "",
1982
- f_is_defect: "",
1983
- f_item_name: "初始表底",
1984
- isshow: true,
1985
- f_item_value: this.item.f_plan_meters[i].f_initial_base,
1986
- f_path: "",
1987
- type: "number"
1988
- },
1989
- {
1990
- f_defect_level: null,
1991
- f_device_id: "",
1992
- f_is_defect: "",
1993
- f_item_name: "累购气量",
1994
- f_item_value: this.item.f_plan_meters[i].f_write_totalgas,
1995
- f_path: "",
1996
- type: "number"
1997
- },
1998
- {
1999
- f_defect_level: null,
2000
- f_device_id: "",
2001
- f_is_defect: "",
2002
- f_item_name: "已用气量",
2003
- f_item_value: this.item.f_plan_meters[i].f_meter_base,
2004
- f_path: "",
2005
- type: "number"
2006
- },
2007
- {
2008
- f_defect_level: null,
2009
- f_device_id: "",
2010
- f_is_defect: "",
2011
- f_item_name: "剩余气量",
2012
- f_item_value: '',
2013
- f_path: "",
2014
- type: "number"
2015
- },
2016
- {
2017
- f_defect_level: null,
2018
- f_device_id: "",
2019
- f_is_defect: "",
2020
- f_item_name: "气量异常差值",
2021
- isshow:true,
2022
- f_item_value: null,
2023
- f_path: "",
2024
- type: "number"
2025
- }
2026
- )
2027
- //tag)
2028
- }
2029
- })
2030
- }
2031
- }
2032
- }
2033
- }
2034
- }
2035
- var pardate = {
2036
- _this:this,
2037
- tittle:'安检详情',
2038
- safe:true
2039
- }
2040
- // this.$dispatch('gotoson',pardate)
2041
- //tag
2042
- this.$goto('safecheck-userinfo', {userinfo:this.data}, 'repair')
2043
- }
2044
- },
2045
- watch: {
2046
- 'row' () {
2047
- //tag
2048
- this.copy()
2049
- }
2050
- },
2051
- async ready () {
2052
- //送气超期功能
2053
- //await this.isoverDate()
2054
- this.putDevices()
2055
- //如果已检,则提取安检单
2056
- if (this.item.f_state != '未检') {
2057
- if (this.role == 'inspect' || this.role == 'androidview') {
2058
- HostApp.__callback__ = this.loaded
2059
- HostApp.__this__ = this
2060
- let that = this
2061
- let value = {}
2062
- //tag
2063
- if (this.role == 'inspect') {
2064
- //tag
2065
- if (this.item.f_no_checkplan == '无计划安检') {
2066
- value = this.$androidUtil.path({
2067
- alias: 'getUserinfomation',
2068
- data: {condition: "f_check_item_id = '" + this.item.id + "' and f_no_checkplan = '无计划安检'"}
2069
- })
2070
- } else {
2071
- value = this.$androidUtil.bzLogic('FetchCheckPaper', {id: this.item.id})
2072
- }
2073
- } else {
2074
- value = await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/path/getUserinfomation`, {data: {condition: `id = '${this.item.f_paper_id}'`}})
2075
- }
2076
- Util.replaceFalse(value)
2077
- //tag)
2078
- if (value.data.length != 0) {
2079
- that.$set('data', value.data[0])
2080
- //tag)
2081
- if (this.data.f_collection_type == '按气量') {
2082
- delete this.config['燃气表']['items']['累购金额']
2083
- delete this.config['燃气表']['items']['已用金额']
2084
- delete this.config['燃气表']['items']['剩余金额']
2085
- delete this.config['燃气表']['items']['金额异常差值']
2086
- } else if (this.data.f_collection_type == '按金额') {
2087
- delete this.config['燃气表']['items']['累购气量']
2088
- delete this.config['燃气表']['items']['已用气量']
2089
- delete this.config['燃气表']['items']['剩余气量']
2090
- delete this.config['燃气表']['items']['气量异常差值']
2091
- }
2092
- //tag)
2093
- if (value.data[0].f_devices) {
2094
- for (let da in that.devices) {
2095
- if(typeof that.devices[da]=='function'){
2096
- continue
2097
- }
2098
- that.$set('data.device' + that.devices[da].n, [])
2099
- }
2100
- value.data[0].f_devices.forEach((item) => {
2101
- //tag)
2102
- for (let i in item.f_items) {
2103
- if(typeof item.f_items[i]=='function'){
2104
- continue
2105
- }
2106
- // if (item.f_items[i].f_path != '' && item.f_items[i].f_path != null) {
2107
- // this.picture.push({f_path: item.f_items[i].f_path, name: item.f_items[i].f_item_name})
2108
- // }
2109
- for (let de in that.config[item.f_device_type].items) {
2110
- if(typeof that.config[item.f_device_type].items[de]=='function'){
2111
- continue
2112
- }
2113
- if (item.f_items[i].f_item_name == de) {
2114
- if (that.config[item.f_device_type].items[de].type == 'selector' || that.config[item.f_device_type].items[de].type == 'checkbox') {
2115
- item.f_items[i].f_item_value = []
2116
- } else {
2117
- item.f_items[i].f_item_value = ''
2118
- }
2119
- }
2120
- }
2121
- //tag)
2122
-
2123
- // if (item.f_items[i].f_item_name=='累购气量'){
2124
- // item.f_items[i].f_item_value=this.item.f_plan_meters[0].f_total_gas
2125
- // }else if (item.f_items[i].f_item_name=='累购金额'){
2126
- // item.f_items[i].f_item_value=this.item.f_plan_meters[0].f_total_fee
2127
- // }else if (item.f_items[i].f_item_name=='基表编号'){
2128
- // item.f_items[i].f_item_value=this.item.f_plan_meters[0].f_meter_no
2129
- // }else if (item.f_items[i].f_item_name=='气表品牌'){
2130
- // item.f_items[i].f_item_value=this.item.f_plan_meters[0].f_aliasname
2131
- // }else if (item.f_items[i].f_item_name=='进气方向'){
2132
- // item.f_items[i].f_item_value=this.item.f_plan_meters[0].f_flow_direction
2133
- // }else if (item.f_items[i].f_item_name=='气表型号'){
2134
- // item.f_items[i].f_item_value=this.item.f_plan_meters[0].f_diaphgram_size
2135
- // }else if (item.f_items[i].f_item_name=='表箱号'){
2136
- // item.f_items[i].f_item_value=this.item.f_plan_meters[0].f_metertitles
2137
- // }
2138
- // else{
2139
- for (let j in item.f_items[i].f_item_lists) {
2140
- if(typeof item.f_items[i].f_item_lists[j]=='function'){
2141
- continue
2142
- }
2143
- //tag)
2144
- if (item.f_items[i].f_item_value instanceof Array) {
2145
- item.f_items[i].f_item_value.push(item.f_items[i].f_item_lists[j].f_item_value)
2146
- } else {
2147
- item.f_items[i].f_item_value = item.f_items[i].f_item_lists[j].f_item_value
2148
- }
2149
- }
2150
- // }
2151
-
2152
- }
2153
- for (let de in that.devices) {
2154
- if(typeof that.devices[de]=='function'){
2155
- continue
2156
- }
2157
- if (that.devices[de].device == item.f_device_type) {
2158
- that.data['device' + that.devices[de].n].push({
2159
- f_device_type: item.f_device_type,
2160
- f_items: item.f_items
2161
- })
2162
- //tag)
2163
- }
2164
- }
2165
- })
2166
- if (this.role == 'androidview') {
2167
- Util.androidRatifyPics(that.data, this.$androidUtil.getProxyUrl())
2168
- Util.androidRatifyPics(that.picture, this.$androidUtil.getProxyUrl())
2169
- Util.booleanFilter(that.data)
2170
- }
2171
- //tag)
2172
- }
2173
- } else {
2174
- //tag
2175
- this.init()
2176
- }
2177
- if(this.parentPage && this.parentPage=='CurrentCreate'){
2178
- //tag
2179
- let isRecodr = this.$appdata.getSingleValue('无限制录音'); //单值参数,为true则是开启全程录音
2180
- if (isRecodr) {
2181
- if (isRecodr=='true') {
2182
- this.$showMessage("为了保证服务质量,您的电话将会被全程录音!")
2183
- // 初始化录音
2184
- let resse = this.record()
2185
- }
2186
- }
2187
- }
2188
- //tag
2189
- var pardate = {
2190
- _this:this,
2191
- tittle:'安检详情',
2192
- safe:true
2193
- }
2194
- // this.$dispatch('gotoson',pardate)getImgPath
2195
- this.$goto('safecheck-userinfo', {userinfo:this.data}, 'repair')
2196
- } else {
2197
- let that = this
2198
- let id
2199
- if (this.role == 'view') {
2200
- id = this.item.id
2201
- }
2202
- this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/path/getUserinfomation`, {data:{condition:`id = '${id}'`}}).then((respanse)=> {
2203
- if (respanse.data.length != 0) {
2204
- that.data = Object.assign(that.data,respanse.data[0])
2205
- if(respanse.data[0].f_devices) {
2206
- for (let da in that.devices) {
2207
- that.$set('data.device' + that.devices[da].n, [])
2208
- }
2209
- respanse.data[0].f_devices.forEach((item) => {
2210
- for (let de in that.devices) {
2211
- if (that.devices[de].device == item.f_device_type) {
2212
- that.data['device' + that.devices[de].n].push({
2213
- f_device_type: item.f_device_type,
2214
- f_items: item.f_items
2215
- })
2216
- }
2217
- }
2218
- })
2219
- }
2220
- Util.replaceFalse(that.data)
2221
- Util.booleanFilter(that.data)
2222
- if(this.role == 'view'){
2223
- Util.ratifyPics(that.data)
2224
- }else{
2225
- Util.androidRatifyPics(that.data,this.$androidUtil.getProxyUrl())
2226
- }
2227
- //tag
2228
- } else {
2229
- alert("该安检单可能已不在本地!")
2230
- this.init()
2231
- }
2232
- var pardate = {
2233
- _this:this,
2234
- tittle:'安检详情',
2235
- safe:true
2236
- }
2237
- // this.$dispatch('gotoson',pardate)
2238
- this.$goto('safecheck-userinfo', {userinfo:this.data}, 'paper-router')
2239
- }
2240
- ).catch(
2241
- (respanse) => {
2242
- alert('查找安检单失败')
2243
- })
2244
- }
2245
- }else{
2246
- if(this.parentPage && this.parentPage=='CurrentCreate'){
2247
- //tag
2248
- let isRecodr = this.$appdata.getSingleValue('无限制录音'); //单值参数,为true则是开启全程录音
2249
- if (isRecodr) {
2250
- if (isRecodr=='true') {
2251
- this.$showMessage("为了保证服务质量,您的电话将会被全程录音!")
2252
- // 初始化录音
2253
- let resse = this.record()
2254
- }
2255
- }
2256
- }
2257
- this.init()
2258
- }
2259
- // tbs合并数组
2260
- // if( this.model.serviceacitivity[0].servicerepair.length > 0){
2261
- // for(let i = 0;i < this.model.serviceacitivity[0].servicerepair.length;i++ ){
2262
- //
2263
- // }
2264
- // }
2265
- },
2266
- components: {
2267
- // 'door-service': DoorService,
2268
- // 'repair-info': RepairInfo,
2269
- // 'repair-user-info': RepairUserInfo,
2270
- // 'outlay': Outlay,
2271
- // 'fault-all': FaultAll,
2272
- // 'repair-details':RepairDetails
2273
- // 'pipeline': Pipeline,
2274
- // 'device-service': DeviceService,
2275
- // 'trouble-removal': TroubleRemoval,
2276
- // 'cooking-utensils': CookingUtensils,
2277
- // 'repair-matter-info': RepairMatterInfo,
2278
- // 'first-gas-check': FirstGasCheck,
2279
- // 'tel-change-matter': TelChangeMatter/
2280
- },
2281
- events: {
2282
- 'tijiao': function () {
2283
- // 事件回调内的 `this` 自动绑定到注册它的实例上
2284
- this.confirm()
2285
- }
2286
- }
2287
- }
2288
- </script>
2289
- <style lang="less">
2290
- @import "../../../../src/bootstrap/less/variables.less";
2291
- .noclickbut {
2292
- pointer-events: none;
2293
- }
2294
- .tab-befor-img (@url) {
2295
- content: '';
2296
- background-image: url("@{url}");
2297
- background-size: 20px;
2298
- display: inline-block;
2299
- margin-right: 8px;
2300
- margin-top: 0.3em;
2301
- height: 1.3em;
2302
- width: 1.3em;
2303
- vertical-align: -35%;
2304
- }
2305
-
2306
- @media screen and (min-width: 768px) {
2307
- .android-repair-order > div > ul a {
2308
- font-size: @font-size-h2;
2309
- margin: 0.3em 0;
2310
- }
2311
- }
2312
- .repair-details-class{
2313
- &::before {
2314
- .tab-befor-img("../../../assets/huneiweixiu1.png");
2315
- }
2316
- }
2317
- .repair-info-class {
2318
- &::before {
2319
- .tab-befor-img("../../../assets/baoxiuxinxi1.png");
2320
- }
2321
- }
2322
- .repair-user-info-class {
2323
- &::before {
2324
- .tab-befor-img("../../../assets/jibenxinxi1.png")
2325
- }
2326
- }
2327
-
2328
- .door-service-class {
2329
- &::before {
2330
- .tab-befor-img("../../../assets/huneiweixiu1.png")
2331
- }
2332
- }
2333
-
2334
- .pipeline-class {
2335
- &::before {
2336
- .tab-befor-img("../../../assets/guandao1.png")
2337
- }
2338
- }
2339
-
2340
- .device-service-class {
2341
- &::before {
2342
- .tab-befor-img("../../../assets/shebeiweixiu1.png")
2343
- }
2344
- }
2345
-
2346
- .trouble-removal-class {
2347
- &::before {
2348
- .tab-befor-img("../../../assets/shiguchuli.png")
2349
- }
2350
- }
2351
-
2352
- .cooking-utensils-class {
2353
- &::before {
2354
- .tab-befor-img("../../../assets/zaoju1.png")
2355
- }
2356
- }
2357
-
2358
- .outlay-class {
2359
- &::before {
2360
- .tab-befor-img("../../../assets/feiyong1.png")
2361
- }
2362
- }
2363
-
2364
- .fault-all-class {
2365
- &::before {
2366
- .tab-befor-img("../../../assets/guzhanghuizong1.png")
2367
- }
2368
- }
2369
- .photo-write-class {
2370
- &::before {
2371
- .tab-befor-img("../../../assets/zaoju.png")
2372
- }
2373
- }
2374
- .delay-apply-class {
2375
- &::before {
2376
- .tab-befor-img("../../../assets/yonghubaoxiu.png")
2377
- }
2378
- }
2379
-
2380
- .repair-back-class {
2381
- &::before {
2382
- .tab-befor-img("../../../assets/fanhui.png")
2383
- }
2384
- }
2385
- .butt2 {
2386
- display: inline;
2387
- float: right;
2388
- width: 10px;
2389
- text-align: center;
2390
- align-items:center;
2391
- position: absolute;
2392
- top:50%;
2393
-
2394
- left:90%;
2395
- transform: translate(-50%,-50%);
2396
- }
2397
- .linesty{
2398
- display: inline-block;
2399
- height:1px;
2400
- width:100%;
2401
- background:#d0d0d0;
2402
- overflow:hidden;
2403
- vertical-align: middle;
2404
- }
2405
- .spanboder{
2406
- border-bottom:2px solid #499edf;
2407
- padding-bottom: 8px
2408
- }
2409
- .app-botton {
2410
- position:fixed;
2411
- background: #87b2dd;
2412
- right:8px;
2413
- color: #FFF;
2414
- padding: 8px;
2415
- text-align: center;
2416
- font-size: 1.2em;
2417
- z-index: 10;
2418
- opacity:0.5;
2419
- bottom: 50px;
2420
- margin-top: -10px;
2421
- height: 40px;
2422
- }
2423
- .android-repair-order > div > ul a {
2424
- font-size: 12px;
2425
- color: #333333;
2426
- padding: 13px 16px;
2427
- }
2428
- </style>
1
+ <template>
2
+ <!--<div class="app-botton" @click="back()">-->
3
+ <!--返回<span class="glyphicon glyphicon-menu-right"></span>-->
4
+ <!--</div>-->
5
+ <div id="savebut" class="no-close row android-repair-order" style="background-color: #f9f9f9">
6
+ <div class="col-sm-12 col-xs-12" >
7
+ <ul class="nav nav-tabs" style="background:#ffffff;overflow-y: hidden">
8
+ <li v-for="row in tabs" @click="tabSelect(row,$index)" :class="{active1: row.complete === componentName}"
9
+ v-if="$index < number+1 && $index < faultshow.number" >
10
+ <a href="#" style="background-color: #ffffff;color: #666666;font-size: 16px;font-family:SimSun" :class="row.class">
11
+ <span class="spanboder">{{row.header}}</span>
12
+ <img class="butt2" :src="imgback(row.complete === componentName,row.header === header)"></a>
13
+ <p></p>
14
+ </li>
15
+ <div class="col-sm-12 col-xs-12 repair-bg" v-show="routeShow">
16
+ <route name='repair' :reuse="false"></route>
17
+ </div>
18
+ <li v-for="row in tabs" @click="tabSelect(row,$index)" :class="{active1: row.complete === componentName}"
19
+ v-if="$index > number && $index < faultshow.number ">
20
+ <a href="#" style="background-color: #ffffff;color: #666666;font-size: 16px;font-family:SimSun" :class="row.class">
21
+ <span class="spanboder">{{row.header}}</span>
22
+ <img class="butt2" :src="imgback(row.complete === componentName,row.header === header)"></a>
23
+ <p></p>
24
+ </li>
25
+ <div class="col-sm-12 col-xs-12 repair-bg" v-if="actionEnabled ">
26
+ <div class="auto select-overspread form-horizontal repair-bg " style="padding-bottom:5px;">
27
+ <div class="bq-parent">
28
+ <blockquote class="blockquote">
29
+ <p>安检上传</p>
30
+ </blockquote>
31
+ </div>
32
+ <div class="panel panel-default auto repair-info-content">
33
+ <div class="panel-body ">
34
+ <div class="row auto">
35
+ <!--<div class="col-xs-12 col-sm-12 col-md-12" :style="timeSet(this.isneedDate)?'':'display:none'">-->
36
+ <!--<label>请输入超期原因:</label><br/>-->
37
+ <!--<textarea style="width: 100%;" v-model=""></textarea>-->
38
+ <!--</div>-->
39
+ <div class="col-xs-12 col-sm-12 col-md-12 flex-between" style="margin-top: 20px;">
40
+ <div class="col-xs-3 col-sm-3 col-md-3" v-if="parentPage=='CurrentCreate'">
41
+ <button type="button" name="button" class="col-sm-3 btn btn-primary" @click="save('temp')">
42
+ 临时保存
43
+ </button>
44
+ </div>
45
+ <div class="col-xs-3 col-sm-3 col-md-3">
46
+ <button class="col-sm-3 btn btn-primary" @click="save('finish')">
47
+ 本地缓存
48
+ </button>
49
+ </div>
50
+ <div class="col-xs-3 col-sm-3 col-md-3">
51
+ <button type="button" name="button" class="col-sm-3 btn btn-primary" @click="uploadCheckPaper">
52
+ 上传
53
+ </button>
54
+ </div>
55
+ </div>
56
+ </div>
57
+ </div>
58
+ </div>
59
+ </div>
60
+ </div>
61
+ </ul>
62
+ </div>
63
+
64
+ </div>
65
+ </template>
66
+
67
+ <script>
68
+ // 户内维修
69
+ import Vue from 'vue'
70
+ import * as Util from '../../Util'
71
+ // import DoorService from './DoorService'
72
+ // import Pipeline from './Pipeline'
73
+ // import DeviceService from './DeviceService'
74
+ // import TroubleRemoval from './TroubleRemoval'
75
+ // import FirstGasCheck from './FirstGasCheck'
76
+ // import RepairMatterInfo from './RepairMatterInfo'
77
+ // import TelChangeMatter from './TelChangeMatter'
78
+ import { HttpResetClass } from 'vue-client'
79
+ import co from 'co'
80
+ import $ from "jquery";
81
+ let loadParamGem = async function (self) {
82
+ await self.$LoadParams.loadParam()
83
+ }
84
+
85
+ export default {
86
+ title: '安检单',
87
+ props: ['f_plan_id', 'item', 'role','parentPage','source'],
88
+ // props: ['f_plan_id', 'role'],
89
+ data() {
90
+ return {
91
+ //测试数据
92
+ // f_plan_id:'',
93
+ // role:'inspect',
94
+ // item:{"f_approved_time":null,"f_user_family_remarks":null,"f_street":"测试街道","f_repair_approved_time":null,
95
+ // "f_user_type":null,"f_approved_by":null,"f_card_id":null,"f_remark":null,"f_building":"1","f_batch_number":null,
96
+ // "f_idnumber":null,"f_state":"未检","id":"0EFE0EE2-B155-46F9-8DE0-38C022664A4D","f_complete":null,"f_check_state":null,"f_last_check_state":"拒检",
97
+ // "f_user_inhome_time":null,"f_residential_area":"测试小区1","version":1,"f_processid":null,"f_last_check_result":"{\"result\":\"正常\",\"data\":[]}",
98
+ // "f_area":null,"f_usegas":null,"f_user_phone":"16566546548","f_slice_area":"营业大区","f_approved":"未审核","f_upload_state":"未传","f_user_check_time":null,
99
+ // "f_unit":"1","f_user_spare_phone":null,"f_last_check_date":null,"f_userproperties":null,"f_userfile_id":null,"f_prearranged_date":null,"f_filialeid":"453",
100
+ // "f_branch":null,"f_orgstr":null,"f_plan_year":2020,"f_orgid":null,"f_approval_notified":null,"f_plan_month":4,"f_approved_note":null,"f_filialeids":null,
101
+ // "f_floor":"1","f_flag":null,"f_repair_approved_note":null,"f_userinfo_code":"00000002","f_create_time":"2020-05-10 18:56:03","f_meter_no":"","f_station":null,
102
+ // "f_repair_approved":"未审核","f_no_checkplan":"有计划安检","f_plan_name":"关于","f_repair_approved_by":null,"f_room":"1","f_office":null,"f_comments":null,
103
+ // "f_address":"兰山街道泰盛小区1栋1单元1层1室","id_back":null,"f_userinfoid":"2","f_subcompany":null,"f_addressid":null,"f_user_phone2":null,
104
+ // "f_user_equipment_remarks":null,"f_plan_id":"0819ea6707ad4d9dad217c06a87f4227","f_user_name":"用户二",
105
+ // "f_plan_meters":[{"f_weizhi":null,"f_flow_direction":"右表","f_metertitles":"","f_prior_reading":0,"f_meter_no":"2119035714","f_collection_type":"按金额","f_aliasname":"先锋系统结算物联网表","f_meter_type":"物联网表","version":3,"f_maker":null,"f_metergasnums":0,"f_total_fee":100,"f_diaphgram_size":"G2.5","f_total_gas":0,"id":18663},{"f_weizhi":null,"f_flow_direction":"右表","f_metertitles":"","f_prior_reading":0,"f_meter_no":"2118999901","f_collection_type":"按金额","f_aliasname":"先锋系统结算物联网表","f_meter_type":"物联网表","version":1,"f_maker":null,"f_metergasnums":0,"f_total_fee":0,"f_diaphgram_size":"G2.5","f_total_gas":0,"id":18663}]
106
+ // },
107
+
108
+ data: {
109
+ f_devices: [],
110
+ f_defect_content:'',
111
+ f_recording1_path:''
112
+ },
113
+ updateuserphone:false, //安检时是否更新用户电话
114
+ beforephone:'',
115
+ isUpload:false,
116
+ onlySave:true, //判断保存还是保存并上传
117
+ livedispose:'',
118
+ startClick:false, //开始安检按钮是否可点击
119
+ isStrat: false, //是否开始安检
120
+ checkResult:{},//查询结果
121
+ newcheckResult:{},
122
+ timer: null,
123
+ showModal: false,
124
+ pic_to_be_viewed: '',
125
+ showBack:true,
126
+ devices: [],
127
+ f_devices : [],
128
+ isToRepair:false,
129
+ clickBack:true, //是否点击返回按钮
130
+ isSafeCheckToRepair:false,//是否转维修
131
+ Url:this.$androidUtil.getProxyUrl(),
132
+ detail:{},
133
+ defectDevice:{},
134
+ user:{},
135
+ model: { //转维修数据
136
+ // 一次派单
137
+ serviceacitivity: [{
138
+ f_service_acitivity_type: '派单'
139
+ }],
140
+ f_source:'安检',
141
+ f_service_id: '',
142
+ f_contact_phone: '',
143
+ f_meetunit: '',
144
+ f_phone: '',
145
+ f_user_name: '',
146
+ f_address: '',
147
+ f_repair_date: Util.toStandardTimeString(),
148
+ f_card_id: '',
149
+ // f_department: '', 站点选择
150
+ f_reciever:'',
151
+ f_remarks: '',
152
+ f_user_type: '',
153
+ f_area: '',
154
+ f_unit_name:'',
155
+ f_street: '',
156
+ f_residential_area: '',
157
+ f_building: '',
158
+ f_unit: '',
159
+ f_floor: '',
160
+ f_room: '',
161
+ aState: null,
162
+ f_repairtype: '',
163
+ f_repairitems:{},
164
+ },
165
+ repairitems:[],
166
+ meading:'转站点',
167
+ config: {
168
+ "燃气表":{
169
+ "checkmust":true,
170
+ "index":1,
171
+ "items":{
172
+ //"燃气表照片":{"index":1,"type":"picture","remark":"(拍摄清晰的表具编号、字轮数、剩余气量等)"},
173
+ "基表编号":{"index":1,"type":"string","readonly":true},
174
+ "气表型号":{"index":2,"type":"string","readonly":true},
175
+ "气表品牌":{"index":3,"type":"string","readonly":true},
176
+ "进气方向":{"index":4,"type":"selector","options":[{"data":"左表","isdefault":false},{"data":"右表","isdefault":false}],"checkmust": true},
177
+ "初始表底":{"index":5,"type":"number","isshow":false,"readonly":true},
178
+ "上期表读数":{"index":6,"type":"number","readonly":true,isshow:false},
179
+ "累购气量":{"index":7,"type":"number","readonly":true},
180
+ "累购金额":{"index":7,"type":"number","readonly":true},
181
+ "已用气量":{"index":8,"type":"number","checkmust": false},//基表数
182
+ "已用金额":{"index":8,"type":"number","checkmust": false},
183
+ "剩余气量":{"index":9,"type":"number","checkmust": false},//累购-已用
184
+ //显示屏数 --实际剩余气量
185
+ "剩余金额":{"index":9,"type":"number","checkmust": false},
186
+ "气量异常差值":{"index":10,"type":"number","readonly": true,isshow:true},
187
+ "金额异常差值":{"index":10,"type":"number","readonly": true,isshow:true},
188
+ "表箱号":{"index":11,"type":"string","readonly": true},
189
+ "户累购金额":{"index":12,"type":"number","readonly":true}
190
+ }
191
+ // 注意,配置项的index必须与上面的固定配置保持'顺序'
192
+ },
193
+ // "燃气表2":{
194
+ // "checkmust":true,
195
+ // "index":2,src
196
+ // "items":{
197
+ // "燃气表照片":{"index":1,"type":"picture"},
198
+ // "表品牌":{"index":2,"type":"string","readonly":true},
199
+ // "表号":{"index":3,"type":"string","readonly":true},
200
+ // "表封号":{"index":4,"type":"number","readonly":true},
201
+ // "表型号":{"index":5,"type":"string","readonly":true},
202
+ // "位置":{"index":6,"type":"string","readonly":true},
203
+ // "表底数":{"index":7,"type":"number","readonly":true},
204
+ // "累购气量":{"index":8,"type":"number","readonly":true},
205
+ // "累购金额":{"index":8,"type":"number","readonly":true}
206
+ // }
207
+ // }
208
+ },
209
+ // 维修项
210
+ isneedDate:'',
211
+ routeShow:true,
212
+ number:0,
213
+ shupingshow:false,
214
+ pipeline: {},
215
+ details: [],
216
+ ids: '',
217
+ savevalid: {
218
+ uservalid: false,
219
+ doorvalid: true,
220
+ changetable: false
221
+ },
222
+ doordetails: {},
223
+ devicedetails: {},
224
+ cookdetails: {},
225
+ componentName: 'safecheck-userinfo',
226
+ header:'客户信息',
227
+ tabs: [
228
+ // 参数全部设置成空,在ready时,等model处理好了,再添加
229
+ {
230
+ header: '客户信息',complete:'safecheck-userinfo',class: 'repair-info-class', props: null
231
+ },
232
+ {
233
+ header: '拍照签名',complete:'paper-feedback', class: 'outlay-class', props: null
234
+ }
235
+ ],
236
+ faultshow:{
237
+ number : 8
238
+ } // 控制 故障汇总 在 菜单里显示与否,
239
+ }
240
+ },
241
+ computed: {
242
+ actionEnabled: {
243
+ get() {
244
+ return this.role == 'inspect'
245
+ }
246
+ }
247
+ },
248
+ methods: {
249
+ closely(isdelete){
250
+ try {
251
+ var startOrStopAudioClipStr;
252
+ if (isdelete===true) {
253
+ //tag
254
+ startOrStopAudioClipStr= HostApp.startOrStopAudioClip("----",'停止并删除录音') //停止并删除录音
255
+ }else {
256
+ //tag
257
+ startOrStopAudioClipStr= HostApp.startOrStopAudioClip("----",'停止录音') //停止录音
258
+ }
259
+ if (startOrStopAudioClipStr.code == 200) {
260
+ //tag
261
+ return true;
262
+ }else {
263
+ return false;
264
+ }
265
+ } catch (e) {
266
+ console.error("关闭录音方法异常")
267
+ console.error(e)
268
+ return false;
269
+ }
270
+ },
271
+ // 录音方法
272
+ record() {
273
+ //tag
274
+ if (this.role != 'inspect') {
275
+ if (this.data.f_recording1_path != '') {
276
+ window.location = "/rs/file"+this.data.f_recording1_path
277
+ }
278
+ } else {
279
+ //tag
280
+ let fileName
281
+ if (!this.data.f_recording1_path) {
282
+ fileName = Util.guid() + '.amr'
283
+ } else {
284
+ fileName = Util.getFileName(this.data.f_recording1_path)
285
+ }
286
+ //HostApp.__this__ = this
287
+ /*调用无限制录音模块*/
288
+ let startOrStopState = HostApp.startOrStopAudioClip(fileName,"开始录音")
289
+ //tag
290
+ if (startOrStopState.code == 200) {
291
+ this.data.f_recording1_path = "file:///storage/emulated/0/safecheck/" + fileName
292
+ //tag
293
+ return true;
294
+ }else {
295
+ return false;
296
+ }
297
+ }
298
+ },
299
+ saveNoclick() {
300
+ // 禁用点击事件
301
+ $("#savebut").addClass("noclickbut");
302
+ //tag
303
+
304
+ // 5秒后启用点击事件
305
+ setTimeout(function(){
306
+ $("#savebut").removeClass("noclickbut");
307
+ },5000);
308
+ },
309
+ timeSet(val){
310
+ if (!val){
311
+ return
312
+ }
313
+ let time =new Date(val).getTime()
314
+ let time2=new Date().getTime()
315
+ if (time2>time) {
316
+ return true
317
+ }
318
+ },
319
+ imgback(val,isheader){
320
+ if(val && this.routeShow && isheader){
321
+ return require('../../../assets/xiangxia1.png')
322
+ }else{
323
+ return require('../../../assets/xiangyou1.png')
324
+ }
325
+ },
326
+ changediv(val){
327
+ //tag
328
+ return val
329
+ },
330
+ // 选择tab
331
+ tabSelect (item,number) {
332
+ this.header = item.header
333
+ //tag
334
+ //tag
335
+ //tag
336
+ //tag
337
+ // 处理关闭/显示 内容
338
+ if(this.number == number && !this.routeShow ){
339
+ this.routeShow = true
340
+ }else if(this.number == number && this.routeShow){
341
+ this.routeShow = false
342
+ }else if(this.number != item.complete){
343
+ this.routeShow = true
344
+ }
345
+ this.number = number
346
+ this.componentName = item.complete
347
+ //tag
348
+ if(item.complete == 'safecheck-devices'){
349
+ //tag
350
+ if(item.header != '燃气表' && this.data['device'+item.number].length == 0){
351
+ this.data['device' + item.number].push({})
352
+ }
353
+ //tag
354
+ //tag)
355
+ let idx=this.data['device' + item.number].length - 1
356
+ let itemprops = {
357
+ config:this.config,
358
+ device:this.devices[item.number-1],
359
+ idx:idx,
360
+ role:'inspect'
361
+ }
362
+ //tag
363
+ //tag)
364
+ //tag)
365
+ //tag
366
+ if(this.routeShow){
367
+ this.$goto(item.complete, itemprops, 'repair')
368
+ //tag
369
+ }
370
+ }else{
371
+ //tag
372
+ if(this.routeShow){
373
+ this.$goto(item.complete, {userinfo:this.data}, 'repair')
374
+ }
375
+ }
376
+ this.shupingshow = true
377
+ },
378
+ // 给组件添加参数
379
+ getImgPath() {
380
+ for (var i = 0; i < this.model.serviceacitivity[0].imgs.length; i++) {
381
+ this.ids += this.model.serviceacitivity[0].imgs[i].imgid + ','
382
+ }
383
+ this.ids = this.ids.substring(0, this.ids.length - 1)
384
+ if(this.ids){
385
+ this.getImgGen();
386
+ }
387
+ },
388
+ getImgGen(){
389
+ let http = new HttpResetClass()
390
+ http.load('POST','api/af-safecheck/sql/tel_singleTable_OrderBy', {data: {
391
+ items: '*',
392
+ tablename: 't_files',
393
+ condition: `id in (${this.ids})`,
394
+ orderitem: 'id'
395
+ }}, {resolveMsg: null, rejectMsg: null}).then((res) => {
396
+ for (let i = 0; i < res.data.length; i++) {
397
+ for (let j = 0; j < this.model.serviceacitivity[0].imgs.length; j++) {
398
+ //tag)
399
+ //tag
400
+ if (res.data[i].id.toString() === this.model.serviceacitivity[0].imgs[j].imgid) {
401
+ this.model.serviceacitivity[0].imgs[j] = Object.assign({}, res.data[i], this.model.serviceacitivity[0].imgs[j])
402
+ }
403
+ }
404
+
405
+ }
406
+ })
407
+ },
408
+
409
+ sortDetails(){
410
+ for (let i = 0; i < this.details.length; i++) {
411
+ if (this.details[i].details.length) {
412
+ for (let j = 0; j < this.details[i].details.length; j++) {
413
+ if (this.details[i].details[j].f_type === 'a') {
414
+ this.doordetails = {details: this.details[i].details}
415
+ break
416
+ }
417
+ if (this.details[i].details[j].f_type === 'b') {
418
+ this.devicedetails = {details: this.details[i].details}
419
+ break
420
+ }
421
+ if (this.details[i].details[j].f_type === 'c') {
422
+ this.cookdetails = {details: this.details[i].details}
423
+ break
424
+ }
425
+ }
426
+ }
427
+ }
428
+ },
429
+ // 复制数据
430
+ back () {
431
+ let _this = this
432
+ if(this.issee){
433
+ _this.$back()
434
+ return
435
+ }
436
+ this.$showMessage('所填写内容将不可恢复!', ['confirm', 'cancel']).then((res) => {
437
+ if (res === 'confirm') {
438
+ this.closely()
439
+ _this.$back()
440
+ }
441
+ })
442
+ },
443
+ confirm(){
444
+ this.$dispatch('confirm')
445
+ },
446
+ tick() {
447
+ this.timer = null
448
+ this.data.f_offsite_time = Util.toStandardTimeString()
449
+ this.timer = window.setTimeout(this.tick, 1000)
450
+ },
451
+ getRepairState() {
452
+ let repaired = true
453
+ this.data.f_defects.forEach((defect) => {
454
+ repaired = repaired & (defect.f_ratification == '已处理')
455
+ })
456
+ return repaired
457
+ },
458
+ verifyRepairDefects() {
459
+ this.data.f_repair_date = Util.toStandardTimeString()
460
+ this.data.f_repaired = this.getRepairState() ? '已修' : '在修'
461
+ },
462
+ errorVerify() {
463
+ let hasError = this.verifyState()
464
+ if(hasError)
465
+ return hasError
466
+
467
+ if(this.data.f_entry_status != '入户')
468
+ return null
469
+ hasError = this.verifyUser()
470
+ if(hasError)
471
+ return hasError
472
+ hasError = this.verifyDevices()
473
+ if(hasError)
474
+ return hasError
475
+ hasError = this.verifyFeedback()
476
+ if(hasError)
477
+ return hasError
478
+ },
479
+ verifyState() {
480
+ if(Vue.android && this.data.f_entry_status == '未使用天然气' && this.data.f_nongasuser_path == Vue.nopic)
481
+ return '未使用天然气则必须拍照'
482
+ if(Vue.android && this.data.f_entry_status == '到访不遇' && this.data.f_noanswer_path == Vue.nopic)
483
+ return '到访不遇必须拍照'
484
+ },
485
+ verifyUser() {
486
+ //tag
487
+ //tag
488
+ //tag)
489
+ let prefix = '用户基本信息:'
490
+ if(Util.required(this.data.f_user_name))
491
+ return prefix + '用户名必须输入'
492
+ if(!(/^\d{11}$/.test(this.data.f_user_phone))) {
493
+
494
+ return '请输入正确的电话号码'
495
+ }
496
+ // if(Util.required(this.data.f_residential_area))
497
+ // return prefix + '小区名称必须输入'
498
+ if(Util.required(this.data.f_address))
499
+ return prefix + '地址必须输入'
500
+ },
501
+ verifyDevices() {
502
+ for (let dev in this.config) {
503
+ if (this.config[dev].checkmust == true) {
504
+ let error = true
505
+ for(let device in this.data) {
506
+ if (device.startsWith("device")) {
507
+ for (let item in this.data[device]) {
508
+ if (this.data[device].length != 0 && this.data[device][item].f_device_type == dev) {
509
+ error = false
510
+ }
511
+ }
512
+ }
513
+ }
514
+ if (error) {
515
+ return "请检查" + dev
516
+ }
517
+ }
518
+ }
519
+
520
+ for (let dev in this.config) {
521
+ for(let device in this.data) {
522
+ if (device.startsWith("device")) {
523
+ for (let item in this.data[device]) {
524
+ //检查每一条安检结果
525
+ if (this.data[device].length != 0 && this.data[device][item].f_device_type == dev) {
526
+ for (let i in this.data[device][item].f_items) {
527
+ for (let it in this.config[dev].items) {
528
+ if (it == this.data[device][item].f_items[i].f_item_name) {
529
+ let check=false
530
+ if (!this.data[device][item].f_items[i].f_item_value){
531
+ check=true
532
+ }else if (Array.isArray(this.data[device][item].f_items[i].f_item_value)){
533
+ if (this.data[device][item].f_items[i].f_item_value.length==0){
534
+ check=true
535
+ }
536
+ }
537
+
538
+ if(this.config[dev].items[it].type=='picture' && this.config[dev].items[it].checkmust == true && !this.data[device][item].f_items[i].f_path){
539
+ return dev + (this.data[device].indexOf(this.data[device][item]) + 1) + this.data[device][item].f_items[i].f_item_name + "未检查"
540
+ }
541
+ if (this.config[dev].items[it].type !='picture' && this.config[dev].items[it].checkmust == true && check) {
542
+ return dev + (this.data[device].indexOf(this.data[device][item]) + 1) + this.data[device][item].f_items[i].f_item_name + "未检查"
543
+ }
544
+ }
545
+ }
546
+ //检查安检下拉结果
547
+ if (this.data[device][item].f_items[i].type == 'selector' || this.data[device][item].f_items[i].type == 'radio') {
548
+ if (this.data[device][item].f_items[i].f_is_defect == true && this.data[device][item].f_items[i].f_path == Vue.nopic) {
549
+ return dev + (this.data[device].indexOf(this.data[device][item]) + 1) + this.data[device][item].f_items[i].f_item_name + this.data[device][item].f_items[i].f_item_value + "选中必须拍照"
550
+ }
551
+ }
552
+ }
553
+ }
554
+ }
555
+ }
556
+ }
557
+ }
558
+ },
559
+
560
+
561
+ verifyFeedback() {
562
+ let prefix = '拍照签名:'
563
+ //tag)
564
+ if(Vue.android && (!this.data.f_overall_imgs || this.data.f_overall_imgs.length == 0) && this.data.f_entry_status == '入户')
565
+ return prefix + '必须有安检总体照片'
566
+ if(Vue.android && (!this.data.f_sign_path || this.data.f_sign_path.length == 0) && this.data.f_entry_status == '入户')
567
+ return prefix + '必须有用户签名'
568
+ if(Vue.android && this.data.f_defect_notified && this.data.f_notified_path == Vue.nopic)
569
+ return prefix + '下发安检通知书则必须给通知书拍照'
570
+ if(Vue.android && this.data.f_blacklist && this.data.f_blocking_cause=='')
571
+ return prefix + '请填写拉黑原因'
572
+ if(!this.data.f_client_evaluation && this.data.f_entry_status == '入户')
573
+ return prefix + '请选择服务评价'
574
+ },
575
+
576
+ getAllDefect() {
577
+ let checkResults = {
578
+ result: '正常',
579
+ data: []
580
+ }
581
+ let value = ''
582
+ let codata = JSON.parse(JSON.stringify(this.data))
583
+ //tag)
584
+ //tag)
585
+ codata.f_devices = []
586
+ this.f_devices = []
587
+ for (let device in codata) {
588
+ let f_device_type
589
+ if (device.startsWith("device")) {
590
+ //tag)
591
+ let hasOther = ''
592
+ let otherValue = null
593
+ for (let item in codata[device]) {
594
+ if(typeof codata[device][item]=='function'){
595
+ continue
596
+ }
597
+ codata[device][item].f_create_time = Util.toStandardTimeString()
598
+ // if (codata[device].length > 1) {
599
+ // let j = Number.parseInt(item) + 1
600
+ // f_device_type = `${codata[device][item].f_device_type}${j}`
601
+ // } else {
602
+ // f_device_type = codata[device][item].f_device_type
603
+ // }
604
+ //tag
605
+ //tag
606
+ //tag)
607
+ //tag)
608
+ if(item == 'sum' || item == 'removeEmpty'){
609
+ continue
610
+ }
611
+ for (let i = 0; i < codata[device][item].f_items.length ; i++) {
612
+ //tag
613
+ if(i == 'sum' || i == 'removeEmpty'){
614
+ continue
615
+ }
616
+ //tag)
617
+ var items = codata[device][item].f_items[i]
618
+ items.f_create_time = Util.toStandardTimeString()
619
+ //tag)
620
+ items.f_item_lists = []
621
+ //tag)
622
+ // //tag)
623
+ // //tag} name => ${JSON.stringify(items.f_item_name)} value => ${JSON.stringify(items.f_item_value)}`)
624
+ // console.log(`f_is_defect => ${this.config[codata[device][item]
625
+ // .f_device_type]
626
+ // .items[items.f_item_name]
627
+ // .options
628
+ // .find((option)=>option.data === items.f_item_value)
629
+ // .map((option)=>option.f_is_defect)}`)
630
+ // if (items.f_is_defect && (items.f_is_defect == true || items.f_is_defect == 'true')) {
631
+ // //tag
632
+ // checkResults.result = '有隐患'
633
+ // //tag)
634
+ // //tag)
635
+ // // this.$set('checkResult.' + items.f_item_name, items.f_item_value)
636
+ // this.checkResult[items.f_item_name] = items.f_item_value
637
+ // //tag)
638
+ // // this.$set('checkResultsss.' + items.f_item_name, `${f_device_type}${items.f_item_value}`)
639
+ // // //tag)
640
+ // }
641
+ if (items.type == 'selector') {
642
+ items.selected = []
643
+ } else if (items.type == 'inputSelector') {
644
+ items.selected = ''
645
+ }
646
+ //遍历配置项 将所选隐患项的配置信息放入保存的数据中
647
+ let f_is_defect //是否是隐患
648
+ let f_defect_level //是否是隐患
649
+ let f_item_name = items.f_item_name
650
+ let f_item_value
651
+ let f_is_eliminate //隐患是否消除
652
+ let f_meternumber = ''
653
+ let f_user_defects = [] // 用户所有隐患
654
+ //tag
655
+ //tag
656
+ if (items.type == 'selector' || items.type == 'checkbox' || items.type == 'radio') {
657
+ for (let i in items.f_item_value) {
658
+ if(typeof items.f_item_value[i]=='function'){
659
+ continue
660
+ }
661
+ let configItems = this.config[codata[device][item].f_device_type].items[f_item_name]
662
+ //tag)
663
+ for (let k in configItems.options) {
664
+ if(typeof configItems.options[k]=='function'){
665
+ continue
666
+ }
667
+ //tag)
668
+ if (items.f_item_value[i] === configItems.options[k].data) {
669
+
670
+ f_is_defect = configItems.options[k].isdefect
671
+ f_item_value = items.f_item_value[i]
672
+ f_defect_level = configItems.options[k].level
673
+
674
+ //tag
675
+ //tag
676
+ //tag
677
+
678
+ if (f_is_defect) {
679
+ if (checkResults.result !== '有隐患') {
680
+ checkResults.result = '有隐患'
681
+ }
682
+ if (!this.checkResult.hasOwnProperty(f_item_name)) {
683
+ //tag
684
+ this.checkResult[f_item_name] = []
685
+ }
686
+
687
+ //tag
688
+ this.checkResult[f_item_name].push(f_item_value)
689
+
690
+ }
691
+
692
+ let items_list = {
693
+ f_is_defect: f_is_defect,
694
+ f_item_value: f_item_value,
695
+ f_defect_level: f_defect_level,
696
+ f_is_eliminate: null,
697
+ f_create_time: Util.toStandardTimeString()
698
+ }
699
+ if (!items.f_item_lists) {
700
+ //tag
701
+ items.f_item_lists = []
702
+ //tag)
703
+ if (JSON.stringify(items_list) !== '{}') {
704
+ //tag
705
+ items.f_item_lists.push(items_list)
706
+ }
707
+ } else {
708
+ //tag)
709
+ if (JSON.stringify(items_list) !== '{}') {
710
+ //tag
711
+ items.f_item_lists.push(items_list)
712
+ }
713
+ }
714
+ }
715
+ }
716
+ }
717
+ } else {
718
+ let configItems = this.config[codata[device][item].f_device_type].items[items.f_item_name]
719
+ //tag)
720
+ f_is_defect = configItems.isdefect
721
+ f_defect_level = configItems.level
722
+ f_item_value = items.f_item_value
723
+ //tag
724
+ //tag
725
+ //tag
726
+ let items_list = {
727
+ f_is_defect: f_is_defect,
728
+ f_item_value: f_item_value,
729
+ f_defect_level: f_defect_level,
730
+ f_create_time: Util.toStandardTimeString()
731
+ }
732
+ if (f_is_defect && f_item_value) {
733
+ items.f_is_defect = true
734
+ if (checkResults.result !== '有隐患') {
735
+ checkResults.result = '有隐患'
736
+ }
737
+ if (!this.checkResult.hasOwnProperty(items.f_item_name)) {
738
+ //tag
739
+ this.checkResult[items.f_item_name] = []
740
+ }
741
+
742
+ //tag
743
+ this.checkResult[items.f_item_name].push(f_item_value)
744
+
745
+ }
746
+ //tag)
747
+ //tag)
748
+ if (!items.f_item_lists) {
749
+ //tag
750
+ items.f_item_lists = []
751
+ if (JSON.stringify(items_list) != '{}') {
752
+ //tag
753
+ items.f_item_lists.push(items_list)
754
+ }
755
+ } else {
756
+ // items.f_item_lists[0].f_item_value = f_item_value
757
+ if (JSON.stringify(items_list) != '{}') {
758
+ //tag
759
+ //tag)
760
+ //tag)
761
+ //tag
762
+ items.f_item_lists.push(items_list)
763
+ }
764
+ }
765
+ }
766
+ if (hasOther !== '' && otherValue !== null) {
767
+ //tag
768
+ this.checkResult[hasOther].push(otherValue)
769
+ hasOther = ''
770
+ otherValue = null
771
+ }
772
+ items.f_item_value = ''
773
+ }
774
+ //tag)
775
+ this.f_devices.push(codata[device][item])
776
+ }
777
+ }
778
+ }
779
+ if (this.checkResult) {
780
+ for (let key in this.checkResult) {
781
+ if(typeof this.checkResult[key]=='function'){
782
+ continue
783
+ }
784
+ // 上次安检结果数据组织
785
+ //tag
786
+ //tag
787
+ let temp = {}
788
+ temp[key] = this.checkResult[key].join(',')
789
+ checkResults.data.push(temp)
790
+ // this.newcheckResult[key] = this.checkResult[key]
791
+ // checkResults.data.push(this.newcheckResult)
792
+ //tag)
793
+ // this.newcheckResult = {}
794
+ }
795
+ this.checkResult = {}
796
+ }
797
+ //tag
798
+ //tag)
799
+ codata.f_defect_content = JSON.stringify(checkResults)
800
+ this.data.f_defect_content = JSON.stringify(checkResults)
801
+ //tag
802
+ return codata
803
+ },
804
+ uploadCheckPaper(){
805
+ this.saveNoclick()
806
+ //tag
807
+ //tag
808
+ this.closely(false) // 保存本地,不删除录音文件停止录音
809
+ let errString = this.errorVerify()
810
+ if (errString) {
811
+ //tag
812
+ //tag
813
+ //tag
814
+ if (Vue.android){
815
+ // if(this.isUpload){
816
+ // this.isUpload = false
817
+ // }
818
+ this.$showMessage(errString)
819
+ }
820
+ return
821
+ } else {
822
+ this.$set('data.f_offsite_time', Util.toStandardTimeString())
823
+ this.$set('data.f_upload_time', Util.toStandardTimeString())
824
+ this.$set('data.f_upload_date', Util.toStandardTimeString())
825
+ //tag
826
+ this.data.f_complete = '已完成'
827
+ this.disableTimer()
828
+ }
829
+ //tag
830
+ this.onlySave = false
831
+ let res = this.save()
832
+ // if(res) {
833
+ // try {
834
+ // let codata = this.getAllDefect()
835
+ // //获取微信推送内容
836
+ // let WxResult = this.getWeixin(codata)
837
+ // let haslivedispose = this.$androidUtil.bzLogic('getLiveDispose', {
838
+ // f_check_item_id: this.data.f_check_item_id
839
+ // })
840
+ // //如果是转维修上传,则不做校验,上传完成后自动转维修
841
+ // //tag
842
+ // //tag
843
+ // if(!this.isToRepair){
844
+ // if(haslivedispose.data.length > 0 && (this.livedispose == 'true' || this.livedispose == true)){
845
+ // //tag
846
+ // //tag
847
+ // if(!this.isSafeCheckToRepair){
848
+ // this.$showMessage('有未处理的隐患,请前往拍照上传中将安检转为维修单!')
849
+ // return
850
+ // }
851
+ // }
852
+ // }
853
+ // //tag
854
+ // for (let key in codata){
855
+ // if(key.startsWith("device")){
856
+ // codata[key] = []
857
+ // }
858
+ // }
859
+ // //tag}`)
860
+ //
861
+ // //tag
862
+ // let isStart = true
863
+ // let res
864
+ // for (let i in this.f_devices){
865
+ // res = HostApp.organizeJSON({isStart:isStart,isDevice:true,device:this.f_devices[i]})
866
+ // if(res.code == 200){
867
+ // isStart = false
868
+ // }else{
869
+ // this.$showMessage("保存失败!")
870
+ // }
871
+ // }
872
+ // let result = HostApp.organizeJSON({
873
+ // isStart:false,
874
+ // isJSON:true,
875
+ // jsonstr:{
876
+ // f_check_item_id: this.data.f_check_item_id,
877
+ // f_checker_id: this.data.f_checker_id,
878
+ // row: codata
879
+ // }
880
+ // })
881
+ // if(result.code == 200){
882
+ // HostApp.__this__ = this
883
+ // this.runSyncLogic('上传安检信息','javascript:HostApp.__this__.uploadCallBack()',1)
884
+ // }
885
+ //
886
+ //
887
+ // // let response = this.$androidUtil.bzLogic('上传安检信息', {
888
+ // // f_check_item_id: this.data.f_check_item_id,
889
+ // // f_checker_id: this.data.f_checker_id,
890
+ // // row: codata
891
+ // // })
892
+ // // if (response.code == 200) {
893
+ // // //tag
894
+ // // //tag)
895
+ // // let f_paper_id
896
+ // // if(response.data != '' && response.data != null){
897
+ // // f_paper_id = JSON.parse(response.data).id
898
+ // // }
899
+ // // this.$set('data.f_paper_id', f_paper_id)
900
+ // // //tag
901
+ // // //tag)
902
+ // // //tag
903
+ // // //tag)
904
+ // // for (let device in this.data){
905
+ // // //tag
906
+ // // //tag)
907
+ // // if(device.startsWith("device")){
908
+ // // for(let devices of this.data[device]) {
909
+ // // devices.f_paper_id = f_paper_id
910
+ // // let ret = this.$androidUtil.bzLogic('UpCheckPaperDevices', {
911
+ // // row: devices
912
+ // // })
913
+ // // //tag}`)
914
+ // // if(ret.code == 200){
915
+ // // //tag
916
+ // // devices.f_device_id = JSON.parse(ret.data.f_device_id).id
917
+ // // }
918
+ // // //tag
919
+ // // //tag)
920
+ // // if (ret.code != 200) {
921
+ // // //TODO 失败后处理
922
+ // // // this.isUpload = false
923
+ // // this.$showMessage("上传失败!")
924
+ // // return false
925
+ // // }
926
+ // // }
927
+ // // }
928
+ // // }
929
+ // // // for (let device of this.f_devices) {
930
+ // // // device.f_paper_id = f_paper_id
931
+ // // // //tag
932
+ // // // //tag)
933
+ // // // let ret = this.$androidUtil.bzLogic('UpCheckPaperDevices', {
934
+ // // // row: device
935
+ // // // })
936
+ // // // //tag
937
+ // // // if (ret.code != 200) {
938
+ // // // //TODO 失败后处理
939
+ // // // HostApp.alert("上传失败!")
940
+ // // // return false
941
+ // // // }
942
+ // // // }
943
+ // // let result = this.$androidUtil.bzLogic('FinishUpload',
944
+ // // {
945
+ // // f_check_item_id: this.data.f_check_item_id,
946
+ // // f_userinfo_id: codata.f_userinfoid,
947
+ // // f_last_check_result: codata.f_defect_content
948
+ // // })
949
+ // // if(result.code == 200){
950
+ // // // this.$showAlert('上传成功!', 'success', 2000)
951
+ // // this.$showMessage('上传成功!')
952
+ // // this.isStrat=false
953
+ // // if(url != "" ){
954
+ // // this.$resetpost(`${url}`,{data:WxResult})
955
+ // // }
956
+ // // return true
957
+ // // }else{
958
+ // // // this.isUpload = false
959
+ // // this.$showMessage("上传失败!")
960
+ // // return false
961
+ // // }
962
+ // // }else{
963
+ // // // this.isUpload = false
964
+ // // this.$showMessage("上传失败!")
965
+ // // return false
966
+ // // }
967
+ // }catch (e) {
968
+ // //tag)
969
+ // // this.isUpload = false
970
+ // this.$showMessage("上传失败!")
971
+ // }
972
+ // }
973
+ },
974
+ save(type) {
975
+ //禁用事件
976
+ this.saveNoclick()
977
+ //tag
978
+ //tag
979
+ if(type == 'temp'){
980
+ this.data.f_complete = '未完成'
981
+ // 关闭录音方法
982
+ this.closely(true) //临时保存,删除录音文件并暂停录音
983
+ this.disableTimer()
984
+ }else {
985
+ // 关闭录音方法
986
+ this.closely(false) // 保存本地,不删除录音文件暂停录音
987
+ let errString = this.errorVerify()
988
+ if (errString) {
989
+ //tag
990
+ //tag
991
+ //tag
992
+ if (Vue.android){
993
+ this.$showMessage(errString)
994
+ }
995
+ return
996
+ } else {
997
+ this.data.f_complete = '已完成'
998
+ this.$set('data.f_offsite_time', Util.toStandardTimeString())
999
+ this.disableTimer()
1000
+ }
1001
+ }
1002
+ //tag
1003
+ if(this.data.f_blacklist!='是'){
1004
+ delete this.data.f_blocking_cause
1005
+ }
1006
+ // try {
1007
+ let codata = this.getAllDefect()
1008
+ //tag
1009
+ //tag}`)
1010
+ for (let key in codata) {
1011
+ if (key.startsWith("device")) {
1012
+ //tag)
1013
+ codata[key] = []
1014
+ }
1015
+ }
1016
+ //tag}`)
1017
+ //tag}`)
1018
+ //tag
1019
+ if (Vue.android) {
1020
+ //tag
1021
+ let value = this.$androidUtil.path({
1022
+ alias: 'getUserinfomation',
1023
+ data: {condition: "f_userinfoid = '" + this.item.f_userinfoid + "' and f_no_checkplan = '无计划安检'"}
1024
+ })
1025
+ //tag)
1026
+ if (this.item.f_no_checkplan == '无计划安检' && this.item.f_no_checkplan != '打回') {
1027
+ // let result = this.$androidUtil.bzLogic('SafeSaveNoPaper', {
1028
+ // f_check_item_id: this.data.f_check_item_id,
1029
+ // f_checker_id: this.data.f_checker_id,
1030
+ // f_upload_state:'未传',
1031
+ // row: codata
1032
+ // })
1033
+ //tag
1034
+ let isStart = true
1035
+ // let res
1036
+ // for (let i in this.f_devices) {
1037
+ // res = HostApp.organizeJSON({isStart: isStart, isDevice: true, device: this.f_devices[i]})
1038
+ // if (res.code == 200) {
1039
+ // isStart = false
1040
+ // } else {
1041
+ // this.$showMessage("保存失败!")
1042
+ // }
1043
+ // }
1044
+ // let result = HostApp.organizeJSON({
1045
+ // isStart: false,
1046
+ // isJSON: true,
1047
+ // jsonstr: {
1048
+ // f_check_item_id: this.data.f_check_item_id,
1049
+ // f_checker_id: this.data.f_checker_id,
1050
+ // f_upload_state: '未传',
1051
+ // row: codata
1052
+ // }
1053
+ // })
1054
+ codata.f_devices = this.f_devices
1055
+ let param = {
1056
+ f_check_item_id: this.data.f_check_item_id,
1057
+ f_checker_id: this.data.f_checker_id,
1058
+ f_upload_state: '未传',
1059
+ row: codata
1060
+ }
1061
+ //tag)
1062
+ let paramStr = JSON.stringify(param)
1063
+ // 多长截断一次
1064
+ let subLength = 800
1065
+ for (let i = 0; i < paramStr.length; i += subLength) {
1066
+ HostApp.param_cache(paramStr.substr(i, subLength))
1067
+ }
1068
+ HostApp.__this__ = this
1069
+ HostApp.syncLogic({
1070
+ // logic别名,key必须为logic
1071
+ 'logic': 'SafeSaveNoPaper',
1072
+ // 回调执行方法名,key必须为callback
1073
+ 'callback': 'javascript:HostApp.__this__.saveCallBack()',
1074
+ // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
1075
+ // 执行回调方法传入key为backresult
1076
+ // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
1077
+ 'backresult': 1
1078
+ })
1079
+ } else {
1080
+ //tag
1081
+ let isStart = true
1082
+ let res
1083
+ //tag)
1084
+ // for (let i in this.f_devices) {
1085
+ // //tag)
1086
+ // for (let j = 0; j < this.f_devices[i].f_items.length; j++) {
1087
+ // //tag)
1088
+ // }
1089
+ // res = HostApp.organizeJSON({isStart: isStart, isDevice: true, device: this.f_devices[i]})
1090
+ // //tag)
1091
+ // if (res.code == 200) {
1092
+ // isStart = false
1093
+ // } else {
1094
+ // this.$showMessage("保存失败!")
1095
+ // }
1096
+ // }
1097
+ //tag)
1098
+ //tag)
1099
+ //tag)
1100
+ // let result = HostApp.organizeJSON({
1101
+ // isStart: false,
1102
+ // isJSON: true,
1103
+ // jsonstr: {
1104
+ // f_check_item_id: this.data.f_check_item_id,
1105
+ // f_checker_id: this.data.f_checker_id,
1106
+ // row: codata
1107
+ // }
1108
+ // })
1109
+ codata.f_devices = this.f_devices
1110
+ let param = {
1111
+ f_check_item_id: this.data.f_check_item_id,
1112
+ f_checker_id: this.data.f_checker_id,
1113
+ row: codata
1114
+ }
1115
+ //tag)
1116
+ let paramStr = JSON.stringify(param)
1117
+ // 多长截断一次
1118
+ let subLength = 800
1119
+ for (let i = 0; i < paramStr.length; i += subLength) {
1120
+ HostApp.param_cache(paramStr.substr(i, subLength))
1121
+ }
1122
+ HostApp.__this__ = this
1123
+ HostApp.syncLogic({
1124
+ // logic别名,key必须为logic
1125
+ 'logic': '保存安检单信息',
1126
+ // 回调执行方法名,key必须为callback
1127
+ 'callback': 'javascript:HostApp.__this__.saveCallBack()',
1128
+ // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
1129
+ // 执行回调方法传入key为backresult
1130
+ // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
1131
+ 'backresult': 1
1132
+ })
1133
+ }
1134
+
1135
+ } else {
1136
+ //tag
1137
+ let value = this.$androidUtil.path({
1138
+ alias: 'getUserinfomation',
1139
+ data: {condition: "f_userinfoid = '" + this.item.f_userinfoid + "' and f_no_checkplan = '无计划安检'"}
1140
+ })
1141
+
1142
+ if (this.item.f_no_checkplan == '无计划安检' && value.data.length == 0 && this.item.f_no_checkplan != '打回') {
1143
+ this.$androidUtil.bzLogic('SafeSaveNoPaper', {
1144
+ f_check_item_id: this.data.f_check_item_id,
1145
+ f_checker_id: this.data.f_checker_id,
1146
+ f_upload_state: '未传',
1147
+ row: codata
1148
+ }).then((res) => {
1149
+ if (res.data.code == 200) {
1150
+ //保存devices
1151
+ this.$androidUtil.bzLogic('getPaperInfo', {
1152
+ f_check_item_id: this.data.f_check_item_id
1153
+ }).then((res) => {
1154
+ //tag
1155
+ if (res.data.code == 200) {
1156
+
1157
+ let f_paper_id = res.data.data[0].id
1158
+ for (let device of this.f_devices) {
1159
+ device.f_paper_id = f_paper_id
1160
+ //tag
1161
+ this.$androidUtil.bzLogic('saveDevice', {
1162
+ row: device
1163
+ }).then((ret) => {
1164
+ //tag
1165
+ if (ret.code != 200) {
1166
+ // if(this.isUpload){
1167
+ // this.isUpload = false
1168
+ // }
1169
+ //TODO 失败后处理
1170
+ this.$showMessage("保存失败!")
1171
+ return false
1172
+ }
1173
+ })
1174
+ }
1175
+ }
1176
+ })
1177
+ // this.$showAlert('保存成功!', 'success', 2000)
1178
+ this.$showMessage('保存成功!')
1179
+ return true
1180
+ } else {
1181
+ // if(this.isUpload){
1182
+ // this.isUpload = false
1183
+ // }
1184
+ this.$showMessage("保存失败!")
1185
+ return false
1186
+ }
1187
+ })
1188
+ } else {
1189
+ this.$androidUtil.bzLogic('保存安检单信息', {
1190
+ f_check_item_id: this.data.f_check_item_id,
1191
+ f_checker_id: this.data.f_checker_id,
1192
+ row: codata
1193
+ }).then((res) => {
1194
+ //tag
1195
+ if (res.data.code == 200) {
1196
+ //保存devices
1197
+ this.$androidUtil.bzLogic('getPaperInfo', {
1198
+ f_check_item_id: this.data.f_check_item_id
1199
+ }).then((res) => {
1200
+ //tag
1201
+ if (res.data.code == 200) {
1202
+
1203
+ let f_paper_id = res.data.data[0].id
1204
+ for (let device of this.f_devices) {
1205
+ device.f_paper_id = f_paper_id
1206
+ //tag
1207
+ this.$androidUtil.bzLogic('saveDevice', {
1208
+ row: device
1209
+ }).then((ret) => {
1210
+ //tag
1211
+ if (ret.code != 200) {
1212
+ // if(this.isUpload){
1213
+ // this.isUpload = false
1214
+ // }
1215
+ //TODO 失败后处理
1216
+ this.$showMessage("保存失败!")
1217
+ return false
1218
+ }
1219
+ })
1220
+ }
1221
+ }
1222
+ })
1223
+ // this.$showAlert('保存成功!', 'success', 2000)
1224
+ this.$showMessage('保存成功!')
1225
+ return true
1226
+ } else {
1227
+ // if(this.isUpload){
1228
+ // this.isUpload = false
1229
+ // }
1230
+ this.$showMessage("保存失败!")
1231
+ return false
1232
+ }
1233
+ })
1234
+ }
1235
+ }
1236
+ // }catch (e) {
1237
+ // //tag)
1238
+ // // this.isUpload = false
1239
+ // this.$showMessage("保存失败!")
1240
+ // }
1241
+ },
1242
+ runSyncLogic(logic,callback,backresult){
1243
+ HostApp.runSyncLogic({
1244
+ // logic别名,key必须为logic
1245
+ 'logic': logic,
1246
+ // 回调执行方法名,key必须为callback
1247
+ 'callback': callback,
1248
+ // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
1249
+ // 执行回调方法传入key为backresult
1250
+ // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
1251
+ 'backresult':backresult
1252
+ })
1253
+ },
1254
+ logicWithHint(logic,data,callback,backresult){
1255
+ HostApp.logicWithHint({
1256
+ // logic别名,key必须为logic
1257
+ 'logic': logic,
1258
+ // 回调执行方法名,key必须为callback
1259
+ 'callback': callback,
1260
+ // logic执行需要的业务参数
1261
+ 'data': data,
1262
+ // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
1263
+ // 执行回调方法传入key为backresult
1264
+ // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
1265
+ 'backresult':backresult
1266
+ })
1267
+ },
1268
+ saveCallBack(jo){
1269
+ //tag)
1270
+ if(jo.state == 'ok'){
1271
+ let res = JSON.parse(jo.result)
1272
+ //tag)
1273
+ if(res.code == 200){
1274
+ //tag
1275
+ if(!this.onlySave){
1276
+ let codata = this.getAllDefect()
1277
+ //获取微信推送内容
1278
+ // let WxResult = this.getWeixin(codata)
1279
+ let haslivedispose = this.$androidUtil.bzLogic('getLiveDispose', {
1280
+ f_check_item_id: this.data.f_check_item_id
1281
+ })
1282
+ //如果是转维修上传,则不做校验,上传完成后自动转维修
1283
+ //tag
1284
+ //tag
1285
+ if(!this.isToRepair){
1286
+ if(haslivedispose.data.length > 0 && (this.livedispose == 'true' || this.livedispose == true)){
1287
+ //tag
1288
+ //tag
1289
+ if(!this.isSafeCheckToRepair){
1290
+
1291
+ }
1292
+ }
1293
+ }
1294
+ //tag
1295
+ for (let key in codata){
1296
+ if(key.startsWith("device")){
1297
+ codata[key] = []
1298
+ }
1299
+ }
1300
+ //tag}`)
1301
+
1302
+ //tag
1303
+ // let isStart = true
1304
+ // let res
1305
+ // for (let i in this.f_devices){
1306
+ // res = HostApp.organizeJSON({isStart:isStart,isDevice:true,device:this.f_devices[i]})
1307
+ // if(res.code == 200){
1308
+ // isStart = false
1309
+ // }else{
1310
+ // this.$showMessage("上传失败!")
1311
+ // return
1312
+ // }
1313
+ // }
1314
+ // let result = HostApp.organizeJSON({
1315
+ // isStart:false,
1316
+ // isJSON:true,
1317
+ // jsonstr:{
1318
+ // f_check_item_id: this.data.f_check_item_id,
1319
+ // f_checker_id: this.data.f_checker_id,
1320
+ // row: codata
1321
+ // }
1322
+ // })
1323
+ codata.f_devices = this.f_devices
1324
+ let param = {
1325
+ f_check_item_id: this.data.f_check_item_id,
1326
+ f_checker_id: this.data.f_checker_id,
1327
+ row: codata
1328
+ }
1329
+ //tag)
1330
+ let paramStr = JSON.stringify(param)
1331
+ // 多长截断一次
1332
+ let subLength = 800
1333
+ for (let i = 0; i < paramStr.length; i += subLength) {
1334
+ HostApp.param_cache(paramStr.substr(i, subLength))
1335
+ }
1336
+ HostApp.__this__ = this
1337
+ HostApp.syncLogic({
1338
+ // logic别名,key必须为logic
1339
+ 'logic': '上传安检信息',
1340
+ // 回调执行方法名,key必须为callback
1341
+ 'callback': 'javascript:HostApp.__this__.uploadCallBack()',
1342
+ // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
1343
+ // 执行回调方法传入key为backresult
1344
+ // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
1345
+ 'backresult': 1
1346
+ })
1347
+ }else{
1348
+ this.$showMessage('保存成功!')
1349
+ if(this.clickBack){
1350
+ this.isStrat = false
1351
+ this.$dispatch('confirm')
1352
+ //this.$back()
1353
+ }
1354
+ }
1355
+ }else{
1356
+ this.$showMessage('保存失败!')
1357
+ return
1358
+ }
1359
+ }else{
1360
+ this.$showMessage('服务器内部错误,保存失败!')
1361
+ return
1362
+ }
1363
+ },
1364
+ uploadCallBack(jo){
1365
+ //获取微信推送路径
1366
+ let url = ""
1367
+ if(Vue.config.safecheck != undefined) {
1368
+ if (Vue.config.safecheck.ApproveConfig != undefined) {
1369
+ if (Vue.config.safecheck.ApproveConfig.weixinurl != undefined) {
1370
+ url = Vue.config.safecheck.ApproveConfig.weixinurl
1371
+ }
1372
+ }
1373
+ }
1374
+ //tag)
1375
+ //tag)
1376
+ if(jo.state == 'ok'){
1377
+ let res = JSON.parse(jo.result)
1378
+ //tag)
1379
+ //tag)
1380
+ if(res.code == 200){
1381
+ this.$set('data.f_paper_id', res.id)
1382
+ this.isStrat=false
1383
+ if(url != ""){
1384
+ this.$resetpost(`${url}`,{data:WxResult})
1385
+ }
1386
+ //tag
1387
+ if(this.isToRepair){
1388
+ for (let device in this.data){
1389
+ if(device.startsWith("device")){
1390
+ this.data[device] = []
1391
+ if(res.data.length > 0){
1392
+ for(let i in res.data[0].f_devices){
1393
+ if(this.data[device].length > 0){
1394
+ if(this.data[device][0].f_device_type == res.data[0].f_devices[i].f_device_type){
1395
+ this.data[device].push(res.data[0].f_devices[i])
1396
+ res.data[0].f_devices.splice(i,1)
1397
+ }
1398
+ }else{
1399
+ this.data[device].push(res.data[0].f_devices[i])
1400
+ res.data[0].f_devices.splice(i,1)
1401
+ }
1402
+ }
1403
+ }
1404
+ }
1405
+ }
1406
+ this.todo()
1407
+ }else{
1408
+ this.$showMessage('上传成功!')
1409
+ //tag
1410
+ this.$dispatch('confirm')
1411
+ // this.$back()
1412
+ }
1413
+ }else if(res.code == 309){
1414
+ this.$showMessage('该安检单已作废!')
1415
+ //tag
1416
+ this.$dispatch('confirm')
1417
+ }else if(res.code == 710){
1418
+ this.$showMessage('上传照片失败,请检查用户签名或安检照片缺失,如无问题请检查手机当前网络是否正常(多次上传失败请先点击*本地缓存*按钮,在网络通畅情况下统一上传)!')
1419
+ return
1420
+ }else if(res.code == 711){
1421
+ this.$showMessage('该安检单已被管理员调整,请联系管理员!')
1422
+ return
1423
+ }else if(res.code == 712){
1424
+ this.$showMessage('网络异常,请重新上传,多次上传失败请联系管理员!')
1425
+ return
1426
+ }
1427
+ else{
1428
+ this.$showMessage('上传失败!')
1429
+ }
1430
+ }else {
1431
+ this.$showMessage('网络异常,上传失败!')
1432
+ }
1433
+ this.onlySave = true
1434
+ },
1435
+ safecheckToRepairCallBack(jo){
1436
+ //获取微信推送路径
1437
+ if(jo.state == 'ok'){
1438
+ let res = JSON.parse(jo.result)
1439
+ //tag)
1440
+ if(res.code == 200){
1441
+ //tag
1442
+ if(res.data.code == 200){
1443
+ this.$showMessage('上传并转维修成功!')
1444
+ }else{
1445
+ this.$showMessage('上传并转维修成功,回写安检单失败!')
1446
+ }
1447
+ this.$dispatch('confirm')
1448
+ // this.$back()
1449
+ }else{
1450
+ this.$showMessage('上传失败!')
1451
+ this.onlySave = true
1452
+ }
1453
+ }else{
1454
+ this.$showMessage('网络异常,上传失败!')
1455
+ this.onlySave = true
1456
+ }
1457
+ },
1458
+ todo(){
1459
+ let gen = getRepairParam(this)
1460
+ co(gen)
1461
+ },
1462
+ undo(){
1463
+ this.showCheckToRepair = !this.showCheckToRepair
1464
+ this.model.serviceacitivity[0].f_reciever = ''
1465
+ this.model.serviceacitivity[0].f_meetunit = ''
1466
+ this.model.f_repairtype = ''
1467
+ this.meading = '转站点'
1468
+ },
1469
+ disableTimer() {
1470
+ if(this.timer) {
1471
+ window.clearTimeout(this.timer)
1472
+ this.timer = null
1473
+ }
1474
+ },
1475
+ loaded(paper) {
1476
+ if(!paper.hasOwnProperty('id')) {
1477
+ this.$showMessage("该安检单在手机上已经不存在,可能是卸载过程序。可以进入重新安检,或返回安检计划。")
1478
+ this.init()
1479
+ } else {
1480
+ Util.booleanFilter(paper)
1481
+ HostApp.__this__.$set('data', paper)
1482
+ HostApp.__this__.$goto('safecheck-userinfo', {}, 'paper-router')
1483
+ // 如果打回重检则重新计时
1484
+ //tag
1485
+ if(HostApp.__this__.role == 'inspect'
1486
+ && HostApp.__this__.data.f_approved
1487
+ && HostApp.__this__.data.f_approved == '打回') {
1488
+ //tag
1489
+ HostApp.__this__.data.f_onsite_time = Util.toStandardTimeString()
1490
+ HostApp.__this__.tick()
1491
+ }
1492
+ }
1493
+ HostApp.__callback__ = null
1494
+ HostApp.__this__ = null
1495
+ },
1496
+ S4() {
1497
+ return (((1+Math.random())*0x10000)|0).toString(16).substring(1);
1498
+ },
1499
+ extend(initalObj, finalObj) {
1500
+ var obj = finalObj || {};
1501
+ for (var i in initalObj) {
1502
+ var prop = initalObj[i];
1503
+
1504
+ // 避免相互引用对象导致死循环,如initalObj.a = initalObj的情况
1505
+ if (prop === obj) {
1506
+ continue;
1507
+ }
1508
+
1509
+ if (typeof prop === 'object') {
1510
+ if (obj[i]) {
1511
+ this.extend(obj[i], prop)
1512
+ } else {
1513
+ obj[i] = prop;
1514
+ }
1515
+ }
1516
+ }
1517
+ return obj;
1518
+ },
1519
+ // async isoverDate(){
1520
+ // let res= await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/androidGetuserinfo`, {data:{
1521
+ // condition:"f_plan_item_id='"+this.item.id+"'"
1522
+ // }
1523
+ // })
1524
+ // this.isneedDate=res.data[0]["f_subscribe_date"]
1525
+ // },
1526
+ putDevices() {
1527
+ //tag)
1528
+ //tag)
1529
+ this.$set('data.approve', "true")
1530
+ this.$set('data.writeback', "false")
1531
+ if (Vue.config.safecheck != undefined) {
1532
+ if (Vue.config.safecheck.ApproveConfig != undefined) {
1533
+ if (Vue.config.safecheck.ApproveConfig.approve != undefined) {
1534
+ this.$set('data.approve', Vue.config.safecheck.ApproveConfig.approve)
1535
+ }
1536
+ if (Vue.config.safecheck.ApproveConfig.writeback != undefined) {
1537
+ this.$set('data.writeback', Vue.config.safecheck.ApproveConfig.writeback)
1538
+ }
1539
+ if (Vue.config.safecheck.ApproveConfig.livedispose != undefined) {
1540
+ this.livedispose = Vue.config.safecheck.ApproveConfig.livedispose
1541
+ }
1542
+ }
1543
+ //tag
1544
+ //tag)
1545
+ //tag)
1546
+ //tag
1547
+ if(this.item.f_user_type == '民用'){
1548
+ // 民用户
1549
+
1550
+ if (Vue.config.safecheck.DevicesConfig != undefined){
1551
+ if(this.item.f_safecheck_type == undefined || this.item.f_safecheck_type == '' || Vue.config.safecheck.SafecheckType == undefined) {
1552
+ this.config = this.extend(this.config, Vue.config.safecheck.DevicesConfig)
1553
+ }else{
1554
+ //tag
1555
+ //tag
1556
+ //tag
1557
+ this.config = this.extend(this.config, Vue.config.safecheck[Vue.config.safecheck.SafecheckType[this.item.f_safecheck_type][this.item.f_user_type]])
1558
+ }
1559
+ // this.config = this.extend(this.config, Vue.config.safecheck.DevicesConfig)
1560
+ }
1561
+ }else {
1562
+ // 非民用
1563
+ if (Vue.config.safecheck.DevicesSetConfig != undefined){
1564
+ if(this.item.f_safecheck_type == undefined || this.item.f_safecheck_type == '' || Vue.config.safecheck.SafecheckType == undefined) {
1565
+ this.config = this.extend(this.config, Vue.config.safecheck.DevicesSetConfig)
1566
+ }else{
1567
+ //tag
1568
+ //tag
1569
+ //tag
1570
+ this.config = this.extend(this.config, Vue.config.safecheck[Vue.config.safecheck.SafecheckType[this.item.f_safecheck_type][this.item.f_user_type]])
1571
+ }
1572
+ //this.config = this.extend(this.config, Vue.config.safecheck.DevicesSetConfig)
1573
+ }
1574
+ }
1575
+
1576
+ }
1577
+ //tag)
1578
+ // 预留设备项位置
1579
+ for (let i in this.config) {
1580
+ this.tabs.splice(1,0,null)
1581
+ }
1582
+ //遍历安检项配置
1583
+ for (let i in this.config) {
1584
+ //取得安检项索引值
1585
+ let n = this.config[i].index
1586
+ //tag
1587
+ this.devices[n - 1] = {device: i, n: n, checkmust: this.config[i].checkmust}
1588
+ this.$set('data.' + 'device' + n, [])
1589
+ //tag
1590
+ // this.tabs.splice(2 + n - 1, 0,
1591
+ // {
1592
+ // header:i,
1593
+ // complete:'safecheck-devices',
1594
+ // class:'repair-details-class',
1595
+ // number:n
1596
+ // })
1597
+ this.tabs[n] = {
1598
+ header: i,
1599
+ complete: 'safecheck-devices',
1600
+ class: 'repair-details-class',
1601
+ number: n
1602
+ }
1603
+
1604
+ if(this.config[i].quantity && this.config[i].quantity >0){
1605
+ let items = []
1606
+ for (let it in this.config[i].items) {
1607
+ //赋值下拉选项
1608
+ if (this.config[i].items[it].type == 'selector') {
1609
+ for (let op in this.config[i].items[it].options) {
1610
+ if (this.config[i].items[it].options[op].isdefault == true) {
1611
+ items.push({
1612
+ f_defect_level: this.config[i].items[it].options[op].level,
1613
+ f_is_defect: this.config[i].items[it].options[op].isdefect,
1614
+ f_item_name: it,
1615
+ f_item_value: this.config[i].items[it].options[op].data,
1616
+ f_path: "",
1617
+ type: "selector"
1618
+ })
1619
+ }
1620
+ }
1621
+ }
1622
+ }
1623
+ for(let q =0;q<this.config[i].quantity;q++) {
1624
+ this.data['device' + n].push(
1625
+ {f_device_type: i, f_items:items}
1626
+ )
1627
+ }
1628
+ }
1629
+ // this.data['device' + n].push(
1630
+ // {f_device_type: i, f_items: items}
1631
+ // )
1632
+ n = n + 1
1633
+ }
1634
+ //tag
1635
+ this.faultshow.number = this.tabs.length
1636
+ },
1637
+ init () {
1638
+ //tag
1639
+ // this.data.f_noplan_item_id = this.S4()+""+this.S4()+""+this.S4()+""+this.S4()+""+this.S4()+""+this.S4()+""+this.S4()+""+this.S4()
1640
+ this.data.ename = Vue.user.ename
1641
+ this.data.f_outlets = Vue.user.f_parentname
1642
+ this.data.f_meetunit = Vue.user.orgpathnames
1643
+ this.data.orgpathstr = Vue.user.orgpathstr
1644
+ this.data.f_check_item_id = this.item.id
1645
+ this.data.f_check_plan_id = this.f_plan_id
1646
+ this.data.f_checker_id = Vue.user.id
1647
+ this.data.f_checker_name = Vue.user.name
1648
+ this.data.f_check_type = this.item.f_user_type
1649
+ this.data.f_safecheck_type = this.item.f_safecheck_type
1650
+ //this.data.f_exceed_reason = ''//存放送气超期原因
1651
+ //tag
1652
+ this.data.f_subcompany = this.item.f_subcompany
1653
+ this.data.f_read_instructions=true
1654
+ this.data.f_repair_approved = this.item.f_repair_approved
1655
+ this.data.f_no_checkplan = this.item.f_no_checkplan
1656
+ this.data.f_approved = this.item.f_approved
1657
+ this.data.f_filialeid = this.item.f_filialeid
1658
+ this.data.f_orgstr = this.item.f_orgstr
1659
+ this.data.version = this.item.version
1660
+ this.data.f_check_version=this.item.f_check_version
1661
+ this.$set('data.f_meters', this.item.f_plan_meters)
1662
+ this.$set('data.f_userinfo_code', this.item.f_userinfo_code)
1663
+ // 安检状态
1664
+ this.$set('data.f_entry_status', '入户')
1665
+ this.$set('data.f_usegas', '已使用')
1666
+ this.$set('data.f_state',this.item.f_state)
1667
+ this.$set('data.f_source', this.source?this.source:'安检')
1668
+ //tag
1669
+ // 用户信息
1670
+ this.$set('data.f_user_name', this.item.f_user_name)
1671
+ this.$set('data.f_user_phone', this.item.f_user_phone)
1672
+ this.$set('data.f_userinfoid', this.item.f_userinfoid)
1673
+ this.$set('data.f_address', this.item.f_address)
1674
+ this.$set('data.f_card_id', this.item.f_card_id)
1675
+ this.$set('data.f_area', this.item.f_area)
1676
+ this.$set('data.f_street', this.item.f_street)
1677
+ this.$set('data.f_room', this.item.f_room)
1678
+ this.$set('data.f_building', this.item.f_building)
1679
+ this.$set('data.f_unit', this.item.f_unit)
1680
+ //tag
1681
+ this.$set('data.f_floor', this.item.f_floor)
1682
+ this.$set('data.f_residential_area' , this.item.f_residential_area)
1683
+ this.$set('data.f_idnumber', this.item.f_idnumber)
1684
+ this.$set('data.f_comments', this.item.f_comments)
1685
+ this.$set('data.f_userproperties', this.item.f_userproperties)
1686
+ // this.$set('data.f_user_inhome_time', this.item.f_user_inhome_time)
1687
+ // this.$set('data.f_user_check_time', this.item.f_user_check_time)
1688
+ // this.$set('data.f_user_spare_phone', this.item.f_user_spare_phone)
1689
+ // this.$set('data.f_user_family_remarks', this.item.f_user_family_remarks)
1690
+ // this.$set('data.f_user_equipment_remarks', this.item.f_user_equipment_remarks)
1691
+ // 处置方式
1692
+ //tag
1693
+ this.$set('data.f_gas_guidelines', true)
1694
+ this.$set('data.f_safety_warning', true)
1695
+ this.$set('data.f_gas_manual', true)
1696
+ this.$set('data.f_no_gas_device', false)
1697
+ this.$set('data.f_close_valve', false)
1698
+ this.$set('data.f_unload_battery', false)
1699
+ //tag
1700
+ if (this.data.f_check_item_id == '' && this.item.f_no_checkplan == '无计划安检') {
1701
+ this.data.f_check_item_id = this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4()
1702
+ }
1703
+ //tag
1704
+ if(this.item.f_plan_meters) {
1705
+ for (let de in this.devices) {
1706
+ if(typeof this.devices[de]=='function'){
1707
+ continue
1708
+ }
1709
+ this.$set('data.device' + this.devices[de].n, [])
1710
+ for (let i = 0; i < this.item.f_plan_meters.length; i++) {
1711
+ if (this.item.f_plan_meters[i].f_meter_type) {
1712
+ //tag)
1713
+ if (this.devices[de].device == "燃气表" && this.item.f_plan_meters[i].f_meter_type.indexOf('机表') > 0) {
1714
+ this.data['device' + this.devices[de].n].push({
1715
+ f_device_type: "燃气表",
1716
+ f_items: [
1717
+ {
1718
+ f_defect_level: null,
1719
+ f_device_id: "",
1720
+ f_is_defect: "",
1721
+ f_item_name: "基表编号",
1722
+ f_item_value: this.item.f_plan_meters[i].f_meter_no,
1723
+ f_path: "",
1724
+ type: "number"
1725
+ },
1726
+ {
1727
+ f_defect_level: null,
1728
+ f_device_id: "",
1729
+ f_is_defect: "",
1730
+ f_item_name: "气表型号",
1731
+ f_item_value: this.item.f_plan_meters[i].f_diaphgram_size,
1732
+ f_path: "",
1733
+ type: "string"
1734
+ },
1735
+ {
1736
+ f_defect_level: null,
1737
+ f_device_id: "",
1738
+ f_is_defect: "",
1739
+ f_item_name: "气表品牌",
1740
+ f_item_value: this.item.f_plan_meters[i].f_aliasname,
1741
+ f_path: "",
1742
+ type: "string"
1743
+ },
1744
+ {
1745
+ f_defect_level: null,
1746
+ f_device_id: "",
1747
+ f_is_defect: "",
1748
+ f_item_name: "进气方向",
1749
+ f_item_value: this.item.f_plan_meters[i].f_flow_direction,
1750
+ f_path: "",
1751
+ type: "selector"
1752
+ },
1753
+ {
1754
+ f_defect_level: null,
1755
+ f_device_id: "",
1756
+ f_is_defect: "",
1757
+ f_item_name: "上期表读数",
1758
+ f_item_value: this.item.f_plan_meters[i].f_prior_reading,
1759
+ f_path: "",
1760
+ type: "number"
1761
+ },
1762
+ {
1763
+ f_defect_level: null,
1764
+ f_device_id: "",
1765
+ f_is_defect: "",
1766
+ f_item_name: "表箱号",
1767
+ f_item_value: this.item.f_plan_meters[i].f_metertitles,
1768
+ f_path: "",
1769
+ type: "string"
1770
+ }
1771
+ ]
1772
+ })
1773
+ }
1774
+ else if (this.devices[de].device == "燃气表") {
1775
+ // delete this.config['燃气表']['items']['表底数']
1776
+ this.data['device' + this.devices[de].n].push({
1777
+ f_device_type: "燃气表",
1778
+ f_items: [
1779
+ {
1780
+ f_defect_level: null,
1781
+ f_device_id: "",
1782
+ f_is_defect: "",
1783
+ f_item_name: "基表编号",
1784
+ f_item_value: this.item.f_plan_meters[i].f_meter_no,
1785
+ f_path: "",
1786
+ type: "number"
1787
+ },
1788
+ {
1789
+ f_defect_level: null,
1790
+ f_device_id: "",
1791
+ f_is_defect: "",
1792
+ f_item_name: "气表型号",
1793
+ f_item_value: this.item.f_plan_meters[i].f_diaphgram_size,
1794
+ f_path: "",
1795
+ type: "string"
1796
+ },
1797
+ {
1798
+ f_defect_level: null,
1799
+ f_device_id: "",
1800
+ f_is_defect: "",
1801
+ f_item_name: "气表品牌",
1802
+ f_item_value: this.item.f_plan_meters[i].f_aliasname,
1803
+ f_path: "",
1804
+ type: "string"
1805
+ },
1806
+ {
1807
+ f_defect_level: null,
1808
+ f_device_id: "",
1809
+ f_is_defect: "",
1810
+ f_item_name: "进气方向",
1811
+ f_item_value: this.item.f_plan_meters[i].f_flow_direction,
1812
+ f_path: "",
1813
+ type: "selector"
1814
+ },
1815
+ {
1816
+ f_defect_level: null,
1817
+ f_device_id: "",
1818
+ f_is_defect: "",
1819
+ f_item_name: "上期表读数",
1820
+ f_item_value: this.item.f_plan_meters[i].f_prior_reading,
1821
+ f_path: "",
1822
+ type: "number"
1823
+ },
1824
+ {
1825
+ f_defect_level: null,
1826
+ f_device_id: "",
1827
+ f_is_defect: "",
1828
+ f_item_name: "表箱号",
1829
+ f_item_value: this.item.f_plan_meters[i].f_metertitles,
1830
+ f_path: "",
1831
+ type: "string"
1832
+ }
1833
+ ]
1834
+ })
1835
+ }
1836
+ if (this.devices[de].device == "燃气表" && this.item.f_plan_meters[i].f_collection_type) {
1837
+ this.data['device' + this.devices[de].n].forEach(device => {
1838
+ //tag)
1839
+ //tag)
1840
+ /*
1841
+ "累购气量":{"index":8,"type":"number","readonly":true},
1842
+ "累购金额":{"index":8,"type":"number","readonly":true},
1843
+ "字轮读数":{"index":9,"type":"number","checkmust": true},
1844
+ "已用金额":{"index":9,"type":"number","checkmust": true},
1845
+ "剩余气量":{"index":10,"type":"number","checkmust": true},
1846
+ "剩余金额":{"index":10,"type":"number","checkmust": true},
1847
+ "气量异常差值":{"index":11,"type":"number","readonly": true},
1848
+ "金额异常差值":{"index":11,"type":"number","readonly": true}
1849
+ */
1850
+ if (this.item.f_plan_meters[i].f_collection_type == '按金额') {
1851
+ if (!this.data.f_collection_type) {
1852
+ this.data.f_collection_type = this.item.f_plan_meters[i].f_collection_type
1853
+ delete this.config['燃气表']['items']['累购气量']
1854
+ delete this.config['燃气表']['items']['已用气量']
1855
+ delete this.config['燃气表']['items']['剩余气量']
1856
+ delete this.config['燃气表']['items']['气量异常差值']
1857
+ device.f_items.push(
1858
+ {
1859
+ f_defect_level: null,
1860
+ f_device_id: "",
1861
+ f_is_defect: "",
1862
+ f_item_name: "初始表底",
1863
+ isshow: false,
1864
+ f_item_value: '',
1865
+ f_path: "",
1866
+ type: "number"
1867
+ },
1868
+ {
1869
+ f_defect_level: null,
1870
+ f_device_id: "",
1871
+ f_is_defect: "",
1872
+ f_item_name: "累购金额",
1873
+ f_item_value: this.item.f_plan_meters[i].f_total_fee,
1874
+ f_path: "",
1875
+ type: "number"
1876
+ },
1877
+ {
1878
+ f_defect_level: null,
1879
+ f_device_id: "",
1880
+ f_is_defect: "",
1881
+ f_item_name: "户累购金额",
1882
+ f_item_value: this.item.f_plan_meters[i].f_total_fee_all,
1883
+ f_path: "",
1884
+ type: "number"
1885
+ },
1886
+ {
1887
+ f_defect_level: null,
1888
+ f_device_id: "",
1889
+ f_is_defect: "",
1890
+ f_item_name: "已用金额",
1891
+ f_item_value: null,
1892
+ f_path: "",
1893
+ type: "number"
1894
+ },
1895
+ {
1896
+ f_defect_level: null,
1897
+ f_device_id: "",
1898
+ f_is_defect: "",
1899
+ f_item_name: "剩余金额",
1900
+ f_item_value: null,
1901
+ f_path: "",
1902
+ type: "number"
1903
+ },
1904
+ {
1905
+ f_defect_level: null,
1906
+ f_device_id: "",
1907
+ f_is_defect: "",
1908
+ isshow: true,
1909
+ f_item_name: "金额异常差值",
1910
+ f_item_value: null,
1911
+ f_path: "",
1912
+ type: "number"
1913
+ }
1914
+ )
1915
+ //tag)
1916
+ }
1917
+ } else
1918
+ if (this.item.f_plan_meters[i].f_collection_type == '按气量') {
1919
+ if (!this.data.f_collection_type) {
1920
+ this.data.f_collection_type = this.item.f_plan_meters[i].f_collection_type
1921
+ delete this.config['燃气表']['items']['累购金额']
1922
+ delete this.config['燃气表']['items']['已用金额']
1923
+ delete this.config['燃气表']['items']['剩余金额']
1924
+ delete this.config['燃气表']['items']['金额异常差值']
1925
+ device.f_items.push(
1926
+ {
1927
+ f_defect_level: null,
1928
+ f_device_id: "",
1929
+ f_is_defect: "",
1930
+ f_item_name: "初始表底",
1931
+ isshow: true,
1932
+ f_item_value: this.item.f_plan_meters[i].f_initial_base,
1933
+ f_path: "",
1934
+ type: "number"
1935
+ },
1936
+ {
1937
+ f_defect_level: null,
1938
+ f_device_id: "",
1939
+ f_is_defect: "",
1940
+ f_item_name: "累购气量",
1941
+ f_item_value: this.item.f_plan_meters[i].f_total_gas,
1942
+ f_path: "",
1943
+ type: "number"
1944
+ },
1945
+ {
1946
+ f_defect_level: null,
1947
+ f_device_id: "",
1948
+ f_is_defect: "",
1949
+ f_item_name: "已用气量",
1950
+ f_item_value: this.item.f_plan_meters[i].f_meter_base,
1951
+ f_path: "",
1952
+ type: "number"
1953
+ },
1954
+ {
1955
+ f_defect_level: null,
1956
+ f_device_id: "",
1957
+ f_is_defect: "",
1958
+ f_item_name: "户累购金额",
1959
+ f_item_value: this.item.f_plan_meters[i].f_total_fee_all,
1960
+ f_path: "",
1961
+ type: "number"
1962
+ },
1963
+ {
1964
+ f_defect_level: null,
1965
+ f_device_id: "",
1966
+ f_is_defect: "",
1967
+ f_item_name: "剩余气量",
1968
+ f_item_value: "",
1969
+ f_path: "",
1970
+ type: "number"
1971
+ },
1972
+ {
1973
+ f_defect_level: null,
1974
+ f_device_id: "",
1975
+ f_is_defect: "",
1976
+ isshow: true,
1977
+ f_item_name: "气量异常差值",
1978
+ f_item_value: null,
1979
+ f_path: "",
1980
+ type: "number"
1981
+ }
1982
+ )
1983
+ //tag)
1984
+ }
1985
+ }
1986
+ })
1987
+ }else if(this.devices[de].device == "燃气表"){
1988
+ //tag
1989
+ this.data['device' + this.devices[de].n].forEach(device => {
1990
+ //tag)
1991
+ if (!this.data.f_collection_type) {
1992
+ this.data.f_collection_type = this.item.f_plan_meters[i].f_collection_type
1993
+ delete this.config['燃气表']['items']['累购金额']
1994
+ delete this.config['燃气表']['items']['已用金额']
1995
+ delete this.config['燃气表']['items']['剩余金额']
1996
+ delete this.config['燃气表']['items']['金额异常差值']
1997
+ device.f_items.push(
1998
+ {
1999
+ f_defect_level: null,
2000
+ f_device_id: "",
2001
+ f_is_defect: "",
2002
+ f_item_name: "初始表底",
2003
+ isshow: true,
2004
+ f_item_value: this.item.f_plan_meters[i].f_initial_base,
2005
+ f_path: "",
2006
+ type: "number"
2007
+ },
2008
+ {
2009
+ f_defect_level: null,
2010
+ f_device_id: "",
2011
+ f_is_defect: "",
2012
+ f_item_name: "累购气量",
2013
+ f_item_value: this.item.f_plan_meters[i].f_write_totalgas,
2014
+ f_path: "",
2015
+ type: "number"
2016
+ },
2017
+ {
2018
+ f_defect_level: null,
2019
+ f_device_id: "",
2020
+ f_is_defect: "",
2021
+ f_item_name: "已用气量",
2022
+ f_item_value: this.item.f_plan_meters[i].f_meter_base,
2023
+ f_path: "",
2024
+ type: "number"
2025
+ },
2026
+ {
2027
+ f_defect_level: null,
2028
+ f_device_id: "",
2029
+ f_is_defect: "",
2030
+ f_item_name: "户累购金额",
2031
+ f_item_value: this.item.f_plan_meters[i].f_total_fee_all,
2032
+ f_path: "",
2033
+ type: "number"
2034
+ },
2035
+ {
2036
+ f_defect_level: null,
2037
+ f_device_id: "",
2038
+ f_is_defect: "",
2039
+ f_item_name: "剩余气量",
2040
+ f_item_value: '',
2041
+ f_path: "",
2042
+ type: "number"
2043
+ },
2044
+ {
2045
+ f_defect_level: null,
2046
+ f_device_id: "",
2047
+ f_is_defect: "",
2048
+ f_item_name: "气量异常差值",
2049
+ isshow:true,
2050
+ f_item_value: null,
2051
+ f_path: "",
2052
+ type: "number"
2053
+ }
2054
+ )
2055
+ //tag)
2056
+ }
2057
+ })
2058
+ }
2059
+ }
2060
+ }
2061
+ }
2062
+ }
2063
+ var pardate = {
2064
+ _this:this,
2065
+ tittle:'安检详情',
2066
+ safe:true
2067
+ }
2068
+ // this.$dispatch('gotoson',pardate)
2069
+ //tag
2070
+ this.$goto('safecheck-userinfo', {userinfo:this.data}, 'repair')
2071
+ }
2072
+ },
2073
+ watch: {
2074
+ 'row' () {
2075
+ //tag
2076
+ this.copy()
2077
+ }
2078
+ },
2079
+ async ready () {
2080
+ //送气超期功能
2081
+ //await this.isoverDate()
2082
+ this.putDevices()
2083
+ //如果已检,则提取安检单
2084
+ if (this.item.f_state != '未检') {
2085
+ if (this.role == 'inspect' || this.role == 'androidview') {
2086
+ HostApp.__callback__ = this.loaded
2087
+ HostApp.__this__ = this
2088
+ let that = this
2089
+ let value = {}
2090
+ //tag
2091
+ if (this.role == 'inspect') {
2092
+ //tag
2093
+ if (this.item.f_no_checkplan == '无计划安检') {
2094
+ value = this.$androidUtil.path({
2095
+ alias: 'getUserinfomation',
2096
+ data: {condition: "f_check_item_id = '" + this.item.id + "' and f_no_checkplan = '无计划安检'"}
2097
+ })
2098
+ } else {
2099
+ value = this.$androidUtil.bzLogic('FetchCheckPaper', {id: this.item.id})
2100
+ }
2101
+ } else {
2102
+ value = await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/path/getUserinfomation`, {data: {condition: `id = '${this.item.f_paper_id}'`}})
2103
+ }
2104
+ Util.replaceFalse(value)
2105
+ //tag)
2106
+ if (value.data.length != 0) {
2107
+ that.$set('data', value.data[0])
2108
+ //tag)
2109
+ if (this.data.f_collection_type == '按气量') {
2110
+ delete this.config['燃气表']['items']['累购金额']
2111
+ delete this.config['燃气表']['items']['已用金额']
2112
+ delete this.config['燃气表']['items']['剩余金额']
2113
+ delete this.config['燃气表']['items']['金额异常差值']
2114
+ } else if (this.data.f_collection_type == '按金额') {
2115
+ delete this.config['燃气表']['items']['累购气量']
2116
+ delete this.config['燃气表']['items']['已用气量']
2117
+ delete this.config['燃气表']['items']['剩余气量']
2118
+ delete this.config['燃气表']['items']['气量异常差值']
2119
+ }
2120
+ //tag)
2121
+ if (value.data[0].f_devices) {
2122
+ for (let da in that.devices) {
2123
+ if(typeof that.devices[da]=='function'){
2124
+ continue
2125
+ }
2126
+ that.$set('data.device' + that.devices[da].n, [])
2127
+ }
2128
+ value.data[0].f_devices.forEach((item) => {
2129
+ //tag)
2130
+ for (let i in item.f_items) {
2131
+ if(typeof item.f_items[i]=='function'){
2132
+ continue
2133
+ }
2134
+ // if (item.f_items[i].f_path != '' && item.f_items[i].f_path != null) {
2135
+ // this.picture.push({f_path: item.f_items[i].f_path, name: item.f_items[i].f_item_name})
2136
+ // }
2137
+ for (let de in that.config[item.f_device_type].items) {
2138
+ if(typeof that.config[item.f_device_type].items[de]=='function'){
2139
+ continue
2140
+ }
2141
+ if (item.f_items[i].f_item_name == de) {
2142
+ if (that.config[item.f_device_type].items[de].type == 'selector' || that.config[item.f_device_type].items[de].type == 'checkbox') {
2143
+ item.f_items[i].f_item_value = []
2144
+ } else {
2145
+ item.f_items[i].f_item_value = ''
2146
+ }
2147
+ }
2148
+ }
2149
+ //tag)
2150
+
2151
+ // if (item.f_items[i].f_item_name=='累购气量'){
2152
+ // item.f_items[i].f_item_value=this.item.f_plan_meters[0].f_total_gas
2153
+ // }else if (item.f_items[i].f_item_name=='累购金额'){
2154
+ // item.f_items[i].f_item_value=this.item.f_plan_meters[0].f_total_fee
2155
+ // }else if (item.f_items[i].f_item_name=='基表编号'){
2156
+ // item.f_items[i].f_item_value=this.item.f_plan_meters[0].f_meter_no
2157
+ // }else if (item.f_items[i].f_item_name=='气表品牌'){
2158
+ // item.f_items[i].f_item_value=this.item.f_plan_meters[0].f_aliasname
2159
+ // }else if (item.f_items[i].f_item_name=='进气方向'){
2160
+ // item.f_items[i].f_item_value=this.item.f_plan_meters[0].f_flow_direction
2161
+ // }else if (item.f_items[i].f_item_name=='气表型号'){
2162
+ // item.f_items[i].f_item_value=this.item.f_plan_meters[0].f_diaphgram_size
2163
+ // }else if (item.f_items[i].f_item_name=='表箱号'){
2164
+ // item.f_items[i].f_item_value=this.item.f_plan_meters[0].f_metertitles
2165
+ // }
2166
+ // else{
2167
+ for (let j in item.f_items[i].f_item_lists) {
2168
+ if(typeof item.f_items[i].f_item_lists[j]=='function'){
2169
+ continue
2170
+ }
2171
+ //tag)
2172
+ if (item.f_items[i].f_item_value instanceof Array) {
2173
+ item.f_items[i].f_item_value.push(item.f_items[i].f_item_lists[j].f_item_value)
2174
+ } else {
2175
+ item.f_items[i].f_item_value = item.f_items[i].f_item_lists[j].f_item_value
2176
+ }
2177
+ }
2178
+ // }
2179
+
2180
+ }
2181
+ for (let de in that.devices) {
2182
+ if(typeof that.devices[de]=='function'){
2183
+ continue
2184
+ }
2185
+ if (that.devices[de].device == item.f_device_type) {
2186
+ that.data['device' + that.devices[de].n].push({
2187
+ f_device_type: item.f_device_type,
2188
+ f_items: item.f_items
2189
+ })
2190
+ //tag)
2191
+ }
2192
+ }
2193
+ })
2194
+ if (this.role == 'androidview') {
2195
+ Util.androidRatifyPics(that.data, this.$androidUtil.getProxyUrl())
2196
+ Util.androidRatifyPics(that.picture, this.$androidUtil.getProxyUrl())
2197
+ Util.booleanFilter(that.data)
2198
+ }
2199
+ //tag)
2200
+ }
2201
+ } else {
2202
+ //tag
2203
+ this.init()
2204
+ }
2205
+ if(this.parentPage && this.parentPage=='CurrentCreate'){
2206
+ //tag
2207
+ let isRecodr = this.$appdata.getSingleValue('无限制录音'); //单值参数,为true则是开启全程录音
2208
+ if (isRecodr) {
2209
+ if (isRecodr=='true') {
2210
+ this.$showMessage("为了保证服务质量,您的电话将会被全程录音!")
2211
+ // 初始化录音
2212
+ let resse = this.record()
2213
+ }
2214
+ }
2215
+ }
2216
+ //tag
2217
+ var pardate = {
2218
+ _this:this,
2219
+ tittle:'安检详情',
2220
+ safe:true
2221
+ }
2222
+ // this.$dispatch('gotoson',pardate)getImgPath
2223
+ this.$goto('safecheck-userinfo', {userinfo:this.data}, 'repair')
2224
+ } else {
2225
+ let that = this
2226
+ let id
2227
+ if (this.role == 'view') {
2228
+ id = this.item.id
2229
+ }
2230
+ this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/path/getUserinfomation`, {data:{condition:`id = '${id}'`}}).then((respanse)=> {
2231
+ if (respanse.data.length != 0) {
2232
+ that.data = Object.assign(that.data,respanse.data[0])
2233
+ if(respanse.data[0].f_devices) {
2234
+ for (let da in that.devices) {
2235
+ that.$set('data.device' + that.devices[da].n, [])
2236
+ }
2237
+ respanse.data[0].f_devices.forEach((item) => {
2238
+ for (let de in that.devices) {
2239
+ if (that.devices[de].device == item.f_device_type) {
2240
+ that.data['device' + that.devices[de].n].push({
2241
+ f_device_type: item.f_device_type,
2242
+ f_items: item.f_items
2243
+ })
2244
+ }
2245
+ }
2246
+ })
2247
+ }
2248
+ Util.replaceFalse(that.data)
2249
+ Util.booleanFilter(that.data)
2250
+ if(this.role == 'view'){
2251
+ Util.ratifyPics(that.data)
2252
+ }else{
2253
+ Util.androidRatifyPics(that.data,this.$androidUtil.getProxyUrl())
2254
+ }
2255
+ //tag
2256
+ } else {
2257
+ alert("该安检单可能已不在本地!")
2258
+ this.init()
2259
+ }
2260
+ var pardate = {
2261
+ _this:this,
2262
+ tittle:'安检详情',
2263
+ safe:true
2264
+ }
2265
+ // this.$dispatch('gotoson',pardate)
2266
+ this.$goto('safecheck-userinfo', {userinfo:this.data}, 'paper-router')
2267
+ }
2268
+ ).catch(
2269
+ (respanse) => {
2270
+ alert('查找安检单失败')
2271
+ })
2272
+ }
2273
+ }else{
2274
+ if(this.parentPage && this.parentPage=='CurrentCreate'){
2275
+ //tag
2276
+ let isRecodr = this.$appdata.getSingleValue('无限制录音'); //单值参数,为true则是开启全程录音
2277
+ if (isRecodr) {
2278
+ if (isRecodr=='true') {
2279
+ this.$showMessage("为了保证服务质量,您的电话将会被全程录音!")
2280
+ // 初始化录音
2281
+ let resse = this.record()
2282
+ }
2283
+ }
2284
+ }
2285
+ this.init()
2286
+ }
2287
+ // tbs合并数组
2288
+ // if( this.model.serviceacitivity[0].servicerepair.length > 0){
2289
+ // for(let i = 0;i < this.model.serviceacitivity[0].servicerepair.length;i++ ){
2290
+ //
2291
+ // }
2292
+ // }
2293
+ },
2294
+ components: {
2295
+ // 'door-service': DoorService,
2296
+ // 'repair-info': RepairInfo,
2297
+ // 'repair-user-info': RepairUserInfo,
2298
+ // 'outlay': Outlay,
2299
+ // 'fault-all': FaultAll,
2300
+ // 'repair-details':RepairDetails
2301
+ // 'pipeline': Pipeline,
2302
+ // 'device-service': DeviceService,
2303
+ // 'trouble-removal': TroubleRemoval,
2304
+ // 'cooking-utensils': CookingUtensils,
2305
+ // 'repair-matter-info': RepairMatterInfo,
2306
+ // 'first-gas-check': FirstGasCheck,
2307
+ // 'tel-change-matter': TelChangeMatter/
2308
+ },
2309
+ events: {
2310
+ 'tijiao': function () {
2311
+ // 事件回调内的 `this` 自动绑定到注册它的实例上
2312
+ this.confirm()
2313
+ }
2314
+ }
2315
+ }
2316
+ </script>
2317
+ <style lang="less">
2318
+ @import "../../../../src/bootstrap/less/variables.less";
2319
+ .noclickbut {
2320
+ pointer-events: none;
2321
+ }
2322
+ .tab-befor-img (@url) {
2323
+ content: '';
2324
+ background-image: url("@{url}");
2325
+ background-size: 20px;
2326
+ display: inline-block;
2327
+ margin-right: 8px;
2328
+ margin-top: 0.3em;
2329
+ height: 1.3em;
2330
+ width: 1.3em;
2331
+ vertical-align: -35%;
2332
+ }
2333
+
2334
+ @media screen and (min-width: 768px) {
2335
+ .android-repair-order > div > ul a {
2336
+ font-size: @font-size-h2;
2337
+ margin: 0.3em 0;
2338
+ }
2339
+ }
2340
+ .repair-details-class{
2341
+ &::before {
2342
+ .tab-befor-img("../../../assets/huneiweixiu1.png");
2343
+ }
2344
+ }
2345
+ .repair-info-class {
2346
+ &::before {
2347
+ .tab-befor-img("../../../assets/baoxiuxinxi1.png");
2348
+ }
2349
+ }
2350
+ .repair-user-info-class {
2351
+ &::before {
2352
+ .tab-befor-img("../../../assets/jibenxinxi1.png")
2353
+ }
2354
+ }
2355
+
2356
+ .door-service-class {
2357
+ &::before {
2358
+ .tab-befor-img("../../../assets/huneiweixiu1.png")
2359
+ }
2360
+ }
2361
+
2362
+ .pipeline-class {
2363
+ &::before {
2364
+ .tab-befor-img("../../../assets/guandao1.png")
2365
+ }
2366
+ }
2367
+
2368
+ .device-service-class {
2369
+ &::before {
2370
+ .tab-befor-img("../../../assets/shebeiweixiu1.png")
2371
+ }
2372
+ }
2373
+
2374
+ .trouble-removal-class {
2375
+ &::before {
2376
+ .tab-befor-img("../../../assets/shiguchuli.png")
2377
+ }
2378
+ }
2379
+
2380
+ .cooking-utensils-class {
2381
+ &::before {
2382
+ .tab-befor-img("../../../assets/zaoju1.png")
2383
+ }
2384
+ }
2385
+
2386
+ .outlay-class {
2387
+ &::before {
2388
+ .tab-befor-img("../../../assets/feiyong1.png")
2389
+ }
2390
+ }
2391
+
2392
+ .fault-all-class {
2393
+ &::before {
2394
+ .tab-befor-img("../../../assets/guzhanghuizong1.png")
2395
+ }
2396
+ }
2397
+ .photo-write-class {
2398
+ &::before {
2399
+ .tab-befor-img("../../../assets/zaoju.png")
2400
+ }
2401
+ }
2402
+ .delay-apply-class {
2403
+ &::before {
2404
+ .tab-befor-img("../../../assets/yonghubaoxiu.png")
2405
+ }
2406
+ }
2407
+
2408
+ .repair-back-class {
2409
+ &::before {
2410
+ .tab-befor-img("../../../assets/fanhui.png")
2411
+ }
2412
+ }
2413
+ .butt2 {
2414
+ display: inline;
2415
+ float: right;
2416
+ width: 10px;
2417
+ text-align: center;
2418
+ align-items:center;
2419
+ position: absolute;
2420
+ top:50%;
2421
+
2422
+ left:90%;
2423
+ transform: translate(-50%,-50%);
2424
+ }
2425
+ .linesty{
2426
+ display: inline-block;
2427
+ height:1px;
2428
+ width:100%;
2429
+ background:#d0d0d0;
2430
+ overflow:hidden;
2431
+ vertical-align: middle;
2432
+ }
2433
+ .spanboder{
2434
+ border-bottom:2px solid #499edf;
2435
+ padding-bottom: 8px
2436
+ }
2437
+ .app-botton {
2438
+ position:fixed;
2439
+ background: #87b2dd;
2440
+ right:8px;
2441
+ color: #FFF;
2442
+ padding: 8px;
2443
+ text-align: center;
2444
+ font-size: 1.2em;
2445
+ z-index: 10;
2446
+ opacity:0.5;
2447
+ bottom: 50px;
2448
+ margin-top: -10px;
2449
+ height: 40px;
2450
+ }
2451
+ .android-repair-order > div > ul a {
2452
+ font-size: 12px;
2453
+ color: #333333;
2454
+ padding: 13px 16px;
2455
+ }
2456
+ </style>