apply-clients 5.0.35-8 → 5.0.35-82

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 (52) hide show
  1. package/.eslintrc.js +16 -16
  2. package/package.json +3 -3
  3. package/src/AndroidApp.vue +28 -28
  4. package/src/android.js +18 -18
  5. package/src/apply.js +15 -1
  6. package/src/components/app_apply/ApplyDownList.vue +168 -168
  7. package/src/components/app_apply/ApplyInfo.vue +56 -56
  8. package/src/components/app_apply/ApplyListUpload.vue +268 -268
  9. package/src/components/app_apply/ApplyToDoList.vue +2582 -5
  10. package/src/components/app_apply/Gongcheng.vue +3631 -0
  11. package/src/components/app_apply/OneToMany.vue +194 -0
  12. package/src/components/app_apply/PlaceControler.vue +299 -273
  13. package/src/components/app_apply/ServiceControl.vue +411 -16
  14. package/src/components/app_apply/ServiceView.vue +383 -383
  15. package/src/components/app_apply/ezhou/FeiMinYongV.vue +109 -109
  16. package/src/components/app_apply/ezhou/FeiMinYongVV.vue +100 -100
  17. package/src/components/app_apply/ezhou/MinYong.vue +92 -92
  18. package/src/components/app_apply/ezhou/ServiceView.vue +387 -205
  19. package/src/components/image/doc.jpg +0 -0
  20. package/src/components/image/dwg.png +0 -0
  21. package/src/components/image/dxf.png +0 -0
  22. package/src/components/image/excel.jpg +0 -0
  23. package/src/components/image/pdf.jpg +0 -0
  24. package/src/components/product/Common/ApplyValidateBill.vue +13 -6
  25. package/src/components/product/Common/PrintBill.vue +7 -6
  26. package/src/components/product/EngineeringManagement/EngineerUpload.vue +304 -0
  27. package/src/components/product/EngineeringManagement/EngineeringManagement.vue +137 -0
  28. package/src/components/product/EngineeringManagement/EngineeringSelect.vue +586 -0
  29. package/src/components/product/EngineeringSupervisory/EngineeringApplyStopInfo.vue +281 -0
  30. package/src/components/product/EngineeringSupervisory/EngineeringSupervisoryControl.vue +130 -0
  31. package/src/components/product/EngineeringSupervisory/EngineeringSupervisoryList.vue +340 -0
  32. package/src/components/product/EngineeringSupervisory/EngineeringSupervisoryServiceControl.vue +486 -0
  33. package/src/components/product/Function/InstallInfoSelect.vue +255 -254
  34. package/src/components/product/Function/Service/FunctionServiceControl.vue +37 -1
  35. package/src/components/product/Function/functions/ApplyUpload.vue +556 -0
  36. package/src/components/product/Function/functions/BuyerMessage.vue +512 -512
  37. package/src/components/product/Function/functions/InstallFee.vue +581 -345
  38. package/src/components/product/Process/ExplorationSelect.vue +640 -636
  39. package/src/components/product/Process/Processes/CustomerRecordMessage.vue +2 -5
  40. package/src/components/product/Process/Processes/Service/ApplyChargeSearch.vue +392 -305
  41. package/src/components/product/Process/Processes/Service/PaperTicketBill.vue +85 -0
  42. package/src/components/product/Process/Processes/Service/ServiceControl.vue +2155 -1808
  43. package/src/components/product/ServiceView.vue +16 -6
  44. package/src/components/product/Supervisory/Service/SupervisoryServiceControl.vue +53 -6
  45. package/src/components/product/Supervisory/SupervisoryList.vue +57 -5
  46. package/src/components/product/applyReport/ApplyReport.vue +205 -0
  47. package/src/components/product/applyReport/PrintApplyReport.vue +116 -0
  48. package/src/components/product/stopInfo/ApplyStopInfo.vue +281 -280
  49. package/src/ezhouAndroid.js +13 -10
  50. package/src/index.js +8 -8
  51. package/src/main.js +32 -32
  52. package/src/plugins/commonService.js +11 -7
@@ -1,16 +1,20 @@
1
1
  <template>
2
- <div class="auto select-overspread">
3
- <div v-if="data.back_reason" class="panel panel-info">
4
- <span style="color: red"> 请注意被退回原因为:{{data.back_reason}}</span>
2
+ <div class="auto select-overspread" v-if="refresh">
3
+ <div v-if="data.back_reason" class="panel panel-info">
4
+ <span style="color: red"> 请注意被退回原因为:{{ data.back_reason }}</span>
5
5
  </div>
6
6
  <validator name="v">
7
7
  <form class="form-horizontal">
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" :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']">
12
- <label :class="item.label_bootstraped?item.label_bootstraped+' control-label':'control-label col-sm-6'">{{item.label}}:</label>
13
- <div :class="item.value_bootstraped?item.value_bootstraped:'col-sm-6'">
11
+ <div v-if="item.type==='input' ||item.type === 'tel' " v-show="!item.hidden"
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
+ <label
14
+ :class="item.label_bootstraped?item.label_bootstraped+' control-label':'control-label col-sm-6'">{{
15
+ item.label
16
+ }}:</label>
17
+ <div :class="item.value_bootstraped?item.value_bootstraped:'col-sm-6'">
14
18
  <input class="form-control"
15
19
  :type="item.type"
16
20
  v-model="data.fields[index].value"
@@ -18,15 +22,19 @@
18
22
  :value="data.fields[index].value"
19
23
  :readonly="item.readonly"
20
24
  :disable="item.disable"
21
- @change="disabled_check(index,data.fields[index].required,data.fields[index].value)"
22
- @blur ="check_disable"
25
+ @change="select_change(index),disabled_check(index,data.fields[index].required,data.fields[index].value)"
26
+ @blur="check_disable"
23
27
  />
24
28
  </div>
25
29
  </div>
26
30
  <!--number-->
