Przeglądaj źródła

案件录入页面输入校验

Your Name 2 lat temu
rodzic
commit
de200aaa36

+ 8
- 2
src/views/caseFiling/archiveList.vue Wyświetl plik

78
         prop="registerDate"
78
         prop="registerDate"
79
         :show-overflow-tooltip="true"
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
       <el-table-column
86
       <el-table-column
83
         label="操作"
87
         label="操作"
84
         align="center"
88
         align="center"
177
     // model框显示
181
     // model框显示
178
     showDetail(row) {
182
     showDetail(row) {
179
       this.getDetail({ id: row.id });
183
       this.getDetail({ id: row.id });
184
+      this.showarchiveDetails = true;
185
+      this.flagLoading = true;
180
     },
186
     },
181
     // 关闭弹窗
187
     // 关闭弹窗
182
     cancelpaymentdetails() {
188
     cancelpaymentdetails() {
186
     getDetail(parms) {
192
     getDetail(parms) {
187
       adjudicationArchives(parms).then((res) => {
193
       adjudicationArchives(parms).then((res) => {
188
         this.detailform = res.data;
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 Wyświetl plik

53
       noData: false,
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
   methods: {
65
   methods: {
57
     handleClick(tab, event) {
66
     handleClick(tab, event) {
58
       // console.log(tab, event);
67
       // console.log(tab, event);
61
       this.$emit("cancelpaymentdetails");
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
 </script>
74
 </script>
71
 
75
 

+ 33
- 43
src/views/caseManagement/components/caseentryDialog.vue Wyświetl plik

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

+ 26
- 14
src/views/caseManagement/components/formateCourtDialog.vue Wyświetl plik

16
           </el-radio-group>
16
           </el-radio-group>
17
         </el-form-item>
17
         </el-form-item>
18
       </el-form>
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
       <p></p>
22
       <p></p>
21
       <!-- <el-form ref="form"> -->
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
       </div>
30
       </div>
26
       <el-table
31
       <el-table
27
         :data="dataList"
32
         :data="dataList"
105
     formateCourtData: {
110
     formateCourtData: {
106
       handler(val) {
111
       handler(val) {
107
         if (val.arbitratorName == null) {
112
         if (val.arbitratorName == null) {
108
-          console.log('无仲裁员',val);
109
-          this.noArbitrator = true
113
+          console.log("无仲裁员", val);
114
+          this.noArbitrator = true;
110
         } else {
115
         } else {
111
-          this.noArbitrator = false
116
+          this.noArbitrator = false;
112
         }
117
         }
113
       },
118
       },
114
     },
119
     },
133
     },
138
     },
134
     // 确认
139
     // 确认
135
     submitForm() {
140
     submitForm() {
136
-      // if (this.arbitrators.length > 0) {
137
-      if (this.isAgreePendTral == 0) {
141
+      if (this.noArbitrator) {
138
         this.paramsdata = {
142
         this.paramsdata = {
139
-          isAgreePendTral: 0,
140
           id: this.formateCourtData.id,
143
           id: this.formateCourtData.id,
141
           arbitrators: this.arbitrators,
144
           arbitrators: this.arbitrators,
142
         };
145
         };
143
       } else {
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
       pendTralCheck(this.paramsdata).then((res) => {
161
       pendTralCheck(this.paramsdata).then((res) => {
150
         this.cancel();
162
         this.cancel();
151
         this.$modal.msgSuccess("组庭成功");
163
         this.$modal.msgSuccess("组庭成功");