Ver código fonte

被申请人缴费

hanchaobo 2 anos atrás
pai
commit
705410da56

+ 42
- 9
src/views/caseManagement/caseList.vue Ver arquivo

@@ -33,7 +33,7 @@
33 33
         </el-form>
34 34
         <el-row :gutter="10" class="mb8">
35 35
             <el-col :span="1.5">
36
-                <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="addCase(2)">新增案件</el-button>
36
+                <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="addCase()">新增案件</el-button>
37 37
             </el-col>
38 38
             <el-col :span="1.5">
39 39
                 <el-button type="primary" plain icon="el-icon-plus" size="mini"
@@ -60,7 +60,7 @@
60 60
             <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
61 61
                 <template slot-scope="scope">
62 62
                     <!-- <el-button size="mini" type="text" icon="el-icon-check" @click="onsubmitRow(scope.row)" v-if="statusRole(scope.row.caseFlowId)">提交</el-button> -->
63
-                    <el-button size="mini" @click="eidtNodeprocess(scope.row,1)" type="text"
63
+                    <el-button size="mini" @click="eidtNodeprocess(scope.row)" type="text"
64 64
                         icon="el-icon-edit" v-hasPermi="['caseManagement:list:edit']">修改</el-button>
65 65
                     <el-button size="mini" @click="checkDetail(scope.row)" type="text" icon="el-icon-view">查看详情</el-button>
66 66
                     <!-- <el-button size="mini" @click="consultantApplica(scope.row)" type="text" icon="el-icon-tickets">法律顾问用印申请</el-button> -->
@@ -116,6 +116,9 @@
116 116
         <!-- 案件受理 -->
117 117
         <caseAcceptance :showAcceptance="showAcceptance" @cancelAcceptance="cancelAcceptance"
118 118
             :caseAcceptanceData="caseAcceptanceData" @getList="getList"></caseAcceptance>
119
+        <!-- 被申请人缴费 -->
120
+        <respondentPay :openResPay="openResPay" :resPayTitle="resPayTitle" :formResPayDetail="formResPayDetail" :resPayId="resPayId" :resPayForm="resPayForm"
121
+            :queryParams="queryParams" @getList="getList" @paycancelRes="paycancelRes" :formResPay="formResPay"></respondentPay>    
119 122
         <!-- 调解员弹窗 -->
120 123
         <selectMediator @cancelMediator="cancelMediator" :mediatorVisable="mediatorVisable" :mediatorData="mediatorData"
121 124
             @getList="getList" :queryParams="queryParams"></selectMediator>
@@ -149,6 +152,7 @@ import caseCompressionPackage from './components/caseCompressionPackage.vue';
149 152
 import mediationCaseDetails from './components/mediationCaseDetails.vue'
150 153
 import mediationCaseLog from './components/mediationCaseLog.vue'
151 154
 import payDialog from "./components/payDialog.vue";
155
+import respondentPay from "./components/respondentPay.vue"
152 156
 import paymentdetailsDialog from './components/paymentdetailsDialog.vue'
153 157
 import caseAcceptance from './components/caseAcceptance.vue'
154 158
 import selectMediator from './components/selectMediator.vue'
@@ -176,7 +180,8 @@ export default {
176 180
         timeConfirm,
177 181
         mediation,
178 182
         confirmMediation,
179
-        caseFilingDetailsPage
183
+        caseFilingDetailsPage,
184
+        respondentPay
180 185
     },