27
- <div v-if="item.type==='number'" v-show="!item.hidden" :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']">
28
- <label :class="item.label_bootstraped?item.label_bootstraped+' control-label':'control-label col-sm-6'">{{item.label}}:</label>
29
- <div :class="item.value_bootstraped?item.value_bootstraped:'col-sm-6'">
31
+ <div v-if="item.type==='number'" v-show="!item.hidden"
32
+ :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']">
33
+ <label
34
+ :class="item.label_bootstraped?item.label_bootstraped+' control-label':'control-label col-sm-6'">{{
35
+ item.label
36
+ }}:</label>
37
+ <div :class="item.value_bootstraped?item.value_bootstraped:'col-sm-6'">
30
38
  <input class="form-control"
31
39
  :type="item.type"
32
40
  v-model="data.fields[index].value"
@@ -35,15 +43,19 @@
35
43
  :readonly="item.readonly"
36
44
  :disable="item.disable"
37
45
  @change="disabled_check(index,data.fields[index].required,data.fields[index].value)"
38
- @blur ="check_disable"
46
+ @blur="check_disable"
39
47
  />
40
48
  </div>
41
49
  </div>
42
50
 
43
51
  <!--时间datepicker-->
44
- <div v-if="item.type==='datepicker'" :class="[data.fields[index].required&&!(data.fields[index].value) ? 'has-error' : '',data.fields[index].bootstraped?data.fields[index].bootstraped+' form-group':'col-xs-12 form-group']">
45
- <label style="margin-top: 0.7em" :class="item.label_bootstraped?item.label_bootstraped +' control-label':'control-label col-sm-6'">{{item.label}}:</label>
46
- <div :class="item.value_bootstraped?item.value_bootstraped:'col-sm-6'">
52
+ <div v-if="item.type==='datepicker'"
53
+ :class="[data.fields[index].required&&!(data.fields[index].value) ? 'has-error' : '',data.fields[index].bootstraped?data.fields[index].bootstraped+' form-group':'col-xs-12 form-group']">
54
+ <label style="margin-top: 0.7em"
55
+ :class="item.label_bootstraped?item.label_bootstraped +' control-label':'control-label col-sm-6'">{{
56
+ item.label
57
+ }}:</label>
58
+ <div :class="item.value_bootstraped?item.value_bootstraped:'col-sm-6'">
47
59
  <datepicker
48
60
  :placeholder="item.placeholder"
49
61
  :value.sync="data.fields[index].value"
@@ -53,7 +65,7 @@
53
65
  class="form-control"
54
66
  :readonly="item.readonly"
55
67
  :disabled="item.disabled"
56
- @blur ="check_disable"
68
+ @blur="check_disable"
57
69
  :show-reset-button="reset">
58
70
  </datepicker>
59
71
  </div>
@@ -61,9 +73,13 @@
61
73
 
62
74
 
63
75
  <!--textarea-->
64
- <div v-if="item.type==='textarea'" :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']">
65
- <label :class="item.label_bootstraped?item.label_bootstraped+' control-label':'control-label col-sm-2'">{{item.label}}:</label>
66
- <div :class="item.value_bootstraped?item.value_bootstraped:'col-sm-10'">
76
+ <div v-if="item.type==='textarea'"
77
+ :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']">
78
+ <label
79
+ :class="item.label_bootstraped?item.label_bootstraped+' control-label':'control-label col-sm-2'">{{
80
+ item.label
81
+ }}:</label>
82
+ <div :class="item.value_bootstraped?item.value_bootstraped:'col-sm-10'">
67
83
  <textarea
68
84
  :readonly="item.readonly"
69
85
  :disabled="item.disabled"
@@ -71,57 +87,84 @@
71
87
  :rows="item.rows"
72
88
  v-model="data.fields[index].value"
73
89
  @change="disabled_check(index,data.fields[index].required,data.fields[index].value)"
74
- @blur ="check_disable"
90
+ @blur="check_disable"
75
91
  >
76
92
  </textarea>
77
93
  </div>
78
94
  </div>
79
95
 
80
96
  <!--radio-->
81
- <div v-if="item.type==='radio'" :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']">
82
- <label v-if="item.label" :class="item.label_bootstraped?item.label_bootstraped+' control-label':'control-label col-sm-2'">{{item.label}}:</label>
97
+ <div v-if="item.type==='radio'"
98
+ :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']">
99
+ <label v-if="item.label"
100
+ :class="item.label_bootstraped?item.label_bootstraped+' control-label':'control-label col-sm-2'">{{
101
+ item.label
102
+ }}:</label>
83
103
  <div class="col-xs-12">
84
- <div :class="item.value_bootstraped?item.value_bootstraped:item.items.length%2 == 0?'col-xs-5': 'col-xs-3'" v-for="(index2,row) in item.items">
85
- <label style="margin-top: 0.7em" for="row.label" :class="item.items.length%2 == 0?'col-xs-4': 'col-xs-2'">{{row.label}}</label>
86
- <input @blur ="check_disable" :class="item.items.length%2 == 0?'col-xs-1': 'col-xs-1'" :readonly="item.readonly" :disabled="item.disabled" style="margin-top: 10px" type="radio" :name="index" :id="row.label" v-bind:value="data.fields[index].items[index2].value" v-model="data.fields[index].value">
104
+ <div
105
+ :class="item.value_bootstraped?item.value_bootstraped:item.items.length%2 == 0?'col-xs-5': 'col-xs-3'"
106
+ v-for="(index2,row) in item.items">
107
+ <label style="margin-top: 0.7em" for="row.label"
108
+ :class="item.items.length%2 == 0?'col-xs-4': 'col-xs-2'">{{ row.label }}</label>
109
+ <input @blur="check_disable" :class="item.items.length%2 == 0?'col-xs-1': 'col-xs-1'"
110
+ :readonly="item.readonly" :disabled="item.disabled" style="margin-top: 10px" type="radio"
111
+ :name="index" :id="row.label" v-bind:value="data.fields[index].items[index2].value"
112
+ v-model="data.fields[index].value">
87
113
  </div>
88
114
  </div>
89
115
  </div>
90
116
 
91
117
  <!--select-->
