apply-clients 3.4.84 → 3.4.85

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,133 +1,132 @@
1
- 1<template>
1
+ <template>
2
2
  <div class="select-overspread" style="background-color: #ffffff;padding: 20px;overflow: scroll">
3
3
  <validator name='v' @valid="$emit('valid')" @invalid="$emit('invalid')">
4
- <form class="form-horizontal">
5
- <div class="form-group">
6
- <div v-for="(index,item) in data.fields">
7
- <!--input-->
8
- <div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"
9
- v-if="(item.type==='input' || item.type==='number'||item.type === 'tel'||item.type === 'email') && !item.hidden && (item.device === 'pc' || !item.device) && ( item.label != '证件号码')&&( item.label !== '身份证') && (item.label !== '用户电话')"
10
- :class="[item.required && !(item.value) ? 'has-error' : '',item.bootstraped ? item.bootstraped + ' form-group':'col-sm-4 form-group']">
11
- <label :style="item.label_style ? item.label_style : ''"
12
- :class="item.label_bootstraped ? item.label_bootstraped+' control-label-justify control-label' : 'control-label-justify control-label col-sm-6'">{{item.label}}</label>
13
- <div :style="item.value_style ? item.value_style:''"
14
- :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-6'">
15
- <input class="form-control input_view" style=""
16
- :type="item.type"
17
- v-model="data.fields[index].value"
18
- :placeholder="item.placeholder"
19
- :value="data.fields[index].value"
20
- :readonly="item.readonly"
21
- :disabled="item.disabled"
22
- @change="onchange(index)"
23
- @blur="onblur(index)"
24
- @input="oninput(index)"
25
- />
4
+ <form class="form-horizontal">
5
+ <div class="form-group">
6
+ <div v-for="(index,item) in data.fields">
7
+ <!--input-->
8
+ <div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"
9
+ v-if="(item.type==='input' || item.type==='number'||item.type === 'tel'||item.type === 'email') && !item.hidden && (item.device === 'pc' || !item.device) && ( item.label != '证件号码')&&( item.label !== '身份证') && (item.label !== '用户电话')"
10
+ :class="[item.required && !(item.value) ? 'has-error' : '',item.bootstraped ? item.bootstraped + ' form-group':'col-sm-4 form-group']">
11
+ <label :style="item.label_style ? item.label_style : ''"
12
+ :class="item.label_bootstraped ? item.label_bootstraped+' control-label-justify control-label' : 'control-label-justify control-label col-sm-6'">{{ item.label }}</label>
13
+ <div :style="item.value_style ? item.value_style:''"
14
+ :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-6'">
15
+ <input class="form-control input_view" style=""
16
+ :type="item.type"
17
+ v-model="data.fields[index].value"
18
+ :placeholder="item.placeholder"
19
+ :value="data.fields[index].value"
20
+ :readonly="item.readonly"
21
+ :disabled="item.disabled"
22
+ @change="onchange(index)"
23
+ @blur="onblur(index)"
24
+ @input="oninput(index)"
25
+ />
26
+ </div>
26
27
  </div>
27
- </div>
28
28
 
29
- <!--input-->
30
- <div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"
31
- v-if="((data.f_credentials === '军官证' ||data.f_credentials === '营业执照')&& item.label === '证件号码')"
32
- :class="[item.required && !(item.value) ? 'has-error' : '',item.bootstraped ? item.bootstraped + ' form-group':'col-sm-4 form-group']">
33
- <label :style="item.label_style ? item.label_style : ''"
34
- :class="item.label_bootstraped ? item.label_bootstraped+' control-label-justify control-label' : 'control-label-justify control-label col-sm-6'">{{item.label}}</label>
35
- <div :style="item.value_style ? item.value_style:''"
36
- :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-6'">
37
- <input class="form-control input_view" style=""
38
- :type="item.type"
39
- v-model="data.fields[index].value"
40
- :placeholder="item.placeholder"
41
- :value="data.fields[index].value"
42
- :readonly="item.readonly"
43
- :disabled="item.disabled"
44
- @change="onchange(index)"
45
- @blur="onblur(index)"
46
- @input="oninput(index)"
47
- />
29
+ <!--input-->
30
+ <div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"
31
+ v-if="((data.f_credentials === '军官证' ||data.f_credentials === '营业执照')&& item.label === '证件号码')"
32
+ :class="[item.required && !(item.value) ? 'has-error' : '',item.bootstraped ? item.bootstraped + ' form-group':'col-sm-4 form-group']">
33
+ <label :style="item.label_style ? item.label_style : ''"
34
+ :class="item.label_bootstraped ? item.label_bootstraped+' control-label-justify control-label' : 'control-label-justify control-label col-sm-6'">{{ item.label }}</label>
35
+ <div :style="item.value_style ? item.value_style:''"
36
+ :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-6'">
37
+ <input class="form-control input_view" style=""
38
+ :type="item.type"
39
+ v-model="data.fields[index].value"
40
+ :placeholder="item.placeholder"
41
+ :value="data.fields[index].value"
42
+ :readonly="item.readonly"
43
+ :disabled="item.disabled"
44
+ @change="onchange(index)"
45
+ @blur="onblur(index)"
46
+ @input="oninput(index)"
47
+ />
48
+ </div>
48
49
  </div>
49
- </div>
50
- <!--身份证验证-->
51
- <div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"
52
- v-if="(item.label==='身份证') || (data.f_credentials === '身份证' && item.label === '证件号码')"
53
- :class="[$v.f_idnumber2.identityCardValid ? 'has-error' : '',item.bootstraped ? item.bootstraped + ' form-group':'col-sm-4 form-group']">
54
- <label :style="item.label_style ? item.label_style : ''"
55
- :class="item.label_bootstraped ? item.label_bootstraped+' control-label-justify control-label' : 'control-label-justify control-label col-sm-6'">{{item.label}}</label>
56
- <div :style="item.value_style ? item.value_style:''"
57
- :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-6'">
58
- <input class="form-control input_view" style=""
59
- :type="item.type"
60
- maxlength="18"
61
- v-model="data.fields[index].value"
62
- :placeholder="item.placeholder"
63
- :value="data.fields[index].value"
64
- v-validate:f_idnumber2='{identityCardValid: true}'
65
- :readonly="item.readonly"
66
- :disabled="item.disabled"
67
- @change="onchange(index)"
68
- @blur="onblur(index)"
69
- @input="oninput(index)"
70
- />
50
+ <!--身份证验证-->
51
+ <div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"
52
+ v-if="(item.label==='身份证') || (data.f_credentials === '身份证' && item.label === '证件号码')"
53
+ :class="[$v.f_idnumber2.identityCardValid ? 'has-error' : '',item.bootstraped ? item.bootstraped + ' form-group':'col-sm-4 form-group']">
54
+ <label :style="item.label_style ? item.label_style : ''"
55
+ :class="item.label_bootstraped ? item.label_bootstraped+' control-label-justify control-label' : 'control-label-justify control-label col-sm-6'">{{ item.label }}</label>
56
+ <div :style="item.value_style ? item.value_style:''"
57
+ :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-6'">
58
+ <input class="form-control input_view" style=""
59
+ :type="item.type"
60
+ maxlength="18"
61
+ v-model="data.fields[index].value"
62
+ :placeholder="item.placeholder"
63
+ :value="data.fields[index].value"
64
+ v-validate:f_idnumber2='{identityCardValid: true}'
65
+ :readonly="item.readonly"
66
+ :disabled="item.disabled"
67
+ @change="onchange(index)"
68
+ @blur="onblur(index)"
69
+ @input="oninput(index)"
70
+ />
71
+ </div>
71
72
  </div>
