Просмотр исходного кода

Merge branch 'gyj' of SH-Arbitrate/miniapp into dev

gaogaoyujie 2 лет назад
Родитель
Сommit
5b8dccc61e
1 измененных файлов: 177 добавлений и 85 удалений
  1. 177
    85
      pages/handlecase/component/newlyAddedCase.vue

+ 177
- 85
pages/handlecase/component/newlyAddedCase.vue Просмотреть файл

@@ -9,11 +9,11 @@
9 9
 				</uni-forms-item>
10 10
 				<uni-forms-item label="申请人调解请求:" name="arbitratClaims" label-width="120px" required
11 11
 					:rules="[{required: true,errorMessage: '申请人调解请求不能为空'}]">
12
-					<uni-easyinput v-model="formData.arbitratClaims" type="textarea" placeholder="请输入申请人调解请求" />
12
+					<uni-easyinput v-model="formData.arbitratClaims" type="textarea" placeholder="请输入申请人调解请求" :maxlength='3000' />
13 13
 				</uni-forms-item>
14 14
 				<uni-forms-item label="事实和理由:" name="facts" label-width="120px" required
15 15
 					:rules="[{required: true,errorMessage: '事实和理由不能为空'}]">
16
-					<uni-easyinput v-model="formData.facts" type="textarea" placeholder="请输入事实和理由" />
16
+					<uni-easyinput v-model="formData.facts" type="textarea" placeholder="请输入事实和理由" :maxlength='3000'/>
17 17
 				</uni-forms-item>
18 18
 				<uni-forms-item label="申请人案件证据资料上传:" name="headImage" label-width="120px">
19 19
 					<uni-file-picker ref="files" file-mediatype="all" return-type='object' v-model="fileList"
@@ -40,7 +40,7 @@
40 40
 					<uni-forms-item label="选择机构或自然人" label-width="120px" name="objectiJuris">
41 41
 						<uni-data-checkbox class='checkbox' :disabled="ids?true:false" :localdata="objectiJurisArr"
42 42
 							v-model="formData.affiliate.applicant[index].applicant.organizeFlag"
43
-							@change='clearValidate'></uni-data-checkbox>
43
+							@change='clearValidate($event,index)'></uni-data-checkbox>
44 44
 					</uni-forms-item>
45 45
 					<uni-forms-item label="是否操作人" label-width="120px"
46 46
 						v-if="formData.affiliate.applicant[index].applicant.organizeFlag==0" key="operatorFlag">
@@ -127,15 +127,16 @@
127 127
 						<uni-data-checkbox v-model="formData.affiliate.applicant[index].applicantAgent.operatorFlag"
128 128
 							:localdata="isProxyApplicant"></uni-data-checkbox>
129 129
 					</uni-forms-item>
130
-					<uni-forms-item label="联系电话:" label-width="120px">
130
+
131
+					<uni-forms-item label="联系电话:" label-width="120px" :name="['affiliate','applicant',index,'applicantAgent','phone']" :required="formData.affiliate.applicant[index].applicant.organizeFlag==0 ? agentRequired:true"  :rules="formData.affiliate.applicant[index].applicant.organizeFlag==1 ?rulesAgentPhone:[]">
131 132
 						<uni-easyinput v-model="formData.affiliate.applicant[index].applicantAgent.phone" type="text"
132 133
 							placeholder="请输入代理人联系电话" />
133 134
 					</uni-forms-item>
134
-					<uni-forms-item label="姓名:" label-width="120px">
135
+					<uni-forms-item label="姓名:" label-width="120px" :name="['affiliate','applicant',index,'applicantAgent','name']" :required="formData.affiliate.applicant[index].applicant.organizeFlag==0 ? agentName:true" :rules="rulesAgentName">
135 136
 						<uni-easyinput v-model="formData.affiliate.applicant[index].applicantAgent.name" type="text"
136 137
 							placeholder="请输入委托代理人姓名" />
137 138
 					</uni-forms-item>
138
-					<uni-forms-item label="邮箱:" label-width="120px">
139
+					<uni-forms-item label="邮箱:" label-width="120px" :name="['affiliate','applicant',index,'applicantAgent','email']" :required="formData.affiliate.applicant[index].applicant.organizeFlag==0 ? agentEmail :true" :rules="rulesAgentEmail">
139 140
 						<uni-easyinput v-model="formData.affiliate.applicant[index].applicantAgent.email" type="text"