92
- <div v-if="item.type==='select'" :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']">
93
- <label :class="item.label_bootstraped?item.label_bootstraped+' control-label':'control-label col-sm-6'">{{item.label}}:</label>
94
- <input-select :class="item.value_bootstraped?item.value_bootstraped:'col-sm-6'" @blur ="check_disable" @change="select_change(index),disabled_check(index,data.fields[index].required,data.fields[index].value)" :readonly="item.readonly" :disable="item.disabled" :value.sync="data.fields[index].value" v-model="data.fields[index].value"
118
+ <div v-if="item.type==='select'"
119
+ :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']">
120
+ <label
121
+ :class="item.label_bootstraped?item.label_bootstraped+' control-label':'control-label col-sm-6'">{{
122
+ item.label
123
+ }}:</label>
124
+ <input-select :class="item.value_bootstraped?item.value_bootstraped:'col-sm-6'" @blur="check_disable"
125
+ @change="select_change(index),disabled_check(index,data.fields[index].required,data.fields[index].value)"
126
+ :readonly="item.readonly" :disable="item.disabled" :value.sync="data.fields[index].value"
127
+ v-model="data.fields[index].value"
95
128
  :options='item.options' :valueSingle="true"></input-select>
96
129
 
97
130
  </div>
98
131
 
99
132
  <!--checkbox-->
100
- <div v-if="item.type==='checkbox'" :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']">
101
- <label v-if="item.label" :class="item.label_bootstraped?item.label_bootstraped+' control-label':'control-label col-sm-2'">{{item.label}}:</label>
102
- <div style="margin-top: 0.7em" :class="item.value_bootstraped?item.value_bootstraped:'control-label col-sm-2'" v-for="(index2,row) in item.items">
103
- <label class="font-size form-group col-sm-6">{{row.label}}</label>
104
- <input :readonly="item.readonly" :disabled="item.disabled" type="checkbox" class="col-sm-6" :id="row.label" v-model="data.fields[index].items[index2].value">
133
+ <div v-if="item.type==='checkbox'"
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
+ <label v-if="item.label"
136
+ :class="item.label_bootstraped?item.label_bootstraped+' control-label':'control-label col-sm-2'">{{item.label }}</label>
137
+ <div style="margin-top: 6px"
138
+ :class="item.value_bootstraped?item.value_bootstraped:'control-label col-sm-2'"
139
+ v-for="(index2,row) in item.items">
140
+ <label class="font-size form-group col-sm-6">{{ row.label }}</label>
141
+ <input :readonly="item.readonly" :disabled="item.disabled" type="checkbox" class="col-sm-6"
142
+ :id="row.label" v-model="data.fields[index].items[index2].value" @click="checkboxSelect(index,index2)">
105
143
  </div>
106
144
  </div>
107
145
 
108
146
 
109
147
  </div>
110
148
  </div>
111
- <div class="form-group col-sm-11" v-show="isshow">
149
+ <div class="form-group col-sm-11">
112
150
  <label class="text-left font">现场照片</label>
113
151
 
114
152
  <div class="auto">
115
153
  <div class="panel" style="padding: 10px 10px 5px 10px;">
116
- <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
117
- <div class="row" style="height: 240px;overflow: scroll;top: 1px" >
118
- <div class="col-xs-4 col-sm-3 col-md-2" style="margin-bottom: 35px" v-for="(index,img) in model.f_overall_imgs">
154
+ <div class="panel-body panel-self"
155
+ style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
156
+ <div class="row" style="height: 240px;overflow: scroll;top: 1px">
157
+ <div class="col-xs-4 col-sm-3 col-md-2" style="margin-bottom: 35px"
158
+ v-for="(index,img) in model.f_overall_imgs">
119
159
  <img-self :src="img.f_overall_path" alt="现场照片" :width="140" :height="170"></img-self>
120
- <img src="../../../assets/删除.png" @click="delfile('f_overall_path', img.f_overall_path,index)" style="width: 15px;margin-top: -80px" alt="">
160
+ <img src="../../../assets/删除.png" @click="delfile('f_overall_path', img.f_overall_path,index)"
161
+ style="width: 15px;margin-top: -80px" alt="">
121
162
  </div>
122
163
  </div>
123
164
  <div class="row text-right div-photo">
124
- <button type="button" name="button" class="btn btn-photo" @click="takePic('f_overall_path', '现场照片')">拍照</button>
165
+ <button type="button" name="button" class="btn btn-photo" @click="takePic('f_overall_path', '现场照片')">
166
+ 拍照
167
+ </button>
125
168
  <!--<button type="button" name="button" class="btn btn-primary btn-photo" @click="takePic('f_overall_path', '总体安检照片1')">拍照</button>-->
126
169
  <!--&nbsp;&nbsp;&nbsp;&nbsp;<img src="../../../assets/remove.png" :class="style__" @click="delfile('f_overall_path', img.f_overall_path)" style="width: 25%;"></img>-->
127
170
  </div>
@@ -129,14 +172,15 @@
129
172
  </div>
130
173
  </div>
131
174
  </div>
132
- <div class="form-group col-sm-11" v-show="isshow">
175
+ <div class="form-group col-sm-11" v-show="true">
133
176
  <label class="text-left font">用户签名</label>
134
177
  <div class="auto">
135
178
  <div class="panel">
136
- <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
179
+ <div class="panel-body panel-self"
180
+ style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
137
181
  <div class="row" style="height: 240px;overflow: scroll;top: 1px">
138
182
  <div class="col-sm-4">
139
- <img :src="model.f_sign_path" :width="200" :height="150" />
183
+ <img :src="model.f_sign_path" :width="200" :height="150"/>
140
184
  </div>
141
185
  </div>
142
186
  <div class="row text-right div-photo">
@@ -147,17 +191,20 @@
147
191
  </div>
148
192
  </div>
149
193
 
150
- <!-- <input @click="gotohetong('民用')" type="checkbox" v-model="model.f_hege"/><label class="text-left font">我已阅读<a href="#" @click="gotohetong('民用')">居民天然气供用气合同</a></label>-->
194
+ <!-- <input @click="gotohetong('民用')" type="checkbox" v-model="model.f_hege"/><label class="text-left font">我已阅读<a href="#" @click="gotohetong('民用')">居民天然气供用气合同</a></label>-->
151
195
  <div class="form-group col-sm-11" v-show="kchege&&data.f_user_type=='民用'&&data.title!='现场勘查'">