72
- </div>
73
73
 
74
74
 
75
- <div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"
76
- v-if="item.label === '用户电话'"
77
- :class="[$v.f_user_phone.minlength || $v.f_user_phone.maxlength ? 'has-error' : '',item.bootstraped ? item.bootstraped + ' form-group':'col-sm-4 form-group']">
78
- <label :style="item.label_style ? item.label_style : ''"
79
- :class="item.label_bootstraped ? item.label_bootstraped+' control-label-justify control-label' : 'control-label-justify control-label col-sm-6'">{{item.label}}</label>
80
- <div :style="item.value_style ? item.value_style:''"
81
- :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-6'">
82
- <input class="form-control input_view" style=""
83
- type="number"
84
- oninput="if(value.length > 11) value=value.slice(0,11)"
85
- v-validate:f_user_phone="{minlength: 7, maxlength: 11 }"
86
- v-model="data.fields[index].value"
87
- :placeholder="item.placeholder"
88
- :value="data.fields[index].value"
89
- onKeypress="return(/[\d\.]/.test(String.fromCharCode(event.keyCode)))"
90
- :readonly="item.readonly"
91
- :disabled="item.disabled"
92
- @change="onchange(index)"
93
- @blur="onblur(index)"
94
- @input="oninput(index)"
95
- />
75
+ <div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"
76
+ v-if="item.label === '用户电话'"
77
+ :class="[$v.f_user_phone.minlength || $v.f_user_phone.maxlength ? 'has-error' : '',item.bootstraped ? item.bootstraped + ' form-group':'col-sm-4 form-group']">
78
+ <label :style="item.label_style ? item.label_style : ''"
79
+ :class="item.label_bootstraped ? item.label_bootstraped+' control-label-justify control-label' : 'control-label-justify control-label col-sm-6'">{{ item.label }}</label>
80
+ <div :style="item.value_style ? item.value_style:''"
81
+ :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-6'">
82
+ <input class="form-control input_view" style=""
83
+ type="number"
84
+ oninput="if(value.length > 11) value=value.slice(0,11)"
85
+ v-validate:f_user_phone="{minlength: 7, maxlength: 11 }"
86
+ v-model="data.fields[index].value"
87
+ :placeholder="item.placeholder"
88
+ :value="data.fields[index].value"
89
+ onKeypress="return(/[\d\.]/.test(String.fromCharCode(event.keyCode)))"
90
+ :readonly="item.readonly"
91
+ :disabled="item.disabled"
92
+ @change="onchange(index)"
93
+ @blur="onblur(index)"
94
+ @input="oninput(index)"
95
+ />
96
+ </div>
96
97
  </div>
97
- </div>
98
98
 
99
99
 
100
-
101
- <!--时间datepicker-->
102
- <div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"
103
- v-if="item.type==='datepicker' && !item.hidden && (item.device === 'pc' || !item.device)"
104
- :class="[item.required && !(item.value) ? 'has-error' : '',item.bootstraped ? item.bootstraped+' form-group':'col-sm-4 form-group']">
105
- <label
106
- :class="item.label_bootstraped ? item.label_bootstraped+' control-label-justify control-label' : 'control-label control-label-justify col-sm-6'">{{item.label}}</label>
107
- <div :style="item.value_style ? item.value_style:''"
108
- :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-6'">
109
- <datepicker
110
- @change="onchange(index)"
111
- @blur="onblur(index)"
112
- :placeholder="item.placeholder"
113
- :value.sync="data.fields[index].value"
114
- :format="item.format ? item.format : 'yyyy-MM-dd'"
115
- v-model="data.fields[index].value"
116
- :readonly="item.readonly"
117
- :disabled="item.disabled"
118
- :show-reset-button="reset">
119
- </datepicker>
100
+ <!--时间datepicker-->
101
+ <div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"
102
+ v-if="item.type==='datepicker' && !item.hidden && (item.device === 'pc' || !item.device)"
103
+ :class="[item.required && !(item.value) ? 'has-error' : '',item.bootstraped ? item.bootstraped+' form-group':'col-sm-4 form-group']">
104
+ <label
105
+ :class="item.label_bootstraped ? item.label_bootstraped+' control-label-justify control-label' : 'control-label control-label-justify col-sm-6'">{{ item.label }}</label>
106
+ <div :style="item.value_style ? item.value_style:''"
107
+ :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-6'">
108
+ <datepicker
109
+ @change="onchange(index)"
110
+ @blur="onblur(index)"
111
+ :placeholder="item.placeholder"
112
+ :value.sync="data.fields[index].value"
113
+ :format="item.format ? item.format : 'yyyy-MM-dd'"
114
+ v-model="data.fields[index].value"
115
+ :readonly="item.readonly"
116
+ :disabled="item.disabled"
117
+ :show-reset-button="reset">
118
+ </datepicker>
119
+ </div>
120
120
  </div>
121
- </div>
122
121
 
123
- <!--textarea-->
124
- <div :style="item.style ? item.style+';margin-bottom: 20px':'margin-bottom: 20px'"
125
- v-if="item.type==='textarea' && !item.hidden && (item.device === 'pc' || !item.device)"
126
- :class="[item.required && !(item.value) ? 'has-error' : '',item.bootstraped?item.bootstraped+' form-group':'col-sm-12 form-group']">
127
- <label :style="item.label_style ? item.label_style : ''"
128
- :class="item.label_bootstraped ? item.label_bootstraped + ' control-label-justify control-label' : 'control-label-justify control-label col-sm-3'">{{item.label}}</label>
129
- <div :style="item.value_style ? item.value_style:''"
130
- :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-10'">
122
+ <!--textarea-->
123
+ <div :style="item.style ? item.style+';margin-bottom: 20px':'margin-bottom: 20px'"
124
+ v-if="item.type==='textarea' && !item.hidden && (item.device === 'pc' || !item.device)"
125
+ :class="[item.required && !(item.value) ? 'has-error' : '',item.bootstraped?item.bootstraped+' form-group':'col-sm-12 form-group']">
126
+ <label :style="item.label_style ? item.label_style : ''"
127
+ :class="item.label_bootstraped ? item.label_bootstraped + ' control-label-justify control-label' : 'control-label-justify control-label col-sm-3'">{{ item.label }}</label>
128
+ <div :style="item.value_style ? item.value_style:''"
129
+ :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-10'">
131
130
  <textarea
132
131
  :readonly="item.readonly"
133
132
  :disabled="item.disabled"
@@ -141,255 +140,274 @@
141
140
  @input="oninput(index)"
142
141
  >
143
142
  </textarea>
144
- <button
145
- v-if="(item.field==='f_prospecting_result')&&exploration" @click="showModle()">查看所有</button>
143
+ <button
144
+ v-if="(item.field==='f_prospecting_result')&&exploration" @click="showModle()">查看所有
145
+ </button>
146
+ </div>
146
147
  </div>
147
- </div>
148
148
 
