Parcourir la source

压缩包上传回显

hanchaobo il y a 2 ans
Parent
révision
a61a1388f7
2 fichiers modifiés avec 203 ajouts et 177 suppressions
  1. 201
    175
      src/views/caseManagement/components/addCase.vue
  2. 2
    2
      vue.config.js

+ 201
- 175
src/views/caseManagement/components/addCase.vue Voir le fichier

@@ -7,34 +7,43 @@
7 7
         <el-tab-pane label="证据清单" name="second" v-if="tabFlag">
8 8
         </el-tab-pane>
9 9
       </el-tabs>
10
-      <el-form v-if="activeName == 'first'" :disabled="caseDisabled" :model="formData" ref="ruleForm" label-width="130px"
11
-        class="demo-ruleForm">
10
+      <el-form v-if="activeName == 'first'" :disabled="caseDisabled" :model="formData" ref="ruleForm"
11
+        label-width="130px" class="demo-ruleForm">
12 12
         <el-row>
13 13
           <div style="display: inline-flex">
14 14
             <div class="infoIcon"></div>
15 15
             <div class="caseInfo">案件信息:</div>
16 16
           </div>
17 17
           <el-divider></el-divider>
18
+          <el-col :span="24">
19
+            <el-form-item label="压缩包导入">
20
+              <el-upload class="upload-demo" :action="zipUrl()" :before-remove="beforeRemoveZip" multiple accept='.zip' :limit="1"
21
+                :on-exceed="handleExceedZip" :on-success='successZip' :file-list="fileListZip">
22
+                <el-button size="small" type="primary">点击上传</el-button>
23
+                <div slot="tip" class="el-upload__tip">只能上传zip压缩包</div>
24
+              </el-upload>
25
+            </el-form-item>
26
+          </el-col>
18 27
           <el-col :span="24">
19 28
             <el-form-item label="申请人调解请求" prop="arbitratClaims" :rules="[
20
-              {
21
-                required: true,
22
-                message: '申请人调解请求不能为空',
23
-                trigger: 'blur',
24
-              },
25
-            ]">
29
+      {
30
+        required: true,
31
+        message: '申请人调解请求不能为空',
32
+        trigger: 'blur',
33
+      },
34
+    ]">
26 35
               <el-input v-model="formData.arbitratClaims" placeholder="请输入申请人调解诉求" type="textarea"
27 36
                 :autosize="{ minRows: 4, maxRows: 8 }" />
28 37
             </el-form-item>
29 38
           </el-col>
30 39
           <el-col :span="24">
31 40
             <el-form-item label="事实和理由" prop="facts" :rules="[
32
-              {
33
-                required: true,
34
-                message: '事实和理由不能为空',
35
-                trigger: 'blur',
36
-              },
37
-            ]">
41
+      {
42
+        required: true,
43
+        message: '事实和理由不能为空',
44
+        trigger: 'blur',
45
+      },
46
+    ]">
38 47
               <el-input v-model="formData.facts" placeholder="请输入事实和理由" type="textarea"
39 48
                 :autosize="{ minRows: 4, maxRows: 8 }" />
40 49
             </el-form-item>
@@ -132,84 +141,84 @@
132 141
           </el-col>
133 142
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 1">
134 143
             <el-form-item label="申请机构名称" prop="affiliate.applicationName" :rules="[
135
-              {
136
-                required: true,
137
-                message: '申请机构名称不能为空',
138
-                trigger: 'blur',
139
-              },
140
-            ]">
144
+      {
145
+        required: true,
146
+        message: '申请机构名称不能为空',
147
+        trigger: 'blur',
148
+      },
149
+    ]">
141 150
               <el-input v-model="formData.affiliate.applicationName" placeholder="请输入申请机构名称" />
142 151
             </el-form-item>
143 152
           </el-col>
144 153
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 0">
145 154
             <el-form-item label="申请人" prop="affiliate.applicationName" :rules="[
146
-              {
147
-                required: true,
148
-                message: '申请人名称不能为空',
149
-                trigger: 'blur',
150
-              },
151
-            ]">
155
+      {
156
+        required: true,
157
+        message: '申请人名称不能为空',
158
+        trigger: 'blur',
159
+      },
160
+    ]">
152 161
               <el-input v-model="formData.affiliate.applicationName" disabled placeholder="请输入申请人姓名" />
