apply-clients 3.3.36 → 3.3.37

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 (331) hide show
  1. package/build/css-loaders.js +34 -0
  2. package/build/dev-android.js +101 -0
  3. package/build/dev-client.js +8 -0
  4. package/build/dev-server-app.js +76 -0
  5. package/build/dev-server.js +130 -0
  6. package/build/example-server.js +80 -0
  7. package/build/release.sh +28 -0
  8. package/build/utils.js +80 -0
  9. package/build/webpack.base.conf.js +84 -0
  10. package/build/webpack.baseandroid.conf.js +84 -0
  11. package/build/webpack.dev.conf.js +39 -0
  12. package/build/webpack.devandroid.conf.js +34 -0
  13. package/build/webpack.example.conf.js +49 -0
  14. package/build/webpack.prod.conf.js +60 -0
  15. package/build/webpack.prodandroid.conf.js +60 -0
  16. package/build/webpack.test.conf.js +31 -0
  17. package/index.html +33 -33
  18. package/package.json +1 -1
  19. package/src/AndroidApp.vue +30 -30
  20. package/src/android.js +21 -21
  21. package/src/apply.js +1 -8
  22. package/src/applyAndroid.js +1 -8
  23. package/src/components/android/AppOnetomany.vue +305 -305
  24. package/src/components/android/AppServiceView.vue +570 -570
  25. package/src/components/android/AppTakePic.vue +143 -143
  26. package/src/components/android/Function/AppFunctionServiceControl.vue +344 -344
  27. package/src/components/android/Function/AppInstallFunction.vue +1 -1
  28. package/src/components/android/Process/AppExplorationUser.vue +1 -1
  29. package/src/components/android/Process/AppServiceControl.vue +756 -756
  30. package/src/components/android/Process/Processes/AppChargeManagement.vue +468 -468
  31. package/src/components/android/Process/Processes/AppDevicesManagement.vue +508 -508
  32. package/src/components/android/Process/Processes/AppInstallationDetails.vue +471 -471
  33. package/src/components/android/Process/Processes/AppSupplementalAgreement.vue +297 -297
  34. package/src/components/android/Supervisory/AppProcessSupervisory.vue +1 -1
  35. package/src/components/android/Supervisory/AppSupervisoryCart.vue +115 -115
  36. package/src/components/product/ApplyCharge/ApplyChargeList.vue +59 -13
  37. package/src/components/product/ApplyCharge/ApplyChargeSearch.vue +30 -30
  38. package/src/components/product/Function/InstallFunction.vue +10 -0
  39. package/src/components/product/Function/InstallInfoSelect.vue +4 -0
  40. package/src/components/product/Function/Service/FunctionServiceControl.vue +4 -4
  41. package/src/components/product/Install/InstallProject.vue +194 -194
  42. package/src/components/product/Material/MaterialDetailed.vue +224 -224
  43. package/src/components/product/OldApply/Handle/HandleApply.vue +3 -0
  44. package/src/components/product/OldApply/Monitor/MonitorApply.vue +3 -0
  45. package/src/components/product/OldApply/OldApply.vue +2 -2
  46. package/src/components/product/OldApply/OldApplyMessage.vue +411 -411
  47. package/src/components/product/Onetomany.vue +381 -381
  48. package/src/components/product/Order/OrderApply.vue +47 -47
  49. package/src/components/product/Order/OrderApplyList.vue +263 -263
  50. package/src/components/product/Order/OrderMessage.vue +237 -237
  51. package/src/components/product/Process/ExplorationSelect.vue +4 -0
  52. package/src/components/product/Process/ExplorationUser.vue +10 -0
  53. package/src/components/product/Process/Processes/InstallationDetails.vue +578 -578
  54. package/src/components/product/Process/Processes/Print/printBuildOrder.vue +8 -29
  55. package/src/components/product/Process/Processes/Print/printCharge.vue +142 -142
  56. package/src/components/product/Process/Processes/Print/printRefund.vue +1 -1
  57. package/src/components/product/Process/Processes/addressAndUserinfoManagement.vue +186 -186
  58. package/src/components/product/Process/Processes/chargeManagement.vue +1 -1
  59. package/src/components/product/Process/Processes/devicesManagement.vue +478 -478
  60. package/src/components/product/Process/Processes/selectApply.vue +250 -250
  61. package/src/components/product/Process/Processes/selectUserinfo.vue +182 -182
  62. package/src/components/product/Process/Processes/supplementalAgreement.vue +298 -298
  63. package/src/components/product/Process/Service/ServiceControl.vue +1 -1
  64. package/src/components/product/Process/ShowBackReason.vue +33 -33
  65. package/src/components/product/ServiceView.vue +637 -637
  66. package/src/components/product/Stop/StopApply.vue +101 -101
  67. package/src/components/product/Stop/StopApplyList.vue +271 -271
  68. package/src/components/product/Supervisory/Service/SupervisoryServiceControl.vue +804 -804
  69. package/src/components/product/Supervisory/SupervisoryControl.vue +10 -0
  70. package/src/components/product/Supervisory/SupervisoryList.vue +4 -0
  71. package/src/components/product/Supervisory/SupervisoryhCart.vue +124 -124
  72. package/src/components/product/VueUtils/ApplyUpload.vue +262 -262
  73. package/src/components/product/VueUtils/GaoPaiYi/HighMeter.vue +1090 -1090
  74. package/src/main.js +23 -23
  75. package/dist-android/index.html +0 -3
  76. package/dist-android/static/.gitkeep +0 -0
  77. package/dist-android/static/0.js +0 -2
  78. package/dist-android/static/0.js.map +0 -1
  79. package/dist-android/static/1.js +0 -2
  80. package/dist-android/static/1.js.map +0 -1
  81. package/dist-android/static/10.js +0 -2
  82. package/dist-android/static/10.js.map +0 -1
  83. package/dist-android/static/100.js +0 -2
  84. package/dist-android/static/100.js.map +0 -1
  85. package/dist-android/static/11.js +0 -2
  86. package/dist-android/static/11.js.map +0 -1
  87. package/dist-android/static/12.js +0 -2
  88. package/dist-android/static/12.js.map +0 -1
  89. package/dist-android/static/13.js +0 -2
  90. package/dist-android/static/13.js.map +0 -1
  91. package/dist-android/static/14.js +0 -2
  92. package/dist-android/static/14.js.map +0 -1
  93. package/dist-android/static/15.js +0 -2
  94. package/dist-android/static/15.js.map +0 -1
  95. package/dist-android/static/16.js +0 -2
  96. package/dist-android/static/16.js.map +0 -1
  97. package/dist-android/static/17.js +0 -2
  98. package/dist-android/static/17.js.map +0 -1
  99. package/dist-android/static/18.js +0 -2
  100. package/dist-android/static/18.js.map +0 -1
  101. package/dist-android/static/19.js +0 -2
  102. package/dist-android/static/19.js.map +0 -1
  103. package/dist-android/static/2.js +0 -2
  104. package/dist-android/static/2.js.map +0 -1
  105. package/dist-android/static/20.js +0 -2
  106. package/dist-android/static/20.js.map +0 -1
  107. package/dist-android/static/21.js +0 -2
  108. package/dist-android/static/21.js.map +0 -1
  109. package/dist-android/static/22.js +0 -2
  110. package/dist-android/static/22.js.map +0 -1
  111. package/dist-android/static/23.js +0 -2
  112. package/dist-android/static/23.js.map +0 -1
  113. package/dist-android/static/24.js +0 -2
  114. package/dist-android/static/24.js.map +0 -1
  115. package/dist-android/static/25.js +0 -2
  116. package/dist-android/static/25.js.map +0 -1
  117. package/dist-android/static/26.js +0 -2
  118. package/dist-android/static/26.js.map +0 -1
  119. package/dist-android/static/27.js +0 -2
  120. package/dist-android/static/27.js.map +0 -1
  121. package/dist-android/static/28.js +0 -2
  122. package/dist-android/static/28.js.map +0 -1
  123. package/dist-android/static/29.js +0 -2
  124. package/dist-android/static/29.js.map +0 -1
  125. package/dist-android/static/3.js +0 -2
  126. package/dist-android/static/3.js.map +0 -1
  127. package/dist-android/static/30.js +0 -2
  128. package/dist-android/static/30.js.map +0 -1
  129. package/dist-android/static/31.js +0 -2
  130. package/dist-android/static/31.js.map +0 -1
  131. package/dist-android/static/32.js +0 -2
  132. package/dist-android/static/32.js.map +0 -1
  133. package/dist-android/static/33.js +0 -2
  134. package/dist-android/static/33.js.map +0 -1
  135. package/dist-android/static/34.js +0 -2
  136. package/dist-android/static/34.js.map +0 -1
  137. package/dist-android/static/35.js +0 -2
  138. package/dist-android/static/35.js.map +0 -1
  139. package/dist-android/static/36.js +0 -2
  140. package/dist-android/static/36.js.map +0 -1
  141. package/dist-android/static/37.js +0 -2
  142. package/dist-android/static/37.js.map +0 -1
  143. package/dist-android/static/38.js +0 -2
  144. package/dist-android/static/38.js.map +0 -1
  145. package/dist-android/static/39.js +0 -2
  146. package/dist-android/static/39.js.map +0 -1
  147. package/dist-android/static/4.js +0 -2
  148. package/dist-android/static/4.js.map +0 -1
  149. package/dist-android/static/40.js +0 -2
  150. package/dist-android/static/40.js.map +0 -1
  151. package/dist-android/static/41.js +0 -2
  152. package/dist-android/static/41.js.map +0 -1
  153. package/dist-android/static/42.js +0 -2
  154. package/dist-android/static/42.js.map +0 -1
  155. package/dist-android/static/43.js +0 -2
  156. package/dist-android/static/43.js.map +0 -1
  157. package/dist-android/static/44.js +0 -2
  158. package/dist-android/static/44.js.map +0 -1
  159. package/dist-android/static/45.js +0 -2
  160. package/dist-android/static/45.js.map +0 -1
  161. package/dist-android/static/46.js +0 -2
  162. package/dist-android/static/46.js.map +0 -1
  163. package/dist-android/static/47.js +0 -2
  164. package/dist-android/static/47.js.map +0 -1
  165. package/dist-android/static/48.js +0 -2
  166. package/dist-android/static/48.js.map +0 -1
  167. package/dist-android/static/49.js +0 -2
  168. package/dist-android/static/49.js.map +0 -1
  169. package/dist-android/static/5.js +0 -2
  170. package/dist-android/static/5.js.map +0 -1
  171. package/dist-android/static/50.js +0 -2
  172. package/dist-android/static/50.js.map +0 -1
  173. package/dist-android/static/51.js +0 -2
  174. package/dist-android/static/51.js.map +0 -1
  175. package/dist-android/static/52.js +0 -2
  176. package/dist-android/static/52.js.map +0 -1
  177. package/dist-android/static/53.js +0 -2
  178. package/dist-android/static/53.js.map +0 -1
  179. package/dist-android/static/54.js +0 -2
  180. package/dist-android/static/54.js.map +0 -1
  181. package/dist-android/static/55.js +0 -2
  182. package/dist-android/static/55.js.map +0 -1
  183. package/dist-android/static/56.js +0 -2
  184. package/dist-android/static/56.js.map +0 -1
  185. package/dist-android/static/57.js +0 -2
  186. package/dist-android/static/57.js.map +0 -1
  187. package/dist-android/static/58.js +0 -2
  188. package/dist-android/static/58.js.map +0 -1
  189. package/dist-android/static/59.js +0 -2
  190. package/dist-android/static/59.js.map +0 -1
  191. package/dist-android/static/6.js +0 -2
  192. package/dist-android/static/6.js.map +0 -1
  193. package/dist-android/static/60.js +0 -2
  194. package/dist-android/static/60.js.map +0 -1
  195. package/dist-android/static/61.js +0 -2
  196. package/dist-android/static/61.js.map +0 -1
  197. package/dist-android/static/62.js +0 -2
  198. package/dist-android/static/62.js.map +0 -1
  199. package/dist-android/static/63.js +0 -2
  200. package/dist-android/static/63.js.map +0 -1
  201. package/dist-android/static/64.js +0 -2
  202. package/dist-android/static/64.js.map +0 -1
  203. package/dist-android/static/65.js +0 -2
  204. package/dist-android/static/65.js.map +0 -1
  205. package/dist-android/static/66.js +0 -2
  206. package/dist-android/static/66.js.map +0 -1
  207. package/dist-android/static/67.js +0 -2
  208. package/dist-android/static/67.js.map +0 -1
  209. package/dist-android/static/68.js +0 -2
  210. package/dist-android/static/68.js.map +0 -1
  211. package/dist-android/static/69.js +0 -2
  212. package/dist-android/static/69.js.map +0 -1
  213. package/dist-android/static/7.js +0 -6
  214. package/dist-android/static/7.js.map +0 -1
  215. package/dist-android/static/70.js +0 -2
  216. package/dist-android/static/70.js.map +0 -1
  217. package/dist-android/static/71.js +0 -2
  218. package/dist-android/static/71.js.map +0 -1
  219. package/dist-android/static/72.js +0 -2
  220. package/dist-android/static/72.js.map +0 -1
  221. package/dist-android/static/73.js +0 -2
  222. package/dist-android/static/73.js.map +0 -1
  223. package/dist-android/static/74.js +0 -2
  224. package/dist-android/static/74.js.map +0 -1
  225. package/dist-android/static/75.js +0 -2
  226. package/dist-android/static/75.js.map +0 -1
  227. package/dist-android/static/76.js +0 -2
  228. package/dist-android/static/76.js.map +0 -1
  229. package/dist-android/static/77.js +0 -2
  230. package/dist-android/static/77.js.map +0 -1
  231. package/dist-android/static/78.js +0 -2
  232. package/dist-android/static/78.js.map +0 -1
  233. package/dist-android/static/79.js +0 -2
  234. package/dist-android/static/79.js.map +0 -1
  235. package/dist-android/static/8.js +0 -2
  236. package/dist-android/static/8.js.map +0 -1
  237. package/dist-android/static/80.js +0 -2
  238. package/dist-android/static/80.js.map +0 -1
  239. package/dist-android/static/81.js +0 -2
  240. package/dist-android/static/81.js.map +0 -1
  241. package/dist-android/static/82.js +0 -2
  242. package/dist-android/static/82.js.map +0 -1
  243. package/dist-android/static/83.js +0 -2
  244. package/dist-android/static/83.js.map +0 -1
  245. package/dist-android/static/84.js +0 -2
  246. package/dist-android/static/84.js.map +0 -1
  247. package/dist-android/static/85.js +0 -2
  248. package/dist-android/static/85.js.map +0 -1
  249. package/dist-android/static/86.js +0 -2
  250. package/dist-android/static/86.js.map +0 -1
  251. package/dist-android/static/87.js +0 -2
  252. package/dist-android/static/87.js.map +0 -1
  253. package/dist-android/static/88.js +0 -2
  254. package/dist-android/static/88.js.map +0 -1
  255. package/dist-android/static/89.js +0 -2
  256. package/dist-android/static/89.js.map +0 -1
  257. package/dist-android/static/9.js +0 -3
  258. package/dist-android/static/9.js.map +0 -1
  259. package/dist-android/static/90.js +0 -2
  260. package/dist-android/static/90.js.map +0 -1
  261. package/dist-android/static/91.js +0 -2
  262. package/dist-android/static/91.js.map +0 -1
  263. package/dist-android/static/92.js +0 -2
  264. package/dist-android/static/92.js.map +0 -1
  265. package/dist-android/static/93.js +0 -2
  266. package/dist-android/static/93.js.map +0 -1
  267. package/dist-android/static/94.js +0 -2
  268. package/dist-android/static/94.js.map +0 -1
  269. package/dist-android/static/95.js +0 -2
  270. package/dist-android/static/95.js.map +0 -1
  271. package/dist-android/static/96.js +0 -2
  272. package/dist-android/static/96.js.map +0 -1
  273. package/dist-android/static/97.js +0 -2
  274. package/dist-android/static/97.js.map +0 -1
  275. package/dist-android/static/98.js +0 -2
  276. package/dist-android/static/98.js.map +0 -1
  277. package/dist-android/static/99.js +0 -2
  278. package/dist-android/static/99.js.map +0 -1
  279. package/dist-android/static/app.css +0 -2
  280. package/dist-android/static/app.css.map +0 -1
  281. package/dist-android/static/app.js +0 -80
  282. package/dist-android/static/app.js.map +0 -1
  283. package/dist-android/static/batchleft.png +0 -0
  284. package/dist-android/static/batchright.png +0 -0
  285. package/dist-android/static/bluemainbg.jpg +0 -0
  286. package/dist-android/static/config.json +0 -7
  287. package/dist-android/static/denglu.png +0 -0
  288. package/dist-android/static/glyphicons-halflings-regular.eot +0 -0
  289. package/dist-android/static/glyphicons-halflings-regular.svg +0 -288
  290. package/dist-android/static/glyphicons-halflings-regular.ttf +0 -0
  291. package/dist-android/static/glyphicons-halflings-regular.woff +0 -0
  292. package/dist-android/static/glyphicons-halflings-regular.woff2 +0 -0
  293. package/dist-android/static/huangtengbiaozhi.png +0 -0
  294. package/dist-android/static/jingyin.jpg +0 -0
  295. package/dist-android/static/login_bg.jpg +0 -0
  296. package/dist-android/static/login_title.png +0 -0
  297. package/dist-android/static/login_title1.png +0 -0
  298. package/dist-android/static/loginbg.jpg +0 -0
  299. package/dist-android/static/loginlogo.png +0 -0
  300. package/dist-android/static/main_logo.png +0 -0
  301. package/dist-android/static/mainbg.jpg +0 -0
  302. package/dist-android/static/menulogo.png +0 -0
  303. package/dist-android/static/newmainbg.jpg +0 -0
  304. package/dist-android/static/psicon.png +0 -0
  305. package/dist-android/static/singleleft.png +0 -0
  306. package/dist-android/static/singleright.png +0 -0
  307. package/dist-android/static/treeopen.png +0 -0
  308. package/dist-android/static/treeout.png +0 -0
  309. package/dist-android/static/treeset.png +0 -0
  310. package/dist-android/static/usericon.png +0 -0
  311. package/dist-android/static/workflow_apply.json +0 -766
  312. package/dist-android/static/xinxi.png +0 -0
  313. package/dist-android/static//344/277/256/346/224/271/345/257/206/347/240/201.png +0 -0
  314. package/dist-android/static//345/256/211/346/243/200/345/257/274/350/210/252/347/253/226/345/261/2173.png +0 -0
  315. package/dist-android/static//345/257/274/345/207/272/346/225/260/346/215/256.png +0 -0
  316. package/dist-android/static//346/270/205/347/251/272/346/225/260/346/215/256.png +0 -0
  317. package/src/filiale/wuan/android.js +0 -0
  318. package/src/filiale/wuan/pc.js +0 -4
  319. package/src/filiale/yuchuan/android/AppServiceView.vue +0 -599
  320. package/src/filiale/yuchuan/android/Process/AppServiceControl.vue +0 -414
  321. package/src/filiale/yuchuan/android/Process/Processes/AppInstallationDetails.vue +0 -456
  322. package/src/filiale/yuchuan/android/Reserve/ApplyReserve.vue +0 -200
  323. package/src/filiale/yuchuan/android/SiteSurvey/TaskGraph.vue +0 -137
  324. package/src/filiale/yuchuan/android.js +0 -8
  325. package/src/filiale/yuchuan/pc/Order/OrderApply.vue +0 -517
  326. package/src/filiale/yuchuan/pc/Order/OrderApplyList.vue +0 -343
  327. package/src/filiale/yuchuan/pc/Process/ExplorationSelect.vue +0 -356
  328. package/src/filiale/yuchuan/pc/Process/ExplorationUser.vue +0 -131
  329. package/src/filiale/yuchuan/pc/Process/Processes/MapCom.vue +0 -51
  330. package/src/filiale/yuchuan/pc/Process/Service/ServiceControl.vue +0 -517
  331. package/src/filiale/yuchuan/pc.js +0 -13