181 186
     data() {
182 187
         return {
@@ -195,9 +200,13 @@ export default {
195 200
             dataList: [],
196 201
             addVisable: false,//新增弹窗
197 202
             openPay: false, //缴费弹框
203
+            openResPay:false,//被申请人缴费弹窗
198 204
             formPayDetail: {},
205
+            formResPayDetail:{},
199 206
             payId: null,
207
+            resPayId:null,
200 208
             payForm: {},
209
+            resPayForm:{},
201 210
             openCompressedPackages: false,//压缩包导入弹窗
202 211
             processVisable: false,//案件详情
203 212
             showcaseLog: false,//案件日志
@@ -207,6 +216,7 @@ export default {
207 216
             mediationVisable:false,//待调解弹窗
208 217
             mediationData:{},
209 218
             payTitle:"",//缴费标题
219
+            resPayTitle:'',//被申请人缴费标题
210 220
             paymentConfirma:{},//缴费确认
211 221
             showAcceptance:false,//案件受理弹框
212 222
             caseAcceptanceData:{},//案件受理数据
@@ -222,6 +232,7 @@ export default {
222 232
             detailsAwardNum:{},
223 233
             flagLoadingS: true,
224 234
             formPayDetailAffiliate:{},
235
+            formResPay:{},
225 236
             mediatorData:{},
226 237
             flag: null,
227 238
             caseData: {},
@@ -254,7 +265,7 @@ export default {
254 265
             }else if(type == 2){
255 266
                 // 缴费
256 267
                 this.payStatus(val);
257
-            }else if(type == 3){
268
+            }else if(type == 3 || type == 45){
258 269
                 // 确认缴费
259 270
                 this.paymentconfirmationRow(val);
260 271
             }else if(type == 4){
@@ -297,6 +308,9 @@ export default {
297 308
                 this.receivedMediation(val)
298 309
             }else if(type == 17){
299 310
                 //结束
311
+            }else if(type == 44){
312
+                // 被申请人缴费
313
+                this.resPayStatus(val)
300 314
             }
301 315
         },
302 316
         /**查询按钮列表 */
@@ -313,8 +327,8 @@ export default {
313 327
             })
314 328
         },
315 329
         /** 新增案件 */
316
-        addCase(val) {
317
-            this.addModifyData =val;
330
+        addCase() {
331
+            this.addModifyData =1;
318 332
             this.addVisable = true;
319 333
             this.caseData = {};
320 334
             this.caseDisabled = false;
@@ -322,15 +336,15 @@ export default {
322 336
         },
323 337
         /** 查看详情 */
324 338
         checkDetail(val) {
339
+            this.addModifyData =2;
325 340
             this.addVisable = true;
326 341
             this.caseData = val;
327
-            this.caseData.flag = 1;
328 342
             this.caseDisabled = true;
329 343
             this.tabFlag = true;
330 344
         },
331 345
         /** 修改案件 */
332 346
         eidtNodeprocess(row,val) {
333
-            this.addModifyData = val
347
+            this.addModifyData = 3
334 348
             this.addVisable = true;
335 349
             this.caseData = row;
336 350
             this.caseDisabled = false;
@@ -343,10 +357,17 @@ export default {
343 357
         /** 缴费 */
344 358
         payStatus(val) {
345 359
             this.getDetail({ id: val.id });
346
-            this.payTitle = "缴费";
360
+            this.payTitle = "申请人缴费";
347 361
             this.payId = val.id;
348 362
             this.openPay = true;
349 363
         },
364
+        /** 被申请人缴费 */
365
+        resPayStatus(val) {
366
+            this.getResDetail({ id: val.id });
367
+            this.resPayTitle = "被申请人缴费";
368
+            this.resPayId = val.id;
369
+            this.openResPay = true;
370
+        },
350 371
         /** 列表提交立案 */
351 372
         onsubmitRow(row) {
352 373
             this.$modal
@@ -387,6 +408,14 @@ export default {
387 408
                 this.payForm.caseId = res.data.id;
388 409
             });
389 410
         },
411
+        getResDetail(parms) {
412
+            caseApplicationSelectById(parms).then((res) => {
413
+                this.formResPayDetail = res.data;
414
+                this.formResPay = res.data.affiliate;
415
+                this.resPayForm.feePayable = res.data.feePayable;
416
+                this.resPayForm.caseId = res.data.id;
417
+            });
418
+        },
390 419
         /** 确认调解员 */
391 420
         secretaryConfirm(val) {
392 421
             this.confirmVisable = true;
@@ -444,6 +473,10 @@ export default {
444 473
         paycancelRow(row) {
445 474
             this.openPay = false;
446 475
         },
476
+        /**被申请人取消缴费*/
477
+        paycancelRes(row) {
478
+            this.openResPay = false;
479
+        },
447 480
         /** 取消调解员弹窗 */
448 481
         cancelMediator() {
449 482
             this.mediatorVisable = false;

+ 290
- 533
src/views/caseManagement/components/addCase.vue Ver arquivo

@@ -1,27 +1,14 @@
1 1
 <template>
2 2
   <div>
3
-    <el-dialog
4
-      :title="title"
5
-      :visible="addVisable"
6
-      v-if="addVisable"
7
-      @close="cancel"
8
-      width="1000px"
9
-      center
10
-      :distroy-on-close="true"
11
-    >
3
+    <el-dialog :title="title" :visible="addVisable" v-if="addVisable" @close="cancel" width="1000px" center
4
+      :distroy-on-close="true">
12 5
       <el-tabs v-model="activeName">
13 6
         <el-tab-pane label="案件信息" name="first"> </el-tab-pane>
14 7
         <el-tab-pane label="证据清单" name="second" v-if="tabFlag">
15 8
         </el-tab-pane>
16 9
       </el-tabs>
17
-      <el-form
18
-        v-if="activeName == 'first'"
19
-        :disabled="caseDisabled"
20
-        :model="formData"
21
-        ref="ruleForm"
22
-        label-width="130px"
23
-        class="demo-ruleForm"
24
-      >
10
+      <el-form v-if="activeName == 'first'" :disabled="caseDisabled" :model="formData" ref="ruleForm" label-width="130px"
11
+        class="demo-ruleForm">
25 12
         <el-row>
26 13
           <div style="display: inline-flex">
27 14
             <div class="infoIcon"></div>
@@ -29,43 +16,27 @@
29 16
           </div>
30 17
           <el-divider></el-divider>
31 18
           <el-col :span="24">
32
-            <el-form-item
33
-              label="申请人调解请求"
34
-              prop="arbitratClaims"
35
-              :rules="[
36
-                {
37
-                  required: true,
38
-                  message: '申请人调解请求不能为空',
39
-                  trigger: 'blur',
40
-                },
41
-              ]"
42
-            >
43
-              <el-input
44
-                v-model="formData.arbitratClaims"
45
-                placeholder="请输入申请人调解诉求"
46
-                type="textarea"
47
-                :autosize="{ minRows: 4, maxRows: 8 }"
48
-              />
19
+            <el-form-item label="申请人调解请求" prop="arbitratClaims" :rules="[
20
+              {
21
+                required: true,
22
+                message: '申请人调解请求不能为空',
23
+                trigger: 'blur',
24
+              },
25
+            ]">
26
+              <el-input v-model="formData.arbitratClaims" placeholder="请输入申请人调解诉求" type="textarea"
27
+                :autosize="{ minRows: 4, maxRows: 8 }" />
49 28
             </el-form-item>
50 29
           </el-col>
51 30
           <el-col :span="24">
52
-            <el-form-item
53
-              label="事实和理由"
54
-              prop="facts"
55
-              :rules="[
56
-                {
57
-                  required: true,
58
-                  message: '事实和理由不能为空',
59
-                  trigger: 'blur',
60
-                },
61
-              ]"
62
-            >
63
-              <el-input
64
-                v-model="formData.facts"
65
-                placeholder="请输入事实和理由"
66
-                type="textarea"
67
-                :autosize="{ minRows: 4, maxRows: 8 }"
68
-              />
31
+            <el-form-item label="事实和理由" prop="facts" :rules="[
32
+              {
33
+                required: true,
34
+                message: '事实和理由不能为空',
35
+                trigger: 'blur',
36
+              },
37
+            ]">
38
+              <el-input v-model="formData.facts" placeholder="请输入事实和理由" type="textarea"
39
+                :autosize="{ minRows: 4, maxRows: 8 }" />
69 40
             </el-form-item>
70 41
           </el-col>
71 42
           <!-- <el-col :span="24">
@@ -81,69 +52,35 @@
81 52
                         </el-form-item>
82 53
                     </el-col> -->
83 54
           <el-col :span="12">
84
-            <el-form-item
85
-              label="案件标的"
86
-              prop="caseSubjectAmount"
87
-              :rules="[
88
-                {
89
-                  required: true,
90
-                  message: '案件标的不能为空',
91
-                  trigger: 'blur',
92
-                },
93
-              ]"
94
-            >
95
-              <el-input
96
-                v-model="formData.caseSubjectAmount"
97
-                placeholder="请输入案件标的"
98
-              />
55
+            <el-form-item label="案件标的" prop="caseSubjectAmount" :rules="[
56
+              {
57
+                required: true,
58
+                message: '案件标的不能为空',
59
+                trigger: 'blur',
60
+              },
61
+            ]">
62
+              <el-input v-model="formData.caseSubjectAmount" placeholder="请输入案件标的" />
99 63
             </el-form-item>
100 64
           </el-col>
101 65
           <el-col :span="24">
102
-            <el-form-item
103
-              label="调解模板"
104
-              prop="templateId"
105
-              :rules="[
106
-                {
107
-                  required: true,
108
-                  message: '调解模板',
109
-                  trigger: 'blur',
110
-                },
111
-              ]"
112
-            >
113
-              <el-select
114
-                placeholder="请选择调解模板"
115
-                v-model="formData.templateId"
116
-              >
117
-                <el-option
118
-                  v-for="item in templateList"
119
-                  :label="item.temName"
120
-                  :key="item.id"
121
-                  :value="item.id"
122
-                ></el-option>
66
+            <el-form-item label="调解模板" prop="templateId" :rules="[
67
+              {
68
+                required: true,
69
+                message: '调解模板',
70
+                trigger: 'blur',
71
+              },
72
+            ]">
73
+              <el-select placeholder="请选择调解模板" v-model="formData.templateId">
74
+                <el-option v-for="item in templateList" :label="item.temName" :key="item.id" :value="item.id"></el-option>
123 75
               </el-select>
124 76
             </el-form-item>
125 77
           </el-col>
126 78
           <el-col :span="12">
127
-            <el-form-item
128
-              label="申请人案件证据资料上传:"
129
-              prop="applicantEvidence"
130
-            >
131
-              <el-upload
132
-                class="upload-demo"
133
-                ref="fileupload"
134
-                accept=".png,.jpg,.doc,.docx,.txt,.pdf"
135
-                :action="UploadUrl()"
136
-                :on-success="handlSuccess"
137
-                :on-remove="handleRemove"
138
-                :on-preview="handlePreview"
139
-                :before-remove="beforeRemove"
140
-                :data="filedata"
141
-                :headers="headers"
142
-                multiple
143
-                :limit="50"
144
-                :on-exceed="handleExceed"
145
-                :file-list="fileList"
146
-              >
79
+            <el-form-item label="申请人案件证据资料上传:" prop="applicantEvidence">
80
+              <el-upload class="upload-demo" ref="fileupload" accept=".png,.jpg,.doc,.docx,.txt,.pdf"
81
+                :action="UploadUrl()" :on-success="handlSuccess" :on-remove="handleRemove" :on-preview="handlePreview"
82
+                :before-remove="beforeRemove" :data="filedata" :headers="headers" multiple :limit="50"
83
+                :on-exceed="handleExceed" :file-list="fileList">
147 84
                 <el-button size="small" type="primary">点击上传</el-button>
148 85
                 <div slot="tip" class="el-upload__tip">
149 86
                   文件支持上传.jpg,png,.doc,docx,.txt,.pdf文件
@@ -153,15 +90,8 @@
153 90
           </el-col>
154 91
           <el-col :span="24" v-if="modelFlag">
155 92
             <el-form-item label="证据:">
156
-              <div
157
-                v-for="(item, index) in formData.caseAttachList"
158
-                :key="index"
159
-                v-if="item.annexType == 2"
160
-              >
161
-                <div
162
-                  style="color: blue; cursor: pointer"
163
-                  @click="fileDetil(item.annexPath)"
164
-                >
93
+              <div v-for="(item, index) in formData.caseAttachList" :key="index" v-if="item.annexType == 2">
94
+                <div style="color: blue; cursor: pointer" @click="fileDetil(item.annexPath)">
165 95
                   {{ item.annexName }}
166 96
                 </div>
167 97
               </div>
@@ -169,15 +99,8 @@
169 99
           </el-col>
170 100
           <el-col :span="24" v-if="modelFlag">
171 101
             <el-form-item label="调解书:">
172
-              <div
173
-                v-for="(item, index) in formData.caseAttachList"
174
-                :key="index"
175
-                v-if="item.annexType == 7"
176
-              >
177
-                <div
178
-                  style="color: blue; cursor: pointer"
179
-                  @click="fileDetil(item.annexPath)"
180
-                >
102
+              <div v-for="(item, index) in formData.caseAttachList" :key="index" v-if="item.annexType == 7">
103
+                <div style="color: blue; cursor: pointer" @click="fileDetil(item.annexPath)">
181 104
                   {{ item.annexName }}
182 105
                 </div>
183 106
               </div>
@@ -192,371 +115,245 @@
192 115
           </el-col>
193 116
           <el-col :span="24">
194 117
             <el-form-item label="选择机构或自然人" prop="affiliate.organizeFlag">
195
-                            <el-radio-group v-model="formData.affiliate.organizeFlag">
196
-                                <el-radio :label="0">自然人</el-radio>
197
-                                <el-radio :label="1">机构</el-radio>
198
-                            </el-radio-group>
199
-               </el-form-item>
118
+              <el-radio-group v-model="formData.affiliate.organizeFlag" @change="changeApplyType">
119
+                <el-radio :label="0">自然人</el-radio>
120
+                <el-radio :label="1">机构</el-radio>
121
+              </el-radio-group>
122
+            </el-form-item>
200 123
           </el-col>
201 124
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 1">
202
-            <el-form-item
203
-              label="申请机构名称"
204
-              prop="affiliate.applicationName"
205
-              :rules="[
206
-                {
207
-                  required: true,
208
-                  message: '申请机构名称不能为空',
209
-                  trigger: 'blur',
210
-                },
211
-              ]"
212
-            >
213
-              <el-input
214
-                v-model="formData.affiliate.applicationName"
215
-                placeholder="请输入申请机构名称"
216
-              />
125
+            <el-form-item label="申请机构名称" prop="affiliate.applicationName" :rules="[
126
+              {
127
+                required: true,
128
+                message: '申请机构名称不能为空',
129
+                trigger: 'blur',
130
+              },
131
+            ]">
132
+              <el-input v-model="formData.affiliate.applicationName" placeholder="请输入申请机构名称" />
217 133
             </el-form-item>
