telephone-clients 3.0.104-15 → 3.0.104-17

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 (1050) hide show
  1. package/.babelignore +1 -1
  2. package/.babelrc +6 -6
  3. package/.eslintrc.js +16 -16
  4. package/CHANGELOG.md +37 -37
  5. package/README.md +38 -38
  6. package/TelephoneClient.iml +12 -12
  7. package/adapter.min.js +2049 -2049
  8. package/android.html +18 -18
  9. package/build.gradle +15 -15
  10. package/index.html +29 -29
  11. package/package.json +1 -1
  12. package/release.bat +5 -5
  13. package/src/AndroidApp.vue +33 -33
  14. package/src/App.vue +54 -54
  15. package/src/android-bootstrap/less/navs.less +333 -333
  16. package/src/android.js +17 -17
  17. package/src/androidBase.js +111 -111
  18. package/src/androidTest.js +18 -18
  19. package/src/bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  20. package/src/bootstrap/less/.csscomb.json +304 -304
  21. package/src/bootstrap/less/.csslintrc +19 -19
  22. package/src/bootstrap/less/alerts.less +73 -73
  23. package/src/bootstrap/less/aofeng/animate.min.css +10 -10
  24. package/src/bootstrap/less/aofeng/standard.less +585 -585
  25. package/src/bootstrap/less/aofeng/themeOne/BinaryTemplate.less +478 -478
  26. package/src/bootstrap/less/aofeng/themeOne/loginStyle.less +1586 -1586
  27. package/src/bootstrap/less/aofeng/themeOne/systemStyle.less +1905 -1905
  28. package/src/bootstrap/less/aofeng/themeTwo/newStyle1.less +415 -415
  29. package/src/bootstrap/less/badges.less +66 -66
  30. package/src/bootstrap/less/bootstrap.less +65 -65
  31. package/src/bootstrap/less/breadcrumbs.less +26 -26
  32. package/src/bootstrap/less/button-groups.less +247 -247
  33. package/src/bootstrap/less/buttons.less +172 -172
  34. package/src/bootstrap/less/carousel.less +269 -269
  35. package/src/bootstrap/less/close.less +34 -34
  36. package/src/bootstrap/less/code.less +69 -69
  37. package/src/bootstrap/less/component-animations.less +33 -33
  38. package/src/bootstrap/less/dropdowns.less +216 -216
  39. package/src/bootstrap/less/forms.less +626 -626
  40. package/src/bootstrap/less/glyphicons.less +305 -305
  41. package/src/bootstrap/less/grid.less +84 -84
  42. package/src/bootstrap/less/input-groups.less +167 -167
  43. package/src/bootstrap/less/jumbotron.less +52 -52
  44. package/src/bootstrap/less/labels.less +64 -64
  45. package/src/bootstrap/less/list-group.less +141 -141
  46. package/src/bootstrap/less/manageStyle/manageChile.less +180 -180
  47. package/src/bootstrap/less/manageStyle/manageStyle.less +1102 -1102
  48. package/src/bootstrap/less/manageStyle/safeStyle.less +498 -498
  49. package/src/bootstrap/less/media.less +66 -66
  50. package/src/bootstrap/less/mixins/alerts.less +14 -14
  51. package/src/bootstrap/less/mixins/background-variant.less +9 -9
  52. package/src/bootstrap/less/mixins/border-radius.less +18 -18
  53. package/src/bootstrap/less/mixins/buttons.less +69 -69
  54. package/src/bootstrap/less/mixins/center-block.less +7 -7
  55. package/src/bootstrap/less/mixins/clearfix.less +22 -22
  56. package/src/bootstrap/less/mixins/forms.less +90 -90
  57. package/src/bootstrap/less/mixins/gradients.less +59 -59
  58. package/src/bootstrap/less/mixins/grid-framework.less +92 -92
  59. package/src/bootstrap/less/mixins/grid.less +122 -122
  60. package/src/bootstrap/less/mixins/hide-text.less +21 -21
  61. package/src/bootstrap/less/mixins/image.less +33 -33
  62. package/src/bootstrap/less/mixins/labels.less +12 -12
  63. package/src/bootstrap/less/mixins/list-group.less +30 -30
  64. package/src/bootstrap/less/mixins/nav-divider.less +10 -10
  65. package/src/bootstrap/less/mixins/nav-vertical-align.less +9 -9
  66. package/src/bootstrap/less/mixins/opacity.less +8 -8
  67. package/src/bootstrap/less/mixins/pagination.less +24 -24
  68. package/src/bootstrap/less/mixins/panels.less +24 -24
  69. package/src/bootstrap/less/mixins/progress-bar.less +10 -10
  70. package/src/bootstrap/less/mixins/reset-filter.less +8 -8
  71. package/src/bootstrap/less/mixins/reset-text.less +18 -18
  72. package/src/bootstrap/less/mixins/resize.less +6 -6
  73. package/src/bootstrap/less/mixins/responsive-visibility.less +15 -15
  74. package/src/bootstrap/less/mixins/size.less +10 -10
  75. package/src/bootstrap/less/mixins/tab-focus.less +9 -9
  76. package/src/bootstrap/less/mixins/table-row.less +44 -44
  77. package/src/bootstrap/less/mixins/text-emphasis.less +9 -9
  78. package/src/bootstrap/less/mixins/text-overflow.less +8 -8
  79. package/src/bootstrap/less/mixins/vendor-prefixes.less +227 -227
  80. package/src/bootstrap/less/mixins.less +40 -40
  81. package/src/bootstrap/less/modals.less +151 -151
  82. package/src/bootstrap/less/navbar.less +660 -660
  83. package/src/bootstrap/less/navs.less +285 -285
  84. package/src/bootstrap/less/normalize.less +424 -424
  85. package/src/bootstrap/less/pager.less +76 -76
  86. package/src/bootstrap/less/pagination.less +89 -89
  87. package/src/bootstrap/less/panels.less +275 -275
  88. package/src/bootstrap/less/popovers.less +131 -131
  89. package/src/bootstrap/less/print.less +101 -101
  90. package/src/bootstrap/less/progress-bars.less +87 -87
  91. package/src/bootstrap/less/responsive-embed.less +35 -35
  92. package/src/bootstrap/less/responsive-utilities.less +194 -194
  93. package/src/bootstrap/less/scaffolding.less +161 -161
  94. package/src/bootstrap/less/stand.less +211 -211
  95. package/src/bootstrap/less/standard.less +503 -503
  96. package/src/bootstrap/less/systemStyle.less +860 -860
  97. package/src/bootstrap/less/tables.less +312 -312
  98. package/src/bootstrap/less/theme.less +291 -291
  99. package/src/bootstrap/less/themeOne.less +34 -34
  100. package/src/bootstrap/less/themeTwo.less +27 -27
  101. package/src/bootstrap/less/thumbnails.less +36 -36
  102. package/src/bootstrap/less/tooltip.less +102 -102
  103. package/src/bootstrap/less/type.less +303 -303
  104. package/src/bootstrap/less/utilities.less +55 -55
  105. package/src/bootstrap/less/variables.less +896 -896
  106. package/src/bootstrap/less/wells.less +29 -29
  107. package/src/bus.js +2 -2
  108. package/src/components/CaseContainer.vue +86 -86
  109. package/src/components/ExportExcel.vue +342 -342
  110. package/src/components/ImgSelfTel.vue +126 -126
  111. package/src/components/MaterialsManage/MaterialsBase.vue +177 -177
  112. package/src/components/MaterialsManage/MaterialsList.vue +244 -244
  113. package/src/components/MaterialsManage/MaterialsManage.vue +60 -60
  114. package/src/components/PartialView.vue +44 -44
  115. package/src/components/Test.vue +26 -26
  116. package/src/components/TimelineItem.vue +119 -119
  117. package/src/components/Util/FileUpload.vue +139 -139
  118. package/src/components/Util/ImgSelfSafePlus.vue +156 -156
  119. package/src/components/Util/RightTreeSafe.vue +346 -346
  120. package/src/components/Util/RightTreeSafeDep.vue +350 -350
  121. package/src/components/Util/TelePhoneUpload.vue +279 -279
  122. package/src/components/Util.js +600 -600
  123. package/src/components/android/AddMyTask.vue +353 -353
  124. package/src/components/android/AppHeader.vue +69 -69
  125. package/src/components/android/CameraImg.vue +111 -111
  126. package/src/components/android/CompletedRepair.vue +264 -264
  127. package/src/components/android/EmployeeInfo.vue +59 -59
  128. package/src/components/android/EmployeePage.vue +71 -71
  129. package/src/components/android/Lbt.vue +103 -103
  130. package/src/components/android/LoginApp.vue +374 -374
  131. package/src/components/android/NavBottom.vue +104 -104
  132. package/src/components/changemeter/ChangeMeterAll.vue +189 -189
  133. package/src/components/changemeter/ChangeMeterDetail.vue +300 -300
  134. package/src/components/changemeter/ChangeMeterMain.vue +37 -37
  135. package/src/components/eachart/BarBrokenline.vue +206 -206
  136. package/src/components/eachart/BarChart.vue +165 -165
  137. package/src/components/eachart/PieChart.vue +182 -182
  138. package/src/components/eachart/datesumchart.vue +165 -165
  139. package/src/components/eachart/statework.vue +226 -226
  140. package/src/components/eachart/workorderchart.vue +183 -183
  141. package/src/components/guoxin/Console.vue +365 -365
  142. package/src/components/guoxin/RecordInfoRight.vue +75 -75
  143. package/src/components/guoxin/VisitInfo.vue +270 -270
  144. package/src/components/guoxin/call.state.api.js +215 -215
  145. package/src/components/guoxin/reconnecting-websocket.min.js +1 -1
  146. package/src/components/guoxin/telephone.js +15 -15
  147. package/src/components/map/AMapTrailShowWx.vue +178 -178
  148. package/src/components/map/CallMap.vue +403 -403
  149. package/src/components/map/CriteriaData.vue +81 -81
  150. package/src/components/map/OlMap.vue +831 -831
  151. package/src/components/map/OrderService.vue +249 -249
  152. package/src/components/map/PipeMap.vue +154 -154
  153. package/src/components/map/dragbox.js +234 -234
  154. package/src/components/pay/createQRcode.vue +192 -192
  155. package/src/components/pay/telReadCard.vue +59 -59
  156. package/src/components/pc/AllUser.vue +615 -615
  157. package/src/components/pc/AllUserNew.vue +638 -638
  158. package/src/components/pc/ArrearsList.vue +397 -397
  159. package/src/components/pc/AttendantCallStat.vue +213 -213
  160. package/src/components/pc/AttendantWorkHistory.vue +98 -98
  161. package/src/components/pc/Auxfunc.vue +76 -76
  162. package/src/components/pc/BottleGas/BottleGasManage.vue +304 -304
  163. package/src/components/pc/BottleGasWork.vue +214 -214
  164. package/src/components/pc/BuildReport.vue +60 -60
  165. package/src/components/pc/CallerInfoList.vue +98 -98
  166. package/src/components/pc/ChatMsg.vue +338 -338
  167. package/src/components/pc/ComplainWork.vue +326 -326
  168. package/src/components/pc/Console.vue +617 -617
  169. package/src/components/pc/DelayReply.vue +60 -60
  170. package/src/components/pc/DistributeWork.vue +177 -177
  171. package/src/components/pc/ElseWork.vue +44 -44
  172. package/src/components/pc/ElseWorkList.vue +267 -267
  173. package/src/components/pc/Emoji.vue +64 -64
  174. package/src/components/pc/Evaluate.vue +145 -145
  175. package/src/components/pc/EvaluateList.vue +195 -195
  176. package/src/components/pc/EvaluateModel.vue +53 -53
  177. package/src/components/pc/FailureEdit.vue +192 -192
  178. package/src/components/pc/FailureShow.vue +61 -61
  179. package/src/components/pc/FireQuery.vue +165 -165
  180. package/src/components/pc/FootPrintList.vue +40 -40
  181. package/src/components/pc/GasWork.vue +764 -764
  182. package/src/components/pc/GroupResend.vue +111 -111
  183. package/src/components/pc/InstallWork.vue +734 -734
  184. package/src/components/pc/ManageMaterial.vue +282 -282
  185. package/src/components/pc/MessageList.vue +635 -635
  186. package/src/components/pc/MessageManage.vue +136 -136
  187. package/src/components/pc/MessageManageList.vue +127 -127
  188. package/src/components/pc/MessageManageNew.vue +121 -121
  189. package/src/components/pc/MonitorGroup.vue +82 -82
  190. package/src/components/pc/NewRepairPaper.vue +370 -370
  191. package/src/components/pc/OrderService.vue +182 -182
  192. package/src/components/pc/ProgressBar.vue +50 -50
  193. package/src/components/pc/QueryJoinlv.vue +136 -136
  194. package/src/components/pc/QueryTeleHistory.vue +95 -95
  195. package/src/components/pc/QueryTextHistory.vue +98 -98
  196. package/src/components/pc/QueryVisitHistory.vue +217 -217
  197. package/src/components/pc/ReVisitList.vue +208 -208
  198. package/src/components/pc/RecordInfoRight.vue +84 -84
  199. package/src/components/pc/RecordList.vue +53 -53
  200. package/src/components/pc/RecordList2.vue +155 -155
  201. package/src/components/pc/RecordListLeft.vue +188 -188
  202. package/src/components/pc/RecordReport.vue +181 -181
  203. package/src/components/pc/ReminderOrder.vue +52 -52
  204. package/src/components/pc/RepairHistoryList.vue +152 -152
  205. package/src/components/pc/RepairsWork.vue +841 -841
  206. package/src/components/pc/ReturnRecord.vue +126 -126
  207. package/src/components/pc/RoleSelector.vue +139 -139
  208. package/src/components/pc/RoleSelectorDep.vue +158 -158
  209. package/src/components/pc/SeatInfo.vue +207 -207
  210. package/src/components/pc/Seekwork.vue +310 -310
  211. package/src/components/pc/ServerAppendixInfo.vue +52 -52
  212. package/src/components/pc/ServiceBack.vue +49 -49
  213. package/src/components/pc/ServiceDetails.vue +53 -53
  214. package/src/components/pc/ServiceDetailsNew.vue +53 -53
  215. package/src/components/pc/SiteBack.vue +84 -84
  216. package/src/components/pc/SiteCase.vue +87 -87
  217. package/src/components/pc/SiteSend.vue +281 -281
  218. package/src/components/pc/StandSend.vue +600 -600
  219. package/src/components/pc/StandServer.vue +25 -25
  220. package/src/components/pc/StandWork.vue +91 -91
  221. package/src/components/pc/StandWorkNew.vue +91 -91
  222. package/src/components/pc/TelFindUser.vue +304 -304
  223. package/src/components/pc/TelListener.vue +174 -174
  224. package/src/components/pc/TelLossList.vue +247 -247
  225. package/src/components/pc/TelMaterSelect.vue +225 -225
  226. package/src/components/pc/TelUserMaterSend.vue +171 -171
  227. package/src/components/pc/TeleInfo.vue +140 -140
  228. package/src/components/pc/TeleList.vue +99 -99
  229. package/src/components/pc/TeleOperKl.vue +91 -91
  230. package/src/components/pc/TemplateMessage.vue +92 -92
  231. package/src/components/pc/TextControl.vue +113 -113
  232. package/src/components/pc/TextInfoRight.vue +84 -84
  233. package/src/components/pc/TextList.vue +45 -45
  234. package/src/components/pc/TextListLeft.vue +156 -156
  235. package/src/components/pc/TextServer.vue +154 -154
  236. package/src/components/pc/TextService.vue +849 -849
  237. package/src/components/pc/UserDefinedMessage.vue +90 -90
  238. package/src/components/pc/UserDefinedMessageNew.vue +121 -121
  239. package/src/components/pc/UserOperate.vue +48 -48
  240. package/src/components/pc/VideoPlayer.vue +73 -73
  241. package/src/components/pc/VisitInfo.vue +311 -311
  242. package/src/components/pc/VoiceServer.vue +208 -208
  243. package/src/components/pc/WorkCenter.vue +105 -105
  244. package/src/components/pc/WorkCenterContent.vue +100 -100
  245. package/src/components/pc/WorkCenterList.vue +292 -292
  246. package/src/components/pc/WorkFind.vue +128 -128
  247. package/src/components/pc/WorkHistory.vue +560 -560
  248. package/src/components/pc/WorkList.vue +743 -743
  249. package/src/components/pc/WorkListAll.vue +630 -630
  250. package/src/components/pc/WorkListAllNew.vue +707 -707
  251. package/src/components/pc/WorkListNew.vue +712 -712
  252. package/src/components/pc/WorkMsg.vue +105 -105
  253. package/src/components/pc/analysis/AnalysisMain.vue +423 -423
  254. package/src/components/pc/analysis/StateStatistics.vue +292 -292
  255. package/src/components/pc/analysis/TelephoneAnaly.vue +104 -104
  256. package/src/components/pc/analysis/TelephoneType.vue +270 -270
  257. package/src/components/pc/config/DefaultPrint.js +7 -7
  258. package/src/components/pc/dataManager/KlCatalog.vue +293 -293
  259. package/src/components/pc/dataManager/KlContent.vue +193 -193
  260. package/src/components/pc/dataManager/Knowledge.vue +21 -21
  261. package/src/components/pc/dataManager/Materials.vue +553 -553
  262. package/src/components/pc/dataManager/OutletsList.vue +85 -85
  263. package/src/components/pc/dataManager/SafeEditor.vue +91 -91
  264. package/src/components/pc/dataManager/SafeList.vue +77 -77
  265. package/src/components/pc/dataManager/ShowMaterials.vue +159 -159
  266. package/src/components/pc/dataManager/StopGasManager.vue +320 -320
  267. package/src/components/pc/imgmove.vue +192 -192
  268. package/src/components/pc/olddata/OldWorkList.vue +193 -193
  269. package/src/components/pc/serviceDeleteOrder.vue +53 -53
  270. package/src/components/pc/wx/BookingService.vue +407 -407
  271. package/src/components/pc/wx/CustomMenu.vue +154 -154
  272. package/src/components/pc/wx/MenuView.vue +249 -249
  273. package/src/components/pc/wx/MobileView.vue +273 -273
  274. package/src/components/pc/wx/NewsMaterial.vue +144 -144
  275. package/src/components/pc/wx/SelectMaterial.vue +100 -100
  276. package/src/components/pc/wx/TelOutletsManager.vue +186 -186
  277. package/src/components/pos/Init.vue +213 -213
  278. package/src/components/pos/Main.vue +123 -123
  279. package/src/components/pos/Plugin/AndroidPlugin.js +148 -148
  280. package/src/components/pos/Plugin/PosUtil.js +315 -315
  281. package/src/components/pos/aotePos.js +55 -55
  282. package/src/components/pos/bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  283. package/src/components/pos/bootstrap/less/.csscomb.json +304 -304
  284. package/src/components/pos/bootstrap/less/.csslintrc +19 -19
  285. package/src/components/pos/bootstrap/less/alerts.less +73 -73
  286. package/src/components/pos/bootstrap/less/badges.less +66 -66
  287. package/src/components/pos/bootstrap/less/bootstrap.less +56 -56
  288. package/src/components/pos/bootstrap/less/breadcrumbs.less +26 -26
  289. package/src/components/pos/bootstrap/less/button-groups.less +247 -247
  290. package/src/components/pos/bootstrap/less/buttons.less +172 -172
  291. package/src/components/pos/bootstrap/less/carousel.less +269 -269
  292. package/src/components/pos/bootstrap/less/close.less +34 -34
  293. package/src/components/pos/bootstrap/less/code.less +69 -69
  294. package/src/components/pos/bootstrap/less/component-animations.less +33 -33
  295. package/src/components/pos/bootstrap/less/dropdowns.less +216 -216
  296. package/src/components/pos/bootstrap/less/forms.less +626 -626
  297. package/src/components/pos/bootstrap/less/glyphicons.less +305 -305
  298. package/src/components/pos/bootstrap/less/grid.less +84 -84
  299. package/src/components/pos/bootstrap/less/input-groups.less +167 -167
  300. package/src/components/pos/bootstrap/less/jumbotron.less +52 -52
  301. package/src/components/pos/bootstrap/less/labels.less +64 -64
  302. package/src/components/pos/bootstrap/less/list-group.less +141 -141
  303. package/src/components/pos/bootstrap/less/media.less +66 -66
  304. package/src/components/pos/bootstrap/less/mixins/alerts.less +14 -14
  305. package/src/components/pos/bootstrap/less/mixins/background-variant.less +9 -9
  306. package/src/components/pos/bootstrap/less/mixins/border-radius.less +18 -18
  307. package/src/components/pos/bootstrap/less/mixins/buttons.less +69 -69
  308. package/src/components/pos/bootstrap/less/mixins/center-block.less +7 -7
  309. package/src/components/pos/bootstrap/less/mixins/clearfix.less +22 -22
  310. package/src/components/pos/bootstrap/less/mixins/forms.less +90 -90
  311. package/src/components/pos/bootstrap/less/mixins/gradients.less +59 -59
  312. package/src/components/pos/bootstrap/less/mixins/grid-framework.less +92 -92
  313. package/src/components/pos/bootstrap/less/mixins/grid.less +122 -122
  314. package/src/components/pos/bootstrap/less/mixins/hide-text.less +21 -21
  315. package/src/components/pos/bootstrap/less/mixins/image.less +33 -33
  316. package/src/components/pos/bootstrap/less/mixins/labels.less +12 -12
  317. package/src/components/pos/bootstrap/less/mixins/list-group.less +30 -30
  318. package/src/components/pos/bootstrap/less/mixins/nav-divider.less +10 -10
  319. package/src/components/pos/bootstrap/less/mixins/nav-vertical-align.less +9 -9
  320. package/src/components/pos/bootstrap/less/mixins/opacity.less +8 -8
  321. package/src/components/pos/bootstrap/less/mixins/pagination.less +24 -24
  322. package/src/components/pos/bootstrap/less/mixins/panels.less +24 -24
  323. package/src/components/pos/bootstrap/less/mixins/progress-bar.less +10 -10
  324. package/src/components/pos/bootstrap/less/mixins/reset-filter.less +8 -8
  325. package/src/components/pos/bootstrap/less/mixins/reset-text.less +18 -18
  326. package/src/components/pos/bootstrap/less/mixins/resize.less +6 -6
  327. package/src/components/pos/bootstrap/less/mixins/responsive-visibility.less +15 -15
  328. package/src/components/pos/bootstrap/less/mixins/size.less +10 -10
  329. package/src/components/pos/bootstrap/less/mixins/tab-focus.less +9 -9
  330. package/src/components/pos/bootstrap/less/mixins/table-row.less +44 -44
  331. package/src/components/pos/bootstrap/less/mixins/text-emphasis.less +9 -9
  332. package/src/components/pos/bootstrap/less/mixins/text-overflow.less +8 -8
  333. package/src/components/pos/bootstrap/less/mixins/vendor-prefixes.less +227 -227
  334. package/src/components/pos/bootstrap/less/mixins.less +40 -40
  335. package/src/components/pos/bootstrap/less/modals.less +151 -151
  336. package/src/components/pos/bootstrap/less/navbar.less +660 -660
  337. package/src/components/pos/bootstrap/less/navs.less +286 -286
  338. package/src/components/pos/bootstrap/less/normalize.less +424 -424
  339. package/src/components/pos/bootstrap/less/pager.less +76 -76
  340. package/src/components/pos/bootstrap/less/pagination.less +89 -89
  341. package/src/components/pos/bootstrap/less/panels.less +274 -274
  342. package/src/components/pos/bootstrap/less/popovers.less +131 -131
  343. package/src/components/pos/bootstrap/less/print.less +101 -101
  344. package/src/components/pos/bootstrap/less/progress-bars.less +87 -87
  345. package/src/components/pos/bootstrap/less/responsive-embed.less +35 -35
  346. package/src/components/pos/bootstrap/less/responsive-utilities.less +194 -194
  347. package/src/components/pos/bootstrap/less/scaffolding.less +161 -161
  348. package/src/components/pos/bootstrap/less/tables.less +262 -262
  349. package/src/components/pos/bootstrap/less/theme.less +291 -291
  350. package/src/components/pos/bootstrap/less/thumbnails.less +36 -36
  351. package/src/components/pos/bootstrap/less/tooltip.less +102 -102
  352. package/src/components/pos/bootstrap/less/type.less +303 -303
  353. package/src/components/pos/bootstrap/less/utilities.less +55 -55
  354. package/src/components/pos/bootstrap/less/variables.less +895 -895
  355. package/src/components/pos/bootstrap/less/wells.less +29 -29
  356. package/src/components/pos/charge/card/CardInfo.vue +43 -43
  357. package/src/components/pos/charge/card/CheckUser.Vue +116 -116
  358. package/src/components/pos/charge/card/ReadCardInter.vue +177 -177
  359. package/src/components/pos/charge/card/ReadCardToBuy.vue +174 -174
  360. package/src/components/pos/charge/card/SelectUser.Vue +104 -104
  361. package/src/components/pos/charge/machine/MachineSearch.Vue +124 -124
  362. package/src/components/pos/charge/sellgas/AdvertPop.vue +70 -70
  363. package/src/components/pos/charge/sellgas/CardSellGas.vue +361 -361
  364. package/src/components/pos/charge/sellgas/ChoosePayWay.vue +275 -275
  365. package/src/components/pos/charge/sellgas/GudingPrice.vue +38 -38
  366. package/src/components/pos/charge/sellgas/JietiPrice.vue +54 -54
  367. package/src/components/pos/charge/sellgas/ScanQrcode.vue +171 -171
  368. package/src/components/pos/charge/sellgas/WriteCard.vue +366 -366
  369. package/src/components/pos/charge/userinfo/ChangeMeterList.vue +43 -43
  370. package/src/components/pos/charge/userinfo/FillGasList.vue +43 -43
  371. package/src/components/pos/charge/userinfo/HistorySellList.vue +90 -90
  372. package/src/components/pos/charge/userinfo/OtherList.vue +43 -43
  373. package/src/components/pos/charge/userinfo/SellList.vue +43 -43
  374. package/src/components/pos/charge/userinfo/TransList.vue +43 -43
  375. package/src/components/pos/charge/userinfo/UserInfo.vue +176 -176
  376. package/src/components/pos/charge/userinfo/WritecardInfo.vue +44 -44
  377. package/src/components/pos/css/bootstrap.less +6757 -6757
  378. package/src/components/pos/css/style.less +158 -158
  379. package/src/components/pos/css/style.less.bak +84 -84
  380. package/src/components/pos/fonts/fontawesome-webfont.svg +2671 -2671
  381. package/src/components/pos/fonts/glyphicons-halflings-regular.svg +287 -287
  382. package/src/components/pos/js/bootstrap.js +2377 -2377
  383. package/src/components/pos/js/bootstrap.min.js +6 -6
  384. package/src/components/pos/js/jquery.chromatable.js +150 -150
  385. package/src/components/pos/js/jquery.min.js +5 -5
  386. package/src/components/pos/js/npm.js +12 -12
  387. package/src/components/pos/ztprint.js +26 -26
  388. package/src/components/qinhua/qhonlineChangeMeter.vue +440 -440
  389. package/src/components/qinhua/qhonlineoperation.vue +227 -227
  390. package/src/components/reli/ChoosePayWay.vue +179 -179
  391. package/src/components/reli/HistorySellLists.vue +128 -128
  392. package/src/components/reli/MachineMain.vue +470 -470
  393. package/src/components/reli/UserInfo.vue +211 -211
  394. package/src/components/reli/searchSells.vue +446 -446
  395. package/src/components/repaircount/RepairDetail.vue +74 -74
  396. package/src/components/repaircount/RepairPlan.vue +58 -58
  397. package/src/components/repaircount/SelectRepairPlan.vue +189 -189
  398. package/src/components/sale/CardMeterCenter.vue +625 -625
  399. package/src/components/sale/IOTMeterCenter.vue +443 -443
  400. package/src/components/sale/MachineMeterCenter.vue +591 -591
  401. package/src/components/sendsingle/CardChangeFill.vue +338 -338
  402. package/src/components/sendsingle/ChangeSendCard.vue +19 -19
  403. package/src/components/sendsingle/IotChangeFill.vue +471 -471
  404. package/src/components/sendsingle/MachineChangeFill.vue +143 -143
  405. package/src/components/sendsingle/PosMakeGas.vue +342 -342
  406. package/src/components/sendsingle/QueryTemporaryRepair.vue +226 -226
  407. package/src/components/sendsingle/TelLotChangeFill.vue +626 -626
  408. package/src/components/sendsingle/TemporarySingle.vue +480 -480
  409. package/src/components/sendsingle/ceshi.vue +51 -51
  410. package/src/components/sendsingle/onlineBuyGas.vue +632 -632
  411. package/src/components/sendsingle/onlineBuyGasOld.vue +19 -19
  412. package/src/components/sendsingle/onlineChangeMeter.vue +419 -419
  413. package/src/components/sendsingle/onlinemakecard.vue +413 -413
  414. package/src/components/sendsingle/onlineoperation.vue +401 -401
  415. package/src/components/sendsingle/posMaintainer.vue +277 -277
  416. package/src/components/shaoguan/DelayReply.vue +60 -60
  417. package/src/components/shaoguan/FailureEdit.vue +172 -172
  418. package/src/components/shaoguan/RepairDetailsChange.vue +399 -399
  419. package/src/components/shaoguan/RepairOrderChange.vue +673 -673
  420. package/src/components/shaoguan/RepairUserInfoChange.vue +532 -532
  421. package/src/components/shaoguan/WorkHistory.vue +346 -346
  422. package/src/components/shaoguan/WorkListAll.vue +521 -521
  423. package/src/components/shaoguan/config/DefaultPrint.js +7 -7
  424. package/src/components/telcount/TelByAttendant.vue +118 -118
  425. package/src/components/telcount/TelByLouQi.vue +113 -113
  426. package/src/components/telcount/TelByLouQiMingxi.vue +117 -117
  427. package/src/components/telcount/TelByOrderMan.vue +105 -105
  428. package/src/components/telcount/TelByWeiXiu.vue +199 -199
  429. package/src/components/telcount/TelByZhiHuan.vue +109 -109
  430. package/src/components/telreport/HotlineMonthly.vue +121 -121
  431. package/src/components/telreport/RepairsDetailsReport.vue +98 -98
  432. package/src/components/telreport/TableFaultReport.vue +96 -96
  433. package/src/components/telreport/TelAgentVoiceReport.vue +275 -275
  434. package/src/components/telreport/TelMan.vue +127 -127
  435. package/src/components/telreport/TelReport.vue +122 -122
  436. package/src/components/telreport/TelephoneManReport.vue +121 -121
  437. package/src/components/telreport/Traffic.vue +94 -94
  438. package/src/components/telreport/TrafficClassificationReport.vue +134 -134
  439. package/src/components/telreport/Trafficassess.vue +121 -121
  440. package/src/components/temp/BusinessMessage.vue +60 -60
  441. package/src/components/temp/BusinesscheckInfo.vue +82 -82
  442. package/src/components/temp/CallRecords.vue +86 -86
  443. package/src/components/temp/ChangemeterInfo.vue +75 -75
  444. package/src/components/temp/DeviceInfo.vue +80 -80
  445. package/src/components/temp/DisableInforMation.vue +82 -82
  446. package/src/components/temp/HandplanInfo.vue +89 -89
  447. package/src/components/temp/InfoTable.vue +134 -134
  448. package/src/components/temp/InstructInfo.vue +86 -86
  449. package/src/components/temp/Main.vue +375 -375
  450. package/src/components/temp/MetereadInfo.vue +80 -80
  451. package/src/components/temp/MetterInfo.vue +92 -92
  452. package/src/components/temp/OldRepairList.vue +100 -100
  453. package/src/components/temp/ParamManager/ParamPage.vue +285 -285
  454. package/src/components/temp/ParamManager/SinglePage.vue +161 -161
  455. package/src/components/temp/RepairList.vue +125 -125
  456. package/src/components/temp/SecurityMessage.vue +64 -64
  457. package/src/components/temp/SecuritycheckInfo.vue +73 -73
  458. package/src/components/temp/SellInfo.vue +153 -153
  459. package/src/components/temp/TelList.vue +99 -99
  460. package/src/components/temp/rightview/CardList.vue +287 -287
  461. package/src/components/temp/rightview/RecordCancel.vue +103 -103
  462. package/src/components/temp/rightview/carddetail/AddUserDetail.vue +65 -65
  463. package/src/components/temp/rightview/carddetail/BankDKDetail.vue +75 -75
  464. package/src/components/temp/rightview/carddetail/BankPay.vue +75 -75
  465. package/src/components/temp/rightview/carddetail/CancellationDetail.vue +58 -58
  466. package/src/components/temp/rightview/carddetail/CardMeterCenterDetail.vue +58 -58
  467. package/src/components/temp/rightview/carddetail/CardOverUserDetail.vue +62 -62
  468. package/src/components/temp/rightview/carddetail/ChangeMeterDetail.vue +70 -70
  469. package/src/components/temp/rightview/carddetail/OtherChargeDetail.vue +56 -56
  470. package/src/components/temp/rightview/carddetail/RefundDetail.vue +63 -63
  471. package/src/components/temp/rightview/carddetail/ReissueBill.vue +165 -165
  472. package/src/components/temp/rightview/carddetail/SortingQuery.vue +295 -295
  473. package/src/components/temp/rightview/carddetail/UserChangeDetail.vue +77 -77
  474. package/src/components/temp/rightview/carddetail/WeChatPay.vue +75 -75
  475. package/src/components/temp/server/ChangeDeclare.vue +45 -45
  476. package/src/components/temp/server/LoadData.vue +60 -60
  477. package/src/components/temp/server/Login.vue +401 -401
  478. package/src/components/temp/server/ModifyPw.vue +143 -143
  479. package/src/components/tongcheng/DistributeWork.vue +129 -129
  480. package/src/components/tongcheng/InfoTable.vue +55 -55
  481. package/src/components/tongcheng/MetterInfo.vue +90 -90
  482. package/src/components/tongcheng/RepairsWork.vue +788 -788
  483. package/src/components/tongcheng/SellInfo.vue +152 -152
  484. package/src/components/tongcheng/StandServer.vue +24 -24
  485. package/src/components/tongcheng/UserOperate.vue +43 -43
  486. package/src/components/tongcheng/VoiceServer.vue +136 -136
  487. package/src/components/tongcheng/WorkListAll.vue +535 -535
  488. package/src/components/weinan/ComplainMsg.vue +141 -141
  489. package/src/components/weinan/ComplainWork.vue +205 -205
  490. package/src/components/weinan/Console.vue +418 -418
  491. package/src/components/weinan/DistributeWork.vue +138 -138
  492. package/src/components/weinan/ExportExcel.vue +204 -204
  493. package/src/components/weinan/FailureEdit.vue +182 -182
  494. package/src/components/weinan/InfoTable.vue +67 -67
  495. package/src/components/weinan/RecordList.vue +299 -299
  496. package/src/components/weinan/RepairFirstV.vue +547 -547
  497. package/src/components/weinan/RepairInfo.vue +163 -163
  498. package/src/components/weinan/RepairListTel.vue +96 -96
  499. package/src/components/weinan/RepairOrderV.vue +1447 -1447
  500. package/src/components/weinan/RepairUserInfo.vue +533 -533
  501. package/src/components/weinan/RepairsWork.vue +806 -806
  502. package/src/components/weinan/Seekwork.vue +178 -178
  503. package/src/components/weinan/SiteChange.vue +228 -228
  504. package/src/components/weinan/SiteSend.vue +228 -228
  505. package/src/components/weinan/SiteSendWeixiu.vue +268 -268
  506. package/src/components/weinan/StandWorkWeixiu.vue +91 -91
  507. package/src/components/weinan/TelByAttendant.vue +110 -110
  508. package/src/components/weinan/TelFindUser.vue +241 -241
  509. package/src/components/weinan/WorkList.vue +726 -726
  510. package/src/components/weinan/WorkListAll.vue +974 -974
  511. package/src/components/weinan/WorkListWeixiu.vue +608 -608
  512. package/src/components/workOrderApplication/OrderWorkDetail.vue +796 -796
  513. package/src/components/workOrderApplication/orderApplicationManage.vue +98 -98
  514. package/src/components/workOrderApplication/orderApply.vue +57 -57
  515. package/src/components/workOrderApplication/orderTable.vue +214 -214
  516. package/src/components/workOrderApplication/orderWork.vue +114 -114
  517. package/src/components/workorder/AfTabset.vue +125 -125
  518. package/src/components/workorder/AndroidStopGasManager.vue +270 -270
  519. package/src/components/workorder/AppInstallationMaterial.vue +613 -613
  520. package/src/components/workorder/ChangeMeter.vue +546 -546
  521. package/src/components/workorder/ChangeMeterList.vue +236 -236
  522. package/src/components/workorder/ChangeMeterPage.vue +506 -506
  523. package/src/components/workorder/CompletedInstall.vue +214 -214
  524. package/src/components/workorder/CompletedRepair.vue +321 -321
  525. package/src/components/workorder/CookingUtensils.vue +134 -134
  526. package/src/components/workorder/DelayApply.vue +105 -105
  527. package/src/components/workorder/DeviceService.vue +133 -133
  528. package/src/components/workorder/DoorService.vue +355 -355
  529. package/src/components/workorder/FaultAll.vue +826 -826
  530. package/src/components/workorder/FirstGasCheck.vue +310 -310
  531. package/src/components/workorder/InputSelect.vue +110 -110
  532. package/src/components/workorder/InstallFirst.vue +517 -517
  533. package/src/components/workorder/InstallUpLoad.vue +111 -111
  534. package/src/components/workorder/MaterialSum.vue +238 -238
  535. package/src/components/workorder/MonitorMSend.vue +202 -202
  536. package/src/components/workorder/Othercharge.vue +477 -477
  537. package/src/components/workorder/Outlay.vue +236 -236
  538. package/src/components/workorder/PhoneGroupResend.vue +88 -88
  539. package/src/components/workorder/PhoneStandWork.vue +354 -354
  540. package/src/components/workorder/PhoneUpDetail.vue +1041 -1041
  541. package/src/components/workorder/PhoneUpUserinfo.vue +1041 -1041
  542. package/src/components/workorder/PhotoWrite.vue +116 -116
  543. package/src/components/workorder/Pipeline.vue +497 -497
  544. package/src/components/workorder/QueryTemporaryRepair.vue +220 -220
  545. package/src/components/workorder/ReadCardPage.vue +217 -217
  546. package/src/components/workorder/RepairDetails.vue +613 -613
  547. package/src/components/workorder/RepairDetails22.vue +128 -128
  548. package/src/components/workorder/RepairFirst.vue +170 -170
  549. package/src/components/workorder/RepairFirstOld.vue +410 -410
  550. package/src/components/workorder/RepairFirstV.vue +673 -673
  551. package/src/components/workorder/RepairFirstVnew.vue +542 -542
  552. package/src/components/workorder/RepairInfo.vue +166 -166
  553. package/src/components/workorder/RepairMatterInfo.vue +186 -186
  554. package/src/components/workorder/RepairOrder.vue +688 -688
  555. package/src/components/workorder/RepairOrderV.vue +1446 -1446
  556. package/src/components/workorder/RepairOrderVnew.vue +868 -868
  557. package/src/components/workorder/RepairSend.vue +264 -264
  558. package/src/components/workorder/RepairUserInfo.vue +532 -532
  559. package/src/components/workorder/Repairpage.vue +100 -100
  560. package/src/components/workorder/RepairsVisit.vue +319 -319
  561. package/src/components/workorder/SafeCheckService.vue +355 -355
  562. package/src/components/workorder/SubstitFirstV.vue +143 -143
  563. package/src/components/workorder/SubstitutionPage.vue +100 -100
  564. package/src/components/workorder/TelChangeMatter.vue +231 -231
  565. package/src/components/workorder/TemporarySingle.vue +480 -480
  566. package/src/components/workorder/TroubleRemoval.vue +419 -419
  567. package/src/components/workorder/UpLoad.vue +111 -111
  568. package/src/components/workorder/ZHihuanFirst.vue +546 -546
  569. package/src/components/workorder/ZhiCompletedRepair.vue +217 -217
  570. package/src/components/workorder/ZhiUpLoad.vue +136 -136
  571. package/src/expandcss.less +620 -620
  572. package/src/filiale/fugu/pc/ComplainWork.vue +206 -206
  573. package/src/filiale/fugu/pc/FailureEdit.vue +183 -183
  574. package/src/filiale/fugu/pc/RepairsWork.vue +793 -793
  575. package/src/filiale/fugu/pc/Seekwork.vue +182 -182
  576. package/src/filiale/fugu/telephone.js +16 -16
  577. package/src/filiale/furuike/android/CompletedRepair.vue +210 -210
  578. package/src/filiale/furuike/android/FaultAll.vue +861 -861
  579. package/src/filiale/furuike/android/Materials.vue +410 -410
  580. package/src/filiale/furuike/android/RepairFirstVnew.vue +580 -580
  581. package/src/filiale/furuike/android/RepairOrderVnew.vue +890 -890
  582. package/src/filiale/furuike/pc/Auxfunc.vue +109 -109
  583. package/src/filiale/furuike/pc/CallRcords.vue +109 -109
  584. package/src/filiale/furuike/pc/ChangemeterInfo.vue +87 -87
  585. package/src/filiale/furuike/pc/ComplainWork.vue +348 -348
  586. package/src/filiale/furuike/pc/DeviceInfo.vue +82 -82
  587. package/src/filiale/furuike/pc/DisableInforMation.vue +82 -82
  588. package/src/filiale/furuike/pc/FailureEdit.vue +198 -198
  589. package/src/filiale/furuike/pc/HandplanInfo.vue +78 -78
  590. package/src/filiale/furuike/pc/InfoTable.vue +134 -134
  591. package/src/filiale/furuike/pc/InstructInfo.vue +86 -86
  592. package/src/filiale/furuike/pc/LineReport.vue +215 -215
  593. package/src/filiale/furuike/pc/MaterialWorkOrder/MaterialWork.vue +400 -400
  594. package/src/filiale/furuike/pc/MaterialWorkOrder/MaterialWorkOrderManage.vue +63 -63
  595. package/src/filiale/furuike/pc/MaterialWorkOrder/WorkOrderMaterial.vue +381 -381
  596. package/src/filiale/furuike/pc/MetereadInfo.vue +82 -82
  597. package/src/filiale/furuike/pc/MetterInfo.vue +92 -92
  598. package/src/filiale/furuike/pc/NewRepairPaper.vue +415 -415
  599. package/src/filiale/furuike/pc/ProblemList.vue +170 -170
  600. package/src/filiale/furuike/pc/QueryVisitHistory.vue +183 -183
  601. package/src/filiale/furuike/pc/RecordListLeft.vue +259 -259
  602. package/src/filiale/furuike/pc/ReminderOrder.vue +50 -50
  603. package/src/filiale/furuike/pc/RepairList.vue +102 -102
  604. package/src/filiale/furuike/pc/RepairsWork.vue +918 -918
  605. package/src/filiale/furuike/pc/SecuritycheckInfo.vue +128 -128
  606. package/src/filiale/furuike/pc/Seekwork.vue +352 -352
  607. package/src/filiale/furuike/pc/SellInfo.vue +158 -158
  608. package/src/filiale/furuike/pc/TableReport.vue +160 -160
  609. package/src/filiale/furuike/pc/TelFindUser.vue +229 -229
  610. package/src/filiale/furuike/pc/TelLossList.vue +145 -145
  611. package/src/filiale/furuike/pc/TelePhoneUpload.vue +279 -279
  612. package/src/filiale/furuike/pc/TextServer.vue +168 -168
  613. package/src/filiale/furuike/pc/VoiceServer.vue +216 -216
  614. package/src/filiale/furuike/pc/WorkCenter.vue +104 -104
  615. package/src/filiale/furuike/pc/WorkHistory.vue +576 -576
  616. package/src/filiale/furuike/pc/WorkListAllNew.vue +855 -855
  617. package/src/filiale/furuike/telephone.js +115 -115
  618. package/src/filiale/furuike/telephoneAndroid.js +23 -23
  619. package/src/filiale/gehua/pc/Console.vue +676 -676
  620. package/src/filiale/gehua/pc/TelAgentVoiceReport.vue +285 -285
  621. package/src/filiale/gehua/pc/TelFindUser.vue +214 -214
  622. package/src/filiale/gehua/telephone.js +16 -16
  623. package/src/filiale/gehua/telephoneAndroid.js +9 -9
  624. package/src/filiale/gongyi/android/RepairDetails.vue +542 -542
  625. package/src/filiale/gongyi/android/RepairFirstV.vue +537 -537
  626. package/src/filiale/gongyi/android/RepairOrderV.vue +1415 -1415
  627. package/src/filiale/gongyi/pc/WorkListAll.vue +632 -632
  628. package/src/filiale/gongyi/telephone.js +13 -13
  629. package/src/filiale/gongyi/telephoneAndroid.js +15 -15
  630. package/src/filiale/guangxi/android/FaultAll.vue +896 -896
  631. package/src/filiale/guangxi/telephoneAndroid.js +13 -13
  632. package/src/filiale/hanzhong/PagedList.js +248 -248
  633. package/src/filiale/hanzhong/android/Outlay.vue +265 -265
  634. package/src/filiale/hanzhong/android/RepairInfo.vue +167 -167
  635. package/src/filiale/hanzhong/hzSelectUtil.js +84 -84
  636. package/src/filiale/hanzhong/md5.js +266 -266
  637. package/src/filiale/hanzhong/pc/AnalysisMain.vue +477 -477
  638. package/src/filiale/hanzhong/pc/Console.vue +884 -884
  639. package/src/filiale/hanzhong/pc/DistributeWork.vue +420 -420
  640. package/src/filiale/hanzhong/pc/FailureEdit.vue +195 -195
  641. package/src/filiale/hanzhong/pc/RecordInfoRight.vue +84 -84
  642. package/src/filiale/hanzhong/pc/RecordList.vue +53 -53
  643. package/src/filiale/hanzhong/pc/RecordListLeft.vue +196 -196
  644. package/src/filiale/hanzhong/pc/Seekwork.vue +318 -318
  645. package/src/filiale/hanzhong/pc/StateStatistics.vue +292 -292
  646. package/src/filiale/hanzhong/pc/TelFindUser.vue +224 -224
  647. package/src/filiale/hanzhong/pc/TelLossList.vue +137 -137
  648. package/src/filiale/hanzhong/pc/TelephoneAnaly.vue +104 -104
  649. package/src/filiale/hanzhong/pc/TelephoneType.vue +269 -269
  650. package/src/filiale/hanzhong/pc/TextServer.vue +157 -157
  651. package/src/filiale/hanzhong/pc/VoiceServer.vue +208 -208
  652. package/src/filiale/hanzhong/pc/message/AllUser.vue +615 -615
  653. package/src/filiale/hanzhong/pc/message/AllUserNew.vue +638 -638
  654. package/src/filiale/hanzhong/pc/message/ArrearsList.vue +397 -397
  655. package/src/filiale/hanzhong/pc/message/MessageList.vue +635 -635
  656. package/src/filiale/hanzhong/pc/message/MessageManage.vue +136 -136
  657. package/src/filiale/hanzhong/pc/message/MessageManageList.vue +127 -127
  658. package/src/filiale/hanzhong/pc/message/MessageManageNew.vue +121 -121
  659. package/src/filiale/hanzhong/pc/message/TemplateMessage.vue +92 -92
  660. package/src/filiale/hanzhong/pc/message/UserDefinedMessage.vue +90 -90
  661. package/src/filiale/hanzhong/pc/message/UserDefinedMessageNew.vue +121 -121
  662. package/src/filiale/hanzhong/telephone.js +48 -48
  663. package/src/filiale/hanzhong/telephoneAndroid.js +15 -15
  664. package/src/filiale/kelai/android/AppTakePic.vue +143 -143
  665. package/src/filiale/kelai/android/Outlay.vue +274 -274
  666. package/src/filiale/kelai/android/PhoneVentilationLeave.vue +176 -176
  667. package/src/filiale/kelai/android/RepairFirstV.vue +552 -552
  668. package/src/filiale/kelai/android/RepairOrderV.vue +1446 -1446
  669. package/src/filiale/kelai/android/RepairTypeList.vue +170 -170
  670. package/src/filiale/kelai/android/RepairUserInfo.vue +537 -537
  671. package/src/filiale/kelai/pc/CallReport/CallReportMainPage-Kelai.vue +612 -612
  672. package/src/filiale/kelai/pc/CallReport/CumulativeCalls.vue +128 -128
  673. package/src/filiale/kelai/pc/CallReport/IncomingTimedata.vue +69 -69
  674. package/src/filiale/kelai/pc/CallReport/Incomingcallvolume.vue +82 -82
  675. package/src/filiale/kelai/pc/CallReport/SeatStatus.vue +60 -60
  676. package/src/filiale/kelai/pc/CallReport/Time.vue +107 -107
  677. package/src/filiale/kelai/pc/CallReport/WorkorderTypesum.vue +76 -76
  678. package/src/filiale/kelai/pc/CallReport/timeRunning.vue +66 -66
  679. package/src/filiale/kelai/pc/KeLaiMaintenanceReport.vue +297 -297
  680. package/src/filiale/kelai/pc/RecordListLeft.vue +188 -188
  681. package/src/filiale/kelai/pc/Seekwork.vue +308 -308
  682. package/src/filiale/kelai/pc/TelAgentVoiceReport.vue +276 -276
  683. package/src/filiale/kelai/pc/TelFindUser.vue +214 -214
  684. package/src/filiale/kelai/pc/TelLossList.vue +154 -154
  685. package/src/filiale/kelai/pc/TextServer.vue +157 -157
  686. package/src/filiale/kelai/pc/Trafficassess.vue +159 -159
  687. package/src/filiale/kelai/pc/VisitInfo.vue +268 -268
  688. package/src/filiale/kelai/pc/VoiceServer.vue +227 -227
  689. package/src/filiale/kelai/pc/WorkCenterList.vue +315 -315
  690. package/src/filiale/kelai/pc/WorkListAllNew.vue +717 -717
  691. package/src/filiale/kelai/pc/serviceDeleteOrder.vue +55 -55
  692. package/src/filiale/kelai/telephone.js +40 -40
  693. package/src/filiale/kelai/telephoneAndroid.js +19 -19
  694. package/src/filiale/liaoyuan/android/FaultAll.vue +737 -737
  695. package/src/filiale/liaoyuan/android/RepairDetails.vue +493 -493
  696. package/src/filiale/liaoyuan/android/RepairOrderV.vue +831 -831
  697. package/src/filiale/liaoyuan/telephoneAndroid.js +13 -13
  698. package/src/filiale/meihekou/android/Othercharge.vue +443 -443
  699. package/src/filiale/meihekou/android/createQRcode.vue +192 -192
  700. package/src/filiale/meihekou/android/onlineBuyGas.vue +793 -793
  701. package/src/filiale/meihekou/telephone.js +13 -13
  702. package/src/filiale/meihekou/telephoneAndroid.js +18 -18
  703. package/src/filiale/qianneng/android/AppInstallationMaterial.vue +1032 -1032
  704. package/src/filiale/qianneng/android/Examine.vue +513 -513
  705. package/src/filiale/qianneng/android/FaultAll.vue +883 -883
  706. package/src/filiale/qianneng/android/MaterIialOne.vue +123 -123
  707. package/src/filiale/qianneng/android/PhoneStandWork.vue +412 -412
  708. package/src/filiale/qianneng/android/QueryTemporaryRepair.vue +243 -243
  709. package/src/filiale/qianneng/android/RepairDetails.vue +666 -666
  710. package/src/filiale/qianneng/android/RepairFirstV.vue +615 -615
  711. package/src/filiale/qianneng/android/RepairInfo.vue +147 -147
  712. package/src/filiale/qianneng/android/RepairOrderV.vue +874 -874
  713. package/src/filiale/qianneng/android/RepairUserInfo.vue +542 -542
  714. package/src/filiale/qianneng/android/TemporarySingle.vue +537 -537
  715. package/src/filiale/qianneng/android/chargesList.vue +161 -161
  716. package/src/filiale/qianneng/pc/ComplainWork.vue +324 -324
  717. package/src/filiale/qianneng/pc/DistributeWork.vue +182 -182
  718. package/src/filiale/qianneng/pc/FailureEdit.vue +161 -161
  719. package/src/filiale/qianneng/pc/Indoorinstallation.vue +832 -832
  720. package/src/filiale/qianneng/pc/MaterialDetailed.vue +260 -260
  721. package/src/filiale/qianneng/pc/MaterialStatistics.vue +144 -144
  722. package/src/filiale/qianneng/pc/NewRepairPaper.vue +467 -467
  723. package/src/filiale/qianneng/pc/Outdoorinstallation.vue +736 -736
  724. package/src/filiale/qianneng/pc/RepairsWork.vue +992 -992
  725. package/src/filiale/qianneng/pc/Seekwork.vue +308 -308
  726. package/src/filiale/qianneng/pc/WorkHistory.vue +562 -562
  727. package/src/filiale/qianneng/pc/WorkListAllNew.vue +749 -749
  728. package/src/filiale/qianneng/pc/changetable.vue +273 -273
  729. package/src/filiale/qianneng/telephone.js +22 -22
  730. package/src/filiale/qianneng/telephoneAndroid.js +22 -22
  731. package/src/filiale/rizhao/android/FaultAll.vue +893 -893
  732. package/src/filiale/rizhao/android/Othercharge.vue +423 -423
  733. package/src/filiale/rizhao/android/RepairFirstV.vue +525 -525
  734. package/src/filiale/rizhao/android/RepairInfo.vue +172 -172
  735. package/src/filiale/rizhao/android/RepairOrderV.vue +1415 -1415
  736. package/src/filiale/rizhao/pc/AnalysisMain.vue +355 -355
  737. package/src/filiale/rizhao/pc/CallRecords.vue +89 -89
  738. package/src/filiale/rizhao/pc/ChangemeterInfo.vue +87 -87
  739. package/src/filiale/rizhao/pc/ComplainWork.vue +357 -357
  740. package/src/filiale/rizhao/pc/Console.vue +456 -456
  741. package/src/filiale/rizhao/pc/DispatchMan.vue +100 -100
  742. package/src/filiale/rizhao/pc/DispatchWork.vue +100 -100
  743. package/src/filiale/rizhao/pc/DistributeWork.vue +188 -188
  744. package/src/filiale/rizhao/pc/FailureEdit.vue +183 -183
  745. package/src/filiale/rizhao/pc/FailureEditFire.vue +169 -169
  746. package/src/filiale/rizhao/pc/FailureEditRepair.vue +174 -174
  747. package/src/filiale/rizhao/pc/IgnitionVentilation.vue +890 -890
  748. package/src/filiale/rizhao/pc/NewRepairPaper.vue +377 -377
  749. package/src/filiale/rizhao/pc/RecordListLeft.vue +189 -189
  750. package/src/filiale/rizhao/pc/ReminderOrder.vue +51 -51
  751. package/src/filiale/rizhao/pc/RepairsWork.vue +936 -936
  752. package/src/filiale/rizhao/pc/Seekwork.vue +339 -339
  753. package/src/filiale/rizhao/pc/SiteSend.vue +258 -258
  754. package/src/filiale/rizhao/pc/StateStatistics.vue +292 -292
  755. package/src/filiale/rizhao/pc/TelFindUser.vue +243 -243
  756. package/src/filiale/rizhao/pc/TelMan.vue +133 -133
  757. package/src/filiale/rizhao/pc/TeleInfo.vue +142 -142
  758. package/src/filiale/rizhao/pc/TelephoneAnaly.vue +72 -72
  759. package/src/filiale/rizhao/pc/TelephoneType.vue +272 -272
  760. package/src/filiale/rizhao/pc/Traffic.vue +91 -91
  761. package/src/filiale/rizhao/pc/UserOperate.vue +49 -49
  762. package/src/filiale/rizhao/pc/VoiceServer.vue +219 -219
  763. package/src/filiale/rizhao/pc/WorkCenterList.vue +294 -294
  764. package/src/filiale/rizhao/pc/WorkHistory.vue +541 -541
  765. package/src/filiale/rizhao/pc/WorkList.vue +783 -783
  766. package/src/filiale/rizhao/pc/WorkListAllNew.vue +673 -673
  767. package/src/filiale/rizhao/pc/WxBaobiaoService.vue +134 -134
  768. package/src/filiale/rizhao/telephone.js +57 -57
  769. package/src/filiale/rizhao/telephoneAndroid.js +16 -16
  770. package/src/filiale/rongcheng/CliWorkListAll.vue +701 -701
  771. package/src/filiale/rongcheng/FaultAll.vue +713 -713
  772. package/src/filiale/rongcheng/RepairFirstV.vue +418 -418
  773. package/src/filiale/rongcheng/RepairOrderV.vue +1445 -1445
  774. package/src/filiale/rongcheng/RepairUserInfo.vue +539 -539
  775. package/src/filiale/rongcheng/ServiceDetails.vue +53 -53
  776. package/src/filiale/rongcheng/WorkListAll.vue +727 -727
  777. package/src/filiale/rongcheng/batchPrintSafeCheckOrder.vue +303 -303
  778. package/src/filiale/rongcheng/checkmsgZG.vue +243 -243
  779. package/src/filiale/rongcheng/onlineBuyGas.vue +799 -799
  780. package/src/filiale/rongcheng/onlineoperation.vue +383 -383
  781. package/src/filiale/rongcheng/onlinequeryuser.vue +460 -460
  782. package/src/filiale/rongcheng/telephone.js +19 -19
  783. package/src/filiale/rongcheng/telephoneAndroid.js +19 -19
  784. package/src/filiale/shanxian/android/RepairFirstV.vue +639 -639
  785. package/src/filiale/shanxian/pc/RepairsWork.vue +826 -826
  786. package/src/filiale/shanxian/pc/WorkList.vue +823 -823
  787. package/src/filiale/shanxian/telephone.js +13 -13
  788. package/src/filiale/shanxian/telephoneAndroid.js +13 -13
  789. package/src/filiale/shaoguan/pc/WorkCenterList.vue +326 -326
  790. package/src/filiale/shaoguan/pc/WorkListAllNew.vue +683 -683
  791. package/src/filiale/shaoguan/telephone.js +14 -14
  792. package/src/filiale/shexian/android/AddMyTask.vue +354 -354
  793. package/src/filiale/shexian/android/CompletedRepair.vue +280 -280
  794. package/src/filiale/shexian/android/FaultAll.vue +847 -847
  795. package/src/filiale/shexian/android/Outlay.vue +266 -266
  796. package/src/filiale/shexian/android/RepairFirstV.vue +775 -775
  797. package/src/filiale/shexian/android/RepairInfo.vue +182 -182
  798. package/src/filiale/shexian/android/RepairOrderV.vue +732 -732
  799. package/src/filiale/shexian/pc/NewRepairPaper.vue +374 -374
  800. package/src/filiale/shexian/pc/QueryVisitHistory.vue +237 -237
  801. package/src/filiale/shexian/pc/TelAgentVoiceReport.vue +271 -271
  802. package/src/filiale/shexian/pc/TelByOrderMan.vue +109 -109
  803. package/src/filiale/shexian/pc/TelByOrderManCount.vue +124 -124
  804. package/src/filiale/shexian/pc/TelByRepairType.vue +111 -111
  805. package/src/filiale/shexian/pc/WorkList.vue +785 -782
  806. package/src/filiale/shexian/pc/WorkListAllNew.vue +728 -722
  807. package/src/filiale/shexian/telephone.js +21 -21
  808. package/src/filiale/shexian/telephoneAndroid.js +32 -32
  809. package/src/filiale/shimen/pc/ChangemeterInfo.vue +108 -108
  810. package/src/filiale/shimen/pc/ComplainWork.vue +297 -297
  811. package/src/filiale/shimen/pc/DistributeWork.vue +173 -173
  812. package/src/filiale/shimen/pc/InfoTable.vue +122 -122
  813. package/src/filiale/shimen/pc/RepairList.vue +109 -109
  814. package/src/filiale/shimen/pc/RepairsWork.vue +803 -803
  815. package/src/filiale/shimen/pc/Seekwork.vue +307 -307
  816. package/src/filiale/shimen/pc/SellInfo.vue +87 -87
  817. package/src/filiale/shimen/pc/WorkListAllNew.vue +680 -680
  818. package/src/filiale/shimen/telephone.js +23 -23
  819. package/src/filiale/tianke/android/FaultAll.vue +854 -854
  820. package/src/filiale/tianke/android/RepairFirstV.vue +614 -614
  821. package/src/filiale/tianke/android.js +12 -12
  822. package/src/filiale/tianke/pc/DistributeWork.vue +180 -180
  823. package/src/filiale/tianke/pc/IgnitionVentilationWork.vue +801 -801
  824. package/src/filiale/tianke/pc/NewRepairPaper.vue +370 -370
  825. package/src/filiale/tianke/pc/RepairsWork.vue +794 -794
  826. package/src/filiale/tianke/pc/WorkList.vue +769 -769
  827. package/src/filiale/tianke/telephone.js +17 -17
  828. package/src/filiale/tianke/telephoneAndroid.js +13 -13
  829. package/src/filiale/tongchuan/android/AndroidStopGasManager.vue +321 -321
  830. package/src/filiale/tongchuan/android/CompletedRepair.vue +211 -211
  831. package/src/filiale/tongchuan/android/PhoneStandWork.vue +409 -409
  832. package/src/filiale/tongchuan/android/PhoneUpUserinfo.vue +1005 -1005
  833. package/src/filiale/tongchuan/android/RepairDetails.vue +623 -623
  834. package/src/filiale/tongchuan/android/RepairFirstV.vue +646 -646
  835. package/src/filiale/tongchuan/android/RepairInfo.vue +172 -172
  836. package/src/filiale/tongchuan/android/RepairOrderV.vue +1446 -1446
  837. package/src/filiale/tongchuan/android/TicketDetails.vue +411 -411
  838. package/src/filiale/tongchuan/pc/AnalysisMain.vue +355 -355
  839. package/src/filiale/tongchuan/pc/CallRecords.vue +96 -96
  840. package/src/filiale/tongchuan/pc/CheckWork.vue +289 -289
  841. package/src/filiale/tongchuan/pc/ComplainWork.vue +324 -324
  842. package/src/filiale/tongchuan/pc/DepRepairManCount.vue +148 -148
  843. package/src/filiale/tongchuan/pc/DistributeWork.vue +179 -179
  844. package/src/filiale/tongchuan/pc/ExportExcel.vue +204 -204
  845. package/src/filiale/tongchuan/pc/HiddenSituationWeixiu.vue +115 -115
  846. package/src/filiale/tongchuan/pc/QueryVisitHistory.vue +236 -236
  847. package/src/filiale/tongchuan/pc/RecordListLeft.vue +216 -216
  848. package/src/filiale/tongchuan/pc/RepairList.vue +102 -102
  849. package/src/filiale/tongchuan/pc/RepairWorkReport.vue +133 -133
  850. package/src/filiale/tongchuan/pc/RepairsWork.vue +836 -836
  851. package/src/filiale/tongchuan/pc/SeatInfo.vue +325 -325
  852. package/src/filiale/tongchuan/pc/Seekwork.vue +307 -307
  853. package/src/filiale/tongchuan/pc/ServiceDetails.vue +112 -112
  854. package/src/filiale/tongchuan/pc/StateStatistics.vue +292 -292
  855. package/src/filiale/tongchuan/pc/TelFindUser.vue +278 -278
  856. package/src/filiale/tongchuan/pc/TelMan.vue +142 -142
  857. package/src/filiale/tongchuan/pc/TelephoneAnaly.vue +102 -102
  858. package/src/filiale/tongchuan/pc/TelephoneType.vue +272 -272
  859. package/src/filiale/tongchuan/pc/Traffic.vue +103 -103
  860. package/src/filiale/tongchuan/pc/UserWork.vue +805 -805
  861. package/src/filiale/tongchuan/pc/VisitInfo.vue +305 -305
  862. package/src/filiale/tongchuan/pc/VisitListWork.vue +251 -251
  863. package/src/filiale/tongchuan/pc/VoiceServer.vue +218 -218
  864. package/src/filiale/tongchuan/pc/WorkCenterList.vue +297 -297
  865. package/src/filiale/tongchuan/pc/WorkHistory.vue +521 -521
  866. package/src/filiale/tongchuan/pc/WorkList.vue +811 -811
  867. package/src/filiale/tongchuan/pc/WorkListAll.vue +731 -731
  868. package/src/filiale/tongchuan/pc/WorkOrderStatistics.vue +294 -294
  869. package/src/filiale/tongchuan/pc/WorkorderCheckDistributePlan.vue +376 -376
  870. package/src/filiale/tongchuan/pc/visitPlanList.vue +342 -342
  871. package/src/filiale/tongchuan/pc/visitPlanManage.vue +599 -599
  872. package/src/filiale/tongchuan/pc/visitServiceList.vue +285 -285
  873. package/src/filiale/tongchuan/telephone.js +52 -52
  874. package/src/filiale/tongchuan/telephoneAndroid.js +23 -23
  875. package/src/filiale/v3new/android/FaultAll.vue +809 -809
  876. package/src/filiale/v3new/android/RepairFirstV.vue +633 -633
  877. package/src/filiale/v3new/pc/SiteBack.vue +83 -83
  878. package/src/filiale/v3new/pc/WorkCenter.vue +104 -104
  879. package/src/filiale/v3new/pc/WorkCenterList.vue +274 -274
  880. package/src/filiale/v3new/pc/WorkHistory.vue +537 -537
  881. package/src/filiale/v3new/pc/WorkList.vue +766 -766
  882. package/src/filiale/v3new/pc/WorkListNew.vue +706 -706
  883. package/src/filiale/v3new/pc/serviceDeleteOrder.vue +51 -51
  884. package/src/filiale/v3new/telephone.js +19 -19
  885. package/src/filiale/v3new/telephoneAndroid.js +15 -15
  886. package/src/filiale/weinanct/android/AppInstallationMaterial.vue +586 -586
  887. package/src/filiale/weinanct/android/FaultAll.vue +854 -854
  888. package/src/filiale/weinanct/android/RepairDetails.vue +508 -508
  889. package/src/filiale/weinanct/android/RepairFirstV.vue +635 -635
  890. package/src/filiale/weinanct/android/RepairOrderV.vue +1443 -1443
  891. package/src/filiale/weinanct/pc/TelFindUser.vue +213 -213
  892. package/src/filiale/weinanct/pc/VoiceServer.vue +208 -208
  893. package/src/filiale/weinanct/telephone.js +14 -14
  894. package/src/filiale/weinanct/telephoneAndroid.js +20 -20
  895. package/src/filiale/weinanct//350/257/264/346/230/216.txt +1 -1
  896. package/src/filiale/wenxi/android/FailureShow.vue +61 -61
  897. package/src/filiale/wenxi/android/PhoneUpUserinfo.vue +1053 -1053
  898. package/src/filiale/wenxi/android/RepairFirstV.vue +537 -537
  899. package/src/filiale/wenxi/android/RepairInfo.vue +252 -252
  900. package/src/filiale/wenxi/android/RepairOrderV.vue +805 -805
  901. package/src/filiale/wenxi/android/RepairUserInfo.vue +532 -532
  902. package/src/filiale/wenxi/android/ZHihuanFirst.vue +502 -502
  903. package/src/filiale/wenxi/pc/DistributeWork.vue +163 -163
  904. package/src/filiale/wenxi/pc/FailureEdit.vue +206 -206
  905. package/src/filiale/wenxi/pc/GasWork.vue +747 -747
  906. package/src/filiale/wenxi/pc/MetereadInfo.vue +82 -82
  907. package/src/filiale/wenxi/pc/RepairsWork.vue +774 -774
  908. package/src/filiale/wenxi/pc/TelAgentVoiceReport.vue +290 -0
  909. package/src/filiale/wenxi/pc/TelFindUser.vue +306 -306
  910. package/src/filiale/wenxi/pc/VoiceServer.vue +214 -214
  911. package/src/filiale/wenxi/pc/WorkListAll.vue +698 -698
  912. package/src/filiale/wenxi/telephone.js +18 -17
  913. package/src/filiale/wenxi/telephoneAndroid.js +19 -19
  914. package/src/filiale/wuan/Util.js +461 -461
  915. package/src/filiale/wuan/android/AddMyTask.vue +227 -227
  916. package/src/filiale/wuan/android/RepairInfo.vue +136 -136
  917. package/src/filiale/wuan/android/RepairOrderV.vue +1384 -1384
  918. package/src/filiale/wuan/android/RepairUserInfo.vue +581 -581
  919. package/src/filiale/wuan/pc/BatchList.vue +329 -329
  920. package/src/filiale/wuan/pc/BatchListSanhu.vue +329 -329
  921. package/src/filiale/wuan/pc/BatchOrdersSanhu.vue +115 -115
  922. package/src/filiale/wuan/pc/CheckWork.vue +263 -263
  923. package/src/filiale/wuan/pc/DistributeWork.vue +136 -136
  924. package/src/filiale/wuan/pc/FailureEdit.vue +174 -174
  925. package/src/filiale/wuan/pc/GasWorkSanhu.vue +817 -817
  926. package/src/filiale/wuan/pc/RepairsWork.vue +848 -848
  927. package/src/filiale/wuan/pc/Seekwork.vue +311 -311
  928. package/src/filiale/wuan/pc/TelFindUser.vue +229 -229
  929. package/src/filiale/wuan/pc/WorkListAll.vue +642 -642
  930. package/src/filiale/wuan/telephone.js +23 -23
  931. package/src/filiale/wuan/telephoneAndroid.js +17 -17
  932. package/src/filiale/wuhai/pc/CallRcords.vue +109 -109
  933. package/src/filiale/wuhai/pc/ComplainWork.vue +324 -324
  934. package/src/filiale/wuhai/pc/Console.vue +432 -432
  935. package/src/filiale/wuhai/pc/DistributeWork.vue +173 -173
  936. package/src/filiale/wuhai/pc/FailureEdit.vue +190 -190
  937. package/src/filiale/wuhai/pc/InfoTable.vue +135 -135
  938. package/src/filiale/wuhai/pc/NewRepairPaper.vue +380 -380
  939. package/src/filiale/wuhai/pc/RecordListLeft.vue +202 -202
  940. package/src/filiale/wuhai/pc/RepairsWork.vue +811 -811
  941. package/src/filiale/wuhai/pc/SecuritycheckInfo.vue +92 -92
  942. package/src/filiale/wuhai/pc/Seekwork.vue +361 -361
  943. package/src/filiale/wuhai/pc/ServiceRcords.vue +146 -146
  944. package/src/filiale/wuhai/pc/TelFindUser.vue +256 -256
  945. package/src/filiale/wuhai/pc/VoiceServer.vue +211 -211
  946. package/src/filiale/wuhai/pc/WorkCenter.vue +104 -104
  947. package/src/filiale/wuhai/pc/WorkCenterList.vue +337 -337
  948. package/src/filiale/wuhai/pc/WorkListAllNew.vue +715 -715
  949. package/src/filiale/wuhai/pc/serviceDeleteOrder.vue +54 -54
  950. package/src/filiale/wuhai/telephone.js +35 -35
  951. package/src/filiale/xinkang/android/FaultAll.vue +840 -840
  952. package/src/filiale/xinkang/android/RepairFirstV.vue +484 -484
  953. package/src/filiale/xinkang/telephoneAndroid.js +14 -14
  954. package/src/filiale/yuansheng/android/RepairFirstV.vue +636 -636
  955. package/src/filiale/yuansheng/android/RepairInfo.vue +166 -166
  956. package/src/filiale/yuansheng/pc/DistributeWork.vue +177 -177
  957. package/src/filiale/yuansheng/pc/FailureEdit.vue +188 -188
  958. package/src/filiale/yuansheng/pc/HandplanInfo.vue +78 -78
  959. package/src/filiale/yuansheng/pc/MetereadInfo.vue +83 -83
  960. package/src/filiale/yuansheng/pc/ReservationWork.vue +156 -156
  961. package/src/filiale/yuansheng/pc/TelFindUser.vue +237 -237
  962. package/src/filiale/yuansheng/pc/VoiceServer.vue +208 -208
  963. package/src/filiale/yuansheng/telephone.js +20 -20
  964. package/src/filiale/yuansheng/telephoneAndroid.js +16 -16
  965. package/src/filiale/yuncheng/pc/TelFindUser.vue +302 -302
  966. package/src/filiale/yuncheng/telephone.js +12 -12
  967. package/src/filiale/zhongsheng/android/FailureShow.vue +61 -61
  968. package/src/filiale/zhongsheng/android/FaultAll.vue +741 -741
  969. package/src/filiale/zhongsheng/android/RepairFirstV.vue +464 -464
  970. package/src/filiale/zhongsheng/android/RepairInfo.vue +133 -133
  971. package/src/filiale/zhongsheng/android/RepairOrderV.vue +1430 -1430
  972. package/src/filiale/zhongsheng/android/RepairUserInfo.vue +559 -559
  973. package/src/filiale/zhongsheng/pc/ComplainWork.vue +299 -299
  974. package/src/filiale/zhongsheng/pc/Console.vue +432 -432
  975. package/src/filiale/zhongsheng/pc/DistributeWork.vue +173 -173
  976. package/src/filiale/zhongsheng/pc/IgnitionVentilationWork.vue +836 -836
  977. package/src/filiale/zhongsheng/pc/InfoTable.vue +124 -124
  978. package/src/filiale/zhongsheng/pc/RepairsWork.vue +775 -775
  979. package/src/filiale/zhongsheng/pc/Seekwork.vue +283 -283
  980. package/src/filiale/zhongsheng/pc/TelFindUser.vue +216 -216
  981. package/src/filiale/zhongsheng/pc/WorkList.vue +805 -805
  982. package/src/filiale/zhongsheng/pc/WorkListAll.vue +628 -628
  983. package/src/filiale/zhongsheng/telephone.js +23 -23
  984. package/src/filiale/zhongsheng/telephoneAndroid.js +19 -19
  985. package/src/filiale/zhongyi/android/FaultAll.vue +854 -854
  986. package/src/filiale/zhongyi/android/RepairFirstV.vue +614 -614
  987. package/src/filiale/zhongyi/android.js +12 -12
  988. package/src/filiale/zhongyi/pc/DistributeWork.vue +180 -180
  989. package/src/filiale/zhongyi/pc/IgnitionVentilationWork.vue +801 -801
  990. package/src/filiale/zhongyi/pc/NewRepairPaper.vue +370 -370
  991. package/src/filiale/zhongyi/pc/RepairsWork.vue +794 -794
  992. package/src/filiale/zhongyi/pc/WorkList.vue +769 -769
  993. package/src/filiale/zhongyi/pc/WorkListAllNew.vue +672 -672
  994. package/src/filiale/zhongyi/telephone.js +18 -18
  995. package/src/filiale/zhongyi/telephoneAndroid.js +13 -13
  996. package/src/filiale/zhoukou/android/ChargeBill.vue +201 -201
  997. package/src/filiale/zhoukou/android/FaultAll.vue +779 -779
  998. package/src/filiale/zhoukou/android/Othercharge.vue +591 -591
  999. package/src/filiale/zhoukou/android/OtherchargeZhoukou.vue +574 -574
  1000. package/src/filiale/zhoukou/android/Outlay.vue +236 -236
  1001. package/src/filiale/zhoukou/android/RepairDetails.vue +544 -544
  1002. package/src/filiale/zhoukou/android/RepairFirstV.vue +542 -542
  1003. package/src/filiale/zhoukou/android/RepairInfo.vue +136 -136
  1004. package/src/filiale/zhoukou/android/RepairOrderV.vue +1383 -1383
  1005. package/src/filiale/zhoukou/android/RepairUserInfo.vue +532 -532
  1006. package/src/filiale/zhoukou/android/ZkBill.vue +191 -191
  1007. package/src/filiale/zhoukou/android/createQRcode.vue +256 -256
  1008. package/src/filiale/zhoukou/android/onlineBuyGas.vue +804 -804
  1009. package/src/filiale/zhoukou/android/onlineoperation.vue +416 -416
  1010. package/src/filiale/zhoukou/android/onlinequeryuser.vue +468 -468
  1011. package/src/filiale/zhoukou/pc/ExportExcel.vue +204 -204
  1012. package/src/filiale/zhoukou/pc/NewRepairPaper.vue +366 -366
  1013. package/src/filiale/zhoukou/pc/SiteSend.vue +265 -265
  1014. package/src/filiale/zhoukou/pc/WorkHistory.vue +514 -514
  1015. package/src/filiale/zhoukou/pc/WorkList.vue +653 -653
  1016. package/src/filiale/zhoukou/pc/WorkListAllNew.vue +675 -675
  1017. package/src/filiale/zhoukou/telephone.js +18 -18
  1018. package/src/filiale/zhoukou/telephoneAndroid.js +33 -33
  1019. package/src/index.js +15 -15
  1020. package/src/main.js +1 -1
  1021. package/src/plugins/DataSql.js +569 -569
  1022. package/src/plugins/EmojiData.js +514 -514
  1023. package/src/plugins/EncryptUtil.js +53 -53
  1024. package/src/plugins/HttpLoad.js +93 -93
  1025. package/src/plugins/LoadData.js +40 -40
  1026. package/src/plugins/LoadParams.js +54 -54
  1027. package/src/plugins/LocalPagedList.js +107 -107
  1028. package/src/plugins/ObjTree.js +532 -532
  1029. package/src/plugins/TelGetSaleParams.js +63 -63
  1030. package/src/qrcode.js +618 -618
  1031. package/src/qrcode.min.js +1 -1
  1032. package/src/stores/exportConfig.js +10 -10
  1033. package/src/stores/wxconfig.js +10 -10
  1034. package/src/telephone-android.js +367 -367
  1035. package/src/telephone-shaoguan.js +256 -256
  1036. package/src/telephone-tongcheng.js +254 -254
  1037. package/src/telephone.js +749 -749
  1038. package/src/telephoneanaly.less +704 -704
  1039. package/src/utils/LdapHelper.js +99 -99
  1040. package/src/weinan-android.js +350 -350
  1041. package/src/weinan.js +537 -537
  1042. package/static/fonts/font.css +6 -6
  1043. package/static/js/adapter.min.js +2049 -2049
  1044. package/static/js/bootstrap.min.js +7 -7
  1045. package/static/js/ctilink.js +1303 -1303
  1046. package/static/js/ctimsg.js +655 -655
  1047. package/static/js/janus.js +4034 -4034
  1048. package/static/js/jquery-2.1.1.min.js +5 -5
  1049. package/yarn-error.log +7872 -7872
  1050. package//345/221/274/345/217/253/345/267/245/345/215/225/351/205/215/347/275/256/350/257/264/346/230/216.md +6 -6
