sale-client 3.4.76 → 3.4.77

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 (387) hide show
  1. package/.babelrc +5 -5
  2. package/.gradle/{5.5/fileChanges → 3.5.1/file-changes}/last-build.bin +0 -0
  3. package/.gradle/3.5.1/taskHistory/taskHistory.lock +0 -0
  4. package/.gradle/{5.5/gc.properties → buildOutputCleanup/built.bin} +0 -0
  5. package/.gradle/buildOutputCleanup/cache.properties +2 -2
  6. package/.gradle/buildOutputCleanup/cache.properties.lock +1 -0
  7. package/build/dev-server.js +12 -12
  8. package/dist/index.html +26 -0
  9. package/{.gradle/7.1/dependencies-accessors/gc.properties → dist/mergeUser/.gitkeep} +0 -0
  10. package/dist/mergeUser/CalculateGasUsage.html +1 -0
  11. package/dist/mergeUser/CalculateGasUsageApp.css +1 -0
  12. package/dist/mergeUser/CalculateGasUsageApp.js +132 -0
  13. package/dist/mergeUser/ManageHomePic//346/244/255/345/234/2064.png +0 -0
  14. package/dist/mergeUser/ManagementControl/echarts10.png +0 -0
  15. package/dist/mergeUser/ManagementControl/echarts11.png +0 -0
  16. package/dist/mergeUser/ManagementControl/echarts12.png +0 -0
  17. package/dist/mergeUser/ManagementControl/echarts13.png +0 -0
  18. package/dist/mergeUser/ManagementControl/echarts14.png +0 -0
  19. package/dist/mergeUser/ManagementControl/echarts15.png +0 -0
  20. package/dist/mergeUser/ManagementControl/echarts16.png +0 -0
  21. package/dist/mergeUser/ManagementControl/echarts17.png +0 -0
  22. package/dist/mergeUser/ManagementControl/echarts18.png +0 -0
  23. package/dist/mergeUser/ManagementControl/echarts4.png +0 -0
  24. package/dist/mergeUser/ManagementControl/echarts5.png +0 -0
  25. package/dist/mergeUser/ManagementControl/echarts51.png +0 -0
  26. package/dist/mergeUser/ManagementControl/echarts6.png +0 -0
  27. package/dist/mergeUser/ManagementControl/echarts7.png +0 -0
  28. package/dist/mergeUser/ManagementControl/echarts71.png +0 -0
  29. package/dist/mergeUser/ManagementControl/echarts8.png +0 -0
  30. package/dist/mergeUser/ManagementControl//345/233/276/345/261/20211/346/213/267/350/264/235.png +0 -0
  31. package/dist/mergeUser/ManagementControl//347/237/251/345/275/2425/346/213/267/350/264/2353.png +0 -0
  32. package/dist/mergeUser/ManagementControl//347/237/251/345/275/2425/346/213/267/350/264/2355.png +0 -0
  33. package/dist/mergeUser/ManagementControl//347/237/251/345/275/2425/346/213/267/350/264/2356.png +0 -0
  34. package/dist/mergeUser/ParamSet.html +1 -0
  35. package/dist/mergeUser/ParamSetApp.css +1 -0
  36. package/dist/mergeUser/ParamSetApp.js +131 -0
  37. package/dist/mergeUser/PingFangSC-Regular.ttf +0 -0
  38. package/dist/mergeUser/ReadCard.html +1 -0
  39. package/dist/mergeUser/ReadCardApp.css +1 -0
  40. package/dist/mergeUser/ReadCardApp.js +132 -0
  41. package/dist/mergeUser/WebMetericon/0001.png +0 -0
  42. package/dist/mergeUser/WebMetericon/0002.png +0 -0
  43. package/dist/mergeUser/WebMetericon/0003.png +0 -0
  44. package/dist/mergeUser/WebMetericon/0004.png +0 -0
  45. package/dist/mergeUser/WebMetericon/001.png +0 -0
  46. package/dist/mergeUser/WebMetericon/002.png +0 -0
  47. package/dist/mergeUser/WebMetericon/003.png +0 -0
  48. package/dist/mergeUser/WebMetericon/004.png +0 -0
  49. package/dist/mergeUser/WebMetericon/01.png +0 -0
  50. package/dist/mergeUser/WebMetericon/02.png +0 -0
  51. package/dist/mergeUser/WebMetericon/03.png +0 -0
  52. package/dist/mergeUser/WebMetericon/04.png +0 -0
  53. package/dist/mergeUser/WebMetericon/1.png +0 -0
  54. package/dist/mergeUser/WebMetericon/2.png +0 -0
  55. package/dist/mergeUser/WebMetericon/3.png +0 -0
  56. package/dist/mergeUser/WebMetericon/4.png +0 -0
  57. package/dist/mergeUser/WebMetericon/Cell1.png +0 -0
  58. package/dist/mergeUser/WebMetericon/Cell2.png +0 -0
  59. package/dist/mergeUser/WebMetericon/Cell3.png +0 -0
  60. package/dist/mergeUser/WebMetericon/Cell4.png +0 -0
  61. package/dist/mergeUser/WebMetericon/Cell5.png +0 -0
  62. package/dist/mergeUser/WebMetericon/Cell6.png +0 -0
  63. package/dist/mergeUser/WebMetericon/Signal1.png +0 -0
  64. package/dist/mergeUser/WebMetericon/Signal2.png +0 -0
  65. package/dist/mergeUser/WebMetericon/Signal3.png +0 -0
  66. package/dist/mergeUser/WebMetericon/Signal4.png +0 -0
  67. package/dist/mergeUser/WebMetericon/guzhang.png +0 -0
  68. package/dist/mergeUser/WebMetericon/zhengchang.png +0 -0
  69. package/dist/mergeUser/WebMetericon//345/233/276/345/261/2021554.png +0 -0
  70. package/dist/mergeUser/WebMetericon//345/233/276/345/261/2021558.png +0 -0
  71. package/dist/mergeUser/WebMetericon//345/233/276/345/261/2021558/346/213/267/350/264/2352.png +0 -0
  72. package/dist/mergeUser/WebMetericon//345/233/276/345/261/2021573/346/213/267/350/264/235.png +0 -0
  73. package/dist/mergeUser/WebMetericon//345/233/276/345/261/2021573/346/213/267/350/264/2352.png +0 -0
  74. package/dist/mergeUser/WebMetericon//345/233/276/345/261/20216/346/213/267/350/264/2353.png +0 -0
  75. package/dist/mergeUser/WebMetericon//345/233/276/345/261/20217/346/213/267/350/264/2357.png +0 -0
  76. package/dist/mergeUser/WebMetericon//345/233/276/345/261/2022556.png +0 -0
  77. package/dist/mergeUser/WebMetericon//345/233/276/345/261/20225560.png +0 -0
  78. package/dist/mergeUser/WebMetericon//345/233/276/345/261/2025/346/213/267/350/264/2353.png +0 -0
  79. package/dist/mergeUser/WebMetericon//345/233/276/345/261/202872/346/213/267/350/264/235.png +0 -0
  80. package/dist/mergeUser/WebMetericon//346/244/255/345/234/206874.png +0 -0
  81. package/dist/mergeUser/WebMetericon//346/244/255/345/234/206874/346/213/267/350/264/235.png +0 -0
  82. package/dist/mergeUser/WebMetericon//347/237/251/345/275/2421538/346/213/267/350/264/2353.png +0 -0
  83. package/{src/filiale/WEINAN/static/mainicon → dist/mergeUser/WebMetericon}//347/237/251/345/275/2421828.png +0 -0
  84. package/dist/mergeUser/WebMetericon//350/256/276/347/275/256/345/217/202/346/225/260.png +0 -0
  85. package/dist/mergeUser/batchleft.png +0 -0
  86. package/dist/mergeUser/batchright.png +0 -0
  87. package/dist/mergeUser/bluemainbg.jpg +0 -0
  88. package/dist/mergeUser/deduction.html +1 -0
  89. package/dist/mergeUser/deductionApp.css +1 -0
  90. package/dist/mergeUser/deductionApp.js +131 -0
  91. package/dist/mergeUser/doc.jpg +0 -0
  92. package/dist/mergeUser/glyphicons-halflings-regular.eot +0 -0
  93. package/dist/mergeUser/glyphicons-halflings-regular.svg +288 -0
  94. package/dist/mergeUser/glyphicons-halflings-regular.ttf +0 -0
  95. package/dist/mergeUser/glyphicons-halflings-regular.woff +0 -0
  96. package/dist/mergeUser/glyphicons-halflings-regular.woff2 +0 -0
  97. package/dist/mergeUser/gzh.png +0 -0
  98. package/dist/mergeUser/huangtengbiaozhi.png +0 -0
  99. package/dist/mergeUser/images/lefticon//345/215/241/346/234/215/345/212/241/347/256/241/347/220/206.png +0 -0
  100. package/dist/mergeUser/images/lefticon//345/221/274/345/217/253/347/263/273/347/273/237.png +0 -0
  101. package/dist/mergeUser/images/lefticon//345/224/256/346/260/224/346/224/266/350/264/271.png +0 -0
  102. package/dist/mergeUser/images/lefticon//345/233/276/345/261/2021361.png +0 -0
  103. package/dist/mergeUser/images/lefticon//345/233/276/345/261/2023/346/213/267/350/264/2354.png +0 -0
  104. package/dist/mergeUser/images/lefticon//345/233/276/345/261/202532.png +0 -0
  105. package/dist/mergeUser/images/lefticon//345/233/276/345/261/202577.png +0 -0
  106. package/dist/mergeUser/images/lefticon//345/233/276/345/261/2028/346/213/267/350/264/23513.png +0 -0
  107. package/dist/mergeUser/images/lefticon//345/256/211/346/243/200/346/237/245/347/234/213.png +0 -0
  108. package/dist/mergeUser/images/lefticon//345/256/211/346/243/200/350/256/241/345/210/222.png +0 -0
  109. package/dist/mergeUser/images/lefticon//345/276/256/344/277/241/346/234/215/345/212/241.png +0 -0
  110. package/dist/mergeUser/images/lefticon//346/212/245/345/273/272/347/263/273/347/273/237.png +0 -0
  111. package/dist/mergeUser/images/lefticon//346/212/245/350/241/250/346/237/245/350/257/242.png +0 -0
  112. package/dist/mergeUser/images/lefticon//346/227/245/345/270/270/347/256/241/347/220/206.png +0 -0
  113. package/dist/mergeUser/images/lefticon//346/234/272/350/241/250/347/256/241/347/220/206.png +0 -0
  114. package/dist/mergeUser/images/lefticon//346/237/245/350/257/242/345/210/227/350/241/250.png +0 -0
  115. package/dist/mergeUser/images/lefticon//346/241/243/346/241/210/347/256/241/347/220/206.png +0 -0
  116. package/dist/mergeUser/images/lefticon//347/211/251/350/201/224/347/275/221/350/241/250.png +0 -0
  117. package/dist/mergeUser/images/lefticon//347/237/251/345/275/2421183.png +0 -0
  118. package/dist/mergeUser/images/lefticon//347/237/251/345/275/242533/346/213/267/350/264/2352.png +0 -0
  119. package/dist/mergeUser/images/lefticon//347/263/273/347/273/237/347/256/241/347/220/206.png +0 -0
  120. package/dist/mergeUser/images/lefticon//347/263/273/347/273/237/350/256/276/347/275/256.png +0 -0
  121. package/dist/mergeUser/images/lefticon//347/273/217/350/220/245/347/256/241/346/216/247.png +0 -0
  122. package/dist/mergeUser/images/lefticon//347/273/274/345/220/210/344/270/232/345/212/241.png +0 -0
  123. package/dist/mergeUser/images/lefticon//347/273/274/345/220/210/346/237/245/350/257/242.png +0 -0
  124. package/dist/mergeUser/images/lefticon//350/217/234/345/215/225/344/274/270/347/274/251.png +0 -0
  125. package/dist/mergeUser/images/lefticon//351/200/200/345/207/272/347/263/273/347/273/237.png +0 -0
  126. package/dist/mergeUser/images/mergeUser/drag.png +0 -0
  127. package/dist/mergeUser/images/mergeUser/help.png +0 -0
  128. package/dist/mergeUser/images/meterBook/drag.png +0 -0
  129. package/dist/mergeUser/jcwx.jpg +0 -0
  130. package/dist/mergeUser/jsoneditor-icons.svg +893 -0
  131. package/dist/mergeUser/juxing.png +0 -0
  132. package/dist/mergeUser/lefticon//345/215/241/346/234/215/345/212/241/347/256/241/347/220/206.png +0 -0
  133. package/dist/mergeUser/lefticon//345/221/274/345/217/253/347/263/273/347/273/237.png +0 -0
  134. package/dist/mergeUser/lefticon//345/224/256/346/260/224/346/224/266/350/264/271.png +0 -0
  135. package/dist/mergeUser/lefticon//345/233/276/345/261/2023/346/213/267/350/264/2354.png +0 -0
  136. package/dist/mergeUser/lefticon//345/233/276/345/261/202577.png +0 -0
  137. package/dist/mergeUser/lefticon//345/233/276/345/261/2028/346/213/267/350/264/23513.png +0 -0
  138. package/dist/mergeUser/lefticon//345/256/211/346/243/200/346/237/245/347/234/213.png +0 -0
  139. package/dist/mergeUser/lefticon//345/256/211/346/243/200/350/256/241/345/210/222.png +0 -0
  140. package/dist/mergeUser/lefticon//345/276/256/344/277/241/346/234/215/345/212/241.png +0 -0
  141. package/dist/mergeUser/lefticon//346/212/245/345/273/272/347/263/273/347/273/237.png +0 -0
  142. package/dist/mergeUser/lefticon//346/212/245/350/241/250/346/237/245/350/257/242.png +0 -0
  143. package/dist/mergeUser/lefticon//346/227/245/345/270/270/347/256/241/347/220/206.png +0 -0
  144. package/dist/mergeUser/lefticon//346/234/272/350/241/250/347/256/241/347/220/206.png +0 -0
  145. package/dist/mergeUser/lefticon//346/237/245/350/257/242/345/210/227/350/241/250.png +0 -0
  146. package/dist/mergeUser/lefticon//346/241/243/346/241/210/347/256/241/347/220/206.png +0 -0
  147. package/dist/mergeUser/lefticon//347/211/251/350/201/224/347/275/221/350/241/250.png +0 -0
  148. package/dist/mergeUser/lefticon//347/237/251/345/275/2421828.png +0 -0
  149. package/dist/mergeUser/lefticon//347/263/273/347/273/237/347/256/241/347/220/206.png +0 -0
  150. package/dist/mergeUser/lefticon//347/263/273/347/273/237/350/256/276/347/275/256.png +0 -0
  151. package/dist/mergeUser/lefticon//347/273/217/350/220/245/347/256/241/346/216/247.png +0 -0
  152. package/dist/mergeUser/lefticon//347/273/274/345/220/210/344/270/232/345/212/241.png +0 -0
  153. package/dist/mergeUser/lefticon//347/273/274/345/220/210/346/237/245/350/257/242.png +0 -0
  154. package/dist/mergeUser/lefticon//350/217/234/345/215/225/344/274/270/347/274/251.png +0 -0
  155. package/dist/mergeUser/lefticon//351/200/200/345/207/272/347/263/273/347/273/237.png +0 -0
  156. package/dist/mergeUser/login_bg.jpg +0 -0
  157. package/dist/mergeUser/login_title.png +0 -0
  158. package/dist/mergeUser/login_title1.png +0 -0
  159. package/dist/mergeUser/loginbg.gif +0 -0
  160. package/dist/mergeUser/loginbg.jpg +0 -0
  161. package/dist/mergeUser/loginbg1.jpg +0 -0
  162. package/dist/mergeUser/loginbg1280.gif +0 -0
  163. package/dist/mergeUser/loginbg1366.gif +0 -0
  164. package/dist/mergeUser/loginbg_jincheng.jpg +0 -0
  165. package/dist/mergeUser/loginbgmain.jpg +0 -0
  166. package/dist/mergeUser/loginlogo.png +0 -0
  167. package/dist/mergeUser/main_logo.png +0 -0
  168. package/dist/mergeUser/mainbg.jpg +0 -0
  169. package/dist/mergeUser/mainicon/adddevice.png +0 -0
  170. package/dist/mergeUser/mainicon/addmeter.png +0 -0
  171. package/dist/mergeUser/mainicon/bank.png +0 -0
  172. package/dist/mergeUser/mainicon/biaopan.png +0 -0
  173. package/dist/mergeUser/mainicon/cad.jpg +0 -0
  174. package/dist/mergeUser/mainicon/chaobiaoyuan.png +0 -0
  175. package/dist/mergeUser/mainicon/danganguanli.png +0 -0
  176. package/dist/mergeUser/mainicon/deletedevice.png +0 -0
  177. package/dist/mergeUser/mainicon/excel.jpg +0 -0
  178. package/dist/mergeUser/mainicon/huizong.png +0 -0
  179. package/dist/mergeUser/mainicon/jibiaoguanli.png +0 -0
  180. package/dist/mergeUser/mainicon/jibiaoguanli2.png +0 -0
  181. package/dist/mergeUser/mainicon/jiezhang.png +0 -0
  182. package/dist/mergeUser/mainicon/loginbg.jpg +0 -0
  183. package/dist/mergeUser/mainicon/shouqishoufei.png +0 -0
  184. package/dist/mergeUser/mainicon/treeopen.png +0 -0
  185. package/dist/mergeUser/mainicon/treeout.png +0 -0
  186. package/dist/mergeUser/mainicon/treeset.png +0 -0
  187. package/dist/mergeUser/mainicon/word.jpg +0 -0
  188. package/dist/mergeUser/mainicon/wulianwang.png +0 -0
  189. package/dist/mergeUser/mainicon/yingyechaxun.png +0 -0
  190. package/dist/mergeUser/mainicon/zongheyewu.png +0 -0
  191. package/dist/mergeUser/mainicon//347/237/251/345/275/2421828.png +0 -0
  192. package/dist/mergeUser/menulogo.png +0 -0
  193. package/dist/mergeUser/mergeUser.html +1 -0
  194. package/dist/mergeUser/mergeUserApp.css +1 -0
  195. package/dist/mergeUser/mergeUserApp.js +132 -0
  196. package/dist/mergeUser/meterBook(filesBox).html +1 -0
  197. package/dist/mergeUser/meterBook(filesBox)App.css +1 -0
  198. package/dist/mergeUser/meterBook(filesBox)App.js +133 -0
  199. package/dist/mergeUser/meterBook.html +1 -0
  200. package/dist/mergeUser/meterBookApp.css +1 -0
  201. package/dist/mergeUser/meterBookApp.js +133 -0
  202. package/dist/mergeUser/newStyle/clear.png +0 -0
  203. package/dist/mergeUser/newStyle/fife.png +0 -0
  204. package/dist/mergeUser/newStyle/hidden.png +0 -0
  205. package/dist/mergeUser/newStyle/label-clear.png +0 -0
  206. package/dist/mergeUser/newStyle/left-img.png +0 -0
  207. package/dist/mergeUser/newStyle/list_ok.png +0 -0
  208. package/dist/mergeUser/newStyle/login-check.png +0 -0
  209. package/dist/mergeUser/newStyle/login-con.png +0 -0
  210. package/dist/mergeUser/newStyle/login-do.gif +0 -0
  211. package/dist/mergeUser/newStyle/login-f.png +0 -0
  212. package/dist/mergeUser/newStyle/login-info.png +0 -0
  213. package/dist/mergeUser/newStyle/login-left.png +0 -0
  214. package/dist/mergeUser/newStyle/login-org.png +0 -0
  215. package/dist/mergeUser/newStyle/login-pwd.png +0 -0
  216. package/dist/mergeUser/newStyle/login-user.png +0 -0
  217. package/dist/mergeUser/newStyle/loginbg.gif +0 -0
  218. package/dist/mergeUser/newStyle/loginbg1280.gif +0 -0
  219. package/dist/mergeUser/newStyle/loginbg1366.gif +0 -0
  220. package/dist/mergeUser/newStyle/setting.png +0 -0
  221. package/dist/mergeUser/newStyle/setting1.png +0 -0
  222. package/dist/mergeUser/newStyle/shirk.png +0 -0
  223. package/dist/mergeUser/newStyle/stretch_bottom.png +0 -0
  224. package/dist/mergeUser/newStyle/stretch_left.png +0 -0
  225. package/dist/mergeUser/newStyle/stretch_right.png +0 -0
  226. package/dist/mergeUser/newStyle/stretch_top.png +0 -0
  227. package/dist/mergeUser/newStyle/system-off.png +0 -0
  228. package/dist/mergeUser/newmainbg.jpg +0 -0
  229. package/dist/mergeUser/pdf.jpg +0 -0
  230. package/dist/mergeUser/pingfang-bold.ttf +0 -0
  231. package/dist/mergeUser/pingfang-medium.ttf +0 -0
  232. package/dist/mergeUser/pingfang-regular.ttf +0 -0
  233. package/dist/mergeUser/psicon.png +0 -0
  234. package/dist/mergeUser/refresh.png +0 -0
  235. package/dist/mergeUser/showAdd.html +1 -0
  236. package/dist/mergeUser/showAddApp.css +1 -0
  237. package/dist/mergeUser/showAddApp.js +131 -0
  238. package/dist/mergeUser/showAddHtml.html +14 -0
  239. package/dist/mergeUser/showAddHtmlApp.css +1 -0
  240. package/dist/mergeUser/showAddHtmlApp.js +131 -0
  241. package/dist/mergeUser/showAddPrint.html +14 -0
  242. package/dist/mergeUser/showAddPrintApp.css +1 -0
  243. package/dist/mergeUser/showAddPrintApp.js +131 -0
  244. package/dist/mergeUser/singleleft.png +0 -0
  245. package/dist/mergeUser/singleright.png +0 -0
  246. package/dist/mergeUser/treeclose.png +0 -0
  247. package/dist/mergeUser/treeopen.png +0 -0
  248. package/dist/mergeUser/treeout.png +0 -0
  249. package/dist/mergeUser/treeset.png +0 -0
  250. package/dist/mergeUser/trendstrends.ttf +0 -0
  251. package/dist/mergeUser/usericon.png +0 -0
  252. package/dist/mergeUser/webMeter/0001.png +0 -0
  253. package/dist/mergeUser/webMeter/0002.png +0 -0
  254. package/dist/mergeUser/webMeter/0003.png +0 -0
  255. package/dist/mergeUser/webMeter/0004.png +0 -0
  256. package/dist/mergeUser/webMeter/001.png +0 -0
  257. package/dist/mergeUser/webMeter/002.png +0 -0
  258. package/dist/mergeUser/webMeter/003.png +0 -0
  259. package/dist/mergeUser/webMeter/004.png +0 -0
  260. package/dist/mergeUser/webMeter/01.png +0 -0
  261. package/dist/mergeUser/webMeter/02.png +0 -0
  262. package/dist/mergeUser/webMeter/03.png +0 -0
  263. package/dist/mergeUser/webMeter/04.png +0 -0
  264. package/dist/mergeUser/webMeter/1.png +0 -0
  265. package/dist/mergeUser/webMeter/2.png +0 -0
  266. package/dist/mergeUser/webMeter/3.png +0 -0
  267. package/dist/mergeUser/webMeter/4.png +0 -0
  268. package/dist/mergeUser/webMeter/Cell1.png +0 -0
  269. package/dist/mergeUser/webMeter/Cell2.png +0 -0
  270. package/dist/mergeUser/webMeter/Cell3.png +0 -0
  271. package/dist/mergeUser/webMeter/Cell4.png +0 -0
  272. package/dist/mergeUser/webMeter/Cell5.png +0 -0
  273. package/dist/mergeUser/webMeter/Cell6.png +0 -0
  274. package/dist/mergeUser/webMeter/Signal1.png +0 -0
  275. package/dist/mergeUser/webMeter/Signal2.png +0 -0
  276. package/dist/mergeUser/webMeter/Signal3.png +0 -0
  277. package/dist/mergeUser/webMeter/Signal4.png +0 -0
  278. package/dist/mergeUser/webMeter/guzhang.png +0 -0
  279. package/dist/mergeUser/webMeter/shangsheng.png +0 -0
  280. package/dist/mergeUser/webMeter/shousuo.png +0 -0
  281. package/dist/mergeUser/webMeter/shuaxin.png +0 -0
  282. package/dist/mergeUser/webMeter/zhengchang.png +0 -0
  283. package/dist/mergeUser/webMeter//345/233/276/345/261/2021554.png +0 -0
  284. package/dist/mergeUser/webMeter//345/233/276/345/261/2021558.png +0 -0
  285. package/dist/mergeUser/webMeter//345/233/276/345/261/2021558/346/213/267/350/264/2352.png +0 -0
  286. package/dist/mergeUser/webMeter//345/233/276/345/261/2021573/346/213/267/350/264/235.png +0 -0
  287. package/dist/mergeUser/webMeter//345/233/276/345/261/2021573/346/213/267/350/264/2352.png +0 -0
  288. package/dist/mergeUser/webMeter//345/233/276/345/261/20216/346/213/267/350/264/2353.png +0 -0
  289. package/dist/mergeUser/webMeter//345/233/276/345/261/20217/346/213/267/350/264/2357.png +0 -0
  290. package/dist/mergeUser/webMeter//345/233/276/345/261/2022556.png +0 -0
  291. package/dist/mergeUser/webMeter//345/233/276/345/261/20225560.png +0 -0
  292. package/dist/mergeUser/webMeter//345/233/276/345/261/2025/346/213/267/350/264/235.png +0 -0
  293. package/dist/mergeUser/webMeter//345/233/276/345/261/2025/346/213/267/350/264/2353.png +0 -0
  294. package/dist/mergeUser/webMeter//345/233/276/345/261/2025/346/213/267/350/264/2355.png +0 -0
  295. package/dist/mergeUser/webMeter//345/233/276/345/261/2025/346/213/267/350/264/2356.png +0 -0
  296. package/dist/mergeUser/webMeter//345/233/276/345/261/202872/346/213/267/350/264/235.png +0 -0
  297. package/dist/mergeUser/webMeter//345/275/242/347/212/2665.png +0 -0
  298. package/dist/mergeUser/webMeter//346/244/255/345/234/206874.png +0 -0
  299. package/dist/mergeUser/webMeter//346/244/255/345/234/206874/346/213/267/350/264/235.png +0 -0
  300. package/dist/mergeUser/webMeter//347/237/251/345/275/2421538/346/213/267/350/264/2353.png +0 -0
  301. package/dist/mergeUser/webMeter//347/237/251/345/275/2421828.png +0 -0
  302. package/dist/mergeUser/webMeter//350/256/276/347/275/256/345/217/202/346/225/260.png +0 -0
  303. package/dist/mergeUser/xinxi.png +0 -0
  304. package/package.json +1 -1
  305. package/src/components/archives/ArchivesList.vue +205 -205
  306. package/src/components/charge/ChargeManage.vue +243 -243
  307. package/src/components/charge/business/machine/MachineCharge.vue +168 -168
  308. package/src/components/chargeBatch/CardList.vue +459 -459
  309. package/src/components/chargeBatch/ChargeBatchList.vue +460 -460
  310. package/src/components/chargeBatch/ChargeGroupList.vue +281 -281
  311. package/src/components/chargeBatch/ChargeManageBatch.vue +214 -214
  312. package/src/components/revenue/comprehen/ComprehenOperation/ChangeAccount/TransferManage.vue +403 -403
  313. package/src/components/revenue/comprehen/Message/MessageList.vue +499 -499
  314. package/src/components/revenue/comprehen/common/TabButton.vue +155 -155
  315. package/src/components/revenue/comprehen/common/Tabs.vue +67 -67
  316. package/src/components/revenue/machineHandManage/machineHandAudit.vue +633 -633
  317. package/src/components/revenue/machineHandManage/machineHandManager.vue +84 -84
  318. package/src/components/webMeter/meterinfo/NewMeterList.vue +526 -526
  319. package/src/components/webMeter/webInfo/WebMeterList.vue +424 -407
  320. package/src/filiale/qianneng/FilesManage/UserEssentialInfoTest.vue +322 -322
  321. package/src/filiale/qianneng/MachineCharge.vue +169 -169
  322. package/src/filiale/tongchuan/Message/AllUser.vue +569 -569
  323. package/src/filiale/tongchuan/Message/MessageManage.vue +137 -137
  324. package/src/filiale/tongchuan/sale.js +102 -102
  325. package/src/filiale/{WEINAN → weinan}/AutomaticPurse.vue +0 -0
  326. package/src/filiale/{WEINAN → weinan}/CardList.vue +0 -0
  327. package/src/filiale/{WEINAN → weinan}/CardMeterCenter.vue +0 -0
  328. package/src/filiale/{WEINAN → weinan}/CardMeterChargeCancel.vue +0 -0
  329. package/src/filiale/{WEINAN → weinan}/ChangeMeter.vue +0 -0
  330. package/src/filiale/{WEINAN → weinan}/ChargeList.vue +0 -0
  331. package/src/filiale/{WEINAN → weinan}/ChargeManageNew.vue +0 -0
  332. package/src/filiale/{WEINAN → weinan}/ChargeQueryUser.vue +0 -0
  333. package/src/filiale/{WEINAN → weinan}/ChargeRecordQuery.vue +0 -0
  334. package/src/filiale/{WEINAN → weinan}/DisableManage.vue +0 -0
  335. package/src/filiale/{WEINAN → weinan}/EnableManage.vue +0 -0
  336. package/src/filiale/{WEINAN → weinan}/FileAddressManage.vue +0 -0
  337. package/src/filiale/{WEINAN → weinan}/FileUserAddress.vue +0 -0
  338. package/src/filiale/{WEINAN → weinan}/HighMeter.vue +0 -0
  339. package/src/filiale/{WEINAN → weinan}/IOTMeterCenter.vue +0 -0
  340. package/src/filiale/{WEINAN → weinan}/MachineMeterCenter.vue +0 -0
  341. package/src/filiale/{WEINAN → weinan}/MeterMessage.vue +0 -0
  342. package/src/filiale/{WEINAN → weinan}/MeterinfoTest.vue +0 -0
  343. package/src/filiale/{WEINAN → weinan}/OffGasAddGas.vue +0 -0
  344. package/src/filiale/{WEINAN → weinan}/OtherGas.vue +0 -0
  345. package/src/filiale/{WEINAN → weinan}/OverUseCharge.vue +0 -0
  346. package/src/filiale/{WEINAN → weinan}/RecordCancel.vue +0 -0
  347. package/src/filiale/{WEINAN → weinan}/RecordQueryUser.vue +0 -0
  348. package/src/filiale/{WEINAN → weinan}/ReplaceCardManage.vue +0 -0
  349. package/src/filiale/{WEINAN → weinan}/ShowCardSellGas.vue +0 -0
  350. package/src/filiale/{WEINAN → weinan}/Stairinfo.vue +0 -0
  351. package/src/filiale/{WEINAN → weinan}/TransferManage.vue +0 -0
  352. package/src/filiale/{WEINAN → weinan}/UserBaseInfoNew.vue +0 -0
  353. package/src/filiale/{WEINAN → weinan}/UserEssentialInfoTest.vue +0 -0
  354. package/src/filiale/{WEINAN → weinan}/UserGeneralInfoTest.vue +0 -0
  355. package/src/filiale/{WEINAN → weinan}/UserInfoDetailManageNew.vue +0 -0
  356. package/src/filiale/{WEINAN → weinan}/Userinfo.vue +0 -0
  357. package/src/filiale/{WEINAN → weinan}/gasmove.vue +0 -0
  358. package/src/filiale/{WEINAN → weinan}/meterinfodetail.vue +0 -0
  359. package/src/filiale/{WEINAN → weinan}/plugins/FileManageService.js +0 -0
  360. package/src/filiale/{WEINAN → weinan}/plugins/getTimeService.js +0 -0
  361. package/src/filiale/{WEINAN → weinan}/sale.js +0 -0
  362. package/src/filiale/{WEINAN → weinan}/sale.js~Stashed changes +0 -0
  363. package/src/filiale/weinan/static/mainicon//347/237/251/345/275/2421828.png +0 -0
  364. package/src/filiale/wuan/UserEssentialInfoTest.vue +328 -328
  365. package/src/filiale/wuhai/TransferManage.vue +403 -403
  366. package/src/filiale/wuhai/UserEssentialInfoTest.vue +320 -320
  367. package/src/filiale/wuhai/sale.js +21 -21
  368. package/src/main.js +23 -23
  369. package/src/plugins/LogicService.js +477 -477
  370. package/.gradle/5.5/executionHistory/executionHistory.bin +0 -0
  371. package/.gradle/5.5/executionHistory/executionHistory.lock +0 -0
  372. package/.gradle/5.5/fileContent/fileContent.lock +0 -0
  373. package/.gradle/5.5/fileHashes/fileHashes.bin +0 -0
  374. package/.gradle/5.5/fileHashes/fileHashes.lock +0 -0
  375. package/.gradle/7.1/dependencies-accessors/dependencies-accessors.lock +0 -0
  376. package/.gradle/7.1/executionHistory/executionHistory.bin +0 -0
  377. package/.gradle/7.1/executionHistory/executionHistory.lock +0 -0
  378. package/.gradle/7.1/fileChanges/last-build.bin +0 -0
  379. package/.gradle/7.1/fileHashes/fileHashes.bin +0 -0
  380. package/.gradle/7.1/fileHashes/fileHashes.lock +0 -0
  381. package/.gradle/7.1/gc.properties +0 -0
  382. package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  383. package/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  384. package/.gradle/checksums/checksums.lock +0 -0
  385. package/.gradle/vcs-1/gc.properties +0 -0
  386. package/build/libs/SaleClient-3.1.1-11.jar +0 -0
  387. package/build/tmp/jar/MANIFEST.MF +0 -2