153 162
             </el-form-item>
154 163
           </el-col>
155 164
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 1">
156 165
             <el-form-item label="统一社会信用代码" prop="affiliate.code" :rules="[
157
-              {
158
-                required: true,
159
-                message: '统一社会信用代码不能为空',
160
-                trigger: 'blur',
161
-              },
162
-            ]">
166
+      {
167
+        required: true,
168
+        message: '统一社会信用代码不能为空',
169
+        trigger: 'blur',
170
+      },
171
+    ]">
163 172
               <el-input v-model="formData.affiliate.code" placeholder="请输入统一社会信用代码" />
164 173
             </el-form-item>
165 174
           </el-col>
166 175
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 0">
167 176
             <el-form-item label="申请人身份证号码" prop="affiliate.code" :rules="[
168
-              {
169
-                required: true,
170
-                message: '申请人身份证号不能为空',
171
-                trigger: 'blur',
172
-              },
173
-              {
174
-                pattern:
175
-                  /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/,
176
-                message: '请输入正确的身份证号码',
177
-                trigger: 'blur',
178
-              },
179
-            ]">
177
+      {
178
+        required: true,
179
+        message: '申请人身份证号不能为空',
180
+        trigger: 'blur',
181
+      },
182
+      {
183
+        pattern:
184
+          /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/,
185
+        message: '请输入正确的身份证号码',
186
+        trigger: 'blur',
187
+      },
188
+    ]">
180 189
               <el-input v-model="formData.affiliate.code" disabled placeholder="请输入申请人的身份证号" />
181 190
             </el-form-item>
182 191
           </el-col>
183 192
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 0">
184 193
             <el-form-item label="申请人邮箱" prop="affiliate.applicationEmail" :rules="[
185
-              {
186
-                required: true,
187
-                message: '申请人邮箱不能为空',
188
-                trigger: 'blur',
189
-              },
190
-              {
191
-                pattern:
192
-                  /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
193
-                message: '请输入正确的邮箱地址',
194
-                trigger: 'blur',
195
-              },
196
-            ]">
194
+      {
195
+        required: true,
196
+        message: '申请人邮箱不能为空',
197
+        trigger: 'blur',
198
+      },
199
+      {
200
+        pattern:
201
+          /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
202
+        message: '请输入正确的邮箱地址',
203
+        trigger: 'blur',
204
+      },
205
+    ]">
197 206
               <el-input v-model="formData.affiliate.applicationEmail" disabled placeholder="请输入申请人邮箱" />
198 207
             </el-form-item>
199 208
           </el-col>
200 209
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 0">
201 210
             <el-form-item label="申请人电话" prop="affiliate.applicationPhone" :rules="[
202
-              {
203
-                required: true,
204
-                message: '申请人联系电话不能为空',
205
-                trigger: 'blur',
206
-              },
207
-              {
208
-                pattern: /^[1][3,4,5,6,7,8,9][0-9]{9}$/,
209
-                message: '请输入正确的手机号码',
210
-                trigger: 'blur',
211
-              },
212
-            ]">
211
+      {
212
+        required: true,
213
+        message: '申请人联系电话不能为空',
214
+        trigger: 'blur',
215
+      },
216
+      {
217
+        pattern: /^[1][3,4,5,6,7,8,9][0-9]{9}$/,
218
+        message: '请输入正确的手机号码',
219
+        trigger: 'blur',
220
+      },
221
+    ]">
213 222
               <el-input v-model="formData.affiliate.applicationPhone" disabled placeholder="请输入申请人联系电话" />
214 223
             </el-form-item>
215 224
           </el-col>
@@ -231,50 +240,50 @@
231 240
           </el-col> -->
232 241
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 1">
233 242
             <el-form-item label="法定代表人" prop="affiliate.compLegalPerson" :rules="[
234
-              {
235
-                required: true,
236
-                message: '法定代表人不能为空',
237
-                trigger: 'blur',
238
-              },
239
-            ]">
243
+      {
244
+        required: true,
245
+        message: '法定代表人不能为空',
246
+        trigger: 'blur',
247
+      },
248
+    ]">
240 249
               <el-input v-model="formData.affiliate.compLegalPerson" placeholder="请输入法定代表人" />
