apply-clients 5.0.35-63 → 5.0.35-66

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.
@@ -1,13 +1,49 @@
1
1
  <template>
2
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>
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
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>
6
41
  </template>
7
42
  <script>
8
43
  import co from 'co'
9
44
  import Vue from 'vue'
10
45
  import {HttpResetClass} from 'vue-client'
46
+ import * as Util from "../Util";
11
47
  export default {
12
48
  title: '报建流程业务控制层',
13
49
  props: ['selectdata','selectmodel','show_data'],
@@ -19,11 +55,135 @@ export default {
19
55
  data:null, // 数据库数据,json配置文件数据的数据集合
20
56
  json_datas:null, // Json配置文件集合
21
57
  showview:false, // 控制显示service-view组件
22
- // 给view层显示的数据
23
- department_search:null // 当前部门下所有人
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:{}
24
71
  }
25
72
  },
26
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
+ user:Vue.user
101
+ }
102
+ await http.load('POST',this.$androidUtil.getProxyUrl() +'/rs/logic/newaddApplyproduct',{data:data}, {resolveMsg: null, rejectMsg: '转发失败,请联系开发人员'})
103
+ var flag = false
104
+ if (this.data.defname == '合同审核') {
105
+ flag = true
106
+ let http = new HttpResetClass()
107
+ let data = {
108
+ tablename: 't_singlevalue',
109
+ condition: `name = '合同编号' and f_filialeids = '${Vue.user.f_orgids}'`
110
+ }
111
+ let res = await http.load('POST', this.$androidUtil.getProxyUrl() +'/rs/sql/applysingleTable', {data: data}, {
112
+ resolveMsg: null,
113
+ rejectMsg: "获取合同编号失败"
114
+ })
115
+ if (this.contract != res.data[0].value && !this.selectdata.f_contract_number) {
116
+ this.$showMessage("合同编号已经被使用,请按F5刷新页面后重新登记")
117
+ return
118
+ }
119
+ }
120
+ let model = this.models2
121
+ let url = this.$androidUtil.getProxyUrl() +'/rs/logic/ApplyProductService'
122
+ let requestData = {
123
+ tables: this.data.tables, model: model
124
+ }
125
+ requestData.start_activity = '踏勘、建立工程编号'
126
+ requestData.loginUser = Vue.user
127
+ requestData.workflow_xmlfilename = this.$workflow_vue.workflow_xmlfilename
128
+ console.log('即将发送请求url=>' + url + ',参数=>' + JSON.stringify(requestData))
129
+ res = await http.load('POST', url, {data: requestData}, {resolveMsg: null, rejectMsg: '数据保存失败'})
130
+ console.log("service处理完成返回数据:", JSON.stringify(res.data))
131
+ if(res.data.msg=="地址重复,请修改后重新提交"){
132
+ this.$showMessage(res.data.msg)
133
+ }
134
+ if (res.data.code == 200) {
135
+ // flag 为合同编号更新标志
136
+ if (flag) {
137
+ let http = new HttpResetClass()
138
+ let data = {
139
+ tablename: 't_singlevalue',
140
+ condition: `name = '合同编号' and f_filialeids = '${Vue.user.f_orgids}'`,
141
+ value: (Number(this.contract) + 1) + ''
142
+ }
143
+ await http.load('POST', this.$androidUtil.getProxyUrl() +'/rs/logic/updatesinglevalue', {data: data}, {
144
+ resolveMsg: null,
145
+ rejectMsg: "获取合同编号更新失败"
146
+ })
147
+ }
148
+ this.showview = false
149
+ // 特殊处理
150
+ this.special(model)
151
+ this.$dispatch('close')
152
+ this.initializtion()
153
+ } else {
154
+ if (res.data.msg) {
155
+ this.$showMessage(res.data.msg)
156
+ }
157
+ }
158
+
159
+ this.apply_show = false
160
+ },
161
+ // 终止报建
162
+ async stopapplys () {
163
+ this.models = Object.assign({}, this.selectdata, this.models)
164
+ this.models.id = null
165
+ this.models.applyid = this.selectdata.id
166
+ this.models.f_operat_type = '终止报建'
167
+ this.models.f_state = '有效'
168
+ this.models.f_describe = this.selectdata.f_user_name + '已终止报建'
169
+ let data ={
170
+ tablename:'t_project_stop',
171
+ parameters:this.models
172
+ }
173
+ let http = new HttpResetClass()
174
+ await http.load('POST',this.$androidUtil.getProxyUrl() + '/rs/logic/save', {data:data},{resolveMsg: null, rejectMsg: "添加失败"})
175
+ await http.load('POST',this.$androidUtil.getProxyUrl() +'/rs/logic/stopapply', {data:this.models},{resolveMsg: null, rejectMsg: "终止失败"})
176
+ this.closeback()
177
+ this.$dispatch('close')
178
+ },
179
+ // 关闭终止备注弹框
180
+ closeback() {
181
+ this.stop_show = false
182
+ },
183
+ // 关闭报建弹框
184
+ closeapply() {
185
+ this.apply_show = false
186
+ },
27
187
  // 特殊化处理
