apply-clients 3.3.73-21 → 3.3.73-31

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "apply-clients",
3
- "version": "3.3.73-21",
3
+ "version": "3.3.73-31",
4
4
  "description": "报建前端模块",
5
5
  "main": "src/index.js",
6
6
  "directories": {
@@ -26,6 +26,9 @@ export default function () {
26
26
  Vue.component('app-apply-devices-management', (resolve) => { require(['./components/android/Process/Processes/AppDevicesManagement'], resolve) })
27
27
  Vue.component('app-charge-management', (resolve) => { require(['./components/android/Process/Processes/AppChargeManagement'], resolve) })
28
28
  Vue.component('app-supplemental-agreement', (resolve) => { require(['./components/android/Process/Processes/AppSupplementalAgreement'], resolve) })
29
-
29
+ // 选择用户信息
30
+ Vue.component('select-userinfo', (resolve) => { require(['./components/android/Process/Processes/selectUserinfo'], resolve) })
31
+ // 选择报建项目
32
+ Vue.component('select-apply', (resolve) => { require(['./components/android/Process/Processes/selectApply'], resolve) })
30
33
  Vue.component('app-build-sign', (resolve) => { require(['./components/android/Process/Processes/AppBuildSign'], resolve) })
31
34
  }
@@ -34,6 +34,7 @@
34
34
  :placeholder="item.placeholder"
35
35
  :search="item.search"
36
36
  close-on-select value-single
37
+ @select-search="selectSearch($arguments,index)"
37
38
  :options="data.fields[index].options"
38
39
  v-model="data.fields[index].value"
39
40
  :value.sync="data.fields[index].value"
@@ -108,7 +109,7 @@
108
109
  </div>
109
110
  </div>
110
111
 
111
- <div class="col-sm-12 col-xs-12">
112
+ <div class="col-sm-12 col-xs-12" id="test11">
112
113
  <accordion one-at-a-time="true">
113
114
  <panel v-for="(i,item) in data.onetomany" :header="item.title" :is-open="false" type="primary">
114
115
  <app-onetomany :onetomany="item" :index="i"></app-onetomany>
@@ -519,6 +520,12 @@ export default {
519
520
  }
520
521
  }
521
522
  }
523
+ },
524
+ selectSearch(event, index) {
525
+ if (this.data.fields[index].selectSearch) {
526
+ this.$dispatch(this.data.fields[index].selectSearch, event[0], index)
527
+ }
528
+ this.$dispatch('selectSearch', event[0], index)
522
529
  }
523
530
  },
524
531
  events: {
@@ -123,6 +123,7 @@
123
123
  <div class="row form-group text-right" style="">
124
124
  <button class="btn btn-primary" @click="$parent.$parent.search()">查询</button>
125
125
  <button class="btn btn-info" @click="$parent.$parent.clear()">清空</button>
126
+ <button class="btn btn-info" @click="$parent.$parent.showModal = !$parent.$parent.showModal">工程发起</button>
126
127
  <button class="btn" :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}" @click="$parent.$parent.criteriaShow = !$parent.$parent.criteriaShow"></button>
127
128
  </div>
128
129
  </div>
@@ -216,6 +217,34 @@
216
217
  </footer>
217
218
  </modal>
218
219
  </validator>
220
+ <validator name="v">
221
+ <modal
222
+ v-if="showModal"
223
+ :show.sync="showModal"
224
+ backdrop="false"
225
+ title="工程类型"
226
+ cancel-text="取消"
227
+ ok-text="确认"
228
+ :callback="apply"
229
+ >
230
+ <div class="form-horizontal" slot="modal-body">
231
+ <div class="row form-group app-input" style="margin: 10px auto">
232
+ <label class="">报建类型:</label>
233
+ <div class="col-sm-8">
234
+ <v-select
235
+ v-model="applyType"
236
+ placeholder='请选择需要发起的工程类型'
237
+ :value.sync="applyType"
238
+ :options='applyTypes'
239
+ :value-single="true"
240
+ class="select select_list"
241
+ :search="false"
242
+ close-on-select ></v-select>
243
+ </div>
244
+ </div>
245
+ </div>
246
+ </modal>
247
+ </validator>
219
248
  </div>
220
249
  </template>
221
250
  <script>
@@ -234,6 +263,10 @@ export default {
234
263
  orgid: Vue.user.orgid
235
264
  },
236
265
  }),
266
+ showModal: false,
267
+ applyType: '', // 报建类型
268
+ //applyTypes:this.$appdata.getParam("报建类型"),
269
+ applyTypes:[{label:'散户报建',value:'散户报建'},{label:'工商户报建',value:'工商户报建'},{label:'团购报建',value:'团购报建'},{label:'改管报建',value:'改管报建'},{label:'增容报建',value:'增容报建'},{label:'退款报建',value:'退款报建'},{label:'团购转散户',value:'团购转散户'}],
237
270
  criteriaShow: false,
238
271
  // applytype: [{label: '全部', value: ''}, ...this.$appdata.getParam('报建类型')], // 所有报建类型
239
272
  applytype: [{label: '全部', value: ''}, ...this.$appdata.getParam('报建类型') || [] ], // 所有报建类型
@@ -290,7 +323,7 @@ export default {
290
323
  this.$refs.cp.$refs.cri.search()
291
324
  },
292
325
  searchCondition (args) {
293
- args.condition += `and act.defname in ${this.appDefnames}`
326
+ //args.condition += `and act.defname in ${this.appDefnames}`
294
327
  this.model.search(args.condition, args.model)
295
328
  },
