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

案件录入页面输入校验

Your Name 2 лет назад
Родитель
Сommit
de200aaa36

+ 8
- 2
src/views/caseFiling/archiveList.vue Просмотреть файл

@@ -78,7 +78,11 @@
78 78
         prop="registerDate"
79 79
         :show-overflow-tooltip="true"
80 80
       />
81
-      <el-table-column label="案件状态" align="center" prop="caseStatusName" />
81
+      <el-table-column label="案件状态" align="center" prop="caseStatusName">
82
+        <template slot-scope="scope">
83
+          <el-tag type="success">{{ scope.row.caseStatusName }}</el-tag>
84
+        </template>
85
+      </el-table-column>
82 86
       <el-table-column
83 87
         label="操作"
84 88
         align="center"
@@ -177,6 +181,8 @@ export default {
177 181
     // model框显示
178 182
     showDetail(row) {
179 183
       this.getDetail({ id: row.id });
184
+      this.showarchiveDetails = true;
185
+      this.flagLoading = true;
180 186
     },
181 187
     // 关闭弹窗
182 188
     cancelpaymentdetails() {
@@ -186,7 +192,7 @@ export default {
186 192
     getDetail(parms) {
187 193
       adjudicationArchives(parms).then((res) => {
188 194
         this.detailform = res.data;
189
-        this.showarchiveDetails = true;
195
+        this.flagLoading = false;
190 196
       });
191 197
     },
192 198
   },

+ 9
- 5
src/views/caseFiling/components/archiveDetailsDialog.vue Просмотреть файл

@@ -53,6 +53,15 @@ export default {
53 53
       noData: false,
54 54
     };
55 55
   },
56
+  watch: {
57
+    detailform(newValue) {
58
+      if (newValue) {
59
+        this.caseApplicationObj = this.detailform.caseApplication;
60
+        this.caselogDataArr = this.detailform.caseLogRecordList;
61
+        this.deliveryDataArr = this.detailform.logisticsInfoVOList;
62
+      }
63
+    },
64
+  },
56 65
   methods: {
57 66
     handleClick(tab, event) {
58 67
       // console.log(tab, event);
@@ -61,11 +70,6 @@ export default {
61 70
       this.$emit("cancelpaymentdetails");
62 71
     },
63 72
   },
64
-  created() {
65
-    this.caseApplicationObj = this.detailform.caseApplication;
66
-    this.caselogDataArr = this.detailform.caseLogRecordList;
67
-    this.deliveryDataArr = this.detailform.logisticsInfoVOList;
68
-  },
69 73
 };
70 74
 </script>
71 75
 

+ 33
- 43
src/views/caseManagement/components/caseentryDialog.vue Просмотреть файл

@@ -17,7 +17,7 @@
17 17
         label-width="150px"
18 18
         :disabled="flag == '0'"
19 19
       >
20
-        <div style="display:inline-flex">
20
+        <div style="display: inline-flex">
21 21
           <div class="infoIcon"></div>
22 22
           <div class="caseInfo">案件信息:</div>
23 23
         </div>
@@ -37,8 +37,7 @@
37 37
               <el-input
38 38
                 v-model="formData.caseSubjectAmount"
39 39
                 placeholder="请输入案件标的"
40
-                @keyup.native="InputNumber('caseSubjectAmount')"
41
-                autocomplete="off"
40
+                @input="numberFn('caseSubjectAmount')"
42 41
               />
43 42
             </el-form-item>
44 43
           </el-col>
@@ -77,6 +76,7 @@
77 76
               <el-input
78 77
                 v-model="formData.claimPrinciOwed"
79 78
                 placeholder="请输入"
79
+                @input="numberFn('claimPrinciOwed')"
80 80
               />
81 81
             </el-form-item>
82 82
           </el-col>
@@ -85,6 +85,7 @@
85 85
               <el-input
86 86
                 v-model="formData.claimInterestOwed"
87 87
                 placeholder="请输入"
88
+                @input="numberFn('claimInterestOwed')"
88 89
               />
89 90
             </el-form-item>
90 91
           </el-col>
@@ -93,6 +94,7 @@
93 94
               <el-input
94 95
                 v-model="formData.claimLiquidDamag"
95 96
                 placeholder="请输入"
97
+                @input="numberFn('claimLiquidDamag')"
96 98
               />
97 99
             </el-form-item>
98 100
           </el-col>
@@ -202,7 +204,7 @@
202 204
       >
203 205
         <div v-for="(item, index) in form2.paymentArr" :key="index">
204 206
           <div style="display: flex; justify-content: space-between">
205
-            <div style="display:inline-flex">
207
+            <div style="display: inline-flex">
206 208
               <div class="infoIcon"></div>
207 209
               <div class="caseInfo">申请人主体信息:</div>
208 210
             </div>
@@ -226,6 +228,7 @@
226 228
                     message: '申请人不能为空',
227 229
                     trigger: 'blur',
228 230
                   },
