apply-clients 5.0.35-84 → 5.0.35-85

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 (21) hide show
  1. package/package.json +1 -1
  2. package/src/components/app_apply/ApplyToDoList.vue +2820 -2820
  3. package/src/components/app_apply/Gongcheng.vue +3631 -3631
  4. package/src/components/app_apply/ServiceControl.vue +740 -740
  5. package/src/components/app_apply/ezhou/ServiceView.vue +808 -808
  6. package/src/components/product/Common/PrintBill.vue +121 -121
  7. package/src/components/product/EngineeringManagement/EngineerUpload.vue +304 -304
  8. package/src/components/product/EngineeringManagement/EngineeringManagement.vue +137 -137
  9. package/src/components/product/EngineeringManagement/EngineeringSelect.vue +586 -586
  10. package/src/components/product/EngineeringSupervisory/EngineeringApplyStopInfo.vue +281 -281
  11. package/src/components/product/EngineeringSupervisory/EngineeringSupervisoryList.vue +340 -340
  12. package/src/components/product/EngineeringSupervisory/EngineeringSupervisoryServiceControl.vue +490 -490
  13. package/src/components/product/Function/InstallInfoSelect.vue +255 -255
  14. package/src/components/product/Function/functions/BuyerMessage.vue +512 -512
  15. package/src/components/product/Function/functions/InstallFee.vue +1154 -1154
  16. package/src/components/product/Process/ExplorationSelect.vue +640 -640
  17. package/src/components/product/Process/Processes/Service/ApplyChargeSearch.vue +392 -392
  18. package/src/components/product/Process/Processes/Service/ServiceControl.vue +2155 -2155
  19. package/src/components/product/Supervisory/SupervisoryList.vue +409 -409
  20. package/src/components/product/stopInfo/ApplyStopInfo.vue +281 -281
  21. package/src/ezhouAndroid.js +48 -48