140 141
 							placeholder="请输入代理人邮箱" />
141 142
 					</uni-forms-item>
@@ -149,7 +150,7 @@
149 150
 					<uni-forms-item label="选择机构或自然人" label-width="120px" name="objectiJuris">
150 151
 						<uni-data-checkbox class='checkbox' :disabled="ids?true:false" :localdata="objectiJurisArr"
151 152
 							v-model="formData.affiliate.res[index].res.organizeFlag"
152
-							@change='clearValidateRes'></uni-data-checkbox>
153
+							@change='clearValidateRes($event,index)'></uni-data-checkbox>
153 154
 					</uni-forms-item>
154 155
 					<uni-forms-item label="是否操作人" label-width="120px"
155 156
 						v-if="formData.affiliate.res[index].res.organizeFlag==0" key="operatorFlag">
@@ -239,15 +240,15 @@
239 240
 						<uni-data-checkbox v-model="formData.affiliate.res[index].resAgent.operatorFlag"
240 241
 							:localdata="isResApplicant"></uni-data-checkbox>
241 242
 					</uni-forms-item>
242
-					<uni-forms-item label="联系电话:" label-width="120px">
243
+					<uni-forms-item label="联系电话:" label-width="120px" :name="['affiliate','res',index,'resAgent','phone']" :required="formData.affiliate.res[index].res.organizeFlag==0 ? agentResPhone :true" :rules="rulesResPhone">
243 244
 						<uni-easyinput v-model="formData.affiliate.res[index].resAgent.phone" type="text"
244 245
 							placeholder="请输入代理人联系电话" />
245 246
 					</uni-forms-item>
246
-					<uni-forms-item label="姓名:" label-width="120px">
247
+					<uni-forms-item label="姓名:" label-width="120px" :name="['affiliate','res',index,'resAgent','name']" :required="formData.affiliate.res[index].res.organizeFlag==0 ?agentResName:true" :rules="rulesResName">
247 248
 						<uni-easyinput v-model="formData.affiliate.res[index].resAgent.name" type="text"
248 249
 							placeholder="请输入委托代理人姓名" />
249 250
 					</uni-forms-item>
250
-					<uni-forms-item label="邮箱:" label-width="120px">
251
+					<uni-forms-item label="邮箱:" label-width="120px" :name="['affiliate','res',index,'resAgent','email']" :required="formData.affiliate.res[index].res.organizeFlag==0 ?agentResEmail:true" :rules="rulesResEmail">
251 252
 						<uni-easyinput v-model="formData.affiliate.res[index].resAgent.email" type="text"
252 253
 							placeholder="请输入代理人邮箱" />
253 254
 					</uni-forms-item>