149
- <!--select-->
150
- <div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"
151
- v-if="item.type==='select' && !item.hidden && (item.device === 'pc' || !item.device)"
152
- :class="[item.required && !(item.value) ? 'has-error' : '',item.bootstraped?item.bootstraped+' form-group':'col-sm-4 form-group']">
153
- <label
154
- :class="item.label_bootstraped ? item.label_bootstraped+' control-label control-label-justify':'control-label-justify control-label col-sm-6'">{{item.label}}</label>
155
- <div :style="item.value_style ? item.value_style:''"
156
- :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-6'">
157
- <input-select
158
- class="select select_list"
159
- @blur="onblur(index)"
160
- @change="onchange(index)"
161
- @select-search="selectSearch($arguments,index)"
162
- :readonly="item.readonly"
163
- :disable="item.disabled"
164
- :value.sync="data.fields[index].value"
165
- v-model="data.fields[index].value"
166
- :options='data.fields[index].options'
167
- :valueSingle="true"></input-select>
149
+ <!--select-->
150
+ <div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"
151
+ v-if="item.type==='select' && !item.hidden && (item.device === 'pc' || !item.device)"
152
+ :class="[item.required && !(item.value) ? 'has-error' : '',item.bootstraped?item.bootstraped+' form-group':'col-sm-4 form-group']">
153
+ <label
154
+ :class="item.label_bootstraped ? item.label_bootstraped+' control-label control-label-justify':'control-label-justify control-label col-sm-6'">{{ item.label }}</label>
155
+ <div :style="item.value_style ? item.value_style:''"
156
+ :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-6'">
157
+ <input-select
158
+ class="select select_list"
159
+ @blur="onblur(index)"
160
+ @change="onchange(index)"
161
+ @select-search="selectSearch($arguments,index)"
162
+ :readonly="item.readonly"
163
+ :disable="item.disabled"
164
+ :value.sync="data.fields[index].value"
165
+ v-model="data.fields[index].value"
166
+ :options='data.fields[index].options'
167
+ :valueSingle="true"></input-select>
168
+ </div>
168
169
  </div>
169
- </div>
170
170
 
171
- <!--checkbox-->
172
- <div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"
173
- v-if="item.type==='checkbox' && !item.hidden && (item.device === 'pc' || !item.device)"
174
- :class="[item.required && item.value.length === 0 ? 'has-error' : '',item.bootstraped?item.bootstraped+' form-group':'col-sm-4 form-group']">
175
- <label v-if="item.label"
176
- :class="item.label_bootstraped?item.label_bootstraped+' control-label control-label-justify':'control-label-justify control-label col-sm-6'">{{item.label}}</label>
177
- <div :style="item.value_style ? item.value_style:''"
178
- :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-6'">
179
- <label class="checkbox-inline" v-for="(index2,row) in item.options">
180
- <input type="checkbox" class=""
181
- :readonly="data.fields[index].readonly"
182
- :disabled="data.fields[index].disabled"
183
- v-model="data.fields[index].value"
184
- :value="data.fields[index].options[index2].value"
185
- @change="onchange(index)"
186
- @blur="onblur(index)">
187
- {{row.label}}
188
- </label>
171
+ <!--checkbox-->
172
+ <div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"
173
+ v-if="item.type==='checkbox' && !item.hidden && (item.device === 'pc' || !item.device)"
174
+ :class="[item.required && item.value.length === 0 ? 'has-error' : '',item.bootstraped?item.bootstraped+' form-group':'col-sm-4 form-group']">
175
+ <label v-if="item.label"
176
+ :class="item.label_bootstraped?item.label_bootstraped+' control-label control-label-justify':'control-label-justify control-label col-sm-6'">{{ item.label }}</label>
177
+ <div :style="item.value_style ? item.value_style:''"
178
+ :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-6'">
179
+ <label class="checkbox-inline" v-for="(index2,row) in item.options">
180
+ <input type="checkbox" class=""
181
+ :readonly="data.fields[index].readonly"
182
+ :disabled="data.fields[index].disabled"
183
+ v-model="data.fields[index].value"
184
+ :value="data.fields[index].options[index2].value"
185
+ @change="onchange(index)"
186
+ @blur="onblur(index)">
187
+ {{ row.label }}
188
+ </label>
189
+ </div>
190
+ </div>
191
+
192
+ <!--button-->
193
+ <div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"
194
+ v-if="item.type==='button'"
195
+ :class="[item.required && !(item.value) ? 'has-error' : '',item.bootstraped ? item.bootstraped + ' form-group':'col-sm-4 form-group']">
196
+ <div :style="item.value_style ? item.value_style:''"
197
+ :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-6'">
198
+ <button class="button_search button_spacing" :style="item.button_styles" @click.prevent="printclick(index)" :hidden="item.hidden">
199
+ {{ item.name }}
200
+ </button>
201
+ </div>
189
202
  </div>
190
203
  </div>
191
- </div>
192
- <!--区域地址联动-->
193
- <div>
194
- <res-area-select-group
204
+ <!--区域地址联动-->
205
+ <div>
206
+ <res-area-select-group
207
+ v-if="(data.f_apply_type === '报警器报建' || data.f_apply_type === '工商业报警器报建') && data.defname === '工程施工' && data.title === '工程施工' && data.f_sub_state !='完工'"
208
+ labelstyle="control-label"
209
+ @shiji-select="getSelectShijiValue"
210
+ @xian-select="getSelectXianValue"
211
+ @shequ-select="getSelectShequValue"
212
+ >
213
+ </res-area-select-group>
214
+ </div>
215
+
216
+ <gaode-map
195
217
  v-if="(data.f_apply_type === '报警器报建' || data.f_apply_type === '工商业报警器报建') && data.defname === '工程施工' && data.title === '工程施工' && data.f_sub_state !='完工'"
196
- labelstyle = "control-label"
197
- @shiji-select = "getSelectShijiValue"
198
- @xian-select = "getSelectXianValue"
199
- @shequ-select = "getSelectShequValue"
200
218
  >
201
- </res-area-select-group>
219
+
220
+ </gaode-map>
221
+
202
222
  </div>
203
223
 