@@ -1,569 +1,569 @@
1
- <template>
2
- <criteria-paged :model="model" v-ref:paged>
3
- <p class="bg-info text-center" style="padding: 8px;font-size: 20px">用户信息</p>
4
- <criteria partial='criteria' @condition-changed='$parent.search' v-ref:cri>
5
- <div class="form-horizontal select-overspread container-fluid auto" novalidate partial>
6
- <div class="row">
7
- <div class="col-sm-3 form-group">
8
- <label for="startDate" class="font_normal_body">安装日期</label>
9
- <datepicker id="startDate" placeholder="开始日期" style="width:60%"
10
- v-model="model.startDate"
11
- :value.sync="model.startDate"
12
- condition="f_install_date >= '{}'"
13
- :format="'yyyy-MM-dd HH:mm:ss'"
14
- :show-reset-button="true"
15
- >
16
- </datepicker>
17
- </div>
18
- <div class="col-sm-3 form-group">
19
- <label for="endDate" class="font_normal_body">&nbsp;&nbsp;&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label>
20
- <datepicker id="endDate" placeholder="结束日期" style="width:60%"
21
- v-model="model.endDate"
22
- :value.sync="model.endDate"
23
- condition="f_install_date <= '{}'"
24
- :format="'yyyy-MM-dd HH:mm:ss'"
25
- :show-reset-button="true"
26
- >
27
- </datepicker>
28
- </div>
29
- <div class="span" style="float:right;">
30
- <button class="button_search button_spacing width-60" @click="search()" v-el:cx>查询</button>
31
- <button class="button_clear button_spacing width-60" @click="$parent.$parent.getcreate()" v-if="$parent.$parent.userdefinedMessage">生成短信</button>
32
- <button class="button_search button_spacing width-60" @click="$parent.$parent.getsendmodel()">选择模板</button>
33
- <button class="button_clear button_spacing width-60" @click="$parent.$parent.addsendmodel()">新增模板</button>
34
- <button v-show="$parent.$parent.rollback" class="button_clear button_spacing width-60" @click="$parent.$parent.retrun()" v-el:cba>返回</button>
35
- <!-- <export-excel :data="{orderitem: 'f_userinfo_id',condition: condition}" sqlurl="rs/excel/report/getArrearsInfo/欠费记录导出Excel模板"></export-excel> -->
36
- <div
37
- :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
38
- @click="$parent.$parent.hidden()" class="button_spacing" style="float: right">
39
- </div>
40
- </div>
41
- </div>
42
- <div class="row" v-show="$parent.$parent.criteriaShow">
43
- <div class="form-group col-sm-3">
44
- <label class="font_normal_body">用户状态</label>
45
- <v-select id="f_whether"
46
- v-model="$parent.$parent.f_whether"
47
- placeholder='用户状态'
48
- :value.sync="$parent.$parent.f_whether"
49
- :options='$parent.$parent.whether'
50
- style="width: 60%"
51
- close-on-select >
52
- </v-select>
53
- </div>
54
- <div class="form-group col-sm-3">
55
- <label class="font_normal_body">用户类型</label>
56
- <v-select
57
- v-model="model.f_user_type"
58
- placeholder='用户类型'
59
- :value.sync="model.f_user_type"
60
- :options='$parent.$parent.getusertype'
61
- condition="f_user_type = '{}'"
62
- style="width: 60%"
63
- close-on-select >
64
- </v-select>
65
- </div>
66
- <div class="form-group col-sm-3">
67
- <label class="font_normal_body">用气性质</label>
68
- <v-select
69
- v-model="model.f_gasproperties"
70
- placeholder='用气性质'
71
- :value.sync="model.f_gasproperties"
72
- :options='$parent.$parent.gasproperties'
73
- condition="f_gasproperties = '{}'"
74
- style="width: 60%"
75
- close-on-select >
76
- </v-select>
77
- </div>
78
- <div class="form-group col-sm-3">
79
- <label class="font_normal_body">用户编号</label>
80
- <input type="text" class="form-control " v-model="model.f_userinfo_code" placeholder='用户编号' v-filter v-figure_filter
81
- condition="f_userinfo_code = '{}'" v-next-el='yhxm' style="width: 60%"
82
- :size="model.f_userinfo_code ? model.f_userinfo_code.length : 4">
83
- </div>
84
- <div class="form-group col-sm-3">
85
- <label class="font_normal_body">用户姓名</label>
86
- <input type="text" class="form-control" v-model="model.f_user_name" placeholder='用户姓名' v-filter v-cn_filter
87
- condition="f_user_name like '%{}%'" v-next-el='resentialarea' v-el:yhxm style="width: 60%"
88
- :size="model.f_user_name ? model.f_user_name.length : 4">
89
- </div>
90
- <div class="form-group col-sm-3">
91
- <label class="font_normal_body">用户电话</label>
92
- <input type="text" class="form-control" v-model="model.f_user_phone" placeholder='用户电话' v-filter v-cn_filter
93
- condition="f_user_phone = '{}'" v-next-el='resentialarea' v-el:yhxm style="width: 60%"
94
- :size="model.f_user_phone ? model.f_user_phone.length : 4">
95
- </div>
96
- <div class="form-group col-sm-3">
97
- <label class="font_normal_body">选择区域</label>
98
- <v-select
99
- v-model="model.f_pcd"
100
- placeholder='选择区域'
101
- :value.sync="model.f_pcd"
102
- :options='$parent.$parent.pcdslist'
103
- condition="f_pcd = '{}'"
104
- style="width: 60%"
105
- close-on-select >
106
- </v-select>
107
- </div>
108
- <div class="form-group col-sm-3">
109
- <label class="font_normal_body">选择小区</label>
110
- <v-select
111
- v-model="model.f_residential_area"
112
- placeholder='选择小区'
113
- :value.sync="model.f_residential_area"
114
- :options='$parent.$parent.residentialArea'
115
- condition="f_residential_area = '{}'"
116
- style="width: 60%"
117
- close-on-select >
118
- </v-select>
119
- </div>
120
- <div class="form-group col-sm-3">
121
- <label class="font_normal_body">用户地址</label>
122
- <input type="text" class="form-control" v-model="model.f_address" placeholder='用户地址' v-filter
123
- condition="f_address like '%{}%'" v-next-el='cx' v-el:resentialarea style="width: 60%"
124
- :size="model.f_address ? model.f_address.length * 2 : 4">
125
- </div>
126
- <div class="form-group col-sm-3" >
127
- <label class="font_normal_body">气表品牌</label>
128
- <v-select :value.sync="model.gasbrand" v-model="model.gasbrand" style="width: 60%"
129
- :options='$parent.$parent.meterbrands' placeholder='气表品牌' close-on-select
130
- v-model='$parent.$parent.gasbrand'
131
- condition="f_meter_brand = '{}'"
132
- ></v-select>
133
- </div>
134
- <div class="form-group col-sm-3">
135
- <label class="font_normal_body">用户余额</label>
136
- <input type="number" class="form-control " v-model="model.f_balance" placeholder='用户余额' v-filter v-figure_filter
137
- condition="f_balance > {}" style="width: 60%"
138
- :size="model.f_balance ? model.f_balance.length : 4">
139
- </div>
140
- <div class="form-group col-sm-3">
141
- <label class="font_normal_body">&nbsp;&nbsp;&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label>
142
- <input type="number" class="form-control " v-model="model.f_balance_cur" placeholder='用户余额' v-filter v-figure_filter
143
- condition="f_balance <= {}" style="width: 60%"
144
- :size="model.f_balance_cur ? model.f_balance_cur.length : 4">
145
- </div>
146
- </div>
147
- </div>
148
- </criteria>
149
-
150
- <data-grid :model="model" partial='list' class="table_sy" v-ref:grid>
151
- <template partial='head'>
152
- <tr>
153
- <th>
154
- <input type="checkbox" @click="$parent.$parent.$parent.isAll(model.pageIndex)">
155
- </th>
156
- <th>序号</th>
157
- <th>用户编号</th>
158
- <th>用户姓名</th>
159
- <th>用户电话</th>
160
- <!--<th><nobr>用户区域</nobr></th>-->
161
- <th>用户地址</th>
162
- <th>用户余额</th>
163
- <th>累购气量</th>
164
- <th>累购金额</th>
165
- </tr>
166
- </template>
167
- <template partial='body'>
168
- <td style="text-align:center">
169
- <input type="checkbox" v-model="$parent.$parent.$parent.ids"
170
- :value="row.f_userinfo_code">
171
- </td>
172
- <td>{{$index+1}}</td>
173
- <td style="text-align:center">{{row.f_userinfo_code}}</td>
174
- <td style="text-align:center">{{row.f_user_name}}</td>
175
- <td style="text-align:center">{{row.f_user_phone}}</td>
176
- <!--<td style="text-align:center"><nobr>{{row.f_area}}</nobr></td>-->
177
- <td style="text-align:center">{{row.f_address}}</td>
178
- <td style="text-align:center">{{row.f_balance}}</td>
179
- <td style="text-align:center">{{row.f_total_gas}}</td>
180
- <td style="text-align:center">{{row.f_total_fee}}</td>
181
- </template>
182
- </data-grid>
183
- </criteria-paged>
184
- <user-defined-message :show="definedShow" v-ref:printbill v-on:toggle="close"></user-defined-message>
185
- <modal v-if="allshow" :show.sync="allshow" v-ref:modal backdrop="false">
186
- <header slot="modal-header" class="modal-header">
187
- <h4 class="modal-title">短信发送</h4>
188
- </header>
189
- <article slot="modal-body" class="modal-body">
190
- <div class="form-group row" style="height:auto">
191
- <label class="label-control">短信内容:</label>{{msg}}
192
- </div>
193
- <div class="form-group">
194
- <label class="label-control">定时发送日期</label>
195
- <datepicker placeholder="定时发送日期" :value.sync="sendtimeingdate" :disabled-days-of-Week="[]" :format="'yyyy-MM-dd HH:mm:ss'" :show-reset-button="reset"></datepicker>
196
- </div>
197
- <div class="form-group">
198
- <label class="label-control">发送截至日期</label>
199
- <datepicker placeholder="发送截至日期" :value.sync="alldownDate" :disabled-days-of-Week="[]" :format="'yyyy-MM-dd HH:mm:ss'" :show-reset-button="reset"></datepicker>
200
- </div>
201
- </article>
202
-
203
- <footer slot="modal-footer" class="modal-footer">
204
- <button v-show="allshow" type="button" class="btn btn-default width-60" @click='allclose'>取消</button>
205
- <button v-show="allshow" type="button" class="btn btn-success width-60" @click='create()'>确认</button>
206
- </footer>
207
- </modal>
208
- <modal :show.sync="infoshow" width="1100px" title="短信模板选择" v-ref:modal large backdrop="false">
209
- <article slot="modal-body" class="modal-body">
210
- <criteria-paged :model="model2" v-ref:paged2>
211
- <data-grid :model="$parent.$parent.model2" v-ref:grid2 partial='list'>
212
- <template partial='head'>
213
- <tr>
214
- <!--<th style="padding: 0;border: 0">
215
- <input type="checkbox" id="f_operator" v-model="$parent.$parent.$parent.all[model.pageIndex-1]"
216
- @change="$parent.$parent.$parent.select()" style="width: 22px;height: 22px"/>
217
- </th>-->
218
- <th><nobr>选择</nobr></th>
219
- <th><nobr>短信类型</nobr></th>
220
- <th><nobr>模板内容</nobr></th>
221
- <th><nobr>模板状态</nobr></th>
222
- <th><nobr><b>创建人</b></nobr></th>
223
- <th><nobr>操作</nobr></th>
224
- </tr>
225
- </template>
226
- <template partial='body'>
227
- <td style="text-align: center;"><input type="checkbox" v-model="$parent.$parent.$parent.$parent.sendmodelids" :value="row"></td>
228
- <td style="text-align: center;">{{row.f_send_type}}</td>
229
- <td style="text-align: center;" title="{{row.f_user_defined}}" >{{row.f_user_defined}}</td>
230
- <td style="text-align: center;">{{row.f_state }}</td>
231
- <td style="text-align: center;"><b>{{row.f_operator}}</b></td>
232
- <td style="text-align: center;"><nobr>
233
- <a @click='$parent.$parent.$parent.$parent.edit(row)'>编辑</a>&nbsp;&nbsp;&nbsp;&nbsp;<a @click='$parent.$parent.$parent.$parent.senddelete(row)'>删除</a>
234
- </nobr></td>
235
- </template>
236
- </data-grid>
237
- </criteria-paged>
238
- </article>
239
- <footer slot="modal-footer" class="modal-footer">
240
- <button type="button" class="btn btn-success width-60" @click='create1'>确定</button>
241
- <button type="button" class="btn btn-default width-60" @click='infoclose'>关闭</button>
242
- </footer>
243
- </modal>
244
- <modal :show.sync="allshow2" v-ref:modal backdrop="false">
245
- <header slot="modal-header" class="modal-header">
246
- <h4 class="modal-title">修正短信内容</h4>
247
- </header>
248
- <article slot="modal-body" class="modal-body">
249
- <div class="form-group row" style="height:auto">
250
- <label class="label-control">原短信内容:</label>{{msg_old}}
251
- </div>
252
- <div class="form-group">
253
- <label class="label-control">修正为:</label>
254
- <div class="row auto">
255
- <textarea class="form-control col-sm-4" v-model="msg_new" rows="8" placeholder=""></textarea>
256
- </div>
257
- </div>
258
- <div class="form-group" style="text-align: center;">
259
- <h4><b>字数:<span style="color: #5cb85c">{{fontSizeNum}}</span></b></h4>
260
- </div>
261
- </article>
262
- <footer slot="modal-footer" class="modal-footer">
263
- <button v-show="allshow2" type="button" class="btn btn-default width-60" @click='closeEdit'>取消</button>
264
- <button v-show="allshow2" type="button" class="btn btn-success width-60" @click='createEdit'>修正</button>
265
- </footer>
266
- </modal>
267
- </template>
268
-
269
- <script>
270
- /**
271
- *阶梯水价查询列表
272
- */
273
- import {HttpResetClass, PagedList} from 'vue-client'
274
- import Vue from 'vue'
275
-
276
- let readySomething = async function (self) {
277
- await self.$LoadParams.loadParam(self.f_filialeid)
278
- self.loadMeterBooks()
279
- //self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString() + ' 00:00:00'
280
- self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString() + ' 23:59:59'
281
- }
282
-
283
- export default {
284
- data () {
285
- return {
286
- model: new PagedList('rs/sql/smsUserInfo', 50, {startDate: 'this.model.startDate', endDate: 'this.model.endDate'}),
287
- model2: new PagedList('rs/sql/getSendModel', 30, {orderitem: " \'id desc\'"}),
288
- // 短信模板选择
289
- infoshow: false,
290
- // 下选后其他查询条件
291
- criteriaShow: false,
292
- // 短信发送
293
- definedShow: false,
294
- allshow: false,
295
- allshow2: false,
296
- alldownDate: '',
297
- sendtimeingdate: '', // 定时发送日期
298
- startDate: '',
299
- endDate: '',
300
- sendtype: '',
301
- fontSizeNum: 0,
302
- userdefinedMessage: '',
303
- meterbrands: [{label: '全部', value: ''}],
304
- msg: '',
305
- ids: [],
306
- pages: [],
307
- msg_old: '',
308
- msg_new: '',
309
- rowEdit: '',
310
- sendmodelids: [],
311
- // 小区
312
- residentialArea: [],
313
- whether: [{ label: '欠费', value: '欠费' },
314
- { label: '全部', value: '全部' }],
315
- getusertype: [{ label: '全部', value: '' },
316
-
317
- { label: '民用', value: '民用' },
318
- { label: '非民用', value: '非民用' }],
319
- gasproperties: this.$appdata.getParam('用气性质') ? [{
320
- label: '全部',
321
- value: ''
322
- }, ...this.$appdata.getParam('用气性质')] : [],
323
- f_whether: '全部',
324
- pcdslist: [],
325
- isFirst: true
326
- }
327
- },
328
- props: {
329
- orderitem: {
330
- type: String,
331
- default: 'f_userinfo_id'
332
- },
333
- tablename: {
334
- type: String,
335
- default: 't_userinfo'
336
- },
337
- items: {
338
- type: String,
339
- default: '*'
340
- },
341
- rollback: false
342
- },
343
- ready () {
344
- this.getaddress()
345
- readySomething(this)
346
- this.$refs.paged.$refs.cri.search()
347
- },
348
- watch: {
349
- 'f_whether' (val) {
350
- if (val[0] === '欠费') {
351
- this.$dispatch('all', '欠费')
352
- this.f_whether = '全部'
353
- }
354
- },
355
- 'msg_new' (val) {
356
- this.fontSizeNum = val.length
357
- }
358
- },
359
- methods: {
360
- loadMeterBooks () {
361
- let meterbrand = this.$GetSaleParam.getGasbrand()
362
- for (let row of meterbrand) {
363
- this.meterbrands.push({label: row.label, value: row.value.f_meter_brand})
364
- }
365
- },
366
- retrun () {
367
- this.alllist = false
368
- this.$dispatch('allchange4')
369
- },
370
- async getaddress () {
371
- console.log('开始获取小区')
372
- let HttpReset = new HttpResetClass()
373
- var data = await HttpReset.load('POST', 'rs/sql/address_getarealist', {
374
- data: {
375
- condition: `1=1 and s.f_filialeid = '${this.$login.f.orgid}'`
376
- }
377
- }, {resolveMsg: null, rejectMsg: '获取小区失败!'})
378
- console.log('小区', data.data)
379
- let house = []
380
- for (let row of data.data) {
381
- console.log('开始保存小区')
382
- house.push({label: row.f_residential_area, value: row.f_residential_area})
383
- }
384
- this.residentialArea = house
385
- this.pcdslist = []
386
- let req = await HttpReset.load('POST', 'rs/sql/address_singleTableOrderBy?pageNo=1&pageSize=9999999', {
387
- data: {
388
- items: '*',
389
- tablename: 't_pcd',
390
- orderitem: 'id',
391
- condition: `1=1 and f_filialeid = '${this.$login.f.orgid}'`
392
- }
393
- }, {resolveMsg: null, rejectMsg: '获取地址失败!'})
394
- let redata = []
395
- req.data.forEach((row, n) => {
396
- redata[n] = {
397
- label: row.f_pcd,
398
- value: row.id,
399
- data: row,
400
- id: row.id
401
- }
402
- })
403
- this.pcdslist = redata
404
- },
405
- hidden () {
406
- this.criteriaShow = !this.criteriaShow
407
- },
408
- closeEdit () {
409
- this.allshow2 = false
410
- },
411
- senddelete (row) {
412
- let setpos = {
413
- id: row.id,
414
- f_state: '无效'
415
- }
416
- this.$resetpost('rs/entity/t_send_model', setpos, {resolveMsg: '模板删除成功', rejectMsg: '模板删除失败'})
417
- let condition = "f_state=\'有效\'"
418
- this.model2.search(condition)
419
- },
420
- createEdit () {
421
- this.allshow2 = false
422
- let setpos = {
423
- id: this.rowEdit.id,
424
- f_user_defined: this.msg_new.replace(/'/g,`''`)
425
- }
426
- this.$resetpost('rs/entity/t_send_model', setpos, {resolveMsg: '模板修正成功', rejectMsg: '模板修正失败'})
427
- this.rowEdit = ''
428
- this.msg_new = ''
429
- this.msg_old = ''
430
- this.sendmodelids = []
431
- let condition = "f_state=\'有效\' and f_orgid = \'" + Vue.$login.f.orgid + "\'"
432
- this.model2.search(condition)
433
- },
434
- edit (row) {
435
- this.allshow2 = true
436
- this.rowEdit = row
437
- this.msg_old = row.f_user_defined
438
- this.msg_new = row.f_user_defined
439
- },
440
- getsendmodel () {
441
- let condition = "f_state=\'有效\'"
442
- let res = this.model2.search(condition)
443
- console.log('---------------------' + res)
444
- console.log('this.model2:', this.model2)
445
- this.infoshow = true
446
- },
447
- infoclose () {
448
- this.infoshow = false
449
- },
450
- getcreate () {
451
- this.allshow = true
452
- },
453
- create () {
454
- if(this.sendtimeingdate && this.sendtimeingdate != ''){
455
- if(new Date(this.sendtimeingdate).getTime() <= new Date().getTime()){
456
- this.$showAlert('定时发送时间不能小于当前时间','warning',2000)
457
- return
458
- }
459
- }
460
- if(this.alldownDate && this.alldownDate != ''){
461
- if(new Date(this.alldownDate).getTime() <= new Date().getTime()){
462
- this.$showAlert('发送截至日期不能小于当前时间','warning',2000)
463
- return
464
- }
465
- }
466
-
467
- this.allshow = false
468
- this.startDate = this.$refs.paged.$refs.cri.model.startDate
469
- this.endDate = this.$refs.paged.$refs.cri.model.endDate
470
- this.model.condition = this.model.condition + " and f_orgid = \'" + Vue.$login.f.orgid + "\'"
471
- if (this.ids.length !== 0) {
472
- console.log('ids', this.ids)
473
- let tems = ''
474
- for (let i = 0; i < this.ids.length; i++) {
475
- tems += `'${this.ids[i]}',`
476
- }
477
- console.log('tems', tems.substr(0, tems.length - 1), tems)
478
- this.model.condition = this.model.condition + `and f_userinfo_code in (${tems.substr(0, tems.length - 1)})`
479
- }
480
- if (this.userdefinedMessage === '' || this.userdefinedMessage === null || this.alldownDate === '' || this.alldownDate === null) {
481
- this.$showAlert('短信模板及发送截至时间都不能为空!', 'danger', 3000)
482
- } else {
483
- this.$dispatch('create', this.model.condition, this.userdefinedMessage, this.alldownDate, this.sendtype, this.startDate, this.endDate, this.sendtimeingdate)
484
- this.sendmodelid = []
485
- this.userdefinedMessage = ''
486
- this.alldownDate = ''
487
- this.sendtype = ''
488
- }
489
- this.$refs.paged.$refs.cri.search()
490
- },
491
- create1 () {
492
- console.log('kaishi ===', this.sendmodelids)
493
- if (this.alldownDate === '' || this.alldownDate === null) {
494
- if (this.sendmodelids.length !== 1) {
495
- this.$showAlert('短信模板未选择或选择多个!', 'danger', 3000)
496
- } else {
497
- console.log('kaishi ===', this.sendmodelids[0])
498
- this.userdefinedMessage = this.sendmodelids[0].f_user_defined
499
- this.sendtype = this.sendmodelids[0].f_send_type
500
- this.sendmodelids = []
501
- this.msg = this.userdefinedMessage
502
- this.infoshow = false
503
- this.allshow = true
504
- }
505
- }
506
- },
507
- search (args) {
508
- console.log('args1:', args)
509
- args.condition = `${args.condition} and f_user_state = '正常'`
510
- args.condition = `${args.condition} and f_orgid = '${Vue.$login.f.orgid}'`
511
- console.log('args.model', args.model)
512
- this.model.search(args.condition, args.model)
513
- if (this.isFirst) {
514
- this.isFirst = false
515
- } else {
516
- this.$dispatch('allchange3')
517
- this.alllist = true
518
- }
519
- },
520
- addsendmodel () {
521
- this.definedShow = true
522
- },
523
- allclose () {
524
- this.allshow = false
525
- },
526
- close () {
527
- this.definedShow = false
528
- },
529
- isAll (page) {
530
- if (this.pages.includes(page)) { // 已添加,取消动作
531
- // 从ids中删除本页所有数据的ids
532
- this.addOrRemove(false)
533
- this.pages = this.pages.filter((item) => {
534
- return item !== page
535
- })
536
- } else { // 未添加
537
- this.pages.push(page) // 添加id,添加动作
538
- this.addOrRemove(true)
539
- }
540
- },
541
- addOrRemove (is) {
542
- let that = this
543
- if (is) { // 添加本页所有数据到ids中
544
- this.model.rows.forEach((row) => {
545
- if (!that.ids.includes(row.f_userinfo_code)) {
546
- that.ids.push(row.f_userinfo_code)
547
- }
548
- })
549
- } else { // 从ids中取消所有的数据
550
- this.model.rows.forEach((row) => {
551
- that.ids = that.ids.filter((item) => {
552
- return item !== row.f_userinfo_code
553
- })
554
- })
555
- }
556
- }
557
- },
558
- events: {
559
- 'definedMessage' (val) {
560
- this.definedShow = false
561
- }
562
- }
563
- }
564
- </script>
565
- <style>
566
- .form-group{
567
- height: 30px;
568
- }
569
- </style>
1
+ <template>
2
+ <criteria-paged :model="model" v-ref:paged>
3
+ <p class="bg-info text-center" style="padding: 8px;font-size: 20px">用户信息</p>
4
+ <criteria partial='criteria' @condition-changed='$parent.search' v-ref:cri>
5
+ <div class="form-horizontal select-overspread container-fluid auto" novalidate partial>
6
+ <div class="row">
7
+ <div class="col-sm-3 form-group">
8
+ <label for="startDate" class="font_normal_body">安装日期</label>
9
+ <datepicker id="startDate" placeholder="开始日期" style="width:60%"
10
+ v-model="model.startDate"
11
+ :value.sync="model.startDate"
12
+ condition="f_install_date >= '{}'"
13
+ :format="'yyyy-MM-dd HH:mm:ss'"
14
+ :show-reset-button="true"
15
+ >
16
+ </datepicker>
17
+ </div>
18
+ <div class="col-sm-3 form-group">
19
+ <label for="endDate" class="font_normal_body">&nbsp;&nbsp;&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label>
20
+ <datepicker id="endDate" placeholder="结束日期" style="width:60%"
21
+ v-model="model.endDate"
22
+ :value.sync="model.endDate"
23
+ condition="f_install_date <= '{}'"
24
+ :format="'yyyy-MM-dd HH:mm:ss'"
25
+ :show-reset-button="true"
26
+ >
27
+ </datepicker>
28
+ </div>
29
+ <div class="span" style="float:right;">
30
+ <button class="button_search button_spacing width-60" @click="search()" v-el:cx>查询</button>
31
+ <button class="button_clear button_spacing width-60" @click="$parent.$parent.getcreate()" v-if="$parent.$parent.userdefinedMessage">生成短信</button>
32
+ <button class="button_search button_spacing width-60" @click="$parent.$parent.getsendmodel()">选择模板</button>
33
+ <button class="button_clear button_spacing width-60" @click="$parent.$parent.addsendmodel()">新增模板</button>
34
+ <button v-show="$parent.$parent.rollback" class="button_clear button_spacing width-60" @click="$parent.$parent.retrun()" v-el:cba>返回</button>
35
+ <!-- <export-excel :data="{orderitem: 'f_userinfo_id',condition: condition}" sqlurl="rs/excel/report/getArrearsInfo/欠费记录导出Excel模板"></export-excel> -->
36
+ <div
37
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
38
+ @click="$parent.$parent.hidden()" class="button_spacing" style="float: right">
39
+ </div>
40
+ </div>
41
+ </div>
42
+ <div class="row" v-show="$parent.$parent.criteriaShow">
43
+ <div class="form-group col-sm-3">
44
+ <label class="font_normal_body">用户状态</label>
45
+ <v-select id="f_whether"
46
+ v-model="$parent.$parent.f_whether"
47
+ placeholder='用户状态'
48
+ :value.sync="$parent.$parent.f_whether"
49
+ :options='$parent.$parent.whether'
50
+ style="width: 60%"
51
+ close-on-select >
52
+ </v-select>
53
+ </div>
54
+ <div class="form-group col-sm-3">
55
+ <label class="font_normal_body">用户类型</label>
56
+ <v-select
57
+ v-model="model.f_user_type"
58
+ placeholder='用户类型'
59
+ :value.sync="model.f_user_type"
60
+ :options='$parent.$parent.getusertype'
61
+ condition="f_user_type = '{}'"
62
+ style="width: 60%"
63
+ close-on-select >
64
+ </v-select>
65
+ </div>
66
+ <div class="form-group col-sm-3">
67
+ <label class="font_normal_body">用气性质</label>
68
+ <v-select
69
+ v-model="model.f_gasproperties"
70
+ placeholder='用气性质'
71
+ :value.sync="model.f_gasproperties"
72
+ :options='$parent.$parent.gasproperties'
73
+ condition="f_gasproperties = '{}'"
74
+ style="width: 60%"
75
+ close-on-select >
76
+ </v-select>
77
+ </div>
78
+ <div class="form-group col-sm-3">
79
+ <label class="font_normal_body">用户编号</label>
80
+ <input type="text" class="form-control " v-model="model.f_userinfo_code" placeholder='用户编号' v-filter v-figure_filter
81
+ condition="f_userinfo_code = '{}'" v-next-el='yhxm' style="width: 60%"
82
+ :size="model.f_userinfo_code ? model.f_userinfo_code.length : 4">
83
+ </div>
84
+ <div class="form-group col-sm-3">
85
+ <label class="font_normal_body">用户姓名</label>
86
+ <input type="text" class="form-control" v-model="model.f_user_name" placeholder='用户姓名' v-filter v-cn_filter
87
+ condition="f_user_name like '%{}%'" v-next-el='resentialarea' v-el:yhxm style="width: 60%"
88
+ :size="model.f_user_name ? model.f_user_name.length : 4">
89
+ </div>
90
+ <div class="form-group col-sm-3">
91
+ <label class="font_normal_body">用户电话</label>
92
+ <input type="text" class="form-control" v-model="model.f_user_phone" placeholder='用户电话' v-filter v-cn_filter
93
+ condition="f_user_phone = '{}'" v-next-el='resentialarea' v-el:yhxm style="width: 60%"
94
+ :size="model.f_user_phone ? model.f_user_phone.length : 4">
95
+ </div>
96
+ <div class="form-group col-sm-3">
97
+ <label class="font_normal_body">选择区域</label>
98
+ <v-select
99
+ v-model="model.f_pcd"
100
+ placeholder='选择区域'
101
+ :value.sync="model.f_pcd"
102
+ :options='$parent.$parent.pcdslist'
103
+ condition="f_pcd = '{}'"
104
+ style="width: 60%"
105
+ close-on-select >
106
+ </v-select>
107
+ </div>
108
+ <div class="form-group col-sm-3">
109
+ <label class="font_normal_body">选择小区</label>
110
+ <v-select
111
+ v-model="model.f_residential_area"
112
+ placeholder='选择小区'
113
+ :value.sync="model.f_residential_area"
114
+ :options='$parent.$parent.residentialArea'
115
+ condition="f_residential_area = '{}'"
116
+ style="width: 60%"
117
+ close-on-select >
118
+ </v-select>
119
+ </div>
120
+ <div class="form-group col-sm-3">
121
+ <label class="font_normal_body">用户地址</label>
122
+ <input type="text" class="form-control" v-model="model.f_address" placeholder='用户地址' v-filter
123
+ condition="f_address like '%{}%'" v-next-el='cx' v-el:resentialarea style="width: 60%"
124
+ :size="model.f_address ? model.f_address.length * 2 : 4">
125
+ </div>
126
+ <div class="form-group col-sm-3" >
127
+ <label class="font_normal_body">气表品牌</label>
128
+ <v-select :value.sync="model.gasbrand" v-model="model.gasbrand" style="width: 60%"
129
+ :options='$parent.$parent.meterbrands' placeholder='气表品牌' close-on-select
130
+ v-model='$parent.$parent.gasbrand'
131
+ condition="f_meter_brand = '{}'"
132
+ ></v-select>
133
+ </div>
134
+ <div class="form-group col-sm-3">
135
+ <label class="font_normal_body">用户余额</label>
136
+ <input type="number" class="form-control " v-model="model.f_balance" placeholder='用户余额' v-filter v-figure_filter
137
+ condition="f_balance > {}" style="width: 60%"
138
+ :size="model.f_balance ? model.f_balance.length : 4">
139
+ </div>
140
+ <div class="form-group col-sm-3">
141
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label>
142
+ <input type="number" class="form-control " v-model="model.f_balance_cur" placeholder='用户余额' v-filter v-figure_filter
143
+ condition="f_balance <= {}" style="width: 60%"
144
+ :size="model.f_balance_cur ? model.f_balance_cur.length : 4">
145
+ </div>
146
+ </div>
147
+ </div>
148
+ </criteria>
149
+
150
+ <data-grid :model="model" partial='list' class="table_sy" v-ref:grid>
151
+ <template partial='head'>
152
+ <tr>
153
+ <th>
154
+ <input type="checkbox" @click="$parent.$parent.$parent.isAll(model.pageIndex)">
155
+ </th>
156
+ <th>序号</th>
157
+ <th>用户编号</th>
158
+ <th>用户姓名</th>
159
+ <th>用户电话</th>
160
+ <!--<th><nobr>用户区域</nobr></th>-->
161
+ <th>用户地址</th>
162
+ <th>用户余额</th>
163
+ <th>累购气量</th>
164
+ <th>累购金额</th>
165
+ </tr>
166
+ </template>
167
+ <template partial='body'>
168
+ <td style="text-align:center">
169
+ <input type="checkbox" v-model="$parent.$parent.$parent.ids"
170
+ :value="row.f_userinfo_code">
171
+ </td>
172
+ <td>{{$index+1}}</td>
173
+ <td style="text-align:center">{{row.f_userinfo_code}}</td>
174
+ <td style="text-align:center">{{row.f_user_name}}</td>
175
+ <td style="text-align:center">{{row.f_user_phone}}</td>
176
+ <!--<td style="text-align:center"><nobr>{{row.f_area}}</nobr></td>-->
177
+ <td style="text-align:center">{{row.f_address}}</td>
178
+ <td style="text-align:center">{{row.f_balance}}</td>
179
+ <td style="text-align:center">{{row.f_total_gas}}</td>
180
+ <td style="text-align:center">{{row.f_total_fee}}</td>
181
+ </template>
182
+ </data-grid>
183
+ </criteria-paged>
184
+ <user-defined-message :show="definedShow" v-ref:printbill v-on:toggle="close"></user-defined-message>
185
+ <modal v-if="allshow" :show.sync="allshow" v-ref:modal backdrop="false">
186
+ <header slot="modal-header" class="modal-header">
187
+ <h4 class="modal-title">短信发送</h4>
188
+ </header>
189
+ <article slot="modal-body" class="modal-body">
190
+ <div class="form-group row" style="height:auto">
191
+ <label class="label-control">短信内容:</label>{{msg}}
192
+ </div>
193
+ <div class="form-group">
194
+ <label class="label-control">定时发送日期</label>
195
+ <datepicker placeholder="定时发送日期" :value.sync="sendtimeingdate" :disabled-days-of-Week="[]" :format="'yyyy-MM-dd HH:mm:ss'" :show-reset-button="reset"></datepicker>
196
+ </div>
197
+ <div class="form-group">
198
+ <label class="label-control">发送截至日期</label>
199
+ <datepicker placeholder="发送截至日期" :value.sync="alldownDate" :disabled-days-of-Week="[]" :format="'yyyy-MM-dd HH:mm:ss'" :show-reset-button="reset"></datepicker>
200
+ </div>
201
+ </article>
202
+
203
+ <footer slot="modal-footer" class="modal-footer">
204
+ <button v-show="allshow" type="button" class="btn btn-default width-60" @click='allclose'>取消</button>
205
+ <button v-show="allshow" type="button" class="btn btn-success width-60" @click='create()'>确认</button>
206
+ </footer>
207
+ </modal>
208
+ <modal :show.sync="infoshow" width="1100px" title="短信模板选择" v-ref:modal large backdrop="false">
209
+ <article slot="modal-body" class="modal-body">
210
+ <criteria-paged :model="model2" v-ref:paged2>
211
+ <data-grid :model="$parent.$parent.model2" v-ref:grid2 partial='list'>
212
+ <template partial='head'>
213
+ <tr>
214
+ <!--<th style="padding: 0;border: 0">
215
+ <input type="checkbox" id="f_operator" v-model="$parent.$parent.$parent.all[model.pageIndex-1]"
216
+ @change="$parent.$parent.$parent.select()" style="width: 22px;height: 22px"/>
217
+ </th>-->
218
+ <th><nobr>选择</nobr></th>
219
+ <th><nobr>短信类型</nobr></th>
220
+ <th><nobr>模板内容</nobr></th>
221
+ <th><nobr>模板状态</nobr></th>
222
+ <th><nobr><b>创建人</b></nobr></th>
223
+ <th><nobr>操作</nobr></th>
224
+ </tr>
225
+ </template>
226
+ <template partial='body'>
227
+ <td style="text-align: center;"><input type="checkbox" v-model="$parent.$parent.$parent.$parent.sendmodelids" :value="row"></td>
228
+ <td style="text-align: center;">{{row.f_send_type}}</td>
229
+ <td style="text-align: center;" title="{{row.f_user_defined}}" >{{row.f_user_defined}}</td>
230
+ <td style="text-align: center;">{{row.f_state }}</td>
231
+ <td style="text-align: center;"><b>{{row.f_operator}}</b></td>
232
+ <td style="text-align: center;"><nobr>
233
+ <a @click='$parent.$parent.$parent.$parent.edit(row)'>编辑</a>&nbsp;&nbsp;&nbsp;&nbsp;<a @click='$parent.$parent.$parent.$parent.senddelete(row)'>删除</a>
234
+ </nobr></td>
235
+ </template>
236
+ </data-grid>
237
+ </criteria-paged>
238
+ </article>
239
+ <footer slot="modal-footer" class="modal-footer">
240
+ <button type="button" class="btn btn-success width-60" @click='create1'>确定</button>
241
+ <button type="button" class="btn btn-default width-60" @click='infoclose'>关闭</button>
242
+ </footer>
243
+ </modal>
244
+ <modal :show.sync="allshow2" v-ref:modal backdrop="false">
245
+ <header slot="modal-header" class="modal-header">
246
+ <h4 class="modal-title">修正短信内容</h4>
247
+ </header>
248
+ <article slot="modal-body" class="modal-body">
249
+ <div class="form-group row" style="height:auto">
250
+ <label class="label-control">原短信内容:</label>{{msg_old}}
251
+ </div>
252
+ <div class="form-group">
253
+ <label class="label-control">修正为:</label>
254
+ <div class="row auto">
255
+ <textarea class="form-control col-sm-4" v-model="msg_new" rows="8" placeholder=""></textarea>
256
+ </div>
257
+ </div>
258
+ <div class="form-group" style="text-align: center;">
259
+ <h4><b>字数:<span style="color: #5cb85c">{{fontSizeNum}}</span></b></h4>
260
+ </div>
261
+ </article>
262
+ <footer slot="modal-footer" class="modal-footer">
263
+ <button v-show="allshow2" type="button" class="btn btn-default width-60" @click='closeEdit'>取消</button>
264
+ <button v-show="allshow2" type="button" class="btn btn-success width-60" @click='createEdit'>修正</button>
265
+ </footer>
266
+ </modal>
267
+ </template>
268
+
269
+ <script>
270
+ /**
271
+ *阶梯水价查询列表
272
+ */
273
+ import {HttpResetClass, PagedList} from 'vue-client'
274
+ import Vue from 'vue'
275
+
276
+ let readySomething = async function (self) {
277
+ await self.$LoadParams.loadParam(self.f_filialeid)
278
+ self.loadMeterBooks()
279
+ //self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString() + ' 00:00:00'
280
+ self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString() + ' 23:59:59'
281
+ }
282
+
283
+ export default {
284
+ data () {
285
+ return {
286
+ model: new PagedList('rs/sql/smsUserInfo', 50, {startDate: 'this.model.startDate', endDate: 'this.model.endDate'}),
287
+ model2: new PagedList('rs/sql/getSendModel', 30, {orderitem: " \'id desc\'"}),
288
+ // 短信模板选择
289
+ infoshow: false,
290
+ // 下选后其他查询条件
291
+ criteriaShow: false,
292
+ // 短信发送
293
+ definedShow: false,
294
+ allshow: false,
295
+ allshow2: false,
296
+ alldownDate: '',
297
+ sendtimeingdate: '', // 定时发送日期
298
+ startDate: '',
299
+ endDate: '',
300
+ sendtype: '',
301
+ fontSizeNum: 0,
302
+ userdefinedMessage: '',
303
+ meterbrands: [{label: '全部', value: ''}],
304
+ msg: '',
305
+ ids: [],
306
+ pages: [],
307
+ msg_old: '',
308
+ msg_new: '',
309
+ rowEdit: '',
310
+ sendmodelids: [],
311
+ // 小区
312
+ residentialArea: [],
313
+ whether: [{ label: '欠费', value: '欠费' },
314
+ { label: '全部', value: '全部' }],
315
+ getusertype: [{ label: '全部', value: '' },
316
+
317
+ { label: '民用', value: '民用' },
318
+ { label: '非民用', value: '非民用' }],
319
+ gasproperties: this.$appdata.getParam('用气性质') ? [{
320
+ label: '全部',
321
+ value: ''
322
+ }, ...this.$appdata.getParam('用气性质')] : [],
323
+ f_whether: '全部',
324
+ pcdslist: [],
325
+ isFirst: true
326
+ }
327
+ },
328
+ props: {
329
+ orderitem: {
330
+ type: String,
331
+ default: 'f_userinfo_id'
332
+ },
333
+ tablename: {
334
+ type: String,
335
+ default: 't_userinfo'
336
+ },
337
+ items: {
338
+ type: String,
339
+ default: '*'
340
+ },
341
+ rollback: false
342
+ },
343
+ ready () {
344
+ this.getaddress()
345
+ readySomething(this)
346
+ this.$refs.paged.$refs.cri.search()
347
+ },
348
+ watch: {
349
+ 'f_whether' (val) {
350
+ if (val[0] === '欠费') {
351
+ this.$dispatch('all', '欠费')
352
+ this.f_whether = '全部'
353
+ }
354
+ },
355
+ 'msg_new' (val) {
356
+ this.fontSizeNum = val.length
357
+ }
358
+ },
359
+ methods: {
360
+ loadMeterBooks () {
361
+ let meterbrand = this.$GetSaleParam.getGasbrand()
362
+ for (let row of meterbrand) {
363
+ this.meterbrands.push({label: row.label, value: row.value.f_meter_brand})
364
+ }
365
+ },
366
+ retrun () {
367
+ this.alllist = false
368
+ this.$dispatch('allchange4')
369
+ },
370
+ async getaddress () {
371
+ console.log('开始获取小区')
372
+ let HttpReset = new HttpResetClass()
373
+ var data = await HttpReset.load('POST', 'rs/sql/address_getarealist', {
374
+ data: {
375
+ condition: `1=1 and s.f_filialeid = '${this.$login.f.orgid}'`
376
+ }
377
+ }, {resolveMsg: null, rejectMsg: '获取小区失败!'})
378
+ console.log('小区', data.data)
379
+ let house = []
380
+ for (let row of data.data) {
381
+ console.log('开始保存小区')
382
+ house.push({label: row.f_residential_area, value: row.f_residential_area})
383
+ }
384
+ this.residentialArea = house
385
+ this.pcdslist = []
386
+ let req = await HttpReset.load('POST', 'rs/sql/address_singleTableOrderBy?pageNo=1&pageSize=9999999', {
387
+ data: {
388
+ items: '*',
389
+ tablename: 't_pcd',
390
+ orderitem: 'id',
391
+ condition: `1=1 and f_filialeid = '${this.$login.f.orgid}'`
392
+ }
393
+ }, {resolveMsg: null, rejectMsg: '获取地址失败!'})
394
+ let redata = []
395
+ req.data.forEach((row, n) => {
396
+ redata[n] = {
397
+ label: row.f_pcd,
398
+ value: row.id,
399
+ data: row,
400
+ id: row.id
401
+ }
402
+ })
403
+ this.pcdslist = redata
404
+ },
405
+ hidden () {
406
+ this.criteriaShow = !this.criteriaShow
407
+ },
408
+ closeEdit () {
409
+ this.allshow2 = false
410
+ },
411
+ senddelete (row) {
412
+ let setpos = {
413
+ id: row.id,
414
+ f_state: '无效'
415
+ }
416
+ this.$resetpost('rs/entity/t_send_model', setpos, {resolveMsg: '模板删除成功', rejectMsg: '模板删除失败'})
417
+ let condition = "f_state=\'有效\'"
418
+ this.model2.search(condition)
419
+ },
420
+ createEdit () {
421
+ this.allshow2 = false
422
+ let setpos = {
423
+ id: this.rowEdit.id,
424
+ f_user_defined: this.msg_new.replace(/'/g,`''`)
425
+ }
426
+ this.$resetpost('rs/entity/t_send_model', setpos, {resolveMsg: '模板修正成功', rejectMsg: '模板修正失败'})
427
+ this.rowEdit = ''
428
+ this.msg_new = ''
429
+ this.msg_old = ''
430
+ this.sendmodelids = []
431
+ let condition = "f_state=\'有效\' and f_orgid = \'" + Vue.$login.f.orgid + "\'"
432
+ this.model2.search(condition)
433
+ },
434
+ edit (row) {
435
+ this.allshow2 = true
436
+ this.rowEdit = row
437
+ this.msg_old = row.f_user_defined
438
+ this.msg_new = row.f_user_defined
439
+ },
440
+ getsendmodel () {
441
+ let condition = "f_state=\'有效\'"
442
+ let res = this.model2.search(condition)
443
+ console.log('---------------------' + res)
444
+ console.log('this.model2:', this.model2)
445
+ this.infoshow = true
446
+ },
447
+ infoclose () {
448
+ this.infoshow = false
449
+ },
450
+ getcreate () {
451
+ this.allshow = true
452
+ },
453
+ create () {
454
+ if(this.sendtimeingdate && this.sendtimeingdate != ''){
455
+ if(new Date(this.sendtimeingdate).getTime() <= new Date().getTime()){
456
+ this.$showAlert('定时发送时间不能小于当前时间','warning',2000)
457
+ return
458
+ }
459
+ }
460
+ if(this.alldownDate && this.alldownDate != ''){
461
+ if(new Date(this.alldownDate).getTime() <= new Date().getTime()){
462
+ this.$showAlert('发送截至日期不能小于当前时间','warning',2000)
463
+ return
464
+ }
465
+ }
466
+
467
+ this.allshow = false
468
+ this.startDate = this.$refs.paged.$refs.cri.model.startDate
469
+ this.endDate = this.$refs.paged.$refs.cri.model.endDate
470
+ this.model.condition = this.model.condition + " and f_orgid = \'" + Vue.$login.f.orgid + "\'"
471
+ if (this.ids.length !== 0) {
472
+ console.log('ids', this.ids)
473
+ let tems = ''
474
+ for (let i = 0; i < this.ids.length; i++) {
475
+ tems += `'${this.ids[i]}',`
476
+ }
477
+ console.log('tems', tems.substr(0, tems.length - 1), tems)
478
+ this.model.condition = this.model.condition + `and f_userinfo_code in (${tems.substr(0, tems.length - 1)})`
479
+ }
480
+ if (this.userdefinedMessage === '' || this.userdefinedMessage === null || this.alldownDate === '' || this.alldownDate === null) {
481
+ this.$showAlert('短信模板及发送截至时间都不能为空!', 'danger', 3000)
482
+ } else {
483
+ this.$dispatch('create', this.model.condition, this.userdefinedMessage, this.alldownDate, this.sendtype, this.startDate, this.endDate, this.sendtimeingdate)
484
+ this.sendmodelid = []
485
+ this.userdefinedMessage = ''
486
+ this.alldownDate = ''
487
+ this.sendtype = ''
488
+ }
489
+ this.$refs.paged.$refs.cri.search()
490
+ },
491
+ create1 () {
492
+ console.log('kaishi ===', this.sendmodelids)
493
+ if (this.alldownDate === '' || this.alldownDate === null) {
494
+ if (this.sendmodelids.length !== 1) {
495
+ this.$showAlert('短信模板未选择或选择多个!', 'danger', 3000)
496
+ } else {
497
+ console.log('kaishi ===', this.sendmodelids[0])
498
+ this.userdefinedMessage = this.sendmodelids[0].f_user_defined
499
+ this.sendtype = this.sendmodelids[0].f_send_type
500
+ this.sendmodelids = []
501
+ this.msg = this.userdefinedMessage
502
+ this.infoshow = false
503
+ this.allshow = true
504
+ }
505
+ }
506
+ },
507
+ search (args) {
508
+ console.log('args1:', args)
509
+ args.condition = `${args.condition} and f_user_state = '正常'`
510
+ args.condition = `${args.condition} and f_orgid = '${Vue.$login.f.orgid}'`
511
+ console.log('args.model', args.model)
512
+ this.model.search(args.condition, args.model)
513
+ if (this.isFirst) {
514
+ this.isFirst = false
515
+ } else {
516
+ this.$dispatch('allchange3')
517
+ this.alllist = true
518
+ }
519
+ },
520
+ addsendmodel () {
521
+ this.definedShow = true
522
+ },
523
+ allclose () {
524
+ this.allshow = false
525
+ },
526
+ close () {
527
+ this.definedShow = false
528
+ },
529
+ isAll (page) {
530
+ if (this.pages.includes(page)) { // 已添加,取消动作
531
+ // 从ids中删除本页所有数据的ids
532
+ this.addOrRemove(false)
533
+ this.pages = this.pages.filter((item) => {
534
+ return item !== page
535
+ })
536
+ } else { // 未添加
537
+ this.pages.push(page) // 添加id,添加动作
538
+ this.addOrRemove(true)
539
+ }
540
+ },
541
+ addOrRemove (is) {
542
+ let that = this
543
+ if (is) { // 添加本页所有数据到ids中
544
+ this.model.rows.forEach((row) => {
545
+ if (!that.ids.includes(row.f_userinfo_code)) {
546
+ that.ids.push(row.f_userinfo_code)
547
+ }
548
+ })
549
+ } else { // 从ids中取消所有的数据
550
+ this.model.rows.forEach((row) => {
551
+ that.ids = that.ids.filter((item) => {
552
+ return item !== row.f_userinfo_code
553
+ })
554
+ })
555
+ }
556
+ }
557
+ },
558
+ events: {
559
+ 'definedMessage' (val) {
560
+ this.definedShow = false
561
+ }
562
+ }
563
+ }
564
+ </script>
565
+ <style>
566
+ .form-group{
567
+ height: 30px;
568
+ }
569
+ </style>