241 250
             </el-form-item>
242 251
           </el-col>
243 252
           <el-col :span="12">
244 253
             <el-form-item label="申请人住所" prop="affiliate.applicantHome" :rules="[
245
-              {
246
-                required: true,
247
-                message: '申请人住所不能为空',
248
-                trigger: 'blur',
249
-              },
250
-            ]">
254
+      {
255
+        required: true,
256
+        message: '申请人住所不能为空',
257
+        trigger: 'blur',
258
+      },
259
+    ]">
251 260
               <el-input v-model="formData.affiliate.applicantHome" placeholder="请输入申请人住所" />
252 261
             </el-form-item>
253 262
           </el-col>
254 263
           <el-col :span="12">
255 264
             <el-form-item label="申请人联系地址" prop="affiliate.applicantAddress" :rules="[
256
-              {
257
-                required: true,
258
-                message: '申请人联系地址不能为空',
259
-                trigger: 'blur',
260
-              },
261
-            ]">
265
+      {
266
+        required: true,
267
+        message: '申请人联系地址不能为空',
268
+        trigger: 'blur',
269
+      },
270
+    ]">
262 271
               <el-input v-model="formData.affiliate.applicantAddress" placeholder="请输入申请人联系地址" />
263 272
             </el-form-item>
264 273
           </el-col>
265 274
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 1">
266 275
             <el-form-item label="代理人联系电话" prop="affiliate.contactTelphoneAgent" :rules="[
267
-              {
268
-                required: true,
269
-                message: '代理人联系电话不能为空',
270
-                trigger: 'blur',
271
-              },
272
-              {
273
-                pattern: /^[1][3,4,5,6,7,8,9][0-9]{9}$/,
274
-                message: '请输入正确的手机号码',
275
-                trigger: 'blur',
276
-              },
277
-            ]">
276
+      {
277
+        required: true,
278
+        message: '代理人联系电话不能为空',
279
+        trigger: 'blur',
280
+      },
281
+      {
282
+        pattern: /^[1][3,4,5,6,7,8,9][0-9]{9}$/,
283
+        message: '请输入正确的手机号码',
284
+        trigger: 'blur',
285
+      },
286
+    ]">
278 287
               <el-input v-model="formData.affiliate.contactTelphoneAgent" disabled placeholder="请输入代理人联系电话" />
279 288
             </el-form-item>
280 289
           </el-col>
@@ -285,12 +294,12 @@
285 294
           </el-col>
286 295
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 1">
287 296
             <el-form-item label="代理人姓名" prop="affiliate.nameAgent" :rules="[
288
-              {
289
-                required: true,
290
-                message: '代理人姓名不能为空',
291
-                trigger: 'blur',
292
-              },
293
-            ]">
297
+      {
298
+        required: true,
299
+        message: '代理人姓名不能为空',
300
+        trigger: 'blur',
301
+      },
302
+    ]">
294 303
               <el-input v-model="formData.affiliate.nameAgent" disabled placeholder="请输入代理人姓名" />
295 304
             </el-form-item>
296 305
           </el-col>
@@ -301,84 +310,85 @@
301 310
           </el-col>
302 311
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 1">
303 312
             <el-form-item label="代理人邮箱" prop="affiliate.agentEmail" :rules="[
304
-              {
305
-                required: true,
306
-                message: '代理人邮箱不能为空',
307
-                trigger: 'blur',
308
-              },
309
-              {
310
-                pattern:
311
-                  /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
312
-                message: '请输入正确的邮箱地址',
313
-                trigger: 'blur',
314
-              },
315
-            ]">
313
+      {
314
+        required: true,
315
+        message: '代理人邮箱不能为空',
316
+        trigger: 'blur',
317
+      },
318
+      {
319
+        pattern:
320
+          /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
321
+        message: '请输入正确的邮箱地址',
322
+        trigger: 'blur',
323
+      },
324
+    ]">
316 325
               <el-input v-model="formData.affiliate.agentEmail" disabled placeholder="请输入代理人邮箱" />
317 326
             </el-form-item>
318 327
           </el-col>
319 328
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 0">
320 329
             <el-form-item label="代理人邮箱" prop="affiliate.agentEmail" :rules="[