package/src/qrcode.js CHANGED
@@ -1,618 +1,618 @@
1
- /**
2
- * @fileoverview
3
- * - Using the 'QRCode for Javascript library'
4
- * - Fixed dataset of 'QRCode for Javascript library' for support full-spec.
5
- * - this library has no dependencies.
6
- *
7
- * @author davidshimjs
8
- * @see <a href="http://www.d-project.com/" target="_blank">http://www.d-project.com/</a>
9
- * @see <a href="http://jeromeetienne.github.com/jquery-qrcode/" target="_blank">http://jeromeetienne.github.com/jquery-qrcode/</a>
10
- */
11
- var QRCode;
12
-
13
- (function () {
14
- //---------------------------------------------------------------------
15
- // QRCode for JavaScript
16
- //
17
- // Copyright (c) 2009 Kazuhiko Arase
18
- //
19
- // URL: http://www.d-project.com/
20
- //
21
- // Licensed under the MIT license:
22
- // http://www.opensource.org/licenses/mit-license.php
23
- //
24
- // The word "QR Code" is registered trademark of
25
- // DENSO WAVE INCORPORATED
26
- // http://www.denso-wave.com/qrcode/faqpatent-e.html
27
- //
28
- //---------------------------------------------------------------------
29
- function QR8bitByte(data) {
30
- this.mode = QRMode.MODE_8BIT_BYTE;
31
- this.data = data;
32
- this.parsedData = [];
33
-
34
- // Added to support UTF-8 Characters
35
- for (var i = 0, l = this.data.length; i < l; i++) {
36
- var byteArray = [];
37
- var code = this.data.charCodeAt(i);
38
-
39
- if (code > 0x10000) {
40
- byteArray[0] = 0xF0 | ((code & 0x1C0000) >>> 18);
41
- byteArray[1] = 0x80 | ((code & 0x3F000) >>> 12);
42
- byteArray[2] = 0x80 | ((code & 0xFC0) >>> 6);
43
- byteArray[3] = 0x80 | (code & 0x3F);
44
- } else if (code > 0x800) {
45
- byteArray[0] = 0xE0 | ((code & 0xF000) >>> 12);
46
- byteArray[1] = 0x80 | ((code & 0xFC0) >>> 6);
47
- byteArray[2] = 0x80 | (code & 0x3F);
48
- } else if (code > 0x80) {
49
- byteArray[0] = 0xC0 | ((code & 0x7C0) >>> 6);
50
- byteArray[1] = 0x80 | (code & 0x3F);
51
- } else {
52
- byteArray[0] = code;
53
- }
54
-
55
- this.parsedData.push(byteArray);
56
- }
57
-
58
- this.parsedData = Array.prototype.concat.apply([], this.parsedData);
59
-
60
- if (this.parsedData.length != this.data.length) {
61
- this.parsedData.unshift(191);
62
- this.parsedData.unshift(187);
63
- this.parsedData.unshift(239);
64
- }
65
- }
66
-
67
- QR8bitByte.prototype = {
68
- getLength: function (buffer) {
69
- return this.parsedData.length;
70
- },
71
- write: function (buffer) {
72
- for (var i = 0, l = this.parsedData.length; i < l; i++) {
73
- buffer.put(this.parsedData[i], 8);
74
- }
75
- }
76
- };
77
-
78
- function QRCodeModel(typeNumber, errorCorrectLevel) {
79
- this.typeNumber = typeNumber;
80
- this.errorCorrectLevel = errorCorrectLevel;
81
- this.modules = null;
82
- this.moduleCount = 0;
83
- this.dataCache = null;
84
- this.dataList = [];
85
- }
86
-
87
- QRCodeModel.prototype={addData:function(data){var newData=new QR8bitByte(data);this.dataList.push(newData);this.dataCache=null;},isDark:function(row,col){if(row<0||this.moduleCount<=row||col<0||this.moduleCount<=col){throw new Error(row+","+col);}
88
- return this.modules[row][col];},getModuleCount:function(){return this.moduleCount;},make:function(){this.makeImpl(false,this.getBestMaskPattern());},makeImpl:function(test,maskPattern){this.moduleCount=this.typeNumber*4+17;this.modules=new Array(this.moduleCount);for(var row=0;row<this.moduleCount;row++){this.modules[row]=new Array(this.moduleCount);for(var col=0;col<this.moduleCount;col++){this.modules[row][col]=null;}}
89
- this.setupPositionProbePattern(0,0);this.setupPositionProbePattern(this.moduleCount-7,0);this.setupPositionProbePattern(0,this.moduleCount-7);this.setupPositionAdjustPattern();this.setupTimingPattern();this.setupTypeInfo(test,maskPattern);if(this.typeNumber>=7){this.setupTypeNumber(test);}
90
- if(this.dataCache==null){this.dataCache=QRCodeModel.createData(this.typeNumber,this.errorCorrectLevel,this.dataList);}
91
- this.mapData(this.dataCache,maskPattern);},setupPositionProbePattern:function(row,col){for(var r=-1;r<=7;r++){if(row+r<=-1||this.moduleCount<=row+r)continue;for(var c=-1;c<=7;c++){if(col+c<=-1||this.moduleCount<=col+c)continue;if((0<=r&&r<=6&&(c==0||c==6))||(0<=c&&c<=6&&(r==0||r==6))||(2<=r&&r<=4&&2<=c&&c<=4)){this.modules[row+r][col+c]=true;}else{this.modules[row+r][col+c]=false;}}}},getBestMaskPattern:function(){var minLostPoint=0;var pattern=0;for(var i=0;i<8;i++){this.makeImpl(true,i);var lostPoint=QRUtil.getLostPoint(this);if(i==0||minLostPoint>lostPoint){minLostPoint=lostPoint;pattern=i;}}
92
- return pattern;},createMovieClip:function(target_mc,instance_name,depth){var qr_mc=target_mc.createEmptyMovieClip(instance_name,depth);var cs=1;this.make();for(var row=0;row<this.modules.length;row++){var y=row*cs;for(var col=0;col<this.modules[row].length;col++){var x=col*cs;var dark=this.modules[row][col];if(dark){qr_mc.beginFill(0,100);qr_mc.moveTo(x,y);qr_mc.lineTo(x+cs,y);qr_mc.lineTo(x+cs,y+cs);qr_mc.lineTo(x,y+cs);qr_mc.endFill();}}}
93
- return qr_mc;},setupTimingPattern:function(){for(var r=8;r<this.moduleCount-8;r++){if(this.modules[r][6]!=null){continue;}
94
- this.modules[r][6]=(r%2==0);}
95
- for(var c=8;c<this.moduleCount-8;c++){if(this.modules[6][c]!=null){continue;}
96
- this.modules[6][c]=(c%2==0);}},setupPositionAdjustPattern:function(){var pos=QRUtil.getPatternPosition(this.typeNumber);for(var i=0;i<pos.length;i++){for(var j=0;j<pos.length;j++){var row=pos[i];var col=pos[j];if(this.modules[row][col]!=null){continue;}
97
- for(var r=-2;r<=2;r++){for(var c=-2;c<=2;c++){if(r==-2||r==2||c==-2||c==2||(r==0&&c==0)){this.modules[row+r][col+c]=true;}else{this.modules[row+r][col+c]=false;}}}}}},setupTypeNumber:function(test){var bits=QRUtil.getBCHTypeNumber(this.typeNumber);for(var i=0;i<18;i++){var mod=(!test&&((bits>>i)&1)==1);this.modules[Math.floor(i/3)][i%3+this.moduleCount-8-3]=mod;}
98
- for(var i=0;i<18;i++){var mod=(!test&&((bits>>i)&1)==1);this.modules[i%3+this.moduleCount-8-3][Math.floor(i/3)]=mod;}},setupTypeInfo:function(test,maskPattern){var data=(this.errorCorrectLevel<<3)|maskPattern;var bits=QRUtil.getBCHTypeInfo(data);for(var i=0;i<15;i++){var mod=(!test&&((bits>>i)&1)==1);if(i<6){this.modules[i][8]=mod;}else if(i<8){this.modules[i+1][8]=mod;}else{this.modules[this.moduleCount-15+i][8]=mod;}}
99
- for(var i=0;i<15;i++){var mod=(!test&&((bits>>i)&1)==1);if(i<8){this.modules[8][this.moduleCount-i-1]=mod;}else if(i<9){this.modules[8][15-i-1+1]=mod;}else{this.modules[8][15-i-1]=mod;}}
100
- this.modules[this.moduleCount-8][8]=(!test);},mapData:function(data,maskPattern){var inc=-1;var row=this.moduleCount-1;var bitIndex=7;var byteIndex=0;for(var col=this.moduleCount-1;col>0;col-=2){if(col==6)col--;while(true){for(var c=0;c<2;c++){if(this.modules[row][col-c]==null){var dark=false;if(byteIndex<data.length){dark=(((data[byteIndex]>>>bitIndex)&1)==1);}
101
- var mask=QRUtil.getMask(maskPattern,row,col-c);if(mask){dark=!dark;}
102
- this.modules[row][col-c]=dark;bitIndex--;if(bitIndex==-1){byteIndex++;bitIndex=7;}}}
103
- row+=inc;if(row<0||this.moduleCount<=row){row-=inc;inc=-inc;break;}}}}};QRCodeModel.PAD0=0xEC;QRCodeModel.PAD1=0x11;QRCodeModel.createData=function(typeNumber,errorCorrectLevel,dataList){var rsBlocks=QRRSBlock.getRSBlocks(typeNumber,errorCorrectLevel);var buffer=new QRBitBuffer();for(var i=0;i<dataList.length;i++){var data=dataList[i];buffer.put(data.mode,4);buffer.put(data.getLength(),QRUtil.getLengthInBits(data.mode,typeNumber));data.write(buffer);}
104
- var totalDataCount=0;for(var i=0;i<rsBlocks.length;i++){totalDataCount+=rsBlocks[i].dataCount;}
105
- if(buffer.getLengthInBits()>totalDataCount*8){throw new Error("code length overflow. ("
106
- +buffer.getLengthInBits()
107
- +">"
108
- +totalDataCount*8
109
- +")");}
110
- if(buffer.getLengthInBits()+4<=totalDataCount*8){buffer.put(0,4);}
111
- while(buffer.getLengthInBits()%8!=0){buffer.putBit(false);}
112
- while(true){if(buffer.getLengthInBits()>=totalDataCount*8){break;}
113
- buffer.put(QRCodeModel.PAD0,8);if(buffer.getLengthInBits()>=totalDataCount*8){break;}
114
- buffer.put(QRCodeModel.PAD1,8);}
115
- return QRCodeModel.createBytes(buffer,rsBlocks);};QRCodeModel.createBytes=function(buffer,rsBlocks){var offset=0;var maxDcCount=0;var maxEcCount=0;var dcdata=new Array(rsBlocks.length);var ecdata=new Array(rsBlocks.length);for(var r=0;r<rsBlocks.length;r++){var dcCount=rsBlocks[r].dataCount;var ecCount=rsBlocks[r].totalCount-dcCount;maxDcCount=Math.max(maxDcCount,dcCount);maxEcCount=Math.max(maxEcCount,ecCount);dcdata[r]=new Array(dcCount);for(var i=0;i<dcdata[r].length;i++){dcdata[r][i]=0xff&buffer.buffer[i+offset];}
116
- offset+=dcCount;var rsPoly=QRUtil.getErrorCorrectPolynomial(ecCount);var rawPoly=new QRPolynomial(dcdata[r],rsPoly.getLength()-1);var modPoly=rawPoly.mod(rsPoly);ecdata[r]=new Array(rsPoly.getLength()-1);for(var i=0;i<ecdata[r].length;i++){var modIndex=i+modPoly.getLength()-ecdata[r].length;ecdata[r][i]=(modIndex>=0)?modPoly.get(modIndex):0;}}
117
- var totalCodeCount=0;for(var i=0;i<rsBlocks.length;i++){totalCodeCount+=rsBlocks[i].totalCount;}
118
- var data=new Array(totalCodeCount);var index=0;for(var i=0;i<maxDcCount;i++){for(var r=0;r<rsBlocks.length;r++){if(i<dcdata[r].length){data[index++]=dcdata[r][i];}}}
119
- for(var i=0;i<maxEcCount;i++){for(var r=0;r<rsBlocks.length;r++){if(i<ecdata[r].length){data[index++]=ecdata[r][i];}}}
120
- return data;};var QRMode={MODE_NUMBER:1<<0,MODE_ALPHA_NUM:1<<1,MODE_8BIT_BYTE:1<<2,MODE_KANJI:1<<3};var QRErrorCorrectLevel={L:1,M:0,Q:3,H:2};var QRMaskPattern={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var QRUtil={PATTERN_POSITION_TABLE:[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],G15:(1<<10)|(1<<8)|(1<<5)|(1<<4)|(1<<2)|(1<<1)|(1<<0),G18:(1<<12)|(1<<11)|(1<<10)|(1<<9)|(1<<8)|(1<<5)|(1<<2)|(1<<0),G15_MASK:(1<<14)|(1<<12)|(1<<10)|(1<<4)|(1<<1),getBCHTypeInfo:function(data){var d=data<<10;while(QRUtil.getBCHDigit(d)-QRUtil.getBCHDigit(QRUtil.G15)>=0){d^=(QRUtil.G15<<(QRUtil.getBCHDigit(d)-QRUtil.getBCHDigit(QRUtil.G15)));}
121
- return((data<<10)|d)^QRUtil.G15_MASK;},getBCHTypeNumber:function(data){var d=data<<12;while(QRUtil.getBCHDigit(d)-QRUtil.getBCHDigit(QRUtil.G18)>=0){d^=(QRUtil.G18<<(QRUtil.getBCHDigit(d)-QRUtil.getBCHDigit(QRUtil.G18)));}
122
- return(data<<12)|d;},getBCHDigit:function(data){var digit=0;while(data!=0){digit++;data>>>=1;}
123
- return digit;},getPatternPosition:function(typeNumber){return QRUtil.PATTERN_POSITION_TABLE[typeNumber-1];},getMask:function(maskPattern,i,j){switch(maskPattern){case QRMaskPattern.PATTERN000:return(i+j)%2==0;case QRMaskPattern.PATTERN001:return i%2==0;case QRMaskPattern.PATTERN010:return j%3==0;case QRMaskPattern.PATTERN011:return(i+j)%3==0;case QRMaskPattern.PATTERN100:return(Math.floor(i/2)+Math.floor(j/3))%2==0;case QRMaskPattern.PATTERN101:return(i*j)%2+(i*j)%3==0;case QRMaskPattern.PATTERN110:return((i*j)%2+(i*j)%3)%2==0;case QRMaskPattern.PATTERN111:return((i*j)%3+(i+j)%2)%2==0;default:throw new Error("bad maskPattern:"+maskPattern);}},getErrorCorrectPolynomial:function(errorCorrectLength){var a=new QRPolynomial([1],0);for(var i=0;i<errorCorrectLength;i++){a=a.multiply(new QRPolynomial([1,QRMath.gexp(i)],0));}
124
- return a;},getLengthInBits:function(mode,type){if(1<=type&&type<10){switch(mode){case QRMode.MODE_NUMBER:return 10;case QRMode.MODE_ALPHA_NUM:return 9;case QRMode.MODE_8BIT_BYTE:return 8;case QRMode.MODE_KANJI:return 8;default:throw new Error("mode:"+mode);}}else if(type<27){switch(mode){case QRMode.MODE_NUMBER:return 12;case QRMode.MODE_ALPHA_NUM:return 11;case QRMode.MODE_8BIT_BYTE:return 16;case QRMode.MODE_KANJI:return 10;default:throw new Error("mode:"+mode);}}else if(type<41){switch(mode){case QRMode.MODE_NUMBER:return 14;case QRMode.MODE_ALPHA_NUM:return 13;case QRMode.MODE_8BIT_BYTE:return 16;case QRMode.MODE_KANJI:return 12;default:throw new Error("mode:"+mode);}}else{throw new Error("type:"+type);}},getLostPoint:function(qrCode){var moduleCount=qrCode.getModuleCount();var lostPoint=0;for(var row=0;row<moduleCount;row++){for(var col=0;col<moduleCount;col++){var sameCount=0;var dark=qrCode.isDark(row,col);for(var r=-1;r<=1;r++){if(row+r<0||moduleCount<=row+r){continue;}
125
- for(var c=-1;c<=1;c++){if(col+c<0||moduleCount<=col+c){continue;}
126
- if(r==0&&c==0){continue;}
127
- if(dark==qrCode.isDark(row+r,col+c)){sameCount++;}}}
128
- if(sameCount>5){lostPoint+=(3+sameCount-5);}}}
129
- for(var row=0;row<moduleCount-1;row++){for(var col=0;col<moduleCount-1;col++){var count=0;if(qrCode.isDark(row,col))count++;if(qrCode.isDark(row+1,col))count++;if(qrCode.isDark(row,col+1))count++;if(qrCode.isDark(row+1,col+1))count++;if(count==0||count==4){lostPoint+=3;}}}
130
- for(var row=0;row<moduleCount;row++){for(var col=0;col<moduleCount-6;col++){if(qrCode.isDark(row,col)&&!qrCode.isDark(row,col+1)&&qrCode.isDark(row,col+2)&&qrCode.isDark(row,col+3)&&qrCode.isDark(row,col+4)&&!qrCode.isDark(row,col+5)&&qrCode.isDark(row,col+6)){lostPoint+=40;}}}
131
- for(var col=0;col<moduleCount;col++){for(var row=0;row<moduleCount-6;row++){if(qrCode.isDark(row,col)&&!qrCode.isDark(row+1,col)&&qrCode.isDark(row+2,col)&&qrCode.isDark(row+3,col)&&qrCode.isDark(row+4,col)&&!qrCode.isDark(row+5,col)&&qrCode.isDark(row+6,col)){lostPoint+=40;}}}
132
- var darkCount=0;for(var col=0;col<moduleCount;col++){for(var row=0;row<moduleCount;row++){if(qrCode.isDark(row,col)){darkCount++;}}}
133
- var ratio=Math.abs(100*darkCount/moduleCount/moduleCount-50)/5;lostPoint+=ratio*10;return lostPoint;}};var QRMath={glog:function(n){if(n<1){throw new Error("glog("+n+")");}
134
- return QRMath.LOG_TABLE[n];},gexp:function(n){while(n<0){n+=255;}
135
- while(n>=256){n-=255;}
136
- return QRMath.EXP_TABLE[n];},EXP_TABLE:new Array(256),LOG_TABLE:new Array(256)};for(var i=0;i<8;i++){QRMath.EXP_TABLE[i]=1<<i;}
137
- for(var i=8;i<256;i++){QRMath.EXP_TABLE[i]=QRMath.EXP_TABLE[i-4]^QRMath.EXP_TABLE[i-5]^QRMath.EXP_TABLE[i-6]^QRMath.EXP_TABLE[i-8];}
138
- for(var i=0;i<255;i++){QRMath.LOG_TABLE[QRMath.EXP_TABLE[i]]=i;}
139
- function QRPolynomial(num,shift){if(num.length==undefined){throw new Error(num.length+"/"+shift);}
140
- var offset=0;while(offset<num.length&&num[offset]==0){offset++;}
141
- this.num=new Array(num.length-offset+shift);for(var i=0;i<num.length-offset;i++){this.num[i]=num[i+offset];}}
142
- QRPolynomial.prototype={get:function(index){return this.num[index];},getLength:function(){return this.num.length;},multiply:function(e){var num=new Array(this.getLength()+e.getLength()-1);for(var i=0;i<this.getLength();i++){for(var j=0;j<e.getLength();j++){num[i+j]^=QRMath.gexp(QRMath.glog(this.get(i))+QRMath.glog(e.get(j)));}}
143
- return new QRPolynomial(num,0);},mod:function(e){if(this.getLength()-e.getLength()<0){return this;}
144
- var ratio=QRMath.glog(this.get(0))-QRMath.glog(e.get(0));var num=new Array(this.getLength());for(var i=0;i<this.getLength();i++){num[i]=this.get(i);}
145
- for(var i=0;i<e.getLength();i++){num[i]^=QRMath.gexp(QRMath.glog(e.get(i))+ratio);}
146
- return new QRPolynomial(num,0).mod(e);}};function QRRSBlock(totalCount,dataCount){this.totalCount=totalCount;this.dataCount=dataCount;}
147
- QRRSBlock.RS_BLOCK_TABLE=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12,7,37,13],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]];QRRSBlock.getRSBlocks=function(typeNumber,errorCorrectLevel){var rsBlock=QRRSBlock.getRsBlockTable(typeNumber,errorCorrectLevel);if(rsBlock==undefined){throw new Error("bad rs block @ typeNumber:"+typeNumber+"/errorCorrectLevel:"+errorCorrectLevel);}
148
- var length=rsBlock.length/3;var list=[];for(var i=0;i<length;i++){var count=rsBlock[i*3+0];var totalCount=rsBlock[i*3+1];var dataCount=rsBlock[i*3+2];for(var j=0;j<count;j++){list.push(new QRRSBlock(totalCount,dataCount));}}
149
- return list;};QRRSBlock.getRsBlockTable=function(typeNumber,errorCorrectLevel){switch(errorCorrectLevel){case QRErrorCorrectLevel.L:return QRRSBlock.RS_BLOCK_TABLE[(typeNumber-1)*4+0];case QRErrorCorrectLevel.M:return QRRSBlock.RS_BLOCK_TABLE[(typeNumber-1)*4+1];case QRErrorCorrectLevel.Q:return QRRSBlock.RS_BLOCK_TABLE[(typeNumber-1)*4+2];case QRErrorCorrectLevel.H:return QRRSBlock.RS_BLOCK_TABLE[(typeNumber-1)*4+3];default:return undefined;}};function QRBitBuffer(){this.buffer=[];this.length=0;}
150
- QRBitBuffer.prototype={get:function(index){var bufIndex=Math.floor(index/8);return((this.buffer[bufIndex]>>>(7-index%8))&1)==1;},put:function(num,length){for(var i=0;i<length;i++){this.putBit(((num>>>(length-i-1))&1)==1);}},getLengthInBits:function(){return this.length;},putBit:function(bit){var bufIndex=Math.floor(this.length/8);if(this.buffer.length<=bufIndex){this.buffer.push(0);}
151
- if(bit){this.buffer[bufIndex]|=(0x80>>>(this.length%8));}
152
- this.length++;}};var QRCodeLimitLength=[[17,14,11,7],[32,26,20,14],[53,42,32,24],[78,62,46,34],[106,84,60,44],[134,106,74,58],[154,122,86,64],[192,152,108,84],[230,180,130,98],[271,213,151,119],[321,251,177,137],[367,287,203,155],[425,331,241,177],[458,362,258,194],[520,412,292,220],[586,450,322,250],[644,504,364,280],[718,560,394,310],[792,624,442,338],[858,666,482,382],[929,711,509,403],[1003,779,565,439],[1091,857,611,461],[1171,911,661,511],[1273,997,715,535],[1367,1059,751,593],[1465,1125,805,625],[1528,1190,868,658],[1628,1264,908,698],[1732,1370,982,742],[1840,1452,1030,790],[1952,1538,1112,842],[2068,1628,1168,898],[2188,1722,1228,958],[2303,1809,1283,983],[2431,1911,1351,1051],[2563,1989,1423,1093],[2699,2099,1499,1139],[2809,2213,1579,1219],[2953,2331,1663,1273]];
153
-
154
- function _isSupportCanvas() {
155
- return typeof CanvasRenderingContext2D != "undefined";
156
- }
157
-
158
- // android 2.x doesn't support Data-URI spec
159
- function _getAndroid() {
160
- var android = false;
161
- var sAgent = navigator.userAgent;
162
-
163
- if (/android/i.test(sAgent)) { // android
164
- android = true;
165
- var aMat = sAgent.toString().match(/android ([0-9]\.[0-9])/i);
166
-
167
- if (aMat && aMat[1]) {
168
- android = parseFloat(aMat[1]);
169
- }
170
- }
171
-
172
- return android;
173
- }
174
-
175
- var svgDrawer = (function() {
176
-
177
- var Drawing = function (el, htOption) {
178
- this._el = el;
179
- this._htOption = htOption;
180
- };
181
-
182
- Drawing.prototype.draw = function (oQRCode) {
183
- var _htOption = this._htOption;
184
- var _el = this._el;
185
- var nCount = oQRCode.getModuleCount();
186
- var nWidth = Math.floor(_htOption.width / nCount);
187
- var nHeight = Math.floor(_htOption.height / nCount);
188
-
189
- this.clear();
190
-
191
- function makeSVG(tag, attrs) {
192
- var el = document.createElementNS('http://www.w3.org/2000/svg', tag);
193
- for (var k in attrs)
194
- if (attrs.hasOwnProperty(k)) el.setAttribute(k, attrs[k]);
195
- return el;
196
- }
197
-
198
- var svg = makeSVG("svg" , {'viewBox': '0 0 ' + String(nCount) + " " + String(nCount), 'width': '100%', 'height': '100%', 'fill': _htOption.colorLight});
199
- svg.setAttributeNS("http://www.w3.org/2000/xmlns/", "xmlns:xlink", "http://www.w3.org/1999/xlink");
200
- _el.appendChild(svg);
201
-
202
- svg.appendChild(makeSVG("rect", {"fill": _htOption.colorLight, "width": "100%", "height": "100%"}));
203
- svg.appendChild(makeSVG("rect", {"fill": _htOption.colorDark, "width": "1", "height": "1", "id": "template"}));
204
-
205
- for (var row = 0; row < nCount; row++) {
206
- for (var col = 0; col < nCount; col++) {
207
- if (oQRCode.isDark(row, col)) {
208
- var child = makeSVG("use", {"x": String(col), "y": String(row)});
209
- child.setAttributeNS("http://www.w3.org/1999/xlink", "href", "#template")
210
- svg.appendChild(child);
211
- }
212
- }
213
- }
214
- };
215
- Drawing.prototype.clear = function () {
216
- while (this._el.hasChildNodes())
217
- this._el.removeChild(this._el.lastChild);
218
- };
219
- return Drawing;
220
- })();
221
-
222
- var useSVG = document.documentElement.tagName.toLowerCase() === "svg";
223
-
224
- // Drawing in DOM by using Table tag
225
- var Drawing = useSVG ? svgDrawer : !_isSupportCanvas() ? (function () {
226
- var Drawing = function (el, htOption) {
227
- this._el = el;
228
- this._htOption = htOption;
229
- };
230
-
231
- /**
232
- * Draw the QRCode
233
- *
234
- * @param {QRCode} oQRCode
235
- */
236
- Drawing.prototype.draw = function (oQRCode) {
237
- var _htOption = this._htOption;
238
- var _el = this._el;
239
- var nCount = oQRCode.getModuleCount();
240
- var nWidth = Math.floor(_htOption.width / nCount);
241
- var nHeight = Math.floor(_htOption.height / nCount);
242
- var aHTML = ['<table style="border:0;border-collapse:collapse;">'];
243
-
244
- for (var row = 0; row < nCount; row++) {
245
- aHTML.push('<tr>');
246
-
247
- for (var col = 0; col < nCount; col++) {
248
- aHTML.push('<td style="border:0;border-collapse:collapse;padding:0;margin:0;width:' + nWidth + 'px;height:' + nHeight + 'px;background-color:' + (oQRCode.isDark(row, col) ? _htOption.colorDark : _htOption.colorLight) + ';"></td>');
249
- }
250
-
251
- aHTML.push('</tr>');
252
- }
253
-
254
- aHTML.push('</table>');
255
- _el.innerHTML = aHTML.join('');
256
-
257
- // Fix the margin values as real size.
258
- var elTable = _el.childNodes[0];
259
- var nLeftMarginTable = (_htOption.width - elTable.offsetWidth) / 2;
260
- var nTopMarginTable = (_htOption.height - elTable.offsetHeight) / 2;
261
-
262
- if (nLeftMarginTable > 0 && nTopMarginTable > 0) {
263
- elTable.style.margin = nTopMarginTable + "px " + nLeftMarginTable + "px";
264
- }
265
- };
266
-
267
- /**
268
- * Clear the QRCode
269
- */
270
- Drawing.prototype.clear = function () {
271
- this._el.innerHTML = '';
272
- };
273
-
274
- return Drawing;
275
- })() : (function () { // Drawing in Canvas
276
- function _onMakeImage() {
277
- this._elImage.src = this._elCanvas.toDataURL("image/png");
278
- this._elImage.style.display = "block";
279
- this._elCanvas.style.display = "none";
280
- }
281
-
282
- // Android 2.1 bug workaround
283
- // http://code.google.com/p/android/issues/detail?id=5141
284
- if (this._android && this._android <= 2.1) {
285
- var factor = 1 / window.devicePixelRatio;
286
- var drawImage = CanvasRenderingContext2D.prototype.drawImage;
287
- CanvasRenderingContext2D.prototype.drawImage = function (image, sx, sy, sw, sh, dx, dy, dw, dh) {
288
- if (("nodeName" in image) && /img/i.test(image.nodeName)) {
289
- for (var i = arguments.length - 1; i >= 1; i--) {
290
- arguments[i] = arguments[i] * factor;
291
- }
292
- } else if (typeof dw == "undefined") {
293
- arguments[1] *= factor;
294
- arguments[2] *= factor;
295
- arguments[3] *= factor;
296
- arguments[4] *= factor;
297
- }
298
-
299
- drawImage.apply(this, arguments);
300
- };
301
- }
302
-
303
- /**
304
- * Check whether the user's browser supports Data URI or not
305
- *
306
- * @private
307
- * @param {Function} fSuccess Occurs if it supports Data URI
308
- * @param {Function} fFail Occurs if it doesn't support Data URI
309
- */
310
- function _safeSetDataURI(fSuccess, fFail) {
311
- var self = this;
312
- self._fFail = fFail;
313
- self._fSuccess = fSuccess;
314
-
315
- // Check it just once
316
- if (self._bSupportDataURI === null) {
317
- var el = document.createElement("img");
318
- var fOnError = function() {
319
- self._bSupportDataURI = false;
320
-
321
- if (self._fFail) {
322
- self._fFail.call(self);
323
- }
324
- };
325
- var fOnSuccess = function() {
326
- self._bSupportDataURI = true;
327
-
328
- if (self._fSuccess) {
329
- self._fSuccess.call(self);
330
- }
331
- };
332
-
333
- el.onabort = fOnError;
334
- el.onerror = fOnError;
335
- el.onload = fOnSuccess;
336
- el.src = "data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="; // the Image contains 1px data.
337
- return;
338
- } else if (self._bSupportDataURI === true && self._fSuccess) {
339
- self._fSuccess.call(self);
340
- } else if (self._bSupportDataURI === false && self._fFail) {
341
- self._fFail.call(self);
342
- }
343
- };
344
-
345
- /**
346
- * Drawing QRCode by using canvas
347
- *
348
- * @constructor
349
- * @param {HTMLElement} el
350
- * @param {Object} htOption QRCode Options
351
- */
352
- var Drawing = function (el, htOption) {
353
- this._bIsPainted = false;
354
- this._android = _getAndroid();
355
-
356
- this._htOption = htOption;
357
- this._elCanvas = document.createElement("canvas");
358
- this._elCanvas.width = htOption.width;
359
- this._elCanvas.height = htOption.height;
360
- el.appendChild(this._elCanvas);
361
- this._el = el;
362
- this._oContext = this._elCanvas.getContext("2d");
363
- this._bIsPainted = false;
364
- this._elImage = document.createElement("img");
365
- this._elImage.alt = "Scan me!";
366
- this._elImage.style.display = "none";
367
- this._el.appendChild(this._elImage);
368
- this._bSupportDataURI = null;
369
- };
370
-
371
- /**
372
- * Draw the QRCode
373
- *
374
- * @param {QRCode} oQRCode
375
- */
376
- Drawing.prototype.draw = function (oQRCode) {
377
- var _elImage = this._elImage;
378
- var _oContext = this._oContext;
379
- var _htOption = this._htOption;
380
-
381
- var nCount = oQRCode.getModuleCount();
382
- var nWidth = _htOption.width / nCount;
383
- var nHeight = _htOption.height / nCount;
384
- var nRoundedWidth = Math.round(nWidth);
385
- var nRoundedHeight = Math.round(nHeight);
386
-
387
- _elImage.style.display = "none";
388
- this.clear();
389
-
390
- for (var row = 0; row < nCount; row++) {
391
- for (var col = 0; col < nCount; col++) {
392
- var bIsDark = oQRCode.isDark(row, col);
393
- var nLeft = col * nWidth;
394
- var nTop = row * nHeight;
395
- _oContext.strokeStyle = bIsDark ? _htOption.colorDark : _htOption.colorLight;
396
- _oContext.lineWidth = 1;
397
- _oContext.fillStyle = bIsDark ? _htOption.colorDark : _htOption.colorLight;
398
- _oContext.fillRect(nLeft, nTop, nWidth, nHeight);
399
-
400
- // 안티 앨리어싱 방지 처리
401
- _oContext.strokeRect(
402
- Math.floor(nLeft) + 0.5,
403
- Math.floor(nTop) + 0.5,
404
- nRoundedWidth,
405
- nRoundedHeight
406
- );
407
-
408
- _oContext.strokeRect(
409
- Math.ceil(nLeft) - 0.5,
410
- Math.ceil(nTop) - 0.5,
411
- nRoundedWidth,
412
- nRoundedHeight
413
- );
414
- }
415
- }
416
-
417
- this._bIsPainted = true;
418
- };
419
-
420
- /**
421
- * Make the image from Canvas if the browser supports Data URI.
422
- */
423
- Drawing.prototype.makeImage = function () {
424
- if (this._bIsPainted) {
425
- _safeSetDataURI.call(this, _onMakeImage);
426
- }
427
- };
428
-
429
- /**
430
- * Return whether the QRCode is painted or not
431
- *
432
- * @return {Boolean}
433
- */
434
- Drawing.prototype.isPainted = function () {
435
- return this._bIsPainted;
436
- };
437
-
438
- /**
439
- * Clear the QRCode
440
- */
441
- Drawing.prototype.clear = function () {
442
- this._oContext.clearRect(0, 0, this._elCanvas.width, this._elCanvas.height);
443
- this._bIsPainted = false;
444
- };
445
-
446
- /**
447
- * @private
448
- * @param {Number} nNumber
449
- */
450
- Drawing.prototype.round = function (nNumber) {
451
- if (!nNumber) {
452
- return nNumber;
453
- }
454
-
455
- return Math.floor(nNumber * 1000) / 1000;
456
- };
457
-
458
- return Drawing;
459
- })();
460
-
461
- /**
462
- * Get the type by string length
463
- *
464
- * @private
465
- * @param {String} sText
466
- * @param {Number} nCorrectLevel
467
- * @return {Number} type
468
- */
469
- function _getTypeNumber(sText, nCorrectLevel) {
470
- var nType = 1;
471
- var length = _getUTF8Length(sText);
472
-
473
- for (var i = 0, len = QRCodeLimitLength.length; i <= len; i++) {
474
- var nLimit = 0;
475
-
476
- switch (nCorrectLevel) {
477
- case QRErrorCorrectLevel.L :
478
- nLimit = QRCodeLimitLength[i][0];
479
- break;
480
- case QRErrorCorrectLevel.M :
481
- nLimit = QRCodeLimitLength[i][1];
482
- break;
483
- case QRErrorCorrectLevel.Q :
484
- nLimit = QRCodeLimitLength[i][2];
485
- break;
486
- case QRErrorCorrectLevel.H :
487
- nLimit = QRCodeLimitLength[i][3];
488
- break;
489
- }
490
-
491
- if (length <= nLimit) {
492
- break;
493
- } else {
494
- nType++;
495
- }
496
- }
497
-
498
- if (nType > QRCodeLimitLength.length) {
499
- throw new Error("Too long data");
500
- }
501
-
502
- return nType;
503
- }
504
-
505
- function _getUTF8Length(sText) {
506
- var replacedText = encodeURI(sText).toString().replace(/\%[0-9a-fA-F]{2}/g, 'a');
507
- return replacedText.length + (replacedText.length != sText ? 3 : 0);
508
- }
509
-
510
- /**
511
- * @class QRCode
512
- * @constructor
513
- * @example
514
- * new QRCode(document.getElementById("test"), "http://jindo.dev.naver.com/collie");
515
- *
516
- * @example
517
- * var oQRCode = new QRCode("test", {
518
- * text : "http://naver.com",
519
- * width : 128,
520
- * height : 128
521
- * });
522
- *
523
- * oQRCode.clear(); // Clear the QRCode.
524
- * oQRCode.makeCode("http://map.naver.com"); // Re-create the QRCode.
525
- *
526
- * @param {HTMLElement|String} el target element or 'id' attribute of element.
527
- * @param {Object|String} vOption
528
- * @param {String} vOption.text QRCode link data
529
- * @param {Number} [vOption.width=256]
530
- * @param {Number} [vOption.height=256]
531
- * @param {String} [vOption.colorDark="#000000"]
532
- * @param {String} [vOption.colorLight="#ffffff"]
533
- * @param {QRCode.CorrectLevel} [vOption.correctLevel=QRCode.CorrectLevel.H] [L|M|Q|H]
534
- */
535
- QRCode = function (el, vOption) {
536
- this._htOption = {
537
- width : 256,
538
- height : 256,
539
- typeNumber : 4,
540
- colorDark : "#000000",
541
- colorLight : "#ffffff",
542
- correctLevel : QRErrorCorrectLevel.H
543
- };
544
-
545
- if (typeof vOption === 'string') {
546
- vOption = {
547
- text : vOption
548
- };
549
- }
550
-
551
- // Overwrites options
552
- if (vOption) {
553
- for (var i in vOption) {
554
- this._htOption[i] = vOption[i];
555
- }
556
- }
557
-
558
- if (typeof el == "string") {
559
- el = document.getElementById(el);
560
- }
561
-
562
- if (this._htOption.useSVG) {
563
- Drawing = svgDrawer;
564
- }
565
-
566
- this._android = _getAndroid();
567
- this._el = el;
568
- this._oQRCode = null;
569
- this._oDrawing = new Drawing(this._el, this._htOption);
570
-
571
- if (this._htOption.text) {
572
- this.makeCode(this._htOption.text);
573
- }
574
- };
575
-
576
- /**
577
- * Make the QRCode
578
- *
579
- * @param {String} sText link data
580
- */
581
- QRCode.prototype.makeCode = function (sText) {
582
- this._oQRCode = new QRCodeModel(_getTypeNumber(sText, this._htOption.correctLevel), this._htOption.correctLevel);
583
- this._oQRCode.addData(sText);
584
- this._oQRCode.make();
585
- this._el.title = sText;
586
- this._oDrawing.draw(this._oQRCode);
587
- this.makeImage();
588
- };
589
-
590
- /**
591
- * Make the Image from Canvas element
592
- * - It occurs automatically
593
- * - Android below 3 doesn't support Data-URI spec.
594
- *
595
- * @private
596
- */
597
- QRCode.prototype.makeImage = function () {
598
- if (typeof this._oDrawing.makeImage == "function" && (!this._android || this._android >= 3)) {
599
- this._oDrawing.makeImage();
600
- }
601
- };
602
-
603
- /**
604
- * Clear the QRCode
605
- */
606
- QRCode.prototype.clear = function () {
607
- this._oDrawing.clear();
608
- };
609
-
610
- /**
611
- * @name QRCode.CorrectLevel
612
- */
613
- QRCode.CorrectLevel = QRErrorCorrectLevel;
614
- })();
615
-
616
- if (typeof module != "undefined") {
617
- module.exports = QRCode;
618
- }
1
+ /**
2
+ * @fileoverview
3
+ * - Using the 'QRCode for Javascript library'
4
+ * - Fixed dataset of 'QRCode for Javascript library' for support full-spec.
5
+ * - this library has no dependencies.
6
+ *
7
+ * @author davidshimjs
8
+ * @see <a href="http://www.d-project.com/" target="_blank">http://www.d-project.com/</a>
9
+ * @see <a href="http://jeromeetienne.github.com/jquery-qrcode/" target="_blank">http://jeromeetienne.github.com/jquery-qrcode/</a>
10
+ */
11
+ var QRCode;
12
+
13
+ (function () {
14
+ //---------------------------------------------------------------------
15
+ // QRCode for JavaScript
16
+ //
17
+ // Copyright (c) 2009 Kazuhiko Arase
18
+ //
19
+ // URL: http://www.d-project.com/
20
+ //
21
+ // Licensed under the MIT license:
22
+ // http://www.opensource.org/licenses/mit-license.php
23
+ //
24
+ // The word "QR Code" is registered trademark of
25
+ // DENSO WAVE INCORPORATED
26
+ // http://www.denso-wave.com/qrcode/faqpatent-e.html
27
+ //
28
+ //---------------------------------------------------------------------
29
+ function QR8bitByte(data) {
30
+ this.mode = QRMode.MODE_8BIT_BYTE;
31
+ this.data = data;
32
+ this.parsedData = [];
33
+
34
+ // Added to support UTF-8 Characters
35
+ for (var i = 0, l = this.data.length; i < l; i++) {
36
+ var byteArray = [];
37
+ var code = this.data.charCodeAt(i);
38
+
39
+ if (code > 0x10000) {
40
+ byteArray[0] = 0xF0 | ((code & 0x1C0000) >>> 18);
41
+ byteArray[1] = 0x80 | ((code & 0x3F000) >>> 12);
42
+ byteArray[2] = 0x80 | ((code & 0xFC0) >>> 6);
43
+ byteArray[3] = 0x80 | (code & 0x3F);
44
+ } else if (code > 0x800) {
45
+ byteArray[0] = 0xE0 | ((code & 0xF000) >>> 12);
46
+ byteArray[1] = 0x80 | ((code & 0xFC0) >>> 6);
47
+ byteArray[2] = 0x80 | (code & 0x3F);
48
+ } else if (code > 0x80) {
49
+ byteArray[0] = 0xC0 | ((code & 0x7C0) >>> 6);
50
+ byteArray[1] = 0x80 | (code & 0x3F);
51
+ } else {
52
+ byteArray[0] = code;
53
+ }
54
+
55
+ this.parsedData.push(byteArray);
56
+ }
57
+
58
+ this.parsedData = Array.prototype.concat.apply([], this.parsedData);
59
+
60
+ if (this.parsedData.length != this.data.length) {
61
+ this.parsedData.unshift(191);
62
+ this.parsedData.unshift(187);
63
+ this.parsedData.unshift(239);
64
+ }
65
+ }
66
+
67
+ QR8bitByte.prototype = {
68
+ getLength: function (buffer) {
69
+ return this.parsedData.length;
70
+ },
71
+ write: function (buffer) {
72
+ for (var i = 0, l = this.parsedData.length; i < l; i++) {
73
+ buffer.put(this.parsedData[i], 8);
74
+ }
75
+ }
76
+ };
77
+
78
+ function QRCodeModel(typeNumber, errorCorrectLevel) {
79
+ this.typeNumber = typeNumber;
80
+ this.errorCorrectLevel = errorCorrectLevel;
81
+ this.modules = null;
82
+ this.moduleCount = 0;
83
+ this.dataCache = null;
84
+ this.dataList = [];
85
+ }
86
+
87
+ QRCodeModel.prototype={addData:function(data){var newData=new QR8bitByte(data);this.dataList.push(newData);this.dataCache=null;},isDark:function(row,col){if(row<0||this.moduleCount<=row||col<0||this.moduleCount<=col){throw new Error(row+","+col);}
88
+ return this.modules[row][col];},getModuleCount:function(){return this.moduleCount;},make:function(){this.makeImpl(false,this.getBestMaskPattern());},makeImpl:function(test,maskPattern){this.moduleCount=this.typeNumber*4+17;this.modules=new Array(this.moduleCount);for(var row=0;row<this.moduleCount;row++){this.modules[row]=new Array(this.moduleCount);for(var col=0;col<this.moduleCount;col++){this.modules[row][col]=null;}}
89
+ this.setupPositionProbePattern(0,0);this.setupPositionProbePattern(this.moduleCount-7,0);this.setupPositionProbePattern(0,this.moduleCount-7);this.setupPositionAdjustPattern();this.setupTimingPattern();this.setupTypeInfo(test,maskPattern);if(this.typeNumber>=7){this.setupTypeNumber(test);}
90
+ if(this.dataCache==null){this.dataCache=QRCodeModel.createData(this.typeNumber,this.errorCorrectLevel,this.dataList);}
91
+ this.mapData(this.dataCache,maskPattern);},setupPositionProbePattern:function(row,col){for(var r=-1;r<=7;r++){if(row+r<=-1||this.moduleCount<=row+r)continue;for(var c=-1;c<=7;c++){if(col+c<=-1||this.moduleCount<=col+c)continue;if((0<=r&&r<=6&&(c==0||c==6))||(0<=c&&c<=6&&(r==0||r==6))||(2<=r&&r<=4&&2<=c&&c<=4)){this.modules[row+r][col+c]=true;}else{this.modules[row+r][col+c]=false;}}}},getBestMaskPattern:function(){var minLostPoint=0;var pattern=0;for(var i=0;i<8;i++){this.makeImpl(true,i);var lostPoint=QRUtil.getLostPoint(this);if(i==0||minLostPoint>lostPoint){minLostPoint=lostPoint;pattern=i;}}
92
+ return pattern;},createMovieClip:function(target_mc,instance_name,depth){var qr_mc=target_mc.createEmptyMovieClip(instance_name,depth);var cs=1;this.make();for(var row=0;row<this.modules.length;row++){var y=row*cs;for(var col=0;col<this.modules[row].length;col++){var x=col*cs;var dark=this.modules[row][col];if(dark){qr_mc.beginFill(0,100);qr_mc.moveTo(x,y);qr_mc.lineTo(x+cs,y);qr_mc.lineTo(x+cs,y+cs);qr_mc.lineTo(x,y+cs);qr_mc.endFill();}}}
93
+ return qr_mc;},setupTimingPattern:function(){for(var r=8;r<this.moduleCount-8;r++){if(this.modules[r][6]!=null){continue;}
94
+ this.modules[r][6]=(r%2==0);}
95
+ for(var c=8;c<this.moduleCount-8;c++){if(this.modules[6][c]!=null){continue;}
96
+ this.modules[6][c]=(c%2==0);}},setupPositionAdjustPattern:function(){var pos=QRUtil.getPatternPosition(this.typeNumber);for(var i=0;i<pos.length;i++){for(var j=0;j<pos.length;j++){var row=pos[i];var col=pos[j];if(this.modules[row][col]!=null){continue;}
97
+ for(var r=-2;r<=2;r++){for(var c=-2;c<=2;c++){if(r==-2||r==2||c==-2||c==2||(r==0&&c==0)){this.modules[row+r][col+c]=true;}else{this.modules[row+r][col+c]=false;}}}}}},setupTypeNumber:function(test){var bits=QRUtil.getBCHTypeNumber(this.typeNumber);for(var i=0;i<18;i++){var mod=(!test&&((bits>>i)&1)==1);this.modules[Math.floor(i/3)][i%3+this.moduleCount-8-3]=mod;}
98
+ for(var i=0;i<18;i++){var mod=(!test&&((bits>>i)&1)==1);this.modules[i%3+this.moduleCount-8-3][Math.floor(i/3)]=mod;}},setupTypeInfo:function(test,maskPattern){var data=(this.errorCorrectLevel<<3)|maskPattern;var bits=QRUtil.getBCHTypeInfo(data);for(var i=0;i<15;i++){var mod=(!test&&((bits>>i)&1)==1);if(i<6){this.modules[i][8]=mod;}else if(i<8){this.modules[i+1][8]=mod;}else{this.modules[this.moduleCount-15+i][8]=mod;}}
99
+ for(var i=0;i<15;i++){var mod=(!test&&((bits>>i)&1)==1);if(i<8){this.modules[8][this.moduleCount-i-1]=mod;}else if(i<9){this.modules[8][15-i-1+1]=mod;}else{this.modules[8][15-i-1]=mod;}}
100
+ this.modules[this.moduleCount-8][8]=(!test);},mapData:function(data,maskPattern){var inc=-1;var row=this.moduleCount-1;var bitIndex=7;var byteIndex=0;for(var col=this.moduleCount-1;col>0;col-=2){if(col==6)col--;while(true){for(var c=0;c<2;c++){if(this.modules[row][col-c]==null){var dark=false;if(byteIndex<data.length){dark=(((data[byteIndex]>>>bitIndex)&1)==1);}
101
+ var mask=QRUtil.getMask(maskPattern,row,col-c);if(mask){dark=!dark;}
102
+ this.modules[row][col-c]=dark;bitIndex--;if(bitIndex==-1){byteIndex++;bitIndex=7;}}}
103
+ row+=inc;if(row<0||this.moduleCount<=row){row-=inc;inc=-inc;break;}}}}};QRCodeModel.PAD0=0xEC;QRCodeModel.PAD1=0x11;QRCodeModel.createData=function(typeNumber,errorCorrectLevel,dataList){var rsBlocks=QRRSBlock.getRSBlocks(typeNumber,errorCorrectLevel);var buffer=new QRBitBuffer();for(var i=0;i<dataList.length;i++){var data=dataList[i];buffer.put(data.mode,4);buffer.put(data.getLength(),QRUtil.getLengthInBits(data.mode,typeNumber));data.write(buffer);}
104
+ var totalDataCount=0;for(var i=0;i<rsBlocks.length;i++){totalDataCount+=rsBlocks[i].dataCount;}
105
+ if(buffer.getLengthInBits()>totalDataCount*8){throw new Error("code length overflow. ("
106
+ +buffer.getLengthInBits()
107
+ +">"
108
+ +totalDataCount*8
109
+ +")");}
110
+ if(buffer.getLengthInBits()+4<=totalDataCount*8){buffer.put(0,4);}
111
+ while(buffer.getLengthInBits()%8!=0){buffer.putBit(false);}
112
+ while(true){if(buffer.getLengthInBits()>=totalDataCount*8){break;}
113
+ buffer.put(QRCodeModel.PAD0,8);if(buffer.getLengthInBits()>=totalDataCount*8){break;}
114
+ buffer.put(QRCodeModel.PAD1,8);}
115
+ return QRCodeModel.createBytes(buffer,rsBlocks);};QRCodeModel.createBytes=function(buffer,rsBlocks){var offset=0;var maxDcCount=0;var maxEcCount=0;var dcdata=new Array(rsBlocks.length);var ecdata=new Array(rsBlocks.length);for(var r=0;r<rsBlocks.length;r++){var dcCount=rsBlocks[r].dataCount;var ecCount=rsBlocks[r].totalCount-dcCount;maxDcCount=Math.max(maxDcCount,dcCount);maxEcCount=Math.max(maxEcCount,ecCount);dcdata[r]=new Array(dcCount);for(var i=0;i<dcdata[r].length;i++){dcdata[r][i]=0xff&buffer.buffer[i+offset];}
116
+ offset+=dcCount;var rsPoly=QRUtil.getErrorCorrectPolynomial(ecCount);var rawPoly=new QRPolynomial(dcdata[r],rsPoly.getLength()-1);var modPoly=rawPoly.mod(rsPoly);ecdata[r]=new Array(rsPoly.getLength()-1);for(var i=0;i<ecdata[r].length;i++){var modIndex=i+modPoly.getLength()-ecdata[r].length;ecdata[r][i]=(modIndex>=0)?modPoly.get(modIndex):0;}}
117
+ var totalCodeCount=0;for(var i=0;i<rsBlocks.length;i++){totalCodeCount+=rsBlocks[i].totalCount;}
118
+ var data=new Array(totalCodeCount);var index=0;for(var i=0;i<maxDcCount;i++){for(var r=0;r<rsBlocks.length;r++){if(i<dcdata[r].length){data[index++]=dcdata[r][i];}}}
119
+ for(var i=0;i<maxEcCount;i++){for(var r=0;r<rsBlocks.length;r++){if(i<ecdata[r].length){data[index++]=ecdata[r][i];}}}
120
+ return data;};var QRMode={MODE_NUMBER:1<<0,MODE_ALPHA_NUM:1<<1,MODE_8BIT_BYTE:1<<2,MODE_KANJI:1<<3};var QRErrorCorrectLevel={L:1,M:0,Q:3,H:2};var QRMaskPattern={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var QRUtil={PATTERN_POSITION_TABLE:[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],G15:(1<<10)|(1<<8)|(1<<5)|(1<<4)|(1<<2)|(1<<1)|(1<<0),G18:(1<<12)|(1<<11)|(1<<10)|(1<<9)|(1<<8)|(1<<5)|(1<<2)|(1<<0),G15_MASK:(1<<14)|(1<<12)|(1<<10)|(1<<4)|(1<<1),getBCHTypeInfo:function(data){var d=data<<10;while(QRUtil.getBCHDigit(d)-QRUtil.getBCHDigit(QRUtil.G15)>=0){d^=(QRUtil.G15<<(QRUtil.getBCHDigit(d)-QRUtil.getBCHDigit(QRUtil.G15)));}
121
+ return((data<<10)|d)^QRUtil.G15_MASK;},getBCHTypeNumber:function(data){var d=data<<12;while(QRUtil.getBCHDigit(d)-QRUtil.getBCHDigit(QRUtil.G18)>=0){d^=(QRUtil.G18<<(QRUtil.getBCHDigit(d)-QRUtil.getBCHDigit(QRUtil.G18)));}
122
+ return(data<<12)|d;},getBCHDigit:function(data){var digit=0;while(data!=0){digit++;data>>>=1;}
123
+ return digit;},getPatternPosition:function(typeNumber){return QRUtil.PATTERN_POSITION_TABLE[typeNumber-1];},getMask:function(maskPattern,i,j){switch(maskPattern){case QRMaskPattern.PATTERN000:return(i+j)%2==0;case QRMaskPattern.PATTERN001:return i%2==0;case QRMaskPattern.PATTERN010:return j%3==0;case QRMaskPattern.PATTERN011:return(i+j)%3==0;case QRMaskPattern.PATTERN100:return(Math.floor(i/2)+Math.floor(j/3))%2==0;case QRMaskPattern.PATTERN101:return(i*j)%2+(i*j)%3==0;case QRMaskPattern.PATTERN110:return((i*j)%2+(i*j)%3)%2==0;case QRMaskPattern.PATTERN111:return((i*j)%3+(i+j)%2)%2==0;default:throw new Error("bad maskPattern:"+maskPattern);}},getErrorCorrectPolynomial:function(errorCorrectLength){var a=new QRPolynomial([1],0);for(var i=0;i<errorCorrectLength;i++){a=a.multiply(new QRPolynomial([1,QRMath.gexp(i)],0));}
124
+ return a;},getLengthInBits:function(mode,type){if(1<=type&&type<10){switch(mode){case QRMode.MODE_NUMBER:return 10;case QRMode.MODE_ALPHA_NUM:return 9;case QRMode.MODE_8BIT_BYTE:return 8;case QRMode.MODE_KANJI:return 8;default:throw new Error("mode:"+mode);}}else if(type<27){switch(mode){case QRMode.MODE_NUMBER:return 12;case QRMode.MODE_ALPHA_NUM:return 11;case QRMode.MODE_8BIT_BYTE:return 16;case QRMode.MODE_KANJI:return 10;default:throw new Error("mode:"+mode);}}else if(type<41){switch(mode){case QRMode.MODE_NUMBER:return 14;case QRMode.MODE_ALPHA_NUM:return 13;case QRMode.MODE_8BIT_BYTE:return 16;case QRMode.MODE_KANJI:return 12;default:throw new Error("mode:"+mode);}}else{throw new Error("type:"+type);}},getLostPoint:function(qrCode){var moduleCount=qrCode.getModuleCount();var lostPoint=0;for(var row=0;row<moduleCount;row++){for(var col=0;col<moduleCount;col++){var sameCount=0;var dark=qrCode.isDark(row,col);for(var r=-1;r<=1;r++){if(row+r<0||moduleCount<=row+r){continue;}
125
+ for(var c=-1;c<=1;c++){if(col+c<0||moduleCount<=col+c){continue;}
126
+ if(r==0&&c==0){continue;}
127
+ if(dark==qrCode.isDark(row+r,col+c)){sameCount++;}}}
128
+ if(sameCount>5){lostPoint+=(3+sameCount-5);}}}
129
+ for(var row=0;row<moduleCount-1;row++){for(var col=0;col<moduleCount-1;col++){var count=0;if(qrCode.isDark(row,col))count++;if(qrCode.isDark(row+1,col))count++;if(qrCode.isDark(row,col+1))count++;if(qrCode.isDark(row+1,col+1))count++;if(count==0||count==4){lostPoint+=3;}}}
130
+ for(var row=0;row<moduleCount;row++){for(var col=0;col<moduleCount-6;col++){if(qrCode.isDark(row,col)&&!qrCode.isDark(row,col+1)&&qrCode.isDark(row,col+2)&&qrCode.isDark(row,col+3)&&qrCode.isDark(row,col+4)&&!qrCode.isDark(row,col+5)&&qrCode.isDark(row,col+6)){lostPoint+=40;}}}
131
+ for(var col=0;col<moduleCount;col++){for(var row=0;row<moduleCount-6;row++){if(qrCode.isDark(row,col)&&!qrCode.isDark(row+1,col)&&qrCode.isDark(row+2,col)&&qrCode.isDark(row+3,col)&&qrCode.isDark(row+4,col)&&!qrCode.isDark(row+5,col)&&qrCode.isDark(row+6,col)){lostPoint+=40;}}}
132
+ var darkCount=0;for(var col=0;col<moduleCount;col++){for(var row=0;row<moduleCount;row++){if(qrCode.isDark(row,col)){darkCount++;}}}
133
+ var ratio=Math.abs(100*darkCount/moduleCount/moduleCount-50)/5;lostPoint+=ratio*10;return lostPoint;}};var QRMath={glog:function(n){if(n<1){throw new Error("glog("+n+")");}
134
+ return QRMath.LOG_TABLE[n];},gexp:function(n){while(n<0){n+=255;}
135
+ while(n>=256){n-=255;}
136
+ return QRMath.EXP_TABLE[n];},EXP_TABLE:new Array(256),LOG_TABLE:new Array(256)};for(var i=0;i<8;i++){QRMath.EXP_TABLE[i]=1<<i;}
137
+ for(var i=8;i<256;i++){QRMath.EXP_TABLE[i]=QRMath.EXP_TABLE[i-4]^QRMath.EXP_TABLE[i-5]^QRMath.EXP_TABLE[i-6]^QRMath.EXP_TABLE[i-8];}
138
+ for(var i=0;i<255;i++){QRMath.LOG_TABLE[QRMath.EXP_TABLE[i]]=i;}
139
+ function QRPolynomial(num,shift){if(num.length==undefined){throw new Error(num.length+"/"+shift);}
140
+ var offset=0;while(offset<num.length&&num[offset]==0){offset++;}
141
+ this.num=new Array(num.length-offset+shift);for(var i=0;i<num.length-offset;i++){this.num[i]=num[i+offset];}}
142
+ QRPolynomial.prototype={get:function(index){return this.num[index];},getLength:function(){return this.num.length;},multiply:function(e){var num=new Array(this.getLength()+e.getLength()-1);for(var i=0;i<this.getLength();i++){for(var j=0;j<e.getLength();j++){num[i+j]^=QRMath.gexp(QRMath.glog(this.get(i))+QRMath.glog(e.get(j)));}}
143
+ return new QRPolynomial(num,0);},mod:function(e){if(this.getLength()-e.getLength()<0){return this;}
144
+ var ratio=QRMath.glog(this.get(0))-QRMath.glog(e.get(0));var num=new Array(this.getLength());for(var i=0;i<this.getLength();i++){num[i]=this.get(i);}
145
+ for(var i=0;i<e.getLength();i++){num[i]^=QRMath.gexp(QRMath.glog(e.get(i))+ratio);}
146
+ return new QRPolynomial(num,0).mod(e);}};function QRRSBlock(totalCount,dataCount){this.totalCount=totalCount;this.dataCount=dataCount;}
147
+ QRRSBlock.RS_BLOCK_TABLE=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12,7,37,13],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]];QRRSBlock.getRSBlocks=function(typeNumber,errorCorrectLevel){var rsBlock=QRRSBlock.getRsBlockTable(typeNumber,errorCorrectLevel);if(rsBlock==undefined){throw new Error("bad rs block @ typeNumber:"+typeNumber+"/errorCorrectLevel:"+errorCorrectLevel);}
148
+ var length=rsBlock.length/3;var list=[];for(var i=0;i<length;i++){var count=rsBlock[i*3+0];var totalCount=rsBlock[i*3+1];var dataCount=rsBlock[i*3+2];for(var j=0;j<count;j++){list.push(new QRRSBlock(totalCount,dataCount));}}
149
+ return list;};QRRSBlock.getRsBlockTable=function(typeNumber,errorCorrectLevel){switch(errorCorrectLevel){case QRErrorCorrectLevel.L:return QRRSBlock.RS_BLOCK_TABLE[(typeNumber-1)*4+0];case QRErrorCorrectLevel.M:return QRRSBlock.RS_BLOCK_TABLE[(typeNumber-1)*4+1];case QRErrorCorrectLevel.Q:return QRRSBlock.RS_BLOCK_TABLE[(typeNumber-1)*4+2];case QRErrorCorrectLevel.H:return QRRSBlock.RS_BLOCK_TABLE[(typeNumber-1)*4+3];default:return undefined;}};function QRBitBuffer(){this.buffer=[];this.length=0;}
150
+ QRBitBuffer.prototype={get:function(index){var bufIndex=Math.floor(index/8);return((this.buffer[bufIndex]>>>(7-index%8))&1)==1;},put:function(num,length){for(var i=0;i<length;i++){this.putBit(((num>>>(length-i-1))&1)==1);}},getLengthInBits:function(){return this.length;},putBit:function(bit){var bufIndex=Math.floor(this.length/8);if(this.buffer.length<=bufIndex){this.buffer.push(0);}
151
+ if(bit){this.buffer[bufIndex]|=(0x80>>>(this.length%8));}
152
+ this.length++;}};var QRCodeLimitLength=[[17,14,11,7],[32,26,20,14],[53,42,32,24],[78,62,46,34],[106,84,60,44],[134,106,74,58],[154,122,86,64],[192,152,108,84],[230,180,130,98],[271,213,151,119],[321,251,177,137],[367,287,203,155],[425,331,241,177],[458,362,258,194],[520,412,292,220],[586,450,322,250],[644,504,364,280],[718,560,394,310],[792,624,442,338],[858,666,482,382],[929,711,509,403],[1003,779,565,439],[1091,857,611,461],[1171,911,661,511],[1273,997,715,535],[1367,1059,751,593],[1465,1125,805,625],[1528,1190,868,658],[1628,1264,908,698],[1732,1370,982,742],[1840,1452,1030,790],[1952,1538,1112,842],[2068,1628,1168,898],[2188,1722,1228,958],[2303,1809,1283,983],[2431,1911,1351,1051],[2563,1989,1423,1093],[2699,2099,1499,1139],[2809,2213,1579,1219],[2953,2331,1663,1273]];
153
+
154
+ function _isSupportCanvas() {
155
+ return typeof CanvasRenderingContext2D != "undefined";
156
+ }
157
+
158
+ // android 2.x doesn't support Data-URI spec
159
+ function _getAndroid() {
160
+ var android = false;
161
+ var sAgent = navigator.userAgent;
162
+
163
+ if (/android/i.test(sAgent)) { // android
164
+ android = true;
165
+ var aMat = sAgent.toString().match(/android ([0-9]\.[0-9])/i);
166
+
167
+ if (aMat && aMat[1]) {
168
+ android = parseFloat(aMat[1]);
169
+ }
170
+ }
171
+
172
+ return android;
173
+ }
174
+
175
+ var svgDrawer = (function() {
176
+
177
+ var Drawing = function (el, htOption) {
178
+ this._el = el;
179
+ this._htOption = htOption;
180
+ };
181
+
182
+ Drawing.prototype.draw = function (oQRCode) {
183
+ var _htOption = this._htOption;
184
+ var _el = this._el;
185
+ var nCount = oQRCode.getModuleCount();
186
+ var nWidth = Math.floor(_htOption.width / nCount);
187
+ var nHeight = Math.floor(_htOption.height / nCount);
188
+
189
+ this.clear();
190
+
191
+ function makeSVG(tag, attrs) {
192
+ var el = document.createElementNS('http://www.w3.org/2000/svg', tag);
193
+ for (var k in attrs)
194
+ if (attrs.hasOwnProperty(k)) el.setAttribute(k, attrs[k]);
195
+ return el;
196
+ }
197
+
198
+ var svg = makeSVG("svg" , {'viewBox': '0 0 ' + String(nCount) + " " + String(nCount), 'width': '100%', 'height': '100%', 'fill': _htOption.colorLight});
199
+ svg.setAttributeNS("http://www.w3.org/2000/xmlns/", "xmlns:xlink", "http://www.w3.org/1999/xlink");
200
+ _el.appendChild(svg);
201
+
202
+ svg.appendChild(makeSVG("rect", {"fill": _htOption.colorLight, "width": "100%", "height": "100%"}));
203
+ svg.appendChild(makeSVG("rect", {"fill": _htOption.colorDark, "width": "1", "height": "1", "id": "template"}));
204
+
205
+ for (var row = 0; row < nCount; row++) {
206
+ for (var col = 0; col < nCount; col++) {
207
+ if (oQRCode.isDark(row, col)) {
208
+ var child = makeSVG("use", {"x": String(col), "y": String(row)});
209
+ child.setAttributeNS("http://www.w3.org/1999/xlink", "href", "#template")
210
+ svg.appendChild(child);
211
+ }
212
+ }
213
+ }
214
+ };
215
+ Drawing.prototype.clear = function () {
216
+ while (this._el.hasChildNodes())
217
+ this._el.removeChild(this._el.lastChild);
218
+ };
219
+ return Drawing;
220
+ })();
221
+
222
+ var useSVG = document.documentElement.tagName.toLowerCase() === "svg";
223
+
224
+ // Drawing in DOM by using Table tag
225
+ var Drawing = useSVG ? svgDrawer : !_isSupportCanvas() ? (function () {
226
+ var Drawing = function (el, htOption) {
227
+ this._el = el;
228
+ this._htOption = htOption;
229
+ };
230
+
231
+ /**
232
+ * Draw the QRCode
233
+ *
234
+ * @param {QRCode} oQRCode
235
+ */
236
+ Drawing.prototype.draw = function (oQRCode) {
237
+ var _htOption = this._htOption;
238
+ var _el = this._el;
239
+ var nCount = oQRCode.getModuleCount();
240
+ var nWidth = Math.floor(_htOption.width / nCount);
241
+ var nHeight = Math.floor(_htOption.height / nCount);
242
+ var aHTML = ['<table style="border:0;border-collapse:collapse;">'];
243
+
244
+ for (var row = 0; row < nCount; row++) {
245
+ aHTML.push('<tr>');
246
+
247
+ for (var col = 0; col < nCount; col++) {
248
+ aHTML.push('<td style="border:0;border-collapse:collapse;padding:0;margin:0;width:' + nWidth + 'px;height:' + nHeight + 'px;background-color:' + (oQRCode.isDark(row, col) ? _htOption.colorDark : _htOption.colorLight) + ';"></td>');
249
+ }
250
+
251
+ aHTML.push('</tr>');
252
+ }
253
+
254
+ aHTML.push('</table>');
255
+ _el.innerHTML = aHTML.join('');
256
+
257
+ // Fix the margin values as real size.
258
+ var elTable = _el.childNodes[0];
259
+ var nLeftMarginTable = (_htOption.width - elTable.offsetWidth) / 2;
260
+ var nTopMarginTable = (_htOption.height - elTable.offsetHeight) / 2;
261
+
262
+ if (nLeftMarginTable > 0 && nTopMarginTable > 0) {
263
+ elTable.style.margin = nTopMarginTable + "px " + nLeftMarginTable + "px";
264
+ }
265
+ };
266
+
267
+ /**
268
+ * Clear the QRCode
269
+ */
270
+ Drawing.prototype.clear = function () {
271
+ this._el.innerHTML = '';
272
+ };
273
+
274
+ return Drawing;
275
+ })() : (function () { // Drawing in Canvas
276
+ function _onMakeImage() {
277
+ this._elImage.src = this._elCanvas.toDataURL("image/png");
278
+ this._elImage.style.display = "block";
279
+ this._elCanvas.style.display = "none";
280
+ }
281
+
282
+ // Android 2.1 bug workaround
283
+ // http://code.google.com/p/android/issues/detail?id=5141
284
+ if (this._android && this._android <= 2.1) {
285
+ var factor = 1 / window.devicePixelRatio;
286
+ var drawImage = CanvasRenderingContext2D.prototype.drawImage;
287
+ CanvasRenderingContext2D.prototype.drawImage = function (image, sx, sy, sw, sh, dx, dy, dw, dh) {
288
+ if (("nodeName" in image) && /img/i.test(image.nodeName)) {
289
+ for (var i = arguments.length - 1; i >= 1; i--) {
290
+ arguments[i] = arguments[i] * factor;
291
+ }
292
+ } else if (typeof dw == "undefined") {
293
+ arguments[1] *= factor;
294
+ arguments[2] *= factor;
295
+ arguments[3] *= factor;
296
+ arguments[4] *= factor;
297
+ }
298
+
299
+ drawImage.apply(this, arguments);
300
+ };
301
+ }
302
+
303
+ /**
304
+ * Check whether the user's browser supports Data URI or not
305
+ *
306
+ * @private
307
+ * @param {Function} fSuccess Occurs if it supports Data URI
308
+ * @param {Function} fFail Occurs if it doesn't support Data URI
309
+ */
310
+ function _safeSetDataURI(fSuccess, fFail) {
311
+ var self = this;
312
+ self._fFail = fFail;
313
+ self._fSuccess = fSuccess;
314
+
315
+ // Check it just once
316
+ if (self._bSupportDataURI === null) {
317
+ var el = document.createElement("img");
318
+ var fOnError = function() {
319
+ self._bSupportDataURI = false;
320
+
321
+ if (self._fFail) {
322
+ self._fFail.call(self);
323
+ }
324
+ };
325
+ var fOnSuccess = function() {
326
+ self._bSupportDataURI = true;
327
+
328
+ if (self._fSuccess) {
329
+ self._fSuccess.call(self);
330
+ }
331
+ };
332
+
333
+ el.onabort = fOnError;
334
+ el.onerror = fOnError;
335
+ el.onload = fOnSuccess;
336
+ el.src = "data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="; // the Image contains 1px data.
337
+ return;
338
+ } else if (self._bSupportDataURI === true && self._fSuccess) {
339
+ self._fSuccess.call(self);
340
+ } else if (self._bSupportDataURI === false && self._fFail) {
341
+ self._fFail.call(self);
342
+ }
343
+ };
344
+
345
+ /**
346
+ * Drawing QRCode by using canvas
347
+ *
348
+ * @constructor
349
+ * @param {HTMLElement} el
350
+ * @param {Object} htOption QRCode Options
351
+ */
352
+ var Drawing = function (el, htOption) {
353
+ this._bIsPainted = false;
354
+ this._android = _getAndroid();
355
+
356
+ this._htOption = htOption;
357
+ this._elCanvas = document.createElement("canvas");
358
+ this._elCanvas.width = htOption.width;
359
+ this._elCanvas.height = htOption.height;
360
+ el.appendChild(this._elCanvas);
361
+ this._el = el;
362
+ this._oContext = this._elCanvas.getContext("2d");
363
+ this._bIsPainted = false;
364
+ this._elImage = document.createElement("img");
365
+ this._elImage.alt = "Scan me!";
366
+ this._elImage.style.display = "none";
367
+ this._el.appendChild(this._elImage);
368
+ this._bSupportDataURI = null;
369
+ };
370
+
371
+ /**
372
+ * Draw the QRCode
373
+ *
374
+ * @param {QRCode} oQRCode
375
+ */
376
+ Drawing.prototype.draw = function (oQRCode) {
377
+ var _elImage = this._elImage;
378
+ var _oContext = this._oContext;
379
+ var _htOption = this._htOption;
380
+
381
+ var nCount = oQRCode.getModuleCount();
382
+ var nWidth = _htOption.width / nCount;
383
+ var nHeight = _htOption.height / nCount;
384
+ var nRoundedWidth = Math.round(nWidth);
385
+ var nRoundedHeight = Math.round(nHeight);
386
+
387
+ _elImage.style.display = "none";
388
+ this.clear();
389
+
390
+ for (var row = 0; row < nCount; row++) {
391
+ for (var col = 0; col < nCount; col++) {
392
+ var bIsDark = oQRCode.isDark(row, col);
393
+ var nLeft = col * nWidth;
394
+ var nTop = row * nHeight;
395
+ _oContext.strokeStyle = bIsDark ? _htOption.colorDark : _htOption.colorLight;
396
+ _oContext.lineWidth = 1;
397
+ _oContext.fillStyle = bIsDark ? _htOption.colorDark : _htOption.colorLight;
398
+ _oContext.fillRect(nLeft, nTop, nWidth, nHeight);
399
+
400
+ // 안티 앨리어싱 방지 처리
401
+ _oContext.strokeRect(
402
+ Math.floor(nLeft) + 0.5,
403
+ Math.floor(nTop) + 0.5,
404
+ nRoundedWidth,
405
+ nRoundedHeight
406
+ );
407
+
408
+ _oContext.strokeRect(
409
+ Math.ceil(nLeft) - 0.5,
410
+ Math.ceil(nTop) - 0.5,
411
+ nRoundedWidth,
412
+ nRoundedHeight
413
+ );
414
+ }
415
+ }
416
+
417
+ this._bIsPainted = true;
418
+ };
419
+
420
+ /**
421
+ * Make the image from Canvas if the browser supports Data URI.
422
+ */
423
+ Drawing.prototype.makeImage = function () {
424
+ if (this._bIsPainted) {
425
+ _safeSetDataURI.call(this, _onMakeImage);
426
+ }
427
+ };
428
+
429
+ /**
430
+ * Return whether the QRCode is painted or not
431
+ *
432
+ * @return {Boolean}
433
+ */
434
+ Drawing.prototype.isPainted = function () {
435
+ return this._bIsPainted;
436
+ };
437
+
438
+ /**
439
+ * Clear the QRCode
440
+ */
441
+ Drawing.prototype.clear = function () {
442
+ this._oContext.clearRect(0, 0, this._elCanvas.width, this._elCanvas.height);
443
+ this._bIsPainted = false;
444
+ };
445
+
446
+ /**
447
+ * @private
448
+ * @param {Number} nNumber
449
+ */
450
+ Drawing.prototype.round = function (nNumber) {
451
+ if (!nNumber) {
452
+ return nNumber;
453
+ }
454
+
455
+ return Math.floor(nNumber * 1000) / 1000;
456
+ };
457
+
458
+ return Drawing;
459
+ })();
460
+
461
+ /**
462
+ * Get the type by string length
463
+ *
464
+ * @private
465
+ * @param {String} sText
466
+ * @param {Number} nCorrectLevel
467
+ * @return {Number} type
468
+ */
469
+ function _getTypeNumber(sText, nCorrectLevel) {
470
+ var nType = 1;
471
+ var length = _getUTF8Length(sText);
472
+
473
+ for (var i = 0, len = QRCodeLimitLength.length; i <= len; i++) {
474
+ var nLimit = 0;
475
+
476
+ switch (nCorrectLevel) {
477
+ case QRErrorCorrectLevel.L :
478
+ nLimit = QRCodeLimitLength[i][0];
479
+ break;
480
+ case QRErrorCorrectLevel.M :
481
+ nLimit = QRCodeLimitLength[i][1];
482
+ break;
483
+ case QRErrorCorrectLevel.Q :
484
+ nLimit = QRCodeLimitLength[i][2];
485
+ break;
486
+ case QRErrorCorrectLevel.H :
487
+ nLimit = QRCodeLimitLength[i][3];
488
+ break;
489
+ }
490
+
491
+ if (length <= nLimit) {
492
+ break;
493
+ } else {
494
+ nType++;
495
+ }
496
+ }
497
+
498
+ if (nType > QRCodeLimitLength.length) {
499
+ throw new Error("Too long data");
500
+ }
501
+
502
+ return nType;
503
+ }
504
+
505
+ function _getUTF8Length(sText) {
506
+ var replacedText = encodeURI(sText).toString().replace(/\%[0-9a-fA-F]{2}/g, 'a');
507
+ return replacedText.length + (replacedText.length != sText ? 3 : 0);
508
+ }
509
+
510
+ /**
511
+ * @class QRCode
512
+ * @constructor
513
+ * @example
514
+ * new QRCode(document.getElementById("test"), "http://jindo.dev.naver.com/collie");
515
+ *
516
+ * @example
517
+ * var oQRCode = new QRCode("test", {
518
+ * text : "http://naver.com",
519
+ * width : 128,
520
+ * height : 128
521
+ * });
522
+ *
523
+ * oQRCode.clear(); // Clear the QRCode.
524
+ * oQRCode.makeCode("http://map.naver.com"); // Re-create the QRCode.
525
+ *
526
+ * @param {HTMLElement|String} el target element or 'id' attribute of element.
527
+ * @param {Object|String} vOption
528
+ * @param {String} vOption.text QRCode link data
529
+ * @param {Number} [vOption.width=256]
530
+ * @param {Number} [vOption.height=256]
531
+ * @param {String} [vOption.colorDark="#000000"]
532
+ * @param {String} [vOption.colorLight="#ffffff"]
533
+ * @param {QRCode.CorrectLevel} [vOption.correctLevel=QRCode.CorrectLevel.H] [L|M|Q|H]
534
+ */
535
+ QRCode = function (el, vOption) {
536
+ this._htOption = {
537
+ width : 256,
538
+ height : 256,
539
+ typeNumber : 4,
540
+ colorDark : "#000000",
541
+ colorLight : "#ffffff",
542
+ correctLevel : QRErrorCorrectLevel.H
543
+ };
544
+
545
+ if (typeof vOption === 'string') {
546
+ vOption = {
547
+ text : vOption
548
+ };
549
+ }
550
+
551
+ // Overwrites options
552
+ if (vOption) {
553
+ for (var i in vOption) {
554
+ this._htOption[i] = vOption[i];
555
+ }
556
+ }
557
+
558
+ if (typeof el == "string") {
559
+ el = document.getElementById(el);
560
+ }
561
+
562
+ if (this._htOption.useSVG) {
563
+ Drawing = svgDrawer;
564
+ }
565
+
566
+ this._android = _getAndroid();
567
+ this._el = el;
568
+ this._oQRCode = null;
569
+ this._oDrawing = new Drawing(this._el, this._htOption);
570
+
571
+ if (this._htOption.text) {
572
+ this.makeCode(this._htOption.text);
573
+ }
574
+ };
575
+
576
+ /**
577
+ * Make the QRCode
578
+ *
579
+ * @param {String} sText link data
580
+ */
581
+ QRCode.prototype.makeCode = function (sText) {
582
+ this._oQRCode = new QRCodeModel(_getTypeNumber(sText, this._htOption.correctLevel), this._htOption.correctLevel);
583
+ this._oQRCode.addData(sText);
584
+ this._oQRCode.make();
585
+ this._el.title = sText;
586
+ this._oDrawing.draw(this._oQRCode);
587
+ this.makeImage();
588
+ };
589
+
590
+ /**
591
+ * Make the Image from Canvas element
592
+ * - It occurs automatically
593
+ * - Android below 3 doesn't support Data-URI spec.
594
+ *
595
+ * @private
596
+ */
597
+ QRCode.prototype.makeImage = function () {
598
+ if (typeof this._oDrawing.makeImage == "function" && (!this._android || this._android >= 3)) {
599
+ this._oDrawing.makeImage();
600
+ }
601
+ };
602
+
603
+ /**
604
+ * Clear the QRCode
605
+ */
606
+ QRCode.prototype.clear = function () {
607
+ this._oDrawing.clear();
608
+ };
609
+
610
+ /**
611
+ * @name QRCode.CorrectLevel
612
+ */
613
+ QRCode.CorrectLevel = QRErrorCorrectLevel;
614
+ })();
615
+
616
+ if (typeof module != "undefined") {
617
+ module.exports = QRCode;
618
+ }