218 134
           </el-col>
219 135
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 0">
220
-            <el-form-item
221
-              label="申请人"
222
-              prop="affiliate.applicationName"
223
-              :rules="[
224
-                {
225
-                  required: true,
226
-                  message: '申请人名称不能为空',
227
-                  trigger: 'blur',
228
-                },
229
-              ]"
230
-            >
231
-              <el-input
232
-                v-model="formData.affiliate.applicationName"
233
-                placeholder="请输入申请机构名称"
234
-              />
136
+            <el-form-item label="申请人" prop="affiliate.applicationName1" :rules="[
137
+              {
138
+                required: true,
139
+                message: '申请人名称不能为空',
140
+                trigger: 'blur',
141
+              },
142
+            ]">
143
+              <el-input v-model="formData.affiliate.applicationName1" placeholder="请输入申请机构名称" />
235 144
             </el-form-item>
236 145
           </el-col>
237 146
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 1">
238
-            <el-form-item
239
-              label="统一社会信用代码"
240
-              prop="affiliate.code"
241
-              :rules="[
242
-                {
243
-                  required: true,
244
-                  message: '统一社会信用代码不能为空',
245
-                  trigger: 'blur',
246
-                },
247
-              ]"
248
-            >
249
-              <el-input
250
-                v-model="formData.affiliate.code"
251
-                placeholder="请输入统一社会信用代码"
252
-              />
147
+            <el-form-item label="统一社会信用代码" prop="affiliate.code" :rules="[
148
+              {
149
+                required: true,
150
+                message: '统一社会信用代码不能为空',
151
+                trigger: 'blur',
152
+              },
153
+            ]">
154
+              <el-input v-model="formData.affiliate.code" placeholder="请输入统一社会信用代码" />
253 155
             </el-form-item>
254 156
           </el-col>
255 157
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 0">
256
-            <el-form-item
257
-              label="申请人身份证号码"
258
-              prop="affiliate.code"
259
-              :rules="[
260
-                {
261
-                  required: true,
262
-                  message: '申请人身份证号不能为空',
263
-                  trigger: 'blur',
264
-                },
265
-                {
266
-                  pattern:
267
-                    /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/,
268
-                  message: '请输入正确的身份证号码',
269
-                  trigger: 'blur',
270
-                },
271
-              ]"
272
-            >
273
-              <el-input
274
-                v-model="formData.affiliate.code"
275
-                placeholder="请输入申请人的身份证号"
276
-              />
158
+            <el-form-item label="申请人身份证号码" prop="affiliate.code" :rules="[
159
+              {
160
+                required: true,
161
+                message: '申请人身份证号不能为空',
162
+                trigger: 'blur',
163
+              },
164
+              {
165
+                pattern:
166
+                  /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/,
167
+                message: '请输入正确的身份证号码',
168
+                trigger: 'blur',
169
+              },
170
+            ]">
171
+              <el-input v-model="formData.affiliate.code" placeholder="请输入申请人的身份证号" />
277 172
             </el-form-item>
278 173
           </el-col>
279
-                   <el-col :span="12" v-if="formData.affiliate.organizeFlag == 0">
280
-            <el-form-item
281
-              label="申请人邮箱"
282
-              prop="affiliate.applicationEmail"
283
-              :rules="[
284
-                {
285
-                  required: true,
286
-                  message: '申请人邮箱不能为空',
287
-                  trigger: 'blur',
288
-                },
289
-                {
290
-                  pattern:
291
-                    /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
292
-                  message: '请输入正确的邮箱地址',
293
-                  trigger: 'blur',
294
-                },
295
-              ]"
296
-            >
297
-              <el-input
298
-                v-model="formData.affiliate.applicationEmail"
299
-                placeholder="请输入申请人邮箱"
300
-              />
174
+          <el-col :span="12" v-if="formData.affiliate.organizeFlag == 0">
175
+            <el-form-item label="申请人邮箱" prop="affiliate.applicationEmail" :rules="[
176
+              {
177
+                required: true,
178
+                message: '申请人邮箱不能为空',
179
+                trigger: 'blur',
180
+              },
181
+              {
182
+                pattern:
183
+                  /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
184
+                message: '请输入正确的邮箱地址',
185
+                trigger: 'blur',
186
+              },
187
+            ]">
188
+              <el-input v-model="formData.affiliate.applicationEmail" placeholder="请输入申请人邮箱" />
301 189
             </el-form-item>