231
+                  { max: 20, message: '长度应小于20个字符', trigger: 'blur' }
229 232
                 ]"
230 233
               >
231 234
                 <el-input v-model="item.name" placeholder="请输入" />
@@ -235,6 +238,9 @@
235 238
               <el-form-item
236 239
                 label="代码:"
237 240
                 :prop="'paymentArr.' + index + '.identityNum'"
241
+                :rules="[
242
+                  { max: 50, message: '长度应小于50个字符', trigger: 'blur' }
243
+                ]"
238 244
               >
239 245
                 <el-input v-model="item.identityNum" placeholder="请输入" />
240 246
               </el-form-item>
@@ -269,6 +275,7 @@
269 275
                     message: '单位地址不能为空',
270 276
                     trigger: 'blur',
271 277
                   },
278
+                  { max: 50, message: '长度应小于50个字符', trigger: 'blur' }
272 279
                 ]"
273 280
               >
274 281
                 <el-input v-model="item.workAddress" placeholder="请输入" />
@@ -299,15 +306,16 @@
299 306
                     message: '联系地址不能为空',
300 307
                     trigger: 'blur',
301 308
                   },
309
+                  { max: 50, message: '长度应小于50个字符', trigger: 'blur' }
302 310
                 ]"
303 311
               >
304 312
                 <el-input v-model="item.contactAddress" placeholder="请输入" />
305 313
               </el-form-item>
306 314
             </el-col>
307 315
           </el-row>
308
-          <div style="display:inline-flex">
309
-              <div class="infoIcon"></div>
310
-              <div class="caseInfo2">代理人信息:</div>
316
+          <div style="display: inline-flex">
317
+            <div class="infoIcon"></div>
318
+            <div class="caseInfo2">代理人信息:</div>
311 319
           </div>
312 320
           <!-- <p>代理人信息:</p> -->
313 321
           <el-row>
@@ -321,6 +329,7 @@
321 329
                     message: '姓名不能为空',
322 330
                     trigger: 'blur',
323 331
                   },
332
+                  { max: 20, message: '长度应小于20个字符', trigger: 'blur' }
324 333
                 ]"
325 334
               >
326 335
                 <el-input v-model="item.nameAgent" placeholder="请输入" />
@@ -383,6 +392,7 @@
383 392
                     message: '联系地址不能为空',
384 393
                     trigger: 'blur',
385 394
                   },
395
+                  { max: 50, message: '长度应小于50个字符', trigger: 'blur' }
386 396
                 ]"
387 397
               >
388 398
                 <el-input
@@ -413,7 +423,7 @@
413 423
           :key="index + form2.paymentArr.length"
414 424
         >
415 425
           <div style="display: flex; justify-content: space-between">
416
-            <div style="display:inline-flex">
426
+            <div style="display: inline-flex">
417 427
               <div class="infoIcon"></div>
418 428
               <div class="caseInfo">被申请人主体信息:</div>
419 429
             </div>
@@ -437,6 +447,7 @@
437 447
                     message: '被申请人不能为空',
438 448
                     trigger: 'blur',
439 449
                   },
450
+                  { max: 20, message: '长度应小于20个字符', trigger: 'blur' }
440 451
                 ]"
441 452
               >
442 453
                 <el-input v-model="itm.name" placeholder="请输入" />