@@ -1,740 +1,740 @@
1
- <template>
2
- <div>
3
- <work-busy :is-busy="loading"></work-busy>
4
- <service-view-app v-ref:service_show :data.sync="show_data.ppp" :model.sync="selectmodel" v-if="showview"></service-view-app>
5
- </div>
6
- <modal :show.sync="stop_show" v-ref:modal stop_show="false">
7
- <header slot="modal-header" class="modal-header">
8
- <button type="button" class="close" @click="closeback"><span>&times;</span></button>
9
- <h4 class="modal-title">终止备注</h4>
10
- </header>
11
- <article slot="modal-body" class="modal-body">
12
- <div class="from-group">
13
- <input type="text" class="form-control" v-model="models.f_stop_remarks"/>
14
- </div>
15
- </article>
16
- <footer slot="modal-footer" class="modal-footer">
17
- <button v-show="stop_show" type="button" class="btn btn-default" @click='stopapplys'>确认</button>
18
- </footer>
19
- </modal>
20
- <modal :show.sync="apply_show" v-ref:modal apply_show="false" >
21
- <header slot="modal-header" class="modal-header">
22
- <button type="button" class="close" @click="closeapply"><span>&times;</span></button>
23
- <h4 class="modal-title">转单报建</h4>
24
- </header>
25
- <article slot="modal-body" class="modal-body">
26
- <div class="from-group">
27
- <v-select style="min-width: 80%;"
28
- placeholder='请选择'
29
- :options="applytypes"
30
- :search="false"
31
- v-model="apply_type"
32
- :value.sync="apply_type"
33
- close-on-select>
34
- </v-select>
35
- </div>
36
- </article>
37
- <footer slot="modal-footer" class="modal-footer">
38
- <button v-show="apply_show" type="button" class="btn btn-default" @click='addactive()'>确认</button>
39
- </footer>
40
- </modal>
41
- </template>
42
- <script>
43
- import co from 'co'
44
- import Vue from 'vue'
45
- import {HttpResetClass} from 'vue-client'
46
- import * as Util from "../Util";
47
- export default {
48
- title: '报建流程业务控制层',
49
- props: ['selectdata','selectmodel','show_data'],
50
- data () {
51
- return {
52
- model:'',
53
- delteLocal:false,
54
- loading:false,
55
- data:null, // 数据库数据,json配置文件数据的数据集合
56
- json_datas:null, // Json配置文件集合
57
- showview:false, // 控制显示service-view组件
58
- // 给view层显示的数据
59
- department_search:null, // 当前部门下所有人
60
- stop_show:false, // 终止备注开关
61
- apply_show:false, // 转单报建开关
62
- apply_type:'',
63
- applytypes:[{label:"散户报装",value:"报装申请"},{label:"集体报装",value:"集体报装申请"}],// 报建类型
64
- models: {
65
- f_date: Util.toStandardTimeString(),
66
- f_department: Vue.user.f_parentname,
67
- f_operator: Vue.user.name,
68
- f_filiale: Vue.user.f_fengongsi
69
- },
70
- models2:{}
71
- }
72
- },
73
- methods: {
74
- // 转到报建
75
- async addactive(){
76
- this.selectdata.applyid = this.selectdata.id
77
- // this.$resetpost('rs/logic/stopapply', {data: this.selectdata})
78
- console.log(this.apply_type[0])
79
- this.$workflow_vue.start_activity = this.apply_type[0]
80
- let http = new HttpResetClass()
81
- let res = await http.load('POST',this.$androidUtil.getProxyUrl() +'/rs/logic/ApplyGetProcessID',{data:{filename:this.$workflow_vue.workflow_xmlfilename,start_activity:this.$workflow_vue.start_activity}}, {resolveMsg: null, rejectMsg: '获取流程ID失败,请联系开发人员'})
82
- let data = {
83
- defname: this.$workflow_vue.start_activity,
84
- f_process_id: res.data.f_process_id,
85
- f_apply_date: Util.toStandardTimeString(),
86
- f_product_id: res.data.f_product_id,
87
- start_activity:this.$workflow_vue.start_activity,
88
- f_user_type:this.models2.f_user_type,
89
- f_user_name:this.models2.f_user_name,
90
- f_phone:this.models2.f_phone,
91
- f_area:this.models2.f_area,
92
- f_street:this.models2.f_street,
93
- f_residential_area:this.models2.f_residential_area,
94
- f_building:this.models2.f_building,
95
- f_unit:this.models2.f_unit,
96
- f_floor:this.models2.f_floor,
97
- f_room:this.models2.f_room,
98
- f_address:this.models2.f_address,
99
- f_idnumber:this.models2.f_social_credit_code,
100
- f_apply_source:this.models2.f_apply_source,
101
- f_sub_state:'未完工',
102
- user:Vue.user
103
- }
104
- await http.load('POST',this.$androidUtil.getProxyUrl() +'/rs/logic/newaddApplyproduct',{data:data}, {resolveMsg: null, rejectMsg: '转发失败,请联系开发人员'})
105
- var flag = false
106
- if (this.data.defname == '合同审核') {
107
- flag = true
108
- let http = new HttpResetClass()
109
- let data = {
110
- tablename: 't_singlevalue',
111
- condition: `name = '合同编号' and f_filialeids = '${Vue.user.f_orgids}'`
112
- }
113
- let res = await http.load('POST', this.$androidUtil.getProxyUrl() +'/rs/sql/applysingleTable', {data: data}, {
114
- resolveMsg: null,
115
- rejectMsg: "获取合同编号失败"
116
- })
117
- if (this.contract != res.data[0].value && !this.selectdata.f_contract_number) {
118
- this.$showMessage("合同编号已经被使用,请按F5刷新页面后重新登记")
119
- return
120
- }
121
- }
122
- let model = this.models2
123
- let url = this.$androidUtil.getProxyUrl() +'/rs/logic/ApplyProductService'
124
- let requestData = {
125
- tables: this.data.tables, model: model
126
- }
127
- requestData.start_activity = '踏勘'
128
- requestData.loginUser = Vue.user
129
- requestData.workflow_xmlfilename = this.$workflow_vue.workflow_xmlfilename
130
- requestData.model.f_sub_state = '未完工'
131
- console.log('即将发送请求url=>' + url + ',参数=>' + JSON.stringify(requestData))
132
- res = await http.load('POST', url, {data: requestData}, {resolveMsg: null, rejectMsg: '数据保存失败'})
133
- console.log("service处理完成返回数据:", JSON.stringify(res.data))
134
- if(res.data.msg=="地址重复,请修改后重新提交"){
135
- this.$showMessage(res.data.msg)
136
- }
137
- if (res.data.code == 200) {
138
- // flag 为合同编号更新标志
139
- if (flag) {
140
- let http = new HttpResetClass()
141
- let data = {
142
- tablename: 't_singlevalue',
143
- condition: `name = '合同编号' and f_filialeids = '${Vue.user.f_orgids}'`,
144
- value: (Number(this.contract) + 1) + ''
145
- }
146
- await http.load('POST', this.$androidUtil.getProxyUrl() +'/rs/logic/updatesinglevalue', {data: data}, {
147
- resolveMsg: null,
148
- rejectMsg: "获取合同编号更新失败"
149
- })
150
- }
151
- this.showview = false
152
- // 特殊处理
153
- this.special(model)
154
- this.$dispatch('close')
155
- this.initializtion()
156
- } else {
157
- if (res.data.msg) {
158
- this.$showMessage(res.data.msg)
159
- }
160
- }
161
-
162
- this.apply_show = false
163
- },
164
- // 终止报建
165
- async stopapplys () {
166
- this.models = Object.assign({}, this.selectdata, this.models)
167
- this.models.id = null
168
- this.models.applyid = this.selectdata.id
169
- this.models.f_operat_type = '终止报建'
170
- this.models.f_state = '有效'
171
- this.models.f_describe = this.selectdata.f_user_name + '已终止报建'
172
- let data ={
173
- tablename:'t_project_stop',
174
- parameters:this.models
175
- }
176
- let http = new HttpResetClass()
177
- await http.load('POST',this.$androidUtil.getProxyUrl() + '/rs/logic/save', {data:data},{resolveMsg: null, rejectMsg: "添加失败"})
178
- await http.load('POST',this.$androidUtil.getProxyUrl() +'/rs/logic/stopapply', {data:this.models},{resolveMsg: null, rejectMsg: "终止失败"})
179
- this.closeback()
180
- this.$dispatch('close')
181
- },
182
- // 关闭终止备注弹框
183
- closeback() {
184
- this.stop_show = false
185
- },
186
- // 关闭报建弹框
187
- closeapply() {
188
- this.apply_show = false
189
- },
190
- // 特殊化处理
191
- saveCallBack(jo){
192
- console.log(JSON.stringify(jo))
193
- console.log("hhhhhhhhhhhhhhhhh")
194
- console.log(JSON.stringify(jo))
195
- if(jo.state == 'ok'){
196
- console.log("hhhhhhhhhhhhhhhhh2")
197
- let res = JSON.parse(jo.result)
198
- console.log("hhhhhhhhhhhhhhhhh3")
199
- if(res.code = 200){
200
- this.showview = false
201
- // 如果需要删除本地记录则去删除
202
- console.log("hhhhhhhhhhhhhhhhh4")
203
- if(this.delteLocal){
204
- console.log("hhhhhhhhhhhhhhhhh5")
205
- this.deleteLocalApply(this.model)
206
- }
207
- console.log("hhhhhhhhhhhhhhhhh6")
208
- // 特殊处理
209
- this.special(this.model)
210
- console.log("hhhhhhhhhhhhhhhhh7")
211
- this.loading=false
212
- this.$dispatch('close')
213
- console.log("hhhhhhhhhhhhhhhhh8")
214
- this.initializtion()
215
- console.log("hhhhhhhhhhhhhhhhh9")
216
- this.$showMessage('操作成功')
217
- }else{
218
- this.$showMessage('操作失败,原因:' + res.data.msg)
219
- }
220
- }
221
-
222
- },
223
- async special(model){
224
- console.log('进入async special方法')
225
- if(this.data.distribute_async && model.button.button_name==='下发'){
226
- // 流程异步处理
227
- let http = new HttpResetClass();
228
- // let res = await http.load('POST',this.$androidUtil.getProxyUrl() + '/rs/logic/syncprocess',{data:{model:model,loginUser:this.$login.f}}, {resolveMsg: null, rejectMsg: '流程异步下发据保存失败'})
229
- let res = await http.load('POST',this.$androidUtil.getProxyUrl() + '/rs/logic/syncprocess',{data:{model:model,loginUser: Vue.user}}, {resolveMsg: null, rejectMsg: '流程异步下发据保存失败'})
230
- console.log("流程的异步处理:",JSON.stringify(res.data))
231
- }
232
- if(this.data.distribute_async && model.button.button_name==='完成'){
233
- // 强制结束
234
- let http = new HttpResetClass();
235
- let res = await http.load('POST',this.$androidUtil.getProxyUrl() + '/rs/logic/stoprocess',{data:{model:model,loginUser: Vue.user}}, {resolveMsg: null, rejectMsg: '流程异步完成数据保存失败'})
236
- // let res = await http.load('POST',this.$androidUtil.getProxyUrl() + '/rs/logic/stoprocess',{data:{model:model,loginUser:this.$login.f}}, {resolveMsg: null, rejectMsg: '流程异步完成数据保存失败'})
237
- console.log("流程的异步处理:",JSON.stringify(res.data))
238
- }
239
- },
240
- // 组件初始化操作
241
- refurbish(){
242
- if(!this.$workflow_vue){
243
- this.$showMessage('流程配置文件不存在,请反馈系统管理员')
244
- return
245
- }
246
- console.log('内存中的流程配置文件数据=>' + JSON.stringify(this.$workflow_vue))
247
- this.json_datas=this.$workflow_vue
248
- let sum = 0
249
- let jsonData ={}
250
- for(let i=0;i<this.json_datas.activitys.length;i++){
251
- if(this.selectdata.defname==this.json_datas.activitys[i].title){
252
- jsonData = this.json_datas.activitys[i]
253
- sum++
254
- }
255
- }
256
- console.log('sum=>' + sum)
257
- if(sum==1){
258
- this.data =null
259
- this.data = jsonData
260
- console.log('调用initializtion前的this.data=>' + JSON.stringify(this.data))
261
- this.initializtion()
262
-
263
- } else if(sum==0) {
264
- this.$showMessage(`没有在JSON配置文件中找到活动名为:(${this.selectdata.defname})的节点配置`)
265
- } else {
266
- this.$showMessage(`在JSON配置文件中找到活动名为:(${this.selectdata.defname})的节点配置:${sum}个`)
267
- }
268
- },
269
- // json配置数据处理 比如下拉框的options
270
- async initializtion() {
271
-
272
- console.log('进入initializtion()方法')
273
- console.log('接收到的selectdata有无变化'+JSON.stringify(this.selectdata))
274
- console.log('接收到的selectdata有无actorexpression'+JSON.stringify(this.selectdata.actorexpression))
275
- // 下发人 options 处理,options初始化
276
- if(this.selectdata.actorexpression){
277
- //截取actorexpression
278
- let http = new HttpResetClass()
279
- var url = this.$androidUtil.getProxyUrl() + '/rs/search'
280
- console.log('即将请求后台获取下发人员,url=>' + url)
281
- // R(安装员报装)
282
- console.log("777777776"+JSON.stringify(this.selectdata.actorexpression))
283
- let res
284
- if (this.selectdata.actorexpression.startsWith('R')) {
285
- let actorexpression = this.selectdata.actorexpression
286
- //let actorexpression="R(安装员报装)"
287
- let actor = actorexpression.substring(actorexpression.indexOf('(') + 1, actorexpression.indexOf(')'))
288
- console.log("看看角色" + JSON.stringify(actor))
289
- res= await http.load('POST', url, {
290
- source: `tool.getChildrenOfResName($${actor}$)`,
291
- userid: Vue.user.id
292
- }, {resolveMsg: null, rejectMsg: '获取当前部门人员失败'})
293
- }else{
294
- res = await http.load('POST', url, this.selectdata.actorexpression, {resolveMsg: null, rejectMsg: '获取当前部门人员失败'})
295
- }
296
- console.log("请求后台获取下发人员结果转换=>" + JSON.stringify(res))
297
- let jsonString = JSON.stringify(res.data)
298
- let jsonArray = []
299
- if(jsonString.startsWith("{")){
300
- jsonArray.push(res.data)
301
- res.data = jsonArray
302
- }
303
- this.department_search = res.data
304
- }
305
-
306
- // data 填充 selectdata
307
- console.log('即将合并data与selectdata,selectdata数据=>' + JSON.stringify(this.selectdata))
308
- this.data = Object.assign({},this.data, this.selectdata)
309
- console.log('this.data的值=>' + JSON.stringify(this.data))
310
-
311
- // 初始化 fields
312
- console.log('this.data.fields.length=>' + this.data.fields.length)
313
- for(let i=0;i<this.data.fields.length;i++){
314
- // 如果selectdata有这些key,则把selectdata的value赋值给data的value
315
- if(this.selectdata[this.data.fields[i].field]){
316
- this.data.fields[i].value = this.selectdata[this.data.fields[i].field]
317
- }
318
- // 如果配置类型为select,优先从参数列表获取options
319
- if(this.data.fields[i].type == 'select'){
320
- console.log('进入下拉框参数获取方法,参数名称=>' + this.data.fields[i].label)
321
- console.log('$appdata中的缓存参数与单值=>' + JSON.stringify(this.$appdata))
322
- var param = this.$appdata.getParam(this.data.fields[i].label)
323
- console.log(param)
324
- if (param){
325
- this.data.fields[i].options = param
326
- }
327
-
328
- }
329
- // 设置用户类型
330
- if (this.data.fields[i].label == '用户类型') {
331
- this.data.fields[i].options = [{label: '民用', value: '民用'},{label: '非民用', value: '非民用'}]
332
- }
333
- // 获取县区
334
- if (this.data.fields[i].label == '县/区') {
335
- let http = new HttpResetClass()
336
- let area = await http.load('post',`${this.$androidUtil.getProxyUrl()}/rs/sql/applysingleTable`, {
337
- data: {
338
- // items: 'f_bill_url,f_url_code',
339
- tablename: 't_pcd',
340
- condition: `f_filialeids = '${Vue.user.f_orgids}'`
341
- }
342
- }, {resolveMsg: null, rejectMsg: null})
343
- let rs = []
344
- for (let i = 0; i < area.data.length; i++) {
345
- let temp = {
346
- label: area.data[i].f_pcd,
347
- value: area.data[i].f_pcd
348
- }
349
- rs.push(temp)
350
- }
351
- this.data.fields[i].options = [{label: '全部', value: ''}, ...rs]
352
- }
353
- }
354
- // 初始化 buttons_fields
355
- for(let i=0;i<this.data.buttons.length;i++){
356
- if(this.data.buttons[i].button_fields){
357
- for(let j=0;j<this.data.buttons[i].button_fields.length;j++){
358
- // 如果selectdata有这些key,则把selectdata的value赋值给data的value
359
- if(this.selectdata[this.data.buttons[i].button_fields[j].field]){
360
- this.data.buttons[i].button_fields[j].value = this.selectdata[this.data.buttons[i].button_fields[j].field]
361
- }
362
- // 如果配置类型为select,优先从参数列表获取options
363
- if(this.data.buttons[i].button_fields[j].type==='select'&&this.$appdata.getParam(this.data.buttons[i].button_fields[j].label)){
364
- console.log("这里是给select赋值的地方"+JSON.stringify(this.data.buttons[i].button_fields[j]))
365
- console.log("参数列表获取到的"+JSON.stringify(this.$appdata.getParam(this.data.buttons[i].button_fields[j].label)))
366
- this.data.buttons[i].button_fields[j].options=this.$appdata.getParam(this.data.buttons[i].button_fields[j].label)
367
- }
368
- // 下发特殊配置
369
- if(this.data.buttons[i].button_name==='下发'){
370
- if(this.data.buttons[i].button_fields.length===1){
371
- // value初始化
372
- // if(this.department_search){
373
- console.log("看看111department_search"+JSON.stringify(this.department_search))
374
-
375
- if(this.selectdata[this.data.buttons[i].button_fields[0].field]){
376
-
377
- for(let k=0;k<this.department_search.length;k++){
378
- // 将id转换为name
379
- if(Number(this.department_search[k].id) === Number(this.selectdata[this.data.buttons[i].button_fields[0].field])){
380
- this.data.buttons[i].button_fields[0].value=this.department_search[k].name
381
- }
382
- }
383
- }
384
-
385
- if(this.department_search){
386
- let array = []
387
- console.log("看看department_search"+JSON.stringify(this.department_search))
388
- this.department_search.forEach((paper)=>{
389
- array.push({label:paper.name,value:paper.name})
390
- })
391
- this.data.buttons[i].button_fields[0].options = array
392
- }
393
- }else {
394
- this.$showMessage("下发按钮必须满足 当且仅当一个字段")
395
- }
396
- }
397
- }
398
- }
399
- }
400
- // 消除双向绑定,避免子组件(显示层)数据更改,父组件(控制层)也更改
401
- let temp = JSON.parse(JSON.stringify(this.data))
402
- // 退回原因展示
403
- if(this.selectdata.f_back_reason){
404
- temp['back_reason'] = this.selectdata.f_back_reason
405
- }
406
- console.log('即将给show_data赋值temp=>' + JSON.stringify(temp))
407
- console.log(JSON.stringify(this.show_data.ppp))
408
- if (JSON.stringify(this.show_data.ppp)=='{}'){
409
- this.show_data.ppp = temp
410
- console.log("重新赋值")
411
-
412
- }else{
413
- console.log("不重新赋值")
414
- }
415
- console.log('initializtion()方法结束,showview')
416
- this.showview = true
417
- },
418
- deleteLocalApply(model){
419
- console.log(`前台上传完成,开始删除本地报建工单`)
420
- this.$androidUtil.bzLogic('deleteApply', {data:model})
421
- }
422
- },
423
- events: {
424
- 'checkboxSelectControl'(index,index2){
425
- if(this.$refs.service_show.data.fields[index].label=="施工提交资料"){
426
- for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
427
- if(this.$refs.service_show.data.fields[i].label=="施工已上传文件"){
428
- //增加和删除框中的内容
429
- if (this.$refs.service_show.data.fields[i].value==undefined){
430
- this.$refs.service_show.data.fields[i].value=''
431
- }
432
- if(this.$refs.service_show.data.fields[index].items[index2].value == false){
433
- this.$refs.service_show.data.fields[i].value+=this.$refs.service_show.data.fields[index].items[index2].label+" ";
434
- // this.$refs.service_show.data.fields[i].value=this.$refs.service_show.data.fields[i].value==undefined?'':this.$refs.service_show.data.fields[i].value+this.$refs.service_show.data.fields[index].items[index2].label+" ";
435
- this.$refs.service_show.data.fields[index].items[index2].value=true;
436
- }else{
437
- let deleteValue = this.$refs.service_show.data.fields[index].items[index2].label;
438
- let values =this.$refs.service_show.data.fields[i].value;
439
- let result = values.split(" ").filter((item)=>{
440
- return item!=deleteValue;
441
- }).join(" ")
442
- this.$refs.service_show.data.fields[i].value =result;
443
- this.$refs.service_show.data.fields[index].items[index2].value=false;
444
- }
445
- //}
446
- }
447
- }
448
- }
449
- if(this.$refs.service_show.data.fields[index].label=="验收提交资料"){
450
- for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
451
-
452
- if(this.$refs.service_show.data.fields[i].label=="验收已上传文件"){
453
- //增加和删除框中的内容
454
- if(this.$refs.service_show.data.fields[index].items[index2].value == false){
455
- this.$refs.service_show.data.fields[i].value+=this.$refs.service_show.data.fields[index].items[index2].label+" ";
456
- // this.$refs.service_show.data.fields[i].value=this.$refs.service_show.data.fields[i].value==undefined?'':this.$refs.service_show.data.fields[i].value+this.$refs.service_show.data.fields[index].items[index2].label+" ";
457
- this.$refs.service_show.data.fields[index].items[index2].value=true;
458
- }else{
459
- let deleteValue = this.$refs.service_show.data.fields[index].items[index2].label;
460
- let values =this.$refs.service_show.data.fields[i].value;
461
- let result = values.split(" ").filter((item)=>{
462
- return item!=deleteValue;
463
- }).join(" ")
464
- this.$refs.service_show.data.fields[i].value =result;
465
- this.$refs.service_show.data.fields[index].items[index2].value=false;
466
- }
467
- //}
468
- }
469
- }
470
- }
471
- this.$refs.service_show.update()
472
- },
473
- // 任意select选中时触发事件
474
- async 'select_cascade'(index){
475
- // this.$refs.service_show.model_temp // 子业务显示组件
476
- // 级联操作示例:
477
- /*
478
- if(this.$refs.service_show.model_temp.activitys.ields[index].label==='报建类型'){
479
- for(let i=0;i<this.$refs.service_show.model_temp.activitys.fields.length;i++){
480
- // 控制设置级联
481
- // 源select所选的值 this.$refs.service_show.model_temp.activitys.fields[index].value
482
- if(this.$refs.service_show.model_temp.activitys.fields[i].label==='级联测试2'){
483
- this.$refs.service_show.model_temp.activitys.fields[i].options=[
484
- {label:'级联选项1',value:'级联选项1'},{label:'级联选项2',value:'级联选项2'},{label:'级联选项3',value:'级联选项3'}
485
- ]
486
- }
487
- }
488
- }
489
- */
490
- if (this.$refs.service_show.data.fields[index].label === '县/区') {
491
- let temp = this.$refs.service_show.data.fields[index].value
492
- console.log('==============================县/区:' + temp)
493
- for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
494
- // 控制设置级联
495
- // 源select所选的值 this.$refs.service_show.data.activitys.fields[index].value
496
- if (this.$refs.service_show.data.fields[i].label === '街道名称') {
497
- await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/sql/applysingleTable`, {
498
- data: {
499
- tablename: 't_street',
500
- condition: `f_filialeids = '${Vue.user.f_orgids}' and f_pcd='${temp}'`
501
- }
502
- }, {resolveMsg: null, rejectMsg: null}).then(res => {
503
- let streetrs = []
504
- for (let i = 0; i < res.data.length; i++) {
505
- let temp = {
506
- label: res.data[i].f_street,
507
- value: res.data[i].f_street
508
- }
509
- streetrs.push(temp)
510
- }
511
- this.$refs.service_show.data.fields[i].options = [{label: '全部', value: ''}, ...streetrs]
512
- // console.log('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~option:', this.$refs.service_show.data.fields[i].options)
513
- this.$refs.service_show.update()
514
- })
515
- }
516
- }
517
- }
518
- if (this.$refs.service_show.data.fields[index].label === '街道名称') {
519
- let temp = this.$refs.service_show.data.fields[index].value
520
- console.log('=============================街道:' + temp)
521
- for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
522
- // 控制设置级联
523
- // 源select所选的值 this.$refs.service_show.data.activitys.fields[index].value
524
- if (this.$refs.service_show.data.fields[i].label === '小区名称') {
525
- await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/sql/applysingleTable`, {
526
- data: {
527
- tablename: 't_area',
528
- condition: `f_filialeids = '${Vue.user.f_orgids}' and f_street='${temp}'`
529
- }
530
- }, {resolveMsg: null, rejectMsg: null}).then(res => {
531
- let arears = []
532
- for (let i = 0; i < res.data.length; i++) {
533
- let temp = {
534
- label: res.data[i].f_residential_area,
535
- value: res.data[i].f_residential_area
536
- }
537
- arears.push(temp)
538
- }
539
- this.$refs.service_show.data.fields[i].options = [{label: '全部', value: ''}, ...arears]
540
- // console.log('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~option:', this.$refs.service_show.data.fields[i].options)
541
- this.$refs.service_show.update()
542
- })
543
- }
544
- }
545
- }
546
- // 合成地址
547
- if (
548
- this.$refs.service_show.data.fields[index].label === '县/区' ||
549
- this.$refs.service_show.data.fields[index].label === '街道名称' ||
550
- this.$refs.service_show.data.fields[index].label === '小区名称' ||
551
- this.$refs.service_show.data.fields[index].label === '楼号' ||
552
- this.$refs.service_show.data.fields[index].label === '单元号' ||
553
- this.$refs.service_show.data.fields[index].label === '楼层' ||
554
- this.$refs.service_show.data.fields[index].label === '门牌号'
555
- ) {
556
- console.log('即将合成地址')
557
- var address = ''
558
- for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
559
- // 控制设置级联
560
- // 源select所选的值 this.$refs.service_show.data.activitys.fields[index].value
561
- // xxx xx xxx
562
- if (this.$refs.service_show.data.fields[i].label === '县/区' && this.$refs.service_show.data.fields[i].value) {
563
- address += this.$refs.service_show.data.fields[i].value
564
- }
565
- if (this.$refs.service_show.data.fields[i].label === '街道名称' && this.$refs.service_show.data.fields[i].value) {
566
- address += this.$refs.service_show.data.fields[i].value
567
- }
568
- if (this.$refs.service_show.data.fields[i].label === '小区名称' && this.$refs.service_show.data.fields[i].value) {
569
- address += this.$refs.service_show.data.fields[i].value
570
- }
571
- if (this.$refs.service_show.data.fields[i].label === '楼号' && this.$refs.service_show.data.fields[i].value) {
572
- address += this.$refs.service_show.data.fields[i].value
573
- }
574
- if (this.$refs.service_show.data.fields[i].label === '楼号' && this.$refs.service_show.data.fields[i].value) {
575
- address += '栋'
576
- }
577
- if (this.$refs.service_show.data.fields[i].label === '单元号' && this.$refs.service_show.data.fields[i].value) {
578
- address += '-' +this.$refs.service_show.data.fields[i].value
579
- }
580
- if (this.$refs.service_show.data.fields[i].label === '单元号' && this.$refs.service_show.data.fields[i].value) {
581
- address += '单元'
582
- }
583
- if (this.$refs.service_show.data.fields[i].label === '楼层' && this.$refs.service_show.data.fields[i].value) {
584
- address += '-' +this.$refs.service_show.data.fields[i].value
585
- }
586
- if (this.$refs.service_show.data.fields[i].label === '楼层' && this.$refs.service_show.data.fields[i].value) {
587
- address += '层'
588
- }
589
- if (this.$refs.service_show.data.fields[i].label === '门牌号' && this.$refs.service_show.data.fields[i].value) {
590
- address += '-' +this.$refs.service_show.data.fields[i].value
591
- }
592
- if (this.$refs.service_show.data.fields[i].label === '门牌号' && this.$refs.service_show.data.fields[i].value) {
593
- address += '室'
594
- }
595
-
596
- }
597
- console.log('获取到的address=>' + address)
598
- // 数据获取完毕时放入地址text
599
- for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
600
- if (this.$refs.service_show.data.fields[i].label === '地址' || this.$refs.service_show.data.fields[i].label === '报装地址') {
601
- this.$refs.service_show.data.fields[i].value = address
602
- console.log('修改fields[i].value后的值=>' + this.$refs.service_show.data.fields[i].value)
603
- }
604
- }
605
- this.$refs.service_show.update()
606
- }
607
- if (this.$refs.service_show.data.fields[index].label == '用户类型'){
608
- if(this.$refs.service_show.data.fields[index].value == '非民用'){
609
- for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
610
- if (this.$refs.service_show.data.fields[i].label === '小区名称') {
611
- this.$refs.service_show.data.fields[i].required=false;
612
- }
613
- }
614
- }else{
615
- for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
616
- if (this.$refs.service_show.data.fields[i].label === '小区名称') {
617
- this.$refs.service_show.data.fields[i].required=true;
618
- }
619
- }
620
- }
621
- }
622
- },
623
- // 获取view层button事件
624
- async 'button'(model){
625
- if (this.data.defname==='踏勘'){
626
- if (model.button.button_name === '终止'){
627
- this.stop_show=true
628
- return
629
- }
630
- }
631
- this.loading=true
632
- console.log('进入async button事件方法')
633
- var delteLocal = true
634
- // 点击保存与重置按钮不需要修改本地工单状态
635
- if(model.button.button_name == '保存' || model.button.button_name==='重置'){
636
- delteLocal = false
637
- }
638
- // 点击重置按钮就重置数据
639
- if(model.button.button_name==='重置'){
640
- this.initializtion()
641
- return
642
- }
643
- if(model.button.button_name==='下发'){
644
- let person_name = model.button.button_fields[this.show_data.buttons[model.button.button_index].button_fields[0].field]
645
- for(let i=0;i<this.department_search.length;i++){
646
- // 找到人名为person_name 的人,然后把人名换成id
647
- if(this.department_search[i].name === person_name){
648
- model.button.button_fields[this.show_data.buttons[model.button.button_index].button_fields[0].field] = this.department_search[i].id
649
- }
650
- }
651
- }
652
- console.log("button事件接收参数model=>" + JSON.stringify(model))
653
- model=Object.assign({},this.selectdata,model)
654
- console.log('合并selectdata与model后的model=>' + JSON.stringify(model))
655
- if (this.data.defname==='踏勘'&&(model.button.button_name === '提交'||model.button.button_name === '通气')){
656
- this.loading=false
657
- this.apply_show=true
658
- this.models2 = model
659
- return
660
- }
661
- let http = new HttpResetClass()
662
- if (this.data.defname === '通气转单'&& model.button.button_name === '提交'){
663
- model.f_sub_state = '完工'
664
- }else {
665
- model.f_sub_state = '未完工'
666
- }
667
- var url = this.$androidUtil.getProxyUrl() + '/rs/logic/ApplyProductService'
668
- // let res = await http.load('POST',url,{data:data}, {resolveMsg: null, rejectMsg: null})
669
- // // 先判断是否包含code,如果服务端异常,可能不存在code
670
- // console.log("service处理完成返回数据=>" + res)
671
- // if(!res.code){
672
- // console.log("service处理完成返回数据=>" + res)
673
- // this.$showMessage('操作异常,原因:' + res)
674
- // }else{
675
- // console.log("service处理完成返回数据=>" + JSON.stringify(res))
676
- // if(res.code = 200){
677
- // this.showview = false
678
- // // 特殊处理
679
- // this.special(model)
680
- // this.$dispatch('close')
681
- // this.initializtion()
682
- // this.$showMessage('操作成功')
683
- // }else{
684
- // this.$showMessage('操作失败,原因:' + res.data.msg)
685
- // }
686
- // }
687
- let btn = btn_operate(this, url, http, model, delteLocal)
688
- co(btn)
689
- }
690
- },
691
- watch:{
692
- // 监听selectdata的变化
693
- 'selectdata'() {
694
- console.log('进入selectdata改变事件data=>' + JSON.stringify(this.selectdata))
695
- this.refurbish()
696
- },
697
- deep:true
698
- }
699
- }
700
-
701
- let btn_operate = function * (self, url, http, model, delteLocal) {
702
- self.delteLocal=delteLocal
703
- console.log("model的信息",model)
704
- // 下发,提交,保存,退回都在后台处理
705
- console.log('即将请求后台url=>' + url)
706
- model.employeetemplate=''
707
- self.model=model
708
- console.log(JSON.stringify(self.model))
709
- let param={
710
- employeetemplate:'',
711
- tables:self.data.tables,
712
- workflow_xmlfilename : self.$workflow_vue.workflow_xmlfilename,
713
- start_activity:model.start_activity,
714
- model:model,
715
- loginUser:Vue.user
716
- }
717
- if(param.model.defname === '现场勘查定价'){
718
- param.model.f_unaccounts_money = param.model.f_total_cost
719
- }
720
- // http.load('POST',url,{data:{employeetemplate:'',tables:self.data.tables,start_activity:self.$workflow_vue.start_activity,model:model,loginUser:Vue.user}}, {resolveMsg: null, rejectMsg: null})
721
- let paramStr = JSON.stringify(param)
722
- // 多长截断一次
723
- let subLength = 800
724
- for (let i = 0; i < paramStr.length; i += subLength) {
725
- HostApp.param_cache(paramStr.substr(i, subLength))
726
- }
727
- HostApp.__this__ = self
728
- HostApp.syncLogic({
729
- // logic别名,key必须为logic
730
- 'logic': 'updatePic',
731
- // 回调执行方法名,key必须为callback
732
- 'callback': 'javascript:HostApp.__this__.saveCallBack()',
733
- // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
734
- // 执行回调方法传入key为backresult
735
- // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
736
- 'backresult': 1
737
- })
738
-
739
- }
740
- </script>
1
+ <template>
2
+ <div>
3
+ <work-busy :is-busy="loading"></work-busy>
4
+ <service-view-app v-ref:service_show :data.sync="show_data.ppp" :model.sync="selectmodel" v-if="showview"></service-view-app>
5
+ </div>
6
+ <modal :show.sync="stop_show" v-ref:modal stop_show="false">
7
+ <header slot="modal-header" class="modal-header">
8
+ <button type="button" class="close" @click="closeback"><span>&times;</span></button>
9
+ <h4 class="modal-title">终止备注</h4>
10
+ </header>
11
+ <article slot="modal-body" class="modal-body">
12
+ <div class="from-group">
13
+ <input type="text" class="form-control" v-model="models.f_stop_remarks"/>
14
+ </div>
15
+ </article>
16
+ <footer slot="modal-footer" class="modal-footer">
17
+ <button v-show="stop_show" type="button" class="btn btn-default" @click='stopapplys'>确认</button>
18
+ </footer>
19
+ </modal>
20
+ <modal :show.sync="apply_show" v-ref:modal apply_show="false" >
21
+ <header slot="modal-header" class="modal-header">
22
+ <button type="button" class="close" @click="closeapply"><span>&times;</span></button>
23
+ <h4 class="modal-title">转单报建</h4>
24
+ </header>
25
+ <article slot="modal-body" class="modal-body">
26
+ <div class="from-group">
27
+ <v-select style="min-width: 80%;"
28
+ placeholder='请选择'
29
+ :options="applytypes"
30
+ :search="false"
31
+ v-model="apply_type"
32
+ :value.sync="apply_type"
33
+ close-on-select>
34
+ </v-select>
35
+ </div>
36
+ </article>
37
+ <footer slot="modal-footer" class="modal-footer">
38
+ <button v-show="apply_show" type="button" class="btn btn-default" @click='addactive()'>确认</button>
39
+ </footer>
40
+ </modal>
41
+ </template>
42
+ <script>
43
+ import co from 'co'
44
+ import Vue from 'vue'
45
+ import {HttpResetClass} from 'vue-client'
46
+ import * as Util from "../Util";
47
+ export default {
48
+ title: '报建流程业务控制层',
49
+ props: ['selectdata','selectmodel','show_data'],
50
+ data () {
51
+ return {
52
+ model:'',
53
+ delteLocal:false,
54
+ loading:false,
55
+ data:null, // 数据库数据,json配置文件数据的数据集合
56
+ json_datas:null, // Json配置文件集合
57
+ showview:false, // 控制显示service-view组件
58
+ // 给view层显示的数据
59
+ department_search:null, // 当前部门下所有人
60
+ stop_show:false, // 终止备注开关
61
+ apply_show:false, // 转单报建开关
62
+ apply_type:'',
63
+ applytypes:[{label:"散户报装",value:"报装申请"},{label:"集体报装",value:"集体报装申请"}],// 报建类型
64
+ models: {
65
+ f_date: Util.toStandardTimeString(),
66
+ f_department: Vue.user.f_parentname,
67
+ f_operator: Vue.user.name,
68
+ f_filiale: Vue.user.f_fengongsi
69
+ },
70
+ models2:{}
71
+ }
72
+ },
73
+ methods: {
74
+ // 转到报建
75
+ async addactive(){
76
+ this.selectdata.applyid = this.selectdata.id
77
+ // this.$resetpost('rs/logic/stopapply', {data: this.selectdata})
78
+ console.log(this.apply_type[0])
79
+ this.$workflow_vue.start_activity = this.apply_type[0]
80
+ let http = new HttpResetClass()
81
+ let res = await http.load('POST',this.$androidUtil.getProxyUrl() +'/rs/logic/ApplyGetProcessID',{data:{filename:this.$workflow_vue.workflow_xmlfilename,start_activity:this.$workflow_vue.start_activity}}, {resolveMsg: null, rejectMsg: '获取流程ID失败,请联系开发人员'})
82
+ let data = {
83
+ defname: this.$workflow_vue.start_activity,
84
+ f_process_id: res.data.f_process_id,
85
+ f_apply_date: Util.toStandardTimeString(),
86
+ f_product_id: res.data.f_product_id,
87
+ start_activity:this.$workflow_vue.start_activity,
88
+ f_user_type:this.models2.f_user_type,
89
+ f_user_name:this.models2.f_user_name,
90
+ f_phone:this.models2.f_phone,
91
+ f_area:this.models2.f_area,
92
+ f_street:this.models2.f_street,
93
+ f_residential_area:this.models2.f_residential_area,
94
+ f_building:this.models2.f_building,
95
+ f_unit:this.models2.f_unit,
96
+ f_floor:this.models2.f_floor,
97
+ f_room:this.models2.f_room,
98
+ f_address:this.models2.f_address,
99
+ f_idnumber:this.models2.f_social_credit_code,
100
+ f_apply_source:this.models2.f_apply_source,
101
+ f_sub_state:'未完工',
102
+ user:Vue.user
103
+ }
104
+ await http.load('POST',this.$androidUtil.getProxyUrl() +'/rs/logic/newaddApplyproduct',{data:data}, {resolveMsg: null, rejectMsg: '转发失败,请联系开发人员'})
105
+ var flag = false
106
+ if (this.data.defname == '合同审核') {
107
+ flag = true
108
+ let http = new HttpResetClass()
109
+ let data = {
110
+ tablename: 't_singlevalue',
111
+ condition: `name = '合同编号' and f_filialeids = '${Vue.user.f_orgids}'`
112
+ }
113
+ let res = await http.load('POST', this.$androidUtil.getProxyUrl() +'/rs/sql/applysingleTable', {data: data}, {
114
+ resolveMsg: null,
115
+ rejectMsg: "获取合同编号失败"
116
+ })
117
+ if (this.contract != res.data[0].value && !this.selectdata.f_contract_number) {
118
+ this.$showMessage("合同编号已经被使用,请按F5刷新页面后重新登记")
119
+ return
120
+ }
121
+ }
122
+ let model = this.models2
123
+ let url = this.$androidUtil.getProxyUrl() +'/rs/logic/ApplyProductService'
124
+ let requestData = {
125
+ tables: this.data.tables, model: model
126
+ }
127
+ requestData.start_activity = '踏勘'
128
+ requestData.loginUser = Vue.user
129
+ requestData.workflow_xmlfilename = this.$workflow_vue.workflow_xmlfilename
130
+ requestData.model.f_sub_state = '未完工'
131
+ console.log('即将发送请求url=>' + url + ',参数=>' + JSON.stringify(requestData))
132
+ res = await http.load('POST', url, {data: requestData}, {resolveMsg: null, rejectMsg: '数据保存失败'})
133
+ console.log("service处理完成返回数据:", JSON.stringify(res.data))
134
+ if(res.data.msg=="地址重复,请修改后重新提交"){
135
+ this.$showMessage(res.data.msg)
136
+ }
137
+ if (res.data.code == 200) {
138
+ // flag 为合同编号更新标志
139
+ if (flag) {
140
+ let http = new HttpResetClass()
141
+ let data = {
142
+ tablename: 't_singlevalue',
143
+ condition: `name = '合同编号' and f_filialeids = '${Vue.user.f_orgids}'`,
144
+ value: (Number(this.contract) + 1) + ''
145
+ }
146
+ await http.load('POST', this.$androidUtil.getProxyUrl() +'/rs/logic/updatesinglevalue', {data: data}, {
147
+ resolveMsg: null,
148
+ rejectMsg: "获取合同编号更新失败"
149
+ })
150
+ }
151
+ this.showview = false
152
+ // 特殊处理
153
+ this.special(model)
154
+ this.$dispatch('close')
155
+ this.initializtion()
156
+ } else {
157
+ if (res.data.msg) {
158
+ this.$showMessage(res.data.msg)
159
+ }
160
+ }
161
+
162
+ this.apply_show = false
163
+ },
164
+ // 终止报建
165
+ async stopapplys () {
166
+ this.models = Object.assign({}, this.selectdata, this.models)
167
+ this.models.id = null
168
+ this.models.applyid = this.selectdata.id
169
+ this.models.f_operat_type = '终止报建'
170
+ this.models.f_state = '有效'
171
+ this.models.f_describe = this.selectdata.f_user_name + '已终止报建'
172
+ let data ={
173
+ tablename:'t_project_stop',
174
+ parameters:this.models
175
+ }
176
+ let http = new HttpResetClass()
177
+ await http.load('POST',this.$androidUtil.getProxyUrl() + '/rs/logic/save', {data:data},{resolveMsg: null, rejectMsg: "添加失败"})
178
+ await http.load('POST',this.$androidUtil.getProxyUrl() +'/rs/logic/stopapply', {data:this.models},{resolveMsg: null, rejectMsg: "终止失败"})
179
+ this.closeback()
180
+ this.$dispatch('close')
181
+ },
182
+ // 关闭终止备注弹框
183
+ closeback() {
184
+ this.stop_show = false
185
+ },
186
+ // 关闭报建弹框
187
+ closeapply() {
188
+ this.apply_show = false
189
+ },
190
+ // 特殊化处理
191
+ saveCallBack(jo){
192
+ console.log(JSON.stringify(jo))
193
+ console.log("hhhhhhhhhhhhhhhhh")
194
+ console.log(JSON.stringify(jo))
195
+ if(jo.state == 'ok'){
196
+ console.log("hhhhhhhhhhhhhhhhh2")
197
+ let res = JSON.parse(jo.result)
198
+ console.log("hhhhhhhhhhhhhhhhh3")
199
+ if(res.code = 200){
200
+ this.showview = false
201
+ // 如果需要删除本地记录则去删除
202
+ console.log("hhhhhhhhhhhhhhhhh4")
203
+ if(this.delteLocal){
204
+ console.log("hhhhhhhhhhhhhhhhh5")
205
+ this.deleteLocalApply(this.model)
206
+ }
207
+ console.log("hhhhhhhhhhhhhhhhh6")
208
+ // 特殊处理
209
+ this.special(this.model)
210
+ console.log("hhhhhhhhhhhhhhhhh7")
211
+ this.loading=false
212
+ this.$dispatch('close')
213
+ console.log("hhhhhhhhhhhhhhhhh8")
214
+ this.initializtion()
215
+ console.log("hhhhhhhhhhhhhhhhh9")
216
+ this.$showMessage('操作成功')
217
+ }else{
218
+ this.$showMessage('操作失败,原因:' + res.data.msg)
219
+ }
220
+ }
221
+
222
+ },
223
+ async special(model){
224
+ console.log('进入async special方法')
225
+ if(this.data.distribute_async && model.button.button_name==='下发'){
226
+ // 流程异步处理
227
+ let http = new HttpResetClass();
228
+ // let res = await http.load('POST',this.$androidUtil.getProxyUrl() + '/rs/logic/syncprocess',{data:{model:model,loginUser:this.$login.f}}, {resolveMsg: null, rejectMsg: '流程异步下发据保存失败'})
229
+ let res = await http.load('POST',this.$androidUtil.getProxyUrl() + '/rs/logic/syncprocess',{data:{model:model,loginUser: Vue.user}}, {resolveMsg: null, rejectMsg: '流程异步下发据保存失败'})
230
+ console.log("流程的异步处理:",JSON.stringify(res.data))
231
+ }
232
+ if(this.data.distribute_async && model.button.button_name==='完成'){
233
+ // 强制结束
234
+ let http = new HttpResetClass();
235
+ let res = await http.load('POST',this.$androidUtil.getProxyUrl() + '/rs/logic/stoprocess',{data:{model:model,loginUser: Vue.user}}, {resolveMsg: null, rejectMsg: '流程异步完成数据保存失败'})
236
+ // let res = await http.load('POST',this.$androidUtil.getProxyUrl() + '/rs/logic/stoprocess',{data:{model:model,loginUser:this.$login.f}}, {resolveMsg: null, rejectMsg: '流程异步完成数据保存失败'})
237
+ console.log("流程的异步处理:",JSON.stringify(res.data))
238
+ }
239
+ },
240
+ // 组件初始化操作
241
+ refurbish(){
242
+ if(!this.$workflow_vue){
243
+ this.$showMessage('流程配置文件不存在,请反馈系统管理员')
244
+ return
245
+ }
246
+ console.log('内存中的流程配置文件数据=>' + JSON.stringify(this.$workflow_vue))
247
+ this.json_datas=this.$workflow_vue
248
+ let sum = 0
249
+ let jsonData ={}
250
+ for(let i=0;i<this.json_datas.activitys.length;i++){
251
+ if(this.selectdata.defname==this.json_datas.activitys[i].title){
252
+ jsonData = this.json_datas.activitys[i]
253
+ sum++
254
+ }
255
+ }
256
+ console.log('sum=>' + sum)
257
+ if(sum==1){
258
+ this.data =null
259
+ this.data = jsonData
260
+ console.log('调用initializtion前的this.data=>' + JSON.stringify(this.data))
261
+ this.initializtion()
262
+
263
+ } else if(sum==0) {
264
+ this.$showMessage(`没有在JSON配置文件中找到活动名为:(${this.selectdata.defname})的节点配置`)
265
+ } else {
266
+ this.$showMessage(`在JSON配置文件中找到活动名为:(${this.selectdata.defname})的节点配置:${sum}个`)
267
+ }
268
+ },
269
+ // json配置数据处理 比如下拉框的options
270
+ async initializtion() {
271
+
272
+ console.log('进入initializtion()方法')
273
+ console.log('接收到的selectdata有无变化'+JSON.stringify(this.selectdata))
274
+ console.log('接收到的selectdata有无actorexpression'+JSON.stringify(this.selectdata.actorexpression))
275
+ // 下发人 options 处理,options初始化
276
+ if(this.selectdata.actorexpression){
277
+ //截取actorexpression
278
+ let http = new HttpResetClass()
279
+ var url = this.$androidUtil.getProxyUrl() + '/rs/search'
280
+ console.log('即将请求后台获取下发人员,url=>' + url)
281
+ // R(安装员报装)
282
+ console.log("777777776"+JSON.stringify(this.selectdata.actorexpression))
283
+ let res
284
+ if (this.selectdata.actorexpression.startsWith('R')) {
285
+ let actorexpression = this.selectdata.actorexpression
286
+ //let actorexpression="R(安装员报装)"
287
+ let actor = actorexpression.substring(actorexpression.indexOf('(') + 1, actorexpression.indexOf(')'))
288
+ console.log("看看角色" + JSON.stringify(actor))
289
+ res= await http.load('POST', url, {
290
+ source: `tool.getChildrenOfResName($${actor}$)`,
291
+ userid: Vue.user.id
292
+ }, {resolveMsg: null, rejectMsg: '获取当前部门人员失败'})
293
+ }else{
294
+ res = await http.load('POST', url, this.selectdata.actorexpression, {resolveMsg: null, rejectMsg: '获取当前部门人员失败'})
295
+ }
296
+ console.log("请求后台获取下发人员结果转换=>" + JSON.stringify(res))
297
+ let jsonString = JSON.stringify(res.data)
298
+ let jsonArray = []
299
+ if(jsonString.startsWith("{")){
300
+ jsonArray.push(res.data)
301
+ res.data = jsonArray
302
+ }
303
+ this.department_search = res.data
304
+ }
305
+
306
+ // data 填充 selectdata
307
+ console.log('即将合并data与selectdata,selectdata数据=>' + JSON.stringify(this.selectdata))
308
+ this.data = Object.assign({},this.data, this.selectdata)
309
+ console.log('this.data的值=>' + JSON.stringify(this.data))
310
+
311
+ // 初始化 fields
312
+ console.log('this.data.fields.length=>' + this.data.fields.length)
313
+ for(let i=0;i<this.data.fields.length;i++){
314
+ // 如果selectdata有这些key,则把selectdata的value赋值给data的value
315
+ if(this.selectdata[this.data.fields[i].field]){
316
+ this.data.fields[i].value = this.selectdata[this.data.fields[i].field]
317
+ }
318
+ // 如果配置类型为select,优先从参数列表获取options
319
+ if(this.data.fields[i].type == 'select'){
320
+ console.log('进入下拉框参数获取方法,参数名称=>' + this.data.fields[i].label)
321
+ console.log('$appdata中的缓存参数与单值=>' + JSON.stringify(this.$appdata))
322
+ var param = this.$appdata.getParam(this.data.fields[i].label)
323
+ console.log(param)
324
+ if (param){
325
+ this.data.fields[i].options = param
326
+ }
327
+
328
+ }
329
+ // 设置用户类型
330
+ if (this.data.fields[i].label == '用户类型') {
331
+ this.data.fields[i].options = [{label: '民用', value: '民用'},{label: '非民用', value: '非民用'}]
332
+ }
333
+ // 获取县区
334
+ if (this.data.fields[i].label == '县/区') {
335
+ let http = new HttpResetClass()
336
+ let area = await http.load('post',`${this.$androidUtil.getProxyUrl()}/rs/sql/applysingleTable`, {
337
+ data: {
338
+ // items: 'f_bill_url,f_url_code',
339
+ tablename: 't_pcd',
340
+ condition: `f_filialeids = '${Vue.user.f_orgids}'`
341
+ }
342
+ }, {resolveMsg: null, rejectMsg: null})
343
+ let rs = []
344
+ for (let i = 0; i < area.data.length; i++) {
345
+ let temp = {
346
+ label: area.data[i].f_pcd,
347
+ value: area.data[i].f_pcd
348
+ }
349
+ rs.push(temp)
350
+ }
351
+ this.data.fields[i].options = [{label: '全部', value: ''}, ...rs]
352
+ }
353
+ }
354
+ // 初始化 buttons_fields
355
+ for(let i=0;i<this.data.buttons.length;i++){
356
+ if(this.data.buttons[i].button_fields){
357
+ for(let j=0;j<this.data.buttons[i].button_fields.length;j++){
358
+ // 如果selectdata有这些key,则把selectdata的value赋值给data的value
359
+ if(this.selectdata[this.data.buttons[i].button_fields[j].field]){
360
+ this.data.buttons[i].button_fields[j].value = this.selectdata[this.data.buttons[i].button_fields[j].field]
361
+ }
362
+ // 如果配置类型为select,优先从参数列表获取options
363
+ if(this.data.buttons[i].button_fields[j].type==='select'&&this.$appdata.getParam(this.data.buttons[i].button_fields[j].label)){
364
+ console.log("这里是给select赋值的地方"+JSON.stringify(this.data.buttons[i].button_fields[j]))
365
+ console.log("参数列表获取到的"+JSON.stringify(this.$appdata.getParam(this.data.buttons[i].button_fields[j].label)))
366
+ this.data.buttons[i].button_fields[j].options=this.$appdata.getParam(this.data.buttons[i].button_fields[j].label)
367
+ }
368
+ // 下发特殊配置
369
+ if(this.data.buttons[i].button_name==='下发'){
370
+ if(this.data.buttons[i].button_fields.length===1){
371
+ // value初始化
372
+ // if(this.department_search){
373
+ console.log("看看111department_search"+JSON.stringify(this.department_search))
374
+
375
+ if(this.selectdata[this.data.buttons[i].button_fields[0].field]){
376
+
377
+ for(let k=0;k<this.department_search.length;k++){
378
+ // 将id转换为name
379
+ if(Number(this.department_search[k].id) === Number(this.selectdata[this.data.buttons[i].button_fields[0].field])){
380
+ this.data.buttons[i].button_fields[0].value=this.department_search[k].name
381
+ }
382
+ }
383
+ }
384
+
385
+ if(this.department_search){
386
+ let array = []
387
+ console.log("看看department_search"+JSON.stringify(this.department_search))
388
+ this.department_search.forEach((paper)=>{
389
+ array.push({label:paper.name,value:paper.name})
390
+ })
391
+ this.data.buttons[i].button_fields[0].options = array
392
+ }
393
+ }else {
394
+ this.$showMessage("下发按钮必须满足 当且仅当一个字段")
395
+ }
396
+ }
397
+ }
398
+ }
399
+ }
400
+ // 消除双向绑定,避免子组件(显示层)数据更改,父组件(控制层)也更改
401
+ let temp = JSON.parse(JSON.stringify(this.data))
402
+ // 退回原因展示
403
+ if(this.selectdata.f_back_reason){
404
+ temp['back_reason'] = this.selectdata.f_back_reason
405
+ }
406
+ console.log('即将给show_data赋值temp=>' + JSON.stringify(temp))
407
+ console.log(JSON.stringify(this.show_data.ppp))
408
+ if (JSON.stringify(this.show_data.ppp)=='{}'){
409
+ this.show_data.ppp = temp
410
+ console.log("重新赋值")
411
+
412
+ }else{
413
+ console.log("不重新赋值")
414
+ }
415
+ console.log('initializtion()方法结束,showview')
416
+ this.showview = true
417
+ },
418
+ deleteLocalApply(model){
419
+ console.log(`前台上传完成,开始删除本地报建工单`)
420
+ this.$androidUtil.bzLogic('deleteApply', {data:model})
421
+ }
422
+ },
423
+ events: {
424
+ 'checkboxSelectControl'(index,index2){
425
+ if(this.$refs.service_show.data.fields[index].label=="施工提交资料"){
426
+ for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
427
+ if(this.$refs.service_show.data.fields[i].label=="施工已上传文件"){
428
+ //增加和删除框中的内容
429
+ if (this.$refs.service_show.data.fields[i].value==undefined){
430
+ this.$refs.service_show.data.fields[i].value=''
431
+ }
432
+ if(this.$refs.service_show.data.fields[index].items[index2].value == false){
433
+ this.$refs.service_show.data.fields[i].value+=this.$refs.service_show.data.fields[index].items[index2].label+" ";
434
+ // this.$refs.service_show.data.fields[i].value=this.$refs.service_show.data.fields[i].value==undefined?'':this.$refs.service_show.data.fields[i].value+this.$refs.service_show.data.fields[index].items[index2].label+" ";
435
+ this.$refs.service_show.data.fields[index].items[index2].value=true;
436
+ }else{
437
+ let deleteValue = this.$refs.service_show.data.fields[index].items[index2].label;
438
+ let values =this.$refs.service_show.data.fields[i].value;
439
+ let result = values.split(" ").filter((item)=>{
440
+ return item!=deleteValue;
441
+ }).join(" ")
442
+ this.$refs.service_show.data.fields[i].value =result;
443
+ this.$refs.service_show.data.fields[index].items[index2].value=false;
444
+ }
445
+ //}
446
+ }
447
+ }
448
+ }
449
+ if(this.$refs.service_show.data.fields[index].label=="验收提交资料"){
450
+ for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
451
+
452
+ if(this.$refs.service_show.data.fields[i].label=="验收已上传文件"){
453
+ //增加和删除框中的内容
454
+ if(this.$refs.service_show.data.fields[index].items[index2].value == false){
455
+ this.$refs.service_show.data.fields[i].value+=this.$refs.service_show.data.fields[index].items[index2].label+" ";
456
+ // this.$refs.service_show.data.fields[i].value=this.$refs.service_show.data.fields[i].value==undefined?'':this.$refs.service_show.data.fields[i].value+this.$refs.service_show.data.fields[index].items[index2].label+" ";
457
+ this.$refs.service_show.data.fields[index].items[index2].value=true;
458
+ }else{
459
+ let deleteValue = this.$refs.service_show.data.fields[index].items[index2].label;
460
+ let values =this.$refs.service_show.data.fields[i].value;
461
+ let result = values.split(" ").filter((item)=>{
462
+ return item!=deleteValue;
463
+ }).join(" ")
464
+ this.$refs.service_show.data.fields[i].value =result;
465
+ this.$refs.service_show.data.fields[index].items[index2].value=false;
466
+ }
467
+ //}
468
+ }
469
+ }
470
+ }
471
+ this.$refs.service_show.update()
472
+ },
473
+ // 任意select选中时触发事件
474
+ async 'select_cascade'(index){
475
+ // this.$refs.service_show.model_temp // 子业务显示组件
476
+ // 级联操作示例:
477
+ /*
478
+ if(this.$refs.service_show.model_temp.activitys.ields[index].label==='报建类型'){
479
+ for(let i=0;i<this.$refs.service_show.model_temp.activitys.fields.length;i++){
480
+ // 控制设置级联
481
+ // 源select所选的值 this.$refs.service_show.model_temp.activitys.fields[index].value
482
+ if(this.$refs.service_show.model_temp.activitys.fields[i].label==='级联测试2'){
483
+ this.$refs.service_show.model_temp.activitys.fields[i].options=[
484
+ {label:'级联选项1',value:'级联选项1'},{label:'级联选项2',value:'级联选项2'},{label:'级联选项3',value:'级联选项3'}
485
+ ]
486
+ }
487
+ }
488
+ }
489
+ */
490
+ if (this.$refs.service_show.data.fields[index].label === '县/区') {
491
+ let temp = this.$refs.service_show.data.fields[index].value
492
+ console.log('==============================县/区:' + temp)
493
+ for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
494
+ // 控制设置级联
495
+ // 源select所选的值 this.$refs.service_show.data.activitys.fields[index].value
496
+ if (this.$refs.service_show.data.fields[i].label === '街道名称') {
497
+ await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/sql/applysingleTable`, {
498
+ data: {
499
+ tablename: 't_street',
500
+ condition: `f_filialeids = '${Vue.user.f_orgids}' and f_pcd='${temp}'`
501
+ }
502
+ }, {resolveMsg: null, rejectMsg: null}).then(res => {
503
+ let streetrs = []
504
+ for (let i = 0; i < res.data.length; i++) {
505
+ let temp = {
506
+ label: res.data[i].f_street,
507
+ value: res.data[i].f_street
508
+ }
509
+ streetrs.push(temp)
510
+ }
511
+ this.$refs.service_show.data.fields[i].options = [{label: '全部', value: ''}, ...streetrs]
512
+ // console.log('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~option:', this.$refs.service_show.data.fields[i].options)
513
+ this.$refs.service_show.update()
514
+ })
515
+ }
516
+ }
517
+ }
518
+ if (this.$refs.service_show.data.fields[index].label === '街道名称') {
519
+ let temp = this.$refs.service_show.data.fields[index].value
520
+ console.log('=============================街道:' + temp)
521
+ for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
522
+ // 控制设置级联
523
+ // 源select所选的值 this.$refs.service_show.data.activitys.fields[index].value
524
+ if (this.$refs.service_show.data.fields[i].label === '小区名称') {
525
+ await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/sql/applysingleTable`, {
526
+ data: {
527
+ tablename: 't_area',
528
+ condition: `f_filialeids = '${Vue.user.f_orgids}' and f_street='${temp}'`
529
+ }
530
+ }, {resolveMsg: null, rejectMsg: null}).then(res => {
531
+ let arears = []
532
+ for (let i = 0; i < res.data.length; i++) {
533
+ let temp = {
534
+ label: res.data[i].f_residential_area,
535
+ value: res.data[i].f_residential_area
536
+ }
537
+ arears.push(temp)
538
+ }
539
+ this.$refs.service_show.data.fields[i].options = [{label: '全部', value: ''}, ...arears]
540
+ // console.log('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~option:', this.$refs.service_show.data.fields[i].options)
541
+ this.$refs.service_show.update()
542
+ })
543
+ }
544
+ }
545
+ }
546
+ // 合成地址
547
+ if (
548
+ this.$refs.service_show.data.fields[index].label === '县/区' ||
549
+ this.$refs.service_show.data.fields[index].label === '街道名称' ||
550
+ this.$refs.service_show.data.fields[index].label === '小区名称' ||
551
+ this.$refs.service_show.data.fields[index].label === '楼号' ||
552
+ this.$refs.service_show.data.fields[index].label === '单元号' ||
553
+ this.$refs.service_show.data.fields[index].label === '楼层' ||
554
+ this.$refs.service_show.data.fields[index].label === '门牌号'
555
+ ) {
556
+ console.log('即将合成地址')
557
+ var address = ''
558
+ for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
559
+ // 控制设置级联
560
+ // 源select所选的值 this.$refs.service_show.data.activitys.fields[index].value
561
+ // xxx xx xxx
562
+ if (this.$refs.service_show.data.fields[i].label === '县/区' && this.$refs.service_show.data.fields[i].value) {
563
+ address += this.$refs.service_show.data.fields[i].value
564
+ }
565
+ if (this.$refs.service_show.data.fields[i].label === '街道名称' && this.$refs.service_show.data.fields[i].value) {
566
+ address += this.$refs.service_show.data.fields[i].value
567
+ }
568
+ if (this.$refs.service_show.data.fields[i].label === '小区名称' && this.$refs.service_show.data.fields[i].value) {
569
+ address += this.$refs.service_show.data.fields[i].value
570
+ }
571
+ if (this.$refs.service_show.data.fields[i].label === '楼号' && this.$refs.service_show.data.fields[i].value) {
572
+ address += this.$refs.service_show.data.fields[i].value
573
+ }
574
+ if (this.$refs.service_show.data.fields[i].label === '楼号' && this.$refs.service_show.data.fields[i].value) {
575
+ address += '栋'
576
+ }
577
+ if (this.$refs.service_show.data.fields[i].label === '单元号' && this.$refs.service_show.data.fields[i].value) {
578
+ address += '-' +this.$refs.service_show.data.fields[i].value
579
+ }
580
+ if (this.$refs.service_show.data.fields[i].label === '单元号' && this.$refs.service_show.data.fields[i].value) {
581
+ address += '单元'
582
+ }
583
+ if (this.$refs.service_show.data.fields[i].label === '楼层' && this.$refs.service_show.data.fields[i].value) {
584
+ address += '-' +this.$refs.service_show.data.fields[i].value
585
+ }
586
+ if (this.$refs.service_show.data.fields[i].label === '楼层' && this.$refs.service_show.data.fields[i].value) {
587
+ address += '层'
588
+ }
589
+ if (this.$refs.service_show.data.fields[i].label === '门牌号' && this.$refs.service_show.data.fields[i].value) {
590
+ address += '-' +this.$refs.service_show.data.fields[i].value
591
+ }
592
+ if (this.$refs.service_show.data.fields[i].label === '门牌号' && this.$refs.service_show.data.fields[i].value) {
593
+ address += '室'
594
+ }
595
+
596
+ }
597
+ console.log('获取到的address=>' + address)
598
+ // 数据获取完毕时放入地址text
599
+ for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
600
+ if (this.$refs.service_show.data.fields[i].label === '地址' || this.$refs.service_show.data.fields[i].label === '报装地址') {
601
+ this.$refs.service_show.data.fields[i].value = address
602
+ console.log('修改fields[i].value后的值=>' + this.$refs.service_show.data.fields[i].value)
603
+ }
604
+ }
605
+ this.$refs.service_show.update()
606
+ }
607
+ if (this.$refs.service_show.data.fields[index].label == '用户类型'){
608
+ if(this.$refs.service_show.data.fields[index].value == '非民用'){
609
+ for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
610
+ if (this.$refs.service_show.data.fields[i].label === '小区名称') {
611
+ this.$refs.service_show.data.fields[i].required=false;
612
+ }
613
+ }
614
+ }else{
615
+ for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
616
+ if (this.$refs.service_show.data.fields[i].label === '小区名称') {
617
+ this.$refs.service_show.data.fields[i].required=true;
618
+ }
619
+ }
620
+ }
621
+ }
622
+ },
623
+ // 获取view层button事件
624
+ async 'button'(model){
625
+ if (this.data.defname==='踏勘'){
626
+ if (model.button.button_name === '终止'){
627
+ this.stop_show=true
628
+ return
629
+ }
630
+ }
631
+ this.loading=true
632
+ console.log('进入async button事件方法')
633
+ var delteLocal = true
634
+ // 点击保存与重置按钮不需要修改本地工单状态
635
+ if(model.button.button_name == '保存' || model.button.button_name==='重置'){
636
+ delteLocal = false
637
+ }
638
+ // 点击重置按钮就重置数据
639
+ if(model.button.button_name==='重置'){
640
+ this.initializtion()
641
+ return
642
+ }
643
+ if(model.button.button_name==='下发'){
644
+ let person_name = model.button.button_fields[this.show_data.buttons[model.button.button_index].button_fields[0].field]
645
+ for(let i=0;i<this.department_search.length;i++){
646
+ // 找到人名为person_name 的人,然后把人名换成id
647
+ if(this.department_search[i].name === person_name){
648
+ model.button.button_fields[this.show_data.buttons[model.button.button_index].button_fields[0].field] = this.department_search[i].id
649
+ }
650
+ }
651
+ }
652
+ console.log("button事件接收参数model=>" + JSON.stringify(model))
653
+ model=Object.assign({},this.selectdata,model)
654
+ console.log('合并selectdata与model后的model=>' + JSON.stringify(model))
655
+ if (this.data.defname==='踏勘'&&(model.button.button_name === '提交'||model.button.button_name === '通气')){
656
+ this.loading=false
657
+ this.apply_show=true
658
+ this.models2 = model
659
+ return
660
+ }
661
+ let http = new HttpResetClass()
662
+ if (this.data.defname === '通气转单'&& model.button.button_name === '提交'){
663
+ model.f_sub_state = '完工'
664
+ }else {
665
+ model.f_sub_state = '未完工'
666
+ }
667
+ var url = this.$androidUtil.getProxyUrl() + '/rs/logic/ApplyProductService'
668
+ // let res = await http.load('POST',url,{data:data}, {resolveMsg: null, rejectMsg: null})
669
+ // // 先判断是否包含code,如果服务端异常,可能不存在code
670
+ // console.log("service处理完成返回数据=>" + res)
671
+ // if(!res.code){
672
+ // console.log("service处理完成返回数据=>" + res)
673
+ // this.$showMessage('操作异常,原因:' + res)
674
+ // }else{
675
+ // console.log("service处理完成返回数据=>" + JSON.stringify(res))
676
+ // if(res.code = 200){
677
+ // this.showview = false
678
+ // // 特殊处理
679
+ // this.special(model)
680
+ // this.$dispatch('close')
681
+ // this.initializtion()
682
+ // this.$showMessage('操作成功')
683
+ // }else{
684
+ // this.$showMessage('操作失败,原因:' + res.data.msg)
685
+ // }
686
+ // }
687
+ let btn = btn_operate(this, url, http, model, delteLocal)
688
+ co(btn)
689
+ }
690
+ },
691
+ watch:{
692
+ // 监听selectdata的变化
693
+ 'selectdata'() {
694
+ console.log('进入selectdata改变事件data=>' + JSON.stringify(this.selectdata))
695
+ this.refurbish()
696
+ },
697
+ deep:true
698
+ }
699
+ }
700
+
701
+ let btn_operate = function * (self, url, http, model, delteLocal) {
702
+ self.delteLocal=delteLocal
703
+ console.log("model的信息",model)
704
+ // 下发,提交,保存,退回都在后台处理
705
+ console.log('即将请求后台url=>' + url)
706
+ model.employeetemplate=''
707
+ self.model=model
708
+ console.log(JSON.stringify(self.model))
709
+ let param={
710
+ employeetemplate:'',
711
+ tables:self.data.tables,
712
+ workflow_xmlfilename : self.$workflow_vue.workflow_xmlfilename,
713
+ start_activity:model.start_activity,
714
+ model:model,
715
+ loginUser:Vue.user
716
+ }
717
+ if(param.model.defname === '现场勘查定价'){
718
+ param.model.f_unaccounts_money = param.model.f_total_cost
719
+ }
720
+ // http.load('POST',url,{data:{employeetemplate:'',tables:self.data.tables,start_activity:self.$workflow_vue.start_activity,model:model,loginUser:Vue.user}}, {resolveMsg: null, rejectMsg: null})
721
+ let paramStr = JSON.stringify(param)
722
+ // 多长截断一次
723
+ let subLength = 800
724
+ for (let i = 0; i < paramStr.length; i += subLength) {
725
+ HostApp.param_cache(paramStr.substr(i, subLength))
726
+ }
727
+ HostApp.__this__ = self
728
+ HostApp.syncLogic({
729
+ // logic别名,key必须为logic
730
+ 'logic': 'updatePic',
731
+ // 回调执行方法名,key必须为callback
732
+ 'callback': 'javascript:HostApp.__this__.saveCallBack()',
733
+ // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
734
+ // 执行回调方法传入key为backresult
735
+ // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
736
+ 'backresult': 1
737
+ })
738
+
739
+ }
740
+ </script>