@@ -1,756 +1,756 @@
1
- <template>
2
- <div class="col-sm-12 col-xs-12 p-10">
3
- <accordion one-at-a-time="true">
4
- <panel :header="selectdata.defname" :is-open="true" type="primary">
5
- <app-service-view v-ref:serviceview :data="show_data" v-if="showview"></app-service-view>
6
- </panel>
7
- <panel header="拍照" :is-open="false" type="primary" v-if="selectdata.f_process_id">
8
- <app-take-pic :blobid="selectdata.f_process_id" :defname="selectdata.defname" :isdelete="true" :istakepic="true" :istype="true"></app-take-pic>
9
- </panel>
10
- </accordion>
11
- </div>
12
- </template>
13
- <script>
14
- import Vue from 'vue'
15
- import {HttpResetClass} from 'vue-client'
16
- import {isEmpty} from "../../Util";
17
- // Date格式化
18
- Date.prototype.Format = function (fmt) {
19
- var o = {
20
- 'M+': this.getMonth() + 1, // 月份
21
- 'd+': this.getDate(), // 日
22
- 'H+': this.getHours(), // 小时
23
- 'm+': this.getMinutes(), // 分
24
- 's+': this.getSeconds(), // 秒
25
- 'q+': Math.floor((this.getMonth() + 3) / 3), // 季度
26
- 'S': this.getMilliseconds() // 毫秒
27
- }
28
- if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length))
29
- for (var k in o) {
30
- if (new RegExp('(' + k + ')').test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)))
31
- }
32
- return fmt
33
- }
34
- export default {
35
- title: '报建流程业务控制层',
36
- props: ['selectdata'],
37
- data () {
38
- return {
39
- json_datas: null,
40
- data: null,
41
- show_data: null,
42
- showview: false,
43
- config: {}
44
- }
45
- },
46
- ready () {
47
- this.refurbish()
48
- },
49
- methods: {
50
- async refurbish() {
51
- let data = {
52
- workname: this.selectdata.processname
53
- }
54
-
55
- let res = await this.$resetpost(
56
- `${this.$androidUtil.getProxyUrl()}/rs/logic/ApplyGetConfigs`,
57
- {data: data},
58
- {resolveMsg: null, rejectMsg: '配置数据获取失败!!!'}
59
- )
60
-
61
- this.json_datas = res.data
62
- // this.json_datas = {"start_activity":"报装申请","workflow_xmlfilename":"散户报建流程","activitys":[{"title":"报装申请","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":false,"disabled":false,"required":true},{"label":"报建类型","type":"select","field":"f_apply_type","readonly":true,"required":true,"disabled":true,"placeholder":"请选择","param":true,"options":[]},{"label":"用户名称","type":"input","field":"f_user_name","readonly":false,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":false,"disabled":false,"required":true},{"label":"证件类型","type":"select","field":"f_credentials","readonly":false,"required":true,"disabled":false,"placeholder":"请选择","param":true,"options":[{"label":"身份证","value":"身份证"},{"label":"营业执照","value":"营业执照"}]},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":false,"required":true,"disabled":false},{"label":"片区","type":"select","field":"f_slice_area","readonly":false,"required":true,"disabled":false,"ready":"getSliceArea","options":[]},{"label":"地址类型","type":"select","field":"f_address_type","readonly":false,"required":true,"disabled":false,"onchange":"addressTypeChange","options":[{"label":"民用城区","value":"民用城区"},{"label":"民用农村","value":"民用农村"},{"label":"特殊城区","value":"特殊城区"},{"label":"特殊农村","value":"特殊农村"}]},{"label":"区/县","type":"select","field":"f_pcd","hidden":true,"readonly":false,"required":true,"disabled":false,"ready":"getPcd","onchange":"pcdChange","options":[]},{"label":"街道","type":"select","field":"f_street","hidden":true,"readonly":false,"required":true,"disabled":false,"onchange":"streetChange","options":[]},{"label":"小区","type":"select","field":"f_residential_area","hidden":true,"readonly":false,"required":true,"disabled":false,"options":[]},{"label":"楼号(乡/镇)","type":"input","field":"f_building","hidden":true,"readonly":false,"required":false,"disabled":false},{"label":"单元(村)","type":"input","field":"f_unit","hidden":true,"readonly":false,"required":false,"disabled":false},{"label":"楼层(组)","type":"input","field":"f_floor","hidden":true,"readonly":false,"required":false,"disabled":false},{"label":"门牌号(号)","type":"input","field":"f_room","hidden":true,"readonly":false,"required":false,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":false,"required":true,"disabled":false},{"label":"预约地址","type":"textarea","field":"f_order_address","rows":1,"readonly":true,"required":false,"disabled":false},{"label":"备注","type":"textarea","field":"f_apply_remarks","rows":2,"readonly":false,"required":false,"disabled":false}],"components":[],"buttons":[{"button_name":"保存"},{"button_name":"勘察","disabled":true},{"button_name":"合同","disabled":true}],"readyEvent":"applyReadyEvent"},{"title":"勘察派工","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false}],"components":[],"buttons":[{"button_name":"保存"},{"button_name":"下发","source":"this.getParentByType($organization$).getChildByName($市场部报装$).getChildren()","button_fields":[{"label":"下发给","type":"select","field":"f_issue_man","placeholder":"请输入","readonly":false,"disabled":false,"required":true,"options":[]}],"disabled":true}]},{"title":"现场勘察","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false},{"label":"勘查结果","type":"textarea","field":"f_prospecting_result","rows":2,"readonly":false,"required":true,"disabled":false}],"components":[],"buttons":[{"button_name":"保存"},{"button_name":"提交","disabled":true}]},{"title":"合同签订","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false},{"label":"合同编号","type":"input","field":"f_contract_number","prefix":"","suffix":null,"placeholder":"请输入","readonly":true,"required":true,"default":"this.selectdata.f_apply_num","eval":true},{"label":"合同金额","type":"number","field":"f_contract_money","placeholder":"0.00","readonly":false,"required":true,"onchange":"contractMoneyChange"},{"label":"追加金额","type":"number","field":"f_add_contract_money","placeholder":"请输入","readonly":true,"required":true,"default":0},{"label":"应交金额","type":"number","field":"f_due_money","placeholder":"请输入","readonly":true,"required":true,"default":0},{"label":"合同签订时间","type":"datepicker","field":"f_contract_date","placeholder":"请选择","readonly":false,"required":true}],"components":[{"title":"补充协议","device":"pc","name":"supplemental-agreement"},{"title":"补充协议","device":"app","name":"app-supplemental-agreement"}],"buttons":[{"button_name":"保存"},{"button_name":"提交","disabled":true}]},{"title":"报装缴费","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":2,"readonly":true,"required":true,"disabled":false},{"label":"合同编号","type":"input","field":"f_contract_number","placeholder":"","readonly":true,"required":true},{"label":"合同金额","type":"number","field":"f_contract_money","placeholder":"请输入","readonly":true,"required":true},{"label":"追加款","type":"number","field":"f_add_contract_money","placeholder":"请输入","readonly":true,"required":false},{"label":"应交金额","type":"number","field":"f_due_money","placeholder":"请输入","readonly":true,"required":false},{"label":"累计缴费金额","type":"number","field":"f_cumulative_payment_money","placeholder":"请输入","readonly":true,"required":false},{"label":"未结总金额","type":"number","field":"f_surplus_money","placeholder":"请输入","readonly":true,"required":false},{"label":"付款比例","type":"input","field":"f_payment_ratio","placeholder":"请输入","readonly":true,"required":false},{"label":"累计退款金额","type":"number","field":"f_cumulative_retreat_money","placeholder":"请输入","readonly":true,"required":false,"default":0}],"components":[{"title":"缴费明细","device":"pc","name":"apply-charge-management"},{"title":"补充协议","device":"pc","name":"supplemental-agreement","mark":1},{"title":"缴费明细","device":"app","name":"app-charge-management"},{"title":"补充协议","device":"app","name":"app-supplemental-agreement","mark":1}],"buttons":[{"button_name":"保存"},{"before":"chargeBefore","button_name":"提交","disabled":true}]},{"title":"工程派工","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false}],"buttons":[{"button_name":"保存"},{"button_name":"下发","source":"this.getParentByType($organization$).getChildByName($工程部报装$).getChildren()","button_fields":[{"label":"下发给","type":"select","field":"f_issue_man","placeholder":"请输入","readonly":false,"disabled":false,"required":true,"options":[]}],"disabled":true}]},{"title":"工程施工","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":2,"readonly":true,"required":true,"disabled":false},{"label":"施工单位","type":"input","field":"f_construction_unit","readonly":false,"required":true,"disabled":false,"default":"this.$login.f.name","eval":true},{"label":"施工安装时间","type":"datepicker","field":"f_construction_date","readonly":false,"required":true,"disabled":false},{"bootstraped":"col-sm-12 col-xs-12","label":"安装项目","type":"checkbox","field":"f_install_project","readonly":false,"required":true,"disabled":false,"param":false,"options":[{"label":"入户","value":"入户"},{"label":"热水器","value":"热水器"},{"label":"壁挂炉","value":"壁挂炉"}]},{"label":"施工安装情况","type":"textarea","field":"f_install_situation","rows":2,"readonly":false,"required":true,"disabled":false},{"label":"施工备注","type":"textarea","field":"f_construction_remarks","rows":2,"readonly":false,"required":false,"disabled":false}],"onetomany":[{"title":"材料明细","hidden":false,"tables":["t_material_list"],"hiddenOperate":false,"modalSize":"large","addHidden":false,"addStyle":null,"deleteHidden":false,"deleteText":"删除","deleteMessage":null,"updateHidden":false,"updateText":"修改","fields":[{"label":"材料名称","type":"input","field":"f_material_name","placeholder":"请输入","readonly":false,"required":true},{"label":"材料型号","type":"input","field":"f_material_style","placeholder":"请输入","readonly":false,"required":true},{"label":"材料价格","type":"number","field":"f_material_price","placeholder":"请输入","readonly":false,"required":true},{"label":"材料单位","type":"input","field":"f_material_unit","placeholder":"请输入","readonly":false,"required":true},{"label":"材料数量","type":"number","field":"f_material_number","placeholder":"请输入","readonly":false,"required":true},{"label":"材料备注","type":"input","field":"f_material_remarks","placeholder":"请输入","readonly":false,"required":false}]}],"components":[{"title":"安装明细","device":"pc","name":"installation-details"},{"title":"安装明细","device":"app","name":"app-installation-details"},{"title":"用气设备","device":"pc","name":"apply-devices-management"},{"title":"用气设备","device":"app","name":"app-apply-devices-management"}],"buttons":[{"button_name":"保存"},{"before":"constructionBefore","button_name":"提交","disabled":true}]},{"title":"点火派单","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false},{"label":"施工单位","type":"input","field":"f_construction_unit","readonly":true,"required":true,"disabled":false},{"label":"施工安装时间","type":"datepicker","field":"f_construction_date","readonly":true,"required":true,"disabled":true},{"bootstraped":"col-sm-12 col-xs-12","label":"安装项目","type":"checkbox","field":"f_install_project","readonly":true,"required":true,"disabled":true,"param":false,"options":[{"label":"入户","value":"入户"},{"label":"热水器","value":"热水器"},{"label":"壁挂炉","value":"壁挂炉"}]},{"label":"施工安装情况","type":"textarea","field":"f_install_situation","rows":2,"readonly":true,"required":true,"disabled":false},{"label":"施工备注","type":"textarea","field":"f_construction_remarks","rows":2,"readonly":true,"required":false,"disabled":false}],"components":[],"buttons":[{"button_name":"保存"},{"button_name":"下发","source":"this.getParentByType($organization$).getChildByName($运营部报装$).getChildren()","button_fields":[{"label":"下发给","type":"select","field":"f_issue_man","placeholder":"请输入","readonly":false,"disabled":false,"required":true,"options":[]}],"disabled":true}]},{"title":"通气点火","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false},{"label":"施工单位","type":"input","field":"f_construction_unit","readonly":true,"required":true,"disabled":false},{"label":"施工安装时间","type":"datepicker","field":"f_construction_date","readonly":true,"required":true,"disabled":true},{"bootstraped":"col-sm-12 col-xs-12","label":"安装项目","type":"checkbox","field":"f_install_project","readonly":true,"required":true,"disabled":true,"param":true},{"label":"施工安装情况","type":"textarea","field":"f_install_situation","rows":2,"readonly":true,"required":true,"disabled":false},{"label":"施工备注","type":"textarea","field":"f_construction_remarks","rows":2,"readonly":true,"required":false,"disabled":false},{"label":"点火人","type":"input","field":"f_igniter_people","readonly":true,"required":true,"disabled":false,"default":"this.$login.f.name","eval":true},{"label":"通气时间","type":"datepicker","field":"f_ventilate_date","readonly":true,"required":true,"disabled":true,"default":true},{"label":"通气情况","type":"textarea","field":"f_gas_result","readonly":false,"required":true,"disabled":true,"rows":"7","default":"客户如认可以下内容请签字,如有不认可之处请说明情况\n1、气密性检测合格,已对各接口处进行查漏无泄漏\n2、燃气表运转正常并告知用户。灶具点火测试正常。使用金属波纹管\n3、已向用户讲解安全常识及注意事项。发放《用户使用手册》并张贴提示标签\n4、灶具品牌 油烟机品牌\n5、热水器品牌 壁挂炉品牌\n6、金属波纹品牌。"},{"label":"通气备注","type":"textarea","field":"f_gas_result","readonly":false,"required":false,"disabled":false},{"label":"是否购买保险","type":"select","field":"f_is_insure","placeholder":"请输入","readonly":false,"disabled":false,"required":true,"options":[{"label":"是","value":"是"},{"label":"否","value":"否"}],"default":"是","onchange":"isInsureChange"},{"label":"保费开始日期","type":"datepicker","field":"f_ins_start_date","readonly":false,"required":true,"disabled":false,"default":true,"format":"yyyy-MM-dd","hidden":true},{"label":"保费结束日期","type":"datepicker","field":"f_ins_expiration_date","readonly":false,"required":true,"disabled":false,"hidden":true},{"label":"险种","type":"select","field":"f_insurance_type","readonly":false,"disabled":false,"required":true,"options":[],"param":true,"hidden":true},{"label":"保费金额","type":"number","field":"f_insurance_money","placeholder":"请输入","readonly":false,"required":true,"hidden":true},{"label":"保险备注","type":"textarea","field":"f_ins_comments","rows":2,"readonly":false,"required":false,"disabled":false,"hidden":true}],"components":[{"title":"安装明细","device":"pc","name":"installation-details"},{"title":"安装明细","device":"app","name":"app-installation-details"},{"title":"用气设备","device":"pc","name":"apply-devices-management"},{"title":"用气设备","device":"app","name":"app-apply-devices-management"}],"buttons":[{"button_name":"保存"},{"button_name":"提交","disabled":true}],"readyEvent":"gasReadyEvent"},{"title":"完工","tables":["t_apply"],"fields":[{"label":"完工","type":"input","field":"f_successful","disabled":true,"value":"---success---"}]}]}
63
-
64
- let sum = 0
65
- let jsonData = {}
66
- if (!this.json_datas || !this.json_datas.activitys || this.json_datas.activitys.length === 0) {
67
- this.$showMessage("网络故障,请刷新页面")
68
- return
69
- }
70
- this.json_datas.activitys.forEach(item => {
71
- if (this.selectdata.defname === item.title) {
72
- jsonData = item // 拿到当前节点的json配置信息
73
- sum++ // 节点名一样的个数
74
- }
75
- return this.selectdata.defname === item.title // 拿到当前节点的json配置信息
76
- })
77
-
78
- if (sum === 0) {
79
- this.$showMessage(`没有在JSON配置文件中找到活动名为:(${this.selectdata.defname})的节点配置`)
80
- return
81
- }
82
- if (sum > 1) {
83
- this.$showMessage(`在JSON配置文件中找到活动名为:(${this.selectdata.defname})的节点配置:${sum}个`)
84
- return
85
- }
86
-
87
- this.selectdata = Object.assign({}, this.selectdata, jsonData)
88
-
89
- // fields 字段填充值
90
- for (const item of this.selectdata.fields) {
91
- if (!item.value) {
92
- item.value = null
93
- }
94
-
95
- if (!item.value && (item.default || item.default === 0) && item.type !== 'datepicker') {
96
- if (item.eval) {
97
- let user = Vue.user
98
- // 将PC用户信息 替换成 APP的
99
- item.value = eval(item.default.replace('this.$login.f', 'user'))
100
- } else {
101
- item.value = item.default
102
- }
103
- }
104
-
105
- if (this.selectdata[item.field]) {
106
- // 将json字符串格式化赋值给value
107
- if (String(this.selectdata[item.field]).startsWith("{")) {
108
- item.value = JSON.parse(this.selectdata[item.field])
109
- } else {
110
- item.value = this.selectdata[item.field]
111
- }
112
- }
113
- if (this.selectdata[item.field] === 0) {
114
- item.value = 0
115
- }
116
-
117
- // datepicker
118
- if (item.type === 'datepicker' && !item.value && item.default) {
119
- item.value = new Date().Format(`${item.format ? item.format : 'yyyy-MM-dd HH:mm:ss'}`)
120
- }
121
-
122
- // 如果配置类型为select,优先从参数列表获取options
123
- if (item.type === 'select' || item.type === 'checkbox') {
124
- if (item.param) {
125
- let temp = this.$appdata.getParam(item.label)
126
-
127
- if (temp && temp.length > 0) {
128
- item.options = temp
129
- }
130
-
131
- if (item.paramLabel) {
132
- temp = this.$appdata.getParam(item.paramLabel)
133
- if (temp && temp.length > 0) {
134
- item.options = temp
135
- }
136
- }
137
- }
138
-
139
- if (item.ready) {
140
- item.options = await this[item.ready]()
141
- }
142
- }
143
-
144
-
145
- if (item.type === 'checkbox') {
146
- if (this.selectdata[item.field]) {
147
- item.value = JSON.parse(this.selectdata[item.field])
148
- } else {
149
- item.value = []
150
- }
151
- }
152
- }
153
-
154
- // 控制组件
155
- if (this.selectdata.components) {
156
- this.selectdata.components.forEach(item => {
157
- if (!item.mark) {
158
- item.mark = 0
159
- }
160
- })
161
- }
162
-
163
- // 初始化onetomany
164
- if (this.selectdata.onetomany) {
165
- for (const item of this.selectdata.onetomany) {
166
- let res = null
167
- if (item.queryEvent) {
168
- res = this[item.queryEvent]()
169
- } else {
170
- let http = new HttpResetClass()
171
- let data = {
172
- tablename: item.tables[0],
173
- condition: `f_process_id='${this.selectdata.f_process_id}'`
174
- }
175
- res = await http.load(
176
- 'POST',
177
- `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
178
- // `rs/sql/singleTable`,
179
- {data: data},
180
- {resolveMsg: null, rejectMsg: 'onetomany查询失败'}
181
- )
182
- }
183
-
184
- item.rows = res.data
185
-
186
- // 初始化onetomany中的fields
187
- for (const field of item.fields) {
188
- if (!field.value) {
189
- if (field.value !== 0) {
190
- field.value = null
191
- }
192
- }
193
-
194
- if (field.default || field.default === 0) {
195
- field.value = field.default
196
- }
197
-
198
- // datepicker
199
- if (field.type === 'datepicker' && !field.value && field.default) {
200
- field.value = new Date().Format(`${field.format ? field.format : 'yyyy-MM-dd HH:mm:ss'}`)
201
- }
202
-
203
- if (field.type === 'select') {
204
-
205
- if (field.param) {
206
- let temp = this.$appdata.getParam(field.label)
207
-
208
- if (temp && temp.length > 0) {
209
- field.options = temp
210
- }
211
-
212
- if (field.paramLabel) {
213
- temp = this.$appdata.getParam(field.paramLabel)
214
- if (temp && temp.length > 0) {
215
- item.options = temp
216
- }
217
- }
218
- }
219
-
220
- }
221
- }
222
- }
223
- }
224
-
225
- // 初始化 buttons_fields
226
- for (const item of this.selectdata.buttons) {
227
- if (item.button_name === '下发') {
228
- let data = {
229
- source: item.source,
230
- userid: Vue.user.id
231
- // userid: '51953'
232
- }
233
- if (item.sourceMethod) {
234
- data.source = this[item.sourceMethod]()
235
- }
236
- if (!data.source) {
237
- this.$showMessage("请配置获取人员表达式")
238
- return
239
- }
240
- let res = await this.$resetpost(
241
- `${this.$androidUtil.getProxyUrl()}/rs/search`,
242
- // `rs/search`,
243
- {data: data},
244
- {resolveMsg: null, rejectMsg: '下发人员查询失败!!!'}
245
- )
246
-
247
- let options = res.data.map(source => {
248
- return {
249
- "label": source.name,
250
- "value": source.id
251
- }
252
- })
253
-
254
- if (item.button_fields.length !== 1) {
255
- this.$showMessage("下发有且只能有一个字段!!!")
256
- return
257
- }
258
-
259
- item.button_fields[0].options = options
260
- }
261
- if (item.button_fields) {
262
- item.button_fields.forEach(x => {
263
- // 如果配置类型为select,优先从参数列表获取options
264
- if (x.type === 'select') {
265
-
266
- if (x.param) {
267
- let temp = this.$appdata.getParam(x.label)
268
-
269
- if (temp && temp.length > 0) {
270
- x.options = temp
271
- }
272
-
273
- if (x.paramLabel) {
274
- temp = this.$appdata.getParam(x.paramLabel)
275
- if (temp && temp.length > 0) {
276
- x.options = temp
277
- }
278
- }
279
- }
280
-
281
- }
282
- })
283
- }
284
- }
285
-
286
- // 消除双向绑定,避免子组件(显示层)数据更改,父组件(控制层)也更改
287
- let temp = JSON.parse(JSON.stringify(this.selectdata))
288
-
289
- this.show_data = temp
290
- this.$nextTick(() => {
291
- this.showview = true
292
- })
293
- },
294
- // 金额转大写
295
- smalltoBIG(n) {
296
- let fraction = ['角', '分'];
297
- let digit = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'];
298
- let unit = [['元', '万', '亿'], ['', '拾', '佰', '仟']];
299
- let head = n < 0 ? '欠' : '';
300
- n = Math.abs(n);
301
-
302
- let s = '';
303
-
304
- for (var i = 0; i < fraction.length; i++) {
305
- s += (digit[Math.floor(n * 10 * Math.pow(10, i)) % 10] + fraction[i]).replace(/零./, '');
306
- }
307
- s = s || '整';
308
- n = Math.floor(n);
309
-
310
- for (var i = 0; i < unit[0].length && n > 0; i++) {
311
- let p = '';
312
- for (var j = 0; j < unit[1].length && n > 0; j++) {
313
- p = digit[n % 10] + unit[1][j] + p;
314
- n = Math.floor(n / 10);
315
- }
316
- s = p.replace(/(零.)*零$/, '').replace(/^$/, '零') + unit[0][i] + s;
317
- }
318
- return head + s.replace(/(零.)*零元/, '元').replace(/(零.)+/g, '零').replace(/^整$/, '零元整')
319
- },
320
- getLableValue(label) {
321
- for (const item of this.show_data.fields) {
322
- if (item.label === label && item.type !== 'number') {
323
- return item.value || ''
324
- }
325
- if (item.label === label && item.type === 'number') {
326
- return item.value || 0
327
- }
328
- }
329
- },
330
- getLableOptions(label) {
331
- for (const item of this.show_data.fields) {
332
- if (item.label === label) {
333
- return item.options
334
- }
335
- }
336
- },
337
- setLabelValue(label, value) {
338
- for (const item of this.show_data.fields) {
339
- if (item.label === label) {
340
- item.value = value
341
- this.show_data[item.field] = value
342
- }
343
- }
344
- },
345
- setLabelOptions(label, options) {
346
- for (const item of this.show_data.fields) {
347
- if (item.label === label) {
348
- item.options = options
349
- }
350
- }
351
- },
352
- async checkDuplicate(index) {
353
- let http = new HttpResetClass()
354
- let data = {
355
- tablename: 't_apply',
356
- condition: `${this.show_data.fields[index].field} = '${this.show_data.fields[index].value}'`
357
- }
358
- let res = await http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`, {data: data}, {
359
- resolveMsg: null,
360
- rejectMsg: `${this.show_data.fields[index].label}查询失败`
361
- })
362
- if (res.data.length > 0) {
363
- this.show_data.fields[index].value = null
364
- this.$showAlert(`${this.show_data.fields[index].label}已存在!!!`, 'warning', 3000)
365
- }
366
- },
367
- async breakControl () {
368
- if (this.show_data.id) {
369
- let data = {
370
- condition: `u.id = ${this.show_data.id}`,
371
- data: {
372
- id: Vue.user.id,
373
- orgid: Vue.user.orgid
374
- // id: '51953',
375
- // orgid: '10101'
376
- }
377
- }
378
- let res = await this.$resetpost(
379
- `${this.$androidUtil.getProxyUrl()}/rs/sql/checkuser`,
380
- // `rs/sql/checkuser`,
381
- {data: data},
382
- {resolveMsg: null, rejectMsg: '数据更新失败,请手查询更新!!!'}
383
- )
384
-
385
- this.selectdata = res.data[0]
386
- } else {
387
- this.selectdata = servicedata
388
- }
389
-
390
- this.refurbish()
391
- },
392
- // 缴费前置
393
- chargeBefore () {
394
- if (Number(this.show_data.f_due_money) > Number(this.show_data.f_cumulative_payment_money) || Number(this.show_data.f_surplus_money) > 0) {
395
- this.$showAlert('费用未结清!!!', 'warning', 3000)
396
- throw null
397
- }
398
- },
399
- // 施工前置
400
- async constructionBefore () {
401
- let http = new HttpResetClass()
402
- let data = {
403
- condition: `ui.f_process_id = '${this.show_data.f_process_id}' and uf.f_table_state = '待开通'`
404
- }
405
- let res = await http.load(
406
- 'POST',
407
- `${this.$androidUtil.getProxyUrl()}/rs/sql/countApplyUserinfo`,
408
- {data: data},
409
- {
410
- resolveMsg: null,
411
- rejectMsg: '安装明细查询失败!!!'
412
- })
413
- if (res.data[0].num > 0) {
414
- this.$showAlert(`还有${res.data[0].num}户未安装,无法提交`, 'warning', 3000)
415
- throw `还有${res.data[0].num}户未安装,无法提交`
416
- }
417
- },
418
- changePipeBuild () {
419
- if (this.selectdata.f_process_dep === '工程部') {
420
- return 'this.getParentByType($organization$).getChildByName($工程部报装$).getChildren()'
421
- }
422
- if (this.selectdata.f_process_dep === '运营部') {
423
- return 'this.getParentByType($organization$).getChildByName($运营部报装$).getChildren()'
424
- }
425
- },
426
- async getPrice (f_price_id) {
427
- console.log('=======================')
428
- console.log(f_price_id)
429
-
430
- let data = {
431
- condition: `sp.f_orgid = '${Vue.user.orgid}'`
432
- }
433
-
434
- if (!isEmpty(f_price_id)) {
435
- data.condition = `sp.f_orgid = '${Vue.user.orgid}' and sp.f_price_id = ${f_price_id}`
436
- }
437
- let http = new HttpResetClass()
438
- let res = await http.load(
439
- 'POST',
440
- `${this.$androidUtil.getProxyUrl()}/rs/sql/applyGetPrice`,
441
- {data: data},
442
- {resolveMsg: null, rejectMsg: '气价查询失败!!!'}
443
- )
444
-
445
- return res.data.map(item => {
446
- return {
447
- label: item.f_price_name,
448
- value: item
449
- }
450
- })
451
- }
452
- },
453
- events: {
454
- 'breakControl' () {
455
- this.breakControl()
456
- },
457
- // 检查重复
458
- 'checkRepeat' (index) {
459
- this.checkDuplicate(index)
460
- },
461
- // 选择材料
462
- async materialNameChenge (index, fieldIndex) {
463
- let material = this.show_data.onetomany[index].fields[fieldIndex].value
464
-
465
- this.show_data.onetomany[index].fields.forEach(item => {
466
- if (material[item.field]) {
467
- item.value = material[item.field]
468
- }
469
- })
470
- },
471
- // 打开模态框获取材料
472
- async 'getMaterialName' (index) {
473
- let data = {
474
- condition: `1=1`
475
- }
476
- let http = new HttpResetClass()
477
- let res = await http.load(
478
- 'POST',
479
- `${this.$androidUtil.getProxyUrl()}/rs/sql/getStockMaterial`,
480
- {data: data},
481
- {resolveMsg: null, rejectMsg: '材料查询失败!!!'}
482
- )
483
-
484
- this.show_data.onetomany[index].fields.forEach(field => {
485
- if (field.label === '选择材料') {
486
- field.options = res.data.map(item => {
487
- return {
488
- 'label': `${item.f_material_name}--${item.f_material_style}--${item.f_material_unit}`,
489
- 'value': item
490
- }
491
- })
492
- }
493
- })
494
- },
495
- // 选择气价
496
- 'priceChange' (index) {
497
- if (isEmpty(this.show_data.stairPrice)) {
498
- return
499
- }
500
-
501
- let stairPrice = this.getLableValue('气价名称')
502
-
503
- this.setLabelValue('气价类型', stairPrice.f_price_type)
504
- this.setLabelValue('用气性质', stairPrice.f_gasproperties)
505
- this.setLabelValue('价格', stairPrice.f_price)
506
- this.setLabelValue('客户类型', stairPrice.f_user_type)
507
-
508
- this.show_data.f_price_id = stairPrice.f_price_id
509
- this.show_data.f_price_name = stairPrice.f_price_name
510
- },
511
- // 是否购买保险
512
- isInsureChange (index) {
513
- let f_is_insure = this.getLableValue('是否购买保险')
514
- for (const item of this.show_data.fields) {
515
- if (f_is_insure === '是') {
516
- if (item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额') {
517
- item.hidden = false
518
- item.required = true
519
- }
520
- if (item.label === '保险备注') {
521
- item.hidden = false
522
- }
523
- } else {
524
- if (item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额' || item.label === '保险备注') {
525
- item.hidden = true
526
- item.required = false
527
- }
528
- }
529
- }
530
- },
531
- // 通气点火初始化
532
- async 'gasReadyEvent' () {
533
- if (!isEmpty(this.show_data.f_price_id)) {
534
- let priceList = await this.getPrice(this.show_data.f_price_id)
535
- this.setLabelValue('气价名称', priceList[0].value)
536
- }
537
-
538
- let data = {
539
- tablename: 't_userfees',
540
- condition: `f_orgid = '${Vue.user.orgid}' and f_userinfo_id = '${this.show_data.f_userinfo_id}' and f_state = '待执行'`
541
- }
542
- let http = new HttpResetClass()
543
- let res = await http.load(
544
- 'POST',
545
- `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
546
- {data: data},
547
- {resolveMsg: null, rejectMsg: '保险查询失败!!!'}
548
- )
549
- if (res.data.length > 0) {
550
- this.setLabelValue('待执行保险', '是')
551
- for (const item of this.show_data.fields) {
552
- if (item.label === '保费开始日期' || item.label === '是否购买保险' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额' || item.label === '保险备注') {
553
- item.hidden = true
554
- item.required = false
555
- item.value = null
556
- }
557
- }
558
- } else {
559
- this.setLabelValue('待执行保险', '否')
560
- for (const item of this.show_data.fields) {
561
- if (item.label === '是否购买保险' || item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额' || item.label === '保险备注') {
562
- item.hidden = false
563
- item.required = true
564
- }
565
- }
566
- }
567
-
568
- // 初始化显示内容
569
- let f_is_insure = this.getLableValue('是否购买保险')
570
- for (const item of this.show_data.fields) {
571
- if (f_is_insure === '是') {
572
- if (item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额') {
573
- item.hidden = false
574
- item.required = true
575
- }
576
- if (item.label === '保险备注') {
577
- item.hidden = false
578
- }
579
- // 本期保费到期时间默认一年
580
- if (isEmpty(this.selectdata.f_ins_expiration_date)) {
581
- let f_ins_expiration_date = new Date().setFullYear(new Date().getFullYear() + 1)
582
- this.setLabelValue("保费结束日期", new Date(f_ins_expiration_date).Format('yyyy-MM-dd'))
583
- }
584
- }
585
- if (f_is_insure === '否') {
586
- if (item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额' || item.label === '保险备注') {
587
- item.hidden = true
588
- item.required = false
589
- }
590
- }
591
- }
592
- },
593
- // 合同金额失去焦点
594
- async 'contractMoneyChange' (index) {
595
- let data = {
596
- operator: '+',
597
- num1: this.show_data.f_contract_money || 0,
598
- num2: this.getLableValue('追加金额') || 0
599
- }
600
- let res = await this.$resetpost(
601
- `${this.$androidUtil.getProxyUrl()}/rs/logic/compute`,
602
- {data: data},
603
- {resolveMsg: null, rejectMsg: '金额计算失败!!!'}
604
- )
605
-
606
- this.setLabelValue('应交金额', res.data)
607
- },
608
- // ===========================================
609
- async 'button'() {
610
- if (this.show_data.button.before) {
611
- await this[this.show_data.button.before]()
612
- }
613
- // 点击重置按钮就重置数据
614
- if (this.show_data.button.button_name === '重置') {
615
- this.$dispatch('breakControl', this.selectdata)
616
- return
617
- }
618
-
619
- this.show_data.user = Vue.user
620
- // this.show_data.user = {"f_show_department_name":"","parentname":"市场部","functions":[{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"客服系统","icon":"/images/lefticon/档案管理.png","hasright":false,"resourcetype":"function","parentid":"27","children":[{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"档案管理","link":"city-manage","hasright":true,"resourcetype":"function","parentid":"212","children":[],"selfid":"231","name":"街道管理","templatename":"functionedit","id":"230","position":"1","fullname":"资源管理.功能模块.客服系统.档案管理.街道管理","fullid":"3.21.27.212.230","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"档案管理","link":"area-manage","hasright":true,"resourcetype":"function","parentid":"212","children":[],"selfid":"219","name":"小区管理","templatename":"functionedit","id":"218","position":"3","fullname":"资源管理.功能模块.客服系统.档案管理.小区管理","fullid":"3.21.27.212.218","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"档案管理","link":"address-manage","hasright":true,"resourcetype":"function","parentid":"212","children":[],"selfid":"33664","name":"地址管理","templatename":"functionedit","id":"33663","position":"5","fullname":"资源管理.功能模块.客服系统.档案管理.地址管理","fullid":"3.21.27.212.33663","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"档案管理","link":"file-user-files","hasright":true,"resourcetype":"function","parentid":"212","children":[],"selfid":"237","name":"用户档案","templatename":"functionedit","id":"236","position":"5","fullname":"资源管理.功能模块.客服系统.档案管理.用户档案","fullid":"3.21.27.212.236","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"档案管理","link":"file-user-files-new","hasright":true,"resourcetype":"function","parentid":"212","f_parentname":"档案管理","children":[],"selfid":"39450","name":"预备户管理","templatename":"functionedit","id":"39449","position":"6","fullname":"资源管理.功能模块.客服系统.档案管理.预备户管理","fullid":"3.21.27.212.39449","tablename":"t_function"}],"selfid":"213","name":"档案管理","templatename":"functionedit","id":"212","position":"2","fullname":"资源管理.功能模块.客服系统.档案管理","fullid":"3.21.27.212","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"客服系统","icon":"/images/lefticon/报建系统.png","hasright":true,"resourcetype":"function","parentid":"27","f_parentname":"客服系统","children":[{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"install-function","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34680","name":"功能业务","templatename":"functionedit","id":"34679","position":"1","fullname":"资源管理.功能模块.客服系统.报建业务.功能业务","fullid":"3.21.27.34673.34679","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"exploration-user","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34686","name":"流程业务","templatename":"functionedit","id":"34685","position":"2","fullname":"资源管理.功能模块.客服系统.报建业务.流程业务","fullid":"3.21.27.34673.34685","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"supervisory-control","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34692","name":"流程监控","templatename":"functionedit","id":"34691","position":"3","fullname":"资源管理.功能模块.客服系统.报建业务.流程监控","fullid":"3.21.27.34673.34691","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"apply-charge-search","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34698","name":"收费明细","templatename":"functionedit","id":"34697","position":"4","fullname":"资源管理.功能模块.客服系统.报建业务.收费明细","fullid":"3.21.27.34673.34697","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"order-apply","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34704","name":"预约申请","templatename":"functionedit","id":"34703","position":"5","fullname":"资源管理.功能模块.客服系统.报建业务.预约申请","fullid":"3.21.27.34673.34703","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"stop-apply","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34710","name":"终止报建","templatename":"functionedit","id":"34709","position":"6","fullname":"资源管理.功能模块.客服系统.报建业务.终止报建","fullid":"3.21.27.34673.34709","tablename":"t_function"}],"selfid":"34674","name":"报建业务","templatename":"functionedit","id":"34673","position":"12","fullname":"资源管理.功能模块.客服系统.报建业务","fullid":"3.21.27.34673","tablename":"t_function"}],"qrcode":"/rs/user/getQRcode?QRCODE=12b2-1631604191812-03447","rolesnames":"营业厅报装,市场部报装,设计部报装,工程部报装,运营部报装,财务部报装,角色监控","roles":"51383,51485,51707,51767,51833,51905,52289","f_sex":"男","f_icon":"tree_user","fullnames":"河南亿星集团实业有限公司.周口市天然气有限公司.市场部.报建测试","dir":"ZhouKou","userid":"12b2-1631604191812-03447","accesstime":"1632214307117","parentid":"46545","f_show_rolestr":"","fullids":"30463.10101.46545.51953.","number":"10101","f_dep_id":"1010101201","f_idnumber":null,"selfid":"51954","templatename":"useredit","logindate":"2021-09-14 18:46:54","id":"51953","state":"在职","tablename":"t_user","deptype":"部门","depids":"46545","loginid":"15","imgid":null,"f_user_telephone":null,"rolestr":"营业厅报装,市场部报装,设计部报装,工程部报装,运营部报装,财务部报装,角色监控","deps":"市场部","loginnum":"0","f_age":null,"resourcetype":"user","orgid":"10101","f_department_name":"周口市场部","ename":"bjcs","deleted":"false","entitytype":"t_user","f_description":null,"loginip":"192.168.66.37","name":"报建测试","position":"1","orgs":"周口市天然气有限公司","haslicense":true,"f_role_name":"营业厅报装 市场部报装 设计部报装 工程部报装 运营部报装 财务部报装 角色监控 ","f_allArea":[],"f_gasman":[{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"15294978548","rolestr":"抄表员","resourcetype":"user","userid":"100814","parentid":"46581","f_department_name":"周口客服部","ename":"100814","password":"1","deleted":"false","entitytype":"t_user","selfid":"100814","name":"高雪荣","templatename":"useredit","id":"100814","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"qrcode":"/rs/user/getQRcode?QRCODE=004","roles":"51959","f_sex":"男","f_icon":"tree_user","userid":"004","accesstime":"1631765198067","parentid":"46581","password":"1","selfid":"59044","templatename":"useredit","id":"59043","state":"在职","tablename":"t_user","loginid":"15","rolestr":"抄表员","resourcetype":"user","f_department_name":"周口客服部","ename":"cbcs","deleted":"false","entitytype":"t_user","loginip":"10.10.10.1","name":"抄表测试","position":"23","haslicense":"true","f_role_name":"抄表员 "},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"18538602709","rolestr":"抄表员","resourcetype":"user","userid":"100462","parentid":"46581","f_department_name":"周口客服部","ename":"100462","password":"1","deleted":"false","entitytype":"t_user","selfid":"100462","name":"刘林静","templatename":"useredit","id":"100462","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"18839409830","rolestr":"抄表员","resourcetype":"user","userid":"100528","parentid":"46581","f_department_name":"周口客服部","ename":"100528","password":"1","deleted":"false","entitytype":"t_user","selfid":"100528","name":"秦春梅","templatename":"useredit","id":"100528","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"13243376616","rolestr":"抄表员","resourcetype":"user","userid":"102935","parentid":"46581","f_department_name":"周口客服部","ename":"102935","password":"1","deleted":"false","entitytype":"t_user","selfid":"102935","name":"石磊","templatename":"useredit","id":"102935","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"18538602706","rolestr":"抄表员","resourcetype":"user","userid":"100818","parentid":"46581","f_department_name":"周口客服部","ename":"100818","password":"1","deleted":"false","entitytype":"t_user","selfid":"100818","name":"白静","templatename":"useredit","id":"100818","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"15294991670","rolestr":"抄表员","resourcetype":"user","userid":"102934","parentid":"46581","f_department_name":"周口客服部","ename":"102934","password":"1","deleted":"false","entitytype":"t_user","selfid":"102934","name":"郭新胜","templatename":"useredit","id":"102934","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"15036438918","rolestr":"抄表员","resourcetype":"user","userid":"103392","accesstime":"1631757950369","parentid":"46581","f_department_name":"周口客服部","ename":"103392","password":"1","deleted":"false","entitytype":"t_user","loginip":"10.10.10.1","selfid":"103392","name":"牛永胜","templatename":"useredit","id":"103392","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"13592232789","rolestr":"抄表员","resourcetype":"user","userid":"100337","parentid":"46581","f_department_name":"周口客服部","ename":"100337","password":"1","deleted":"false","entitytype":"t_user","selfid":"100337","name":"王雪丽","templatename":"useredit","id":"100337","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"17796528119","rolestr":"抄表员","resourcetype":"user","userid":"101021","parentid":"46581","f_department_name":"周口客服部","ename":"101021","password":"1","deleted":"false","entitytype":"t_user","selfid":"101021","name":"张书荣","templatename":"useredit","id":"101021","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"18839409832","rolestr":"抄表员","resourcetype":"user","userid":"100330","parentid":"46581","f_department_name":"周口客服部","ename":"100330","password":"1","deleted":"false","entitytype":"t_user","selfid":"100330","name":"武文平","templatename":"useredit","id":"100330","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"13839441227","rolestr":"抄表员","resourcetype":"user","userid":"100871","parentid":"46581","f_department_name":"周口客服部","ename":"100871","password":"1","deleted":"false","entitytype":"t_user","selfid":"100871","name":"李明磊","templatename":"useredit","id":"100871","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"}],"lics":[]}
621
- this.show_data.start_activity = this.json_datas.start_activity
622
- this.show_data.xmlfilename = this.json_datas.workflow_xmlfilename
623
-
624
- let res = await this.$resetpost(
625
- // `rs/logic/ApplyProductService`,
626
- `${this.$androidUtil.getProxyUrl()}/rs/logic/ApplyProductService`,
627
- {data: this.show_data},
628
- {resolveMsg: null, rejectMsg: '数据保存失败'}
629
- )
630
-
631
- if (this.show_data.button.after) {
632
- this[this.show_data.button.after]()
633
- }
634
- // 返回上层
635
- this.$dispatch('confirm')
636
- },
637
- // 失去焦点出触发事件
638
- 'onchange' (index) {
639
- if (this.show_data.defname === '报装申请') {
640
- if (
641
- this.show_data.fields[index].label === '街道' ||
642
- this.show_data.fields[index].label === '小区' ||
643
- this.show_data.fields[index].label === '楼号(乡/镇)' ||
644
- this.show_data.fields[index].label === '单元(村)' ||
645
- this.show_data.fields[index].label === '楼层(组)' ||
646
- this.show_data.fields[index].label === '门牌号(号)'
647
- ) {
648
-
649
- let f_street = this.getLableValue('街道')
650
- let f_residential_area = this.getLableValue('小区')
651
- let f_building = this.getLableValue('楼号(乡/镇)')
652
- let f_building_suffix = f_building ? this.config.f_building_suffix : ''
653
- let f_unit = this.getLableValue('单元(村)')
654
- let f_unit_suffix = f_unit ? this.config.f_unit_suffix : ''
655
- let f_floor = this.getLableValue('楼层(组)')
656
- let f_floor_suffix = f_floor ? this.config.f_floor_suffix : ''
657
- let f_room = this.getLableValue('门牌号(号)')
658
- let f_room_suffix = f_room ? this.config.f_room_suffix : ''
659
-
660
- let f_address = null
661
-
662
- let f_address_type = this.show_data.f_address_type
663
- if (f_address_type === '民用城区') {
664
- f_address = f_street + f_residential_area + f_building + f_building_suffix + f_unit + f_unit_suffix + f_floor + f_floor_suffix + f_room + f_room_suffix
665
- }
666
- if (f_address_type === '民用农村') {
667
- f_address = f_building + f_unit + f_floor + f_room
668
- }
669
- if (f_address_type === '特殊城区') {
670
- f_address = f_street + f_residential_area
671
- }
672
- this.setLabelValue("地址", f_address)
673
- }
674
- }
675
- },
676
- 'onblur' (index) {},
677
- 'oninput' (index) {},
678
- 'initializtionView' () {},
679
- async 'onchangeModal' (index, fieldIndex) {
680
- },
681
- async 'onblurModal' (index, fieldIndex) {
682
-
683
- },
684
- async 'oninputModal' (index, fieldIndex) {
685
-
686
- },
687
- async 'onetomanydelete' (index, rowIndex) {
688
-
689
- let http = new HttpResetClass()
690
-
691
- let res = await http.load(
692
- 'DELETE',
693
- `${this.$androidUtil.getProxyUrl()}/rs/entity/${this.show_data.onetomany[index].tables[0]}/${this.show_data.onetomany[index].rows[rowIndex].id}`,
694
- null,
695
- {resolveMsg: null, rejectMsg: '删除失败!!!'}
696
- )
697
- res = await this.$resetpost(
698
- `${this.$androidUtil.getProxyUrl()}/rs/entity/t_apply`,
699
- this.show_data
700
- )
701
- this.breakControl()
702
- },
703
- async 'onetomanyupdate' (index, rowIndex) {
704
- let data = this.show_data.onetomany[index].rows[rowIndex]
705
-
706
- this.show_data.onetomany[index].fields.forEach(item => {
707
- data[item.field] = item.value
708
- })
709
- let res = await this.$resetpost(
710
- `${this.$androidUtil.getProxyUrl()}/rs/entity/${this.show_data.onetomany[index].tables[0]}`,
711
- data
712
- )
713
- res = await this.$resetpost(
714
- `${this.$androidUtil.getProxyUrl()}/rs/entity/t_apply`,
715
- this.show_data
716
- )
717
- this.breakControl()
718
- },
719
- async 'onetomanyadd' (index) {
720
- let data = {
721
- f_process_id : this.show_data.f_process_id,
722
- f_operator_id: Vue.user.id,
723
- f_operator: Vue.user.name,
724
- f_operation_date: new Date().Format('yyyy-MM-dd HH:mm:ss'),
725
- f_orgid: Vue.user.orgid,
726
- f_orgname: Vue.user.orgs
727
- }
728
- this.show_data.onetomany[index].fields.forEach(item => {
729
- data[item.field] = item.value
730
- })
731
- let res = await this.$resetpost(
732
- `${this.$androidUtil.getProxyUrl()}/rs/entity/${this.show_data.onetomany[index].tables[0]}`,
733
- data
734
- )
735
- res = await this.$resetpost(
736
- `${this.$androidUtil.getProxyUrl()}/rs/entity/t_apply`,
737
- this.show_data
738
- )
739
- this.breakControl()
740
- },
741
- 'onbutchange' (index) {
742
-
743
- },
744
- 'onbutblur' (index) {
745
-
746
- },
747
- 'onbutinput' (index) {
748
-
749
- }
750
- },
751
- watch: {
752
- }
753
- }
754
- </script>
755
- <style scoped>
756
- </style>
1
+ <template>
2
+ <div class="col-sm-12 col-xs-12 p-10">
3
+ <accordion one-at-a-time="true">
4
+ <panel :header="selectdata.defname" :is-open="true" type="primary">
5
+ <app-service-view v-ref:serviceview :data="show_data" v-if="showview"></app-service-view>
6
+ </panel>
7
+ <panel header="拍照" :is-open="false" type="primary" v-if="selectdata.f_process_id">
8
+ <app-take-pic :blobid="selectdata.f_process_id" :defname="selectdata.defname" :isdelete="true" :istakepic="true" :istype="true"></app-take-pic>
9
+ </panel>
10
+ </accordion>
11
+ </div>
12
+ </template>
13
+ <script>
14
+ import Vue from 'vue'
15
+ import {HttpResetClass} from 'vue-client'
16
+ import {isEmpty} from "../../Util";
17
+ // Date格式化
18
+ Date.prototype.Format = function (fmt) {
19
+ var o = {
20
+ 'M+': this.getMonth() + 1, // 月份
21
+ 'd+': this.getDate(), // 日
22
+ 'H+': this.getHours(), // 小时
23
+ 'm+': this.getMinutes(), // 分
24
+ 's+': this.getSeconds(), // 秒
25
+ 'q+': Math.floor((this.getMonth() + 3) / 3), // 季度
26
+ 'S': this.getMilliseconds() // 毫秒
27
+ }
28
+ if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length))
29
+ for (var k in o) {
30
+ if (new RegExp('(' + k + ')').test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)))
31
+ }
32
+ return fmt
33
+ }
34
+ export default {
35
+ title: '报建流程业务控制层',
36
+ props: ['selectdata'],
37
+ data () {
38
+ return {
39
+ json_datas: null,
40
+ data: null,
41
+ show_data: null,
42
+ showview: false,
43
+ config: {}
44
+ }
45
+ },
46
+ ready () {
47
+ this.refurbish()
48
+ },
49
+ methods: {
50
+ async refurbish() {
51
+ let data = {
52
+ workname: this.selectdata.processname
53
+ }
54
+
55
+ let res = await this.$resetpost(
56
+ `${this.$androidUtil.getProxyUrl()}/rs/logic/ApplyGetConfigs`,
57
+ {data: data},
58
+ {resolveMsg: null, rejectMsg: '配置数据获取失败!!!'}
59
+ )
60
+
61
+ this.json_datas = res.data
62
+ // this.json_datas = {"start_activity":"报装申请","workflow_xmlfilename":"散户报建流程","activitys":[{"title":"报装申请","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":false,"disabled":false,"required":true},{"label":"报建类型","type":"select","field":"f_apply_type","readonly":true,"required":true,"disabled":true,"placeholder":"请选择","param":true,"options":[]},{"label":"用户名称","type":"input","field":"f_user_name","readonly":false,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":false,"disabled":false,"required":true},{"label":"证件类型","type":"select","field":"f_credentials","readonly":false,"required":true,"disabled":false,"placeholder":"请选择","param":true,"options":[{"label":"身份证","value":"身份证"},{"label":"营业执照","value":"营业执照"}]},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":false,"required":true,"disabled":false},{"label":"片区","type":"select","field":"f_slice_area","readonly":false,"required":true,"disabled":false,"ready":"getSliceArea","options":[]},{"label":"地址类型","type":"select","field":"f_address_type","readonly":false,"required":true,"disabled":false,"onchange":"addressTypeChange","options":[{"label":"民用城区","value":"民用城区"},{"label":"民用农村","value":"民用农村"},{"label":"特殊城区","value":"特殊城区"},{"label":"特殊农村","value":"特殊农村"}]},{"label":"区/县","type":"select","field":"f_pcd","hidden":true,"readonly":false,"required":true,"disabled":false,"ready":"getPcd","onchange":"pcdChange","options":[]},{"label":"街道","type":"select","field":"f_street","hidden":true,"readonly":false,"required":true,"disabled":false,"onchange":"streetChange","options":[]},{"label":"小区","type":"select","field":"f_residential_area","hidden":true,"readonly":false,"required":true,"disabled":false,"options":[]},{"label":"楼号(乡/镇)","type":"input","field":"f_building","hidden":true,"readonly":false,"required":false,"disabled":false},{"label":"单元(村)","type":"input","field":"f_unit","hidden":true,"readonly":false,"required":false,"disabled":false},{"label":"楼层(组)","type":"input","field":"f_floor","hidden":true,"readonly":false,"required":false,"disabled":false},{"label":"门牌号(号)","type":"input","field":"f_room","hidden":true,"readonly":false,"required":false,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":false,"required":true,"disabled":false},{"label":"预约地址","type":"textarea","field":"f_order_address","rows":1,"readonly":true,"required":false,"disabled":false},{"label":"备注","type":"textarea","field":"f_apply_remarks","rows":2,"readonly":false,"required":false,"disabled":false}],"components":[],"buttons":[{"button_name":"保存"},{"button_name":"勘察","disabled":true},{"button_name":"合同","disabled":true}],"readyEvent":"applyReadyEvent"},{"title":"勘察派工","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false}],"components":[],"buttons":[{"button_name":"保存"},{"button_name":"下发","source":"this.getParentByType($organization$).getChildByName($市场部报装$).getChildren()","button_fields":[{"label":"下发给","type":"select","field":"f_issue_man","placeholder":"请输入","readonly":false,"disabled":false,"required":true,"options":[]}],"disabled":true}]},{"title":"现场勘察","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false},{"label":"勘查结果","type":"textarea","field":"f_prospecting_result","rows":2,"readonly":false,"required":true,"disabled":false}],"components":[],"buttons":[{"button_name":"保存"},{"button_name":"提交","disabled":true}]},{"title":"合同签订","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false},{"label":"合同编号","type":"input","field":"f_contract_number","prefix":"","suffix":null,"placeholder":"请输入","readonly":true,"required":true,"default":"this.selectdata.f_apply_num","eval":true},{"label":"合同金额","type":"number","field":"f_contract_money","placeholder":"0.00","readonly":false,"required":true,"onchange":"contractMoneyChange"},{"label":"追加金额","type":"number","field":"f_add_contract_money","placeholder":"请输入","readonly":true,"required":true,"default":0},{"label":"应交金额","type":"number","field":"f_due_money","placeholder":"请输入","readonly":true,"required":true,"default":0},{"label":"合同签订时间","type":"datepicker","field":"f_contract_date","placeholder":"请选择","readonly":false,"required":true}],"components":[{"title":"补充协议","device":"pc","name":"supplemental-agreement"},{"title":"补充协议","device":"app","name":"app-supplemental-agreement"}],"buttons":[{"button_name":"保存"},{"button_name":"提交","disabled":true}]},{"title":"报装缴费","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":2,"readonly":true,"required":true,"disabled":false},{"label":"合同编号","type":"input","field":"f_contract_number","placeholder":"","readonly":true,"required":true},{"label":"合同金额","type":"number","field":"f_contract_money","placeholder":"请输入","readonly":true,"required":true},{"label":"追加款","type":"number","field":"f_add_contract_money","placeholder":"请输入","readonly":true,"required":false},{"label":"应交金额","type":"number","field":"f_due_money","placeholder":"请输入","readonly":true,"required":false},{"label":"累计缴费金额","type":"number","field":"f_cumulative_payment_money","placeholder":"请输入","readonly":true,"required":false},{"label":"未结总金额","type":"number","field":"f_surplus_money","placeholder":"请输入","readonly":true,"required":false},{"label":"付款比例","type":"input","field":"f_payment_ratio","placeholder":"请输入","readonly":true,"required":false},{"label":"累计退款金额","type":"number","field":"f_cumulative_retreat_money","placeholder":"请输入","readonly":true,"required":false,"default":0}],"components":[{"title":"缴费明细","device":"pc","name":"apply-charge-management"},{"title":"补充协议","device":"pc","name":"supplemental-agreement","mark":1},{"title":"缴费明细","device":"app","name":"app-charge-management"},{"title":"补充协议","device":"app","name":"app-supplemental-agreement","mark":1}],"buttons":[{"button_name":"保存"},{"before":"chargeBefore","button_name":"提交","disabled":true}]},{"title":"工程派工","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false}],"buttons":[{"button_name":"保存"},{"button_name":"下发","source":"this.getParentByType($organization$).getChildByName($工程部报装$).getChildren()","button_fields":[{"label":"下发给","type":"select","field":"f_issue_man","placeholder":"请输入","readonly":false,"disabled":false,"required":true,"options":[]}],"disabled":true}]},{"title":"工程施工","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":2,"readonly":true,"required":true,"disabled":false},{"label":"施工单位","type":"input","field":"f_construction_unit","readonly":false,"required":true,"disabled":false,"default":"this.$login.f.name","eval":true},{"label":"施工安装时间","type":"datepicker","field":"f_construction_date","readonly":false,"required":true,"disabled":false},{"bootstraped":"col-sm-12 col-xs-12","label":"安装项目","type":"checkbox","field":"f_install_project","readonly":false,"required":true,"disabled":false,"param":false,"options":[{"label":"入户","value":"入户"},{"label":"热水器","value":"热水器"},{"label":"壁挂炉","value":"壁挂炉"}]},{"label":"施工安装情况","type":"textarea","field":"f_install_situation","rows":2,"readonly":false,"required":true,"disabled":false},{"label":"施工备注","type":"textarea","field":"f_construction_remarks","rows":2,"readonly":false,"required":false,"disabled":false}],"onetomany":[{"title":"材料明细","hidden":false,"tables":["t_material_list"],"hiddenOperate":false,"modalSize":"large","addHidden":false,"addStyle":null,"deleteHidden":false,"deleteText":"删除","deleteMessage":null,"updateHidden":false,"updateText":"修改","fields":[{"label":"材料名称","type":"input","field":"f_material_name","placeholder":"请输入","readonly":false,"required":true},{"label":"材料型号","type":"input","field":"f_material_style","placeholder":"请输入","readonly":false,"required":true},{"label":"材料价格","type":"number","field":"f_material_price","placeholder":"请输入","readonly":false,"required":true},{"label":"材料单位","type":"input","field":"f_material_unit","placeholder":"请输入","readonly":false,"required":true},{"label":"材料数量","type":"number","field":"f_material_number","placeholder":"请输入","readonly":false,"required":true},{"label":"材料备注","type":"input","field":"f_material_remarks","placeholder":"请输入","readonly":false,"required":false}]}],"components":[{"title":"安装明细","device":"pc","name":"installation-details"},{"title":"安装明细","device":"app","name":"app-installation-details"},{"title":"用气设备","device":"pc","name":"apply-devices-management"},{"title":"用气设备","device":"app","name":"app-apply-devices-management"}],"buttons":[{"button_name":"保存"},{"before":"constructionBefore","button_name":"提交","disabled":true}]},{"title":"点火派单","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false},{"label":"施工单位","type":"input","field":"f_construction_unit","readonly":true,"required":true,"disabled":false},{"label":"施工安装时间","type":"datepicker","field":"f_construction_date","readonly":true,"required":true,"disabled":true},{"bootstraped":"col-sm-12 col-xs-12","label":"安装项目","type":"checkbox","field":"f_install_project","readonly":true,"required":true,"disabled":true,"param":false,"options":[{"label":"入户","value":"入户"},{"label":"热水器","value":"热水器"},{"label":"壁挂炉","value":"壁挂炉"}]},{"label":"施工安装情况","type":"textarea","field":"f_install_situation","rows":2,"readonly":true,"required":true,"disabled":false},{"label":"施工备注","type":"textarea","field":"f_construction_remarks","rows":2,"readonly":true,"required":false,"disabled":false}],"components":[],"buttons":[{"button_name":"保存"},{"button_name":"下发","source":"this.getParentByType($organization$).getChildByName($运营部报装$).getChildren()","button_fields":[{"label":"下发给","type":"select","field":"f_issue_man","placeholder":"请输入","readonly":false,"disabled":false,"required":true,"options":[]}],"disabled":true}]},{"title":"通气点火","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false},{"label":"施工单位","type":"input","field":"f_construction_unit","readonly":true,"required":true,"disabled":false},{"label":"施工安装时间","type":"datepicker","field":"f_construction_date","readonly":true,"required":true,"disabled":true},{"bootstraped":"col-sm-12 col-xs-12","label":"安装项目","type":"checkbox","field":"f_install_project","readonly":true,"required":true,"disabled":true,"param":true},{"label":"施工安装情况","type":"textarea","field":"f_install_situation","rows":2,"readonly":true,"required":true,"disabled":false},{"label":"施工备注","type":"textarea","field":"f_construction_remarks","rows":2,"readonly":true,"required":false,"disabled":false},{"label":"点火人","type":"input","field":"f_igniter_people","readonly":true,"required":true,"disabled":false,"default":"this.$login.f.name","eval":true},{"label":"通气时间","type":"datepicker","field":"f_ventilate_date","readonly":true,"required":true,"disabled":true,"default":true},{"label":"通气情况","type":"textarea","field":"f_gas_result","readonly":false,"required":true,"disabled":true,"rows":"7","default":"客户如认可以下内容请签字,如有不认可之处请说明情况\n1、气密性检测合格,已对各接口处进行查漏无泄漏\n2、燃气表运转正常并告知用户。灶具点火测试正常。使用金属波纹管\n3、已向用户讲解安全常识及注意事项。发放《用户使用手册》并张贴提示标签\n4、灶具品牌 油烟机品牌\n5、热水器品牌 壁挂炉品牌\n6、金属波纹品牌。"},{"label":"通气备注","type":"textarea","field":"f_gas_result","readonly":false,"required":false,"disabled":false},{"label":"是否购买保险","type":"select","field":"f_is_insure","placeholder":"请输入","readonly":false,"disabled":false,"required":true,"options":[{"label":"是","value":"是"},{"label":"否","value":"否"}],"default":"是","onchange":"isInsureChange"},{"label":"保费开始日期","type":"datepicker","field":"f_ins_start_date","readonly":false,"required":true,"disabled":false,"default":true,"format":"yyyy-MM-dd","hidden":true},{"label":"保费结束日期","type":"datepicker","field":"f_ins_expiration_date","readonly":false,"required":true,"disabled":false,"hidden":true},{"label":"险种","type":"select","field":"f_insurance_type","readonly":false,"disabled":false,"required":true,"options":[],"param":true,"hidden":true},{"label":"保费金额","type":"number","field":"f_insurance_money","placeholder":"请输入","readonly":false,"required":true,"hidden":true},{"label":"保险备注","type":"textarea","field":"f_ins_comments","rows":2,"readonly":false,"required":false,"disabled":false,"hidden":true}],"components":[{"title":"安装明细","device":"pc","name":"installation-details"},{"title":"安装明细","device":"app","name":"app-installation-details"},{"title":"用气设备","device":"pc","name":"apply-devices-management"},{"title":"用气设备","device":"app","name":"app-apply-devices-management"}],"buttons":[{"button_name":"保存"},{"button_name":"提交","disabled":true}],"readyEvent":"gasReadyEvent"},{"title":"完工","tables":["t_apply"],"fields":[{"label":"完工","type":"input","field":"f_successful","disabled":true,"value":"---success---"}]}]}
63
+
64
+ let sum = 0
65
+ let jsonData = {}
66
+ if (!this.json_datas || !this.json_datas.activitys || this.json_datas.activitys.length === 0) {
67
+ this.$showMessage("网络故障,请刷新页面")
68
+ return
69
+ }
70
+ this.json_datas.activitys.forEach(item => {
71
+ if (this.selectdata.defname === item.title) {
72
+ jsonData = item // 拿到当前节点的json配置信息
73
+ sum++ // 节点名一样的个数
74
+ }
75
+ return this.selectdata.defname === item.title // 拿到当前节点的json配置信息
76
+ })
77
+
78
+ if (sum === 0) {
79
+ this.$showMessage(`没有在JSON配置文件中找到活动名为:(${this.selectdata.defname})的节点配置`)
80
+ return
81
+ }
82
+ if (sum > 1) {
83
+ this.$showMessage(`在JSON配置文件中找到活动名为:(${this.selectdata.defname})的节点配置:${sum}个`)
84
+ return
85
+ }
86
+
87
+ this.selectdata = Object.assign({}, this.selectdata, jsonData)
88
+
89
+ // fields 字段填充值
90
+ for (const item of this.selectdata.fields) {
91
+ if (!item.value) {
92
+ item.value = null
93
+ }
94
+
95
+ if (!item.value && (item.default || item.default === 0) && item.type !== 'datepicker') {
96
+ if (item.eval) {
97
+ let user = Vue.user
98
+ // 将PC用户信息 替换成 APP的
99
+ item.value = eval(item.default.replace('this.$login.f', 'user'))
100
+ } else {
101
+ item.value = item.default
102
+ }
103
+ }
104
+
105
+ if (this.selectdata[item.field]) {
106
+ // 将json字符串格式化赋值给value
107
+ if (String(this.selectdata[item.field]).startsWith("{")) {
108
+ item.value = JSON.parse(this.selectdata[item.field])
109
+ } else {
110
+ item.value = this.selectdata[item.field]
111
+ }
112
+ }
113
+ if (this.selectdata[item.field] === 0) {
114
+ item.value = 0
115
+ }
116
+
117
+ // datepicker
118
+ if (item.type === 'datepicker' && !item.value && item.default) {
119
+ item.value = new Date().Format(`${item.format ? item.format : 'yyyy-MM-dd HH:mm:ss'}`)
120
+ }
121
+
122
+ // 如果配置类型为select,优先从参数列表获取options
123
+ if (item.type === 'select' || item.type === 'checkbox') {
124
+ if (item.param) {
125
+ let temp = this.$appdata.getParam(item.label)
126
+
127
+ if (temp && temp.length > 0) {
128
+ item.options = temp
129
+ }
130
+
131
+ if (item.paramLabel) {
132
+ temp = this.$appdata.getParam(item.paramLabel)
133
+ if (temp && temp.length > 0) {
134
+ item.options = temp
135
+ }
136
+ }
137
+ }
138
+
139
+ if (item.ready) {
140
+ item.options = await this[item.ready]()
141
+ }
142
+ }
143
+
144
+
145
+ if (item.type === 'checkbox') {
146
+ if (this.selectdata[item.field]) {
147
+ item.value = JSON.parse(this.selectdata[item.field])
148
+ } else {
149
+ item.value = []
150
+ }
151
+ }
152
+ }
153
+
154
+ // 控制组件
155
+ if (this.selectdata.components) {
156
+ this.selectdata.components.forEach(item => {
157
+ if (!item.mark) {
158
+ item.mark = 0
159
+ }
160
+ })
161
+ }
162
+
163
+ // 初始化onetomany
164
+ if (this.selectdata.onetomany) {
165
+ for (const item of this.selectdata.onetomany) {
166
+ let res = null
167
+ if (item.queryEvent) {
168
+ res = this[item.queryEvent]()
169
+ } else {
170
+ let http = new HttpResetClass()
171
+ let data = {
172
+ tablename: item.tables[0],
173
+ condition: `f_process_id='${this.selectdata.f_process_id}'`
174
+ }
175
+ res = await http.load(
176
+ 'POST',
177
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
178
+ // `rs/sql/singleTable`,
179
+ {data: data},
180
+ {resolveMsg: null, rejectMsg: 'onetomany查询失败'}
181
+ )
182
+ }
183
+
184
+ item.rows = res.data
185
+
186
+ // 初始化onetomany中的fields
187
+ for (const field of item.fields) {
188
+ if (!field.value) {
189
+ if (field.value !== 0) {
190
+ field.value = null
191
+ }
192
+ }
193
+
194
+ if (field.default || field.default === 0) {
195
+ field.value = field.default
196
+ }
197
+
198
+ // datepicker
199
+ if (field.type === 'datepicker' && !field.value && field.default) {
200
+ field.value = new Date().Format(`${field.format ? field.format : 'yyyy-MM-dd HH:mm:ss'}`)
201
+ }
202
+
203
+ if (field.type === 'select') {
204
+
205
+ if (field.param) {
206
+ let temp = this.$appdata.getParam(field.label)
207
+
208
+ if (temp && temp.length > 0) {
209
+ field.options = temp
210
+ }
211
+
212
+ if (field.paramLabel) {
213
+ temp = this.$appdata.getParam(field.paramLabel)
214
+ if (temp && temp.length > 0) {
215
+ item.options = temp
216
+ }
217
+ }
218
+ }
219
+
220
+ }
221
+ }
222
+ }
223
+ }
224
+
225
+ // 初始化 buttons_fields
226
+ for (const item of this.selectdata.buttons) {
227
+ if (item.button_name === '下发') {
228
+ let data = {
229
+ source: item.source,
230
+ userid: Vue.user.id
231
+ // userid: '51953'
232
+ }
233
+ if (item.sourceMethod) {
234
+ data.source = this[item.sourceMethod]()
235
+ }
236
+ if (!data.source) {
237
+ this.$showMessage("请配置获取人员表达式")
238
+ return
239
+ }
240
+ let res = await this.$resetpost(
241
+ `${this.$androidUtil.getProxyUrl()}/rs/search`,
242
+ // `rs/search`,
243
+ {data: data},
244
+ {resolveMsg: null, rejectMsg: '下发人员查询失败!!!'}
245
+ )
246
+
247
+ let options = res.data.map(source => {
248
+ return {
249
+ "label": source.name,
250
+ "value": source.id
251
+ }
252
+ })
253
+
254
+ if (item.button_fields.length !== 1) {
255
+ this.$showMessage("下发有且只能有一个字段!!!")
256
+ return
257
+ }
258
+
259
+ item.button_fields[0].options = options
260
+ }
261
+ if (item.button_fields) {
262
+ item.button_fields.forEach(x => {
263
+ // 如果配置类型为select,优先从参数列表获取options
264
+ if (x.type === 'select') {
265
+
266
+ if (x.param) {
267
+ let temp = this.$appdata.getParam(x.label)
268
+
269
+ if (temp && temp.length > 0) {
270
+ x.options = temp
271
+ }
272
+
273
+ if (x.paramLabel) {
274
+ temp = this.$appdata.getParam(x.paramLabel)
275
+ if (temp && temp.length > 0) {
276
+ x.options = temp
277
+ }
278
+ }
279
+ }
280
+
281
+ }
282
+ })
283
+ }
284
+ }
285
+
286
+ // 消除双向绑定,避免子组件(显示层)数据更改,父组件(控制层)也更改
287
+ let temp = JSON.parse(JSON.stringify(this.selectdata))
288
+
289
+ this.show_data = temp
290
+ this.$nextTick(() => {
291
+ this.showview = true
292
+ })
293
+ },
294
+ // 金额转大写
295
+ smalltoBIG(n) {
296
+ let fraction = ['角', '分'];
297
+ let digit = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'];
298
+ let unit = [['元', '万', '亿'], ['', '拾', '佰', '仟']];
299
+ let head = n < 0 ? '欠' : '';
300
+ n = Math.abs(n);
301
+
302
+ let s = '';
303
+
304
+ for (var i = 0; i < fraction.length; i++) {
305
+ s += (digit[Math.floor(n * 10 * Math.pow(10, i)) % 10] + fraction[i]).replace(/零./, '');
306
+ }
307
+ s = s || '整';
308
+ n = Math.floor(n);
309
+
310
+ for (var i = 0; i < unit[0].length && n > 0; i++) {
311
+ let p = '';
312
+ for (var j = 0; j < unit[1].length && n > 0; j++) {
313
+ p = digit[n % 10] + unit[1][j] + p;
314
+ n = Math.floor(n / 10);
315
+ }
316
+ s = p.replace(/(零.)*零$/, '').replace(/^$/, '零') + unit[0][i] + s;
317
+ }
318
+ return head + s.replace(/(零.)*零元/, '元').replace(/(零.)+/g, '零').replace(/^整$/, '零元整')
319
+ },
320
+ getLableValue(label) {
321
+ for (const item of this.show_data.fields) {
322
+ if (item.label === label && item.type !== 'number') {
323
+ return item.value || ''
324
+ }
325
+ if (item.label === label && item.type === 'number') {
326
+ return item.value || 0
327
+ }
328
+ }
329
+ },
330
+ getLableOptions(label) {
331
+ for (const item of this.show_data.fields) {
332
+ if (item.label === label) {
333
+ return item.options
334
+ }
335
+ }
336
+ },
337
+ setLabelValue(label, value) {
338
+ for (const item of this.show_data.fields) {
339
+ if (item.label === label) {
340
+ item.value = value
341
+ this.show_data[item.field] = value
342
+ }
343
+ }
344
+ },
345
+ setLabelOptions(label, options) {
346
+ for (const item of this.show_data.fields) {
347
+ if (item.label === label) {
348
+ item.options = options
349
+ }
350
+ }
351
+ },
352
+ async checkDuplicate(index) {
353
+ let http = new HttpResetClass()
354
+ let data = {
355
+ tablename: 't_apply',
356
+ condition: `${this.show_data.fields[index].field} = '${this.show_data.fields[index].value}'`
357
+ }
358
+ let res = await http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`, {data: data}, {
359
+ resolveMsg: null,
360
+ rejectMsg: `${this.show_data.fields[index].label}查询失败`
361
+ })
362
+ if (res.data.length > 0) {
363
+ this.show_data.fields[index].value = null
364
+ this.$showAlert(`${this.show_data.fields[index].label}已存在!!!`, 'warning', 3000)
365
+ }
366
+ },
367
+ async breakControl () {
368
+ if (this.show_data.id) {
369
+ let data = {
370
+ condition: `u.id = ${this.show_data.id}`,
371
+ data: {
372
+ id: Vue.user.id,
373
+ orgid: Vue.user.orgid
374
+ // id: '51953',
375
+ // orgid: '10101'
376
+ }
377
+ }
378
+ let res = await this.$resetpost(
379
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/checkuser`,
380
+ // `rs/sql/checkuser`,
381
+ {data: data},
382
+ {resolveMsg: null, rejectMsg: '数据更新失败,请手查询更新!!!'}
383
+ )
384
+
385
+ this.selectdata = res.data[0]
386
+ } else {
387
+ this.selectdata = servicedata
388
+ }
389
+
390
+ this.refurbish()
391
+ },
392
+ // 缴费前置
393
+ chargeBefore () {
394
+ if (Number(this.show_data.f_due_money) > Number(this.show_data.f_cumulative_payment_money) || Number(this.show_data.f_surplus_money) > 0) {
395
+ this.$showAlert('费用未结清!!!', 'warning', 3000)
396
+ throw null
397
+ }
398
+ },
399
+ // 施工前置
400
+ async constructionBefore () {
401
+ let http = new HttpResetClass()
402
+ let data = {
403
+ condition: `ui.f_process_id = '${this.show_data.f_process_id}' and uf.f_table_state = '待开通'`
404
+ }
405
+ let res = await http.load(
406
+ 'POST',
407
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/countApplyUserinfo`,
408
+ {data: data},
409
+ {
410
+ resolveMsg: null,
411
+ rejectMsg: '安装明细查询失败!!!'
412
+ })
413
+ if (res.data[0].num > 0) {
414
+ this.$showAlert(`还有${res.data[0].num}户未安装,无法提交`, 'warning', 3000)
415
+ throw `还有${res.data[0].num}户未安装,无法提交`
416
+ }
417
+ },
418
+ changePipeBuild () {
419
+ if (this.selectdata.f_process_dep === '工程部') {
420
+ return 'this.getParentByType($organization$).getChildByName($工程部报装$).getChildren()'
421
+ }
422
+ if (this.selectdata.f_process_dep === '运营部') {
423
+ return 'this.getParentByType($organization$).getChildByName($运营部报装$).getChildren()'
424
+ }
425
+ },
426
+ async getPrice (f_price_id) {
427
+ console.log('=======================')
428
+ console.log(f_price_id)
429
+
430
+ let data = {
431
+ condition: `sp.f_orgid = '${Vue.user.orgid}'`
432
+ }
433
+
434
+ if (!isEmpty(f_price_id)) {
435
+ data.condition = `sp.f_orgid = '${Vue.user.orgid}' and sp.f_price_id = ${f_price_id}`
436
+ }
437
+ let http = new HttpResetClass()
438
+ let res = await http.load(
439
+ 'POST',
440
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/applyGetPrice`,
441
+ {data: data},
442
+ {resolveMsg: null, rejectMsg: '气价查询失败!!!'}
443
+ )
444
+
445
+ return res.data.map(item => {
446
+ return {
447
+ label: item.f_price_name,
448
+ value: item
449
+ }
450
+ })
451
+ }
452
+ },
453
+ events: {
454
+ 'breakControl' () {
455
+ this.breakControl()
456
+ },
457
+ // 检查重复
458
+ 'checkRepeat' (index) {
459
+ this.checkDuplicate(index)
460
+ },
461
+ // 选择材料
462
+ async materialNameChenge (index, fieldIndex) {
463
+ let material = this.show_data.onetomany[index].fields[fieldIndex].value
464
+
465
+ this.show_data.onetomany[index].fields.forEach(item => {
466
+ if (material[item.field]) {
467
+ item.value = material[item.field]
468
+ }
469
+ })
470
+ },
471
+ // 打开模态框获取材料
472
+ async 'getMaterialName' (index) {
473
+ let data = {
474
+ condition: `1=1`
475
+ }
476
+ let http = new HttpResetClass()
477
+ let res = await http.load(
478
+ 'POST',
479
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/getStockMaterial`,
480
+ {data: data},
481
+ {resolveMsg: null, rejectMsg: '材料查询失败!!!'}
482
+ )
483
+
484
+ this.show_data.onetomany[index].fields.forEach(field => {
485
+ if (field.label === '选择材料') {
486
+ field.options = res.data.map(item => {
487
+ return {
488
+ 'label': `${item.f_material_name}--${item.f_material_style}--${item.f_material_unit}`,
489
+ 'value': item
490
+ }
491
+ })
492
+ }
493
+ })
494
+ },
495
+ // 选择气价
496
+ 'priceChange' (index) {
497
+ if (isEmpty(this.show_data.stairPrice)) {
498
+ return
499
+ }
500
+
501
+ let stairPrice = this.getLableValue('气价名称')
502
+
503
+ this.setLabelValue('气价类型', stairPrice.f_price_type)
504
+ this.setLabelValue('用气性质', stairPrice.f_gasproperties)
505
+ this.setLabelValue('价格', stairPrice.f_price)
506
+ this.setLabelValue('客户类型', stairPrice.f_user_type)
507
+
508
+ this.show_data.f_price_id = stairPrice.f_price_id
509
+ this.show_data.f_price_name = stairPrice.f_price_name
510
+ },
511
+ // 是否购买保险
512
+ isInsureChange (index) {
513
+ let f_is_insure = this.getLableValue('是否购买保险')
514
+ for (const item of this.show_data.fields) {
515
+ if (f_is_insure === '是') {
516
+ if (item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额') {
517
+ item.hidden = false
518
+ item.required = true
519
+ }
520
+ if (item.label === '保险备注') {
521
+ item.hidden = false
522
+ }
523
+ } else {
524
+ if (item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额' || item.label === '保险备注') {
525
+ item.hidden = true
526
+ item.required = false
527
+ }
528
+ }
529
+ }
530
+ },
531
+ // 通气点火初始化
532
+ async 'gasReadyEvent' () {
533
+ if (!isEmpty(this.show_data.f_price_id)) {
534
+ let priceList = await this.getPrice(this.show_data.f_price_id)
535
+ this.setLabelValue('气价名称', priceList[0].value)
536
+ }
537
+
538
+ let data = {
539
+ tablename: 't_userfees',
540
+ condition: `f_orgid = '${Vue.user.orgid}' and f_userinfo_id = '${this.show_data.f_userinfo_id}' and f_state = '待执行'`
541
+ }
542
+ let http = new HttpResetClass()
543
+ let res = await http.load(
544
+ 'POST',
545
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
546
+ {data: data},
547
+ {resolveMsg: null, rejectMsg: '保险查询失败!!!'}
548
+ )
549
+ if (res.data.length > 0) {
550
+ this.setLabelValue('待执行保险', '是')
551
+ for (const item of this.show_data.fields) {
552
+ if (item.label === '保费开始日期' || item.label === '是否购买保险' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额' || item.label === '保险备注') {
553
+ item.hidden = true
554
+ item.required = false
555
+ item.value = null
556
+ }
557
+ }
558
+ } else {
559
+ this.setLabelValue('待执行保险', '否')
560
+ for (const item of this.show_data.fields) {
561
+ if (item.label === '是否购买保险' || item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额' || item.label === '保险备注') {
562
+ item.hidden = false
563
+ item.required = true
564
+ }
565
+ }
566
+ }
567
+
568
+ // 初始化显示内容
569
+ let f_is_insure = this.getLableValue('是否购买保险')
570
+ for (const item of this.show_data.fields) {
571
+ if (f_is_insure === '是') {
572
+ if (item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额') {
573
+ item.hidden = false
574
+ item.required = true
575
+ }
576
+ if (item.label === '保险备注') {
577
+ item.hidden = false
578
+ }
579
+ // 本期保费到期时间默认一年
580
+ if (isEmpty(this.selectdata.f_ins_expiration_date)) {
581
+ let f_ins_expiration_date = new Date().setFullYear(new Date().getFullYear() + 1)
582
+ this.setLabelValue("保费结束日期", new Date(f_ins_expiration_date).Format('yyyy-MM-dd'))
583
+ }
584
+ }
585
+ if (f_is_insure === '否') {
586
+ if (item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额' || item.label === '保险备注') {
587
+ item.hidden = true
588
+ item.required = false
589
+ }
590
+ }
591
+ }
592
+ },
593
+ // 合同金额失去焦点
594
+ async 'contractMoneyChange' (index) {
595
+ let data = {
596
+ operator: '+',
597
+ num1: this.show_data.f_contract_money || 0,
598
+ num2: this.getLableValue('追加金额') || 0
599
+ }
600
+ let res = await this.$resetpost(
601
+ `${this.$androidUtil.getProxyUrl()}/rs/logic/compute`,
602
+ {data: data},
603
+ {resolveMsg: null, rejectMsg: '金额计算失败!!!'}
604
+ )
605
+
606
+ this.setLabelValue('应交金额', res.data)
607
+ },
608
+ // ===========================================
609
+ async 'button'() {
610
+ if (this.show_data.button.before) {
611
+ await this[this.show_data.button.before]()
612
+ }
613
+ // 点击重置按钮就重置数据
614
+ if (this.show_data.button.button_name === '重置') {
615
+ this.$dispatch('breakControl', this.selectdata)
616
+ return
617
+ }
618
+
619
+ this.show_data.user = Vue.user
620
+ // this.show_data.user = {"f_show_department_name":"","parentname":"市场部","functions":[{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"客服系统","icon":"/images/lefticon/档案管理.png","hasright":false,"resourcetype":"function","parentid":"27","children":[{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"档案管理","link":"city-manage","hasright":true,"resourcetype":"function","parentid":"212","children":[],"selfid":"231","name":"街道管理","templatename":"functionedit","id":"230","position":"1","fullname":"资源管理.功能模块.客服系统.档案管理.街道管理","fullid":"3.21.27.212.230","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"档案管理","link":"area-manage","hasright":true,"resourcetype":"function","parentid":"212","children":[],"selfid":"219","name":"小区管理","templatename":"functionedit","id":"218","position":"3","fullname":"资源管理.功能模块.客服系统.档案管理.小区管理","fullid":"3.21.27.212.218","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"档案管理","link":"address-manage","hasright":true,"resourcetype":"function","parentid":"212","children":[],"selfid":"33664","name":"地址管理","templatename":"functionedit","id":"33663","position":"5","fullname":"资源管理.功能模块.客服系统.档案管理.地址管理","fullid":"3.21.27.212.33663","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"档案管理","link":"file-user-files","hasright":true,"resourcetype":"function","parentid":"212","children":[],"selfid":"237","name":"用户档案","templatename":"functionedit","id":"236","position":"5","fullname":"资源管理.功能模块.客服系统.档案管理.用户档案","fullid":"3.21.27.212.236","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"档案管理","link":"file-user-files-new","hasright":true,"resourcetype":"function","parentid":"212","f_parentname":"档案管理","children":[],"selfid":"39450","name":"预备户管理","templatename":"functionedit","id":"39449","position":"6","fullname":"资源管理.功能模块.客服系统.档案管理.预备户管理","fullid":"3.21.27.212.39449","tablename":"t_function"}],"selfid":"213","name":"档案管理","templatename":"functionedit","id":"212","position":"2","fullname":"资源管理.功能模块.客服系统.档案管理","fullid":"3.21.27.212","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"客服系统","icon":"/images/lefticon/报建系统.png","hasright":true,"resourcetype":"function","parentid":"27","f_parentname":"客服系统","children":[{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"install-function","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34680","name":"功能业务","templatename":"functionedit","id":"34679","position":"1","fullname":"资源管理.功能模块.客服系统.报建业务.功能业务","fullid":"3.21.27.34673.34679","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"exploration-user","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34686","name":"流程业务","templatename":"functionedit","id":"34685","position":"2","fullname":"资源管理.功能模块.客服系统.报建业务.流程业务","fullid":"3.21.27.34673.34685","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"supervisory-control","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34692","name":"流程监控","templatename":"functionedit","id":"34691","position":"3","fullname":"资源管理.功能模块.客服系统.报建业务.流程监控","fullid":"3.21.27.34673.34691","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"apply-charge-search","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34698","name":"收费明细","templatename":"functionedit","id":"34697","position":"4","fullname":"资源管理.功能模块.客服系统.报建业务.收费明细","fullid":"3.21.27.34673.34697","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"order-apply","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34704","name":"预约申请","templatename":"functionedit","id":"34703","position":"5","fullname":"资源管理.功能模块.客服系统.报建业务.预约申请","fullid":"3.21.27.34673.34703","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"stop-apply","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34710","name":"终止报建","templatename":"functionedit","id":"34709","position":"6","fullname":"资源管理.功能模块.客服系统.报建业务.终止报建","fullid":"3.21.27.34673.34709","tablename":"t_function"}],"selfid":"34674","name":"报建业务","templatename":"functionedit","id":"34673","position":"12","fullname":"资源管理.功能模块.客服系统.报建业务","fullid":"3.21.27.34673","tablename":"t_function"}],"qrcode":"/rs/user/getQRcode?QRCODE=12b2-1631604191812-03447","rolesnames":"营业厅报装,市场部报装,设计部报装,工程部报装,运营部报装,财务部报装,角色监控","roles":"51383,51485,51707,51767,51833,51905,52289","f_sex":"男","f_icon":"tree_user","fullnames":"河南亿星集团实业有限公司.周口市天然气有限公司.市场部.报建测试","dir":"ZhouKou","userid":"12b2-1631604191812-03447","accesstime":"1632214307117","parentid":"46545","f_show_rolestr":"","fullids":"30463.10101.46545.51953.","number":"10101","f_dep_id":"1010101201","f_idnumber":null,"selfid":"51954","templatename":"useredit","logindate":"2021-09-14 18:46:54","id":"51953","state":"在职","tablename":"t_user","deptype":"部门","depids":"46545","loginid":"15","imgid":null,"f_user_telephone":null,"rolestr":"营业厅报装,市场部报装,设计部报装,工程部报装,运营部报装,财务部报装,角色监控","deps":"市场部","loginnum":"0","f_age":null,"resourcetype":"user","orgid":"10101","f_department_name":"周口市场部","ename":"bjcs","deleted":"false","entitytype":"t_user","f_description":null,"loginip":"192.168.66.37","name":"报建测试","position":"1","orgs":"周口市天然气有限公司","haslicense":true,"f_role_name":"营业厅报装 市场部报装 设计部报装 工程部报装 运营部报装 财务部报装 角色监控 ","f_allArea":[],"f_gasman":[{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"15294978548","rolestr":"抄表员","resourcetype":"user","userid":"100814","parentid":"46581","f_department_name":"周口客服部","ename":"100814","password":"1","deleted":"false","entitytype":"t_user","selfid":"100814","name":"高雪荣","templatename":"useredit","id":"100814","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"qrcode":"/rs/user/getQRcode?QRCODE=004","roles":"51959","f_sex":"男","f_icon":"tree_user","userid":"004","accesstime":"1631765198067","parentid":"46581","password":"1","selfid":"59044","templatename":"useredit","id":"59043","state":"在职","tablename":"t_user","loginid":"15","rolestr":"抄表员","resourcetype":"user","f_department_name":"周口客服部","ename":"cbcs","deleted":"false","entitytype":"t_user","loginip":"10.10.10.1","name":"抄表测试","position":"23","haslicense":"true","f_role_name":"抄表员 "},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"18538602709","rolestr":"抄表员","resourcetype":"user","userid":"100462","parentid":"46581","f_department_name":"周口客服部","ename":"100462","password":"1","deleted":"false","entitytype":"t_user","selfid":"100462","name":"刘林静","templatename":"useredit","id":"100462","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"18839409830","rolestr":"抄表员","resourcetype":"user","userid":"100528","parentid":"46581","f_department_name":"周口客服部","ename":"100528","password":"1","deleted":"false","entitytype":"t_user","selfid":"100528","name":"秦春梅","templatename":"useredit","id":"100528","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"13243376616","rolestr":"抄表员","resourcetype":"user","userid":"102935","parentid":"46581","f_department_name":"周口客服部","ename":"102935","password":"1","deleted":"false","entitytype":"t_user","selfid":"102935","name":"石磊","templatename":"useredit","id":"102935","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"18538602706","rolestr":"抄表员","resourcetype":"user","userid":"100818","parentid":"46581","f_department_name":"周口客服部","ename":"100818","password":"1","deleted":"false","entitytype":"t_user","selfid":"100818","name":"白静","templatename":"useredit","id":"100818","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"15294991670","rolestr":"抄表员","resourcetype":"user","userid":"102934","parentid":"46581","f_department_name":"周口客服部","ename":"102934","password":"1","deleted":"false","entitytype":"t_user","selfid":"102934","name":"郭新胜","templatename":"useredit","id":"102934","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"15036438918","rolestr":"抄表员","resourcetype":"user","userid":"103392","accesstime":"1631757950369","parentid":"46581","f_department_name":"周口客服部","ename":"103392","password":"1","deleted":"false","entitytype":"t_user","loginip":"10.10.10.1","selfid":"103392","name":"牛永胜","templatename":"useredit","id":"103392","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"13592232789","rolestr":"抄表员","resourcetype":"user","userid":"100337","parentid":"46581","f_department_name":"周口客服部","ename":"100337","password":"1","deleted":"false","entitytype":"t_user","selfid":"100337","name":"王雪丽","templatename":"useredit","id":"100337","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"17796528119","rolestr":"抄表员","resourcetype":"user","userid":"101021","parentid":"46581","f_department_name":"周口客服部","ename":"101021","password":"1","deleted":"false","entitytype":"t_user","selfid":"101021","name":"张书荣","templatename":"useredit","id":"101021","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"18839409832","rolestr":"抄表员","resourcetype":"user","userid":"100330","parentid":"46581","f_department_name":"周口客服部","ename":"100330","password":"1","deleted":"false","entitytype":"t_user","selfid":"100330","name":"武文平","templatename":"useredit","id":"100330","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"13839441227","rolestr":"抄表员","resourcetype":"user","userid":"100871","parentid":"46581","f_department_name":"周口客服部","ename":"100871","password":"1","deleted":"false","entitytype":"t_user","selfid":"100871","name":"李明磊","templatename":"useredit","id":"100871","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"}],"lics":[]}
621
+ this.show_data.start_activity = this.json_datas.start_activity
622
+ this.show_data.xmlfilename = this.json_datas.workflow_xmlfilename
623
+
624
+ let res = await this.$resetpost(
625
+ // `rs/logic/ApplyProductService`,
626
+ `${this.$androidUtil.getProxyUrl()}/rs/logic/ApplyProductService`,
627
+ {data: this.show_data},
628
+ {resolveMsg: null, rejectMsg: '数据保存失败'}
629
+ )
630
+
631
+ if (this.show_data.button.after) {
632
+ this[this.show_data.button.after]()
633
+ }
634
+ // 返回上层
635
+ this.$dispatch('confirm')
636
+ },
637
+ // 失去焦点出触发事件
638
+ 'onchange' (index) {
639
+ if (this.show_data.defname === '报装申请') {
640
+ if (
641
+ this.show_data.fields[index].label === '街道' ||
642
+ this.show_data.fields[index].label === '小区' ||
643
+ this.show_data.fields[index].label === '楼号(乡/镇)' ||
644
+ this.show_data.fields[index].label === '单元(村)' ||
645
+ this.show_data.fields[index].label === '楼层(组)' ||
646
+ this.show_data.fields[index].label === '门牌号(号)'
647
+ ) {
648
+
649
+ let f_street = this.getLableValue('街道')
650
+ let f_residential_area = this.getLableValue('小区')
651
+ let f_building = this.getLableValue('楼号(乡/镇)')
652
+ let f_building_suffix = f_building ? this.config.f_building_suffix : ''
653
+ let f_unit = this.getLableValue('单元(村)')
654
+ let f_unit_suffix = f_unit ? this.config.f_unit_suffix : ''
655
+ let f_floor = this.getLableValue('楼层(组)')
656
+ let f_floor_suffix = f_floor ? this.config.f_floor_suffix : ''
657
+ let f_room = this.getLableValue('门牌号(号)')
658
+ let f_room_suffix = f_room ? this.config.f_room_suffix : ''
659
+
660
+ let f_address = null
661
+
662
+ let f_address_type = this.show_data.f_address_type
663
+ if (f_address_type === '民用城区') {
664
+ f_address = f_street + f_residential_area + f_building + f_building_suffix + f_unit + f_unit_suffix + f_floor + f_floor_suffix + f_room + f_room_suffix
665
+ }
666
+ if (f_address_type === '民用农村') {
667
+ f_address = f_building + f_unit + f_floor + f_room
668
+ }
669
+ if (f_address_type === '特殊城区') {
670
+ f_address = f_street + f_residential_area
671
+ }
672
+ this.setLabelValue("地址", f_address)
673
+ }
674
+ }
675
+ },
676
+ 'onblur' (index) {},
677
+ 'oninput' (index) {},
678
+ 'initializtionView' () {},
679
+ async 'onchangeModal' (index, fieldIndex) {
680
+ },
681
+ async 'onblurModal' (index, fieldIndex) {
682
+
683
+ },
684
+ async 'oninputModal' (index, fieldIndex) {
685
+
686
+ },
687
+ async 'onetomanydelete' (index, rowIndex) {
688
+
689
+ let http = new HttpResetClass()
690
+
691
+ let res = await http.load(
692
+ 'DELETE',
693
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/${this.show_data.onetomany[index].tables[0]}/${this.show_data.onetomany[index].rows[rowIndex].id}`,
694
+ null,
695
+ {resolveMsg: null, rejectMsg: '删除失败!!!'}
696
+ )
697
+ res = await this.$resetpost(
698
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/t_apply`,
699
+ this.show_data
700
+ )
701
+ this.breakControl()
702
+ },
703
+ async 'onetomanyupdate' (index, rowIndex) {
704
+ let data = this.show_data.onetomany[index].rows[rowIndex]
705
+
706
+ this.show_data.onetomany[index].fields.forEach(item => {
707
+ data[item.field] = item.value
708
+ })
709
+ let res = await this.$resetpost(
710
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/${this.show_data.onetomany[index].tables[0]}`,
711
+ data
712
+ )
713
+ res = await this.$resetpost(
714
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/t_apply`,
715
+ this.show_data
716
+ )
717
+ this.breakControl()
718
+ },
719
+ async 'onetomanyadd' (index) {
720
+ let data = {
721
+ f_process_id : this.show_data.f_process_id,
722
+ f_operator_id: Vue.user.id,
723
+ f_operator: Vue.user.name,
724
+ f_operation_date: new Date().Format('yyyy-MM-dd HH:mm:ss'),
725
+ f_orgid: Vue.user.orgid,
726
+ f_orgname: Vue.user.orgs
727
+ }
728
+ this.show_data.onetomany[index].fields.forEach(item => {
729
+ data[item.field] = item.value
730
+ })
731
+ let res = await this.$resetpost(
732
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/${this.show_data.onetomany[index].tables[0]}`,
733
+ data
734
+ )
735
+ res = await this.$resetpost(
736
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/t_apply`,
737
+ this.show_data
738
+ )
739
+ this.breakControl()
740
+ },
741
+ 'onbutchange' (index) {
742
+
743
+ },
744
+ 'onbutblur' (index) {
745
+
746
+ },
747
+ 'onbutinput' (index) {
748
+
749
+ }
750
+ },
751
+ watch: {
752
+ }
753
+ }
754
+ </script>
755
+ <style scoped>
756
+ </style>