@@ -333,10 +334,7 @@
333 334
 				formData: {
334 335
 					organizeFlag: 0,
335 336
 					caseSource: "YC",
336
-					// affiliate: {
337
-					// 	roleType:1,	
338
-					// 	respondentSex: 0,
339
-					// },
337
+					facts:"",
340 338
 					affiliate: {
341 339
 						applicant: [{
342 340
 							applicant: {
@@ -418,10 +416,17 @@
418 416
 					caseAttachList: [],
419 417
 				},
420 418
 				testVerify: true,
419
+				agentRequired:false,
420
+				agentName:false,
421
+				agentEmail:false,
422
+				agentResPhone:false,
423
+				agentResName:false,
424
+				agentResEmail:false,
421 425
 				getUserInfoList: {},
422 426
 				ids: null,
423 427
 				tempFilePaths: null,
424 428
 				tempFilePathsZip: null,
429
+				lengths:null,
425 430
 				templateList: [],
426 431
 				objectiJurisArr: [{
427 432
 					text: '自然人',
@@ -449,6 +454,70 @@
449 454
 						errorMessage: '被申请人联系电话格式不正确'
450 455
 					}
451 456
 				],
457
+				// 申请代验证
458
+				rulesAgentPhone:[
459
+					{
460
+						required: true,
461
+						errorMessage: '联系电话不能为空'
462
+					},
463
+					{
464
+						pattern: '^[1][3,4,5,6,7,8,9][0-9]{9}$',
465
+						errorMessage: '联系电话格式不正确'
466
+					}
467
+				],
468
+				rulesAgentPhones:[
469
+					{
470
+						required: false,
471
+						errorMessage: '联系电话不能为空'
472
+					},
473
+					{
474
+						pattern: '^[1][3,4,5,6,7,8,9][0-9]{9}$',
475
+						errorMessage: '联系电话格式不正确'
476
+					}
477
+				],
478
+				rulesAgentName:[
479
+					{
480
+						required: false,
481
+						errorMessage: '姓名不能空',
482
+					}
483
+				],
484
+				rulesAgentEmail:[
485
+					{
486
+						required: false,
487
+						errorMessage: '邮箱不能为空'
488
+					},
489
+					{
490
+						pattern: '^\\S+?@\\S+?\\.\\S+?$',
491
+						errorMessage: '邮箱格式不正确'
492
+					}
493
+				],
494
+				// 被申请代理验证
495
+				rulesResPhone:[
496
+					{
497
+						required: false,
498
+						errorMessage: '联系电话不能为空'
499
+					},
500
+					{
501
+						pattern: '^[1][3,4,5,6,7,8,9][0-9]{9}$',
502
+						errorMessage: '联系电话格式不正确'
503
+					}
504
+				],
505
+				rulesResName:[
506
+					{
507
+						required: false,
508
+						errorMessage: '姓名不能空',
509
+					}
510
+				],
511
+				rulesResEmail:[
512
+					{
513
+						required: false,
514
+						errorMessage: '邮箱不能为空'
515
+					},
516
+					{
517
+						pattern: '^\\S+?@\\S+?\\.\\S+?$',
518
+						errorMessage: '邮箱格式不正确'
519
+					}
520
+				],
452 521
 				rulesPersonName: [{
453 522
 					'required': true,
454 523
 					errorMessage: '不能为空'
@@ -481,16 +550,18 @@
481 550
 		},
482 551
 		methods: {
483 552
 			submitReasont() {
484
-				this.$refs.form.validate().then(res => {
485
-					console.log("pppppppppppp")
486
-					if (this.ids) {
487
-						this.modifyData(this.formData)
488
-					} else {
489
-						this.insertFn(this.formData)
490
-					}
491
-
492
-				}).catch(err => {
493
-					console.log(err)
553
+				this.$nextTick(()=>{
554
+					this.$refs.form.validate().then(res => {
555
+						console.log("pppppppppppp")
556
+						if (this.ids) {
557
+							this.modifyData(this.formData)
558
+						} else {
559
+							this.insertFn(this.formData)
560
+						}
561
+					
562
+					}).catch(err => {
563
+						console.log(err)
564
+					})
494 565
 				})
495 566
 			},
496 567
 			// 获取新增默认值
@@ -501,6 +572,7 @@
501 572
 				})
502 573
 				getUserInfo().then(res => {
503 574
 					this.getUserInfoList = res.data
575
+					console.log(res.data)
504 576
 					if (this.formData.affiliate.applicant[indexs].applicant.organizeFlag == 0) {
505 577
 						this.$set(this.formData.affiliate.applicant[indexs].applicant, 'name', res.data.nickName)
506 578
 						this.$set(this.formData.affiliate.applicant[indexs].applicant, 'idCard', res.data.idCard)
@@ -515,6 +587,8 @@
515 587
 						this.$set(this.formData.affiliate.applicant[indexs].applicant, "birth", this
516 588
 							.getUserInfoList
517 589
 							.birth);
590
+						this.$set(this.formData.affiliate.applicant[indexs].applicant, 'address', res.data.address)
591
+						this.$set(this.formData.affiliate.applicant[indexs].applicant, 'home', res.data.home)
518 592
 						if (res.data.nationality == 0) {
519 593
 							this.testVerify = true
520 594
 							this.rulesRespondentPhone[0].required = true;
@@ -536,13 +610,12 @@
536 610
 
537 611
 				})
538 612
 			},
539
-			clearValidate(val) {
540
-				console.log(val.detail.value)
613
+			clearValidate(val,index) {
541 614
 				let indexs = ""
542 615
 				this.formData.affiliate.applicant.forEach((item, index) => {
543 616
 					indexs = index
544 617
 				})
545
-				if (val.detail.value == 0) {
618
+				if (val.detail.value == 0 && index == 0) {
546 619
 					this.$set(this.formData.affiliate.applicant[0].applicant, 'name', this.getUserInfoList.nickName)
547 620
 					this.$set(this.formData.affiliate.applicant[0].applicant, 'idCard', this.getUserInfoList.idCard)
548 621
 					this.$set(this.formData.affiliate.applicant[0].applicant, 'email', this.getUserInfoList.email)
@@ -552,9 +625,10 @@
552 625
 						.getUserInfoList.sex));
553 626
 					this.$set(this.formData.affiliate.applicant[0].applicant, "birth", this.getUserInfoList
554 627
 						.birth);
628
+					this.$set(this.formData.affiliate.applicant[0].applicant, 'address', this.getUserInfoList.address)
629
+					this.$set(this.formData.affiliate.applicant[0].applicant, 'home', this.getUserInfoList.home)
555 630
 					if (this.formZipData.affiliate) {
556 631
 						this.$set(this.formData, 'arbitratClaims', this.formZipData.arbitratClaims);
557
-						this.$set(this.formData.affiliate.applicant[0].applicant, 'organizeFlag', 0);
558 632
 						this.$set(this.formData, 'facts', this.formZipData.facts);
559 633
 						this.$set(this.formData.affiliate.applicant[0].applicant, 'home', this.formZipData.affiliate
560 634
 							.applicant[0]
@@ -574,12 +648,9 @@
574 648
 							.getUserInfoList.sex));
575 649
 						this.$set(this.formData.affiliate.applicant[0].applicant, "birth", this.getUserInfoList
576 650
 							.birth);
577
-					} else {
578
-						this.$set(this.formData.affiliate.applicant[indexs].applicantAgent, 'name', null)
579
-						this.$set(this.formData.affiliate.applicant[indexs].applicantAgent, 'email', null)
580
-						this.$set(this.formData.affiliate.applicant[indexs].applicantAgent, 'phone', null)
581
-					}
582
-				} else if (val.detail.value == 1) {
651
+					} 
652
+					
653
+				} else if (val.detail.value == 1 && index == 0) {
583 654
 					this.$set(this.formData.affiliate.applicant[0].applicantAgent, 'name', this.getUserInfoList
584 655
 						.nickName)
585 656
 					this.$set(this.formData.affiliate.applicant[0].applicantAgent, 'email', this.getUserInfoList
@@ -587,8 +658,6 @@
587 658
 					this.$set(this.formData.affiliate.applicant[0].applicantAgent, 'phone', this.getUserInfoList
588 659
 						.phonenumber)
589 660
 					if (this.formZipData.affiliate) {
590
-
591
-						this.$set(this.formData.affiliate.applicant[0].applicant, 'organizeFlag', 1);
592 661
 						this.$set(this.formData, 'arbitratClaims', this.formZipData.arbitratClaims);
593 662
 						this.$set(this.formData, 'facts', this.formZipData.facts);
594 663
 						this.$set(this.formData.affiliate.applicant[0].applicant, 'name', this.formZipData.affiliate
@@ -611,20 +680,42 @@
611 680
 						this.$set(this.formData.affiliate.applicant[0].applicant, 'phone', this.formZipData.affiliate
612 681
 							.applicant[0]
613 682
 							.applicant.phone);
614
-					} else {
615
-						this.$set(this.formData.affiliate.applicant[0].applicant, 'name', null)
616
-						this.$set(this.formData.affiliate.applicant[0].applicant, 'idCard', null)
617
-						this.$set(this.formData.affiliate.applicant[0].applicant, 'email', null)
618
-						this.$set(this.formData.affiliate.applicant[0].applicant, 'phone', null)
619
-					}
683
+					} 
684
+				}
685
+				if(val.detail.value == 0){
686
+					this.$set(this.formData.affiliate.applicant[index].applicantAgent, 'name', null)
687
+					this.$set(this.formData.affiliate.applicant[index].applicantAgent, 'email', null)
688
+					this.$set(this.formData.affiliate.applicant[index].applicantAgent, 'phone', null)
689
+					/* this.rulesAgentPhone[0].required = false;
690
+					this.agentRequired = false;
691
+					this.agentName = false;
692
+					this.rulesAgentName[0].required = false;
693
+					this.rulesAgentEmail[0].required = false;
694
+					this.agentEmail = false; */
695
+				}else if(val.detail.value == 1){
696
+					this.$set(this.formData.affiliate.applicant[index].applicant, 'name', null)
697
+					this.$set(this.formData.affiliate.applicant[index].applicant, 'idCard', null)
698
+					this.$set(this.formData.affiliate.applicant[index].applicant, 'email', null)
699
+					this.$set(this.formData.affiliate.applicant[index].applicant, 'phone', null)
700
+					this.$set(this.formData.affiliate.applicant[index].applicant, 'address', null)
701
+					this.$set(this.formData.affiliate.applicant[index].applicant, 'home', null)
702
+					/* this.rulesAgentPhone[0].required = true;
703
+					this.agentRequired = true;
704
+					this.agentName = true;
705
+					this.rulesAgentName[0].required = true;
706
+					this.rulesAgentEmail[0].required = true;
707
+					this.agentEmail = true; */
620 708
 				}
621 709
 				this.$refs["form"].clearValidate()
622 710
 			},
623 711
 			// 被申请人机构和自然人
624
-			clearValidateRes(val) {
712
+			clearValidateRes(val,index) {
625 713
 				console.log(this.formData.affiliate.res[0].res)
626
-				if (val.detail.value == 0) {
714
+				if (val.detail.value == 0 && index==0) {
627 715
 					if (this.formZipData.affiliate) {
716
+						this.$set(this.formData.affiliate.res[0].res, 'name', this.formZipData.affiliate
717
+							.res[0]
718
+							.res.name);
628 719
 						this.$set(this.formData.affiliate.res[0].res, 'phone', this.formZipData.affiliate.res[0]
629 720
 							.res.phone);
630 721
 						this.$set(this.formData.affiliate.res[0].res, 'idCard', this.formZipData
@@ -638,8 +729,9 @@
638 729
 						this.$set(this.formData.affiliate.res[0].res, 'email', this.formZipData.affiliate.res[0]
639 730
 							.res.email);
640 731
 					}
641
-
642
-				} else if (val.detail.value == 1) {
732
+					
733
+					
734
+				} else if (val.detail.value == 1 && index == 0) {
643 735
 					if (this.formZipData.affiliate) {
644 736
 						this.$set(this.formData.affiliate.res[0].res, 'name', this.formZipData.affiliate
645 737
 							.res[0]
@@ -651,6 +743,24 @@
651 743
 							.res[0]
652 744
 							.res.code);
653 745
 					}
746
+					
747
+				}
748
+				if(val.detail.value == 0){
749
+					// this.rulesResPhone[0].required = false;
750
+					// this.agentResPhone = false;
751
+					// this.rulesResName[0].required = false;
752
+					// this.agentResName = false;
753
+					// this.rulesResEmail[0].required = false;
754
+					// this.agentResEmail = false;
755
+				}else if(val.detail.value == 1){
756
+					this.$set(this.formData.affiliate.res[index].res, 'name', null)
757
+					this.$set(this.formData.affiliate.res[index].res, 'home', null)
758
+					// this.rulesResPhone[0].required = true;
759
+					// this.agentResPhone = true;
760
+					// this.rulesResName[0].required = true;
761
+					// this.agentResName = true;
762
+					// this.rulesResEmail[0].required = true;
763
+					// this.agentResEmail = true;
654 764
 				}
655 765
 				this.$refs["form"].clearValidate()
656 766
 			},
@@ -672,14 +782,24 @@
672 782
 					let data = res.data
673 783
 					console.log(res.data)
674 784
 					let indexs = ""
675
-					data.affiliate.applicant.forEach((item, index) => {
676
-						if (!item.applicant) {
677
-							item.applicant = {}
678
-						}
679
-						if (!item.applicantAgent) {
680
-							item.applicantAgent = {}
681
-						}
682
-					})
785
+					if (data.affiliate.applicant.length == 0) {
786
+						data.affiliate.applicant.push({
787
+							applicant: {},
788
+							applicantAgent: {}
789
+						})
790
+					} else {
791
+						data.affiliate.applicant.forEach((item, index) => {
792
+							if (!item.applicant) {
793
+								item.applicant = {}
794
+							} else {
795
+								data.affiliate.applicant[index].applicant.sex = Number(data.affiliate.applicant[index].applicant
796
+									.sex)
797
+							}
798
+							if (!item.applicantAgent) {
799
+								item.applicantAgent = {}
800
+							}
801
+						})
802
+					}
683 803
 					if (data.affiliate.res.length == 0) {
684 804
 						data.affiliate.res.push({
685 805
 							res: {},
@@ -784,9 +904,10 @@
784 904
 							duration: 1000
785 905
 						})
786 906
 						this.formZipData = result.data;
907
+						console.log(result.data)
908
+						this.$set(this.formData, 'arbitratClaims', result.data.arbitratClaims);
909
+						this.$set(this.formData, 'facts', result.data.facts);
787 910
 						if (this.formData.affiliate.applicant[0].applicant.organizeFlag == 0) {
788
-							this.$set(this.formData, 'arbitratClaims', this.formZipData.arbitratClaims);
789
-							this.$set(this.formData, 'facts', this.formZipData.facts);
790 911
 							this.$set(this.formData.affiliate.applicant[0].applicant, 'home', this.formZipData
791 912
 								.affiliate.applicant[0]
792 913
 								.applicant.home);
@@ -803,8 +924,6 @@
803 924
 								.formZipData.affiliate.applicant[0]
804 925
 								.applicantAgent.email);
805 926
 						} else if (this.formData.affiliate.applicant[0].applicant.organizeFlag == 1) {
806
-							this.$set(this.formData, 'arbitratClaims', this.formZipData.arbitratClaims);
807
-							this.$set(this.formData, 'facts', this.formZipData.facts);
808 927
 							this.$set(this.formData.affiliate.applicant[0].applicant, 'name', this.formZipData
809 928
 								.affiliate.applicant[0]
810 929
 								.applicant.name);
@@ -982,33 +1101,6 @@
982 1101
 						organizeFlag: 0,
983 1102
 					}
984 1103
 				})
985
-				let idnexVal = ""
986
-				this.formData.affiliate.applicant.forEach((item, index) => {
987
-					idnexVal = index
988
-				})
989
-				getUserInfo().then(res => {
990
-					this.getUserInfoList = res.data
991
-					if (this.formData.affiliate.applicant[idnexVal].applicant.organizeFlag == 0) {
992
-						this.$set(this.formData.affiliate.applicant[idnexVal].applicant, 'name', res.data.nickName)
993
-						this.$set(this.formData.affiliate.applicant[idnexVal].applicant, 'idCard', res.data.idCard)
994
-						this.$set(this.formData.affiliate.applicant[idnexVal].applicant, 'email', res.data.email)
995
-						this.$set(this.formData.affiliate.applicant[idnexVal].applicant, 'phone', res.data
996
-							.phonenumber)
997
-						this.$set(this.formData.affiliate.applicant[idnexVal].applicant, 'idType', res.data.idType)
998
-						this.$set(this.formData.affiliate.applicant[idnexVal].applicant, 'nationality', res.data
999
-							.nationality)
1000
-					} else if (this.formData.affiliate.applicant[idnexVal].applicant.organizeFlag == 1) {
1001
-						this.$set(this.formData.affiliate.applicant[idnexVal].applicantAgent, 'name', res.data
1002
-							.nickName)
1003
-						this.$set(this.formData.affiliate.applicant[idnexVal].applicantAgent, 'email', res.data
1004
-							.email)
1005
-						this.$set(this.formData.affiliate.applicant[idnexVal].applicantAgent, 'phone', res.data
1006
-							.phonenumber)
1007
-						this.$set(this.formData.affiliate.applicant[idnexVal].applicantAgent, 'nationality', res
1008
-							.data.nationality)
1009
-					}
1010
-
1011
-				})
1012 1104
 			},
1013 1105
 			// 新增多个被申请人和代理人
1014 1106
 			addRespondent() {