Parcourir la source

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

gaogaoyujie il y a 2 ans
Parent
révision
7310bfde67
28 fichiers modifiés avec 1597 ajouts et 189 suppressions
  1. 11
    1
      src/api/caseManagement/caseManagement.js
  2. 3
    2
      src/views/awardManagement/components/batchPrintings.vue
  3. 2
    1
      src/views/awardManagement/components/batchSignatures.vue
  4. 2
    2
      src/views/batchManagement/components/batchSignature.vue
  5. 4
    3
      src/views/batchManagement/components/courtReview.vue
  6. 243
    15
      src/views/caseManagement/caseList.vue
  7. 7
    2
      src/views/caseManagement/components/adjudicaterecordDialog.vue
  8. 4
    1
      src/views/caseManagement/components/batchConfirmationPaymen.vue
  9. 9
    3
      src/views/caseManagement/components/batchPrinting.vue
  10. 9
    5
      src/views/caseManagement/components/batchSignature.vue
  11. 9
    1
      src/views/caseManagement/components/caseentryDialog.vue
  12. 8
    3
      src/views/caseManagement/components/choosetrialmethodDaiog.vue
  13. 11
    5
      src/views/caseManagement/components/courtReviewDialog.vue
  14. 133
    0
      src/views/caseManagement/components/detailsAward.vue
  15. 129
    0
      src/views/caseManagement/components/expressDeliveryDialog.vue
  16. 7
    2
      src/views/caseManagement/components/filingreviewDialog.vue
  17. 20
    5
      src/views/caseManagement/components/formateCourtDialog.vue
  18. 389
    0
      src/views/caseManagement/components/judgmentInformation.vue
  19. 149
    0
      src/views/caseManagement/components/mailawardDialog.vue
  20. 11
    2
      src/views/caseManagement/components/payDialog.vue
  21. 198
    0
      src/views/caseManagement/components/paymentdetailsDialog.vue
  22. 129
    98
      src/views/caseManagement/components/timeDialog.vue
  23. 8
    4
      src/views/caseManagement/components/trialincourtDialog.vue
  24. 10
    3
      src/views/formationCourt/components/formateCourtDialog.vue
  25. 8
    6
      src/views/index.vue
  26. 80
    22
      src/views/paymentManagement/components/paymentdetailsDialog.vue
  27. 2
    1
      src/views/paymentManagement/paymentList.vue
  28. 2
    2
      vue.config.js

+ 11
- 1
src/api/caseManagement/caseManagement.js Voir le fichier

@@ -145,4 +145,14 @@ export function attachListByCaseId(data) {
145 145
     params: data,
146 146
   })
147 147
 }
148
-
148
+// 案件列表
149
+export function caseApplicationList(data) {
150
+  return request({
151
+      url: '/caseApplication/list',
152
+      // headers: {
153
+      //   isToken: false
154
+      // },
155
+      method: 'get',
156
+      params: data
157
+  })
158
+}

+ 3
- 2
src/views/awardManagement/components/batchPrintings.vue Voir le fichier