296
329
  click (row) {
@@ -318,7 +351,67 @@ export default {
318
351
 
319
352
  this.applyNatures = [{label: '全部', value: ''}]
320
353
  }
321
- }
354
+ },
355
+ // 报装申请
356
+ async apply () {
357
+ if (this.applyType === '' || this.applyType === null) {
358
+ this.$showAlert('请选择需要发起的类型', 'warning', 3000)
359
+ return
360
+ }
361
+ let data = {
362
+ f_apply_type: this.applyType
363
+ }
364
+ if (this.applyType === '散户报建') {
365
+ data.processname = '散户报建流程'
366
+ data.defname = '报装申请'
367
+ } else if (this.applyType === '工商户报建') {
368
+ data.processname = '工商户报建流程'
369
+ data.defname = '报装申请'
370
+ } else if (this.applyType === '改管报建') {
371
+ data.processname = '改管报建流程'
372
+ data.defname = '报装申请'
373
+ } else if (this.applyType === '增容报建') {
374
+ data.processname = '增容报建流程'
375
+ data.defname = '报装申请'
376
+ } else if (this.applyType === '团购报建') {
377
+ data.processname = '团购报建流程'
378
+ data.defname = '报装申请'
379
+ } else if (this.applyType === '退款报建') {
380
+ data.processname = '退款报建流程'
381
+ data.defname = '终止报建'
382
+ } else if (this.applyType === '团购转散户') {
383
+ data.processname = '团购转散户报建流程'
384
+ data.defname = '信息确认'
385
+ } else {
386
+ this.$showMessage('暂无此类报装')
387
+ return
388
+ }
389
+
390
+ data.f_sub_state = "新增"
391
+ data.f_apply_source = "线下发起"
392
+ data.f_process_id = await this.getProcessId(data.processname)
393
+
394
+ // 调用ExplorationUser事件
395
+
396
+ this.click(data)
397
+ this.applyType = null
398
+ this.showModal = false
399
+ },
400
+ // 获取流程id
401
+ async getProcessId(processname) {
402
+ let data = {
403
+ workname: processname
404
+ }
405
+ let http = new HttpResetClass()
406
+ let res = await http.load(
407
+ 'POST',
408
+ `${this.$androidUtil.getProxyUrl()}/rs/logic/getProcessId`,
409
+ {data: data},
410
+ {resolveMsg: null, rejectMsg: '流程标识获取失败!!!'}
411
+ )
412
+
413
+ return res.data
414
+ },
322
415
  },
323
416
  events: {
324
417
  },
@@ -62,7 +62,6 @@ export default {
62
62
  )
63
63
 
64
64
  this.json_datas = res.data
65
- // 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---"}]}]}
66
65
 
67
66
  let sum = 0
68
67
  let jsonData = {}
@@ -138,7 +137,7 @@ export default {
138
137
  }
139
138
  }
140
139
  }
141
-
140
+ console.log("item.ready"+item.ready)
142
141
  if (item.ready) {
143
142
  item.options = await this[item.ready]()
144
143
  }
@@ -388,6 +387,130 @@ export default {
388
387
  }
389
388
  }
390
389
  },