@@ -493,6 +504,7 @@
493 504
                     message: '单位地址不能为空',
494 505
                     trigger: 'blur',
495 506
                   },
507
+                  { max: 50, message: '长度应小于50个字符', trigger: 'blur' }
496 508
                 ]"
497 509
               >
498 510
                 <el-input v-model="itm.workAddress" placeholder="请输入" />
@@ -523,15 +535,16 @@
523 535
                     message: '联系地址不能为空',
524 536
                     trigger: 'blur',
525 537
                   },
538
+                  { max: 50, message: '长度应小于50个字符', trigger: 'blur' }
526 539
                 ]"
527 540
               >
528 541
                 <el-input v-model="itm.contactAddress" placeholder="请输入" />
529 542
               </el-form-item>
530 543
             </el-col>
531 544
           </el-row>
532
-          <div style="display:inline-flex">
533
-              <div class="infoIcon"></div>
534
-              <div class="caseInfo2">代理人信息:</div>
545
+          <div style="display: inline-flex">
546
+            <div class="infoIcon"></div>
547
+            <div class="caseInfo2">代理人信息:</div>
535 548
           </div>
536 549
           <!-- <p>代理人信息:</p> -->
537 550
           <el-row>
@@ -545,6 +558,7 @@
545 558
                     message: '姓名不能为空',
546 559
                     trigger: 'blur',
547 560
                   },
561
+                  { max: 20, message: '长度应小于20个字符', trigger: 'blur' }
548 562
                 ]"
549 563
               >
550 564
                 <el-input v-model="itm.nameAgent" placeholder="请输入" />
@@ -605,6 +619,7 @@
605 619
                     message: '联系地址不能为空',
606 620
                     trigger: 'blur',
607 621
                   },
622
+                  { max: 50, message: '长度应小于50个字符', trigger: 'blur' }
608 623
                 ]"
609 624
               >
610 625
                 <el-input
@@ -747,7 +762,6 @@ export default {
747 762
             message: "申请人主张欠本金不能为空",
748 763
             trigger: "blur",
749 764
           },
750
-          // { type: 'number', message: '申请人主张欠本金必须为数字值'}
751 765
         ],