302 190
           </el-col>
303 191
           <el-col :span="12">
304
-            <el-form-item
305
-              label="申请人电话"
306
-              prop="affiliate.applicationPhone"
307
-              :rules="[
308
-                {
309
-                  required: true,
310
-                  message: '申请人联系电话不能为空',
311
-                  trigger: 'blur',
312
-                },
313
-                {
314
-                  pattern: /^[1][3,4,5,6,7,8,9][0-9]{9}$/,
315
-                  message: '请输入正确的手机号码',
316
-                  trigger: 'blur',
317
-                },
318
-              ]"
319
-            >
320
-              <el-input
321
-                v-model="formData.affiliate.applicationPhone"
322
-                placeholder="请输入申请人联系电话"
323
-              />
192
+            <el-form-item label="申请人电话" prop="affiliate.applicationPhone" :rules="[
193
+              {
194
+                required: true,
195
+                message: '申请人联系电话不能为空',
196
+                trigger: 'blur',
197
+              },
198
+              {
199
+                pattern: /^[1][3,4,5,6,7,8,9][0-9]{9}$/,
200
+                message: '请输入正确的手机号码',
201
+                trigger: 'blur',
202
+              },
203
+            ]">
204
+              <el-input v-model="formData.affiliate.applicationPhone" placeholder="请输入申请人联系电话" />
324 205
             </el-form-item>
325 206
           </el-col>
326 207
           <el-col :span="12">
327
-            <el-form-item
328
-              label="法定代表人"
329
-              prop="affiliate.compLegalPerson"
330
-              :rules="[
331
-                {
332
-                  required: true,
333
-                  message: '法定代表人不能为空',
334
-                  trigger: 'blur',
335
-                },
336
-              ]"
337
-            >
338
-              <el-input
339
-                v-model="formData.affiliate.compLegalPerson"
340
-                placeholder="请输入法定代表人"
341
-              />
208
+            <el-form-item label="法定代表人" prop="affiliate.compLegalPerson" :rules="[
209
+              {
210
+                required: true,
211
+                message: '法定代表人不能为空',
212
+                trigger: 'blur',
213
+              },
214
+            ]">
215
+              <el-input v-model="formData.affiliate.compLegalPerson" placeholder="请输入法定代表人" />
342 216
             </el-form-item>
343 217
           </el-col>
344 218
           <el-col :span="12">
345
-            <el-form-item
346
-              label="申请人住所"
347
-              prop="affiliate.applicantHome"
348
-              :rules="[
349
-                {
350
-                  required: true,
351
-                  message: '申请人住所不能为空',
352
-                  trigger: 'blur',
353
-                },
354
-              ]"
355
-            >
356
-              <el-input
357
-                v-model="formData.affiliate.applicantHome"
358
-                placeholder="请输入申请人住所"
359
-              />
219
+            <el-form-item label="申请人住所" prop="affiliate.applicantHome" :rules="[
220
+              {
221
+                required: true,
222
+                message: '申请人住所不能为空',
223
+                trigger: 'blur',
224
+              },
225
+            ]">
226
+              <el-input v-model="formData.affiliate.applicantHome" placeholder="请输入申请人住所" />
360 227
             </el-form-item>
361 228
           </el-col>
362 229
           <el-col :span="12">
363
-            <el-form-item
364
-              label="申请人联系地址"
365
-              prop="affiliate.applicantAddress"
366
-              :rules="[
367
-                {
368
-                  required: true,
369
-                  message: '申请人联系地址不能为空',
370
-                  trigger: 'blur',
371
-                },
372
-              ]"
373
-            >
374
-              <el-input
375
-                v-model="formData.affiliate.applicantAddress"
376
-                placeholder="请输入申请人联系地址"
377
-              />
230
+            <el-form-item label="申请人联系地址" prop="affiliate.applicantAddress" :rules="[
231
+              {
232
+                required: true,
233
+                message: '申请人联系地址不能为空',
234
+                trigger: 'blur',
235
+              },
236
+            ]">
237
+              <el-input v-model="formData.affiliate.applicantAddress" placeholder="请输入申请人联系地址" />
378 238
             </el-form-item>
379 239
           </el-col>
380 240
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 1">
381
-            <el-form-item
382
-              label="代理人联系电话"
383
-              prop="affiliate.contactTelphoneAgent"
384
-              :rules="[
385
-                {
386
-                  required: true,
387
-                  message: '代理人联系电话不能为空',
388
-                  trigger: 'blur',
389
-                },
390
-                {
391
-                  pattern: /^[1][3,4,5,6,7,8,9][0-9]{9}$/,
392
-                  message: '请输入正确的手机号码',
393
-                  trigger: 'blur',
394
-                },
395
-              ]"
396
-            >
397
-              <el-input
398
-                v-model="formData.affiliate.contactTelphoneAgent"
399
-                placeholder="请输入代理人联系电话"
400
-              />
241
+            <el-form-item label="代理人联系电话" prop="affiliate.contactTelphoneAgent" :rules="[
242
+              {
243
+                required: true,
244
+                message: '代理人联系电话不能为空',
245
+                trigger: 'blur',
246
+              },
247
+              {
248
+                pattern: /^[1][3,4,5,6,7,8,9][0-9]{9}$/,
249
+                message: '请输入正确的手机号码',
250
+                trigger: 'blur',
251
+              },
252
+            ]">
253
+              <el-input v-model="formData.affiliate.contactTelphoneAgent" placeholder="请输入代理人联系电话" />
401 254
             </el-form-item>
402 255
           </el-col>
403 256
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 0">
404
-            <el-form-item
405
-              label="代理人联系电话"
406
-              prop="affiliate.contactTelphoneAgent"
407
-            >
408
-              <el-input
409
-                v-model="formData.affiliate.contactTelphoneAgent"
410
-                placeholder="请输入代理人联系电话"
411
-              />
257
+            <el-form-item label="代理人联系电话" prop="affiliate.contactTelphoneAgent">
258
+              <el-input v-model="formData.affiliate.contactTelphoneAgent" placeholder="请输入代理人联系电话" />
412 259
             </el-form-item>
413 260
           </el-col>
414 261
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 1">
415
-            <el-form-item
416
-              label="委托代理人姓名"
417
-              prop="affiliate.nameAgent"
418
-              :rules="[
419
-                {
420
-                  required: true,
421
-                  message: '委托代理人姓名不能为空',
422
-                  trigger: 'blur',
423
-                },
424
-              ]"
425
-            >
426
-              <el-input
427
-                v-model="formData.affiliate.nameAgent"
428
-                placeholder="请输入委托代理人姓名"
429
-              />
262
+            <el-form-item label="委托代理人姓名" prop="affiliate.nameAgent" :rules="[
263
+              {
264
+                required: true,
265
+                message: '委托代理人姓名不能为空',
266
+                trigger: 'blur',
267
+              },
268
+            ]">
269
+              <el-input v-model="formData.affiliate.nameAgent" placeholder="请输入委托代理人姓名" />
430 270
             </el-form-item>
431 271
           </el-col>
432 272
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 0">
433 273
             <el-form-item label="委托代理人姓名" prop="affiliate.nameAgent">