@@ -95,13 +95,14 @@ export default {
95 95
     watch: {
96 96
         printingVisable(val) {
97 97
             if (val) {
98
-                this.getBatchPrinting(this.queryParamsData)
98
+                this.getBatchPrinting(this.queryParamsData);
99
+                this.getarbitrAtor()
99 100
             }
100 101
         }  
101 102
     },
102 103
     created(){
103 104
         this.getBatchPrinting(this.queryParamsData)
104
-        this.getarbitrAtor()
105
+        // this.getarbitrAtor()
105 106
     },
106 107
     methods:{
107 108
         // 列表查询

+ 2
- 1
src/views/awardManagement/components/batchSignatures.vue Voir le fichier

@@ -102,12 +102,13 @@ export default {
102 102
         signatureVisable(val) {
103 103
             if (val) {
104 104
                 this.getBatchSignation(this.queryParamsData)
105
+                this.getarbitrAtor()
105 106
             }
106 107
         }  
107 108
     },
108 109
     created(){
109 110
         this.getBatchSignation(this.queryParamsData)
110
-        this.getarbitrAtor()
111
+        // this.getarbitrAtor()
111 112
     },
112 113
     methods:{
113 114
         // 列表查询

+ 2
- 2
src/views/batchManagement/components/batchSignature.vue Voir le fichier

@@ -58,13 +58,13 @@ export default {
58 58
     watch: {
59 59
         caseVisableSignature(val) {
60 60
             if (val) {
61
-                
61
+                this.getarbitrAtor()
62 62
                 console.log(this.atoDataList)
63 63
             }
64 64
         }
65 65
     },
66 66
     created() {
67
-        this.getarbitrAtor()
67
+        // this.getarbitrAtor()
68 68
     },
69 69
     methods: {
70 70
         // 获取仲裁员信息

+ 4
- 3
src/views/batchManagement/components/courtReview.vue Voir le fichier

@@ -95,13 +95,14 @@ export default {
95 95
     };
96 96
   },
97 97
   created() {
98
-    this.getarbitrAtor();
98
+    // this.getarbitrAtor();
99 99
   },
100 100
   watch: {
101 101
     caseVisableReview(val){
102 102
       this.Arbitor = ""
103 103
       if(val){
104 104
         this.isAgreePendTral = 1;
105
+         this.getarbitrAtor({caseId:this.formateCourtData.id});
105 106
       }
106 107
     },
107 108
     // formateCourtData: {
@@ -117,8 +118,8 @@ export default {
117 118
   },
118 119
   methods: {
119 120
     // 获取仲裁员信息
120
-    getarbitrAtor() {
121
-      arbitrAtor({}).then((res) => {
121
+    getarbitrAtor(val) {
122
+      arbitrAtor(val).then((res) => {
122 123
         this.dataList = res.rows;
123 124
         // console.log(this.dataList, "this.dataList");
124 125
       });

+ 243
- 15
src/views/caseManagement/caseList.vue Voir le fichier

@@ -7,16 +7,16 @@
7 7
       <el-form-item label="案件批号" prop="caseNum">
8 8
         <el-input style="width:180px" v-model="queryParams.batchNumber" placeholder="请输入案件批号" clearable @keyup.enter.native="handleQuery" />
9 9
       </el-form-item>
10
-      <el-form-item label="申请人" prop="applicantName">
10
+      <!-- <el-form-item label="申请人" prop="applicantName"> -->
11 11
         <!-- <el-input
12 12
           v-model="queryParams.applicantName"
13 13
           placeholder="请输入机构名称"
14 14
           clearable
15 15
           @keyup.enter.native="handleQuery"
16 16
         /> -->
17
-        <el-cascader v-model="queryParams.nameId" :options="options" @change="changeDept" :props="{ checkStrictly: true }"
17
+        <!-- <el-cascader v-model="queryParams.nameId" :options="options" @change="changeDept" :props="{ checkStrictly: true }"
18 18
           clearable></el-cascader>
19
-      </el-form-item>
19
+      </el-form-item> -->
20 20
       <el-form-item label="案件状态" prop="caseStatus">
21 21
         <el-select :disabled="caseStatusType" v-model="queryParams.caseStatus" placeholder="请选择案件状态" clearable
22 22
           @keyup.enter.native="handleQuery">
@@ -129,6 +129,8 @@
129 129
           <el-button size="mini" type="text" icon="el-icon-tickets" @click="payStatus(scope.row)" v-if="scope.row.caseStatus == 2 &&
130 130
             checkPermi(['caseManagement:list:pay']) && btnStatus
131 131
             ">缴费</el-button>
132
+          <el-button size="mini" type="text" icon="el-icon-zoom-in" @click="paymentconfirmationRow(scope.row)"  v-if="checkPermi(['caseManagement:list:payconfirm']) && btnStatus&&scope.row.caseStatus==3">确认缴费</el-button>  
133
+           <el-button size="mini" type="text" icon="el-icon-edit" @click="viewpaymentformRow(scope.row)" v-if="checkPermi(['caseManagement:list:detail'])">查看缴费单</el-button>
132 134
           <el-button size="mini" type="text" icon="el-icon-tickets" @click="evidenceListS(scope.row)" >证据清单</el-button>
133 135
           <!-- <el-button
134 136
             size="mini"
@@ -173,7 +175,35 @@
173 175
             @click="lockClick(scope.row)">锁定案件</el-button>
174 176
           <el-button size="mini" type="text" icon="el-icon-unlock"
175 177
             v-if="checkPermi(['caseManagement:list:lock']) && scope.row.lockStatus == 1 && btnStatus"
176
-            @click="ulockClick(scope.row)">解锁案件</el-button>
178
+            @click="ulockClick(scope.row)">解锁</el-button>
179
+          <el-button size="mini" type="text" icon="el-icon-reading" 
180
+          v-if="scope.row.filearbitraUrl && scope.row.filearbitraUrl !== ''"
181
+          @click="showModel(scope.row, 0)">查看裁决书</el-button>
182
+           <el-button size="mini" type="text" icon="el-icon-edit"
183
+                       v-if="scope.row.caseStatus == 11 && checkPermi(['caseManagement:list:secretarycheck'])"
184
+                        @click="showModel(scope.row, 1)">秘书确认</el-button>
185
+                    <el-button size="mini" type="text" icon="el-icon-edit"
186
+                       v-if="scope.row.caseStatus == 18 && checkPermi(['caseManagement:list:arbitratorcheck']) && btnStatus"
187
+                        @click="showModel(scope.row, 4)">仲裁员确认</el-button>
188
+                    <el-button size="mini" type="text" icon="el-icon-edit"
189
+                    v-if="scope.row.caseStatus == 12 && checkPermi(['caseManagement:list:confirmaward']) && btnStatus"   
190
+                        @click="showModel(scope.row, 2)">部门长确认</el-button>
191
+                    <el-button size="mini" type="text" icon="el-icon-edit"
192
+                    v-if="scope.row.caseStatus == 13 && checkPermi(['caseManagement:list:sign']) && btnStatus"    
193
+                        @click="showModel(scope.row, 3)">签名</el-button>
194
+          <el-button size="mini" type="text" icon="el-icon-edit"
195
+              v-if="scope.row.caseStatus == 14 && checkPermi(['caseManagement:list:signprint']) && btnStatus"
196
+                        @click="showaffixModel(scope.row, 4)">用印</el-button>
197
+                    <el-button size="mini" type="text" icon="el-icon-truck"
198
+                     v-if="scope.row.caseStatus > 15 && checkPermi(['caseManagement:list:delivery'])"
199
+                        @click="showDeliveryModel(scope.row, 4)">快递信息</el-button>
200
+                    <el-button size="mini" type="text" icon="el-icon-edit"
201
+                    v-if="scope.row.caseStatus == 15 && checkPermi(['caseManagement:list:sendaward']) && btnStatus"
202
+                        @click="showMailaward(scope.row)">送达裁决书</el-button>
203
+                    <el-button size="mini" type="text" icon="el-icon-edit"
204
+                    v-if="scope.row.caseStatus == 16 && checkPermi(['caseManagement:list:archive']) && btnStatus"
205
+                        @click="showCasefilingModel(scope.row, 6)">案件归档</el-button>
206
+                    <el-button size="mini" type="text" icon="el-icon-tickets" @click="detailsAwardList(scope.row)">案件详情</el-button>                    
177 207
             <!-- 暂时隐藏后期可能会放其他地方 -->
178 208
           <!-- <el-button v-if="checkPermi(['caseManagement:list:listEvidence']) && scope.row.caseStatus <= 1 && btnStatus"
179 209
             size="mini" type="text" icon="el-icon-upload" @click="uploadCase(scope.row)">上传证据目录</el-button> -->
@@ -226,6 +256,9 @@
226 256
     <!-- 缴费 -->
227 257
     <payDialog :openPay="openPay" :payTitle="payTitle" :form="form" :payForm="payForm" :queryParams="queryParams"
228 258
       @getcaseApply="getcaseApply" @paycancelRow="paycancelRow" :payId="payId"></payDialog>
259
+    <!-- 缴费确认数据详情 -->
260
+    <paymentdetailsDialog :openDialog="openDialog" :detailform="detailform" :title="title" :flag="flag" :queryParams="queryParams" 
261
+    @getcaseApply="getcaseApply" @cancelpaymentdetails="cancelpaymentdetails"></paymentdetailsDialog>
229 262
     <!-- 案件日志 -->
230 263
     <caselogDialog :showcaseLog="showcaseLog" @cancelcaseLog="cancelcaseLog" :flagLoading="flagLoading"
231 264
       :caselogDataArr="caselogDataArr"></caselogDialog>
@@ -250,10 +283,10 @@
250 283
     </uploadCaseDialog>
251 284
     <!-- 秘书审核修改页面 -->
252 285
     <caseentryExamineDialog :dialogtitle="dialogtitle" :caseentryExamineVisible="caseentryExamineVisible" :queryParams="queryParams"
253
-    :getcaseApply="getcaseApply" 
286
+    @getcaseApply="getcaseApply" 
254 287
     @caseentryExamineCancel="caseentryExamineCancel" :caseentryExamineData="caseentryExamineData" :caseentryExamineDataAll="caseentryExamineDataAll"></caseentryExamineDialog>
255 288
     <caseCompressionPackage :openCompressedPackages="openCompressedPackages" :queryParams="queryParams" @cancelCompreess="cancelCompreess"
256
-      :getcaseApply="getcaseApply">
289
+      @getcaseApply="getcaseApply">
257 290
     </caseCompressionPackage>
258 291
     <!-- 证据清单 -->
259 292
     <evidenceList :evidenceListD ="evidenceListD" @cancelevidenceList="cancelevidenceList" :caseAttachListR ="caseAttachListR"></evidenceList>
@@ -263,6 +296,17 @@
263 296
     <batchSignature :signatureVisable="signatureVisable" @signatureOperate="signatureOperate"></batchSignature>
264 297
     <!-- 批量用印 -->
265 298
     <batchPrinting :printingVisable="printingVisable" @printingOperate="printingOperate"></batchPrinting>
299
+     <!-- 裁决书弹窗 -->
300
+     <judgmentInformation :openDialogInfor="openDialogInfor" :awardDetailform="awardDetailform" :title="title" :flag="flag" @getcaseApply="getcaseApply" :queryParams="queryParams"
301
+     @cancelpaymentdetailsCom="cancelpaymentdetailsCom"></judgmentInformation>
302
+     <!-- 快递信息页面 -->
303
+     <expressDeliveryDialog :showDelivery="showDelivery" :deliveryDataArr="deliveryDataArr"
304
+      @closeDeliveryModel="closeDeliveryModel" :flagLoading="flagLoading"></expressDeliveryDialog>
305
+     <!-- 送达裁决书页面 -->
306
+     <mailawardDialog :openMailawardDialog="openMailawardDialog" @closeMailaward="closeMailaward"  :mailawardata="mailawardata" :emailobj="emailobj"  @getcaseApply="getcaseApply" :queryParams="queryParams"></mailawardDialog>
307
+     <detailsAward :showarchiveDetails="showarchiveDetails" @cancelDetail="cancelDetail" :detailsAwardNum="detailsAwardNum" :videoList="videoList"
308
+        :flagLoadingS="flagLoadingS" :trialTranscripts="trialTranscripts"
309
+      ></detailsAward>
266 310
   </div>
267 311
 </template>
268 312
 
@@ -287,9 +331,19 @@ import evidenceList from './components/evidenceList.vue'
287 331
 import batchConfirmationPaymen from './components/batchConfirmationPaymen.vue'
288 332
 import batchSignature from './components/batchSignature.vue'
289 333
 import batchPrinting from './components/batchPrinting.vue'
334
+import paymentdetailsDialog from "./components/paymentdetailsDialog.vue";
290 335
 // 秘书审核页面
291 336
 import caseentryExamineDialog from './components/caseentryExamine.vue';
292
-import { caseApplicationDetail } from "@/api/pay/pay";
337
+//裁决书弹框页面
338
+import judgmentInformation from './components/judgmentInformation.vue';
339
+//快递弹窗
340
+import expressDeliveryDialog from './components/expressDeliveryDialog.vue';
341
+//裁决书弹窗
342
+import mailawardDialog from './components/mailawardDialog.vue';
343
+//归档详情弹窗
344
+import detailsAward from './components/detailsAward.vue';
345
+import { caseApplicationDetail,selectCaseApplicationConfirm } from "@/api/pay/pay";
346
+import { videoList } from "@/api/caseFiling/caseFiling";
293 347
 import {
294 348
   caseApply,
295 349
   removeCaseApply,
@@ -303,8 +357,10 @@ import {
303 357
   caseLogRecordList,
304 358
   revoke,
305 359
   selectCompareCase,
306
-  updateAudit
360
+  updateAudit,
361
+  attachListByCaseId
307 362
 } from "@/api/caseManagement/caseManagement";
363
+import {selectSignSealUrl,selectSignUrl,selectSealUrl,adjudicationLogistics,emailByCaseId,adjudicationCaseFile,} from "@/api/awardManagement/awardManagement";
308 364
 import { getDicts } from '@/api/system/dict/data.js';
309 365
 export default {
310 366
   name: "caseList",
@@ -330,7 +386,14 @@ export default {
330 386
     evidenceList,
331 387
     batchConfirmationPaymen,
332 388
     batchSignature,
333
-    batchPrinting
389
+    batchPrinting,
390
+    paymentdetailsDialog,
391
+    judgmentInformation,
392
+    expressDeliveryDialog,
393
+    mailawardDialog,
394
+    detailsAward
395
+    
396
+    
334 397
   },
335 398
   data() {
336 399
     return {
@@ -392,6 +455,23 @@ export default {
392 455
       flagLoading: true, //案件日志弹框loading
393 456
       caselogDataArr: [],
394 457
       options: [], //机构数据
458
+      detailform:{},//缴费详情
459
+      awardDetailform:{},//裁决书详情
460
+      openDialog: false, //缴费详情数据弹框
461
+      openDialogInfor:false,//裁决书弹框
462
+      showDelivery:false,//快递弹窗
463
+      flagLoading: true,
464
+      deliveryDataArr: [],//快递信息数据
465
+      openMailawardDialog: false,  //送达裁决书页面
466
+      mailawardata: {},   //裁决书送达界面数据
467
+      emailobj: {},//邮箱存储
468
+      showarchiveDetails:false,//归档详情弹框
469
+      videoList:"", //视频数据
470
+      flagLoadingS: true,
471
+      trialTranscripts:[],//庭审笔录
472
+      detailsAwardNum:{},//归档详情数据
473
+      flag: null,
474
+      title: "",
395 475
       payId: null,
396 476
       caseStatus: [],
397 477
       processData: {},
@@ -466,7 +546,10 @@ export default {
466 546
     signatureOperate(){
467 547
       this.signatureVisable = false;
468 548
     },
469
-    
549
+        // 关闭确认缴费弹窗
550
+    cancelpaymentdetails() {
551
+      this.openDialog = false;
552
+    },
470 553
     // 上传证据目录弹窗
471 554
     uploadCase(row) {
472 555
       this.uploadCaseData = row;
@@ -688,6 +771,7 @@ export default {
688 771
     editRow(row) {
689 772
       this.flag = "1";
690 773
       this.form = row;
774
+      console.log(this.form)
691 775
       this.visible = true;
692 776
       this.dialogtitle = "立案修改";
693 777
       this.getInfo(row);
@@ -732,12 +816,32 @@ export default {
732 816
           res.data.caseStatusName = "待缴费";
733 817
         }
734 818
         this.form = res.data;
735
-        console.log(this.form)
819
+        this.detailform = res.data;
820
+        this.awardDetailform = res.data;
821
+        this.detailsAwardNum = res.data;
822
+        console.log(this.detailsAwardNum)
736 823
         this.payForm.feePayable = res.data.feePayable;
737 824
         this.payForm.caseId = res.data.id;
738 825
       });
739 826
     },
740
-
827
+        // 缴费确认
828
+    paymentconfirmationRow(row) {
829
+      console.log(row)
830
+      this.getDetail({ id: row.id,version: row.version });
831
+      this.openDialog = true;
832
+      this.title = "缴费确认";
833
+      this.flag = 0;
834
+      this.detailform = {}
835
+    },
836
+      // 查看缴费单
837
+    viewpaymentformRow(row) {
838
+      //   console.log("查看缴费单", row);
839
+      this.getDetail({ id: row.id,version: row.version});
840
+      this.openDialog = true;
841
+      this.title = "缴费单详情";
842
+      this.flag = 1;
843
+      this.detailform = {}
844
+    },
741 845
     // 组庭
742 846
     // formationcourtRow(row) {
743 847
     //   console.log(row, "组庭");
@@ -787,7 +891,8 @@ export default {
787 891
     },
788 892
     // 组庭审核
789 893
     courtreviewRow(row) {
790
-      // console.log(row, "组庭审核");
894
+      console.log(row, "组庭审核");
895
+      
791 896
       this.formateCourtData = row;
792 897
       console.log(row)
793 898
       this.showformateCourt = true;
@@ -882,7 +987,7 @@ export default {
882 987
         this.form.requestRule = res.data.requestRule;
883 988
         this.form.properPreser = res.data.properPreser;
884 989
         this.form.facts =res.data.facts;
885
-        this.form.applicantIsWrittenHear = 1
990
+        // this.form.applicantIsWrittenHear = 1
886 991
       });
887 992
     },
888 993
     // 删除
@@ -931,7 +1036,130 @@ export default {
931 1036
         return 'pendingTrial'
932 1037
       }
933 1038
       
934
-    }
1039
+    },
1040
+     // model框显示
1041
+        showModel(row, type) {
1042
+
1043
+            switch (type) {
1044
+                case 0:
1045
+                    selectSignSealUrl({ id: row.id }).then(res => {
1046
+                        let url = res.data.filearbitraUrl;
1047
+                        window.open(url)
1048
+                    })
1049
+                    break;
1050
+                case 1:
1051
+                    this.getDetail({ id: row.id,version: row.version });
1052
+                    this.openDialogInfor = true;
1053
+                    this.title = "核验裁决书";
1054
+                    this.flag = 1;
1055
+                    break;
1056
+                case 2:
1057
+                    this.getDetail({ id: row.id,version: row.version });
1058
+                    this.openDialogInfor = true;
1059
+                    this.title = "审核裁决书";
1060
+                    this.flag = 2;
1061
+                    break;
1062
+                case 3:
1063
+                    selectSignUrl({ id: row.id }).then(res => {
1064
+                        console.log(res)
1065
+                        let url = res.data.signUrl;
1066
+                        window.open(url)
1067
+                    })
1068
+                    break;
1069
+                case 4:
1070
+                    this.getDetail({ id: row.id,version: row.version});
1071
+                    this.openDialogInfor = true;
1072
+                    this.title = "审核裁决书";
1073
+                    this.flag = 4;
1074
+                    break;
1075
+                default:
1076
+                    break;
1077
+            }
1078
+        },
1079
+        // 关闭弹窗
1080
+        cancelpaymentdetailsCom() {
1081
+            this.openDialogInfor = false;
1082
+        },
1083
+        // 用印申请
1084
+        showaffixModel(row) {
1085
+            this.$modal.confirm('是否进行用印申请?')
1086
+                .then(function () {
1087
+                    selectSealUrl({ id: row.id }).then(res => {
1088
+                        let url = res.data.sealUrl;
1089
+                        window.open(url)
1090
+                    })
1091
+                }).catch(function () {
1092
+                });
1093
+        },
1094
+                // 快递信息弹框
1095
+        showDeliveryModel(row) {
1096
+            console.log(row, '快递');
1097
+            this.showDelivery = true
1098
+            this.getadjudicationLogistics({ id: row.id })
1099
+        },
1100
+        closeDeliveryModel() {
1101
+            this.showDelivery = false
1102
+        },
1103
+        // 查询物流信息
1104
+        getadjudicationLogistics(val) {
1105
+            this.flagLoading = true;
1106
+            adjudicationLogistics(val).then((res) => {
1107
+                this.deliveryDataArr = res.data
1108
+                this.flagLoading = false
1109
+            })
1110
+        },
1111
+        // 送达裁决书弹框
1112
+        showMailaward(row) {
1113
+            this.mailawardata = row;
1114
+            this.emailByCaseIdFn(row.id)
1115
+            this.openMailawardDialog = true
1116
+        },
1117
+        // 关闭送达裁决书弹框
1118
+        closeMailaward(row) {
1119
+            this.openMailawardDialog = false
1120
+        },
1121
+        // 根据案件id查询邮件
1122
+        emailByCaseIdFn(val) {
1123
+            emailByCaseId({ id: val }).then((res) => {
1124
+                this.emailobj = res.data
1125
+            })
1126
+        },
1127
+        // 案件归档
1128
+        showCasefilingModel(row) {
1129
+            this.$modal.confirm('是否确认立即进行案件扫描?').then(
1130
+                function () {
1131
+                    // return adjudicationCaseFile({ id: row.id })
1132
+                    return adjudicationCaseFile({ ids: [row.id] })
1133
+                }
1134
+            ).then(() => {
1135
+                this.getcaseApply(this.queryParams);
1136
+                this.$modal.msgSuccess("归档成功!");
1137
+            }).catch(function () { })
1138
+        },
1139
+        // 归档详情
1140
+        detailsAwardList(row){
1141
+            this.showarchiveDetails = true
1142
+            this.getDetail({ id: row.id })
1143
+            this.getvideoList({ caseId: row.id })
1144
+            this.getAttachListByCaseId({caseAppliId:row.id,annexType:11})
1145
+            this.flagLoadingS = false
1146
+        },
1147
+        // 根据id查询视频列表
1148
+        getvideoList(data){
1149
+            videoList(data).then(res => {
1150
+                this.videoList = res.data;
1151
+            })
1152
+        },
1153
+        //根据案件id和类型查询附件
1154
+        getAttachListByCaseId(data){
1155
+            attachListByCaseId(data).then(res =>{
1156
+                this.trialTranscripts = res.data;
1157
+            })
1158
+        },
1159
+        // 归档详情关闭弹框
1160
+        cancelDetail(){
1161
+            this.showarchiveDetails = false;
1162
+        },
935 1163
   },
936 1164
 };
937 1165
 </script>

+ 7
- 2
src/views/caseManagement/components/adjudicaterecordDialog.vue Voir le fichier

@@ -260,7 +260,7 @@
260 260
         </el-col> -->
261 261
       </el-form>
262 262
       <div slot="footer" class="dialog-footer">
263
-        <el-button type="primary" @click="submitForm">提交仲裁结果</el-button>
263
+        <el-button type="primary" @click="submitForm" :loading="loadingSubmit">提交仲裁结果</el-button>
264 264
         <el-button @click="cancel">取 消</el-button>
265 265
       </div>
266 266
     </el-dialog>
@@ -278,6 +278,7 @@ export default {
278 278
       form2: {},
279 279
       applicateArr: [],//申请人案件资料
280 280
       quiltArr: [],//被申请人案件资料
281
+      loadingSubmit: false,
281 282
     };
282 283
   },
283 284
   watch: {
@@ -328,6 +329,7 @@ export default {
328 329
     submitForm() {
329 330
       this.$refs["form2"].validate((valid) => {
330 331
         if (valid) {
332
+          this.loadingSubmit = true;
331 333
           writtenHear({
332 334
             ids: [this.formData.id],
333 335
             evidenDetermi: this.form2.evidenDetermi,
@@ -340,8 +342,11 @@ export default {
340 342
               this.$modal.msgSuccess("提交成功");
341 343
               this.cancel();
342 344
               this.$emit("getcaseApply",this.queryParams);
345
+              this.loadingSubmit = false;
343 346
             })
344
-            .catch((err) => {});
347
+            .catch((err) => {
348
+              this.loadingSubmit = false;
349
+            });
345 350
         }
346 351
       });
347 352
     },

+ 4
- 1
src/views/caseManagement/components/batchConfirmationPaymen.vue Voir le fichier

@@ -58,7 +58,7 @@
58 58
                 </el-descriptions>
59 59
                 <div slot="footer" class="dialog-footer">
60 60
                     <el-button @click="payCancel" class="endbutton"><span>取 消</span></el-button>
61
-                    <el-button type="primary" class="endbutton" @click="submitUpload"><span>确认缴费</span></el-button>
61
+                    <el-button type="primary" class="endbutton" @click="submitUpload" :loading="loadingSubmit"><span>确认缴费</span></el-button>
62 62
                 </div>
63 63
             </el-dialog>
64 64
         </el-dialog>
@@ -89,6 +89,7 @@ export default {
89 89
             submitForm: {
90 90
                 ids:[]
91 91
             },
92
+            loadingSubmit: false,
92 93
         }
93 94
     },
94 95
      watch: {
@@ -134,12 +135,14 @@ export default {
134 135
             this.payVisible = false;
135 136
         },
136 137
         submitUpload() {
138
+            this.loadingSubmit = true;
137 139
             this.submitForm.ids = this.batchData;
138 140
             console.log(this.submitForm)
139 141
             confirmPay(this.submitForm).then(res => {
140 142
                 this.$modal.msgSuccess("成功");
141 143
                 this.payCancel();
142 144
                 this.getBatchComfirmation(this.queryParamsData);
145
+                this.loadingSubmit = false;
143 146
             })
144 147
         },
145 148
         cancel() {

+ 9
- 3
src/views/caseManagement/components/batchPrinting.vue Voir le fichier

@@ -58,7 +58,7 @@
58 58
                 :limit.sync="queryParamsData.pageSize"  />
59 59
             <div slot="footer" class="dialog-footer">
60 60
                 <el-button @click="cancel"  class="endbutton"><span>取 消</span></el-button>
61
-                <el-button type="primary" class="endbutton" :disabled="dataList.length == 0 || batchData.length == 0" @click="confirmSeals"><span>确认用印</span></el-button>
61
+                <el-button type="primary" class="endbutton" :disabled="dataList.length == 0 || batchData.length == 0" @click="confirmSeals" :loading="loadingSubmit"><span>确认用印</span></el-button>
62 62
             </div>
63 63
         </el-dialog>
64 64
     </div>
@@ -72,6 +72,7 @@ export default {
72 72
         return {
73 73
              // 遮罩层
74 74
             loading: true,
75
+            loadingSubmit: false,
75 76
             // 总条数
76 77
             total:0,
77 78
              // 查询参数
@@ -96,12 +97,13 @@ export default {
96 97
         printingVisable(val) {
97 98
             if (val) {
98 99
                 this.getBatchPrinting(this.queryParamsData)
100
+                this.getarbitrAtor()
99 101
             }
100 102
         }  
101 103
     },
102 104
     created(){
103 105
         this.getBatchPrinting(this.queryParamsData)
104
-        this.getarbitrAtor()
106
+        // this.getarbitrAtor()
105 107
     },
106 108
     methods:{
107 109
         // 列表查询
@@ -138,15 +140,19 @@ export default {
138 140
         confirmSeals(){
139 141
          this.$refs["courtReviewform"].validate((valid) => {
140 142
             if (valid) {
143
+                this.loadingSubmit = true;
141 144
           selectBatchSealUrl(this.paramsdata).then((res) => { 
142 145
               this.$modal.msgSuccess("确认成功");
143 146
               this.cancel();
144 147
               this.getBatchPrinting(this.queryParamsData)
145 148
               window.open(res.data.signUrl)
149
+              this.loadingSubmit = false;
146 150
               
147 151
             //   this.$emit("getcaseApply", this.queryParams);
148 152
             })
149
-            .catch((err) => {});
153
+            .catch((err) => {
154
+                this.loadingSubmit = false;
155
+            });
150 156
         }
151 157
       });
152 158
     },

+ 9
- 5
src/views/caseManagement/components/batchSignature.vue Voir le fichier

@@ -63,7 +63,7 @@
63 63
                 type="primary" 
64 64
                 class="endbutton" 
65 65
                 :disabled="dataList.length == 0 || batchData.length == 0" 
66
-                @click="witnessing"><span>确认签名</span></el-button>
66
+                @click="witnessing" :loading="loadingSubmit"><span>确认签名</span></el-button>
67 67
             </div>
68 68
         </el-dialog>
69 69
     </div>
@@ -77,6 +77,7 @@ export default {
77 77
         return {
78 78
              // 遮罩层
79 79
             loading: true,
80
+            loadingSubmit: false,
80 81
             // 总条数
81 82
             total:0,
82 83
              // 查询参数
@@ -102,12 +103,13 @@ export default {
102 103
         signatureVisable(val) {
103 104
             if (val) {
104 105
                 this.getBatchSignation(this.queryParamsData)
106
+                this.getarbitrAtor()
105 107
             }
106 108
         }  
107 109
     },
108 110
     created(){
109 111
         this.getBatchSignation(this.queryParamsData)
110
-        this.getarbitrAtor()
112
+        // this.getarbitrAtor()
111 113
     },
112 114
     methods:{
113 115
         // 列表查询
@@ -143,16 +145,18 @@ export default {
143 145
     witnessing(){
144 146
          this.$refs["courtReviewform"].validate((valid) => {
145 147
         if (valid) {
146
-            console.log(this.paramsdata)
148
+            this.loadingSubmit = true;
147 149
           selectBatchSignUrl(this.paramsdata).then((res) => { 
148 150
               this.$modal.msgSuccess("确认成功");
149 151
               this.cancel();
150 152
               this.getBatchSignation(this.queryParamsData)
151 153
               window.open(res.data.signUrl)
152
-              
154
+              this.loadingSubmit = false;
153 155
             //   this.$emit("getcaseApply", this.queryParams);
154 156
             })
155
-            .catch((err) => {});
157
+            .catch((err) => {
158
+                this.loadingSubmit = false;
159
+            });
156 160
         }
157 161
       });
158 162
     },

+ 9
- 1
src/views/caseManagement/components/caseentryDialog.vue Voir le fichier

@@ -623,7 +623,7 @@
623 623
           </div>
624 624
         </div>
625 625
             <div slot="footer" class="dialog-footer" style="text-align:center;margin-top:20px;">
626
-            <el-button type="primary" @click="submitForm" v-if="flag != 0" class="endbutton"><span>确 定</span></el-button>
626
+            <el-button type="primary" @click="submitForm" v-if="flag != 0" class="endbutton" :loading="loadingSubmit"><span>确 定</span></el-button>
627 627
             <el-button @click="cancel" class="endbutton1"><span>取 消</span></el-button>
628 628
           </div>
629 629
         
@@ -673,6 +673,7 @@ export default {
673 673
   data() {
674 674
     return {
675 675
       activeName: 'first',
676
+      loadingSubmit: false,
676 677
       fileURL: window.location.origin + "/API",
677 678
       formData: this.form,
678 679
       templateList: [],
@@ -1069,6 +1070,7 @@ export default {
1069 1070
           "YYYY-MM-DD HH:mm:ss"
1070 1071
         );
1071 1072
         if (valid) {
1073
+          this.loadingSubmit = true;
1072 1074
           this.$refs["form2"].validate((valid) => {
1073 1075
             if (valid) {
1074 1076
               this.$refs["form3"].validate((vail) => {
@@ -1091,7 +1093,10 @@ export default {
1091 1093
                         this.$modal.msgSuccess("修改成功");
1092 1094
                         this.$emit("cancel");
1093 1095
                         this.getcaseApply(this.queryParams);
1096
+                        this.loadingSubmit = false;
1094 1097
                       }
1098
+                    }).catch((err) => {
1099
+                      this.loadingSubmit = false;
1095 1100
                     });
1096 1101
                   } else {
1097 1102
                     addCaseApply({
@@ -1102,7 +1107,10 @@ export default {
1102 1107
                         this.$modal.msgSuccess("新增成功");
1103 1108
                         this.$emit("cancel");
1104 1109
                         this.getcaseApply(this.queryParams);
1110
+                        this.loadingSubmit = false;
1105 1111
                       }
1112
+                    }).catch((err) => {
1113
+                      this.loadingSubmit = false;
1106 1114
                     });
1107 1115
                   }
1108 1116
                 }

+ 8
- 3
src/views/caseManagement/components/choosetrialmethodDaiog.vue Voir le fichier

@@ -8,7 +8,7 @@
8 8
       @close="cancel"
9 9
       :destroy-on-close="true"
10 10
     >
11
-        <div v-show="choosetrialmethodata.arbitraMethodIssame==1">
11
+        <div v-show="choosetrialmethodata.arbitraMethodIssame!=2">
12 12
           <el-descriptions>
13 13
             <el-descriptions-item label="当前仲裁方式:">
14 14
               <el-tag size="small">{{
@@ -53,7 +53,7 @@
53 53
                 </el-radio-group>
54 54
             </el-form-item>
55 55
             <el-form-item>
56
-              <el-button type="primary"  @click="determine(2)">确定</el-button>
56
+              <el-button type="primary"  @click="determine(2)" :loading="loadingSubmit">确定</el-button>
57 57
               <el-button @click="cancel">取消</el-button>
58 58
             </el-form-item>
59 59
           </el-form>
@@ -70,6 +70,7 @@ export default {
70 70
   data() {
71 71
     return {
72 72
       form:{},
73
+      loadingSubmit: false,
73 74
       rules:{
74 75
         arbitratMethod: [
75 76
             { required: true, message: '请选择开庭方式', trigger: 'change' }
@@ -98,6 +99,7 @@ export default {
98 99
     determine(val){
99 100
        this.$refs["form"].validate((valid) => {
100 101
           if (valid) {
102
+            this.loadingSubmit = true;
101 103
             let paramsdata = {
102 104
               opinion: val,
103 105
               arbitratMethod:this.form.arbitratMethod
@@ -110,8 +112,11 @@ export default {
110 112
               this.$modal.msgSuccess("提交成功");
111 113
               this.cancel();
112 114
               this.$emit("getcaseApply", this.queryParams);
115
+              this.loadingSubmit = false;
113 116
             })
114
-            .catch((err) => {});
117
+            .catch((err) => {
118
+              this.loadingSubmit = false;
119
+            });
115 120
           } else {
116 121
             return false;
117 122
           }

+ 11
- 5
src/views/caseManagement/components/courtReviewDialog.vue Voir le fichier

@@ -60,7 +60,7 @@
60 60
         <!-- </div> -->
61 61
       </el-form>
62 62
       <div slot="footer" class="dialog-footer">
63
-        <el-button type="primary" @click="submitForm" class="endbutton"
63
+        <el-button type="primary" :loading="loadingSubmit" @click="submitForm" class="endbutton"
64 64
           ><span>确 定</span>
65 65
         </el-button>
66 66
         <el-button @click="cancel" class="endbutton1"
@@ -86,6 +86,7 @@ export default {
86 86
         hearDate: null,
87 87
       },
88 88
       noArbitrator: false,
89
+      loadingSubmit: false,
89 90
       isAgreePendTral: 1,
90 91
       total: 0,
91 92
       queryParams1: {
@@ -102,13 +103,14 @@ export default {
102 103
     };
103 104
   },
104 105
   created() {
105
-    this.getarbitrAtor();
106
+    // this.getarbitrAtor();
106 107
   },
107 108
   watch: {
108 109
     showcourtReview(val) {
109 110
       if (val) {
110 111
         this.isAgreePendTral = 1;
111 112
         this.courtReviewform.hearDate = null;
113
+        this.getarbitrAtor({caseId:this.form.id});
112 114
       }
113 115
     },
114 116
     form: {
@@ -123,8 +125,8 @@ export default {
123 125
   },
124 126
   methods: {
125 127
     // 获取仲裁员信息
126
-    getarbitrAtor() {
127
-      arbitrAtor({}).then((res) => {
128
+    getarbitrAtor(val) {
129
+      arbitrAtor(val).then((res) => {
128 130
         this.dataList = res.rows;
129 131
         this.total = res.total;
130 132
       });
@@ -162,13 +164,17 @@ export default {
162 164
       }
163 165
       this.$refs["courtReviewform"].validate((valid) => {
164 166
         if (valid) {
167
+          this.loadingSubmit = true;
165 168
           pendTralSure(this.paramsdata)
166 169
             .then((res) => {
167 170
               this.$modal.msgSuccess("确认成功");
168 171
               this.cancel();
169 172
               this.$emit("getcaseApply", this.queryParams);
173
+              this.loadingSubmit = false;
170 174
             })
171
-            .catch((err) => {});
175
+            .catch((err) => {
176
+              this.loadingSubmit = false;
177
+            });
172 178
         }
173 179
       });
174 180
     },

+ 133
- 0
src/views/caseManagement/components/detailsAward.vue Voir le fichier

@@ -0,0 +1,133 @@
1
+<template>
2
+  <div>
3
+    <el-dialog title="案件详情" :visible="showarchiveDetails" @close="cancel" :destroy-on-close="true" center>
4
+      <div class="loading" v-if="flagLoadingS">
5
+        <i class="el-icon-loading"></i>
6
+      </div>
7
+      <div v-else>
8
+          <!-- <div class="noData" v-if="noData">暂无数据!</div> -->
9
+          <el-tabs v-model="activeName"  @tab-click="handleClick">
10
+            <el-tab-pane label="申请人案件证据资料" name="first"></el-tab-pane>
11
+            <el-tab-pane label="被申请人案件证据资料" name="second"></el-tab-pane>
12
+            <el-tab-pane label="裁决书附件" name="third"></el-tab-pane>
13
+            <!-- <el-tab-pane label="仲裁申请书" name="fourth"></el-tab-pane> -->
14
+            <el-tab-pane label="案件视频" name="five"></el-tab-pane>
15
+            <el-tab-pane label="庭审笔录" name="six"></el-tab-pane>
16
+            <el-tab-pane label="案件异议信息" name="seven"></el-tab-pane>
17
+         </el-tabs>
18
+         <div v-show="activeName=='first'">
19
+             
20
+             <div v-for="(item,index) in detailsAwardNum.caseAttachList" :key="index" v-if="item.annexType==2" style="margin-top:10px;">
21
+                 <el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
22
+             </div>
23
+            <el-empty v-if="isNoData(detailsAwardNum.caseAttachList,2) == 0" description="暂无数据"></el-empty>
24
+         </div>
25
+         <div v-show="activeName=='second'">
26
+            <div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType==6" style="margin-top:10px;">
27
+                 <el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
28
+             </div>
29
+             <el-empty v-if="isNoData(detailsAwardNum.caseAttachList,6) == 0" description="暂无数据"></el-empty>
30
+         </div>
31
+         <div  v-show="activeName=='third'">
32
+             <div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType==3" style="margin-top:10px;">
33
+                 <el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
34
+             </div>
35
+             <el-empty v-if="isNoData(detailsAwardNum.caseAttachList,3) == 0" description="暂无数据"></el-empty>
36
+         </div>
37
+         <div  v-show="activeName=='fourth'">
38
+             <div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType==1" style="margin-top:10px;">
39
+                 <el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
40
+             </div>
41
+             <el-empty v-if="isNoData(detailsAwardNum.caseAttachList,1) == 0" description="暂无数据"></el-empty>
42
+         </div>
43
+         <div  v-show="activeName=='five'">            
44
+             <video style="background-color: #181717;width: 350px;height: 200px;margin: 10px;" :src="headPath + item.annexPath" v-for="(item,index) in videoList" :key="index" controls="controls"></video>
45
+             <el-empty v-if="videoList == null || videoList.length ==0" description="暂无数据"></el-empty>
46
+         </div>
47
+         <!-- <div v-show="activeName=='six'">
48
+             <div v-for="(item,index) in trialTranscripts" :key="index" style="margin-top:10px;">
49
+                 <el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
50
+             </div>
51
+              <el-empty v-if="trialTranscripts == null || trialTranscripts.length ==0" description="暂无数据"></el-empty>
52
+         </div> -->
53
+         <div  v-show="activeName=='six'">
54
+             <div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType==7" style="margin-top:10px;">
55
+                 <el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
56
+             </div>
57
+             <el-empty v-if="isNoData(detailsAwardNum.caseAttachList,7) == 0" description="暂无数据"></el-empty>
58
+         </div>
59
+         <div v-show="activeName=='seven'">
60
+            <div v-if="detailsAwardNum.adjudicaCounterReason">案件异议信息:{{detailsAwardNum.adjudicaCounterReason}}</div> 
61
+            <el-empty v-if="!detailsAwardNum.adjudicaCounterReason" description="暂无数据"></el-empty>
62
+         </div>
63
+      </div>
64
+      <div slot="footer" class="dialog-footer">
65
+        <el-button @click="cancel">取 消</el-button>
66
+      </div>
67
+    </el-dialog>
68
+  </div>
69
+</template>
70
+<script>
71
+export default {
72
+    props: ["showarchiveDetails","detailsAwardNum","videoList","flagLoadingS","trialTranscripts"],
73
+  components: {
74
+    
75
+  },
76
+  data() {
77
+    return {
78
+     activeName: 'first',
79
+      fileURL: window.location.origin + "/API",
80
+      headPath:window.location.origin + "/API",
81
+      noData: false,
82
+    //   myData:[],
83
+    //   videoLists:[]
84
+    };
85
+  },
86
+  created(){
87
+    
88
+    
89
+  },
90
+  methods: {
91
+    isNoData(data,type){
92
+        let resNumber = 0
93
+        if(data){
94
+            let list = data.filter(item => item.annexType == type)
95
+            if(list){
96
+                resNumber = list.length
97
+            }
98
+        }
99
+        return resNumber
100
+    },
101
+    handleClick(tab, event) {
102
+
103
+    },
104
+    
105
+    cancel() {
106
+      this.$emit("cancelDetail");
107
+    //   this.activeName ="first"
108
+    },
109
+  },
110
+}
111
+</script>
112
+<style lang="scss" scoped>
113
+::v-deep .el-dialog__body {
114
+  height: 500px !important;
115
+  overflow: auto !important;
116
+}
117
+::v-deep .el-dialog {
118
+  width: 850px;
119
+  background: #ffffff;
120
+  border-radius: 20px;
121
+}
122
+.loading {
123
+  width: 100%;
124
+  height: 100%;
125
+  display: flex;
126
+  justify-content: center;
127
+  align-items: center;
128
+
129
+  .el-icon-loading {
130
+    font-size: 50px;
131
+  }
132
+}
133
+</style>

+ 129
- 0
src/views/caseManagement/components/expressDeliveryDialog.vue Voir le fichier

@@ -0,0 +1,129 @@
1
+<template>
2
+  <div>
3
+    <el-dialog
4
+      title="快递信息"
5
+      :visible="showDelivery"
6
+      @close="cancel"
7
+      center
8
+      :distroy-on-close="true"
9
+    >
10
+      <div class="loading" v-if="flagLoading">
11
+        <i class="el-icon-loading"></i>
12
+      </div>
13
+      <div v-else>
14
+        <div class="noData" v-if="noData">暂无快递信息!</div>
15
+        <div v-else>
16
+          <div class="deliverName">
17
+            {{ applicantdelivery.company }} {{ applicantdelivery.no }}
18
+          </div>
19
+          <el-divider></el-divider>
20
+          <el-timeline :reverse="reverse">
21
+            <el-timeline-item
22
+              v-for="(activity, index) in activities"
23
+              :key="index"
24
+              :timestamp="activity.timestamp"
25
+            >
26
+              {{ activity.content }}
27
+            </el-timeline-item>
28
+          </el-timeline>
29
+        </div>
30
+      </div>
31
+      <div slot="footer" class="dialog-footer">
32
+        <el-button @click="cancel" class="endbutton"
33
+          ><span>取 消</span></el-button
34
+        >
35
+      </div>
36
+    </el-dialog>
37
+  </div>
38
+</template>
39
+
40
+<script>
41
+export default {
42
+  props: ["showDelivery", "deliveryDataArr", "flagLoading"],
43
+  data() {
44
+    return {
45
+      // key: value
46
+      reverse: true,
47
+      applicantdelivery: {}, //申请人物流信息
48
+      activities: [],
49
+      noData: false,
50
+    };
51
+  },
52
+  watch: {
53
+    deliveryDataArr: {
54
+      handler(val) {
55
+        if (val) {
56
+          val.forEach((item) => {
57
+            if (item.identityType == 1) {
58
+              let applicantdata = item.logisticsInfo;
59
+              this.applicantdelivery = JSON.parse(applicantdata);
60
+              if (this.applicantdelivery.list) {
61
+                this.activities = this.applicantdelivery.list;
62
+                this.activities.forEach((item) => {
63
+                  item.content = item.datetime;
64
+                  item.timestamp = item.remark;
65
+                });
66
+              } else {
67
+                this.noData = true;
68
+                return;
69
+              }
70
+            }
71
+          });
72
+        }
73
+      },
74
+    },
75
+  },
76
+  methods: {
77
+    cancel() {
78
+      this.$emit("closeDeliveryModel");
79
+    },
80
+  },
81
+};
82
+</script>
83
+
84
+<style lang="scss" scoped>
85
+::v-deep .el-dialog {
86
+  width: 600px;
87
+  background: #ffffff;
88
+  border-radius: 20px;
89
+}
90
+.deliverName {
91
+  margin-left: 6%;
92
+  font-size: 16px;
93
+  font-weight: 500;
94
+}
95
+.endbutton {
96
+  width: 154px;
97
+  height: 37px;
98
+  background: #ffffff;
99
+  border: 1px solid #d0d0d0;
100
+  border-radius: 19px;
101
+  span {
102
+    width: 31px;
103
+    height: 13px;
104
+    font-size: 16px;
105
+    font-family: Microsoft YaHei;
106
+    font-weight: 400;
107
+    color: #959595;
108
+  }
109
+}
110
+.loading {
111
+  width: 100%;
112
+  height: 100%;
113
+  display: flex;
114
+  justify-content: center;
115
+  align-items: center;
116
+  .el-icon-loading {
117
+    font-size: 50px;
118
+  }
119
+}
120
+.noData {
121
+  width: 100%;
122
+  font-size: 20px;
123
+  font-weight: 700;
124
+  color: #959595;
125
+  display: flex;
126
+  justify-content: center;
127
+  align-items: center;
128
+}
129
+</style>

+ 7
- 2
src/views/caseManagement/components/filingreviewDialog.vue Voir le fichier

@@ -15,7 +15,7 @@
15 15
         </el-form>
16 16
       </div>
17 17
       <div slot="footer" class="dialog-footer">
18
-        <el-button type="primary" @click="submitForm" class="endbutton"><span>提 交</span></el-button>
18
+        <el-button type="primary" @click="submitForm" class="endbutton" :loading="loadingSubmit"><span>提 交</span></el-button>
19 19
         <el-button @click="cancel" class="endbutton1"><span> 取 消</span></el-button>
20 20
       </div>
21 21
     </el-dialog>
@@ -33,6 +33,7 @@ export default {
33 33
     return {
34 34
       radio: 1,
35 35
       ruleForm: {},
36
+      loadingSubmit: false,
36 37
       rules: {
37 38
         caseCheckReject: [
38 39
           {
@@ -48,6 +49,7 @@ export default {
48 49
     submitForm() {
49 50
       this.$refs["ruleForm"].validate((valid) => {
50 51
         if (valid) {
52
+          this.loadingSubmit = true;
51 53
           let paramsdata = {
52 54
             agreeOrNotCheck: this.radio,
53 55
             ids: [this.filingreviewdata.id],
@@ -58,8 +60,11 @@ export default {
58 60
               this.$modal.msgSuccess("提交成功");
59 61
               this.cancel();
60 62
               this.$emit("getcaseApply", this.queryParams);
63
+              this.loadingSubmit = false;
61 64
             })
62
-            .catch((err) => { });
65
+            .catch((err) => {
66
+              this.loadingSubmit = false;
67
+             });
63 68
         }
64 69
       });
65 70
     },

+ 20
- 5
src/views/caseManagement/components/formateCourtDialog.vue Voir le fichier

@@ -68,7 +68,7 @@
68 68
         </el-form-item>
69 69
       </el-form>
70 70
       <div slot="footer" class="dialog-footer">
71
-        <el-button type="primary" @click="submitForm" class="endbutton"
71
+        <el-button type="primary" @click="submitForm" class="endbutton" :loading="loadingSubmit"
72 72
           ><span>确 定</span></el-button
73 73
         >
74 74
         <el-button @click="cancel" class="endbutton1"
@@ -86,6 +86,7 @@ export default {
86 86
   data() {
87 87
     return {
88 88
       dataList: [],
89
+      loadingSubmit: false,
89 90
       queryParams1: {
90 91
         pageNum: 1,
91 92
         pageSize: 10,
@@ -99,7 +100,7 @@ export default {
99 100
     };
100 101
   },
101 102
   created() {
102
-    this.getarbitrAtor();
103
+    // this.getarbitrAtor();
103 104
   },
104 105
   watch: {
105 106
     showformateCourt(val){
@@ -107,6 +108,7 @@ export default {
107 108
       this.Arbitor = ""
108 109
       if(val){
109 110
         this.isAgreePendTral = 1;
111
+        this.getarbitrAtor({caseId:this.formateCourtData.id});
110 112
       }
111 113
     },
112 114
     formateCourtData: {
@@ -121,8 +123,9 @@ export default {
121 123
   },
122 124
   methods: {
123 125
     // 获取仲裁员信息
124
-    getarbitrAtor() {
125
-      arbitrAtor({}).then((res) => {
126
+    getarbitrAtor(val) {
127
+      console.log(val,"ppppppppppppppppppp")
128
+      arbitrAtor(val).then((res) => {
126 129
         this.dataList = res.rows;
127 130
         // console.log(this.dataList, "this.dataList");
128 131
       });
@@ -144,6 +147,9 @@ export default {
144 147
         this.paramsdata = {
145 148
           id: this.formateCourtData.id,
146 149
           arbitrators: this.arbitrators,
150
+          arbitratorId:this.formateCourtData.arbitratorId,
151
+          arbitratorName:this.formateCourtData.arbitratorName
152
+          
147 153
         };
148 154
       } else {
149 155
         if (this.isAgreePendTral == 0) {
@@ -151,24 +157,33 @@ export default {
151 157
             isAgreePendTral: 0,
152 158
             id: this.formateCourtData.id,
153 159
             arbitrators: this.arbitrators,
160
+            arbitratorId:this.formateCourtData.arbitratorId,
161
+            arbitratorName:this.formateCourtData.arbitratorName
154 162
           };
155 163
         } else {
156 164
           this.paramsdata = {
157 165
             isAgreePendTral: 1,
158 166
             id: this.formateCourtData.id,
167
+            arbitratorId:this.formateCourtData.arbitratorId,
168
+            arbitratorName:this.formateCourtData.arbitratorName
159 169
           };
160 170
         }
161 171
       }
172
+      console.log(this.paramsdata)
162 173
       this.$refs["formateCourtform"].validate((valid) => {
163 174
         if (valid) {
175
+           this.loadingSubmit = true;
164 176
           pendTralCheck(this.paramsdata).then((res) => {
165 177
             
166 178
             this.cancel();
167 179
             this.$modal.msgSuccess("组庭成功");
168 180
             this.$emit("getcaseApply", this.queryParams);
181
+            this.loadingSubmit = false;
169 182
             // 初始化页面
170 183
             this.formateCourtform={}
171
-          });
184
+          }).catch((err) => {
185
+              this.loadingSubmit = false;
186
+            });;
172 187
         }
173 188
       });
174 189
     },

+ 389
- 0
src/views/caseManagement/components/judgmentInformation.vue Voir le fichier

@@ -0,0 +1,389 @@
1
+<template>
2
+  <div>
3
+    <el-dialog :title="title" :visible="openDialogInfor" width="1000px" @close="cancel" :destroy-on-close="true">
4
+      <el-descriptions title="案件信息" border style="margin-bottom: 30px">
5
+        <el-descriptions-item label="案件编号">{{
6
+          form.caseNum
7
+        }}</el-descriptions-item>
8
+        <el-descriptions-item label="案件标的">{{
9
+          form.caseSubjectAmount
10
+        }}</el-descriptions-item>
11
+        <el-descriptions-item label="借款开始日期">{{
12
+          form.loanStartDate
13
+        }}</el-descriptions-item>
14
+        <el-descriptions-item label="借款结束日期">{{
15
+          form.loanEndDate
16
+        }}</el-descriptions-item>
17
+        <el-descriptions-item label="合同编号">{{
18
+          form.contractNumber
19
+        }}</el-descriptions-item>
20
+        <el-descriptions-item label="申请人主张欠本金">{{
21
+          form.claimPrinciOwed
22
+        }}</el-descriptions-item>
23
+        <el-descriptions-item label="申请人主张欠利息">{{
24
+          form.claimInterestOwed
25
+        }}</el-descriptions-item>
26
+        <el-descriptions-item label="申请人主张违约金">{{
27
+          form.claimLiquidDamag
28
+        }}</el-descriptions-item>
29
+        <el-descriptions-item label="申请人案件证据资料">
30
+          <p @click="toFile(index, 2)" v-for="(item, index) in applicantFileArr" :key="index">
31
+            <a href="#">{{ item }}</a>
32
+          </p>
33
+        </el-descriptions-item>
34
+        <el-descriptions-item label="被申请人案件证据资料">
35
+          <p v-for="(item, index) in respondentFileArr" :key="index" @click="toFile(index, 6)">
36
+            <a href="#">{{ item }}</a>
37
+          </p>
38
+        </el-descriptions-item>
39
+        <el-descriptions-item label="裁决书附件">
40
+          <p v-for="(item, index) in awardFileArr" :key="index" @click="toFile(index, 3)">
41
+            <a href="#">{{ item }}</a>
42
+          </p>
43
+        </el-descriptions-item>
44
+        <el-descriptions-item label="庭审笔录附件">
45
+          <p v-for="(item, index) in bookFileArr" :key="index" @click="toFile(index, 7)">
46
+            <a href="#">{{ item }}</a>
47
+          </p>
48
+        </el-descriptions-item>
49
+      </el-descriptions>
50
+      <el-form ref="form" :model="arbitrateRecord" label-width="300px" label-position="left" :rules="rules"
51
+        :disabled="flag == 3">
52
+        <!-- <el-form-item label="经庭审质证,对各方提供的证据认定如下" prop="evidenDetermi">
53
+          <el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
54
+            v-model="arbitrateRecord.evidenDetermi" />
55
+        </el-form-item>
56
+        <el-form-item label="仲裁庭经审理查明(写明仲裁庭认定的事实)" prop="factDetermi">
57
+          <el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
58
+            v-model="arbitrateRecord.factDetermi" />
59
+        </el-form-item>
60
+        <el-form-item label="综上所述" prop="caseSketch">
61
+          <el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
62
+            v-model="arbitrateRecord.caseSketch" />
63
+        </el-form-item>
64
+        <el-form-item label="本庭认为" prop="arbitrateThink">
65
+          <el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
66
+            v-model="arbitrateRecord.arbitrateThink" />
67
+        </el-form-item>
68
+        <el-form-item label="裁决如下" prop="rulingFollows">
69
+          <el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
70
+            v-model="arbitrateRecord.rulingFollows" />
71
+        </el-form-item>
72
+        <el-form-item label="核验裁决书意见:" prop="verificaOpinion">
73
+          <el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
74
+            v-model="arbitrateRecord.verificaOpinion" />
75
+        </el-form-item> -->
76
+        <el-form-item label="笔录内容:" prop="responCrossOpin">
77
+          <!-- <el-input type="textarea" :autosize="{ minRows: 6 }" v-model="arbitrateRecord.responCrossOpin" placeholder="请输入" /> -->
78
+          <el-input type="textarea" :autosize="{ minRows: 6 }" v-model="arbitrateRecordt.responCrossOpin"
79
+            placeholder="请输入" />
80
+        </el-form-item>
81
+        <el-form-item label="审核意见:" prop="checkOpinion" v-if="flag == 2 || flag == 4">
82
+          <el-input type="textarea" autosize placeholder="请输入内容" v-model="arbitrateRecord.checkOpinion" />
83
+        </el-form-item>
84
+        <el-form-item label="驳回原因" prop="arbitrateReject" v-if="flag == 2 || flag == 4">
85
+          <el-input type="textarea" :rows="2" placeholder="请输入拒绝原因" v-model="arbitrateRecord.arbitrateReject"></el-input>
86
+        </el-form-item>
87
+      </el-form>
88
+      <!-- 画布 -->
89
+      <!-- <h4 v-if="flag == 3">签名区域</h4>
90
+      <div class="esign" v-if="flag == 3">
91
+        <vue-esign ref="esign" :width="900" :height="300" bgColor="#ffffff" />
92
+      </div> -->
93
+      <!-- 清除画布 -->
94
+      <div slot="footer" class="dialog-footer">
95
+        <!-- <el-button type="danger" @click="submitForm(4)" v-if="flag == 1">重新生成裁决书</el-button> -->
96
+        <el-button type="primary" @click="submitForm(0)" v-if="flag == 1">提 交</el-button>
97
+        <el-button type="primary" @click="submitForm(1)" v-if="flag == 2">同 意</el-button>
98
+        <el-button type="danger" @click="submitForm(2)" v-if="flag == 2">驳 回</el-button>
99
+        <el-button type="primary" @click="submitForm(3)" v-if="flag == 3">提 交</el-button>
100
+        <el-button type="primary" @click="submitForm(5)" v-if="flag == 4">同 意</el-button>
101
+        <el-button type="danger" @click="submitForm(6)" v-if="flag == 4">驳 回</el-button>
102
+        <el-button @click="cancel">取 消</el-button>
103
+      </div>
104
+    </el-dialog>
105
+  </div>
106
+</template>
107
+
108
+<script>
109
+import {
110
+  verificationArbitrateRecord,
111
+  checkArbitrateRecord,
112
+  adjudicationSignature,
113
+  regenerationDocument,
114
+  arbitratorCheckArbitrateRecord
115
+} from "@/api/awardManagement/awardManagement";
116
+export default {
117
+  props: ["openDialogInfor", "title", "flag", "awardDetailform","queryParams"],
118
+  data() {
119
+    return {
120
+      // key: value
121
+      arbitrateRecordt: {},
122
+      form: {},
123
+      arbitrateRecord: {
124
+        // checkOpinion:"同意"
125
+        checkOpinion: ""
126
+      },
127
+      // 表单校验
128
+      rules: {
129
+        evidenDetermi: [
130
+          {
131
+            required: true,
132
+            message: "不能为空",
133
+            trigger: "blur",
134
+          },
135
+        ],
136
+        factDetermi: [
137
+          {
138
+            required: true,
139
+            message: "不能为空",
140
+            trigger: "blur",
141
+          },
142
+        ],
143
+        caseSketch: [
144
+          {
145
+            required: true,
146
+            message: "不能为空",
147
+            trigger: "blur",
148
+          },
149
+        ],
150
+        arbitrateThink: [
151
+          {
152
+            required: true,
153
+            message: "不能为空",
154
+            trigger: "blur",
155
+          },
156
+        ],
157
+        rulingFollows: [
158
+          {
159
+            required: true,
160
+            message: "不能为空",
161
+            trigger: "blur",
162
+          },
163
+        ],
164
+        verificaOpinion: [
165
+          {
166
+            required: true,
167
+            message: "意见不能为空",
168
+            trigger: "blur",
169
+          },
170
+        ],
171
+        checkOpinion: [
172
+          {
173
+            required: true,
174
+            message: "意见不能为空",
175
+            trigger: "blur",
176
+          },
177
+        ],
178
+        // arbitrateReject: [
179
+        //   {
180
+        //     required: true,
181
+        //     message: "拒绝原因不能为空",
182
+        //     trigger: "blur",
183
+        //   },
184
+        // ],
185
+      },
186
+      applicantFileArr: [], //申请人
187
+      applicantPathArr: [], //申请人
188
+      respondentFileArr: [], //被申请人
189
+      respondenPathArr: [], //被申请人
190
+      awardFileArr: [], //庭审笔录文件
191
+      awardPathArr: [], //庭审笔录路径
192
+      bookFileArr: [], //裁决书文件
193
+      bookPathArr: [], //庭审笔录路径
194
+    };
195
+  },
196
+  watch: {
197
+    awardDetailform: {
198
+      handler(val) {
199
+        if (val) {
200
+          (this.applicantFileArr = []), //申请人
201
+            (this.applicantPathArr = []), //申请人
202
+            (this.respondentFileArr = []), //被申请人
203
+            (this.respondenPathArr = []), //被申请人
204
+            (this.awardFileArr = []), //裁决书
205
+            (this.awardPathArr = []), //裁决书
206
+            // setTimeout(() => {
207
+            this.form = this.awardDetailform;
208
+            console.log(this.form)
209
+          // if(this.form.arbitrateRecord && this.form.arbitrateRecord.checkOpinion == null ){
210
+          // this.form.arbitrateRecord.checkOpinion = '同意';
211
+          this.arbitrateRecord.checkOpinion = '';
212
+          // }
213
+          this.arbitrateRecord = {};
214
+          if (this.form.arbitrateRecord) {
215
+            this.arbitrateRecord.id = this.form.arbitrateRecord.id;
216
+          }
217
+          this.evidenceFile(this.form);
218
+          // }, 1000);
219
+        }
220
+      },
221
+    },
222
+  },
223
+  methods: {
224
+    // 申请人裁决书
225
+    evidenceFile(val) {
226
+      if (val) {
227
+        this.applicantFileArr = [];
228
+        this.applicantPathArr = [];
229
+        this.respondentFileArr = [];
230
+        this.respondenPathArr = [];
231
+        this.awardFileArr = [];
232
+        this.awardPathArr = [];
233
+        this.bookFileArr = [];
234
+        this.bookPathArr = [];
235
+        val.caseAttachList.forEach((item) => {
236
+          if (item.annexType == 2) {
237
+            this.applicantFileArr.push(item.annexName);
238
+            this.applicantPathArr.push(item.annexPath);
239
+          } else if (item.annexType == 6) {
240
+            this.respondentFileArr.push(item.annexName);
241
+            this.respondenPathArr.push(item.annexPath);
242
+          } else if (item.annexType == 3) {
243
+            this.awardFileArr.push(item.annexName);
244
+            this.awardPathArr.push(item.annexPath);
245
+          } else if (item.annexType == 7) {
246
+            this.bookFileArr.push(item.annexName);
247
+            this.bookPathArr.push(item.annexPath);
248
+          }
249
+        });
250
+      }
251
+    },
252
+    // 预览文件
253
+    toFile(index, val) {
254
+      let headPath = window.location.origin + "/API";
255
+      if (val == 2) {
256
+        window.open(headPath + this.applicantPathArr[index], "_blank");
257
+      } else if (val == 6) {
258
+        window.open(headPath + this.respondenPathArr[index], "_blank");
259
+      } else if (val == 3) {
260
+        window.open(headPath + this.awardPathArr[index], "_blank");
261
+      } else if (val == 7) {
262
+        window.open(headPath + this.bookPathArr[index], "_blank");
263
+      }
264
+    },
265
+    // 校验裁决书
266
+    verificationArbitrateRecordFn(parms) {
267
+      verificationArbitrateRecord(parms).then((res) => {
268
+        this.cancel();
269
+        // this.$emit("updataList");
270
+        this.$emit("getcaseApply", this.queryParams);
271
+        this.$message("成功");
272
+      });
273
+    },
274
+    //审核裁决书
275
+    checkArbitrateRecordFn(parms) {
276
+      checkArbitrateRecord(parms).then((res) => {
277
+        this.cancel();
278
+        // this.$emit("updataList");
279
+        this.$emit("getcaseApply", this.queryParams);
280
+        this.$message("成功");
281
+      });
282
+    },
283
+    // 仲裁员审核裁决书
284
+    arbitratorCheckArbitrateRecordFn(parms) {
285
+      arbitratorCheckArbitrateRecord(parms).then((res) => {
286
+        this.cancel();
287
+        // this.$emit("updataList");
288
+        this.$emit("getcaseApply", this.queryParams);
289
+        this.$message("成功");
290
+      });
291
+    },
292
+    // 签名
293
+    adjudicationSignatureFn(parms) {
294
+      adjudicationSignature(parms).then((res) => {
295
+        this.cancel();
296
+        // this.$emit("updataList");
297
+        this.$emit("getcaseApply", this.queryParams);
298
+        this.$message("成功");
299
+      })
300
+    },
301
+    // 重新生成裁决书
302
+    getRegenerationDocument(params) {
303
+      regenerationDocument(params).then(res => {
304
+        console.log(res.data, "重新生成裁决书");
305
+        this.awardFileArr = [];
306
+        this.awardPathArr = [];
307
+        this.awardFileArr[0] = res.data.annexName;
308
+        this.awardPathArr[0] = res.data.annexPath;
309
+      })
310
+    },
311
+    submitForm(parms) {
312
+      let that = this;
313
+      this.$refs["form"].validate((valid) => {
314
+        if (valid) {
315
+          if (parms == 0) {
316
+            this.verificationArbitrateRecordFn({
317
+              id: this.form.id,
318
+              arbitrateRecord: this.arbitrateRecord,
319
+            });
320
+          } else if (parms == 1) {
321
+            this.checkArbitrateRecordFn({
322
+              id: this.form.id,
323
+              agreeOrNotCheck: 1,
324
+              arbitrateRecord: this.arbitrateRecord,
325
+            });
326
+          } else if (parms == 2) {
327
+            if (!that.arbitrateRecord.arbitrateReject == "") {
328
+              this.$message.error('请输入拒绝原因');
329
+              return
330
+            } else {
331
+              this.arbitrateRecord.deptorReject = this.arbitrateRecord.arbitrateReject;
332
+              delete this.arbitrateRecord.arbitrateReject;
333
+              this.checkArbitrateRecordFn({
334
+                id: this.form.id,
335
+                agreeOrNotCheck: 2,
336
+                arbitrateRecord: this.arbitrateRecord,
337
+              });
338
+            }
339
+          } else if (parms == 3) {
340
+            this.adjudicationSignatureFn({
341
+              id: this.form.id,
342
+            });
343
+          } else if (parms == 4) {
344
+            let paramsData = {};
345
+            paramsData.arbitrateRecord = this.arbitrateRecord;
346
+            paramsData.id = this.form.id
347
+            this.getRegenerationDocument(paramsData)
348
+          } else if (parms == 5) {
349
+            this.arbitratorCheckArbitrateRecordFn({
350
+              id: this.form.id,
351
+              agreeOrNotCheck: 1,
352
+              arbitrateRecord: this.arbitrateRecord,
353
+            });
354
+          } else if (parms == 6) {
355
+            debugger
356
+            if (!that.arbitrateRecord.arbitrateReject) {
357
+              this.$message.error('请输入拒绝原因');
358
+              return
359
+            } else {
360
+              this.arbitratorCheckArbitrateRecordFn({
361
+                id: this.form.id,
362
+                agreeOrNotCheck: 2,
363
+                arbitrateRecord: this.arbitrateRecord,
364
+              });
365
+            }
366
+          }
367
+        }
368
+      });
369
+    },
370
+    cancel() {
371
+      this.$emit("cancelpaymentdetailsCom");
372
+    },
373
+  },
374
+};
375
+</script>
376
+
377
+<style lang="scss" scoped>
378
+::v-deep .el-dialog {
379
+  border-radius: 30px;
380
+}
381
+
382
+.esign {
383
+  border: 1px solid;
384
+}
385
+
386
+a {
387
+  color: blue;
388
+}
389
+</style>

+ 149
- 0
src/views/caseManagement/components/mailawardDialog.vue Voir le fichier

@@ -0,0 +1,149 @@
1
+<template>
2
+  <!-- 送达裁决书页面 -->
3
+  <div>
4
+    <el-dialog
5
+      title="是否确认发送裁决书"
6
+      :visible="openMailawardDialog"
7
+      @close="cancel"
8
+      :destroy-on-close="true"
9
+      center
10
+    >
11
+      <el-form ref="form" :model="formData" label-width="150px">
12
+        <el-col :span="24">
13
+          <el-form-item
14
+            label="申请人电子邮件:"
15
+            prop="appEmail"
16
+            :rules="[
17
+              {
18
+                required: true,
19
+                message: '邮箱地址不能为空',
20
+                trigger: 'blur',
21
+              },
22
+              {
23
+                pattern:
24
+                  /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
25
+                message: '请输入正确的邮箱地址',
26
+                trigger: 'blur',
27
+              },
28
+            ]"
29
+          >
30
+            <el-input
31
+              v-model="formData.appEmail"
32
+              placeholder="请输入电子邮件"
33
+              disabled
34
+            />
35
+          </el-form-item>
36
+        </el-col>
37
+        <el-col :span="24">
38
+          <el-form-item
39
+            label="被申请人电子邮件:"
40
+            prop="resEmail"
41
+            :rules="[
42
+              {
43
+                required: true,
44
+                message: '邮箱地址不能为空',
45
+                trigger: 'blur',
46
+              },
47
+              {
48
+                pattern:
49
+                  /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
50
+                message: '请输入正确的邮箱地址',
51
+                trigger: 'blur',
52
+              },
53
+            ]"
54
+          >
55
+            <el-input
56
+              v-model="formData.resEmail"
57
+              placeholder="请输入电子邮件"
58
+              disabled
59
+            />
60
+          </el-form-item>
61
+        </el-col>
62
+        <!-- <el-col :span="24">
63
+          <el-form-item
64
+            label="申请人快递单号:"
65
+            prop="apptrackingNum"
66
+          >
67
+            <el-input
68
+              v-model="formData.apptrackingNum"
69
+              placeholder="请输入快递单号"
70
+            />
71
+          </el-form-item>
72
+        </el-col>
73
+        <el-col :span="24">
74
+          <el-form-item
75
+            label="被申请人快递单号:"
76
+            prop="restrackingNum"
77
+          >
78
+            <el-input
79
+              v-model="formData.restrackingNum"
80
+              placeholder="请输入快递单号"
81
+            />
82
+          </el-form-item>
83
+        </el-col> -->
84
+      </el-form>
85
+      <div slot="footer" class="dialog-footer">
86
+        <el-button type="primary" @click="submitForm">确 定</el-button>
87
+        <el-button type="" @click="cancel">取 消</el-button>
88
+      </div>
89
+    </el-dialog>
90
+  </div>
91
+</template>
92
+
93
+<script>
94
+import { adjudicationDelivery, adjudicationService } from "@/api/awardManagement/awardManagement";
95
+export default {
96
+  props: ["openMailawardDialog", "mailawardata", "emailobj","queryParams"],
97
+  data() {
98
+    return {
99
+      formData: this.emailobj,
100
+    };
101
+  },
102
+  watch: {
103
+    emailobj: {
104
+      handler(val) {
105
+        if (val) {
106
+          this.formData = this.emailobj
107
+        }
108
+      },
109
+    },
110
+  },
111
+  methods: {
112
+    submitForm() {
113
+      // adjudicationDelivery
114
+      this.$refs["form"].validate((valid) => {
115
+        if (valid) {
116
+          // adjudicationDelivery({
117
+            delete this.formData.id
118
+            delete this.formData.apptrackingNum
119
+            delete this.formData.restrackingNum
120
+          adjudicationService({
121
+            id: this.mailawardata.id,
122
+            ...this.formData,
123
+          })
124
+            .then((res) => {
125
+              if (res.code == 200) {
126
+                this.$modal.msgSuccess("提交成功");
127
+                // this.$emit("updataList");
128
+                this.$emit("getcaseApply", this.queryParams);
129
+                this.cancel();
130
+              }
131
+            })
132
+            .catch((err) => {});
133
+        }
134
+      });
135
+    },
136
+    cancel() {
137
+      this.$emit("closeMailaward");
138
+    },
139
+  },
140
+};
141
+</script>
142
+
143
+<style lang="scss" scoped>
144
+::v-deep .el-dialog {
145
+  width: 550px;
146
+  background: #ffffff;
147
+  border-radius: 20px;
148
+}
149
+</style>

+ 11
- 2
src/views/caseManagement/components/payDialog.vue Voir le fichier

@@ -57,9 +57,13 @@
57 57
         <div id="qrcodeImg"></div>
58 58
       </div>
59 59
       <div class="payTitle">{{ payMain }}</div>
60
+       <div v-if="form.payRejectReason">
61
+        <span>驳回原因:</span>
62
+        <div style="width:95%;">{{ form.payRejectReason }}</div>
63
+      </div>
60 64
       <div slot="footer" class="dialog-footer">
61 65
         <el-button @click="payCancel" class="endbutton"><span>取 消</span></el-button>
62
-        <el-button @click="submitUpload" class="endbutton"><span>确认缴费</span></el-button>
66
+        <el-button @click="submitUpload" class="endbutton" :loading="loadingSubmit"><span>确认缴费</span></el-button>
63 67
       </div>
64 68
     </el-dialog>
65 69
   </div>
@@ -78,6 +82,7 @@ export default {
78 82
       payMain: "",
79 83
       timer: null,
80 84
       paySelect: 1,//支付线上/线下
85
+      loadingSubmit: false,
81 86
       fileList: [],
82 87
       headers: {
83 88
         Authorization: "Bearer " + getToken(),
@@ -119,11 +124,15 @@ export default {
119 124
         this.$modal.msgError("请上传缴费凭证");
120 125
         return
121 126
       }
127
+      this.loadingSubmit = true;
122 128
       confirmPayDig(this.submitForm).then(res=>{
123 129
         this.$modal.msgSuccess("成功");
124 130
         this.payCancel()
125 131
         this.$emit("getcaseApply", this.queryParams);
126
-      })
132
+        this.loadingSubmit = false;
133
+      }).catch((err) => {
134
+              this.loadingSubmit = false;
135
+            });
127 136
     },
128 137
     handleRemove(file, fileList) {
129 138
       (this.submitForm.payOrderList = []),

+ 198
- 0
src/views/caseManagement/components/paymentdetailsDialog.vue Voir le fichier

@@ -0,0 +1,198 @@
1
+<template>
2
+  <div>
3
+    <el-dialog
4
+      :title="title"
5
+      :visible="openDialog"
6
+      @close="cancel"
7
+      :destroy-on-close="true"
8
+      center
9
+    >
10
+      <el-form ref="form" :model="form" label-width="120px">
11
+        <el-form-item label="案件编号:" prop="caseNum">
12
+          <el-input v-model="form.caseNum" placeholder="" :disabled="true" />
13
+        </el-form-item>
14
+        <el-form-item label="案件标的:" prop="caseSubjectAmount">
15
+          <el-input v-model="form.caseSubjectAmount" :disabled="true" />
16
+        </el-form-item>
17
+        <el-form-item label="缴费人:" prop="applicantName">
18
+          <el-input
19
+            v-model="form.applicantName"
20
+            placeholder=""
21
+            :disabled="true"
22
+          />
23
+        </el-form-item>
24
+        <el-form-item label="缴费金额:" prop="feePayable">
25
+          <el-input v-model="form.feePayable" :disabled="true" />
26
+        </el-form-item>
27
+        <!-- <el-form-item label="缴费截图:" prop="respondent">
28
+          <el-input v-model="form.Respondent" placeholder="" />
29
+        </el-form-item> -->
30
+        <el-form-item label="案件状态:" prop="caseStatusName">
31
+          <!-- <el-input v-model="form.caseStatusName" placeholder="" /> -->
32
+          <el-tag>{{ form.caseStatusName }}</el-tag>
33
+        </el-form-item>
34
+        <el-form-item label="支付状态:" prop="paymentStatusName">
35
+          <!-- <el-input v-model="form.paymentStatusName" placeholder="" /> -->
36
+          <el-tag effect="dark" type="success">
37
+            {{ form.paymentStatusName }}
38
+          </el-tag>
39
+        </el-form-item>
40
+        <el-form-item label="缴费凭证:" prop="caseStatusName">
41
+          <div
42
+            style="color: #104fad; cursor: pointer"
43
+            v-for="(item, index) in form.caseAttachList"
44
+            :key="index"
45
+            @click="preview(item.annexPath)"
46
+          >
47
+           <span v-if="item.annexType==8">{{ item.annexName }}</span> 
48
+          </div>
49
+          <!-- <el-tag>{{ form.caseStatusName }}</el-tag> -->
50
+        </el-form-item>
51
+        <!-- 判断缴费是否通过 -->
52
+        <el-form-item label="是否缴费通过:" v-if="flag == 0">
53
+          <el-radio-group v-model="agreeOrNotCheck">
54
+            <el-radio :label="1">同意</el-radio>
55
+            <el-radio :label="0">拒绝</el-radio>
56
+          </el-radio-group>
57
+        </el-form-item>
58
+        <!-- 缴费驳回原因-->
59
+        <el-form-item
60
+          label="拒绝原因:"
61
+          v-if="agreeOrNotCheck == 0"
62
+          prop="caseCheckReject"
63
+          :rules="[
64
+            { required: true, message: '请输入驳回原因', trigger: 'blur' },
65
+          ]"
66
+        >
67
+          <el-input
68
+            type="textarea"
69
+            :rows="2"
70
+            placeholder="请输入驳回原因"
71
+            v-model="form.caseCheckReject"
72
+          ></el-input>
73
+        </el-form-item>
74
+      </el-form>
75
+      <div slot="footer" class="dialog-footer">
76
+        <el-button
77
+          type="primary"
78
+          @click="submitForm"
79
+          v-if="flag == 0"
80
+          class="endbutton"
81
+          :loading="loadingSubmit"
82
+          >确认已缴费</el-button
83
+        >
84
+        <el-button @click="cancel" class="endbutton1">取 消</el-button>
85
+      </div>
86
+    </el-dialog>
87
+  </div>
88
+</template>
89
+
90
+<script>
91
+import { confirmPay } from "@/api/pay/pay";
92
+export default {
93
+  props: ["openDialog", "title", "flag", "detailform", "queryParams","getcaseApply"],
94
+  data() {
95
+    return {
96
+      // key: value
97
+      form: {},
98
+      srcList: [],
99
+      agreeOrNotCheck: 1,
100
+      loadingSubmit: false,
101
+    };
102
+  },
103
+  watch: {
104
+    detailform: {
105
+      handler(val) {
106
+        if (val) {
107
+          this.form = val;
108
+          console.log(val)
109
+        }
110
+      },
111
+    },
112
+    openDialog: {
113
+      handler(val) {
114
+        if (val) {
115
+          this.agreeOrNotCheck = 1;
116
+        }
117
+      },
118
+    },
119
+  },
120
+  methods: {
121
+    preview(data) {
122
+      window.open(window.location.origin + "/API" + data, "_blank");
123
+    },
124
+    // 确认缴费
125
+    submitForm() {
126
+      let paramsVal = {
127
+        ids:[this.form.id],
128
+        agreeOrNotCheck:this.agreeOrNotCheck,
129
+        caseCheckReject:this.form.caseCheckReject
130
+      }
131
+      this.$refs["form"].validate((valid) => {
132
+        if (valid) {
133
+          this.loadingSubmit = true;
134
+          confirmPay(paramsVal).then((res) => {
135
+            this.$message({
136
+              message: "确认成功",
137
+              type: "success",
138
+            });
139
+            this.loadingSubmit = false;
140
+            if (res.code == 200) {
141
+                this.getcaseApply(this.queryParams)
142
+            //   this.getList();
143
+            }
144
+          }).catch((err) => {
145
+              this.loadingSubmit = false;
146
+            });
147
+          this.cancel();
148
+        }
149
+      });
150
+    },
151
+    cancel() {
152
+      this.$emit("cancelpaymentdetails");
153
+    },
154
+  },
155
+};
156
+</script>
157
+
158
+<style lang="scss" scoped>
159
+::v-deep .el-dialog {
160
+  width: 50%;
161
+  background: #ffffff;
162
+  border-radius: 20px;
163
+}
164
+
165
+.endbutton {
166
+  width: 124px;
167
+  height: 37px;
168
+  background: #0072ff;
169
+  border-radius: 19px;
170
+
171
+  span {
172
+    width: 32px;
173
+    height: 15px;
174
+    font-size: 16px;
175
+    font-family: Microsoft YaHei;
176
+    font-weight: 400;
177
+    color: #ffffff;
178
+    // line-height: 48px;
179
+  }
180
+}
181
+
182
+.endbutton1 {
183
+  width: 124px;
184
+  height: 37px;
185
+  background: #ffffff;
186
+  border: 1px solid #d0d0d0;
187
+  border-radius: 19px;
188
+
189
+  span {
190
+    width: 31px;
191
+    height: 13px;
192
+    font-size: 16px;
193
+    font-family: Microsoft YaHei;
194
+    font-weight: 400;
195
+    color: #959595;
196
+  }
197
+}
198
+</style>

+ 129
- 98
src/views/caseManagement/components/timeDialog.vue Voir le fichier

@@ -1,116 +1,147 @@
1 1
 <template>
2
-    <div>
3
-        <el-dialog title="修改开庭时间" :visible="timeVisable" @close="cancel" center :distroy-on-close="true">
4
-            <el-descriptions title="案件内容" :column="2" border>
5
-                <el-descriptions-item label="案件编号">{{ timeData.caseNum }}</el-descriptions-item>
6
-                <el-descriptions-item label="申请人(机构)">{{ timeData.applicantName }}</el-descriptions-item>
7
-                <el-descriptions-item label="案件标的">{{ timeData.caseSubjectAmount }}</el-descriptions-item>
8
-                <el-descriptions-item label="案件状态">
9
-                    <el-tag size="small">{{ timeData.caseStatusName }}</el-tag>
10
-                </el-descriptions-item>
11
-                <el-descriptions-item label="仲裁方式">{{ timeData.arbitratMethodName }}</el-descriptions-item>
12
-                <el-descriptions-item label="开庭时间">
13
-                    <el-date-picker v-model="loanStartDate" :picker-options="pickerOptions" type="datetime"
14
-                        placeholder="开庭时间">
15
-                    </el-date-picker>
16
-                </el-descriptions-item>
17
-
18
-            </el-descriptions>
19
-            <div slot="footer" class="dialog-footer">
20
-                <el-button @click="cancel" class="endbutton1"><span>取 消</span></el-button>
21
-                <el-button @click="submitTime" class="endbutton1"><span>提 交</span></el-button>
22
-            </div>
23
-        </el-dialog>
24
-    </div>
2
+  <div>
3
+    <el-dialog
4
+      title="修改开庭时间"
5
+      :visible="timeVisable"
6
+      @close="cancel"
7
+      center
8
+      :distroy-on-close="true"
9
+    >
10
+      <el-descriptions title="案件内容" :column="2" border>
11
+        <el-descriptions-item label="案件编号">{{
12
+          timeData.caseNum
13
+        }}</el-descriptions-item>
14
+        <el-descriptions-item label="申请人(机构)">{{
15
+          timeData.applicantName
16
+        }}</el-descriptions-item>
17
+        <el-descriptions-item label="案件标的">{{
18
+          timeData.caseSubjectAmount
19
+        }}</el-descriptions-item>
20
+        <el-descriptions-item label="案件状态">
21
+          <el-tag size="small">{{ timeData.caseStatusName }}</el-tag>
22
+        </el-descriptions-item>
23
+        <el-descriptions-item label="仲裁方式">{{
24
+          timeData.arbitratMethodName
25
+        }}</el-descriptions-item>
26
+        <el-descriptions-item label="开庭时间">
27
+          <el-date-picker
28
+            v-model="loanStartDate"
29
+            :picker-options="pickerOptions"
30
+            type="datetime"
31
+            placeholder="开庭时间"
32
+          >
33
+          </el-date-picker>
34
+        </el-descriptions-item>
35
+      </el-descriptions>
36
+      <div slot="footer" class="dialog-footer">
37
+        <el-button @click="cancel" class="endbutton1"
38
+          ><span>取 消</span></el-button
39
+        >
40
+        <el-button @click="submitTime" class="endbutton1" :loading="loadingSubmit"
41
+          ><span>提 交</span></el-button
42
+        >
43
+      </div>
44
+    </el-dialog>
45
+  </div>
25 46
 </template>
26 47
 <!-- hearDate -->
27 48
 <script>
28
-import { updateHeardate } from '@/api/caseManagement/caseManagement'
49
+import { updateHeardate } from "@/api/caseManagement/caseManagement";
29 50
 import { getToken } from "@/utils/auth";
30
-import { createRoomId, reservedConference, sendRoomNoMessage } from '@/api/meeting/index'
51
+import {
52
+  createRoomId,
53
+  reservedConference,
54
+  sendRoomNoMessage,
55
+} from "@/api/meeting/index";
31 56
 import moment from "moment";
32 57
 export default {
33
-    props: ["timeVisable", "timeData", "queryParams"],
34
-    data() {
35
-        return {
36
-            loanStartDate: "",
37
-            pickerOptions: {
38
-                disabledDate(time) {
39
-                    return time.getTime() <= Date.now() -1 * 24 * 3600 * 1000; // 禁用超过当前时间的日期
40
-                },
41
-                selectableRange: `${new Date()}- 23:59:59`,//这
42
-            },
43
-            roomId: null
44
-        };
45
-    },
46
-    watch: {
47
-        timeVisable(val) {
48
-            if (val) {
49
-                // this.getEvidenceList({ caseAppliId: this.timeData.id, annexTypeList: "2" })
50
-                this.loanStartDate = this.timeData.hearDate
51
-            }
58
+  props: ["timeVisable", "timeData", "queryParams"],
59
+  data() {
60
+    return {
61
+      loanStartDate: "",
62
+      loadingSubmit: false,
63
+      pickerOptions: {
64
+        disabledDate(time) {
65
+          return time.getTime() <= Date.now() - 1 * 24 * 3600 * 1000; // 禁用超过当前时间的日期
52 66
         },
67
+        selectableRange: `${new Date()}- 23:59:59`, //这
68
+      },
69
+      roomId: null,
70
+    };
71
+  },
72
+  watch: {
73
+    timeVisable(val) {
74
+      if (val) {
75
+        // this.getEvidenceList({ caseAppliId: this.timeData.id, annexTypeList: "2" })
76
+        this.loanStartDate = this.timeData.hearDate;
77
+      }
53 78
     },
54
-    created() {
55
-
79
+  },
80
+  created() {},
81
+  methods: {
82
+    cancel() {
83
+      this.$emit("cancelTime");
56 84
     },
57
-    methods: {
58
-        cancel() {
59
-            this.$emit("cancelTime");
60
-        },
61
-        // 获取房间号
62
-        async createRoomIdFn(data) {
63
-            await createRoomId(data).then(res => {
64
-                this.roomId = res.data;
65
-            })
66
-        },
67
-        // 预约会议
68
-        async reservedConferenceFn(data) {
69
-            await reservedConference(data).then(res => {
70
-                console.log(res, "PPPPPPPPPPPPPPPPPPPPPPPPP");
71
-            })
72
-        },
73
-        // 提交时间
74
-        async updateHeardateFn(data) {
75
-            await updateHeardate(data).then(res => {
76
-                this.$modal.msgSuccess("修改成功");
77
-                this.cancel();
78
-                this.$emit("getcaseApply", this.queryParams);
79
-            })
80
-        },
81
-        // 发送房间号短信
82
-        async sendRoomNoMessageFn(data) {
83
-            sendRoomNoMessage(data).then(res => {
84
-                console.log(res, "PPPPPPPPPPPPPPPPPPPPPPPPP");
85
-            })
86
-        },
87
-        async submitTime() {
88
-            this.loanStartDate = moment(
89
-                this.loanStartDate
90
-            ).format("YYYY-MM-DD HH:mm:ss");
91
-            await this.createRoomIdFn({ caseId: this.timeData.id });
92
-            await this.reservedConferenceFn({
93
-                caseId: this.timeData.id,
94
-                roomId: this.roomId,
95
-                scheduleStartTime: this.loanStartDate,
96
-            })
97
-            await this.updateHeardateFn({
98
-                id: this.timeData.id,
99
-                hearDate: this.loanStartDate
100
-            })
101
-            await this.sendRoomNoMessageFn({
102
-                id: this.timeData.id,
103
-                roomNo: this.roomId,
104
-                scheduleStartTime: this.loanStartDate
105
-            })
106
-        }
85
+    // 获取房间号
86
+    async createRoomIdFn(data) {
87
+      await createRoomId(data).then((res) => {
88
+        this.roomId = res.data;
89
+      });
90
+    },
91
+    // 预约会议
92
+    async reservedConferenceFn(data) {
93
+      await reservedConference(data).then((res) => {
94
+        console.log(res, "PPPPPPPPPPPPPPPPPPPPPPPPP");
95
+      });
96
+    },
97
+    // 提交时间
98
+    async updateHeardateFn(data) {
99
+      await updateHeardate(data).then((res) => {
100
+        this.$modal.msgSuccess("修改成功");
101
+        this.cancel();
102
+        this.$emit("getcaseApply", this.queryParams);
103
+        this.loadingSubmit = false;
104
+      }).catch((err) => {
105
+              this.loadingSubmit = false;
106
+       });;
107
+    },
108
+    // 发送房间号短信
109
+    async sendRoomNoMessageFn(data) {
110
+      sendRoomNoMessage(data).then((res) => {});
111
+    },
112
+    async submitTime() {
113
+      if (!this.loanStartDate) {
114
+        this.$message.error("请您选择开庭时间");
115
+        return;
116
+      } else {
117
+         this.loadingSubmit = true;
118
+        this.loanStartDate = moment(this.loanStartDate).format(
119
+          "YYYY-MM-DD HH:mm:ss"
120
+        );
121
+        await this.createRoomIdFn({ caseId: this.timeData.id });
122
+        await this.reservedConferenceFn({
123
+          caseId: this.timeData.id,
124
+          roomId: this.roomId,
125
+          scheduleStartTime: this.loanStartDate,
126
+        });
127
+        await this.updateHeardateFn({
128
+          id: this.timeData.id,
129
+          hearDate: this.loanStartDate,
130
+        });
131
+        await this.sendRoomNoMessageFn({
132
+          id: this.timeData.id,
133
+          roomNo: this.roomId,
134
+          scheduleStartTime: this.loanStartDate,
135
+        });
136
+      }
107 137
     },
138
+  },
108 139
 };
109 140
 </script>
110 141
   
111 142
 <style lang="scss" scoped>
112 143
 .steps {
113
-    display: flex;
114
-    flex-wrap: wrap;
144
+  display: flex;
145
+  flex-wrap: wrap;
115 146
 }
116 147
 </style>

+ 8
- 4
src/views/caseManagement/components/trialincourtDialog.vue Voir le fichier

@@ -310,7 +310,7 @@
310 310
         </el-col> -->
311 311
       </el-form>
312 312
       <div slot="footer" class="dialog-footer">
313
-        <el-button @click="submitForm" class="endbutton">
313
+        <el-button @click="submitForm" class="endbutton" :loading="loadingSubmit">
314 314
           <span>确定</span></el-button>
315 315
         <el-button @click="closeArbitrationresults" class="endbutton1"><span>取 消</span></el-button>
316 316
       </div>
@@ -356,7 +356,8 @@ export default {
356 356
       annexPath: "", //笔录文件地址
357 357
       roomId:null,
358 358
       startTime:"",
359
-      fileList:[]
359
+      fileList:[],
360
+      loadingSubmit: false,
360 361
     };
361 362
   },
362 363
   watch: {
@@ -457,7 +458,7 @@ export default {
457 458
     submitForm() {
458 459
       this.$refs["form2"].validate((valid) => {
459 460
         if (valid) {
460
-          
461
+          this.loadingSubmit = true;
461 462
           creatTrialRecordnew({
462 463
             caseAppliId: this.formData.id,
463 464
             // evidenDetermi: this.form2.evidenDetermi,
@@ -493,9 +494,12 @@ export default {
493 494
               console.log(this.form2)
494 495
               this.form2.respondentOpinion ="";
495 496
               this.form2.applicantOpinion = "";
497
+              this.loadingSubmit = false;
496 498
               
497 499
             })
498
-            .catch((err) => { });
500
+            .catch((err) => {
501
+              this.loadingSubmit = false;
502
+             });
499 503
         }
500 504
       });
501 505
     },

+ 10
- 3
src/views/formationCourt/components/formateCourtDialog.vue Voir le fichier

@@ -80,12 +80,19 @@ export default {
80 80
     };
81 81
   },
82 82
   created() {
83
-    this.getarbitrAtor();
83
+    // this.getarbitrAtor();
84
+  },
85
+  watch:{
86
+    showformateCourt(val){
87
+      if(val){
88
+        this.getarbitrAtor({caseId:this.formateCourtData.id});
89
+      }
90
+    }
84 91
   },
85 92
   methods: {
86 93
     // 获取仲裁员信息
87
-    getarbitrAtor() {
88
-      arbitrAtor({}).then((res) => {
94
+    getarbitrAtor(val) {
95
+      arbitrAtor(val).then((res) => {
89 96
         this.dataList = res.rows;
90 97
         this.total = res.total;
91 98
       });

+ 8
- 6
src/views/index.vue Voir le fichier

@@ -194,13 +194,15 @@ export default {
194 194
     },
195 195
     // 点击代办案件按钮
196 196
     pushPage(status) {
197
-      if (status == 0 || status == 1 || status == 2 || status == 5 || status == 6 || status == 7 || status == 31 || status == 8 || status == 9) {
197
+      if (status == 0 || status == 1 || status == 2 || status == 5 || status == 6 || status == 7 || status == 31 || status == 8 || status == 9||status == 3||status == 11 || status == 12 || status == 13 || status == 14 || status == 15 || status == 16 || status == 18) {
198 198
         this.$router.push({ name: 'CaseManagement/caseList', params: { status: status + '' } })
199
-      } else if (status == 11 || status == 12 || status == 13 || status == 14 || status == 15 || status == 16 || status == 18) {
200
-        this.$router.push({ name: 'AwardManagement/listofAwards', params: { status: status + '' } })
201
-      } else if (status == 3){
202
-        this.$router.push({ name: 'PaymentManagement/paymentList', params: { status: status + ''} })
203
-      }
199
+      } 
200
+      // else if (status == 11 || status == 12 || status == 13 || status == 14 || status == 15 || status == 16 || status == 18) {
201
+      //   this.$router.push({ name: 'AwardManagement/listofAwards', params: { status: status + '' } })
202
+      // }
203
+      //  else if (status == 3){
204
+      //   this.$router.push({ name: 'PaymentManagement/paymentList', params: { status: status + ''} })
205
+      // }
204 206
     }
205 207
     // goTarget(href) {
206 208
     //   window.open(href, "_blank");

+ 80
- 22
src/views/paymentManagement/components/paymentdetailsDialog.vue Voir le fichier

@@ -1,18 +1,28 @@
1 1
 <template>
2 2
   <div>
3
-    <el-dialog :title="title" :visible="openDialog" @close="cancel" :destroy-on-close="true" center>
4
-      <el-form ref="form" :model="form" label-width="90px" :disabled="true">
3
+    <el-dialog
4
+      :title="title"
5
+      :visible="openDialog"
6
+      @close="cancel"
7
+      :destroy-on-close="true"
8
+      center
9
+    >
10
+      <el-form ref="form" :model="form" label-width="120px">
5 11
         <el-form-item label="案件编号:" prop="caseNum">
6
-          <el-input v-model="form.caseNum" placeholder="" />
12
+          <el-input v-model="form.caseNum" placeholder="" :disabled="true" />
7 13
         </el-form-item>
8 14
         <el-form-item label="案件标的:" prop="caseSubjectAmount">
9
-          <el-input v-model="form.caseSubjectAmount" />
15
+          <el-input v-model="form.caseSubjectAmount" :disabled="true" />
10 16
         </el-form-item>
11 17
         <el-form-item label="缴费人:" prop="applicantName">
12
-          <el-input v-model="form.applicantName" placeholder="" />
18
+          <el-input
19
+            v-model="form.applicantName"
20
+            placeholder=""
21
+            :disabled="true"
22
+          />
13 23
         </el-form-item>
14 24
         <el-form-item label="缴费金额:" prop="feePayable">
15
-          <el-input v-model="form.feePayable" />
25
+          <el-input v-model="form.feePayable" :disabled="true" />
16 26
         </el-form-item>
17 27
         <!-- <el-form-item label="缴费截图:" prop="respondent">
18 28
           <el-input v-model="form.Respondent" placeholder="" />
@@ -28,14 +38,48 @@
28 38
           </el-tag>
29 39
         </el-form-item>
30 40
         <el-form-item label="缴费凭证:" prop="caseStatusName">
31
-          <div style="color: #104fad;cursor:pointer" v-for="(item, index) in form.payOrderList" :key="index" @click="preview(item.annexPath)">
41
+          <div
42
+            style="color: #104fad; cursor: pointer"
43
+            v-for="(item, index) in form.payOrderList"
44
+            :key="index"
45
+            @click="preview(item.annexPath)"
46
+          >
32 47
             {{ item.annexName }}
33 48
           </div>
34 49
           <!-- <el-tag>{{ form.caseStatusName }}</el-tag> -->
35 50
         </el-form-item>
51
+        <!-- 判断缴费是否通过 -->
52
+        <el-form-item label="是否缴费通过:" v-if="flag == 0">
53
+          <el-radio-group v-model="agreeOrNotCheck">
54
+            <el-radio :label="1">同意</el-radio>
55
+            <el-radio :label="0">拒绝</el-radio>
56
+          </el-radio-group>
57
+        </el-form-item>
58
+        <!-- 缴费驳回原因-->
59
+        <el-form-item
60
+          label="拒绝原因:"
61
+          v-if="agreeOrNotCheck == 0"
62
+          prop="caseCheckReject"
63
+          :rules="[
64
+            { required: true, message: '请输入驳回原因', trigger: 'blur' },
65
+          ]"
66
+        >
67
+          <el-input
68
+            type="textarea"
69
+            :rows="2"
70
+            placeholder="请输入驳回原因"
71
+            v-model="form.caseCheckReject"
72
+          ></el-input>
73
+        </el-form-item>
36 74
       </el-form>
37 75
       <div slot="footer" class="dialog-footer">
38
-        <el-button type="primary" @click="submitForm" v-if="flag == 0" class="endbutton">确认已缴费</el-button>
76
+        <el-button
77
+          type="primary"
78
+          @click="submitForm"
79
+          v-if="flag == 0"
80
+          class="endbutton"
81
+          >确认已缴费</el-button
82
+        >
39 83
         <el-button @click="cancel" class="endbutton1">取 消</el-button>
40 84
       </div>
41 85
     </el-dialog>
@@ -50,7 +94,8 @@ export default {
50 94
     return {
51 95
       // key: value
52 96
       form: {},
53
-      srcList: []
97
+      srcList: [],
98
+      agreeOrNotCheck: 1,
54 99
     };
55 100
   },
56 101
   watch: {
@@ -58,30 +103,43 @@ export default {
58 103
       handler(val) {
59 104
         if (val) {
60 105
           this.form = val;
61
-
106
+          console.log(val)
107
+        }
108
+      },
109
+    },
110
+    openDialog: {
111
+      handler(val) {
112
+        if (val) {
113
+          this.agreeOrNotCheck = 1;
62 114
         }
63 115
       },
64 116
     },
65 117
   },
66 118
   methods: {
67 119
     preview(data) {
68
-      window.open(
69
-        window.location.origin + "/API" + data,
70
-        "_blank"
71
-      );
120
+      window.open(window.location.origin + "/API" + data, "_blank");
72 121
     },
73 122
     // 确认缴费
74 123
     submitForm() {
75
-      confirmPay({ ids: [this.form.id] }).then((res) => {
76
-        this.$message({
77
-          message: "确认成功",
78
-          type: "success",
79
-        });
80
-        if (res.code == 200) {
81
-          this.getList();
124
+      let paramsVal = {
125
+        ids:[this.form.id],
126
+        agreeOrNotCheck:this.agreeOrNotCheck,
127
+        caseCheckReject:this.form.caseCheckReject
128
+      }
129
+      this.$refs["form"].validate((valid) => {
130
+        if (valid) {
131
+          confirmPay(paramsVal).then((res) => {
132
+            this.$message({
133
+              message: "确认成功",
134
+              type: "success",
135
+            });
136
+            if (res.code == 200) {
137
+              this.getList();
138
+            }
139
+          });
140
+          this.cancel();
82 141
         }
83 142
       });
84
-      this.cancel();
85 143
     },
86 144
     cancel() {
87 145
       this.$emit("cancelpaymentdetails");

+ 2
- 1
src/views/paymentManagement/paymentList.vue Voir le fichier

@@ -58,7 +58,7 @@
58 58
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
59 59
         <template slot-scope="scope">
60 60
           <el-button size="mini" type="text" icon="el-icon-zoom-in" @click="paymentconfirmationRow(scope.row)" 
61
-          v-if="checkPermi(['paymentManagement:list:payconfirm']) && btnStatus">缴费确认</el-button>
61
+          v-if="checkPermi(['paymentManagement:list:payconfirm']) && btnStatus&&scope.row.caseStatus==3">缴费确认</el-button>
62 62
           <el-button size="mini" type="text" icon="el-icon-edit" @click="viewpaymentformRow(scope.row)"
63 63
             v-hasPermi="['paymentManagement:list:detail']">查看缴费单</el-button>
64 64
         </template>
@@ -192,6 +192,7 @@ export default {
192 192
     },
193 193
     // 缴费确认
194 194
     paymentconfirmationRow(row) {
195
+      console.log(row)
195 196
       //   console.log("缴费确认", row);
196 197
       this.getDetail({ id: row.id });
197 198
       this.openDialog = true;

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

@@ -12,8 +12,8 @@ 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:8001'  //测试
16
-// const API = 'http://192.168.3.18:8001'  //B
15
+//  const API = 'http://121.40.189.20:8001'  //测试
16
+const API = 'http://172.16.1.26:8001'  //Bs
17 17
 // const API = 'http://192.168.3.77:9001' //Q
18 18
 // const API = 'http://172.16.1.26:8001' //W
19 19