390
+ async streetChange () {
391
+ if (isEmpty(this.show_data.f_street)) {
392
+ return
393
+ }
394
+
395
+ let data = {
396
+ tablename: 't_area',
397
+ condition: `f_filialeid = '${this.$login.f.orgid}' and f_street = '${this.show_data.f_street}'`
398
+ }
399
+ let http = new HttpResetClass()
400
+ let res = await http.load(
401
+ 'POST',
402
+ `rs/sql/singleTable`,
403
+ {data: data},
404
+ {resolveMsg: null, rejectMsg: '集收单位查询失败!!!'}
405
+ )
406
+
407
+ this.setLabelOptions('集收单位', res.data.map(item => {
408
+ return {
409
+ label: item.f_residential_area,
410
+ value: item.f_residential_area
411
+ }
412
+ }))
413
+ },
414
+ async pcdChange () {
415
+ if (isEmpty(this.show_data.f_pcd)) {
416
+ return
417
+ }
418
+
419
+ let data = {
420
+ tablename: 't_street',
421
+ condition: `f_filialeid = '${this.$login.f.orgid}' and f_pcd = '${this.show_data.f_pcd}'`
422
+ }
423
+ let f_address_type = this.getLableValue('地址类型')
424
+
425
+ if (f_address_type === '民用市区') {
426
+ data.condition = `f_filialeid = '${this.$login.f.orgid}' and f_pcd = '${this.show_data.f_pcd}' and f_iscity = '市区'`
427
+ }
428
+ if (f_address_type === '民用乡镇') {
429
+ data.condition = `f_filialeid = '${this.$login.f.orgid}' and f_pcd = '${this.show_data.f_pcd}' and f_iscity = '乡镇'`
430
+ }
431
+
432
+ let http = new HttpResetClass()
433
+ let res = await http.load(
434
+ 'POST',
435
+ `rs/sql/singleTable`,
436
+ {data: data},
437
+ {resolveMsg: null, rejectMsg: '街道/乡镇查询失败!!!'}
438
+ )
439
+
440
+ this.setLabelOptions('街道/乡镇', res.data.map(item => {
441
+ return {
442
+ label: item.f_street,
443
+ value: item.f_street
444
+ }
445
+ }))
446
+ },
447
+ async addressInitialization () {
448
+ //this.$getConfig(this, 'UserAddress')
449
+ //获取地址配置文件
450
+ try {
451
+ let res = await new HttpResetClass().load('get',`${this.$androidUtil.getProxyUrl()}/rs/vue/UserAddress.json`,{resolveMsg: null, rejectMsg: null})
452
+ Object.assign(this.config, res.data)
453
+ } catch (error) {
454
+ console.log("未获取到地址信息")
455
+ }
456
+ console.log("???????????不走了吗!")
457
+ let f_address_type = this.show_data.f_address_type
458
+
459
+ for (const item of this.show_data.fields) {
460
+ if (f_address_type === '民用市区') {
461
+ if (item.label === '区/县' || item.label === '街道/乡镇' || item.label === '集收单位' || item.label === '门牌号') {
462
+ item.hidden = false
463
+ item.required = true
464
+ }
465
+ if (item.label === '楼号/组' || item.label === '单元/排' || item.label === '楼层') {
466
+ item.hidden = false
467
+ item.required = false
468
+ }
469
+ if (item.label === '地址') {
470
+ item.readonly = true
471
+ }
472
+ }
473
+ if (f_address_type === '民用乡镇') {
474
+ if (item.label === '区/县' || item.label === '街道/乡镇' || item.label === '集收单位' || item.label === '门牌号') {
475
+ item.hidden = false
476
+ item.required = true
477
+ }
478
+ if (item.label === '楼号/组' || item.label === '单元/排' || item.label === '楼层') {
479
+ item.hidden = false
480
+ item.required = false
481
+ }
482
+ if (item.label === '楼层') {
483
+ item.hidden = true
484
+ item.required = false
485
+ }
486
+ if (item.label === '地址') {
487
+ item.readonly = true
488
+ }
489
+ }
490
+ if (f_address_type === '特殊地址') {
491
+ if (item.label === '区/县' || item.label === '街道/乡镇') {
492
+ item.hidden = false
493
+ item.required = true
494
+ }
495
+ if (item.label === '集收单位') {
496
+ item.hidden = false
497
+ item.required = false
498
+ }
499
+ if (item.label === '楼号/组' || item.label === '单元/排' || item.label === '楼层' || item.label === '门牌号') {
500
+ item.hidden = true
501
+ item.required = false
502
+ }
503
+ if (item.label === '地址') {
504
+ item.readonly = false
505
+ }
506
+ }
507
+
508
+ if (this.show_data.f_apply_source === '线下发起' && item.label === '预约地址') {
509
+ item.hidden = true
510
+ }
511
+ }
512
+ },
513
+
391
514
  async checkDuplicate(index) {
392
515
  let http = new HttpResetClass()
393
516
  let data = {
@@ -529,7 +652,92 @@ export default {
529
652
  this.$dispatch('loadPage')
530
653
 
531
654
  throw '终止报建!!!'
655
+ },
656
+ async getDevInfo () {
657
+ let data = {
658
+ tablename: 't_dev_info',
659
+ condition: `f_orgid = '${Vue.user.orgid}'`
660
+ }
661
+ let http = new HttpResetClass()
662
+ let res = await http.load(
663
+ 'POST',
664
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
665
+ {data: data},
666
+ {resolveMsg: null, rejectMsg: '公司查询失败!!!'}
667
+ )
668
+
669
+ return res.data.map(item => {
670
+ return {
671
+ label: item.f_dev_name,
672
+ value: item.f_dev_name
673
+ }
674
+ })
675
+ },
676
+ async getDesignerPeople () {
677
+ let data = {
678
+ source: 'this.getParentByType($organization$).getChildByName($设计部报装$).getChildren()',
679
+ userid: Vue.user.id
680
+ }
681
+
682
+ let http = new HttpResetClass()
683
+ let res = await http.load(
684
+ 'POST',
685
+ `${this.$androidUtil.getProxyUrl()}/rs/search`,
686
+ {data: data},
687
+ {resolveMsg: null, rejectMsg: '设计人员查询失败!!!'}
688
+ )
689
+
690
+ return res.data.map(item => {
691
+ return {
692
+ label: item.name,
693
+ value: item.id
694
+ }
695
+ })
696
+ },
697
+ // 获取片区
698
+ async getSliceArea () {
699
+ let data = {
700
+ source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
701
+ userid: Vue.user.id
702
+ }
703
+
704
+ let http = new HttpResetClass()
705
+ let res = await http.load(
706
+ 'POST',
707
+ `${this.$androidUtil.getProxyUrl()}/rs/search`,
708
+ {data: data},
709
+ {resolveMsg: null, rejectMsg: '片区查询失败!!!'}
710
+ )
711
+
712
+ return res.data.map(item => {
713
+ return {
714
+ label: item.name,
715
+ value: item.name
716
+ }
717
+ })
718
+ },
719
+ // 获取区县
720
+ async getPcd () {
721
+ let data = {
722
+ tablename: 't_pcd',
723
+ condition: `f_filialeid = '${Vue.user.orgid}'`
724
+ }
725
+ let http = new HttpResetClass()
726
+ let res = await http.load(
727
+ 'POST',
728
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
729
+ {data: data},
730
+ {resolveMsg: null, rejectMsg: '区县查询失败!!!'}
731
+ )
732
+
733
+ return res.data.map(item => {
734
+ return {
735
+ label: item.f_pcd,
736
+ value: item.f_pcd
737
+ }
738
+ })
532
739
  }
740
+
533
741
  },
534
742
  events: {
535
743
  'complyInstallation' (index) {
@@ -758,29 +966,32 @@ export default {
758
966
  'onchange' (index) {
759
967
  if (this.show_data.defname === '报装申请') {
760
968
  if (
761
- this.show_data.fields[index].label === '街道' ||
762
- this.show_data.fields[index].label === '小区' ||
763
- this.show_data.fields[index].label === '楼号(乡/镇)' ||
764
- this.show_data.fields[index].label === '单元(村)' ||
765
- this.show_data.fields[index].label === '楼层(组)' ||
766
- this.show_data.fields[index].label === '门牌号(号)'
969
+ this.show_data.fields[index].label === '区/县' ||
970
+ this.show_data.fields[index].label === '街道/乡镇' ||
971
+ this.show_data.fields[index].label === '集收单位' ||
972
+ this.show_data.fields[index].label === '楼号/组' ||
973
+ this.show_data.fields[index].label === '单元/排' ||
974
+ this.show_data.fields[index].label === '楼层' ||
975
+ this.show_data.fields[index].label === '门牌号'
767
976
  ) {
768
977
 
769
- let f_street = this.getLableValue('街道')
770
- let f_residential_area = this.getLableValue('小区')
771
- let f_building = this.getLableValue('楼号(乡/镇)')
978
+ let f_pcd = this.getLableValue('区/县') || ''
979
+ let f_street = this.getLableValue('街道/乡镇') || ''
980
+ let f_residential_area = this.getLableValue('集收单位') || ''
981
+ let f_building = this.getLableValue('楼号/组') || ''
772
982
  let f_building_suffix = f_building ? this.config.f_building_suffix : ''
773
- let f_unit = this.getLableValue('单元(村)')
983
+ let f_unit = this.getLableValue('单元/排') || ''
774
984
  let f_unit_suffix = f_unit ? this.config.f_unit_suffix : ''
775
- let f_floor = this.getLableValue('楼层(组)')
985
+ let f_floor = this.getLableValue('楼层') || ''
776
986
  let f_floor_suffix = f_floor ? this.config.f_floor_suffix : ''
777
- let f_room = this.getLableValue('门牌号(号)')
987
+ let f_room = this.getLableValue('门牌号') || ''
778
988
  let f_room_suffix = f_room ? this.config.f_room_suffix : ''
779
989
 
780
990
  let f_address = null
781
991
 
782
992
  let f_address_type = this.show_data.f_address_type
783
- if (f_address_type === '民用城区') {
993
+ f_address = f_pcd + 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
994
+ /*if (f_address_type === '民用城区') {
784
995
  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
785
996
  }
786
997
  if (f_address_type === '民用农村') {
@@ -788,11 +999,265 @@ export default {
788
999
  }
789
1000
  if (f_address_type === '特殊城区') {
790
1001
  f_address = f_street + f_residential_area
791
- }
1002
+ }*/
792
1003
  this.setLabelValue("地址", f_address)
793
1004
  }
794
1005
  }
795
1006
  },
1007
+ async getDesignerPeople () {
1008
+ let data = {
1009
+ source: 'this.getParentByType($organization$).getChildByName($设计部报装$).getChildren()',
1010
+ userid: this.$login.f.id
1011
+ }
1012
+
1013
+ let http = new HttpResetClass()
1014
+ let res = await http.load(
1015
+ 'POST',
1016
+ `rs/search`,
1017
+ {data: data},
1018
+ {resolveMsg: null, rejectMsg: '设计人员查询失败!!!'}
1019
+ )
1020
+
1021
+ return res.data.map(item => {
1022
+ return {
1023
+ label: item.name,
1024
+ value: item.id
1025
+ }
1026
+ })
1027
+ },
1028
+ // 申请节点初始化
1029
+ 'applyReadyEvent' () {
1030
+ this.addressInitialization()
1031
+
1032
+ this.pcdChange()
1033
+ this.streetChange()
1034
+ },
1035
+ // 合同金额失去焦点
1036
+ async 'contractMoneyChange' (index) {
1037
+ let data = {
1038
+ operator: '+',
1039
+ num1: this.show_data.f_contract_money || 0,
1040
+ num2: this.getLableValue('追加金额') || 0
1041
+ }
1042
+ let res = await this.$resetpost(
1043
+ `${this.$androidUtil.getProxyUrl()}/rs/logic/compute`,
1044
+ {data: data},
1045
+ {resolveMsg: null, rejectMsg: '金额计算失败!!!'}
1046
+ )
1047
+
1048
+ this.setLabelValue('应交金额', res.data)
1049
+ },
1050
+ // 街道失去焦点
1051
+ async 'streetChange' (index) {
1052
+ if (isEmpty(this.show_data.f_street)) {
1053
+ return
1054
+ }
1055
+
1056
+ this.setLabelValue('集收单位', null)
1057
+
1058
+ let data = {
1059
+ tablename: 't_area',
1060
+ condition: `f_filialeid = '${Vue.user.orgid}' and f_street = '${this.show_data.f_street}'`
1061
+ }
1062
+ let http = new HttpResetClass()
1063
+ let res = await http.load(
1064
+ 'POST',
1065
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
1066
+ {data: data},
1067
+ {resolveMsg: null, rejectMsg: '集收单位查询失败!!!'}
1068
+ )
1069
+
1070
+ this.setLabelOptions('集收单位', res.data.map(item => {
1071
+ return {
1072
+ label: item.f_residential_area,
1073
+ value: item.f_residential_area
1074
+ }
1075
+ }))
1076
+ },
1077
+ // 选择报建项目
1078
+ 'selectApply' (row) {
1079
+ this.setLabelValue('工程名称', row.f_entry_name)
1080
+ this.setLabelValue('工程编号', row.f_apply_num)
1081
+ this.setLabelValue('报建类型', row.f_apply_type)
1082
+ this.setLabelValue('用户名称', row.f_user_name)
1083
+ this.setLabelValue('用户电话', row.f_phone)
1084
+ this.setLabelValue('证件类型', row.f_credentials)
1085
+ this.setLabelValue('证件号码', row.f_idnumber)
1086
+ this.setLabelValue('地址', row.f_address)
1087
+ this.setLabelValue('累计缴费金额', row.f_cumulative_payment_money)
1088
+
1089
+ this.show_data.parentApply = JSON.parse(JSON.stringify(row))
1090
+
1091
+ delete row.id
1092
+ delete row.actid
1093
+ delete row.defid
1094
+ delete row.defname
1095
+ delete row.version
1096
+ delete row.f_apply_num
1097
+ delete row.f_sub_state
1098
+ delete row.f_apply_type
1099
+ delete row.f_process_id
1100
+
1101
+ this.show_data = Object.assign({}, this.show_data, row)
1102
+
1103
+ this.show_data.f_parent_process_id = this.show_data.parentApply.f_process_id
1104
+ },
1105
+ // 区县失去焦点
1106
+ async 'pcdChange' (index) {
1107
+ if (isEmpty(this.show_data.f_pcd)) {
1108
+ return
1109
+ }
1110
+
1111
+ this.setLabelValue('街道/乡镇', null)
1112
+ this.setLabelValue('集收单位', null)
1113
+
1114
+
1115
+
1116
+ let data = {
1117
+ tablename: 't_street',
1118
+ condition: `f_filialeid = '${Vue.user.orgid}' and f_pcd = '${this.show_data.f_pcd}'`
1119
+ }
1120
+ let f_address_type = this.getLableValue('地址类型')
1121
+
1122
+ if (f_address_type === '民用市区') {
1123
+ data.condition = `f_filialeid = '${Vue.user.orgid}' and f_pcd = '${this.show_data.f_pcd}' and f_iscity = '市区'`
1124
+ }
1125
+ if (f_address_type === '民用乡镇') {
1126
+ data.condition = `f_filialeid = '${Vue.user.f.orgid}' and f_pcd = '${this.show_data.f_pcd}' and f_iscity = '乡镇'`
1127
+ }
1128
+
1129
+ let http = new HttpResetClass()
1130
+ let res = await http.load(
1131
+ 'POST',
1132
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
1133
+ {data: data},
1134
+ {resolveMsg: null, rejectMsg: '街道/乡镇查询失败!!!'}
1135
+ )
1136
+
1137
+ this.setLabelOptions('街道/乡镇', res.data.map(item => {
1138
+ return {
1139
+ label: item.f_street,
1140
+ value: item.f_street
1141
+ }
1142
+ }))
1143
+ },
1144
+ // 选择用户档案信息
1145
+ 'selectUserinfo' (row) {
1146
+ this.setLabelValue('用户编号', row.f_userinfo_code)
1147
+ this.setLabelValue('用户名称', row.f_user_name)
1148
+ this.setLabelValue('用户电话', row.f_user_phone)
1149
+ this.setLabelValue('证件类型', row.f_credentials)
1150
+ this.setLabelValue('证件号码', row.f_idnumber)
1151
+ this.setLabelValue('地址', row.f_address)
1152
+
1153
+ this.show_data.f_userinfo_id = row.f_userinfo_id
1154
+ this.show_data.f_userinfo_code = row.f_userinfo_code
1155
+ },
1156
+ // 地址类型失去焦点
1157
+ 'addressTypeChange' (index) {
1158
+ this.setLabelValue('街道/乡镇', null)
1159
+ this.setLabelValue('集收单位', null)
1160
+ let f_address_type = this.show_data.fields[index].value
1161
+ for (const item of this.show_data.fields) {
1162
+ if (f_address_type === '民用市区') {
1163
+ if (item.label === '区/县' || item.label === '街道/乡镇' || item.label === '集收单位' || item.label === '门牌号') {
1164
+ item.hidden = false
1165
+ item.required = true
1166
+ item.value = null
1167
+ }
1168
+ if (item.label === '楼号/组' || item.label === '单元/排' || item.label === '楼层') {
1169
+ item.hidden = false
1170
+ item.required = false
1171
+ item.value = null
1172
+ }
1173
+ if (item.label === '地址') {
1174
+ item.readonly = true
1175
+ item.value = null
1176
+ }
1177
+ }
1178
+ if (f_address_type === '民用乡镇') {
1179
+ if (item.label === '区/县' || item.label === '街道/乡镇' || item.label === '集收单位' || item.label === '门牌号') {
1180
+ item.hidden = false
1181
+ item.required = true
1182
+ item.value = null
1183
+ }
1184
+ if (item.label === '楼号/组' || item.label === '单元/排' || item.label === '楼层') {
1185
+ item.hidden = false
1186
+ item.required = false
1187
+ item.value = null
1188
+ }
1189
+ if (item.label === '楼层') {
1190
+ item.hidden = true
1191
+ item.required = false
1192
+ item.value = null
1193
+ }
1194
+ if (item.label === '地址') {
1195
+ item.readonly = true
1196
+ item.value = null
1197
+ }
1198
+ }
1199
+ if (f_address_type === '特殊地址') {
1200
+ if (item.label === '区/县' || item.label === '街道/乡镇') {
1201
+ item.hidden = false
1202
+ item.required = true
1203
+ item.value = null
1204
+ }
1205
+ if (item.label === '集收单位') {
1206
+ item.hidden = false
1207
+ item.required = false
1208
+ item.value = null
1209
+ }
1210
+ if (item.label === '楼号/组' || item.label === '单元/排' || item.label === '楼层' || item.label === '门牌号') {
1211
+ item.hidden = true
1212
+ item.required = false
1213
+ item.value = null
1214
+ }
1215
+ if (item.label === '地址') {
1216
+ item.readonly = false
1217
+ item.value = null
1218
+ }
1219
+ }
1220
+ }
1221
+ },
1222
+ // 搜索小区
1223
+ async 'searchArea' (area, index) {
1224
+ let data = {
1225
+ tablename: 't_area',
1226
+ condition: `f_filialeid = '${Vue.user.orgid}' and f_street = '${this.show_data.f_street}' and f_residential_area like '%${area}%'`
1227
+ }
1228
+ let http = new HttpResetClass()
1229
+ let res = await http.load(
1230
+ 'POST',
1231
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
1232
+ {data: data},
1233
+ {resolveMsg: null, rejectMsg: '集收单位查询失败!!!'}
1234
+ )
1235
+
1236
+ if (res.data.length === 0) {
1237
+ return
1238
+ }
1239
+
1240
+ this.setLabelOptions('集收单位', res.data.map(item => {
1241
+ return {
1242
+ label: item.f_residential_area,
1243
+ value: item.f_residential_area
1244
+ }
1245
+ }))
1246
+ },
1247
+ // 团购转散户初始化
1248
+ 'apply2ReadyEvent' () {
1249
+ if (this.show_data.f_apply_source === '线下发起') {
1250
+ this.addressInitialization()
1251
+ this.hideLabels('用户编号')
1252
+ this.electiveLabels('用户编号')
1253
+ this.showLabels('片区', '地址类型')
1254
+ this.requiredLabels('片区', '地址类型')
1255
+ }
1256
+ if (this.show_data.f_apply_source === '自动发起') {
1257
+ this.hideLabels('片区', '地址类型')
1258
+ this.electiveLabels('片区', '地址类型',)
1259
+ }
1260
+ },
796
1261
  'onblur' (index) {},
797
1262
  'oninput' (index) {},
798
1263
  'initializtionView' () {},
@@ -0,0 +1,250 @@
1
+ <template>
2
+ <div style="margin-bottom: 20px" class="form-group select-overspread">
3
+ <label class="control-label-justify control-label col-sm-3">选择项目</label>
4
+ <div class="col-sm-10" >
5
+ <button class="button_search button_spacing" type="button" style="width: max-content;position: absolute" @click="openSelect" :disabled="mark === 1">选择</button>
6
+ </div>
7
+ </div>
8
+
9
+ <modal v-if="showselect" :show.sync="showselect" width="100%" title="用户信息" v-ref:modal large backdrop="false">
10
+ <article slot="modal-body" class="modal-body" style="height: 600px!important;">
11
+ <criteria-paged :model="model" v-ref:cp>
12
+ <criteria partial='criteria' @condition-changed='$parent.$parent.searchCondition' v-ref:cri>
13
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
14
+ <div class="row">
15
+ <div class="form-group col-sm-3">
16
+ <label class="font_normal_body">项目编号:</label>
17
+ <input type="text" style="width:60%" class="input_search" placeholder='项目编号' v-model="model.f_apply_num"
18
+ v-on:keyup.enter="search"
19
+ condition="u.f_apply_num = '{}'">
20
+ </div>
21
+ <div class="form-group col-sm-3">
22
+ <label class="font_normal_body">项目名称:</label>
23
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_entry_name"
24
+ v-on:keyup.enter="search" condition="u.f_entry_name like '%{}%'" placeholder='项目名称'>
25
+ </div>
26
+ <div class="form-group col-sm-3">
27
+ <label class="font_normal_body">客户名称:</label>
28
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
29
+ v-on:keyup.enter="search" condition="u.f_user_name = '{}'" placeholder='客户名称'>
30
+ </div>
31
+
32
+ <div class="form-group col-sm-3 button-range">
33
+ <button class="button_search button_spacing" @click.prevent="search" v-el:cx>查询</button>
34
+ <button class="button_clear button_spacing" @click.prevent="$parent.$parent.$parent.clear()">清空</button>
35
+ <div
36
+ :class="{'button_shrink_top':$parent.$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.$parent.criteriaShow}"
37
+ @click="$parent.$parent.$parent.criteriaShow = !$parent.$parent.$parent.criteriaShow"
38
+ class="button_spacing"
39
+ style="float: right">
40
+ </div>
41
+ </div>
42
+ </div>
43
+ <div class="row" v-show="$parent.$parent.$parent.criteriaShow">
44
+ <div class="form-group col-sm-3">
45
+ <label class="font_normal_body">电&emsp;&emsp;话:</label>
46
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_phone"
47
+ v-on:keyup.enter="search" condition="u.f_phone like '%{}%'" placeholder='联系电话'>
48
+ </div>
49
+ <div class="form-group col-sm-3">
50
+ <label class="font_normal_body">地&emsp;&emsp;址:</label>
51
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
52
+ v-on:keyup.enter="search" condition="u.f_address like '%{}%'" placeholder='详细地址'>
53
+ </div>
54
+ <div class="form-group col-sm-3">
55
+ <label class="font_normal_body">报建类型:</label>
56
+ <v-select
57
+ v-model="model.f_apply_type"
58
+ placeholder='报建类型'
59
+ condition="u.f_apply_type like '%{}%'"
60
+ :value.sync="model.f_apply_type"
61
+ :options='$parent.$parent.$parent.applyType'
62
+ class="select select_list"
63
+ :value-single="true"
64
+ @change="$parent.$parent.$parent.applyTypeChange()"
65
+ close-on-select ></v-select>
66
+ </div>
67
+ <div class="form-group col-sm-3">
68
+ <label class="font_normal_body">办理环节:</label>
69
+ <v-select
70
+ v-model="model.defname"
71
+ placeholder='办理环节'
72
+ condition="act.defname = '{}'"
73
+ :value.sync="model.defname"
74
+ :options='$parent.$parent.$parent.defnames'
75
+ class="select select_list"
76
+ :value-single="true"
77
+ close-on-select ></v-select>
78
+ </div>
79
+ </div>
80
+ </div>
81
+ </criteria>
82
+ <data-grid :model="model" partial='list' v-ref:grid class="list_area table_sy" style="height: 100%">
83
+ <template partial='head'>
84
+ <tr>
85
+ <th style="white-space: nowrap;">序号</th>
86
+ <th style="white-space: nowrap;">项目编号</th>
87
+ <th style="white-space: nowrap;">项目名称</th>
88
+ <th style="white-space: nowrap;">客户名称</th>
89
+ <th style="white-space: nowrap;">电话</th>
90
+ <th style="white-space: nowrap;">地址</th>
91
+ <th style="white-space: nowrap;">报建类型</th>
92
+ <th style="white-space: nowrap;">办理环节</th>
93
+ <th style="white-space: nowrap;">收费金额</th>
94
+ <th style="white-space: nowrap;">选择</th>
95
+ </tr>
96
+ </template>
97
+ <template partial='body'>
98
+ <tr >
99
+ <td style="text-align: center;">
100
+ <nobr><font>{{$index+1}}</font></nobr>
101
+ </td>
102
+ <td style="text-align: center;">
103
+ <nobr><font>{{ row.f_apply_num }}</font></nobr>
104
+ </td>
105
+ <td style="text-align: center;">
106
+ <nobr><font>{{ row.f_entry_name }}</font></nobr>
107
+ </td>
108
+ <td style="text-align: center;">
109
+ <nobr><font>{{ row.f_user_name }}</font></nobr>
110
+ </td>
111
+ <td style="text-align: center;">
112
+ <nobr><font>{{ row.f_phone }}</font></nobr>
113
+ </td>
114
+ <td style="text-align: center;">
115
+ <nobr><font>{{ row.f_address }}</font></nobr>
116
+ </td>
117
+ <td style="text-align: center;">
118
+ <nobr><font>{{ row.f_apply_type }}</font></nobr>
119
+ </td>
120
+ <td style="text-align: center;">
121
+ <nobr><font>{{ row.defname }}</font></nobr>
122
+ </td>
123
+ <td style="text-align: center;">
124
+ <nobr><font>{{ row.f_cumulative_payment_money }}</font></nobr>
125
+ </td>
126
+ <td style="text-align: center;">
127
+ <nobr><font>
128
+ <button type="button" name="button" class="button_export" @click.prevent="$parent.$parent.$parent.$parent.select(row)">确认选择</button>
129
+ </font></nobr>
130
+ </td>
131
+ </tr>
132
+ </template>
133
+ </data-grid>
134
+ </criteria-paged>
135
+ </article>
136
+ <footer slot="modal-footer" class="modal-footer">
137
+ </footer>
138
+ </modal>
139
+ </template>
140
+ <script>
141
+ import {PagedList} from 'vue-client'
142
+ import Vue from 'vue'
143
+ import {isEmpty} from "../../../Util";
144
+
145
+ export default {
146
+ title: '收费管理',
147
+ props: {
148
+ selectdata: {
149
+ type: Object
150
+ },
151
+ mark: {
152
+ type: Number,
153
+ default: 0
154
+ }
155
+ },
156
+ data () {
157
+ return {
158
+ showselect: false,
159
+ model: new PagedList(`${this.$androidUtil.getProxyUrl()}/rs/sql/supervisory`, 20, {
160
+ data: {
161
+ id: Vue.user.id,
162
+ orgid: Vue.user.orgid
163
+ }
164
+ }),
165
+ criteriaShow: false,
166
+ defnames: [{label: '全部', value: ''}]
167
+ }
168
+ },
169
+ ready () {
170
+ },
171
+ methods: {
172
+ async applyTypeChange () {
173
+ if (!isEmpty(this.$refs.cp.$refs.cri.model.f_apply_type)) {
174
+ let res = await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/logic/getDefnameByType`,
175
+ { f_apply_type: this.$refs.cp.$refs.cri.model.f_apply_type },
176
+ {resolveMsg: null, rejectMsg: '节点信息获取失败!!!'}
177
+ )
178
+
179
+ this.defnames = [{label: '全部', value: ''}, ...res.data]
180
+ } else {
181
+ this.defnames = [{label: '全部', value: ''}]
182
+ }
183
+ },
184
+ select (row) {
185
+ this.$dispatch('selectApply', row)
186
+
187
+ this.showselect = false
188
+ },
189
+ searchCondition (args) {
190
+ args.condition = `${args.condition} and act.defname != '完工' and act.state = '开始活动' and u.f_apply_type != '退款报建' and u.f_cumulative_payment_money > 0`
191
+
192
+ this.model.search(args.condition, args.model)
193
+ },
194
+ clear () {
195
+ Object.keys(this.$refs.cp.$refs.cri.model).forEach((key) => {
196
+ this.$refs.cp.$refs.cri.model[key] = null
197
+ })
198
+ },
199
+ openSelect () {
200
+ this.showselect = true
201
+ setTimeout(() => {
202
+ this.$refs.cp.$refs.cri.search()
203
+ }, 100)
204
+ }
205
+ },
206
+ events: {
207
+ },
208
+ computed: {
209
+ applyType () {
210
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('报建类型')]
211
+ }
212
+ },
213
+ watch: {
214
+ }
215
+ }
216
+ </script>
217
+ <style scoped>
218
+ .control-label-justify {
219
+ display: inline-block;
220
+ vertical-align: top;
221
+ width: 110px;
222
+ text-align: justify;
223
+ font-family: PingFang-SC-Bold;
224
+ }
225
+
226
+ .control-label-justify::after {
227
+ content: "";
228
+ display: inline-block;
229
+ width: 100%;
230
+ overflow: hidden;
231
+ height: 0;
232
+ }
233
+ .input_view{
234
+ padding: 8px;
235
+ background-color: #ffffff;
236
+ border-radius: 2px;
237
+ border: solid 1px #c7c7c7!important;
238
+ color: #333333!important;
239
+ font-size: 15px!important;
240
+ }
241
+
242
+ .input_view[readonly]{
243
+ border: 1px solid #DDD!important;
244
+ color:#ACA899!important;
245
+ }
246
+ .input_view:disabled{
247
+ border: 1px solid #DDD!important;
248
+ color:#ACA899!important;
249
+ }
250
+ </style>
@@ -0,0 +1,182 @@
1
+ <template>
2
+ <div style="margin-bottom: 20px" class="form-group select-overspread">
3
+ <label class="control-label-justify control-label col-sm-3">选择用户</label>
4
+ <div class="col-sm-10" >
5
+ <button class="button_search button_spacing" type="button" style="width: max-content;position: absolute" @click="openSelect" :disabled="mark === 1">选择</button>
6
+ </div>
7
+ </div>
8
+
9
+ <modal v-if="showselect" :show.sync="showselect" width="100%" title="用户信息" v-ref:modal large backdrop="false">
10
+ <article slot="modal-body" class="modal-body" style="height: 600px!important;">
11
+ <criteria-paged :model="model" v-ref:cp>
12
+ <criteria partial='criteria' @condition-changed='$parent.$parent.searchCondition' v-ref:cri>
13
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
14
+ <div class="row">
15
+ <div class="form-group col-sm-3">
16
+ <label class="font_normal_body">客户编号:</label>
17
+ <input type="text" style="width:60%" class="input_search" placeholder='客户编号' v-model="model.f_userinfo_code"
18
+ v-on:keyup.enter="search"
19
+ condition="ui.f_userinfo_code = '{}'">
20
+ </div>
21
+ <div class="form-group col-sm-3">
22
+ <label class="font_normal_body">客户名称:</label>
23
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
24
+ v-on:keyup.enter="search" condition="ui.f_user_name like '%{}%'" placeholder='客户名称'>
25
+ </div>
26
+ <div class="form-group col-sm-3">
27
+ <label class="font_normal_body">客户电话:</label>
28
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_phone"
29
+ v-on:keyup.enter="search" condition="ui.f_user_phone = '{}'" placeholder='客户电话'>
30
+ </div>
31
+
32
+ <div class="form-group col-sm-3 button-range">
33
+ <button class="button_search button_spacing" @click.prevent="search" v-el:cx>查询</button>
34
+ <button class="button_clear button_spacing" @click.prevent="$parent.$parent.$parent.clear()">清空</button>
35
+ <div
36
+ :class="{'button_shrink_top':$parent.$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.$parent.criteriaShow}"
37
+ @click="$parent.$parent.$parent.criteriaShow = !$parent.$parent.$parent.criteriaShow"
38
+ class="button_spacing"
39
+ style="float: right">
40
+ </div>
41
+ </div>
42
+ </div>
43
+ <div class="row" v-show="$parent.$parent.$parent.criteriaShow">
44
+ <div class="form-group col-sm-3">
45
+ <label class="font_normal_body">客户地址:</label>
46
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
47
+ v-on:keyup.enter="search" condition="ua.f_address like '%{}%'" placeholder='客户地址'>
48
+ </div>
49
+ </div>
50
+ </div>
51
+ </criteria>
52
+ <data-grid :model="model" partial='list' v-ref:grid class="list_area table_sy" style="height: 100%">
53
+ <template partial='head'>
54
+ <tr>
55
+ <th style="white-space: nowrap;">序号</th>
56
+ <th style="white-space: nowrap;">客户编号</th>
57
+ <th style="white-space: nowrap;">客户名称</th>
58
+ <th style="white-space: nowrap;">客户电话</th>
59
+ <th style="white-space: nowrap;">地址信息</th>
60
+ <th style="white-space: nowrap;">选择</th>
61
+ </tr>
62
+ </template>
63
+ <template partial='body'>
64
+ <tr >
65
+ <td style="text-align: center;">
66
+ <nobr><font>{{$index+1}}</font></nobr>
67
+ </td>
68
+ <td style="text-align: center;">
69
+ <nobr><font>{{ row.f_userinfo_code }}</font></nobr>
70
+ </td>
71
+ <td style="text-align: center;">
72
+ <nobr><font>{{ row.f_user_name }}</font></nobr>
73
+ </td>
74
+ <td style="text-align: center;">
75
+ <nobr><font>{{ row.f_user_phone }}</font></nobr>
76
+ </td>
77
+ <td style="text-align: center;">
78
+ <nobr><font>{{ row.f_address }}</font></nobr>
79
+ </td>
80
+ <td style="text-align: center;">
81
+ <nobr><font>
82
+ <button type="button" name="button" class="button_export" @click.prevent="$parent.$parent.$parent.$parent.select(row)">确认选择</button>
83
+ </font></nobr>
84
+ </td>
85
+ </tr>
86
+ </template>
87
+ </data-grid>
88
+ </criteria-paged>
89
+ </article>
90
+ <footer slot="modal-footer" class="modal-footer">
91
+ </footer>
92
+ </modal>
93
+ </template>
94
+ <script>
95
+ import {PagedList} from 'vue-client'
96
+ import Vue from 'vue'
97
+
98
+ export default {
99
+ title: '收费管理',
100
+ props: {
101
+ selectdata: {
102
+ type: Object
103
+ },
104
+ mark: {
105
+ type: Number,
106
+ default: 0
107
+ }
108
+ },
109
+ data () {
110
+ return {
111
+ showselect: false,
112
+ model: new PagedList(`${this.$androidUtil.getProxyUrl()}/rs/sql/applyGetUserinfos`, 20, null),
113
+ criteriaShow: false
114
+ }
115
+ },
116
+ ready () {
117
+ },
118
+ methods: {
119
+ select (row) {
120
+ this.$dispatch('selectUserinfo', row)
121
+
122
+ this.showselect = false
123
+ },
124
+ searchCondition (args) {
125
+ args.condition = `${args.condition} and ui.f_filialeid = '${Vue.user.orgid}'`
126
+
127
+ this.model.search(args.condition, args.model)
128
+ },
129
+ clear () {
130
+ Object.keys(this.$refs.cp.$refs.cri.model).forEach((key) => {
131
+ this.$refs.cp.$refs.cri.model[key] = null
132
+ })
133
+ },
134
+ openSelect () {
135
+ this.showselect = true
136
+ setTimeout(() => {
137
+ this.$refs.cp.$refs.cri.search()
138
+ }, 100)
139
+ }
140
+ },
141
+ events: {
142
+ },
143
+ computed: {
144
+ },
145
+ watch: {
146
+ }
147
+ }
148
+ </script>
149
+ <style scoped>
150
+ .control-label-justify {
151
+ display: inline-block;
152
+ vertical-align: top;
153
+ width: 110px;
154
+ text-align: justify;
155
+ font-family: PingFang-SC-Bold;
156
+ }
157
+
158
+ .control-label-justify::after {
159
+ content: "";
160
+ display: inline-block;
161
+ width: 100%;
162
+ overflow: hidden;
163
+ height: 0;
164
+ }
165
+ .input_view{
166
+ padding: 8px;
167
+ background-color: #ffffff;
168
+ border-radius: 2px;
169
+ border: solid 1px #c7c7c7!important;
170
+ color: #333333!important;
171
+ font-size: 15px!important;
172
+ }
173
+
174
+ .input_view[readonly]{
175
+ border: 1px solid #DDD!important;
176
+ color:#ACA899!important;
177
+ }
178
+ .input_view:disabled{
179
+ border: 1px solid #DDD!important;
180
+ color:#ACA899!important;
181
+ }
182
+ </style>