434
-              <el-input
435
-                v-model="formData.affiliate.nameAgent"
436
-                placeholder="请输入委托代理人姓名"
437
-              />
274
+              <el-input v-model="formData.affiliate.nameAgent" placeholder="请输入委托代理人姓名" />
438 275
             </el-form-item>
439 276
           </el-col>
440 277
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 1">
441
-            <el-form-item
442
-              label="代理人邮箱"
443
-              prop="affiliate.agentEmail"
444
-              :rules="[
445
-                {
446
-                  required: true,
447
-                  message: '代理人邮箱不能为空',
448
-                  trigger: 'blur',
449
-                },
450
-                {
451
-                  pattern:
452
-                    /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
453
-                  message: '请输入正确的邮箱地址',
454
-                  trigger: 'blur',
455
-                },
456
-              ]"
457
-            >
458
-              <el-input
459
-                v-model="formData.affiliate.agentEmail"
460
-                placeholder="请输入代理人邮箱"
461
-              />
278
+            <el-form-item label="代理人邮箱" prop="affiliate.agentEmail" :rules="[
279
+              {
280
+                required: true,
281
+                message: '代理人邮箱不能为空',
282
+                trigger: 'blur',
283
+              },
284
+              {
285
+                pattern:
286
+                  /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
287
+                message: '请输入正确的邮箱地址',
288
+                trigger: 'blur',
289
+              },
290
+            ]">
291
+              <el-input v-model="formData.affiliate.agentEmail" placeholder="请输入代理人邮箱" />
462 292
             </el-form-item>
463 293
           </el-col>
464 294
           <el-col :span="12" v-if="formData.affiliate.organizeFlag == 0">
465
-            <el-form-item
466
-              label="代理人邮箱"
467
-              prop="affiliate.agentEmail"
468
-              :rules="[
469
-                {
470
-                  pattern:
471
-                    /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
472
-                  message: '请输入正确的邮箱地址',
473
-                  trigger: 'blur',
474
-                },
475
-              ]"
476
-            >
477
-              <el-input
478
-                v-model="formData.affiliate.agentEmail"
479
-                placeholder="请输入代理人邮箱"
480
-              />
295
+            <el-form-item label="代理人邮箱" prop="affiliate.agentEmail" :rules="[
296
+              {
297
+                pattern:
298
+                  /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
299
+                message: '请输入正确的邮箱地址',
300
+                trigger: 'blur',
301
+              },
302
+            ]">
303
+              <el-input v-model="formData.affiliate.agentEmail" placeholder="请输入代理人邮箱" />
481 304
             </el-form-item>
482 305
           </el-col>
483 306
           <el-col :span="12">
484
-            <el-form-item
485
-              label="被申请人姓名"
486
-              prop="affiliate.respondentName"
487
-              :rules="[
488
-                {
489
-                  required: true,
490
-                  message: '被申请人姓名不能为空',
491
-                  trigger: 'blur',
492
-                },
493
-              ]"
494
-            >
495
-              <el-input
496
-                v-model="formData.affiliate.respondentName"
497
-                placeholder="请输入被申请人姓名"
498
-              />
307
+            <el-form-item label="被申请人姓名" prop="affiliate.respondentName" :rules="[
308
+              {
309
+                required: true,
310
+                message: '被申请人姓名不能为空',
311
+                trigger: 'blur',
312
+              },
313
+            ]">
314
+              <el-input v-model="formData.affiliate.respondentName" placeholder="请输入被申请人姓名" />
499 315
             </el-form-item>
500 316
           </el-col>
501 317
           <el-col :span="12">
502
-            <el-form-item
503
-              label="被申请人联系电话"
504
-              prop="affiliate.respondentPhone"
505
-              :rules="[
506
-                {
507
-                  required: true,
508
-                  message: '被申请人联系电话不能为空',
509
-                  trigger: 'blur',
510
-                },
511
-                {
512
-                  pattern: /^[1][3,4,5,6,7,8,9][0-9]{9}$/,
513
-                  message: '请输入正确的手机号码',
514
-                  trigger: 'blur',
515
-                },
516
-              ]"
517
-            >
518
-              <el-input
519
-                v-model="formData.affiliate.respondentPhone"
520
-                placeholder="请输入被申请人联系电话"
521
-              />
318
+            <el-form-item label="被申请人联系电话" prop="affiliate.respondentPhone" :rules="[
319
+              {
320
+                required: true,
321
+                message: '被申请人联系电话不能为空',
322
+                trigger: 'blur',
323
+              },
324
+              {
325
+                pattern: /^[1][3,4,5,6,7,8,9][0-9]{9}$/,
326
+                message: '请输入正确的手机号码',
327
+                trigger: 'blur',
328
+              },
329
+            ]">
330
+              <el-input v-model="formData.affiliate.respondentPhone" placeholder="请输入被申请人联系电话" />
522 331
             </el-form-item>
523 332
           </el-col>
524 333
           <el-col :span="12">
525
-            <el-form-item
526
-              label="被申请人身份证号"
527
-              prop="affiliate.respondentIdentityNum"
528
-              :rules="[
529
-                {
530
-                  required: true,
531
-                  message: '被申请人身份证号不能为空',
532
-                  trigger: 'blur',
533
-                },
534
-                {
535
-                  pattern:
536
-                    /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/,
537
-                  message: '请输入正确的身份证号码',
538
-                  trigger: 'blur',
539
-                },
540
-              ]"
541
-            >
542
-              <el-input
543
-                v-model="formData.affiliate.respondentIdentityNum"
544
-                @blur="handleBlur"
545
-                placeholder="请输入被申请人身份证号"
546
-              />
334
+            <el-form-item label="被申请人身份证号" prop="affiliate.respondentIdentityNum" :rules="[
335
+              {
336
+                required: true,
337
+                message: '被申请人身份证号不能为空',
338
+                trigger: 'blur',
339
+              },
340
+              {
341
+                pattern:
342
+                  /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/,
343
+                message: '请输入正确的身份证号码',
344
+                trigger: 'blur',
345
+              },
346
+            ]">
347
+              <el-input v-model="formData.affiliate.respondentIdentityNum" @blur="handleBlur" placeholder="请输入被申请人身份证号" />
547 348
             </el-form-item>
548 349
           </el-col>
549 350
           <el-col :span="12">
550
-            <el-form-item
551
-              label="被申请人性别:"
552
-              prop="affiliate.respondentSex"
553
-              :rules="[
554
-                {
555
-                  required: true,
556
-                  message: '请选择性别',
557
-                },
558
-              ]"
559
-            >
351
+            <el-form-item label="被申请人性别:" prop="affiliate.respondentSex" :rules="[
352
+              {
353
+                required: true,
354
+                message: '请选择性别',
355
+              },
356
+            ]">
560 357
               <el-radio-group v-model="formData.affiliate.respondentSex" disabled>
561 358
                 <el-radio :label="0">男</el-radio>
562 359
                 <el-radio :label="1">女</el-radio>
@@ -564,59 +361,37 @@
564 361
             </el-form-item>
565 362
           </el-col>
566 363
           <el-col :span="12">
567
-            <el-form-item
568
-              label="被申请人出生年月日:"
569
-              prop="affiliate.respondentBirth"
570
-            >
571
-              <el-date-picker
572
-                disabled
573
-                v-model="formData.affiliate.respondentBirth"
574
-                type="date"
575
-                placeholder="被申请人出生年月日"
576
-              >
364
+            <el-form-item label="被申请人出生年月日:" prop="affiliate.respondentBirth">
365
+              <el-date-picker disabled v-model="formData.affiliate.respondentBirth" type="date" placeholder="被申请人出生年月日">
577 366
               </el-date-picker>
