telephone-clients 3.0.103-62 → 3.0.103-64

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 (1032) 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 -0
  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 +356 -356
  142. package/src/components/guoxin/RecordInfoRight.vue +75 -75
  143. package/src/components/guoxin/VisitInfo.vue +281 -281
  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 +839 -839
  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 -0
  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 +284 -284
  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 +700 -700
  251. package/src/components/pc/WorkListNew.vue +706 -706
  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/onlinequeryuser.vue +468 -468
  416. package/src/components/sendsingle/posMaintainer.vue +277 -277
  417. package/src/components/shaoguan/DelayReply.vue +60 -60
  418. package/src/components/shaoguan/FailureEdit.vue +172 -172
  419. package/src/components/shaoguan/RepairDetailsChange.vue +399 -399
  420. package/src/components/shaoguan/RepairOrderChange.vue +673 -673
  421. package/src/components/shaoguan/RepairUserInfoChange.vue +532 -532
  422. package/src/components/shaoguan/WorkHistory.vue +346 -346
  423. package/src/components/shaoguan/WorkListAll.vue +521 -521
  424. package/src/components/shaoguan/config/DefaultPrint.js +7 -7
  425. package/src/components/telcount/TelByAttendant.vue +118 -118
  426. package/src/components/telcount/TelByLouQi.vue +113 -113
  427. package/src/components/telcount/TelByLouQiMingxi.vue +117 -117
  428. package/src/components/telcount/TelByOrderMan.vue +105 -105
  429. package/src/components/telcount/TelByWeiXiu.vue +199 -199
  430. package/src/components/telcount/TelByZhiHuan.vue +109 -109
  431. package/src/components/telreport/HotlineMonthly.vue +121 -121
  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/Trafficassess.vue +121 -121
  439. package/src/components/temp/BusinessMessage.vue +60 -60
  440. package/src/components/temp/BusinesscheckInfo.vue +82 -82
  441. package/src/components/temp/CallRecords.vue +86 -86
  442. package/src/components/temp/ChangemeterInfo.vue +87 -87
  443. package/src/components/temp/DeviceInfo.vue +82 -82
  444. package/src/components/temp/DisableInforMation.vue +82 -82
  445. package/src/components/temp/HandplanInfo.vue +78 -78
  446. package/src/components/temp/InfoTable.vue +134 -134
  447. package/src/components/temp/InstructInfo.vue +86 -86
  448. package/src/components/temp/Main.vue +375 -375
  449. package/src/components/temp/MetereadInfo.vue +83 -83
  450. package/src/components/temp/MetterInfo.vue +92 -92
  451. package/src/components/temp/OldRepairList.vue +100 -100
  452. package/src/components/temp/ParamManager/ParamPage.vue +285 -285
  453. package/src/components/temp/ParamManager/SinglePage.vue +161 -161
  454. package/src/components/temp/RepairList.vue +125 -125
  455. package/src/components/temp/SecurityMessage.vue +64 -64
  456. package/src/components/temp/SecuritycheckInfo.vue +73 -73
  457. package/src/components/temp/SellInfo.vue +153 -153
  458. package/src/components/temp/TelList.vue +99 -99
  459. package/src/components/temp/rightview/CardList.vue +287 -287
  460. package/src/components/temp/rightview/RecordCancel.vue +103 -103
  461. package/src/components/temp/rightview/carddetail/AddUserDetail.vue +65 -65
  462. package/src/components/temp/rightview/carddetail/BankDKDetail.vue +75 -75
  463. package/src/components/temp/rightview/carddetail/BankPay.vue +75 -75
  464. package/src/components/temp/rightview/carddetail/CancellationDetail.vue +58 -58
  465. package/src/components/temp/rightview/carddetail/CardMeterCenterDetail.vue +58 -58
  466. package/src/components/temp/rightview/carddetail/CardOverUserDetail.vue +62 -62
  467. package/src/components/temp/rightview/carddetail/ChangeMeterDetail.vue +70 -70
  468. package/src/components/temp/rightview/carddetail/OtherChargeDetail.vue +56 -56
  469. package/src/components/temp/rightview/carddetail/RefundDetail.vue +63 -63
  470. package/src/components/temp/rightview/carddetail/ReissueBill.vue +165 -165
  471. package/src/components/temp/rightview/carddetail/SortingQuery.vue +295 -295
  472. package/src/components/temp/rightview/carddetail/UserChangeDetail.vue +77 -77
  473. package/src/components/temp/rightview/carddetail/WeChatPay.vue +75 -75
  474. package/src/components/temp/server/ChangeDeclare.vue +45 -45
  475. package/src/components/temp/server/LoadData.vue +60 -60
  476. package/src/components/temp/server/Login.vue +401 -401
  477. package/src/components/temp/server/ModifyPw.vue +143 -143
  478. package/src/components/tongcheng/DistributeWork.vue +129 -129
  479. package/src/components/tongcheng/InfoTable.vue +55 -55
  480. package/src/components/tongcheng/MetterInfo.vue +90 -90
  481. package/src/components/tongcheng/RepairsWork.vue +788 -788
  482. package/src/components/tongcheng/SellInfo.vue +152 -152
  483. package/src/components/tongcheng/StandServer.vue +24 -24
  484. package/src/components/tongcheng/UserOperate.vue +43 -43
  485. package/src/components/tongcheng/VoiceServer.vue +136 -136
  486. package/src/components/tongcheng/WorkListAll.vue +535 -535
  487. package/src/components/weinan/ComplainMsg.vue +141 -141
  488. package/src/components/weinan/ComplainWork.vue +205 -205
  489. package/src/components/weinan/Console.vue +418 -418
  490. package/src/components/weinan/DistributeWork.vue +138 -138
  491. package/src/components/weinan/ExportExcel.vue +204 -204
  492. package/src/components/weinan/FailureEdit.vue +182 -182
  493. package/src/components/weinan/InfoTable.vue +67 -67
  494. package/src/components/weinan/RecordList.vue +299 -299
  495. package/src/components/weinan/RepairFirstV.vue +547 -547
  496. package/src/components/weinan/RepairInfo.vue +163 -163
  497. package/src/components/weinan/RepairListTel.vue +96 -96
  498. package/src/components/weinan/RepairOrderV.vue +1447 -1447
  499. package/src/components/weinan/RepairUserInfo.vue +533 -533
  500. package/src/components/weinan/RepairsWork.vue +806 -806
  501. package/src/components/weinan/Seekwork.vue +178 -178
  502. package/src/components/weinan/SiteChange.vue +228 -228
  503. package/src/components/weinan/SiteSend.vue +228 -228
  504. package/src/components/weinan/SiteSendWeixiu.vue +268 -268
  505. package/src/components/weinan/StandWorkWeixiu.vue +91 -91
  506. package/src/components/weinan/TelByAttendant.vue +110 -110
  507. package/src/components/weinan/TelFindUser.vue +241 -241
  508. package/src/components/weinan/WorkList.vue +724 -724
  509. package/src/components/weinan/WorkListAll.vue +972 -948
  510. package/src/components/weinan/WorkListWeixiu.vue +608 -608
  511. package/src/components/workOrderApplication/OrderWorkDetail.vue +796 -796
  512. package/src/components/workOrderApplication/orderApplicationManage.vue +98 -98
  513. package/src/components/workOrderApplication/orderApply.vue +57 -57
  514. package/src/components/workOrderApplication/orderTable.vue +214 -214
  515. package/src/components/workOrderApplication/orderWork.vue +114 -114
  516. package/src/components/workorder/AfTabset.vue +125 -125
  517. package/src/components/workorder/AndroidStopGasManager.vue +270 -270
  518. package/src/components/workorder/AppInstallationMaterial.vue +613 -613
  519. package/src/components/workorder/ChangeMeter.vue +546 -546
  520. package/src/components/workorder/ChangeMeterList.vue +236 -236
  521. package/src/components/workorder/ChangeMeterPage.vue +506 -506
  522. package/src/components/workorder/CompletedInstall.vue +214 -214
  523. package/src/components/workorder/CompletedRepair.vue +321 -321
  524. package/src/components/workorder/CookingUtensils.vue +134 -134
  525. package/src/components/workorder/DelayApply.vue +105 -105
  526. package/src/components/workorder/DeviceService.vue +133 -133
  527. package/src/components/workorder/DoorService.vue +355 -355
  528. package/src/components/workorder/FaultAll.vue +826 -826
  529. package/src/components/workorder/FirstGasCheck.vue +310 -310
  530. package/src/components/workorder/InputSelect.vue +110 -110
  531. package/src/components/workorder/InstallFirst.vue +517 -517
  532. package/src/components/workorder/InstallUpLoad.vue +111 -111
  533. package/src/components/workorder/MaterialSum.vue +238 -238
  534. package/src/components/workorder/MonitorMSend.vue +202 -202
  535. package/src/components/workorder/Othercharge.vue +477 -477
  536. package/src/components/workorder/Outlay.vue +236 -236
  537. package/src/components/workorder/PhoneGroupResend.vue +88 -88
  538. package/src/components/workorder/PhoneStandWork.vue +354 -354
  539. package/src/components/workorder/PhoneUpDetail.vue +1041 -1041
  540. package/src/components/workorder/PhoneUpUserinfo.vue +1041 -1041
  541. package/src/components/workorder/PhotoWrite.vue +116 -116
  542. package/src/components/workorder/Pipeline.vue +497 -497
  543. package/src/components/workorder/QueryTemporaryRepair.vue +220 -220
  544. package/src/components/workorder/ReadCardPage.vue +217 -217
  545. package/src/components/workorder/RepairDetails.vue +603 -603
  546. package/src/components/workorder/RepairDetails22.vue +128 -128
  547. package/src/components/workorder/RepairFirst.vue +170 -170
  548. package/src/components/workorder/RepairFirstOld.vue +410 -410
  549. package/src/components/workorder/RepairFirstV.vue +673 -673
  550. package/src/components/workorder/RepairFirstVnew.vue +542 -542
  551. package/src/components/workorder/RepairInfo.vue +166 -166
  552. package/src/components/workorder/RepairMatterInfo.vue +186 -186
  553. package/src/components/workorder/RepairOrder.vue +688 -688
  554. package/src/components/workorder/RepairOrderV.vue +1446 -1446
  555. package/src/components/workorder/RepairOrderVnew.vue +868 -868
  556. package/src/components/workorder/RepairSend.vue +264 -264
  557. package/src/components/workorder/RepairUserInfo.vue +532 -532
  558. package/src/components/workorder/Repairpage.vue +100 -100
  559. package/src/components/workorder/RepairsVisit.vue +319 -319
  560. package/src/components/workorder/SafeCheckService.vue +355 -355
  561. package/src/components/workorder/SubstitFirstV.vue +143 -143
  562. package/src/components/workorder/SubstitutionPage.vue +100 -100
  563. package/src/components/workorder/TelChangeMatter.vue +231 -231
  564. package/src/components/workorder/TemporarySingle.vue +480 -480
  565. package/src/components/workorder/TroubleRemoval.vue +419 -419
  566. package/src/components/workorder/UpLoad.vue +111 -111
  567. package/src/components/workorder/ZHihuanFirst.vue +546 -546
  568. package/src/components/workorder/ZhiCompletedRepair.vue +217 -217
  569. package/src/components/workorder/ZhiUpLoad.vue +136 -136
  570. package/src/expandcss.less +620 -620
  571. package/src/filiale/fugu/pc/ComplainWork.vue +206 -206
  572. package/src/filiale/fugu/pc/FailureEdit.vue +183 -183
  573. package/src/filiale/fugu/pc/RepairsWork.vue +793 -793
  574. package/src/filiale/fugu/pc/Seekwork.vue +182 -182
  575. package/src/filiale/fugu/telephone.js +16 -16
  576. package/src/filiale/furuike/android/CompletedRepair.vue +210 -210
  577. package/src/filiale/furuike/android/FaultAll.vue +861 -861
  578. package/src/filiale/furuike/android/Materials.vue +410 -410
  579. package/src/filiale/furuike/android/RepairFirstVnew.vue +580 -580
  580. package/src/filiale/furuike/android/RepairOrderVnew.vue +890 -890
  581. package/src/filiale/furuike/pc/Auxfunc.vue +109 -109
  582. package/src/filiale/furuike/pc/CallRcords.vue +109 -109
  583. package/src/filiale/furuike/pc/ChangemeterInfo.vue +87 -87
  584. package/src/filiale/furuike/pc/ComplainWork.vue +348 -348
  585. package/src/filiale/furuike/pc/DeviceInfo.vue +82 -82
  586. package/src/filiale/furuike/pc/DisableInforMation.vue +82 -82
  587. package/src/filiale/furuike/pc/FailureEdit.vue +198 -198
  588. package/src/filiale/furuike/pc/HandplanInfo.vue +78 -78
  589. package/src/filiale/furuike/pc/InfoTable.vue +134 -134
  590. package/src/filiale/furuike/pc/InstructInfo.vue +86 -86
  591. package/src/filiale/furuike/pc/LineReport.vue +215 -215
  592. package/src/filiale/furuike/pc/MaterialWorkOrder/MaterialWork.vue +400 -400
  593. package/src/filiale/furuike/pc/MaterialWorkOrder/MaterialWorkOrderManage.vue +63 -63
  594. package/src/filiale/furuike/pc/MaterialWorkOrder/WorkOrderMaterial.vue +381 -381
  595. package/src/filiale/furuike/pc/MetereadInfo.vue +82 -82
  596. package/src/filiale/furuike/pc/MetterInfo.vue +92 -92
  597. package/src/filiale/furuike/pc/NewRepairPaper.vue +415 -415
  598. package/src/filiale/furuike/pc/ProblemList.vue +170 -170
  599. package/src/filiale/furuike/pc/QueryVisitHistory.vue +183 -183
  600. package/src/filiale/furuike/pc/RecordListLeft.vue +259 -259
  601. package/src/filiale/furuike/pc/ReminderOrder.vue +50 -50
  602. package/src/filiale/furuike/pc/RepairList.vue +102 -102
  603. package/src/filiale/furuike/pc/RepairsWork.vue +918 -918
  604. package/src/filiale/furuike/pc/SecuritycheckInfo.vue +128 -128
  605. package/src/filiale/furuike/pc/Seekwork.vue +352 -352
  606. package/src/filiale/furuike/pc/SellInfo.vue +158 -158
  607. package/src/filiale/furuike/pc/TableReport.vue +160 -160
  608. package/src/filiale/furuike/pc/TelFindUser.vue +229 -229
  609. package/src/filiale/furuike/pc/TelLossList.vue +145 -145
  610. package/src/filiale/furuike/pc/TelePhoneUpload.vue +279 -279
  611. package/src/filiale/furuike/pc/TextServer.vue +168 -168
  612. package/src/filiale/furuike/pc/VoiceServer.vue +216 -216
  613. package/src/filiale/furuike/pc/WorkCenter.vue +104 -104
  614. package/src/filiale/furuike/pc/WorkHistory.vue +576 -576
  615. package/src/filiale/furuike/pc/WorkListAllNew.vue +855 -855
  616. package/src/filiale/furuike/telephone.js +115 -115
  617. package/src/filiale/furuike/telephoneAndroid.js +23 -23
  618. package/src/filiale/gehua/pc/Console.vue +676 -676
  619. package/src/filiale/gehua/pc/TelAgentVoiceReport.vue +285 -285
  620. package/src/filiale/gehua/pc/TelFindUser.vue +214 -214
  621. package/src/filiale/gehua/telephone.js +16 -16
  622. package/src/filiale/gehua/telephoneAndroid.js +9 -9
  623. package/src/filiale/gongyi/android/RepairDetails.vue +542 -542
  624. package/src/filiale/gongyi/android/RepairFirstV.vue +537 -537
  625. package/src/filiale/gongyi/android/RepairOrderV.vue +1415 -1415
  626. package/src/filiale/gongyi/pc/WorkListAll.vue +632 -632
  627. package/src/filiale/gongyi/telephone.js +13 -13
  628. package/src/filiale/gongyi/telephoneAndroid.js +15 -15
  629. package/src/filiale/guangxi/android/FaultAll.vue +896 -896
  630. package/src/filiale/guangxi/telephoneAndroid.js +13 -13
  631. package/src/filiale/hanzhong/PagedList.js +248 -248
  632. package/src/filiale/hanzhong/android/Outlay.vue +265 -265
  633. package/src/filiale/hanzhong/android/RepairInfo.vue +167 -167
  634. package/src/filiale/hanzhong/hzSelectUtil.js +84 -84
  635. package/src/filiale/hanzhong/md5.js +266 -266
  636. package/src/filiale/hanzhong/pc/AnalysisMain.vue +477 -477
  637. package/src/filiale/hanzhong/pc/Console.vue +884 -884
  638. package/src/filiale/hanzhong/pc/DistributeWork.vue +420 -420
  639. package/src/filiale/hanzhong/pc/FailureEdit.vue +195 -195
  640. package/src/filiale/hanzhong/pc/RecordInfoRight.vue +84 -84
  641. package/src/filiale/hanzhong/pc/RecordList.vue +53 -53
  642. package/src/filiale/hanzhong/pc/RecordListLeft.vue +196 -196
  643. package/src/filiale/hanzhong/pc/Seekwork.vue +318 -318
  644. package/src/filiale/hanzhong/pc/StateStatistics.vue +292 -292
  645. package/src/filiale/hanzhong/pc/TelFindUser.vue +224 -224
  646. package/src/filiale/hanzhong/pc/TelLossList.vue +137 -137
  647. package/src/filiale/hanzhong/pc/TelephoneAnaly.vue +104 -104
  648. package/src/filiale/hanzhong/pc/TelephoneType.vue +269 -269
  649. package/src/filiale/hanzhong/pc/TextServer.vue +157 -157
  650. package/src/filiale/hanzhong/pc/VoiceServer.vue +208 -208
  651. package/src/filiale/hanzhong/pc/message/AllUser.vue +615 -615
  652. package/src/filiale/hanzhong/pc/message/AllUserNew.vue +638 -638
  653. package/src/filiale/hanzhong/pc/message/ArrearsList.vue +397 -397
  654. package/src/filiale/hanzhong/pc/message/MessageList.vue +635 -635
  655. package/src/filiale/hanzhong/pc/message/MessageManage.vue +136 -136
  656. package/src/filiale/hanzhong/pc/message/MessageManageList.vue +127 -127
  657. package/src/filiale/hanzhong/pc/message/MessageManageNew.vue +121 -121
  658. package/src/filiale/hanzhong/pc/message/TemplateMessage.vue +92 -92
  659. package/src/filiale/hanzhong/pc/message/UserDefinedMessage.vue +90 -90
  660. package/src/filiale/hanzhong/pc/message/UserDefinedMessageNew.vue +121 -121
  661. package/src/filiale/hanzhong/telephone.js +48 -48
  662. package/src/filiale/hanzhong/telephoneAndroid.js +15 -15
  663. package/src/filiale/kelai/android/Outlay.vue +274 -274
  664. package/src/filiale/kelai/android/RepairFirstV.vue +552 -552
  665. package/src/filiale/kelai/android/RepairOrderV.vue +1446 -1446
  666. package/src/filiale/kelai/android/RepairTypeList.vue +170 -170
  667. package/src/filiale/kelai/android/RepairUserInfo.vue +537 -537
  668. package/src/filiale/kelai/pc/CallReport/CallReportMainPage-Kelai.vue +612 -612
  669. package/src/filiale/kelai/pc/CallReport/CumulativeCalls.vue +128 -128
  670. package/src/filiale/kelai/pc/CallReport/IncomingTimedata.vue +69 -69
  671. package/src/filiale/kelai/pc/CallReport/Incomingcallvolume.vue +82 -82
  672. package/src/filiale/kelai/pc/CallReport/SeatStatus.vue +60 -60
  673. package/src/filiale/kelai/pc/CallReport/Time.vue +107 -107
  674. package/src/filiale/kelai/pc/CallReport/WorkorderTypesum.vue +76 -76
  675. package/src/filiale/kelai/pc/CallReport/timeRunning.vue +66 -66
  676. package/src/filiale/kelai/pc/KeLaiMaintenanceReport.vue +297 -297
  677. package/src/filiale/kelai/pc/RecordListLeft.vue +188 -188
  678. package/src/filiale/kelai/pc/Seekwork.vue +308 -308
  679. package/src/filiale/kelai/pc/TelAgentVoiceReport.vue +276 -276
  680. package/src/filiale/kelai/pc/TelFindUser.vue +214 -214
  681. package/src/filiale/kelai/pc/TelLossList.vue +154 -154
  682. package/src/filiale/kelai/pc/TextServer.vue +157 -157
  683. package/src/filiale/kelai/pc/Trafficassess.vue +159 -159
  684. package/src/filiale/kelai/pc/VisitInfo.vue +268 -268
  685. package/src/filiale/kelai/pc/VoiceServer.vue +227 -227
  686. package/src/filiale/kelai/pc/WorkCenterList.vue +315 -315
  687. package/src/filiale/kelai/pc/WorkListAllNew.vue +717 -717
  688. package/src/filiale/kelai/pc/serviceDeleteOrder.vue +55 -55
  689. package/src/filiale/kelai/telephone.js +40 -40
  690. package/src/filiale/kelai/telephoneAndroid.js +17 -17
  691. package/src/filiale/liaoyuan/android/FaultAll.vue +737 -737
  692. package/src/filiale/liaoyuan/android/RepairDetails.vue +493 -493
  693. package/src/filiale/liaoyuan/android/RepairOrderV.vue +831 -831
  694. package/src/filiale/liaoyuan/telephoneAndroid.js +13 -13
  695. package/src/filiale/meihekou/android/Othercharge.vue +443 -443
  696. package/src/filiale/meihekou/android/createQRcode.vue +192 -192
  697. package/src/filiale/meihekou/android/onlineBuyGas.vue +793 -793
  698. package/src/filiale/meihekou/telephone.js +13 -13
  699. package/src/filiale/meihekou/telephoneAndroid.js +18 -18
  700. package/src/filiale/qianneng/android/AppInstallationMaterial.vue +1032 -1032
  701. package/src/filiale/qianneng/android/Examine.vue +513 -513
  702. package/src/filiale/qianneng/android/FaultAll.vue +883 -883
  703. package/src/filiale/qianneng/android/MaterIialOne.vue +123 -123
  704. package/src/filiale/qianneng/android/PhoneStandWork.vue +412 -412
  705. package/src/filiale/qianneng/android/QueryTemporaryRepair.vue +243 -243
  706. package/src/filiale/qianneng/android/RepairDetails.vue +666 -666
  707. package/src/filiale/qianneng/android/RepairFirstV.vue +615 -615
  708. package/src/filiale/qianneng/android/RepairInfo.vue +147 -147
  709. package/src/filiale/qianneng/android/RepairOrderV.vue +874 -874
  710. package/src/filiale/qianneng/android/RepairUserInfo.vue +542 -542
  711. package/src/filiale/qianneng/android/TemporarySingle.vue +512 -512
  712. package/src/filiale/qianneng/android/chargesList.vue +161 -161
  713. package/src/filiale/qianneng/pc/ComplainWork.vue +324 -324
  714. package/src/filiale/qianneng/pc/DistributeWork.vue +182 -182
  715. package/src/filiale/qianneng/pc/FailureEdit.vue +161 -161
  716. package/src/filiale/qianneng/pc/Indoorinstallation.vue +832 -832
  717. package/src/filiale/qianneng/pc/MaterialDetailed.vue +250 -250
  718. package/src/filiale/qianneng/pc/MaterialStatistics.vue +144 -144
  719. package/src/filiale/qianneng/pc/NewRepairPaper.vue +467 -467
  720. package/src/filiale/qianneng/pc/Outdoorinstallation.vue +736 -736
  721. package/src/filiale/qianneng/pc/RepairsWork.vue +982 -982
  722. package/src/filiale/qianneng/pc/Seekwork.vue +308 -308
  723. package/src/filiale/qianneng/pc/WorkHistory.vue +562 -562
  724. package/src/filiale/qianneng/pc/WorkListAllNew.vue +730 -730
  725. package/src/filiale/qianneng/telephone.js +21 -21
  726. package/src/filiale/qianneng/telephoneAndroid.js +22 -22
  727. package/src/filiale/rizhao/android/FaultAll.vue +893 -893
  728. package/src/filiale/rizhao/android/Othercharge.vue +423 -423
  729. package/src/filiale/rizhao/android/RepairFirstV.vue +525 -525
  730. package/src/filiale/rizhao/android/RepairInfo.vue +172 -172
  731. package/src/filiale/rizhao/android/RepairOrderV.vue +1415 -1415
  732. package/src/filiale/rizhao/pc/AnalysisMain.vue +355 -355
  733. package/src/filiale/rizhao/pc/CallRecords.vue +89 -89
  734. package/src/filiale/rizhao/pc/ChangemeterInfo.vue +87 -87
  735. package/src/filiale/rizhao/pc/ComplainWork.vue +357 -357
  736. package/src/filiale/rizhao/pc/Console.vue +456 -456
  737. package/src/filiale/rizhao/pc/DispatchMan.vue +100 -100
  738. package/src/filiale/rizhao/pc/DispatchWork.vue +100 -100
  739. package/src/filiale/rizhao/pc/DistributeWork.vue +188 -188
  740. package/src/filiale/rizhao/pc/FailureEdit.vue +183 -183
  741. package/src/filiale/rizhao/pc/FailureEditFire.vue +169 -169
  742. package/src/filiale/rizhao/pc/FailureEditRepair.vue +174 -174
  743. package/src/filiale/rizhao/pc/IgnitionVentilation.vue +890 -890
  744. package/src/filiale/rizhao/pc/NewRepairPaper.vue +377 -377
  745. package/src/filiale/rizhao/pc/RecordListLeft.vue +189 -189
  746. package/src/filiale/rizhao/pc/ReminderOrder.vue +51 -51
  747. package/src/filiale/rizhao/pc/RepairsWork.vue +936 -936
  748. package/src/filiale/rizhao/pc/Seekwork.vue +339 -339
  749. package/src/filiale/rizhao/pc/SiteSend.vue +258 -258
  750. package/src/filiale/rizhao/pc/StateStatistics.vue +292 -292
  751. package/src/filiale/rizhao/pc/TelFindUser.vue +243 -243
  752. package/src/filiale/rizhao/pc/TelMan.vue +133 -133
  753. package/src/filiale/rizhao/pc/TeleInfo.vue +142 -142
  754. package/src/filiale/rizhao/pc/TelephoneAnaly.vue +72 -72
  755. package/src/filiale/rizhao/pc/TelephoneType.vue +272 -272
  756. package/src/filiale/rizhao/pc/Traffic.vue +91 -91
  757. package/src/filiale/rizhao/pc/UserOperate.vue +49 -49
  758. package/src/filiale/rizhao/pc/VoiceServer.vue +219 -219
  759. package/src/filiale/rizhao/pc/WorkCenterList.vue +294 -294
  760. package/src/filiale/rizhao/pc/WorkHistory.vue +541 -541
  761. package/src/filiale/rizhao/pc/WorkList.vue +783 -783
  762. package/src/filiale/rizhao/pc/WorkListAllNew.vue +673 -673
  763. package/src/filiale/rizhao/pc/WxBaobiaoService.vue +134 -134
  764. package/src/filiale/rizhao/telephone.js +57 -57
  765. package/src/filiale/rizhao/telephoneAndroid.js +16 -16
  766. package/src/filiale/rongcheng/CliWorkListAll.vue +699 -699
  767. package/src/filiale/rongcheng/FaultAll.vue +713 -713
  768. package/src/filiale/rongcheng/RepairFirstV.vue +418 -418
  769. package/src/filiale/rongcheng/RepairOrderV.vue +1445 -1445
  770. package/src/filiale/rongcheng/RepairUserInfo.vue +539 -539
  771. package/src/filiale/rongcheng/ServiceDetails.vue +53 -53
  772. package/src/filiale/rongcheng/WorkListAll.vue +727 -727
  773. package/src/filiale/rongcheng/batchPrintSafeCheckOrder.vue +303 -303
  774. package/src/filiale/rongcheng/checkmsgZG.vue +243 -243
  775. package/src/filiale/rongcheng/onlineBuyGas.vue +799 -799
  776. package/src/filiale/rongcheng/onlineoperation.vue +383 -383
  777. package/src/filiale/rongcheng/onlinequeryuser.vue +460 -460
  778. package/src/filiale/rongcheng/telephone.js +19 -19
  779. package/src/filiale/rongcheng/telephoneAndroid.js +19 -19
  780. package/src/filiale/shanxian/android/RepairFirstV.vue +639 -639
  781. package/src/filiale/shanxian/pc/RepairsWork.vue +826 -826
  782. package/src/filiale/shanxian/pc/WorkList.vue +823 -823
  783. package/src/filiale/shanxian/telephone.js +13 -13
  784. package/src/filiale/shanxian/telephoneAndroid.js +13 -13
  785. package/src/filiale/shaoguan/pc/WorkCenterList.vue +326 -326
  786. package/src/filiale/shaoguan/pc/WorkListAllNew.vue +683 -683
  787. package/src/filiale/shaoguan/telephone.js +14 -14
  788. package/src/filiale/shexian/android/AddMyTask.vue +354 -354
  789. package/src/filiale/shexian/android/CompletedRepair.vue +280 -280
  790. package/src/filiale/shexian/android/FaultAll.vue +847 -847
  791. package/src/filiale/shexian/android/Outlay.vue +266 -266
  792. package/src/filiale/shexian/android/RepairFirstV.vue +775 -775
  793. package/src/filiale/shexian/android/RepairInfo.vue +182 -182
  794. package/src/filiale/shexian/android/RepairOrderV.vue +732 -732
  795. package/src/filiale/shexian/pc/NewRepairPaper.vue +374 -374
  796. package/src/filiale/shexian/pc/TelByOrderMan.vue +109 -109
  797. package/src/filiale/shexian/pc/TelByOrderManCount.vue +124 -124
  798. package/src/filiale/shexian/pc/TelByRepairType.vue +111 -111
  799. package/src/filiale/shexian/pc/WorkList.vue +764 -764
  800. package/src/filiale/shexian/pc/WorkListAllNew.vue +718 -718
  801. package/src/filiale/shexian/telephone.js +18 -18
  802. package/src/filiale/shexian/telephoneAndroid.js +32 -32
  803. package/src/filiale/shimen/pc/ChangemeterInfo.vue +108 -108
  804. package/src/filiale/shimen/pc/ComplainWork.vue +297 -297
  805. package/src/filiale/shimen/pc/DistributeWork.vue +173 -173
  806. package/src/filiale/shimen/pc/InfoTable.vue +122 -122
  807. package/src/filiale/shimen/pc/RepairList.vue +109 -109
  808. package/src/filiale/shimen/pc/RepairsWork.vue +803 -803
  809. package/src/filiale/shimen/pc/Seekwork.vue +307 -307
  810. package/src/filiale/shimen/pc/SellInfo.vue +87 -87
  811. package/src/filiale/shimen/pc/WorkListAllNew.vue +680 -680
  812. package/src/filiale/shimen/telephone.js +23 -23
  813. package/src/filiale/tianke/android/FaultAll.vue +854 -854
  814. package/src/filiale/tianke/android/RepairFirstV.vue +614 -614
  815. package/src/filiale/tianke/android.js +12 -12
  816. package/src/filiale/tianke/pc/DistributeWork.vue +180 -180
  817. package/src/filiale/tianke/pc/IgnitionVentilationWork.vue +801 -801
  818. package/src/filiale/tianke/pc/NewRepairPaper.vue +370 -370
  819. package/src/filiale/tianke/pc/RepairsWork.vue +794 -794
  820. package/src/filiale/tianke/pc/WorkList.vue +769 -769
  821. package/src/filiale/tianke/telephone.js +17 -17
  822. package/src/filiale/tianke/telephoneAndroid.js +13 -13
  823. package/src/filiale/tongchuan/android/AndroidStopGasManager.vue +321 -321
  824. package/src/filiale/tongchuan/android/CompletedRepair.vue +211 -211
  825. package/src/filiale/tongchuan/android/PhoneStandWork.vue +409 -409
  826. package/src/filiale/tongchuan/android/PhoneUpUserinfo.vue +1005 -1005
  827. package/src/filiale/tongchuan/android/RepairFirstV.vue +646 -646
  828. package/src/filiale/tongchuan/android/RepairInfo.vue +172 -172
  829. package/src/filiale/tongchuan/android/RepairOrderV.vue +1446 -1446
  830. package/src/filiale/tongchuan/android/TicketDetails.vue +411 -411
  831. package/src/filiale/tongchuan/pc/AnalysisMain.vue +355 -355
  832. package/src/filiale/tongchuan/pc/CallRecords.vue +96 -96
  833. package/src/filiale/tongchuan/pc/CheckWork.vue +289 -289
  834. package/src/filiale/tongchuan/pc/ComplainWork.vue +324 -324
  835. package/src/filiale/tongchuan/pc/DepRepairManCount.vue +148 -148
  836. package/src/filiale/tongchuan/pc/DistributeWork.vue +179 -179
  837. package/src/filiale/tongchuan/pc/ExportExcel.vue +204 -204
  838. package/src/filiale/tongchuan/pc/HiddenSituationWeixiu.vue +115 -115
  839. package/src/filiale/tongchuan/pc/QueryVisitHistory.vue +236 -236
  840. package/src/filiale/tongchuan/pc/RecordListLeft.vue +216 -216
  841. package/src/filiale/tongchuan/pc/RepairList.vue +102 -102
  842. package/src/filiale/tongchuan/pc/RepairWorkReport.vue +133 -133
  843. package/src/filiale/tongchuan/pc/RepairsWork.vue +836 -836
  844. package/src/filiale/tongchuan/pc/SeatInfo.vue +325 -325
  845. package/src/filiale/tongchuan/pc/Seekwork.vue +307 -307
  846. package/src/filiale/tongchuan/pc/ServiceDetails.vue +112 -112
  847. package/src/filiale/tongchuan/pc/StateStatistics.vue +292 -292
  848. package/src/filiale/tongchuan/pc/TelFindUser.vue +278 -278
  849. package/src/filiale/tongchuan/pc/TelMan.vue +142 -142
  850. package/src/filiale/tongchuan/pc/TelephoneAnaly.vue +102 -102
  851. package/src/filiale/tongchuan/pc/TelephoneType.vue +272 -272
  852. package/src/filiale/tongchuan/pc/Traffic.vue +103 -103
  853. package/src/filiale/tongchuan/pc/UserWork.vue +805 -805
  854. package/src/filiale/tongchuan/pc/VisitInfo.vue +305 -305
  855. package/src/filiale/tongchuan/pc/VisitListWork.vue +251 -251
  856. package/src/filiale/tongchuan/pc/VoiceServer.vue +218 -218
  857. package/src/filiale/tongchuan/pc/WorkCenterList.vue +297 -297
  858. package/src/filiale/tongchuan/pc/WorkHistory.vue +521 -521
  859. package/src/filiale/tongchuan/pc/WorkList.vue +811 -811
  860. package/src/filiale/tongchuan/pc/WorkListAll.vue +731 -731
  861. package/src/filiale/tongchuan/pc/WorkOrderStatistics.vue +294 -294
  862. package/src/filiale/tongchuan/pc/WorkorderCheckDistributePlan.vue +376 -376
  863. package/src/filiale/tongchuan/pc/visitPlanList.vue +342 -342
  864. package/src/filiale/tongchuan/pc/visitPlanManage.vue +599 -599
  865. package/src/filiale/tongchuan/pc/visitServiceList.vue +285 -285
  866. package/src/filiale/tongchuan/telephone.js +52 -52
  867. package/src/filiale/tongchuan/telephoneAndroid.js +22 -22
  868. package/src/filiale/v3new/android/FaultAll.vue +809 -809
  869. package/src/filiale/v3new/android/RepairFirstV.vue +633 -633
  870. package/src/filiale/v3new/pc/SiteBack.vue +83 -83
  871. package/src/filiale/v3new/pc/WorkCenter.vue +104 -104
  872. package/src/filiale/v3new/pc/WorkCenterList.vue +274 -274
  873. package/src/filiale/v3new/pc/WorkHistory.vue +537 -537
  874. package/src/filiale/v3new/pc/WorkList.vue +766 -766
  875. package/src/filiale/v3new/pc/WorkListNew.vue +706 -706
  876. package/src/filiale/v3new/pc/serviceDeleteOrder.vue +51 -51
  877. package/src/filiale/v3new/telephone.js +19 -19
  878. package/src/filiale/v3new/telephoneAndroid.js +15 -15
  879. package/src/filiale/weinanct/android/AppInstallationMaterial.vue +586 -586
  880. package/src/filiale/weinanct/android/FaultAll.vue +854 -854
  881. package/src/filiale/weinanct/android/RepairDetails.vue +508 -508
  882. package/src/filiale/weinanct/android/RepairFirstV.vue +635 -635
  883. package/src/filiale/weinanct/android/RepairOrderV.vue +1443 -1443
  884. package/src/filiale/weinanct/pc/TelFindUser.vue +213 -213
  885. package/src/filiale/weinanct/pc/VoiceServer.vue +208 -208
  886. package/src/filiale/weinanct/telephone.js +14 -14
  887. package/src/filiale/weinanct/telephoneAndroid.js +20 -20
  888. package/src/filiale/weinanct//350/257/264/346/230/216.txt +1 -1
  889. package/src/filiale/wenxi/android/RepairFirstV.vue +537 -537
  890. package/src/filiale/wenxi/android/RepairInfo.vue +168 -168
  891. package/src/filiale/wenxi/android/RepairOrderV.vue +1419 -1419
  892. package/src/filiale/wenxi/pc/DistributeWork.vue +177 -177
  893. package/src/filiale/wenxi/pc/FailureEdit.vue +206 -206
  894. package/src/filiale/wenxi/pc/RepairsWork.vue +774 -774
  895. package/src/filiale/wenxi/pc/TelFindUser.vue +209 -209
  896. package/src/filiale/wenxi/pc/VoiceServer.vue +214 -214
  897. package/src/filiale/wenxi/pc/WorkListAll.vue +650 -650
  898. package/src/filiale/wenxi/telephone.js +18 -18
  899. package/src/filiale/wenxi/telephoneAndroid.js +16 -16
  900. package/src/filiale/wuan/Util.js +461 -461
  901. package/src/filiale/wuan/android/AddMyTask.vue +227 -227
  902. package/src/filiale/wuan/android/RepairInfo.vue +136 -136
  903. package/src/filiale/wuan/android/RepairOrderV.vue +1384 -1384
  904. package/src/filiale/wuan/android/RepairUserInfo.vue +581 -581
  905. package/src/filiale/wuan/pc/BatchList.vue +329 -329
  906. package/src/filiale/wuan/pc/BatchListSanhu.vue +329 -329
  907. package/src/filiale/wuan/pc/BatchOrdersSanhu.vue +115 -115
  908. package/src/filiale/wuan/pc/CheckWork.vue +263 -263
  909. package/src/filiale/wuan/pc/DistributeWork.vue +136 -136
  910. package/src/filiale/wuan/pc/FailureEdit.vue +174 -174
  911. package/src/filiale/wuan/pc/GasWorkSanhu.vue +817 -817
  912. package/src/filiale/wuan/pc/RepairsWork.vue +848 -848
  913. package/src/filiale/wuan/pc/Seekwork.vue +311 -311
  914. package/src/filiale/wuan/pc/TelFindUser.vue +229 -229
  915. package/src/filiale/wuan/pc/WorkListAll.vue +642 -642
  916. package/src/filiale/wuan/telephone.js +23 -23
  917. package/src/filiale/wuan/telephoneAndroid.js +17 -17
  918. package/src/filiale/wuhai/pc/CallRcords.vue +109 -109
  919. package/src/filiale/wuhai/pc/ComplainWork.vue +324 -324
  920. package/src/filiale/wuhai/pc/Console.vue +432 -432
  921. package/src/filiale/wuhai/pc/DistributeWork.vue +173 -173
  922. package/src/filiale/wuhai/pc/FailureEdit.vue +190 -190
  923. package/src/filiale/wuhai/pc/InfoTable.vue +135 -135
  924. package/src/filiale/wuhai/pc/NewRepairPaper.vue +380 -380
  925. package/src/filiale/wuhai/pc/RecordListLeft.vue +202 -202
  926. package/src/filiale/wuhai/pc/RepairsWork.vue +811 -811
  927. package/src/filiale/wuhai/pc/SecuritycheckInfo.vue +92 -92
  928. package/src/filiale/wuhai/pc/Seekwork.vue +361 -361
  929. package/src/filiale/wuhai/pc/ServiceRcords.vue +146 -146
  930. package/src/filiale/wuhai/pc/TelFindUser.vue +256 -256
  931. package/src/filiale/wuhai/pc/VoiceServer.vue +211 -211
  932. package/src/filiale/wuhai/pc/WorkCenter.vue +104 -104
  933. package/src/filiale/wuhai/pc/WorkCenterList.vue +337 -337
  934. package/src/filiale/wuhai/pc/WorkListAllNew.vue +715 -715
  935. package/src/filiale/wuhai/pc/serviceDeleteOrder.vue +54 -54
  936. package/src/filiale/wuhai/telephone.js +35 -35
  937. package/src/filiale/xinkang/android/FaultAll.vue +840 -840
  938. package/src/filiale/xinkang/android/RepairFirstV.vue +484 -484
  939. package/src/filiale/xinkang/telephoneAndroid.js +14 -14
  940. package/src/filiale/yuansheng/android/RepairFirstV.vue +636 -636
  941. package/src/filiale/yuansheng/android/RepairInfo.vue +166 -166
  942. package/src/filiale/yuansheng/pc/DistributeWork.vue +177 -177
  943. package/src/filiale/yuansheng/pc/FailureEdit.vue +188 -188
  944. package/src/filiale/yuansheng/pc/HandplanInfo.vue +78 -78
  945. package/src/filiale/yuansheng/pc/MetereadInfo.vue +83 -83
  946. package/src/filiale/yuansheng/pc/ReservationWork.vue +156 -156
  947. package/src/filiale/yuansheng/pc/TelFindUser.vue +237 -237
  948. package/src/filiale/yuansheng/pc/VoiceServer.vue +208 -208
  949. package/src/filiale/yuansheng/telephone.js +20 -20
  950. package/src/filiale/yuansheng/telephoneAndroid.js +16 -16
  951. package/src/filiale/zhongsheng/android/FailureShow.vue +61 -61
  952. package/src/filiale/zhongsheng/android/RepairFirstV.vue +464 -464
  953. package/src/filiale/zhongsheng/android/RepairInfo.vue +133 -133
  954. package/src/filiale/zhongsheng/android/RepairOrderV.vue +1430 -1430
  955. package/src/filiale/zhongsheng/android/RepairUserInfo.vue +532 -532
  956. package/src/filiale/zhongsheng/pc/ComplainWork.vue +299 -299
  957. package/src/filiale/zhongsheng/pc/Console.vue +432 -432
  958. package/src/filiale/zhongsheng/pc/DistributeWork.vue +173 -173
  959. package/src/filiale/zhongsheng/pc/IgnitionVentilationWork.vue +836 -836
  960. package/src/filiale/zhongsheng/pc/InfoTable.vue +124 -124
  961. package/src/filiale/zhongsheng/pc/RepairsWork.vue +775 -775
  962. package/src/filiale/zhongsheng/pc/Seekwork.vue +283 -283
  963. package/src/filiale/zhongsheng/pc/TelFindUser.vue +216 -216
  964. package/src/filiale/zhongsheng/pc/WorkList.vue +805 -805
  965. package/src/filiale/zhongsheng/pc/WorkListAll.vue +628 -628
  966. package/src/filiale/zhongsheng/telephone.js +23 -23
  967. package/src/filiale/zhongyi/android/FaultAll.vue +854 -854
  968. package/src/filiale/zhongyi/android/RepairFirstV.vue +614 -614
  969. package/src/filiale/zhongyi/android.js +12 -12
  970. package/src/filiale/zhongyi/pc/DistributeWork.vue +180 -180
  971. package/src/filiale/zhongyi/pc/IgnitionVentilationWork.vue +801 -801
  972. package/src/filiale/zhongyi/pc/NewRepairPaper.vue +370 -370
  973. package/src/filiale/zhongyi/pc/RepairsWork.vue +794 -794
  974. package/src/filiale/zhongyi/pc/WorkList.vue +769 -769
  975. package/src/filiale/zhongyi/pc/WorkListAllNew.vue +672 -672
  976. package/src/filiale/zhongyi/telephone.js +18 -18
  977. package/src/filiale/zhongyi/telephoneAndroid.js +13 -13
  978. package/src/filiale/zhoukou/android/ChargeBill.vue +201 -201
  979. package/src/filiale/zhoukou/android/FaultAll.vue +779 -779
  980. package/src/filiale/zhoukou/android/Othercharge.vue +591 -591
  981. package/src/filiale/zhoukou/android/OtherchargeZhoukou.vue +574 -574
  982. package/src/filiale/zhoukou/android/Outlay.vue +236 -236
  983. package/src/filiale/zhoukou/android/RepairDetails.vue +544 -544
  984. package/src/filiale/zhoukou/android/RepairFirstV.vue +542 -542
  985. package/src/filiale/zhoukou/android/RepairInfo.vue +136 -136
  986. package/src/filiale/zhoukou/android/RepairOrderV.vue +1383 -1383
  987. package/src/filiale/zhoukou/android/RepairUserInfo.vue +532 -532
  988. package/src/filiale/zhoukou/android/ZkBill.vue +191 -191
  989. package/src/filiale/zhoukou/android/createQRcode.vue +256 -256
  990. package/src/filiale/zhoukou/android/onlineBuyGas.vue +804 -804
  991. package/src/filiale/zhoukou/android/onlineoperation.vue +416 -416
  992. package/src/filiale/zhoukou/android/onlinequeryuser.vue +468 -468
  993. package/src/filiale/zhoukou/pc/ExportExcel.vue +204 -204
  994. package/src/filiale/zhoukou/pc/NewRepairPaper.vue +366 -366
  995. package/src/filiale/zhoukou/pc/SiteSend.vue +265 -265
  996. package/src/filiale/zhoukou/pc/WorkHistory.vue +514 -514
  997. package/src/filiale/zhoukou/pc/WorkList.vue +653 -653
  998. package/src/filiale/zhoukou/pc/WorkListAllNew.vue +675 -675
  999. package/src/filiale/zhoukou/telephone.js +18 -18
  1000. package/src/filiale/zhoukou/telephoneAndroid.js +33 -33
  1001. package/src/index.js +15 -15
  1002. package/src/main.js +22 -22
  1003. package/src/plugins/DataSql.js +569 -569
  1004. package/src/plugins/EmojiData.js +514 -514
  1005. package/src/plugins/EncryptUtil.js +53 -53
  1006. package/src/plugins/HttpLoad.js +93 -93
  1007. package/src/plugins/LoadData.js +40 -40
  1008. package/src/plugins/LoadParams.js +54 -54
  1009. package/src/plugins/LocalPagedList.js +107 -107
  1010. package/src/plugins/ObjTree.js +532 -532
  1011. package/src/plugins/TelGetSaleParams.js +63 -63
  1012. package/src/qrcode.js +618 -618
  1013. package/src/qrcode.min.js +1 -1
  1014. package/src/stores/exportConfig.js +10 -10
  1015. package/src/stores/wxconfig.js +10 -10
  1016. package/src/telephone-android.js +367 -367
  1017. package/src/telephone-shaoguan.js +256 -256
  1018. package/src/telephone-tongcheng.js +254 -254
  1019. package/src/telephone.js +743 -743
  1020. package/src/telephoneanaly.less +704 -704
  1021. package/src/utils/LdapHelper.js +99 -99
  1022. package/src/weinan-android.js +350 -350
  1023. package/src/weinan.js +537 -531
  1024. package/static/fonts/font.css +6 -6
  1025. package/static/js/adapter.min.js +2049 -2049
  1026. package/static/js/bootstrap.min.js +7 -7
  1027. package/static/js/ctilink.js +1303 -1303
  1028. package/static/js/ctimsg.js +655 -655
  1029. package/static/js/janus.js +4034 -4034
  1030. package/static/js/jquery-2.1.1.min.js +5 -5
  1031. package/yarn-error.log +7872 -7872
  1032. 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
+ }