28
188
  saveCallBack(jo){
29
189
  console.log(JSON.stringify(jo))
@@ -112,7 +272,6 @@ export default {
112
272
  // 下发人 options 处理,options初始化
113
273
  if(this.selectdata.actorexpression){
114
274
  //截取actorexpression
115
-
116
275
  let http = new HttpResetClass()
117
276
  var url = this.$androidUtil.getProxyUrl() + '/rs/search'
118
277
  console.log('即将请求后台获取下发人员,url=>' + url)
@@ -170,7 +329,8 @@ export default {
170
329
  }
171
330
  // 获取县区
172
331
  if (this.data.fields[i].label == '县/区') {
173
- let area = await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`, {
332
+ let http = new HttpResetClass()
333
+ let area = await http.load('post',`${this.$androidUtil.getProxyUrl()}/rs/sql/applysingleTable`, {
174
334
  data: {
175
335
  // items: 'f_bill_url,f_url_code',
176
336
  tablename: 't_pcd',
@@ -327,7 +487,7 @@ export default {
327
487
  // 控制设置级联
328
488
  // 源select所选的值 this.$refs.service_show.data.activitys.fields[index].value
329
489
  if (this.$refs.service_show.data.fields[i].label === '街道名称') {
330
- await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`, {
490
+ await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/sql/applysingleTable`, {
331
491
  data: {
332
492
  tablename: 't_street',
333
493
  condition: `f_filialeids = '${Vue.user.f_orgids}' and f_pcd='${temp}'`
@@ -355,7 +515,7 @@ export default {
355
515
  // 控制设置级联
356
516
  // 源select所选的值 this.$refs.service_show.data.activitys.fields[index].value
357
517
  if (this.$refs.service_show.data.fields[i].label === '小区名称') {
358
- await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`, {
518
+ await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/sql/applysingleTable`, {
359
519
  data: {
360
520
  tablename: 't_area',
361
521
  condition: `f_filialeids = '${Vue.user.f_orgids}' and f_street='${temp}'`
@@ -436,11 +596,31 @@ export default {
436
596
  }
437
597
  }
438
598
  }
599
+ if (this.$refs.service_show.data.fields[index].label == '用户类型'){
600
+ if(this.$refs.service_show.data.fields[index].value == '非民用'){
601
+ for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
602
+ if (this.$refs.service_show.data.fields[i].label === '小区名称') {
603
+ this.$refs.service_show.data.fields[i].required=false;
604
+ }
605
+ }
606
+ }else{
607
+ for (let i = 0; i < this.$refs.service_show.data.fields.length; i++) {
608
+ if (this.$refs.service_show.data.fields[i].label === '小区名称') {
609
+ this.$refs.service_show.data.fields[i].required=true;
610
+ }
611
+ }
612
+ }
613
+ }
439
614
  },
440
615
  // 获取view层button事件
441
616
  async 'button'(model){
617
+ if (this.data.defname==='踏勘、建立工程编号'){
618
+ if (model.button.button_name === '终止'){
619
+ this.stop_show=true
620
+ return
621
+ }
622
+ }
442
623
  this.loading=true
443
-
444
624
  console.log('进入async button事件方法')
445
625
  var delteLocal = true
446
626
  // 点击保存与重置按钮不需要修改本地工单状态
@@ -464,9 +644,15 @@ export default {
464
644
  console.log("button事件接收参数model=>" + JSON.stringify(model))
465
645
  model=Object.assign({},this.selectdata,model)
466
646
  console.log('合并selectdata与model后的model=>' + JSON.stringify(model))
647
+ if (this.data.defname==='踏勘、建立工程编号'&& model.button.button_name === '提交'){
648
+ this.loading=false
649
+ this.apply_show=true
650
+ this.models2 = model
651
+ return
652
+ }
467
653
  let http = new HttpResetClass()
468
654
  var url = this.$androidUtil.getProxyUrl() + '/rs/logic/ApplyProductService'
469
- // let res = await http.load('POST',url,{data:{tables:this.data.tables,start_activity:this.$workflow_vue.start_activity,model:model,loginUser:Vue.user}}, {resolveMsg: null, rejectMsg: null})
655
+ // let res = await http.load('POST',url,{data:data}, {resolveMsg: null, rejectMsg: null})
470
656
  // // 先判断是否包含code,如果服务端异常,可能不存在code
471
657
  // console.log("service处理完成返回数据=>" + res)
472
658
  // if(!res.code){
@@ -501,7 +687,7 @@ export default {
501
687
 
502
688
  let btn_operate = function * (self, url, http, model, delteLocal) {
503
689
  self.delteLocal=delteLocal
504
-
690
+ console.log("model的信息",model)
505
691
  // 下发,提交,保存,退回都在后台处理
506
692
  console.log('即将请求后台url=>' + url)
507
693
  model.employeetemplate=''
@@ -510,7 +696,8 @@ let btn_operate = function * (self, url, http, model, delteLocal) {
510
696
  let param={
511
697
  employeetemplate:'',
512
698
  tables:self.data.tables,
513
- start_activity:self.$workflow_vue.start_activity,
699
+ workflow_xmlfilename : self.$workflow_vue.workflow_xmlfilename,
700
+ start_activity:model.start_activity,
514
701
  model:model,
515
702
  loginUser:Vue.user
516
703
  }
@@ -8,7 +8,7 @@
8
8
  <div class="col-sm-11 form-group">
9
9
  <div v-for="(index,item) in data.fields">
10
10
  <!--input-->
11
- <div v-if="item.type==='input'" v-show="!item.hidden"
11
+ <div v-if="item.type==='input' ||item.type === 'tel' " v-show="!item.hidden"
12
12
  :class="[data.fields[index].required&&!(data.fields[index].value) ? 'has-error' : '',data.fields[index].bootstraped?data.fields[index].bootstraped+' form-group':'col-sm-4 form-group']">
13
13
  <label
14
14
  :class="item.label_bootstraped?item.label_bootstraped+' control-label':'control-label col-sm-6'">{{
@@ -22,7 +22,7 @@
22
22
  :value="data.fields[index].value"
23
23
  :readonly="item.readonly"
24
24
  :disable="item.disable"
25
- @change="disabled_check(index,data.fields[index].required,data.fields[index].value)"
25
+ @change="select_change(index),disabled_check(index,data.fields[index].required,data.fields[index].value)"
26
26
  @blur="check_disable"
27
27
  />
28
28
  </div>
@@ -133,10 +133,8 @@
133
133
  <div v-if="item.type==='checkbox'"
134
134
  :class="[data.fields[index].required&&!(data.fields[index].value) ? 'has-error' : '',data.fields[index].bootstraped?data.fields[index].bootstraped+' form-group':'col-sm-12 form-group']">
135
135
  <label v-if="item.label"
136
- :class="item.label_bootstraped?item.label_bootstraped+' control-label':'control-label col-sm-2'">{{
137
- item.label
138
- }}:</label>
139
- <div style="margin-top: 0.7em"
136
+ :class="item.label_bootstraped?item.label_bootstraped+' control-label':'control-label col-sm-2'">{{item.label }}</label>
137
+ <div style="margin-top: 6px"
140
138
  :class="item.value_bootstraped?item.value_bootstraped:'control-label col-sm-2'"
141
139
  v-for="(index2,row) in item.items">
142
140
  <label class="font-size form-group col-sm-6">{{ row.label }}</label>
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div class="auto form-horizontal" >
3
- <modal :show.sync="show" v-ref:modal large backdrop="false">
3
+ <modal :show.sync="show" v-if="show" v-ref:modal large backdrop="false">
4
4
  <header slot="modal-header" class="modal-header">
5
5
  <h3 style="color:black" class="modal-title" >{{billConfig.billtype}}</h3>
6
6
  <button type="button" class="close" @click="closebuyerinfo"><span>&times;</span></button>
@@ -11,8 +11,8 @@
11
11
  <!-- </div>-->
12
12
  <validator name='v'>
13
13
  <form class="form-horizontal select-overspread">
14
- <div class="row" style="display: flex;justify-content: center;" id='normal-bill' v-if="bill.data">
15
- {{{bill.data}}}
14
+ <div class="row" style="display: flex;justify-content: center;" id='normal-bill_xx' v-if="bill.data" v-html="bill.data">
15
+
16
16
  </div>
17
17
  </form>
18
18
  </validator>
@@ -24,7 +24,7 @@
24
24
  </div>
25
25
  </div>
26
26
  <button type="button" class="btn btn-success" @click='print()'>打印</button>
27
- <report-print id='normal-bill' top='15mm' left='5mm' width='90%' height='70%' :notrepeat="false" :showbtn="false" v-ref:reportprint></report-print>
27
+ <report-print :id="'normal-bill_xx'" top='15mm' left='5mm' width='90%' height='70%' :notrepeat="false" :showbtn="false" v-ref:reportprint></report-print>
28
28
  <button type="button" class="btn btn-default" @click='cancel()' v-if="!billConfig.hasBillManage">取消</button>
29
29
  </footer>
30
30
  </modal>
@@ -51,7 +51,7 @@
51
51
  model: {
52
52
  f_using_number: null
53
53
  },
54
- bill: {},
54
+ bill: {data:''},
55
55
  messShow: false
56
56
  }
57
57
  },
@@ -180,9 +180,9 @@
180
180
  <div class="form-input-group col-sm-12">
181
181
  <div class="form-input-group col-sm-3">
182
182
  <label for="f_charge_item" class="control-label col-sm-2">
183
- <button class="glyphicon glyphicon-minus btn-danger" v-if="$index>0"
183
+ <button class="glyphicon glyphicon-minus btn-danger" type="button" v-if="$index>0"
184
184
  @click.stop="delItems($index)"></button>&nbsp;&nbsp;&nbsp;
185
- <button class="glyphicon glyphicon-plus btn-success" @click.stop="addItems()"></button>
185
+ <button class="glyphicon glyphicon-plus btn-success" type="button" @click.stop="addItems()"></button>
186
186
  </label>
187
187
  <div class="col-sm-2">
188
188
  <v-select id="f_charge_item" +$index
@@ -257,7 +257,7 @@
257
257
 
258
258
  <validator name='v'>
259
259
  <form class="form-horizontal select-overspread">
260
- <div class="row" style="display: flex;justify-content: center;" id='normal-bill'>
260
+ <div class="row" style="display: flex;justify-content: center;" id='normal-bill2'>
261
261
  <div class="form-group col-sm-6">
262
262
  <label class=" col-sm-2 control-label">购买方名称:</label>
263
263
  <input type="text" class="form-control" v-model="paperinfo.f_buy_name" style="width:60%"
@@ -8,7 +8,7 @@
8
8
 
9
9
  <validator name='v'>
10
10
  <form class="form-horizontal select-overspread">
11
- <div class="row" style="display: flex;justify-content: center;" id='normal-bill' >
11
+ <div class="row" style="display: flex;justify-content: center;" id='normal-bill2' >
12
12
  <div class="form-group col-sm-6">
13
13
  <label class=" col-sm-2 control-label">发票代码:</label>
14
14
  <input type="text" class="form-control" v-model="model.f_bill_code" style="width:60%"