152
- <input type="checkbox" v-model="model.f_hege"/><label class="text-left font">我已阅读<a href="#" @click="gotohetong('民用')">居民天然气供用气合同</a></label>
196
+ <input type="checkbox" v-model="model.f_hege"/><label class="text-left font">我已阅读<a href="#"
197
+ @click="gotohetong('民用')">居民天然气供用气合同</a></label>
153
198
  </div>
154
199
  <div class="form-group col-sm-11" v-show="kchege&&(data.f_user_type=='非民用'||data.title=='现场勘查')">
155
- <input type="checkbox" v-model="model.f_hege"/><label class="text-left font">我已阅读<a href="#" @click="gotohetong('非民用1')">天然气工程建设安装合同</a>,<a href="#" @click="gotohetong('非民用2')">管道燃气供用气合同</a></label>
200
+ <input type="checkbox" v-model="model.f_hege"/><label class="text-left font">我已阅读<a href="#"
201
+ @click="gotohetong('非民用1')">天然气工程建设安装合同</a>,<a
202
+ href="#" @click="gotohetong('非民用2')">管道燃气供用气合同</a></label>
156
203
  </div>
157
204
  <div class="form-group col-sm-11" v-show="kcbuhege">
158
- <div class="col-sm-12 form-group">
159
- <label class="control-label col-sm-2">不合格原因:</label>
160
- <div class="col-sm-10">
205
+ <div class="col-sm-12 form-group">
206
+ <label class="control-label col-sm-2">不合格原因:</label>
207
+ <div class="col-sm-10">
161
208
  <textarea
162
209
  class="form-control"
163
210
  v-model="model.f_buhege_reason">
@@ -167,11 +214,20 @@
167
214
 
168
215
 
169
216
  </div>
217
+
218
+
219
+
220
+ <div class="col-sm-11 form-group" v-for="item in onetomany" style="text-align: center">
221
+
222
+ <button type="button" name="button" class="btn btn-primary" style="background-color:#499edf;" @click="gotoOneToMany(item)">前往{{item.title}}</button>
223
+
224
+ </div>
225
+
170
226
  <div class="col-sm-11 form-group">
171
227
  <div class="form-group col-sm-6">
172
228
  <label class=" col-sm-4 control-label">分公司:</label>
173
229
  <div class="col-sm-5">
174
- <input class="form-control" type="text" v-model="model.f_filiale" disabled>
230
+ <input class="form-control" type="text" v-model="model.f_filiale" disabled>
175
231
  </div>
176
232
  </div>
177
233
  <div class="col-sm-6 form-group">
@@ -200,12 +256,13 @@
200
256
  </validator>
201
257
  <div class="from-group col-xs-12">
202
258
  <center>
203
- <div v-for="(index,button) in data.buttons" :class="[data.buttons.length==4?'col-xs-3':'',data.buttons.length==3?'col-xs-4':'',data.buttons.length==2?'col-xs-6':'']">
259
+ <div v-for="(index,button) in data.buttons"
260
+ :class="[data.buttons.length==4?'col-xs-3':'',data.buttons.length==3?'col-xs-4':'',data.buttons.length==2?'col-xs-6':'']">
204
261
  <!-- 按钮组 -->
205
- <button :disabled="(button.button_name==='提交'||button.button_name==='下发')&&disable_button"
206
- type="button" @click="clicked(index,button)" style="border-radius:5px; "
207
- :class="[(button.button_name==='提交'||button.button_name==='下发')&&disable_button?'btn btn-default':'btn btn-primary',data.buttons.length==4 ? 'col-xs-2 col-xs-offset-1':'',data.buttons.length==3 ? 'col-xs-2 col-xs-offset-2':'',data.buttons.length==2 ? 'col-xs-4 col-xs-offset-2':'']">
208
- {{button.button_name}}
262
+ <button :disabled="(button.button_name==='提交'||button.button_name==='下发')&&disable_button"
263
+ type="button" @click="clicked(index,button)" style="border-radius:5px; "
264
+ :class="[(button.button_name==='提交'||button.button_name==='下发')&&disable_button?'btn btn-default':'btn btn-primary',data.buttons.length==4 ? 'col-xs-2 col-xs-offset-1':'',data.buttons.length==3 ? 'col-xs-2 col-xs-offset-2':'',data.buttons.length==2 ? 'col-xs-4 col-xs-offset-2':'']">
265
+ {{ button.button_name }}
209
266
  </button>
210
267
  </div>
211
268
  </center>
@@ -215,17 +272,20 @@
215
272
  <modal v-if="showmodal" :show.sync="showmodal" v-ref:modal backdrop="false">
216
273
  <header slot="modal-header" class="modal-header">
217
274
  <button type="button" class="close" @click="closemodal"><span>&times;</span></button>
218
- <h4 class="modal-title">{{model.button.button_name}}</h4>
275
+ <h4 class="modal-title">{{ model.button.button_name }}</h4>
219
276
  </header>
220
- <article slot="modal-body" class="modal-body">
221
- <div class="col-sm-12" v-for="(index,button_field) in data.buttons[model.button.button_index].button_fields">
222
- <label class="control-label col-sm-3" style="margin-top: 10px">{{button_field.label}}:</label>
223
- <div class="col-sm-7">
277
+ <article slot="modal-body" class="modal-body">
278
+ <div class="col-sm-12" v-for="(index,button_field) in data.buttons[model.button.button_index].button_fields">
279
+ <label class="control-label col-sm-3" style="margin-top: 10px">{{ button_field.label }}:</label>
280
+ <div class="col-sm-7">
224
281
  <!--select-->
225
- <input-select v-if="button_field.type=='select'" :value.sync="data.buttons[model.button.button_index].button_fields[index].value" v-model="data.buttons[model.button.button_index].button_fields[index].value"
282
+ <input-select v-if="button_field.type=='select'"
283
+ :value.sync="data.buttons[model.button.button_index].button_fields[index].value"
284
+ v-model="data.buttons[model.button.button_index].button_fields[index].value"
226
285
  :options='button_field.options'></input-select>