204
- <gaode-map
205
- v-if="(data.f_apply_type === '报警器报建' || data.f_apply_type === '工商业报警器报建') && data.defname === '工程施工' && data.title === '工程施工' && data.f_sub_state !='完工'"
206
- >
207
-
208
- </gaode-map>
209
-
210
- </div>
211
-
212
- <!-- onetomany -->
213
- <div class="" v-for="(index,item) in data.onetomany">
214
- <onetomany :selectdata="data" :onetomany="item" :index="index" v-if="item.device === 'pc' || !item.device"></onetomany>
215
- </div>
216
-
217
- <div v-for="(i,item) in data.components">
218
- <component v-if="item.device === 'pc' || !item.device" :is="item.name" :selectdata="data" :mark="item.mark"></component>
219
- </div>
220
-
221
- <!--自定义组件-->
222
- <slot>
223
- <!--<div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"-->
224
- <!-- v-if="data.f_apply_type === '报警器报建' && data.defname === '工程施工'"-->
225
- <!-- :class="[$v.f_idnumber2.identityCardValid ? 'has-error' : '',item.bootstraped ? item.bootstraped + ' form-group':'col-sm-4 form-group']">-->
226
-
227
- <!--<div class="col-sm-6 form-group "-->
228
- <!-- :class="[$v.f_pcd_id.required ? 'has-error' : 'has-success']">-->
229
- <!-- <label class="font_normal_body">省&ensp;市&ensp;区</label>-->
230
- <!-- <input type="text" style="width:41%" v-show="false" v-model="model.f_pcd_id"-->
231
- <!-- v-validate:f_pcd_id='{required: true }'-->
232
- <!-- >-->
233
-
234
- <!-- <v-select :value.sync="model.f_pcd_id" :value-single="true"-->
235
- <!-- :options='pcdslist' placeholder='请选择2'-->
236
- <!-- close-on-select search="true" @change="pcdChange">-->
237
- <!-- </v-select>-->
238
- <!--</div>-->
239
- <!--<div class="col-sm-6 form-group "-->
240
- <!-- :class="[$v.f_street_id.required ? 'has-error' : 'has-success']">-->
241
- <!-- <label class="font_normal_body">街道/乡镇</label>-->
242
- <!-- <input type="text" style="width:41%" v-show="false" v-model="model.f_street_id"-->
243
- <!-- >-->
244
- <!-- <v-select :value.sync="model.f_street_id" :value-single="true"-->
245
- <!-- :options='streetslist' placeholder='请选择'-->
246
- <!-- @change="streetChange"-->
247
- <!-- close-on-select search="true">-->
248
- <!-- </v-select>-->
249
-
250
- <!--</div>-->
251
- <!--<div class="col-sm-6 form-group "-->
252
- <!-- :class="[$v.f_residential_area_id.required ? 'has-error' : 'has-success']">-->
253
- <!-- <label class="font_normal_body">集收单位</label>-->
254
- <!-- <input type="text" style="width:41%" v-show="false" v-model="model.f_residential_area_id"-->
255
- <!-- v-validate:f_residential_area_id='{required: true }'>-->
256
- <!-- <v-select :value.sync="model.f_residential_area_id" :value-single="true"-->
257
- <!-- :options='areaslist' placeholder='请选择'-->
258
- <!-- @change="" @select-search="selectSearch"-->
259
- <!-- close-on-select search="true">-->
260
- <!-- </v-select>-->
261
- <!--</div>-->
262
- <!--</div>-->
263
- </slot>
264
- <!--公司等属性-->
265
- <div class="col-sm-12 form-group text-center" style="padding-top:8px">
266
- <div class="col-sm-3 form-group center-block">
267
- <label class="col-sm-5">所属公司:</label>
268
- <div class="col-sm-6" style="text-align: left">
269
- {{model.orgs}}
270
- </div>
224
+ <!-- onetomany -->
225
+ <div class="" v-for="(index,item) in data.onetomany">
226
+ <onetomany :selectdata="data" :onetomany="item" :index="index"
227
+ v-if="item.device === 'pc' || !item.device"></onetomany>
271
228
  </div>
272
- <div class="col-sm-3 form-group center-block">
273
- <label class="col-sm-5">部门:</label>
274
- <div class="col-sm-6" style="text-align: left">
275
- {{model.parentname}}
276
- </div>
229
+
230
+ <div v-for="(i,item) in data.components">
231
+ <component v-if="item.device === 'pc' || !item.device" :is="item.name" :selectdata="data"
232
+ :mark="item.mark"></component>
277
233
  </div>
278
- <div class="col-sm-3 form-group center-block">
279
- <label class="col-sm-5">操作人:</label>
280
- <div class="col-sm-6 " style="text-align: left">
281
- {{model.operator}}
234
+
235
+ <!--自定义组件-->
236
+ <slot>
237
+ <!--<div :style="item.style ? item.style+';height: 40px;margin-bottom: 20px':'height: 40px;margin-bottom: 20px'"-->
238
+ <!-- v-if="data.f_apply_type === '报警器报建' && data.defname === '工程施工'"-->
239
+ <!-- :class="[$v.f_idnumber2.identityCardValid ? 'has-error' : '',item.bootstraped ? item.bootstraped + ' form-group':'col-sm-4 form-group']">-->
240
+
241
+ <!--<div class="col-sm-6 form-group "-->
242
+ <!-- :class="[$v.f_pcd_id.required ? 'has-error' : 'has-success']">-->
243
+ <!-- <label class="font_normal_body">省&ensp;市&ensp;区</label>-->
244
+ <!-- <input type="text" style="width:41%" v-show="false" v-model="model.f_pcd_id"-->
245
+ <!-- v-validate:f_pcd_id='{required: true }'-->
246
+ <!-- >-->
247
+
248
+ <!-- <v-select :value.sync="model.f_pcd_id" :value-single="true"-->
249
+ <!-- :options='pcdslist' placeholder='请选择2'-->
250
+ <!-- close-on-select search="true" @change="pcdChange">-->
251
+ <!-- </v-select>-->
252
+ <!--</div>-->
253
+ <!--<div class="col-sm-6 form-group "-->
254
+ <!-- :class="[$v.f_street_id.required ? 'has-error' : 'has-success']">-->
255
+ <!-- <label class="font_normal_body">街道/乡镇</label>-->
256
+ <!-- <input type="text" style="width:41%" v-show="false" v-model="model.f_street_id"-->
257
+ <!-- >-->
258
+ <!-- <v-select :value.sync="model.f_street_id" :value-single="true"-->
259
+ <!-- :options='streetslist' placeholder='请选择'-->
260
+ <!-- @change="streetChange"-->
261
+ <!-- close-on-select search="true">-->
262
+ <!-- </v-select>-->
263
+
264
+ <!--</div>-->
265
+ <!--<div class="col-sm-6 form-group "-->
266
+ <!-- :class="[$v.f_residential_area_id.required ? 'has-error' : 'has-success']">-->
267
+ <!-- <label class="font_normal_body">集收单位</label>-->
268
+ <!-- <input type="text" style="width:41%" v-show="false" v-model="model.f_residential_area_id"-->
269
+ <!-- v-validate:f_residential_area_id='{required: true }'>-->
270
+ <!-- <v-select :value.sync="model.f_residential_area_id" :value-single="true"-->
271
+ <!-- :options='areaslist' placeholder='请选择'-->
272
+ <!-- @change="" @select-search="selectSearch"-->
273
+ <!-- close-on-select search="true">-->
274
+ <!-- </v-select>-->
275
+ <!--</div>-->
276
+ <!--</div>-->
277
+ </slot>
278
+ <!--公司等属性-->
279
+ <div class="col-sm-12 form-group text-center" style="padding-top:8px">
280
+ <div class="col-sm-3 form-group center-block">
281
+ <label class="col-sm-5">所属公司:</label>
282
+ <div class="col-sm-6" style="text-align: left">
283
+ {{ model.orgs }}
284
+ </div>
282
285
  </div>
283
- </div>
284
- <div class="col-sm-3 form-group center-block">
285
- <label class="col-sm-5">操作日期:</label>
286
- <div class="col-sm-6" style="text-align: left">
287
- {{model.operate_date}}
286
+ <div class="col-sm-3 form-group center-block">
287
+ <label class="col-sm-5">部门:</label>
288
+ <div class="col-sm-6" style="text-align: left">
289
+ {{ model.parentname }}
290
+ </div>
291
+ </div>
292
+ <div class="col-sm-3 form-group center-block">
293
+ <label class="col-sm-5">操作人:</label>
294
+ <div class="col-sm-6 " style="text-align: left">
295
+ {{ model.operator }}
296
+ </div>
297
+ </div>
298
+ <div class="col-sm-3 form-group center-block">
299
+ <label class="col-sm-5">操作日期:</label>
300
+ <div class="col-sm-6" style="text-align: left">
301
+ {{ model.operate_date }}
302
+ </div>
288
303
  </div>
289
304
  </div>
290
- </div>
291
- <!-- 按钮组 -->
292
- <div class="from-group col-sm-12 text-center">
293
305
  <!-- 按钮组 -->