321
-              {
322
-                pattern:
323
-                  /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
324
-                message: '请输入正确的邮箱地址',
325
-                trigger: 'blur',
326
-              },
327
-            ]">
330
+      {
331
+        pattern:
332
+          /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
333
+        message: '请输入正确的邮箱地址',
334
+        trigger: 'blur',
335
+      },
336
+    ]">
328 337
               <el-input v-model="formData.affiliate.agentEmail" placeholder="请输入代理人邮箱" />
329 338
             </el-form-item>
330 339
           </el-col>
331 340
           <el-col :span="12">
332 341
             <el-form-item label="被申请人姓名" prop="affiliate.respondentName" :rules="[
333
-              {
334
-                required: true,
335
-                message: '被申请人姓名不能为空',
336
-                trigger: 'blur',
337
-              },
338
-            ]">
342
+      {
343
+        required: true,
344
+        message: '被申请人姓名不能为空',
345
+        trigger: 'blur',
346
+      },
347
+    ]">
339 348
               <el-input v-model="formData.affiliate.respondentName" placeholder="请输入被申请人姓名" />
340 349
             </el-form-item>
341 350
           </el-col>
342 351
           <el-col :span="12">
343 352
             <el-form-item label="被申请人联系电话" prop="affiliate.respondentPhone" :rules="[
344
-              {
345
-                required: true,
346
-                message: '被申请人联系电话不能为空',
347
-                trigger: 'blur',
348
-              },
349
-              {
350
-                pattern: /^[1][3,4,5,6,7,8,9][0-9]{9}$/,
351
-                message: '请输入正确的手机号码',
352
-                trigger: 'blur',
353
-              },
354
-            ]">
353
+      {
354
+        required: true,
355
+        message: '被申请人联系电话不能为空',
356
+        trigger: 'blur',
357
+      },
358
+      {
359
+        pattern: /^[1][3,4,5,6,7,8,9][0-9]{9}$/,
360
+        message: '请输入正确的手机号码',
361
+        trigger: 'blur',
362
+      },
363
+    ]">
355 364
               <el-input v-model="formData.affiliate.respondentPhone" placeholder="请输入被申请人联系电话" />
356 365
             </el-form-item>
357 366
           </el-col>
358 367
           <el-col :span="12">
359 368
             <el-form-item label="被申请人身份证号" prop="affiliate.respondentIdentityNum" :rules="[
360
-              {
361
-                required: true,
362
-                message: '被申请人身份证号不能为空',
363
-                trigger: 'blur',
364
-              },
365
-              {
366
-                pattern:
367
-                  /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/,
368
-                message: '请输入正确的身份证号码',
369
-                trigger: 'blur',
370
-              },
371
-            ]">
372
-              <el-input v-model="formData.affiliate.respondentIdentityNum" @blur="handleBlur" placeholder="请输入被申请人身份证号" />
369
+      {
370
+        required: true,
371
+        message: '被申请人身份证号不能为空',
372
+        trigger: 'blur',
373
+      },
374
+      {
375
+        pattern:
376
+          /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/,
377
+        message: '请输入正确的身份证号码',
378
+        trigger: 'blur',
379
+      },
380
+    ]">
381
+              <el-input v-model="formData.affiliate.respondentIdentityNum" @blur="handleBlur"
382
+                placeholder="请输入被申请人身份证号" />
373 383
             </el-form-item>
374 384
           </el-col>
375 385
           <el-col :span="12">
376 386
             <el-form-item label="被申请人性别:" prop="affiliate.respondentSex" :rules="[
377
-              {
378
-                required: true,
379
-                message: '请选择性别',
380
-              },
381
-            ]">
387
+      {
388
+        required: true,
389
+        message: '请选择性别',
390
+      },
391
+    ]">
382 392
               <el-radio-group v-model="formData.affiliate.respondentSex" disabled>
383 393
                 <el-radio :label="0">男</el-radio>
384 394
                 <el-radio :label="1">女</el-radio>
@@ -393,29 +403,29 @@
393 403
           </el-col>
394 404
           <el-col :span="12">
395 405
             <el-form-item label="被申请人申请人住所" prop="affiliate.respondentHome" :rules="[