227
286
  <!-- input -->
228
- <input v-else type="text" class="form-control" v-model="data.buttons[model.button.button_index].button_fields[index].value"/>
287
+ <input v-else type="text" class="form-control"
288
+ v-model="data.buttons[model.button.button_index].button_fields[index].value"/>
229
289
  </div>
230
290
  </div>
231
291
  </article>
@@ -238,6 +298,8 @@
238
298
  <script>
239
299
 
240
300
  // Date格式化
301
+
302
+
241
303
  Date.prototype.Format = function (fmt) {
242
304
  var o = {
243
305
  "M+": this.getMonth() + 1, //月份
@@ -256,69 +318,67 @@ Date.prototype.Format = function (fmt) {
256
318
 
257
319
  import Vue from 'vue'
258
320
  import * as Util from '../../Util'
321
+ import {HttpResetClass} from 'vue-client'
259
322
  export default {
260
323
  title: '报建业务通用组件',
261
- props: ['data'],
324
+ props: ['data', 'model'],
262
325
 
263
- data () {
326
+ data() {
264
327
  return {
265
- isshow:true,
266
- kchege:false,
267
- kcbuhege:false,
268
- model:{
269
-
270
- button:{
271
- button_name:null,
272
- button_index:null
273
- },
274
- f_filiale:null,
275
- f_parentname:null,
276
- f_operate_date:null,
277
- f_operator:null
278
- },
279
- countmoney:[0,0,0],
280
- data:null,
281
- showmodal:false,
282
- disable_button:true
328
+ isshow: true,
329
+ kchege: false,
330
+ kcbuhege: false,
331
+ countmoney: [0, 0, 0],
332
+ data: null,
333
+ showmodal: false,
334
+ disable_button: true,
335
+ onetomany: [],
336
+ refresh: true // 控制重新渲染
283
337
  }
284
338
  },
285
- created(){
339
+ created() {
286
340
 
287
341
  // 初始化数据
288
342
  this.initializtion()
289
343
  },
290
344
  methods: {
291
- gotohetong(val){
345
+ gotoOneToMany (item){
346
+ item.f_process_id = this.data.f_process_id
347
+ item.f_filiale = this.data.f_filiale
348
+ item.f_apply_num = this.data.f_apply_num
349
+ this.$dispatch('onetomany', item)
350
+ },
351
+ gotohetong (val) {
292
352
  console.log(val)
293
353
  console.log("进入goto")
294
- this.$dispatch('gotonewpage',val)
354
+ this.$dispatch('gotonewpage', val)
295
355
  },
296
- cameraCallBack(prop, fileName) {
297
- if(prop == 'f_overall_path'){
356
+ cameraCallBack (prop, fileName) {
357
+ if (prop == 'f_overall_path') {
298
358
  let f_overall_path = fileName + '?' + Math.random()
299
359
  HostApp.__this__.model.f_overall_imgs.push({
300
- f_overall_path:f_overall_path,
301
- f_overall_name:this.data.title
360
+ f_overall_path: f_overall_path,
361
+ f_overall_name: this.data.title
302
362
  })
303
- }else{
363
+ } else {
304
364
  HostApp.__this__.model[prop] = fileName + '?' + Math.random()
305
365
  }
306
366
  HostApp.__callback__ = null
307
367
  HostApp.__this__ = null
308
368
  },
309
- takePic(prop, title,index) {
369
+ takePic (prop, title, index) {
310
370
  HostApp.__callback__ = this.cameraCallBack
311
371
  HostApp.__this__ = this
312
372
  console.log("prop:" + prop)
313
373
  console.log("this.prop:" + this.model[prop])
314
374
  let fileName
315
- if(prop == 'f_overall_path'){
375
+ if (prop == 'f_overall_path') {
316
376
  if (!this.model.f_overall_imgs[index] || this.model.f_overall_imgs[index].f_overall_path.includes("nopic.png")) {
317
377
  fileName = Util.guid() + '-' + prop + '.jpg'
318
378
  } else {
319
379
  fileName = Util.getFileName(this.model.f_overall_imgs[index].f_overall_path)
320
380
  }
321
- }else{
381
+ } else {
322
382
  if (!this.model[prop] || this.model[prop].includes("nopic.png")) {
323
383
  fileName = Util.guid() + '-' + prop + '.jpg'
324
384
  } else {
@@ -337,13 +397,13 @@ export default {
337
397
  }
338
398
  })
339
399
  },
340
- signCallback(prop, fileName) {
400
+ signCallback (prop, fileName) {
341
401
  // HostApp.alert('绑定属性:' + prop + ' 文件全路径如file:///storage/sdcard0/safecheck/abc.jpg:' + fullFileName)
342
402
  HostApp.__this__.$set('model.f_sign_path', fileName)
343
403
  HostApp.__callback__ = null
344
404
  HostApp.__this__ = null
345
405
  },
346
- delAudioFile(prop, fileName) {
406
+ delAudioFile (prop, fileName) {
347
407
  if (!fileName)
348
408
  return
349
409
  else {
@@ -351,11 +411,7 @@ export default {
351
411
  this.model[prop] = null
352
412
  }
353
413
  },
354
- sign() {
355
- // if(!this.model.f_read_instructions){
356
- // this.$showMessage('请先阅读并勾选用户须知内容后进行签名!')
357
- // return
358
- // }
414
+ sign () {
359
415
  this.delAudioFile('f_sign_path', this.model.f_sign_path)
360
416
  let prop = 'f_sign_path'
361
417
  let idx = 'aofeng'
@@ -373,55 +429,107 @@ export default {
373
429
  callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");'
374
430
  })
375
431
  },
376
- delfile(prop, fileName,index) {
432
+ delfile (prop, fileName, index) {
377
433
  if (fileName == Vue.nopic)
378
434
  return
379
435
  else {
380
- if(prop == 'f_overall_path'){
381
- this.model.f_overall_imgs.splice(index,1)
436
+ if (prop == 'f_overall_path') {
437
+ this.model.f_overall_imgs.splice(index, 1)
382
438
  HostApp.delfile(fileName)
383
- }else{
439
+ } else {
384
440
  HostApp.delfile(fileName)
385
441
  this.model[prop] = Vue.nopic
386
442
  }
387
443
  }
388
444
  },
389
445
  // 初始化数据
390
- initializtion(){
446
+ initializtion () {
391
447
 
392
- if (this.data.title=='安装通气'){
393
- this.isshow=false
448
+ if (this.data.title == '现场勘查' || this.data.title == '现场勘查定价') {
449
+ this.isshow = false
394
450
  }
395
451
  console.log("5555555555555")
452
+ console.log("f_apply_num",this.data.f_apply_num)
453
+ console.log("f_filiale",this.data.f_filiale)
396
454
  console.log(this.data.f_user_type)
397
455
  console.log(this.isshow)
398
456
  Vue.nopic = 'file:///android_asset/nopic.png'
399
457
  if (!this.model.f_sign_path)
400
458
  this.$set('model.f_sign_path', Vue.nopic)
401
- console.log('!this.model.f_overall_imgs==>'+!this.model.f_overall_imgs)
402
- if (!this.model.f_overall_imgs){
459
+ console.log('!this.model.f_overall_imgs==>' + !this.model.f_overall_imgs)
460
+ if (!this.model.f_overall_imgs) {
403
461
  let imgs = []
404
- // imgs.push({f_overall_path:Vue.nopic})
405
462
  this.$set('model.f_overall_imgs', imgs)
406
463
  console.log('进入setmodel.f_overall_imgs')
407
464
  }
408
465
  console.log('进入serviceview的initializtion方法')
409
466
  console.log(JSON.stringify(this.data))
410
- // let temp = this.data
411
- // let temp = JSON.parse()
412
- // this.data = temp
413
- // datepicker 没有值给当时值
414
- if(this.data.fields){
415
- for(let i=0;i<this.data.fields.length;i++){
416
- if (this.data.fields[i].value){
417
- if (this.data.fields[i].value=='null'){
418
- console.log("看看为空的字段名"+this.data.fields[i].label)
419
- this.data.fields[i].value=null
467
+ if(this.data.onetomany){
468
+ console.log(JSON.stringify(this.data.onetomany))
469
+ this.onetomany = this.data.onetomany
470
+ }
471
+ if (this.data.fields) {
472
+ for (let i = 0; i < this.data.fields.length; i++) {
473
+ if (this.data.fields[i].value) {
474
+ if (this.data.fields[i].value == 'null') {
475
+ console.log("看看为空的字段名" + this.data.fields[i].label)
476
+ this.data.fields[i].value = null
420
477
  console.log("赋值完成")
421
478
  }
422
479
  }
423
- if(this.data.fields[i].type==='datepicker'&&!this.data.fields[i].value){
424
- this.data.fields[i].value=new Date().Format("yyyy-MM-dd HH:mm:ss")
480
+ if (this.data.fields[i].type === 'datepicker' && !this.data.fields[i].value) {
481
+ this.data.fields[i].value = new Date().Format("yyyy-MM-dd HH:mm:ss")
482
+ }
483
+ if(this.data.f_user_type ==='非民用'){
484
+ this.data.fields[i].required = false
485
+ }
486
+ if (this.data.fields[i].label==='气价名称'){
487
+ console.log(this.data.fields[i].options)
488
+ let data={
489
+ items:"f_price_name",
490
+ tablename:"t_stairprice",
491
+ condition:`f_filialeids = '${Vue.user.f_orgids}' and f_state= '有效' and getdate()>=f_perform_date and getdate()<=f_end_date `,
492
+ orderitem:'id'
493
+ }
494
+ let qijia=[]
495
+ new HttpResetClass().load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/tel_singleTable_OrderBy`, {data: data}, {resolveMsg: null, rejectMsg: null}).then(res=>{
496
+ console.log("66666666666666666666")
497
+ console.log(JSON.stringify(res))
498
+ console.log(typeof res)
499
+ //console.log(JSON.stringify(res.data[0]))
500
+ let result=res.data
501
+ result.forEach(ress=>{
502
+ qijia.push({
503
+ label:ress.f_price_name,
504
+ value:ress.f_price_name
505
+ })
506
+ })
507
+ this.data.fields[i].options=qijia
508
+ })
509
+ }
510
+ if (this.data.fields[i].label==='气表品牌'){
511
+ console.log(this.data.fields[i].options)
512
+ let data={
513
+ items:"f_meter_brand",
514
+ tablename:"t_gasbrand",
515
+ condition:`f_filialeids = '${Vue.user.f_orgids}'`,
516
+ orderitem:'id'
517
+ }
518
+ let pinpai=[]
519
+ new HttpResetClass().load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/tel_singleTable_OrderBy`, {data: data}, {resolveMsg: null, rejectMsg: null}).then(res=>{
520
+ console.log("666666666666666666662")
521
+ console.log(JSON.stringify(res))
522
+ console.log(typeof res)
523
+ //console.log(JSON.stringify(res.data[0]))
524
+ let result=res.data
525
+ result.forEach(ress=>{
526
+ pinpai.push({
527
+ label:ress.f_meter_brand,
528
+ value:ress.f_meter_brand
529
+ })
530
+ })
531
+ this.data.fields[i].options=pinpai
532
+ })
425
533
  }
426
534
  }
427
535
  }
@@ -452,36 +560,65 @@ export default {
452
560
  }
453
561
  },
454
562
  // 模态框点击确定按钮
455
- acknowledge(){
456
- for(let i=0;i<this.data.buttons[this.model.button.button_index].button_fields.length;i++){
563
+ acknowledge () {
564
+ for (let i = 0; i < this.data.buttons[this.model.button.button_index].button_fields.length; i++) {
457
565
  this.model.button.button_fields[this.data.buttons[this.model.button.button_index].button_fields[i].field] = this.data.buttons[this.model.button.button_index].button_fields[i].value
458
566
  }
459
- this.showmodal=false
460
- this.$dispatch('button',this.model)
567
+ this.showmodal = false
568
+ this.$dispatch('button', this.model)
461
569
  },
462
570
  // 关闭模态框
463
- closemodal(){
464
- this.showmodal=false
571
+ closemodal () {
572
+ this.showmodal = false
465
573
  },
466
- watchmoney(val1,val2) {
574
+ watchmoney (val1, val2) {
467
575
  console.log("监听改变的值")
468
576
  console.log(val1)
469
577
  console.log(val2)
470
578
  },
471
579
  // 点击按钮
472
- clicked(index,button){
580
+ clicked (index, button) {
473
581
  console.log(`点击了按钮index:${index}+button:${JSON.stringify(button)}`);
582
+ if (button.button_name=='提交') {
583
+ if (!this.model.f_overall_imgs || this.model.f_overall_imgs.length == 0){
584
+ this.$showMessage("必须有现场照片")
585
+ return;
586
+ }
587
+ if(Vue.nopic==this.model.f_sign_path){
588
+ this.$showMessage("必须有签名照片")
589
+ return;
590
+ }
591
+ this.model.f_overall_imgs.push({
592
+ f_overall_path: this.model.f_sign_path,
593
+ f_overall_name: this.data.title
594
+ })
595
+ }
596
+
597
+
598
+ // if ((this.data.title == '现场勘查' || this.data.title == '现场勘查定价') && button.button_name=='提交') {
599
+ // if (!this.model.f_overall_imgs || this.model.f_overall_imgs.length == 0){
600
+ // this.$showMessage("必须有现场照片")
601
+ // return;
602
+ // }
603
+ // }
604
+ if (this.kchege == 'true') {
605
+ console.log(this.model.f_hege)
606
+ if (this.model.f_hege != 'true') {
607
+ this.$showMessage("请勾选阅读合同")
608
+ return
609
+ }
610
+ }
474
611
  // 组织model.fields数据
475
612
  let modeldatas = {}
476
- for(let i=0;i<this.data.fields.length;i++){
613
+ for (let i = 0; i < this.data.fields.length; i++) {
477
614
  console.log(JSON.stringify(this.data.fields[i]))
478
615
  // checkbox特殊处理
479
- if(this.data.fields[i].type==='checkbox'){
480
- for(let j=0;j<this.data.fields[i].items.length;j++){
481
- modeldatas[this.data.fields[i].items[j].field]=this.data.fields[i].items[j].value
616
+ if (this.data.fields[i].type === 'checkbox') {
617
+ for (let j = 0; j < this.data.fields[i].items.length; j++) {
618
+ modeldatas[this.data.fields[i].items[j].field] = this.data.fields[i].items[j].value
482
619
  }
483
- }else{
484
- modeldatas[this.data.fields[i].field]=this.data.fields[i].value
620
+ } else {
621
+ modeldatas[this.data.fields[i].field] = this.data.fields[i].value
485
622
  }
486
623
  }
487
624
  modeldatas.f_process_id = this.data.f_process_id
@@ -495,127 +632,172 @@ export default {
495
632
  this.model = modeldatas
496
633
  // 初始化model.button数据
497
634
  let buttondatas = {
498
- button_fields:{}
635
+ button_fields: {}
499
636
  }
500
- buttondatas.button_name=button.button_name
501
- buttondatas.button_index=index
502
- if(button.button_fields){
503
- for(let i=0;i<button.button_fields.length;i++){
504
- buttondatas.button_fields[button.button_fields[i].field]=button.button_fields[i].value
637
+ buttondatas.button_name = button.button_name
638
+ buttondatas.button_index = index
639
+ if (button.button_fields) {
640
+ for (let i = 0; i < button.button_fields.length; i++) {
641
+ buttondatas.button_fields[button.button_fields[i].field] = button.button_fields[i].value
505
642
  }
506
643
  }
507
- this.model.button =buttondatas
508
-
509
- if(button.button_name==='退回'){
510
- this.showmodal=true
511
- }else if(button.button_name==='下发'){
512
- this.showmodal=true
513
- }else{
514
- this.$dispatch('button',this.model)
644
+ this.model.button = buttondatas
645
+
646
+ if (button.button_name === '退回') {
647
+ this.showmodal = true
648
+ } else if (button.button_name === '下发') {
649
+ this.showmodal = true
650
+ } else {
651
+ this.$dispatch('button', this.model)
515
652
  }
516
653
  },
517
654
  // 级联操作预留
518
- select_change(index){
519
- this.$dispatch('select_cascade',index)
655
+ select_change (index) {
656
+ this.$dispatch('select_cascade', index)
520
657
  },
521
658
  // 检测按钮的disable
522
- disabled_check(index,required,value){
659
+ disabled_check (index, required, value) {
523
660
  console.log("被检测到的值是什么")
524
661
  console.log(index)
525
662
  console.log(required)
526
663
  console.log(value)
527
664
  console.log(this.data.title)
528
- if (this.data.title=='现场勘查'){
529
- if (index==4){
530
- if (value=='合格'){
531
- this.kchege=true
532
- this.kcbuhege=false
533
- console.log("1111111111"+this.kchege)
534
- }else if (value=='不合格'){
535
- this.kcbuhege=true
536
- this.kchege=false
537
- console.log("1111111111"+this.kcbuhege)
538
- }
665
+ if (this.data.fields[index].label=='气表品牌'){
666
+ console.log("进入改变气表型号")
667
+ console.log(this.data.fields[index+1].options)
668
+ this.data.fields[index+1].options=[]
669
+ let data={
670
+ items:"gm.f_meter_style",
671
+ tablename:"t_gasmodel gm left join t_gasbrand gb on gm.f_gasbrand_id=gb.id",
672
+ condition:`gb.f_filialeids = '${Vue.user.f_orgids}' and gb.f_meter_brand='${value}'`,
673
+ orderitem:'gm.id'
539
674
  }
675
+ let xinghao=[]
676
+ new HttpResetClass().load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/tel_singleTable_OrderBy`, {data: data}, {resolveMsg: null, rejectMsg: null}).then(res=>{
677
+ console.log("66666666666666666666")
678
+ console.log(JSON.stringify(res))
679
+ console.log(typeof res)
680
+ //console.log(JSON.stringify(res.data[0]))
681
+ let result=res.data
682
+ result.forEach(ress=>{
683
+ xinghao.push({
684
+ label:ress.f_meter_style,
685
+ value:ress.f_meter_style
686
+ })
687
+ })
688
+ this.data.fields[index+1].options=xinghao
689
+ })
540
690
  }
541
- if (this.data.title=='现场勘查定价'){
542
- if (index==6||index==7||index==5){
543
- this.countmoney[index-5]=parseInt(this.data.fields[index].value)
544
- console.log(this.data.fields[index].value)
545
- console.log("做出了改变")
546
- }
547
- console.log(JSON.stringify(this.countmoney))
548
- let money=0
549
- for (let i = 0; i < this.countmoney.length; i++) {
550
- money+=this.countmoney[i]
691
+ if (this.data.title == '现场勘查') {
692
+ if (index == 4) {
693
+ if (value == '合格') {
694
+ this.kchege = true
695
+ this.kcbuhege = false
696
+ console.log("1111111111" + this.kchege)
697
+ } else if (value == '不合格') {
698
+ this.kcbuhege = true
699
+ this.kchege = false
700
+ console.log("1111111111" + this.kcbuhege)
701
+ }
551
702
  }
552
- this.$set('data.fields[8].value',money)
553
- this.$set('data.fields[9].value',money)
554
- if (index==10){
555
- console.log("1111111111"+value)
556
- if (value=='合格'){
557
- this.kchege=true
558
- this.kcbuhege=false
559
- console.log("1111111111"+this.kchege)
560
- }else if (value=='不合格'){
561
- this.kcbuhege=true
562
- this.kchege=false
563
- console.log("1111111111"+this.kcbuhege)
703
+ }
704
+ if (this.data.title == '现场勘查定价') {
705
+ // if (index == 6 || index == 7 || index == 5) {
706
+ // this.countmoney[index - 5] = parseInt(this.data.fields[index].value)
707
+ // console.log(this.data.fields[index].value)
708
+ // console.log("做出了改变")
709
+ // }
710
+ // console.log(JSON.stringify(this.countmoney))
711
+ // let money = 0
712
+ // for (let i = 0; i < this.countmoney.length; i++) {
713
+ // money += this.countmoney[i]
714
+ // }
715
+ // this.$set('data.fields[8].value', money)
716
+ // this.$set('data.fields[9].value', money)
717
+ if (index == 7) {
718
+ console.log("1111111111" + value)
719
+ if (value == '合格') {
720
+ this.kchege = true
721
+ this.kcbuhege = false
722
+ console.log("1111111111" + this.kchege)
723
+ } else if (value == '不合格') {
724
+ this.kcbuhege = true
725
+ this.kchege = false
726
+ console.log("1111111111" + this.kcbuhege)
564
727
  }
565
728
  }
566
729
  }
567
- if(required&&value){
730
+ if (required && value) {
568
731
  this.disable_button = false
569
732
 
570
733
  let fields = this.data.fields
571
734
  let flag = false
572
- for(let i = 0;i<fields.length;i++){
573
- if(fields[i].type!=='checkbox'&&fields[i].required&&!fields[i].value){
735
+ for (let i = 0; i < fields.length; i++) {
736
+ if (fields[i].type !== 'checkbox' && fields[i].required && !fields[i].value) {
574
737
  flag = true
575
738
  }
576
739
  }
577
740
  this.disable_button = flag
578
741
  }
579
- }
742
+ },
743
+ checkboxSelect (index,index1){
744
+ console.log("chufa事件");
745
+ this.$dispatch('checkboxSelectControl', index, index1)
746
+ },
747
+ // 强制刷新
748
+ update (){
749
+ this.refresh = false
750
+ this.$nextTick(() => {
751
+ this.refresh = true
752
+ })
753
+ this.initializtion()
754
+ },
580
755
  },
581
- watch:{
582
- 'data.filed[12].value'(val){
756
+ watch: {
757
+ 'data.filed[12].value'(val) {
583
758
  console.log("变动")
584
- if (this.data.title=='现场勘查定价'){
759
+ if (this.data.title == '现场勘查定价') {
585
760
 
586
761
  }
587
762
  },
588
- 'data.operate_date'(){
589
- if(this.data.filiale){
763
+ 'data.operate_date' () {
764
+ if (this.data.filiale) {
590
765
  this.model.f_filiale = this.data.filiale
591
- }else{
766
+ } else {
592
767
  this.model.f_filiale = Vue.user.f_parentname
593
768
  }
594
- if(this.data.f_parentname){
769
+ if (this.data.f_parentname) {
595
770
  this.model.f_parentname = this.data.f_parentname
596
- }else{
771
+ } else {
597
772
  this.model.f_parentname = Vue.user.f_parentname
598
773
  }
599
- if(this.data.operate_date){
774
+ if (this.data.operate_date) {
600
775
  this.model.f_operate_date = this.data.operate_date
601
- }else{
776
+ } else {
602
777
  this.model.f_operate_date = new Date().Format("yyyy-MM-dd HH:mm:ss")
603
778
  }
604
- if(this.data.operator){
779
+ if (this.data.operator) {
605
780
  this.model.f_operator = this.data.operator
606
- }else{
781
+ } else {
607
782
  this.model.f_operator = Vue.user.name
608
783
  }
609
784
  },
610
- deep:true
785
+ 'data.fields' () {
786
+ this.refresh = false
787
+ this.$nextTick(() => {
788
+ this.refresh = true
789
+ })
790
+ this.initializtion()
791
+ },
792
+ deep: true
611
793
  },
612
794
  computed: {
613
795
  // 输入后按钮检测
614
- check_disable: function (){
796
+ check_disable: function () {
615
797
  let fields = this.data.fields
616
798
  let flag = false
617
- for(let i = 0;i<fields.length;i++){
618
- if(fields[i].type!=='checkbox'&&fields[i].required&&!fields[i].value){
799
+ for (let i = 0; i < fields.length; i++) {
800
+ if (fields[i].type !== 'checkbox' && fields[i].required && !fields[i].value) {
619
801
  flag = true
620
802
  }
621
803
  }