294
- <button v-for="(index,button) in data.buttons"
295
- :disabled="(button.disabled && disable_button)"
296
- style="min-width:100px"
297
- :class="button.disabled && disable_button ? 'btn btn-default button_spacing' : 'btn btn-primary button_spacing'"
298
- v-if="!button.hidden && button.button_name !=='提交'&& button.button_name !=='确认'"
299
- @click.prevent="click_but(button)"
300
- >
301
- {{button.button_name}}
302
- </button>
303
- <button v-for="(index,button) in data.buttons"
304
- :disabled="(button.disabled && disable_button) || (!$v.valid)"
305
- style="min-width:100px"
306
- :class="button.disabled && disable_button || (!$v.valid) ? 'btn btn-default button_spacing' : 'btn btn-primary button_spacing'"
307
- v-if="!button.hidden && (button.button_name ==='提交'||button.button_name ==='确认')"
308
- @click.prevent="click_but(button)"
309
- >
310
- {{button.button_name}}
311
- </button>
312
- </div>
313
-
314
- <!-- 按钮模态框 -->
315
- <modal v-if="showButModal" :show.sync="showButModal" backdrop="false" large>
316
- <header slot="modal-header" class="modal-header">
317
- <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
318
- <span class="modal-title"><font
319
- size="3">{{data.button.button_name}}</font></span>
320
- </header>
321
- <article slot="modal-body" class="modal-body clearfix">
322
- <div class="form-group" style="padding: 0 150px">
323
- <div v-for="(index,item) in data.button.button_fields">
324
- <div :style="item.style ? item.style : ''" :class="[item.required && !(item.value) ? 'has-error' : '', item.bootstraped ? item.bootstraped + ' form-group' : 'form-group']"
325
- v-if="(item.type==='input' || item.type==='number'||item.type === 'tel'||item.type === 'email') && !item.hidden && (item.device === 'pc' || !item.device)">
326
- <label :style="item.label_style ? item.label_style : ''"
327
- :class="item.label_bootstraped ? item.label_bootstraped + ' control-label-justify control-label' : 'control-label-justify control-label col-sm-6'">{{item.label}}</label>
328
- <div :style="item.value_style ? item.value_style : ''"
329
- :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-9'">
330
- <input class="form-control input_view"
331
- :placeholder="item.placeholder"
332
- :type="item.type"
333
- v-model="item.value"
334
- :value="item.value"
335
- :readonly="item.readonly"
336
- :disabled="item.disabled"
337
- @change="onbutchange(index)"
338
- @blur="onbutblur(index)"
339
- @input="onbutinput(index)"
340
- />
306
+ <div class="from-group col-sm-12 text-center">
307
+ <!-- 按钮组 -->
308
+ <button v-for="(index,button) in data.buttons"
309
+ :disabled="(button.disabled && disable_button)"
310
+ style="min-width:100px"
311
+ :class="button.disabled && disable_button ? 'btn btn-default button_spacing' : 'btn btn-primary button_spacing'"
312
+ v-if="!button.hidden && button.button_name !=='提交'&& button.button_name !=='确认'"
313
+ @click.prevent="click_but(button)"
314
+ >
315
+ {{ button.button_name }}
316
+ </button>
317
+ <button v-for="(index,button) in data.buttons"
318
+ :disabled="(button.disabled && disable_button) || (!$v.valid)"
319
+ style="min-width:100px"
320
+ :class="button.disabled && disable_button || (!$v.valid) ? 'btn btn-default button_spacing' : 'btn btn-primary button_spacing'"
321
+ v-if="!button.hidden && (button.button_name ==='提交'||button.button_name ==='确认')"
322
+ @click.prevent="click_but(button)"
323
+ >
324
+ {{ button.button_name }}
325
+ </button>
326
+ </div>
327
+
328
+ <!-- 按钮模态框 -->
329
+ <modal v-if="showButModal" :show.sync="showButModal" backdrop="false" large>
330
+ <header slot="modal-header" class="modal-header">
331
+ <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
332
+ <span class="modal-title"><font
333
+ size="3">{{ data.button.button_name }}</font></span>
334
+ </header>
335
+ <article slot="modal-body" class="modal-body clearfix">
336
+ <div class="form-group" style="padding: 0 150px">
337
+ <div v-for="(index,item) in data.button.button_fields">
338
+ <div :style="item.style ? item.style : ''"
339
+ :class="[item.required && !(item.value) ? 'has-error' : '', item.bootstraped ? item.bootstraped + ' form-group' : 'form-group']"
340
+ v-if="(item.type==='input' || item.type==='number'||item.type === 'tel'||item.type === 'email') && !item.hidden && (item.device === 'pc' || !item.device)">
341
+ <label :style="item.label_style ? item.label_style : ''"
342
+ :class="item.label_bootstraped ? item.label_bootstraped + ' control-label-justify control-label' : 'control-label-justify control-label col-sm-6'">{{ item.label }}</label>
343
+ <div :style="item.value_style ? item.value_style : ''"
344
+ :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-9'">
345
+ <input class="form-control input_view"
346
+ :placeholder="item.placeholder"
347
+ :type="item.type"
348
+ v-model="item.value"
349
+ :value="item.value"
350
+ :readonly="item.readonly"
351
+ :disabled="item.disabled"
352
+ @change="onbutchange(index)"
353
+ @blur="onbutblur(index)"
354
+ @input="onbutinput(index)"
355
+ />
356
+ </div>
341
357
  </div>
342
- </div>
343
358
 
344
- <!--时间datepicker-->
345
- <div :style="item.style ? item.style : ''" :class="[item.required && !(item.value) ? 'has-error' : '', item.bootstraped ? item.bootstraped + ' form-group':'form-group']"
346
- v-if="item.type==='datepicker' && !item.hidden && (item.device === 'pc' || !item.device)">
347
- <label :style="item.label_style ? item.label_style : ''"
348
- :class="item.label_bootstraped ? item.label_bootstraped + ' control-label-justify control-label' : 'control-label-justify control-label col-sm-6'">{{item.label}}</label>
349
- <div :style="item.value_style ? item.value_style : ''"
350
- :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-9'">
351
- <datepicker
352
- :placeholder="item.placeholder"
353
- :value.sync="item.value"
354
- v-model="item.value"
355
- :readonly="item.readonly"
356
- :disabled="item.disabled"
357
- :format="item.format ? item.format : 'yyyy-MM-dd'"
358
- :show-reset-button="true"
359
- @change="onbutchange(index)"
360
- @blur="onbutblur(index)"
361
- ></datepicker>
359
+ <!--时间datepicker-->
360
+ <div :style="item.style ? item.style : ''"
361
+ :class="[item.required && !(item.value) ? 'has-error' : '', item.bootstraped ? item.bootstraped + ' form-group':'form-group']"
362
+ v-if="item.type==='datepicker' && !item.hidden && (item.device === 'pc' || !item.device)">
363
+ <label :style="item.label_style ? item.label_style : ''"
364
+ :class="item.label_bootstraped ? item.label_bootstraped + ' control-label-justify control-label' : 'control-label-justify control-label col-sm-6'">{{ item.label }}</label>
365
+ <div :style="item.value_style ? item.value_style : ''"
366
+ :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-9'">
367
+ <datepicker
368
+ :placeholder="item.placeholder"
369
+ :value.sync="item.value"
370
+ v-model="item.value"
371
+ :readonly="item.readonly"
372
+ :disabled="item.disabled"
373
+ :format="item.format ? item.format : 'yyyy-MM-dd'"
374
+ :show-reset-button="true"
375
+ @change="onbutchange(index)"
376
+ @blur="onbutblur(index)"
377
+ ></datepicker>
378
+ </div>
362
379
  </div>