578 367
             </el-form-item>
579 368
           </el-col>
580 369
           <el-col :span="12">
581
-            <el-form-item
582
-              label="被申请人申请人住所"
583
-              prop="affiliate.respondentHome"
584
-              :rules="[
585
-                {
586
-                  required: true,
587
-                  message: '被申请人申请人住所不能为空',
588
-                  trigger: 'blur',
589
-                },
590
-              ]"
591
-            >
592
-              <el-input
593
-                v-model="formData.affiliate.respondentHome"
594
-                placeholder="请输入被申请人申请人住所"
595
-              />
370
+            <el-form-item label="被申请人申请人住所" prop="affiliate.respondentHome" :rules="[
371
+              {
372
+                required: true,
373
+                message: '被申请人申请人住所不能为空',
374
+                trigger: 'blur',
375
+              },
376
+            ]">
377
+              <el-input v-model="formData.affiliate.respondentHome" placeholder="请输入被申请人申请人住所" />
596 378
             </el-form-item>
597 379
           </el-col>
598 380
           <el-col :span="12">
599
-            <el-form-item
600
-              label="被申请人邮箱"
601
-              prop="affiliate.respondentEmail"
602
-              :rules="[
603
-                {
604
-                  required: true,
605
-                  message: '代理人邮箱不能为空',
606
-                  trigger: 'blur',
607
-                },
608
-                {
609
-                  pattern:
610
-                    /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
611
-                  message: '请输入正确的邮箱地址',
612
-                  trigger: 'blur',
613
-                },
614
-              ]"
615
-            >
616
-              <el-input
617
-                v-model="formData.affiliate.respondentEmail"
618
-                placeholder="请输入被申请人邮箱"
619
-              />
381
+            <el-form-item label="被申请人邮箱" prop="affiliate.respondentEmail" :rules="[
382
+              {
383
+                required: true,
384
+                message: '代理人邮箱不能为空',
385
+                trigger: 'blur',
386
+              },
387
+              {
388
+                pattern:
389
+                  /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
390
+                message: '请输入正确的邮箱地址',
391
+                trigger: 'blur',
392
+              },
393
+            ]">
394
+              <el-input v-model="formData.affiliate.respondentEmail" placeholder="请输入被申请人邮箱" />
620 395
             </el-form-item>
621 396
           </el-col>
622 397
         </el-row>
@@ -628,11 +403,7 @@
628 403
           <el-divider></el-divider>
629 404
         </el-col>
630 405
         <el-col :span="24" v-if="modelFlag">
631
-          <el-form-item
632
-            v-for="item in formData.columnValueList"
633
-            :label="item.name"
634
-            :key="item.id"
635
-          >
406
+          <el-form-item v-for="item in formData.columnValueList" :label="item.name" :key="item.id">
636 407
             <el-input type="textarea" v-model="item.value"></el-input>
637 408
           </el-form-item>
638 409
         </el-col>
@@ -642,13 +413,8 @@
642 413
           <div slot="header" class="clearfix">
643 414
             <span>申请人证据清单</span>
644 415
           </div>
645
-          <div
646
-            v-for="(item, index) in applicantEvidence"
647
-            :key="index"
648
-            class="text item"
649
-            style="color: blue; cursor: pointer"
650
-            @click="toPreview(item.annexPath)"
651
-          >
416
+          <div v-for="(item, index) in applicantEvidence" :key="index" class="text item"
417
+            style="color: blue; cursor: pointer" @click="toPreview(item.annexPath)">
652 418
             {{ item.annexName }}
653 419
           </div>
654 420
         </el-card>
@@ -656,24 +422,15 @@
656 422
           <div slot="header" class="clearfix">
657 423
             <span>被申请人证据清单</span>
658 424
           </div>
659
-          <div
660
-            v-for="(item, index) in respondentEvidence"
661
-            :key="index"
662
-            class="text item"
663
-            style="color: blue; cursor: pointer"
664
-            @click="toPreview(item.annexPath)"
665
-          >
425
+          <div v-for="(item, index) in respondentEvidence" :key="index" class="text item"
426
+            style="color: blue; cursor: pointer" @click="toPreview(item.annexPath)">
666 427
             {{ item.annexName }}
667 428
           </div>
668 429
         </el-card>
669 430
       </div>
670 431
       <div slot="footer" class="dialog-footer">
671
-        <el-button @click="cancel" class="endbutton"
672
-          ><span>取 消</span></el-button
673
-        >
674
-        <el-button type="primary" @click="submitForm" class="endbutton"
675
-          ><span>确认</span></el-button
676
-        >
432
+        <el-button @click="cancel" class="endbutton"><span>取 消</span></el-button>
433
+        <el-button type="primary" @click="submitForm" class="endbutton"><span>确认</span></el-button>
677 434
       </div>
678 435
     </el-dialog>
679 436
   </div>
@@ -725,31 +482,27 @@ export default {
725 482
     };
726 483
   },