752 766
         claimInterestOwed: [
753 767
           {
@@ -755,7 +769,6 @@ export default {
755 769
             message: "申请人主张欠利息不能为空",
756 770
             trigger: "blur",
757 771
           },
758
-          // { type: 'number', message: '申请人主张欠利息必须为数字值'}
759 772
         ],
760 773
         Overduedays: [
761 774
           {
@@ -763,7 +776,6 @@ export default {
763 776
             message: "逾期天数不能为空",
764 777
             trigger: "blur",
765 778
           },
766
-          // { type: 'number', message: '逾期天数必须为数字值'}
767 779
         ],
768 780
         claimLiquidDamag: [
769 781
           {
@@ -771,7 +783,6 @@ export default {
771 783
             message: "申请人主张违约金不能为空",
772 784
             trigger: "blur",
773 785
           },
774
-          // { type: 'number', message: '申请人主张违约金必须为数字值'}
775 786
         ],
776 787
         arbitratClaims: [
777 788
           {
@@ -804,9 +815,7 @@ export default {
804 815
           if (this.flag == "1" || this.flag == "0") {
805 816
             this.form2.paymentArr = this.initpaymentArr;
806 817
             this.form3.paymentArr1 = this.initpaymentArr1;
807
-            console.log(this.caseAttachList,this.flag, "caseAttachList--flag");
808 818
             this.caseAttachList.forEach((item) => {
809
-              console.log(item, "iytem");
810 819
               if (item.annexType == 2) {
811 820
                 this.applicateArr.push({
812 821
                   annexName: item.annexName,
@@ -862,33 +871,14 @@ export default {
862 871
     },
863 872
   },
864 873
   methods: {
865
-     // 过滤输入的金额
866
-    InputNumber (property) {
867
-      this.formData[property] = this.limitInputPointNumber(this.formData[property])
874
+    numberFn(p) {
875
+      this.formData[p] =
876
+        this.formData[p]
877
+          .replace(/[^\d^\.]+/g, "")
878
+          .replace(/^0+(\d)/, "$1")
879
+          .replace(/^\./, "0.")
880
+          .match(/^\d*(\.?\d{0,2})/g)[0] || "";
868 881
     },
869
- 
870
-    // 验证只能输入数字
871
-    limitInputNumber (val) {
872
-      if (val) {
873
-        return String(val).replace(/\D/g, '')
874
-      }
875
-      return val
876
-    },
877
- 
878
-    // 限制只能输入数字(可以输入两位小数)
879
-    limitInputPointNumber (val) {
880
-      if (val === 0 || val === '0' || val === '') {
881
-        return ''
882
-      } else {
883
-        let value = null
884
-        value = String(val).replace(/[^\d.]/g, '') // 清除“数字”和“.”以外的字符
885
-        value = value.replace(/\.{2,}/g, '.') // 只保留第一个. 清除多余的
886
-        value = value.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.')
887
-        value = value.replace(/^(-)*(\d+)\.(\d\d).*$/, '$1$2.$3') // 只能输入两个小数
888
-        return Number(value)
889
-      }
890
-    },
891
-
892 882
     UploadUrl() {
893 883
       return window.location.origin + "/API/evidence/upload";
894 884
     },

+ 26
- 14
src/views/caseManagement/components/formateCourtDialog.vue Просмотреть файл

@@ -16,12 +16,17 @@
16 16
           </el-radio-group>
17 17
         </el-form-item>
18 18
       </el-form>
19
-      <el-tag type="warning" v-if="noArbitrator">当前案件未指定仲裁员,请先指定仲裁员!</el-tag>
19
+      <el-tag type="warning" v-if="noArbitrator"
20
+        >当前案件未指定仲裁员,请先指定仲裁员!</el-tag
21
+      >
20 22
       <p></p>
21 23
       <!-- <el-form ref="form"> -->
22
-      <div v-if="isAgreePendTral == 0 || noArbitrator" style="display:inline-flex;  margin-bottom: 8px;">
23
-          <div class="infoIcon"></div>
24
-          <div>仲裁员信息列表</div>
24
+      <div
25
+        v-if="isAgreePendTral == 0 || noArbitrator"
26
+        style="display: inline-flex; margin-bottom: 8px"
27
+      >
28
+        <div class="infoIcon"></div>
29
+        <div>仲裁员信息列表</div>
25 30
       </div>
26 31
       <el-table
27 32
         :data="dataList"
@@ -105,10 +110,10 @@ export default {
105 110
     formateCourtData: {
106 111
       handler(val) {
107 112
         if (val.arbitratorName == null) {
108
-          console.log('无仲裁员',val);
109
-          this.noArbitrator = true
113
+          console.log("无仲裁员", val);
114
+          this.noArbitrator = true;
110 115
         } else {
111
-          this.noArbitrator = false
116
+          this.noArbitrator = false;
112 117
         }
113 118
       },
114 119
     },
@@ -133,19 +138,26 @@ export default {
133 138
     },
134 139
     // 确认
135 140
     submitForm() {
136
-      // if (this.arbitrators.length > 0) {
137
-      if (this.isAgreePendTral == 0) {
141
+      if (this.noArbitrator) {
138 142
         this.paramsdata = {
139
-          isAgreePendTral: 0,
140 143
           id: this.formateCourtData.id,
141 144
           arbitrators: this.arbitrators,
142 145
         };
143 146
       } else {
144
-        this.paramsdata = {
145
-          isAgreePendTral: 1,
146
-          id: this.formateCourtData.id,
147
-        };
147
+        if (this.isAgreePendTral == 0) {
148
+          this.paramsdata = {
149
+            isAgreePendTral: 0,
150
+            id: this.formateCourtData.id,
151
+            arbitrators: this.arbitrators,
152
+          };
153
+        } else {
154
+          this.paramsdata = {
155
+            isAgreePendTral: 1,
156
+            id: this.formateCourtData.id,
157
+          };
158
+        }
148 159
       }
160
+
149 161
       pendTralCheck(this.paramsdata).then((res) => {
150 162
         this.cancel();
151 163
         this.$modal.msgSuccess("组庭成功");