363
- </div>
364
380
 
365
- <!--select-->
366
- <div :style="item.style ? item.style : ''" :class="[item.required && !(item.value) ? 'has-error' : '', item.bootstraped ? item.bootstraped + ' form-group':'form-group']"
367
- v-if="item.type==='select' && !item.hidden && (item.device === 'pc' || !item.device)">
368
- <label :style="item.label_style ? item.label_style : ''"
369
- :class="item.label_bootstraped ? item.label_bootstraped + ' control-label-justify control-label' : 'control-label-justify control-label col-sm-6'">{{item.label}}</label>
370
- <div :style="item.value_style ? item.value_style : ''"
371
- :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-9'">
372
- <input-select
373
- class="select select_list"
374
- :value.sync="item.value"
375
- v-model="item.value"
376
- :options='item.options'
377
- :readonly="item.readonly"
378
- :disable="item.disabled"
379
- :valueSingle="true"
380
- @blur="onbutblur(index)"
381
- @change="onbutchange(index)"
382
- ></input-select>
381
+ <!--select-->
382
+ <div :style="item.style ? item.style : ''"
383
+ :class="[item.required && !(item.value) ? 'has-error' : '', item.bootstraped ? item.bootstraped + ' form-group':'form-group']"
384
+ v-if="item.type==='select' && !item.hidden && (item.device === 'pc' || !item.device)">
385
+ <label :style="item.label_style ? item.label_style : ''"
386
+ :class="item.label_bootstraped ? item.label_bootstraped + ' control-label-justify control-label' : 'control-label-justify control-label col-sm-6'">{{ item.label }}</label>
387
+ <div :style="item.value_style ? item.value_style : ''"
388
+ :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-9'">
389
+ <input-select
390
+ class="select select_list"
391
+ :value.sync="item.value"
392
+ v-model="item.value"
393
+ :options='item.options'
394
+ :readonly="item.readonly"
395
+ :disable="item.disabled"
396
+ :valueSingle="true"
397
+ @blur="onbutblur(index)"
398
+ @change="onbutchange(index)"
399
+ ></input-select>
400
+ </div>
383
401
  </div>
384
- </div>
385
402
 
386
- <!--textarea-->
387
- <div :style="item.style ? item.style : ''" :class="[item.required && !(item.value) ? 'has-error' : '', item.bootstraped ? item.bootstraped + ' form-group':'form-group']"
388
- v-if="item.type==='textarea' && !item.hidden && (item.device === 'pc' || !item.device)">
389
- <label :style="item.label_style ? item.label_style : ''"
390
- :class="item.label_bootstraped ? item.label_bootstraped + ' control-label-justify control-label' : 'control-label-justify control-label col-sm-6'">{{item.label}}</label>
391
- <div :style="item.value_style ? item.value_style : ''"
392
- :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-9'">
403
+ <!--textarea-->
404
+ <div :style="item.style ? item.style : ''"
405
+ :class="[item.required && !(item.value) ? 'has-error' : '', item.bootstraped ? item.bootstraped + ' form-group':'form-group']"
406
+ v-if="item.type==='textarea' && !item.hidden && (item.device === 'pc' || !item.device)">
407
+ <label :style="item.label_style ? item.label_style : ''"
408
+ :class="item.label_bootstraped ? item.label_bootstraped + ' control-label-justify control-label' : 'control-label-justify control-label col-sm-6'">{{ item.label }}</label>
409
+ <div :style="item.value_style ? item.value_style : ''"
410
+ :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-9'">
393
411
  <textarea
394
412
  class="form-control input_view"
395
413
  style="width: 100%;height: 100%"
@@ -402,41 +420,56 @@
402
420
  @blur="onbutblur(index)"
403
421
  @input="onbutinput(index)"
404
422
  ></textarea>
423
+ </div>
405
424
  </div>
406
425
  </div>
407
426
  </div>
408
- </div>
427
+ </article>
428
+ <footer slot="modal-footer" class="modal-footer">
429
+ <button :class="disable_modal_button ? 'btn btn-default':'btn btn-primary'"
430
+ :disabled="disable_modal_button" type="button" @click="confirmModal()">
431
+ 确认
432
+ </button>
433
+ </footer>
434
+ </modal>
435
+ </form>
436
+ <modal v-if="showModal" :show.sync="showModal" cancel-text="取消"
437
+ ok-text="确认">
438
+ <div class="form-horizontal" slot="modal-body">
439
+ <!-- table表格,标题为勘察结果,勘察时间-->
440
+ <table class="table table-bordered table-hover table-striped">
441
+ <thead>
442
+ <tr>
443
+ <th>序号</th>
444
+ <th>勘察结果</th>
445
+ <th>勘察时间</th>
446
+ </tr>
447
+ </thead>
448
+ <tbody>
449
+ <tr v-for="(index,item) in exdata">
450
+ <td :style="{ textAlign: 'center' }">{{ index * 1 + 1 }}</td>
451
+ <td :style="{ textAlign: 'center' }">{{ item.f_exploration_result }}</td>
452
+ <td :style="{ textAlign: 'center' }">{{ item.f_time }}</td>
453
+ </tr>
454
+ </tbody>
455
+ </table>
456
+ </div>
457
+ </modal>
458
+ <modal v-if="showPrint" :show.sync="showPrint" v-ref:modal :large="true" :backdrop="false" title="打印预览">
459
+ <header slot="modal-header" class="modal-header">
460
+ <button type="button" class="close" @click="closePrint"><span>&times;</span></button>
461
+ <h4 class="modal-title">打印预览</h4>
462
+ </header>
463
+ <article slot="modal-body" class="modal-body clearfix">
464
+ <!--开通卡-->
465
+ <apply-print-activatecard :selectdata="data" :billnum="billnum" v-ref:print v-if="data.defname === '营业厅缴费'"></apply-print-activatecard>
466
+ <!--安装卡-->
467
+ <apply-print-install :name="name" :selectdata="data" :billnum="billnum" v-ref:print v-if="(data.f_apply_type === '散户报建' && data.defname === '报装缴费') || (data.f_apply_type === '改装报建' && data.defname === '报装缴费') "></apply-print-install>
409
468
  </article>
410
469
  <footer slot="modal-footer" class="modal-footer">
411
- <button :class="disable_modal_button ? 'btn btn-default':'btn btn-primary'"
412
- :disabled="disable_modal_button" type="button" @click="confirmModal()">
413
- 确认
414
- </button>
470
+ <button :disabled="!billnum.isOk" type="button" class="btn btn-primary" @click="print()">打印</button>
415
471
  </footer>
416
472
  </modal>
417
- </form>
418
- <modal v-if="showModal" :show.sync="showModal" cancel-text="取消"
419
- ok-text="确认">
420
- <div class="form-horizontal" slot="modal-body">
421
- <!-- table表格,标题为勘察结果,勘察时间-->
422
- <table class="table table-bordered table-hover table-striped">
423
- <thead>
424
- <tr>
425
- <th>序号</th>
426
- <th>勘察结果</th>
427
- <th>勘察时间</th>
428
- </tr>
429
- </thead>
430
- <tbody>
431
- <tr v-for="(index,item) in exdata" >
432
- <td :style="{ textAlign: 'center' }">{{index*1+1}}</td>
433
- <td :style="{ textAlign: 'center' }">{{item.f_exploration_result}}</td>
434
- <td :style="{ textAlign: 'center' }">{{item.f_time}}</td>
435
- </tr>
436
- </tbody>
437
- </table>
438
- </div>
439
- </modal>
440
473
  </div>