396
-              {
397
-                required: true,
398
-                message: '被申请人申请人住所不能为空',
399
-                trigger: 'blur',
400
-              },
401
-            ]">
406
+      {
407
+        required: true,
408
+        message: '被申请人申请人住所不能为空',
409
+        trigger: 'blur',
410
+      },
411
+    ]">
402 412
               <el-input v-model="formData.affiliate.respondentHome" placeholder="请输入被申请人申请人住所" />
403 413
             </el-form-item>
404 414
           </el-col>
405 415
           <el-col :span="12">
406 416
             <el-form-item label="被申请人邮箱" prop="affiliate.respondentEmail" :rules="[
407
-              {
408
-                required: true,
409
-                message: '代理人邮箱不能为空',
410
-                trigger: 'blur',
411
-              },
412
-              {
413
-                pattern:
414
-                  /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
415
-                message: '请输入正确的邮箱地址',
416
-                trigger: 'blur',
417
-              },
418
-            ]">
417
+      {
418
+        required: true,
419
+        message: '代理人邮箱不能为空',
420
+        trigger: 'blur',
421
+      },
422
+      {
423
+        pattern:
424
+          /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
425
+        message: '请输入正确的邮箱地址',
426
+        trigger: 'blur',
427
+      },
428
+    ]">
419 429
               <el-input v-model="formData.affiliate.respondentEmail" placeholder="请输入被申请人邮箱" />
420 430
             </el-form-item>
421 431
           </el-col>
@@ -453,6 +463,7 @@
453 463
     </el-dialog>
454 464
   </div>
455 465
 </template>
466
+
456 467
 <script>
457 468
 import {
458 469
   caseApplicationInsert,
@@ -490,6 +501,7 @@ export default {
490 501
       modelFlag: false,
491 502
       fileURL: window.location.origin + "/API",
492 503
       fileList: [],
504
+      fileListZip:[],
493 505
       filedata: {
494 506
         annexType: 2,
495 507
       },
@@ -612,6 +624,9 @@ export default {
612 624
     UploadUrl() {
613 625
       return window.location.origin + "/API/common/upload";
614 626
     },
627
+    zipUrl() {
628
+      return window.location.origin + "/API/caseApplication/userIdentify";
629
+    },
615 630
     /**文件上传成功*/
616 631
     handlSuccess(res, file) {
617 632
       this.formData.caseAttachList.push({
@@ -634,6 +649,17 @@ export default {
634 649
         (item) => item.annexId != file.annexId
635 650
       );
636 651
     },
652
+    handleExceedZip(files, fileList) {
653
+      this.$message.warning(`当前限制选择 1 个文件`);
654
+    },
655
+    beforeRemoveZip(file, fileList) {
656
+      return this.$confirm(`确定移除 ${file.name}?`);
657
+    },
658
+    successZip(res){
659
+      this.formData = res.data;
660
+      this.$set(this.formData.affiliate,'organizeFlag',0);
661
+      this.$set(this.formData.affiliate,'respondentSex',Number(res.data.affiliate.respondentSex));
662
+    },
637 663
     handlePreview(file) {
638 664
       window.open(
639 665
         window.location.origin + "/API" + file.certificatePath,
@@ -692,7 +718,7 @@ export default {
692 718
   },
693 719
 };
694 720
 </script>
695
-  
721
+
696 722
 <style lang="scss" scoped>
697 723
 .infoIcon {
698 724
   width: 4px;

+ 2
- 2
vue.config.js Voir le fichier

@@ -12,10 +12,10 @@ const name = process.env.VUE_APP_TITLE || '调解系统' // 网页标题
12 12
 const port = process.env.port || process.env.npm_config_port || 80 // 端口
13 13
 
14 14
 // const API = 'http://121.40.189.20:9001'  //生产
15
-const API = 'http://121.40.189.20:6001'  //测试
15
+// const API = 'http://121.40.189.20:6001'  //测试
16 16
 // const API = 'http://192.168.3.18:6001'  //B
17 17
 // const API = 'http://172.16.0.237:6001' //Q
18
-// const API = 'http://172.16.1.43:6001' //w
18
+const API = 'http://172.16.1.26:6001' //w
19 19
 
20 20
 // vue.config.js 配置说明 
21 21
 //官方vue.config.js 参考文档 https://cli.vuejs.org/zh/config/#css-loaderoptions