727 484
   watch: {
728
-    caseData: {
729
-      deep: true,
730
-      handler(val) {
731
-        this.getTemplateFn();
732
-        if (val.id && val.flag == 2) {
733
-          this.modelFlag = true;
734
-          this.title = "修改案件";
735
-          this.caseApplicationSelectByIdFn(val.id);
736
-        } else if (!val.id && val.flag == 2) {
737
-          this.modelFlag = false;
738
-          this.title = "新增案件";
739
-          this.formData = {
740
-            affiliate: {
741
-                organizeFlag:0,
742
-              respondentSex: 0,
743
-            },
744
-            columnValueList: [],
745
-            caseAttachList: [],
746
-          };
747
-        } else if (val.id && val.flag == 1) {
748
-          this.modelFlag = true;
749
-          this.title = "案件详情";
750
-          this.caseApplicationSelectByIdFn(val.id);
751
-        }
752
-      },
485
+    addModifyData(val) {
486
+      if (val == 1) {
487
+        this.title = "新增案件";
488
+        this.modelFlag = false;
489
+        this.formData = {
490
+          affiliate: {
491
+            organizeFlag: 0,
492
+            respondentSex: 0,
493
+          },
494
+          columnValueList: [],
495
+          caseAttachList: [],
496
+        };
497
+      } else if (val == 3) {
498
+        this.title = "修改案件";
499
+        this.modelFlag = true;
500
+        this.caseApplicationSelectByIdFn(this.caseData.id);
501
+      } else if (val == 2) {
502
+        this.title = "案件详情";
503
+        this.modelFlag = true;
504
+        this.caseApplicationSelectByIdFn(this.caseData.id);
505
+      }
753 506
     },
754 507
     addVisable(val) {
755 508
       if (val) {
@@ -758,9 +511,14 @@ export default {
758 511
     },
759 512
   },
760 513
   created() {
761
-      console.log(this.formData,"000000000000000000")
514
+    console.log(this.formData, "000000000000000000")
762 515
   },
763 516
   methods: {
517
+    /** 切换申请类型 */
518
+    changeApplyType(val) {
519
+      console.log(val, "变化");
520
+      // this.$refs["ruleForm"].resetFields();
521
+    },
764 522
     /** 根据案件id获取对应信息 */
765 523
     caseApplicationSelectByIdFn(data) {
766 524
       this.applicantEvidence = [];
@@ -821,8 +579,7 @@ export default {
821 579
     /**文件超出个数限制时的钩子*/
822 580
     handleExceed(files, fileList) {
823 581
       this.$message.warning(
824
-        `当前限制选择 3 个文件,本次选择了 ${files.length} 个文件,共选择了 ${
825
-          files.length + fileList.length
582
+        `当前限制选择 3 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length
826 583
         } 个文件`
827 584
       );
828 585
     },

+ 37
- 26
src/views/caseManagement/components/caseAcceptance.vue Ver arquivo

@@ -1,32 +1,41 @@
1 1
 <template>
2 2
   <div>
3 3
     <!-- 案件受理 -->
4
-    <el-dialog
5
-      title="案件受理"
6
-      :visible="showAcceptance"
7
-      @close="cancel"
8
-      :destroy-on-close="true"
9
-      center
10
-    >
4
+    <el-dialog title="案件受理" :visible="showAcceptance" @close="cancel" :destroy-on-close="true" center>
11 5
       <el-form ref="courtReviewform" :model="courtReviewform">
12
-        <el-form-item label="调解方式:">
6
+        <el-form-item label="是否同意受理:">
7
+          <el-radio-group v-model="courtReviewform.agreeFlag">
8
+            <el-radio :label="1">是</el-radio>
9
+            <el-radio :label="0">否</el-radio>
10
+          </el-radio-group>
11
+        </el-form-item>
12
+        <el-form-item label="调解方式:" v-if="courtReviewform.agreeFlag == 1">
13 13
           <el-radio-group v-model="courtReviewform.mediationMethod">
14 14
             <el-radio :label="1">开庭调解</el-radio>
15 15
             <el-radio :label="2">线下调解</el-radio>
16 16
           </el-radio-group>
17 17
         </el-form-item>
18
-        <el-form-item label="是否纸质送达:">
18
+        <el-form-item label="是否纸质送达:" v-if="courtReviewform.agreeFlag == 1">
19 19
           <el-radio-group v-model="courtReviewform.paperFlag">
20 20
             <el-radio :label="1">是</el-radio>
21 21
             <el-radio :label="0">否</el-radio>
22 22
           </el-radio-group>
23 23
         </el-form-item>
24
-        <el-form-item label="是否仲裁确认:">
24
+        <el-form-item label="是否仲裁确认:" v-if="courtReviewform.agreeFlag == 1" >
25 25
           <el-radio-group v-model="courtReviewform.arbitrateConfirm">
26 26
             <el-radio :label="1">是</el-radio>
27 27
             <el-radio :label="0">否</el-radio>
28 28
           </el-radio-group>
29 29
         </el-form-item>
30
+        <el-form-item v-if="courtReviewform.agreeFlag == 0" label="拒绝理由:" prop="rejectReason" :rules="[
31
+          {
32
+            required: true,
33
+            message: '拒绝理由不能为空',
34
+            trigger: 'blur',
35
+          },
36
+        ]">
37
+          <el-input v-model="courtReviewform.rejectReason" type="textarea" :rows="8" />
38
+        </el-form-item>
30 39
       </el-form>
31 40
       <div slot="footer" class="dialog-footer">
32 41
         <el-button type="primary" @click="submitForm" class="endbutton"><span>确 定</span></el-button>
@@ -37,16 +46,17 @@
37 46
 </template>
38 47
 
39 48
 <script>
40
-import {accept} from '@/api/caseManagement/caseManagement.js'
49
+import { accept } from '@/api/caseManagement/caseManagement.js'
41 50
 export default {
42 51
   name: "caseAcceptance",
43
-  props: ["showAcceptance", "caseAcceptanceData", "getList","queryParams"],
52
+  props: ["showAcceptance", "caseAcceptanceData", "getList", "queryParams"],
44 53
   data() {
45 54
     return {
46 55
       courtReviewform: {
47
-         mediationMethod:2,
48
-         paperFlag:0,
49
-         arbitrateConfirm:0
56
+        mediationMethod: 2,
57
+        paperFlag: 0,
58
+        arbitrateConfirm: 0,
59
+        agreeFlag: 0
50 60
       },
51 61
     };
52 62
   },
@@ -61,18 +71,18 @@ export default {
61 71
     submitForm() {
62 72
       this.$refs["courtReviewform"].validate((valid) => {
63 73
         if (valid) {
64
-        let paramsdata ={
65
-            id:this.caseAcceptanceData.id,
66
-            caseFlowId:this.caseAcceptanceData.caseFlowId,
67
-            batchNumber:""
68
-        }
69
-        let mergeValue = Object.assign({}, this.courtReviewform, paramsdata)
74
+          let paramsdata = {
75
+            id: this.caseAcceptanceData.id,
76
+            caseFlowId: this.caseAcceptanceData.caseFlowId,
77
+            batchNumber: ""
78
+          }
79
+          let mergeValue = Object.assign({}, this.courtReviewform, paramsdata)
70 80
           accept(mergeValue).then((res) => {
71
-              this.$modal.msgSuccess("确认成功");
72
-              this.$emit("getList",this.queryParams)
73
-              this.cancel();
74
-            })
75
-            .catch((err) => {});
81
+            this.$modal.msgSuccess("确认成功");
82
+            this.$emit("getList", this.queryParams)
83
+            this.cancel();
84
+          })
85
+            .catch((err) => { });
76 86
         }
77 87
       });
78 88
     },
@@ -127,6 +137,7 @@ export default {
127 137
     // line-height: 48px;
128 138
   }
129 139
 }
140
+
130 141
 .nowarbitrator {
131 142
   margin-left: 10%;
132 143
 }

+ 1
- 0
src/views/caseManagement/components/paymentdetailsDialog.vue Ver arquivo

@@ -42,6 +42,7 @@ export default {
42 42
     detailform: {
43 43
       handler(val) {
44 44
         if (val) {
45
+          console.log(val,"PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP");
45 46
           this.form = val;
46 47
         }
47 48
       },

+ 252
- 0
src/views/caseManagement/components/respondentPay.vue Ver arquivo

@@ -0,0 +1,252 @@
1
+<template>
2
+    <div>
3
+      <el-dialog :title="resPayTitle" v-if="openResPay" :visible="openResPay" @close="payCancel" width="800px" append-to-body
4
+        :destroy-on-close="true" center>
5
+        <el-descriptions title="订单信息">
6
+          <el-descriptions-item label="案件编号">{{
7
+            formResPayDetail.caseNum
8
+          }}</el-descriptions-item>
9
+          <el-descriptions-item label="申请人">{{
10
+            formResPay.applicationName || ''
11
+          }}</el-descriptions-item>
12
+          <el-descriptions-item label="案件标的">{{
13
+            formResPayDetail.caseSubjectAmount
14
+          }}</el-descriptions-item>
15
+          <el-descriptions-item label="案件应缴费用">{{
16
+            formResPayDetail.feePayable
17
+          }}</el-descriptions-item>
18
+          <el-descriptions-item label="被申请人">{{
19
+            formResPay.respondentName
20
+          }}</el-descriptions-item>
21
+          <el-descriptions-item label="案件状态">
22
+            <el-tag size="mini" type='danger' effect="dark">
23
+              {{ formResPayDetail.caseStatusName }}
24
+            </el-tag>
25
+          </el-descriptions-item>
26
+        </el-descriptions>
27
+        <div class="paySelectType">
28
+          <el-radio-group v-model="paySelect" @input="changPayType">
29
+            <el-radio :label="0">线上支付</el-radio>
30
+            <el-radio :label="1">线下支付</el-radio>
31
+          </el-radio-group>
32
+        </div>
33
+        <div class="payupload">
34
+          <span>上传支付凭证:</span>
35
+          <div class="uploadBtn">
36
+            <el-upload class="upload-demo" ref="upload" :action="UploadUrl()" :headers="headers" :data="filedata"
37
+              :on-preview="handlePreview" :on-remove="handleRemove" :on-change="beforeUpload"  :on-success="handlSuccess" :file-list="fileList"
38
+             >
39
+              <el-button slot="trigger" size="small" type="primary">选取文件</el-button>
40
+              <!-- <el-button style="margin-left: 10px;" size="small" type="success" @click="submitUpload">上传到服务器</el-button> -->
41
+              <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div>
42
+            </el-upload>
43
+          </div>
44
+        </div>
45
+        <div class="payType" v-if="paySelect == 0">
46
+          <span>请选择支付方式:</span>
47
+          <i class="iconfont icon-weixinzhifu" @click="pay(0)"></i>
48
+          <i class="iconfont icon-zhifubao" @click="pay(1)"></i>
49
+        </div>
50
+        <div class="payImg">
51
+          <div id="qrcodeImg"></div>
52
+        </div>
53
+        <div class="resPayTitle">{{ payMain }}</div>
54
+        <div slot="footer" class="dialog-footer">
55
+          <el-button @click="payCancel" class="endbutton" round><span>取 消</span></el-button>
56
+          <el-button @click="submitUpload" class="endbutton" type="primary" round><span>确认缴费</span></el-button>
57
+        </div>
58
+      </el-dialog>
59
+    </div>
60
+  </template>
61
+  
62
+  <script>
63
+  import { casePay, confirmPayDig } from "@/api/pay/pay";
64
+  import QRCode from "qrcodejs2";
65
+  import { getToken } from "@/utils/auth";
66
+  export default {
67
+    props: ["openResPay", "resPayTitle", "formResPayDetail", "resPayForm", "queryParams","resPayId","formResPay"],
68
+    data() {
69
+      return {
70
+        // key: value
71
+        // 支付文字
72
+        payMain: "",
73
+        timer: null,
74
+        paySelect: 1,//支付线上/线下
75
+        fileList: [],
76
+        headers: {
77
+          Authorization: "Bearer " + getToken(),
78
+        },
79
+        filedata: {
80
+          annexType: 9,
81
+        },
82
+        submitForm:{
83
+          payType:1,
84
+          payOrderList:[],
85
+          caseId:null
86
+        }
87
+      };
88
+    },
89
+    methods: {
90
+      UploadUrl() {
91
+        return window.location.origin + "/API/common/upload";
92
+      },
93
+      //选择支付方式(线上,线下)
94
+      changPayType(data) {
95
+        if(data == 1){
96
+          document.getElementById("qrcodeImg").innerHTML = "";
97
+          this.payMain = ""
98
+        }
99
+        this.submitForm.payType = data;
100
+      },
101
+      beforeUpload(flie, fileList) {
102
+        this.fileList = fileList;
103
+      },
104
+      // 文件上传成功
105
+      handlSuccess(res, file) {
106
+        this.submitForm.payOrderList.push({
107
+          annexId: res.annexId,
108
+          annexName:res.annexName
109
+        });
110
+      },
111
+      submitUpload() {
112
+        if (this.fileList.length < 1) {
113
+          this.$modal.msgError("请上传缴费凭证");
114
+          return
115
+        }
116
+        this.submitForm.caseFlowId = this.formResPayDetail.caseFlowId;
117
+        confirmPayDig(this.submitForm).then(res=>{
118
+          this.$modal.msgSuccess("成功");
119
+          this.payCancel()
120
+          this.$emit("getList", this.queryParams);
121
+        })
122
+      },
123
+      handleRemove(file, fileList) {
124
+        (this.submitForm.payOrderList = []),
125
+        fileList.forEach((item) => {
126
+            this.submitForm.payOrderList.push({ annexId:item.response.data.annexId,annexName:item.response.data.annexName });
127
+          });
128
+      },
129
+      handlePreview(file) {
130
+      },
131
+      // 生成二维码
132
+      qrcode(url) {
133
+        // 前端根据 URL 生成微信支付二维码
134
+        document.getElementById("qrcodeImg").innerHTML = "";
135
+        return new QRCode("qrcodeImg", {
136
+          width: 200,
137
+          height: 200,
138
+          text: url,
139
+          colorDark: "#000",
140
+          colorLight: "#fff",
141
+        });
142
+      },
143
+      // 支付
144
+      pay(val) {
145
+        if (this.resPayForm.feePayable == 0 || !this.resPayForm.feePayable) {
146
+          this.$message({
147
+            message: "此案件无需缴费",
148
+            type: "error",
149
+          });
150
+          return;
151
+        }
152
+        let payType = "";
153
+        if (val == 0) {
154
+          payType = "wxpay";
155
+          this.payMain = "请使用微信扫二维码支付";
156
+        } else if (val == 1) {
157
+          payType = "alipay";
158
+          this.payMain = "请使用支付宝扫二维码支付";
159
+        }
160
+        casePay({
161
+          totalFee: this.resPayForm.feePayable * 100,
162
+          caseId: this.resPayForm.caseId,
163
+          tradeType: "native",
164
+          platform: payType,
165
+        }).then((res) => {
166
+          this.paySrc = res.data.code_url;
167
+          this.qrcode(this.paySrc);
168
+        });
169
+      },
170
+      payCancel() {
171
+        this.$emit("paycancelRes");
172
+        this.payMain = "";
173
+      },
174
+    },
175
+    watch:{
176
+      openResPay(val){
177
+        if(val){
178
+        this.submitForm.payOrderList = []
179
+        this.paySelect = 1;
180
+        this.fileList = [];
181
+        this.filedata.id = this.resPayId;
182
+        this.submitForm.caseId = this.resPayId;
183
+        }
184
+      }
185
+    }
186
+  };
187
+  </script>
188
+  
189
+  <style lang="scss" scoped>
190
+  .payType {
191
+    height: 80px;
192
+    line-height: 80px;
193
+    display: flex;
194
+  
195
+    .icon-weixinzhifu {
196
+      font-size: 24px;
197
+      color: #27a56f;
198
+      margin-right: 15px;
199
+    }
200
+  
201
+    .icon-zhifubao {
202
+      font-size: 24px;
203
+      color: #1d76cc;
204
+    }
205
+  }
206
+  
207
+  .paySelectType {
208
+    margin-top: 20px;
209
+    margin-bottom: 20px;
210
+  }
211
+  
212
+  .payupload {
213
+    display: flex;
214
+  
215
+    .uploadBtn {}
216
+  }
217
+  
218
+  .payImg {
219
+    width: 100%;
220
+    display: flex;
221
+    justify-content: center;
222
+  }
223
+  
224
+  .resPayTitle {
225
+    margin-top: 20px;
226
+    width: 100%;
227
+    text-align: center;
228
+  }
229
+  
230
+  ::v-deep .el-dialog {
231
+    width: 800px;
232
+    background: #ffffff;
233
+    border-radius: 20px;
234
+  }
235
+  
236
+  .endbutton {
237
+    width: 154px;
238
+    height: 37px;
239
+    background: #ffffff;
240
+    border: 1px solid #d0d0d0;
241
+    border-radius: 19px;
242
+  
243
+    span {
244
+      width: 31px;
245
+      height: 13px;
246
+      font-size: 16px;
247
+      font-family: Microsoft YaHei;
248
+      font-weight: 400;
249
+      color: #959595;
250
+    }
251
+  }
252
+  </style>

+ 2
- 2
vue.config.js Ver arquivo

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