441
474
  </template>
442
475
  <script>
@@ -470,10 +503,13 @@ export default {
470
503
  },
471
504
  data () {
472
505
  return {
473
- showModal:false,//勘察结果弹窗
506
+ name:'',
507
+ billnum:{}, // 发票号
508
+ showPrint: false, // 打印控件
509
+ showModal: false,//勘察结果弹窗
474
510
  exdata: [],//勘察结果数据
475
511
  model: {}, // 公司等属性
476
- exploration:false,//勘察结果按钮显示
512
+ exploration: false,//勘察结果按钮显示
477
513
  disable_button: true, // 控制按钮禁用
478
514
  disable_modal_button: true, // 控制按钮禁用
479
515
  //初始化省市区数据
@@ -483,46 +519,44 @@ export default {
483
519
  //初始化街道数据
484
520
  areaslist: [],
485
521
  showButModal: false,
486
- areaData:{
487
- sjvalue:'',
488
- xianvalue:'',
489
- sqvalue:'',
522
+ areaData: {
523
+ sjvalue: '',
524
+ xianvalue: '',
525
+ sqvalue: ''
490
526
  },
491
527
  templatlng: {
492
- gaodetemplng: "",
493
- gaodetemplat: "",
494
- baidutemplng: "",
495
- baidutemplat: ""
528
+ gaodetemplng: '',
529
+ gaodetemplat: '',
530
+ baidutemplng: '',
531
+ baidutemplat: ''
496
532
  }
497
533
  }
498
534
  },
499
535
  watch: {
500
536
  deep: true
501
537
  },
502
- computed: {
503
-
504
- },
538
+ computed: {},
505
539
  ready () {
506
- if(this.data.defname=='部门领导审核') {
540
+ if (this.data.defname == '部门领导审核') {
507
541
  let http = new HttpResetClass()
508
542
  let res = http.load(
509
543
  'POST',
510
544
  `rs/sql/exploration`,
511
545
  {
512
546
  data: {
513
- id: this.data.f_process_id,
547
+ id: this.data.f_process_id
514
548
  }
515
549
  },
516
550
  {resolveMsg: null, rejectMsg: '勘察结果查询失败!!!'}
517
- ).then(value =>{
551
+ ).then(value => {
518
552
  //遍历value.data数组
519
- for(let i=0;i<value.data.length;i++){
553
+ for (let i = 0; i < value.data.length; i++) {
520
554
  // value.data[i].f_time=new Date(value.data[i].f_time).Format("yyyy-MM-dd HH:mm:ss")
521
555
  //将数组中的每一个对象赋值给exdata
522
556
  this.exdata.push(value.data[i])
523
557
  }
524
- if(value.data.length>1){
525
- this.exploration=true
558
+ if (value.data.length > 1) {
559
+ this.exploration = true
526
560
  }
527
561
  })
528
562
 
@@ -537,8 +571,8 @@ export default {
537
571
  this.$dispatch('initializtionView')
538
572
  },
539
573
  methods: {
540
- showModle(){
541
- this.showModal=true
574
+ showModle () {
575
+ this.showModal = true
542
576
  },
543
577
  // 初始化数据
544
578
  initializtion () {
@@ -572,32 +606,32 @@ export default {
572
606
 
573
607
  this.initpcds(` j_orgid = '${this.$login.f.orgid}'`)
574
608
  },
575
- async getSelectShijiValue(sjvalue,sjlable) {
609
+ async getSelectShijiValue (sjvalue, sjlable) {
576
610
  this.areaData.sjvalue = sjvalue
577
- console.log("这是父级接收的市级值:",sjvalue,sjlable)
611
+ console.log('这是父级接收的市级值:', sjvalue, sjlable)
578
612
  this.data.areaData = this.areaData
579
613
 
580
614
  // 是否禁用按钮
581
615
  this.disableButton()
582
616
  },
583
- async getSelectXianValue(xianvalue,xianlable) {
617
+ async getSelectXianValue (xianvalue, xianlable) {
584
618
  this.areaData.xianvalue = xianvalue
585
619
  this.data.areaData = this.areaData
586
- console.log("这是父级接收的县级值:",xianvalue,xianlable)
620
+ console.log('这是父级接收的县级值:', xianvalue, xianlable)
587
621
 
588
622
  // 是否禁用按钮
589
623
  this.disableButton()
590
624
  },
591
- async getSelectShequValue(sqvalue,sqlable) {
625
+ async getSelectShequValue (sqvalue, sqlable) {
592
626
  this.areaData.sqvalue = sqvalue
593
627
  this.data.areaData = this.areaData
594
- console.log("这是父级接收的社区值:",sqvalue,sqlable)
628
+ console.log('这是父级接收的社区值:', sqvalue, sqlable)
595
629
 
596
630
  // 是否禁用按钮
597
631
  this.disableButton()
598
632
  },
599
633
  //初始化省市区,添加街道
600
- async initpcds(pconditon) {
634
+ async initpcds (pconditon) {
601
635
  // console.log('initpcds', pconditon)
602
636
  // this.pcdslist = []
603
637
  // let HttpReset = new HttpResetClass()
@@ -622,7 +656,7 @@ export default {
622
656
  // this.pcdslist = redata
623
657
  },
624
658
  //初始化街道 添加小区
625
- async initstreets(pconditon) {
659
+ async initstreets (pconditon) {
626
660
  // console.log('市区32', pconditon)
627
661
  // this.streetslist = []
628
662
  // let HttpReset = new HttpResetClass()
@@ -648,7 +682,7 @@ export default {
648
682
  // this.model.f_iscity = this.findbyid(this.streetslist, this.model.f_street_id).f_iscity
649
683
  },
650
684
  //初始化小区添加小区
651
- async initareas(pconditon) {
685
+ async initareas (pconditon) {
652
686
  // if(this.usertype){
653
687
  // pconditon=pconditon+` and f_special='1' `
654
688
  // }
@@ -677,7 +711,7 @@ export default {
677
711
  // }
678
712
  },
679
713
  //省/市/区变化
680
- async pcdChange(val) {
714
+ async pcdChange (val) {
681
715
 
682
716
  // console.log("省/市/区变化", val)
683
717
  // console.log("省/市/区变化", ` f_pcd_id ='${val}' `)
@@ -714,7 +748,7 @@ export default {
714
748
  // this.$resetValidation()
715
749
  },
716
750
  //街道变化
717
- async streetChange(val) {
751
+ async streetChange (val) {
718
752
  // console.log("街道变化", val)
719
753
  // if (this.streetslist[0]) {
720
754
  // var street = ''
@@ -761,21 +795,21 @@ export default {
761
795
  }
762
796
 
763
797
  //区域下拉框必选 流程模式为报警器报建
764
- if ((this.data.f_apply_type === '报警器报建' || this.data.f_apply_type === '工商业报警器报建') && this.data.defname === '工程施工' && this.data.title === '工程施工' && this.data.f_sub_state !='完工'){
765
- if (!flag){
766
- if (this.areaData.sjvalue ==null || this.areaData.sjvalue.length ==0 || this.areaData.sqvalue == null || this.areaData.sqvalue.length ==0
767
- || this.areaData.xianvalue == null || this.areaData.xianvalue.length == 0){
768
- console.log("区域为空禁止提交:",this.areaData)
769
- flag = true
770
- }
771
-
772
- if (this.templatlng.baidutemplat ==null || this.templatlng.baidutemplat.length ==0 || this.templatlng.baidutemplng == null || this.templatlng.baidutemplng.length ==0
773
- || this.templatlng.gaodetemplat == null || this.templatlng.gaodetemplat.length == 0 || this.templatlng.gaodetemplng == null || this.templatlng.gaodetemplng.length == 0){
774
- console.log("地图坐标为空禁止提交:",this.templatlng)
775
- flag = true
776
- }
777
- }
778
- }
798
+ if ((this.data.f_apply_type === '报警器报建' || this.data.f_apply_type === '工商业报警器报建') && this.data.defname === '工程施工' && this.data.title === '工程施工' && this.data.f_sub_state != '完工') {
799
+ if (!flag) {
800
+ if (this.areaData.sjvalue == null || this.areaData.sjvalue.length == 0 || this.areaData.sqvalue == null || this.areaData.sqvalue.length == 0
801
+ || this.areaData.xianvalue == null || this.areaData.xianvalue.length == 0) {
802
+ console.log('区域为空禁止提交:', this.areaData)
803
+ flag = true
804
+ }
805
+
806
+ if (this.templatlng.baidutemplat == null || this.templatlng.baidutemplat.length == 0 || this.templatlng.baidutemplng == null || this.templatlng.baidutemplng.length == 0
807
+ || this.templatlng.gaodetemplat == null || this.templatlng.gaodetemplat.length == 0 || this.templatlng.gaodetemplng == null || this.templatlng.gaodetemplng.length == 0) {
808
+ console.log('地图坐标为空禁止提交:', this.templatlng)
809
+ flag = true
810
+ }
811
+ }
812
+ }
779
813
  this.disable_button = flag
780
814
  },
781
815
  // 失去焦点且值最终发生变化触发
@@ -824,7 +858,7 @@ export default {
824
858
  }
825
859
  this.$dispatch('oninput', index)
826
860
  },
827
- selectSearch(event, index) {
861
+ selectSearch (event, index) {
828
862
  if (this.data.fields[index].selectSearch) {
829
863
  this.$dispatch(this.data.fields[index].selectSearch, event[0], index)
830
864
  }
@@ -907,7 +941,6 @@ export default {
907
941
  disableModalButton () {
908
942
  let flag = false
909
943
 
910
-
911
944
  for (const item of this.data.button.button_fields) {
912
945
  if (item.required && !item.value) {
913
946
  if (item.value === 0) {
@@ -953,60 +986,112 @@ export default {
953
986
  }
954
987
  }
955
988
  }
989
+ },
990
+ printclick (index) {
991
+ this.showPrint = true
992
+ this.getbillnum()
993
+ this.name = this.data.fields[index].name.substring(2)
994
+ },
995
+ closePrint () {
996
+ this.showPrint = false
997
+ },
998
+ print () {
999
+ this.$refs.print.$refs.print.PrintTable()
1000
+ // 保存票据号
1001
+ let data = {
1002
+ f_userinfo_id: this.selectdata.f_userinfo_id,
1003
+ f_user_id: this.selectdata.f_user_id,
1004
+ f_user_name: this.selectdata.f_user_name,
1005
+ f_charge_id: this.charge.id,//收费记录id
1006
+ f_type: '报建收费',
1007
+ f_using_bill: {
1008
+ number: this.billnum.bill.number,
1009
+ id: this.billnum.bill.id
1010
+ },
1011
+ f_biL_type: '正常',
1012
+ f_biLl_state: '有效',
1013
+ f_operator: this.$login.f.f_operator,
1014
+ f_operate_date: this.$login.f.f_operate_date,
1015
+ f_orgid: this.$login.f.f_orgid,
1016
+ f_orgname: this.$login.f.f_orgname,
1017
+ f_depid: this.$login.f.f_depid,
1018
+ f_depname: this.$login.f.f_depname,
1019
+ f_operatorid: this.$login.f.f_operatorid
1020
+ }
1021
+ let http = new HttpResetClass()
1022
+ http.load('post', 'rs/logic/sale_billReprint', data, {resolveMsg: null, rejectMsg: null})
1023
+
1024
+ },
1025
+ // 获取发票号
1026
+ getbillnum () {
1027
+ // 获取票据号
1028
+ let data = {
1029
+ f_bill_user: this.$login.f.name, // 票据使用人
1030
+ f_bill_type: '国税发票', // 票据类型
1031
+ f_orgid: this.$login.f.orgid,
1032
+ f_use_type: '新装开户费' // 票据使用类型(燃气费、其他费用等)可不传
1033
+ }
1034
+ let http = new HttpResetClass()
1035
+ http.load('post', 'rs/logic/sale_validateBill', data, {resolveMsg: null, rejectMsg: null}).then(res=>{
1036
+ this.billnum = res.data
1037
+ })
956
1038
  }
957
1039
  },
958
- events: {
959
-
960
- }
1040
+ events: {}
961
1041
  }
962
1042
  </script>
963
1043
  <style>
964
- .datepicker{
965
- width: 100%!important;
1044
+ .datepicker {
1045
+ width: 100% !important;
966
1046
  }
967
- .datepicker-input{
968
- background-color: #ffffff!important;
969
- width: 100%!important;
1047
+
1048
+ .datepicker-input {
1049
+ background-color: #ffffff !important;
1050
+ width: 100% !important;
970
1051
  }
971
- .datepicker-input:disabled{
972
- border: 1px solid #DDD!important;
973
- color: #ACA899!important;
974
- width: 100%!important;
1052
+
1053
+ .datepicker-input:disabled {
1054
+ border: 1px solid #DDD !important;
1055
+ color: #ACA899 !important;
1056
+ width: 100% !important;
975
1057
  }
976
1058
  </style>
977
1059
  <style scoped>
978
- th{
1060
+ th {
979
1061
  font-size: 15px !important;
980
1062
  text-align: center !important;
981
- background-color: #dfedfb!important;
1063
+ background-color: #dfedfb !important;
982
1064
  color: #666666 !important;
983
1065
  font-family: PINGFANG-BOLD !important;
984
- font-weight: normal!important;
1066
+ font-weight: normal !important;
985
1067
  }
1068
+
986
1069
  /*清除model中的浮动*/
987
- .clearfix:after,.clearfix:before{
1070
+ .clearfix:after, .clearfix:before {
988
1071
  display: table;
989
1072
  }
990
- .clearfix:after{
1073
+
1074
+ .clearfix:after {
991
1075
  clear: both;
992
1076
  }
993
1077
 
994
- .input_view{
1078
+ .input_view {
995
1079
  padding: 8px;
996
1080
  background-color: #ffffff;
997
1081
  border-radius: 2px;
998
- border: solid 1px #c7c7c7!important;
999
- color: #333333!important;
1000
- font-size: 15px!important;
1082
+ border: solid 1px #c7c7c7 !important;
1083
+ color: #333333 !important;
1084
+ font-size: 15px !important;
1001
1085
  }
1002
1086
 
1003
- .input_view[readonly]{
1004
- border: 1px solid #DDD!important;
1005
- color:#ACA899!important;
1087
+ .input_view[readonly] {
1088
+ border: 1px solid #DDD !important;
1089
+ color: #ACA899 !important;
1006
1090
  }
1007
- .input_view:disabled{
1008
- border: 1px solid #DDD!important;
1009
- color:#ACA899!important;
1091
+
1092
+ .input_view:disabled {
1093
+ border: 1px solid #DDD !important;
1094
+ color: #ACA899 !important;
1010
1095
  }
1011
1096
 
1012
1097
  .control-label-justify {