Procházet zdrojové kódy

Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Mediation-Frontend into gyj

gyj před 2 roky
rodič
revize
db0d35c424

+ 1
- 1
src/api/caseManagement/caseManagement.js Zobrazit soubor

@@ -245,4 +245,4 @@ export function getIdType() {
245 245
     url: '/system/dict/data/type/id_type',
246 246
     method: 'get',
247 247
   })
248
-}
248
+}

+ 32
- 0
src/api/deliveryRecord/deliveryRecord.js Zobrazit soubor

@@ -25,4 +25,36 @@ export function updateSendContent(data) {
25 25
         method: 'post',
26 26
         data: data,
27 27
     })
28
+}
29
+// 分页查询短信
30
+export function recordList(data) {
31
+    return request({
32
+        url: '/shortMessage/recordList',
33
+        method: 'get',
34
+        params: data
35
+    })
36
+}
37
+// 重新发送短信
38
+export function reSendShortMessage(data) {
39
+    return request({
40
+        url: 'shortMessage/reSendShortMessage',
41
+        method: 'post',
42
+        data: data,
43
+    })
44
+}
45
+// 重新发送邮件
46
+export function reSendMailRecord(data) {
47
+    return request({
48
+        url: 'sendMailRecord/reSendMailRecord',
49
+        method: 'post',
50
+        data: data,
51
+    })
52
+}
53
+// 更新邮件发送记录
54
+export function update(data) {
55
+    return request({
56
+        url: 'sendMailRecord/update',
57
+        method: 'post',
58
+        data: data,
59
+    })
28 60
 }

+ 8
- 0
src/api/login.js Zobrazit soubor

@@ -65,6 +65,14 @@ export function sendCode(data) {
65 65
 		params:data
66 66
 	})
67 67
 }
68
+// 获取邮箱验证码
69
+export function sendEmailCode(data) {
70
+	return request({
71
+		url: '/weChatUser/sendEmailCode',
72
+		method: 'get',
73
+		params:data
74
+	})
75
+}
68 76
 // 注册方法
69 77
 export function wxregister(data) {
70 78
 	return request({

+ 1
- 1
src/main.js Zobrazit soubor

@@ -4,7 +4,7 @@ import Cookies from 'js-cookie'
4 4
 
5 5
 import Element from 'element-ui'
6 6
 import './assets/styles/element-variables.scss'
7
-
7
+import './assets/icons' // icon
8 8
 import '@/assets/styles/index.scss' // global css
9 9
 import '@/assets/styles/ruoyi.scss' // ruoyi css
10 10
 import App from './App'

+ 19
- 0
src/utils/permission.js Zobrazit soubor

@@ -47,4 +47,23 @@ export function checkRole(value) {
47 47
     console.error(`need roles! Like checkRole="['admin','editor']"`)
48 48
     return false
49 49
   }
50
+}
51
+
52
+/**
53
+ * 状态权限校验
54
+ * @param {Number} value 校验值
55
+ * @returns {Boolean}
56
+ */
57
+export function statusRole(value) {
58
+  let caseStatusStr = sessionStorage.getItem('caseStatus');
59
+  let caseStatus = [];
60
+  caseStatus = JSON.parse(caseStatusStr);
61
+  if (caseStatus.length == 0) {
62
+    return false
63
+  }
64
+  if (caseStatus.includes(value)) {
65
+    return true
66
+  } else {
67
+    return false
68
+  }
50 69
 }

+ 279
- 111
src/views/caseManagement/components/addCase.vue Zobrazit soubor

@@ -104,15 +104,15 @@
104 104
             </div>
105 105
             <el-divider></el-divider>
106 106
           </el-col>
107
-          <el-col :span="24">
107
+          <!-- <el-col :span="24">
108 108
             <el-form-item label="选择机构或自然人" prop="organizeFlag">
109 109
               <el-radio-group v-model="formData.organizeFlag" :disabled="modelFlag" @change="clearValidate">
110 110
                 <el-radio :label="0">自然人</el-radio>
111 111
                 <el-radio :label="1">机构</el-radio>
112 112
               </el-radio-group>
113 113
             </el-form-item>
114
-          </el-col>
115
-          <el-col :span="24">
114
+          </el-col> -->
115
+          <el-col :span="24"  v-if="buttonFlag">
116 116
             <el-button type="primary" icon="el-icon-circle-plus-outline" @click='addApplicant'
117 117
               style="margin-bottom: 40px;">新增申请人信息</el-button>
118 118
           </el-col>
@@ -124,8 +124,16 @@
124 124
               </div>
125 125
               <el-divider></el-divider>
126 126
             </el-col>
127
-            <el-col :span="12" v-if="formData.organizeFlag == 1">
128
-              <el-form-item label="申请机构名称" :prop="'affiliate.applicant.' + index + '.applicant.name'" :rules="[
127
+            <el-col :span="24">
128
+              <el-form-item label="选择机构或自然人">
129
+                <el-radio-group v-model="item.applicant.organizeFlag" :disabled="modelFlag" @change="clearValidate">
130
+                  <el-radio :label="0">自然人</el-radio>
131
+                  <el-radio :label="1">机构</el-radio>
132
+                </el-radio-group>
133
+              </el-form-item>
134
+            </el-col>
135
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 1">
136
+              <el-form-item label="机构名称" :prop="'affiliate.applicant.' + index + '.applicant.name'" :rules="[
129 137
       {
130 138
         required: true,
131 139
         message: '申请机构名称不能为空',
@@ -135,7 +143,7 @@
135 143
                 <el-input v-model="item.applicant.name" placeholder="请输入申请机构名称" />
136 144
               </el-form-item>
137 145
             </el-col>
138
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
146
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 0">
139 147
               <el-form-item label="申请人" :prop="'affiliate.applicant.' + index + '.applicant.name'" :rules="[
140 148
       {
141 149
         required: true,
@@ -146,7 +154,7 @@
146 154
                 <el-input v-model="item.applicant.name" placeholder="请输入申请人姓名" />
147 155
               </el-form-item>
148 156
             </el-col>
149
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
157
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 0">
150 158
               <el-form-item label="是否为操作人" :prop="'affiliate.applicant.' + index + '.applicant.operatorFlag'" :rules="[
151 159
       {
152 160
         required: true,
@@ -162,7 +170,7 @@
162 170
                 </el-select>
163 171
               </el-form-item>
164 172
             </el-col>
165
-            <el-col :span="12" v-if="formData.organizeFlag == 1">
173
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 1">
166 174
               <el-form-item label-width="140px" label="统一社会信用代码"
167 175
                 :prop="'affiliate.applicant.' + index + '.applicant.code'" :rules="[
168 176
       {
@@ -190,7 +198,7 @@
190 198
                 </el-select>
191 199
               </el-form-item>
192 200
             </el-col>
193
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
201
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 0">
194 202
               <el-form-item :prop="'affiliate.applicant.' + index + '.applicant.idType'" label="证件类型" :rules="[
195 203
       {
196 204
         required: true,
@@ -206,7 +214,7 @@
206 214
                 </el-select>
207 215
               </el-form-item>
208 216
             </el-col>
209
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
217
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 0">
210 218
               <el-form-item label="证件号码" :prop="'affiliate.applicant.' + index + '.applicant.idCard'" :rules="[
211 219
       {
212 220
         required: true,
@@ -214,11 +222,32 @@
214 222
         trigger: 'blur',
215 223
       },
216 224
     ]">
217
-                <el-input v-model="item.applicant.idCard" placeholder="请输入申请人的证件号码" />
225
+                <el-input v-model="item.applicant.idCard" @blur="handleBlurApplicant(index)"
226
+                  placeholder="请输入申请人的证件号码" />
227
+              </el-form-item>
228
+            </el-col>
229
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 0">
230
+              <el-form-item label-width="140px" label="出生年月:"
231
+                :prop="'affiliate.applicant.' + index + '.applicant.birth'">
232
+                <el-date-picker disabled v-model="item.applicant.birth" type="date" placeholder="申请人出生年月日">
233
+                </el-date-picker>
234
+              </el-form-item>
235
+            </el-col>
236
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 0">
237
+              <el-form-item label="性别:" :prop="'affiliate.applicant.' + index + '.applicant.sex'" :rules="[
238
+      {
239
+        required: true,
240
+        message: '请选择性别',
241
+      },
242
+    ]">
243
+                <el-radio-group v-model="item.applicant.sex" disabled>
244
+                  <el-radio :label="'0'">男</el-radio>
245
+                  <el-radio :label="'1'">女</el-radio>
246
+                </el-radio-group>
218 247
               </el-form-item>
219 248
             </el-col>
220
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
221
-              <el-form-item label="申请人邮箱" :prop="'affiliate.applicant.' + index + '.applicant.email'" :rules="[
249
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 0">
250
+              <el-form-item label="邮箱" :prop="'affiliate.applicant.' + index + '.applicant.email'" :rules="[
222 251
       {
223 252
         required: true,
224 253
         message: '申请人邮箱不能为空',
@@ -234,8 +263,8 @@
234 263
                 <el-input v-model="item.applicant.email" placeholder="请输入申请人邮箱" />
235 264
               </el-form-item>
236 265
             </el-col>
237
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
238
-              <el-form-item label="申请人电话" :prop="'affiliate.applicant.' + index + '.applicant.phone'" :rules="formData.affiliate.nationality == 0 ? [
266
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 0">
267
+              <el-form-item label="电话" :prop="'affiliate.applicant.' + index + '.applicant.phone'" :rules="formData.affiliate.nationality == 0 ? [
239 268
       {
240 269
         required: true,
241 270
         message: '申请人联系电话不能为空',
@@ -250,7 +279,7 @@
250 279
                 <el-input v-model="item.applicant.phone" placeholder="请输入申请人联系电话" />
251 280
               </el-form-item>
252 281
             </el-col>
253
-            <el-col :span="12" v-if="formData.organizeFlag == 1">
282
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 1">
254 283
               <el-form-item label="法定代表人" :prop="'affiliate.applicant.' + index + '.applicant.compLegalPerson'" :rules="[
255 284
       {
256 285
         required: true,
@@ -262,7 +291,7 @@
262 291
               </el-form-item>
263 292
             </el-col>
264 293
             <el-col :span="12">
265
-              <el-form-item label="申请人住所" :prop="'affiliate.applicant.' + index + '.applicant.home'" :rules="[
294
+              <el-form-item label="住所" :prop="'affiliate.applicant.' + index + '.applicant.home'" :rules="[
266 295
       {
267 296
         required: true,
268 297
         message: '申请人住所不能为空',
@@ -273,7 +302,7 @@
273 302
               </el-form-item>
274 303
             </el-col>
275 304
             <el-col :span="12">
276
-              <el-form-item label="申请人联系地址" :prop="'affiliate.applicant.' + index + '.applicant.address'" :rules="[
305
+              <el-form-item label="联系地址" :prop="'affiliate.applicant.' + index + '.applicant.address'" :rules="[
277 306
       {
278 307
         required: true,
279 308
         message: '申请人联系地址不能为空',
@@ -290,8 +319,8 @@
290 319
               </div>
291 320
               <el-divider></el-divider>
292 321
             </el-col>
293
-            <el-col :span="12" v-if="formData.organizeFlag == 1">
294
-              <el-form-item label="代理人联系电话" :prop="'affiliate.applicant.' + index + '.applicantAgent.phone'" :rules="[
322
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 1">
323
+              <el-form-item label="联系电话" :prop="'affiliate.applicant.' + index + '.applicantAgent.phone'" :rules="[
295 324
       {
296 325
         required: true,
297 326
         message: '代理人联系电话不能为空',
@@ -306,13 +335,13 @@
306 335
                 <el-input v-model="item.applicantAgent.phone" placeholder="请输入代理人联系电话" />
307 336
               </el-form-item>
308 337
             </el-col>
309
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
310
-              <el-form-item label="代理人联系电话" :prop="'affiliate.applicant.' + index + '.applicantAgent.phone'">
338
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 0">
339
+              <el-form-item label="联系电话" :prop="'affiliate.applicant.' + index + '.applicantAgent.phone'">
311 340
                 <el-input v-model="item.applicantAgent.phone" placeholder="请输入代理人联系电话" />
312 341
               </el-form-item>
313 342
             </el-col>
314
-            <el-col :span="12" v-if="formData.organizeFlag == 1">
315
-              <el-form-item label="代理人姓名" :prop="'affiliate.applicant.' + index + '.applicantAgent.name'" :rules="[
343
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 1">
344
+              <el-form-item label="姓名" :prop="'affiliate.applicant.' + index + '.applicantAgent.name'" :rules="[
316 345
       {
317 346
         required: true,
318 347
         message: '代理人姓名不能为空',
@@ -322,8 +351,8 @@
322 351
                 <el-input v-model="item.applicantAgent.name" placeholder="请输入代理人姓名" />
323 352
               </el-form-item>
324 353
             </el-col>
325
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
326
-              <el-form-item label="代理人姓名" :prop="'affiliate.applicant.' + index + '.applicantAgent.name'">
354
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 0">
355
+              <el-form-item label="姓名" :prop="'affiliate.applicant.' + index + '.applicantAgent.name'">
327 356
                 <el-input v-model="item.applicantAgent.name" placeholder="请输入代理人姓名" />
328 357
               </el-form-item>
329 358
             </el-col>
@@ -337,8 +366,8 @@
337 366
                 </el-select>
338 367
               </el-form-item>
339 368
             </el-col>
340
-            <el-col :span="12" v-if="formData.organizeFlag == 1">
341
-              <el-form-item label="代理人邮箱" :prop="'affiliate.applicant.' + index + '.applicantAgent.email'" :rules="[
369
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 1">
370
+              <el-form-item label="邮箱" :prop="'affiliate.applicant.' + index + '.applicantAgent.email'" :rules="[
342 371
       {
343 372
         required: true,
344 373
         message: '代理人邮箱不能为空',
@@ -354,8 +383,8 @@
354 383
                 <el-input v-model="item.applicantAgent.email" placeholder="请输入代理人邮箱" />
355 384
               </el-form-item>
356 385
             </el-col>
357
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
358
-              <el-form-item label="代理人邮箱" :prop="'affiliate.applicant.' + index + '.applicantAgent.email'" :rules="[
386
+            <el-col :span="12" v-if="item.applicant.organizeFlag == 0">
387
+              <el-form-item label="邮箱" :prop="'affiliate.applicant.' + index + '.applicantAgent.email'" :rules="[
359 388
       {
360 389
         pattern:
361 390
           /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
@@ -366,12 +395,12 @@
366 395
                 <el-input v-model="item.applicantAgent.email" placeholder="请输入代理人邮箱" />
367 396
               </el-form-item>
368 397
             </el-col>
369
-            <el-col :span="12">
398
+            <el-col :span="12"  v-if="buttonFlag">
370 399
               <el-button type="primary" icon="el-icon-delete" style='margin-bottom: 40px;'
371 400
                 @click='deleteApplicant(item)'>删除</el-button>
372 401
             </el-col>
373 402
           </div>
374
-          <el-col :span="24">
403
+          <el-col :span="24"  v-if="buttonFlag">
375 404
             <el-button type="primary" icon="el-icon-circle-plus-outline" @click='addRes'
376 405
               style="margin-bottom: 40px;">新增被申请人信息</el-button>
377 406
           </el-col>
@@ -383,8 +412,16 @@
383 412
               </div>
384 413
               <el-divider></el-divider>
385 414
             </el-col>
386
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
387
-              <el-form-item label="被申请人姓名" :prop="'affiliate.res.' + index + '.res.name'" :rules="[
415
+            <el-col :span="24">
416
+              <el-form-item label="选择机构或自然人">
417
+                <el-radio-group v-model="item.res.organizeFlag" :disabled="modelFlag" @change="clearValidateRes">
418
+                  <el-radio :label="0">自然人</el-radio>
419
+                  <el-radio :label="1">机构</el-radio>
420
+                </el-radio-group>
421
+              </el-form-item>
422
+            </el-col>
423
+            <el-col :span="12" v-if="item.res.organizeFlag == 0">
424
+              <el-form-item label="被申请人" :prop="'affiliate.res.' + index + '.res.name'" :rules="[
388 425
       {
389 426
         required: true,
390 427
         message: '被申请人姓名不能为空',
@@ -394,18 +431,18 @@
394 431
                 <el-input v-model="item.res.name" placeholder="请输入被申请人姓名" />
395 432
               </el-form-item>
396 433
             </el-col>
397
-            <el-col :span="12" v-if="formData.organizeFlag == 1">
398
-              <el-form-item label="被申请机构名称" :prop="'affiliate.res.' + index + '.res.name'" :rules="[
434
+            <el-col :span="12" v-if="item.res.organizeFlag == 1">
435
+              <el-form-item label="机构名称" :prop="'affiliate.res.' + index + '.res.name'" :rules="[
399 436
       {
400 437
         required: true,
401
-        message: '被申请机构名称不能为空',
438
+        message: '机构名称不能为空',
402 439
         trigger: 'blur',
403 440
       },
404 441
     ]">
405
-                <el-input v-model="item.res.name" placeholder="请输入被申请机构名称" />
442
+                <el-input v-model="item.res.name" placeholder="请输入机构名称" />
406 443
               </el-form-item>
407 444
             </el-col>
408
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
445
+            <el-col :span="12" v-if="item.res.organizeFlag == 0">
409 446
               <el-form-item label="是否为操作人" :prop="'affiliate.res.' + index + '.res.operatorFlag'">
410 447
                 <el-select v-model="item.res.operatorFlag" placeholder="请选择" auto-complete="off" style="width: 100%;">
411 448
                   <el-option v-for="item in roleTypeList" :key="item.id" :label="item.value" :value="item.id">
@@ -414,8 +451,39 @@
414 451
                 </el-select>
415 452
               </el-form-item>
416 453
             </el-col>
417
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
418
-              <el-form-item label-width="140px" label="被申请人联系电话" :prop="'affiliate.res.' + index + '.res.phone'" :rules="[
454
+            <el-col :span="12">
455
+              <el-form-item :prop="'affiliate.res.' + index + '.res.nationality'" label="国籍" :rules="[
456
+      {
457
+        required: true,
458
+        message: '国籍不能为空',
459
+        trigger: 'blur',
460
+      },
461
+    ]">
462
+                <el-select v-model="item.res.nationality" placeholder="请选择国籍" auto-complete="off" style="width: 100%;">
463
+                  <el-option v-for="item in nationalityList" :key="item.id" :label="item.value" :value="item.id">
464
+
465
+                  </el-option>
466
+                </el-select>
467
+              </el-form-item>
468
+            </el-col>
469
+            <el-col :span="12" v-if="item.res.organizeFlag == 0">
470
+              <el-form-item :prop="'affiliate.res.' + index + '.res.idType'" label="证件类型" :rules="[
471
+      {
472
+        required: true,
473
+        message: '证件类型不能为空',
474
+        trigger: 'blur',
475
+      },
476
+    ]">
477
+                <el-select v-model="item.res.idType" placeholder="证件类型" auto-complete="off" style="width: 100%;">
478
+                  <el-option v-for="item in idTypeList" :key="Number(item.dictValue)" :label="item.dictLabel"
479
+                    :value="Number(item.dictValue)">
480
+
481
+                  </el-option>
482
+                </el-select>
483
+              </el-form-item>
484
+            </el-col>
485
+            <el-col :span="12" v-if="item.res.organizeFlag == 0">
486
+              <el-form-item label-width="140px" label="联系电话" :prop="'affiliate.res.' + index + '.res.phone'" :rules="[
419 487
       {
420 488
         required: true,
421 489
         message: '被申请人联系电话不能为空',
@@ -431,18 +499,29 @@
431 499
               </el-form-item>
432 500
             </el-col>
433 501
             <el-col :span="12">
434
-              <el-form-item label-width="150px" label="被申请人住所" :prop="'affiliate.res.' + index + '.res.home'" :rules="[
502
+              <el-form-item label-width="150px" label="住所" :prop="'affiliate.res.' + index + '.res.home'" :rules="[
435 503
       {
436 504
         required: true,
437
-        message: '被申请人住所不能为空',
505
+        message: '住所不能为空',
438 506
         trigger: 'blur',
439 507
       },
440 508
     ]">
441
-                <el-input v-model="item.res.home" placeholder="请输入被申请人住所" />
509
+                <el-input v-model="item.res.home" placeholder="请输入住所" />
442 510
               </el-form-item>
443 511
             </el-col>
444
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
445
-              <el-form-item label="被申请人邮箱" :prop="'affiliate.res.' + index + '.res.email'" :rules="[
512
+            <el-col :span="12">
513
+              <el-form-item label="联系地址" :prop="'affiliate.res.' + index + '.res.address'" :rules="[
514
+      {
515
+        required: true,
516
+        message: '联系地址不能为空',
517
+        trigger: 'blur',
518
+      },
519
+    ]">
520
+                <el-input v-model="item.res.address" placeholder="请输入联系地址" />
521
+              </el-form-item>
522
+            </el-col>
523
+            <el-col :span="12" v-if="item.res.organizeFlag == 0">
524
+              <el-form-item label="邮箱" :prop="'affiliate.res.' + index + '.res.email'" :rules="[
446 525
       {
447 526
         required: true,
448 527
         message: '被申请人邮箱不能为空',
@@ -458,8 +537,8 @@
458 537
                 <el-input v-model="item.res.email" placeholder="请输入被申请人邮箱" />
459 538
               </el-form-item>
460 539
             </el-col>
461
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
462
-              <el-form-item label-width="140px" label="被申请人身份证号" :prop="'affiliate.res.' + index + '.res.idCard'"
540
+            <el-col :span="12" v-if="item.res.organizeFlag == 0">
541
+              <el-form-item label-width="140px" label="身份证号" :prop="'affiliate.res.' + index + '.res.idCard'"
463 542
                 :rules="[
464 543
       {
465 544
         required: true,
@@ -476,7 +555,7 @@
476 555
                 <el-input v-model="item.res.idCard" @blur="handleBlur(index)" placeholder="请输入被申请人身份证号" />
477 556
               </el-form-item>
478 557
             </el-col>
479
-            <el-col :span="12" v-if="formData.organizeFlag == 1">
558
+            <el-col :span="12" v-if="item.res.organizeFlag == 1">
480 559
               <el-form-item label-width="140px" label="统一社会信用代码" :prop="'affiliate.res.' + index + '.res.code'" :rules="[
481 560
       {
482 561
         required: true,
@@ -487,7 +566,7 @@
487 566
                 <el-input v-model="item.res.code" placeholder="请输入统一社会信用代码" />
488 567
               </el-form-item>
489 568
             </el-col>
490
-            <el-col :span="12" v-if="formData.organizeFlag == 1">
569
+            <el-col :span="12" v-if="item.res.organizeFlag == 1">
491 570
               <el-form-item label="法定代表人" :prop="'affiliate.res.' + index + '.res.compLegalPerson'" :rules="[
492 571
       {
493 572
         required: true,
@@ -498,14 +577,14 @@
498 577
                 <el-input v-model="item.res.compLegalPerson" placeholder="请输入法定代表人" />
499 578
               </el-form-item>
500 579
             </el-col>
501
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
502
-              <el-form-item label-width="140px" label="被申请人出生年月:" :prop="'affiliate.res.' + index + '.res.birth'">
580
+            <el-col :span="12" v-if="item.res.organizeFlag == 0">
581
+              <el-form-item label-width="140px" label="出生年月:" :prop="'affiliate.res.' + index + '.res.birth'">
503 582
                 <el-date-picker disabled v-model="item.res.birth" type="date" placeholder="被申请人出生年月日">
504 583
                 </el-date-picker>
505 584
               </el-form-item>
506 585
             </el-col>
507
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
508
-              <el-form-item label="被申请人性别:" :prop="'affiliate.res.' + index + '.res.sex'" :rules="[
586
+            <el-col :span="12" v-if="item.res.organizeFlag == 0">
587
+              <el-form-item label="性别:" :prop="'affiliate.res.' + index + '.res.sex'" :rules="[
509 588
       {
510 589
         required: true,
511 590
         message: '请选择性别',
@@ -524,8 +603,8 @@
524 603
               </div>
525 604
               <el-divider></el-divider>
526 605
             </el-col>
527
-            <el-col :span="12" v-if="formData.organizeFlag == 1">
528
-              <el-form-item label="代理人联系电话" :prop="'affiliate.res.' + index + '.resAgent.phone'" :rules="[
606
+            <el-col :span="12" v-if="item.res.organizeFlag == 1">
607
+              <el-form-item label="联系电话" :prop="'affiliate.res.' + index + '.resAgent.phone'" :rules="[
529 608
       {
530 609
         required: true,
531 610
         message: '代理人联系电话不能为空',
@@ -540,13 +619,13 @@
540 619
                 <el-input v-model="item.resAgent.phone" placeholder="请输入代理人联系电话" />
541 620
               </el-form-item>
542 621
             </el-col>
543
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
544
-              <el-form-item label="代理人联系电话" :prop="'affiliate.res.' + index + '.resAgent.phone'">
622
+            <el-col :span="12" v-if="item.res.organizeFlag == 0">
623
+              <el-form-item label="联系电话" :prop="'affiliate.res.' + index + '.resAgent.phone'">
545 624
                 <el-input v-model="item.resAgent.phone" placeholder="请输入代理人联系电话" />
546 625
               </el-form-item>
547 626
             </el-col>
548
-            <el-col :span="12" v-if="formData.organizeFlag == 1">
549
-              <el-form-item label="代理人姓名" :prop="'affiliate.res.' + index + '.resAgent.name'" :rules="[
627
+            <el-col :span="12" v-if="item.res.organizeFlag == 1">
628
+              <el-form-item label="姓名" :prop="'affiliate.res.' + index + '.resAgent.name'" :rules="[
550 629
       {
551 630
         required: true,
552 631
         message: '代理人姓名不能为空',
@@ -566,13 +645,13 @@
566 645
                 </el-select>
567 646
               </el-form-item>
568 647
             </el-col>
569
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
570
-              <el-form-item label="代理人姓名" :prop="'affiliate.res.' + index + '.resAgent.name'">
648
+            <el-col :span="12" v-if="item.res.organizeFlag == 0">
649
+              <el-form-item label="姓名" :prop="'affiliate.res.' + index + '.resAgent.name'">
571 650
                 <el-input v-model="item.resAgent.name" placeholder="请输入代理人姓名" />
572 651
               </el-form-item>
573 652
             </el-col>
574
-            <el-col :span="12" v-if="formData.organizeFlag == 1">
575
-              <el-form-item label="代理人邮箱" :prop="'affiliate.res.' + index + '.resAgent.email'" :rules="[
653
+            <el-col :span="12" v-if="item.res.organizeFlag == 1">
654
+              <el-form-item label="邮箱" :prop="'affiliate.res.' + index + '.resAgent.email'" :rules="[
576 655
       {
577 656
         required: true,
578 657
         message: '代理人邮箱不能为空',
@@ -588,8 +667,8 @@
588 667
                 <el-input v-model="item.resAgent.email" placeholder="请输入代理人邮箱" />
589 668
               </el-form-item>
590 669
             </el-col>
591
-            <el-col :span="12" v-if="formData.organizeFlag == 0">
592
-              <el-form-item label="代理人邮箱" :prop="'affiliate.res.' + index + '.resAgent.email'" :rules="[
670
+            <el-col :span="12" v-if="item.res.organizeFlag == 0">
671
+              <el-form-item label="邮箱" :prop="'affiliate.res.' + index + '.resAgent.email'" :rules="[
593 672
       {
594 673
         pattern:
595 674
           /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
@@ -605,7 +684,7 @@
605 684
                 <el-input type="textarea" v-model="item.value"></el-input>
606 685
               </el-form-item>
607 686
             </el-col>
608
-            <el-col :span="12">
687
+            <el-col :span="12"  v-if="buttonFlag">
609 688
               <el-button type="primary" icon="el-icon-delete" style='margin-bottom: 40px;'
610 689
                 @click='deleteRes(item)'>删除</el-button>
611 690
             </el-col>
@@ -700,7 +779,8 @@ export default {
700 779
                 nationality: 1,
701 780
                 birth: "",
702 781
                 sex: "1",
703
-                operatorFlag: 1
782
+                operatorFlag: 1,
783
+                organizeFlag: 0,
704 784
               },
705 785
               applicantAgent: {
706 786
                 roleType: 2,
@@ -716,7 +796,8 @@ export default {
716 796
                 nationality: 1,
717 797
                 birth: "",
718 798
                 sex: "1",
719
-                operatorFlag: 1
799
+                operatorFlag: 1,
800
+                organizeFlag: 0,
720 801
               },
721 802
             },
722 803
           ],
@@ -736,7 +817,8 @@ export default {
736 817
                 nationality: 1,
737 818
                 birth: "",
738 819
                 sex: "0",
739
-                operatorFlag: 1
820
+                operatorFlag: 1,
821
+                organizeFlag: 0,
740 822
               },
741 823
               resAgent: {
742 824
                 roleType: 4,
@@ -752,7 +834,8 @@ export default {
752 834
                 nationality: 1,
753 835
                 birth: "",
754 836
                 sex: "",
755
-                operatorFlag: 1
837
+                operatorFlag: 1,
838
+                organizeFlag: 0,
756 839
               }
757 840
             }
758 841
           ]
@@ -854,7 +937,8 @@ export default {
854 937
                     nationality: 1,
855 938
                     birth: "",
856 939
                     sex: "1",
857
-                    operatorFlag: 1
940
+                    operatorFlag: 1,
941
+                    organizeFlag: 0,
858 942
                   },
859 943
                   applicantAgent: {
860 944
                     roleType: 2,
@@ -870,7 +954,8 @@ export default {
870 954
                     nationality: 1,
871 955
                     birth: "",
872 956
                     sex: "1",
873
-                    operatorFlag: 1
957
+                    operatorFlag: 1,
958
+                    organizeFlag: 0,
874 959
                   }
875 960
                 },
876 961
               ],
@@ -890,7 +975,8 @@ export default {
890 975
                     nationality: 1,
891 976
                     birth: "",
892 977
                     sex: "0",
893
-                    operatorFlag: 1
978
+                    operatorFlag: 1,
979
+                    organizeFlag: 0,
894 980
                   },
895 981
                   resAgent: {
896 982
                     roleType: 4,
@@ -906,7 +992,8 @@ export default {
906 992
                     nationality: 1,
907 993
                     birth: "",
908 994
                     sex: "",
909
-                    operatorFlag: 1
995
+                    operatorFlag: 1,
996
+                    organizeFlag: 0,
910 997
                   }
911 998
                 }
912 999
               ]
@@ -920,6 +1007,8 @@ export default {
920 1007
           this.$set(this.formData.affiliate.applicant[0].applicant, "phone", this.getUserInfoList.phonenumber);
921 1008
           this.$set(this.formData.affiliate.applicant[0].applicant, "idType", this.getUserInfoList.idType);
922 1009
           this.$set(this.formData.affiliate.applicant[0].applicant, "nationality", this.getUserInfoList.nationality);
1010
+          this.$set(this.formData.affiliate.applicant[0].applicant, "sex", this.getUserInfoList.sex);
1011
+          this.$set(this.formData.affiliate.applicant[0].applicant, "birth", this.getUserInfoList.birth);
923 1012
         }
924 1013
         this.activeName = "first";
925 1014
         this.showmediate = false;
@@ -953,12 +1042,15 @@ export default {
953 1042
     getUserInfoFn() {
954 1043
       getUserInfo().then(res => {
955 1044
         this.getUserInfoList = res.data;
1045
+        console.log(this.getUserInfoList.sex)
956 1046
         this.$set(this.formData.affiliate.applicant[0].applicant, "name", this.getUserInfoList.nickName);
957 1047
         this.$set(this.formData.affiliate.applicant[0].applicant, "idCard", this.getUserInfoList.idCard);
958 1048
         this.$set(this.formData.affiliate.applicant[0].applicant, "email", this.getUserInfoList.email);
959 1049
         this.$set(this.formData.affiliate.applicant[0].applicant, "phone", this.getUserInfoList.phonenumber);
960 1050
         this.$set(this.formData.affiliate.applicant[0].applicant, "idType", this.getUserInfoList.idType);
961 1051
         this.$set(this.formData.affiliate.applicant[0].applicant, "nationality", this.getUserInfoList.nationality);
1052
+        this.$set(this.formData.affiliate.applicant[0].applicant, "sex", this.getUserInfoList.sex);
1053
+        this.$set(this.formData.affiliate.applicant[0].applicant, "birth", this.getUserInfoList.birth);
962 1054
       })
963 1055
     },
964 1056
     /** 根据案件id获取对应信息 */
@@ -1072,14 +1164,40 @@ export default {
1072 1164
     },
1073 1165
     successZip(res) {
1074 1166
       this.formZipData = res.data;
1075
-      this.$set(this.formData, 'organizeFlag', 0);
1076
-      this.$set(this.formData, 'arbitratClaims', this.formZipData.arbitratClaims);
1077
-      this.$set(this.formData, 'facts', this.formZipData.facts);
1078
-      this.$set(this.formData.affiliate.applicant[0].applicant, 'home', this.formZipData.affiliate.applicant[0].applicant.home);
1079
-      this.$set(this.formData.affiliate.applicant[0].applicant, 'address', this.formZipData.affiliate.applicant[0].applicant.address);
1080
-      this.$set(this.formData.affiliate.applicant[0].applicantAgent, 'phone', this.formZipData.affiliate.applicant[0].applicantAgent.phone);
1081
-      this.$set(this.formData.affiliate.applicant[0].applicantAgent, 'name', this.formZipData.affiliate.applicant[0].applicantAgent.name);
1082
-      this.$set(this.formData.affiliate.applicant[0].applicantAgent, 'email', this.formZipData.affiliate.applicant[0].applicantAgent.email);
1167
+      if (this.formData.affiliate.applicant[0].applicant.organizeFlag == 0) {
1168
+        this.$set(this.formData, 'arbitratClaims', this.formZipData.arbitratClaims);
1169
+        this.$set(this.formData, 'facts', this.formZipData.facts);
1170
+        this.$set(this.formData.affiliate.applicant[0].applicant, 'home', this.formZipData.affiliate.applicant[0].applicant.home);
1171
+        this.$set(this.formData.affiliate.applicant[0].applicant, 'address', this.formZipData.affiliate.applicant[0].applicant.address);
1172
+        this.$set(this.formData.affiliate.applicant[0].applicantAgent, 'phone', this.formZipData.affiliate.applicant[0].applicantAgent.phone);
1173
+        this.$set(this.formData.affiliate.applicant[0].applicantAgent, 'name', this.formZipData.affiliate.applicant[0].applicantAgent.name);
1174
+        this.$set(this.formData.affiliate.applicant[0].applicantAgent, 'email', this.formZipData.affiliate.applicant[0].applicantAgent.email);
1175
+        this.$set(this.formData.affiliate.applicant[0].applicant, 'sex', this.formZipData.affiliate.applicant[0].applicant.sex);
1176
+        this.$set(this.formData.affiliate.applicant[0].applicant, 'birth', this.formZipData.affiliate.applicant[0].applicant.birth);
1177
+      } else if (this.formData.affiliate.applicant[0].applicant.organizeFlag == 1) {
1178
+        this.$set(this.formData, 'arbitratClaims', this.formZipData.arbitratClaims);
1179
+        this.$set(this.formData, 'facts', this.formZipData.facts);
1180
+        this.$set(this.formData.affiliate.applicant[0].applicant, 'name', this.formZipData
1181
+          .affiliate.applicant[0]
1182
+          .applicant.name);
1183
+        this.$set(this.formData.affiliate.applicant[0].applicant, 'code', this.formZipData
1184
+          .affiliate.applicant[0].applicant.code);
1185
+        this.$set(this.formData.affiliate.applicant[0].applicant, 'home', this.formZipData
1186
+          .affiliate.applicant[0]
1187
+          .applicant.home);
1188
+        this.$set(this.formData.affiliate.applicant[0].applicant, 'address', this
1189
+          .formZipData.affiliate.applicant[0]
1190
+          .applicant.address);
1191
+        this.$set(this.formData.affiliate.applicant[0].applicant, 'compLegalPerson', this
1192
+          .formZipData.affiliate.applicant[0]
1193
+          .applicant.compLegalPerson);
1194
+        this.$set(this.formData.affiliate.applicant[0].applicant, 'email', this.formZipData
1195
+          .affiliate.applicant[0]
1196
+          .applicant.email);
1197
+        this.$set(this.formData.affiliate.applicant[0].applicant, 'phone', this.formZipData
1198
+          .affiliate.applicant[0]
1199
+          .applicant.phone);
1200
+      }
1083 1201
       this.$set(this.formData.affiliate.res[0].res, 'name', this.formZipData.affiliate.res[0].res.name);
1084 1202
       this.$set(this.formData.affiliate.res[0].res, 'phone', this.formZipData.affiliate.res[0].res.phone);
1085 1203
       this.$set(this.formData.affiliate.res[0].res, 'idCard', this.formZipData.affiliate.res[0].res.idCard);
@@ -1109,27 +1227,25 @@ export default {
1109 1227
       });
1110 1228
     },
1111 1229
     clearValidate(val) {
1230
+      console.log(val)
1112 1231
       if (val == 0) {
1113 1232
         this.$set(this.formData.affiliate.applicant[0].applicant, "name", this.getUserInfoList.nickName);
1114 1233
         this.$set(this.formData.affiliate.applicant[0].applicant, "idCard", this.getUserInfoList.idCard);
1115 1234
         this.$set(this.formData.affiliate.applicant[0].applicant, "email", this.getUserInfoList.email);
1116 1235
         this.$set(this.formData.affiliate.applicant[0].applicant, "phone", this.getUserInfoList.phonenumber);
1236
+        this.$set(this.formData.affiliate.applicant[0].applicant, "idType", this.getUserInfoList.idType);
1237
+        this.$set(this.formData.affiliate.applicant[0].applicant, "nationality", this.getUserInfoList.nationality);
1117 1238
         if (this.formZipData.affiliate) {
1118
-          this.$set(this.formData, 'organizeFlag', 0);
1239
+          this.$set(this.formData.affiliate.applicant[0].applicant, 'organizeFlag', 0);
1119 1240
           this.$set(this.formData, 'arbitratClaims', this.formZipData.arbitratClaims);
1120 1241
           this.$set(this.formData, 'facts', this.formZipData.facts);
1121
-          this.$set(this.formData.affiliate.applicant[0].applicant, 'name', this.formZipData.affiliate.applicant[0].applicant.name);
1122
-          this.$set(this.formData.affiliate.applicant[0].applicant, 'address', this.formZipData.affiliate.applicant[0].applicant.address);
1123
-          this.$set(this.formData.affiliate.applicant[0].applicantAgent, 'phone', this.formZipData.affiliate.applicant[0].applicantAgent.phone);
1124
-          this.$set(this.formData.affiliate.applicant[0].applicantAgent, 'name', this.formZipData.affiliate.applicant[0].applicantAgent.name);
1125
-          this.$set(this.formData.affiliate.applicant[0].applicantAgent, 'email', this.formZipData.affiliate.applicant[0].applicantAgent.email);
1126
-          this.$set(this.formData.affiliate.res[0].res, 'name', this.formZipData.affiliate.res[0].res.name);
1127
-          this.$set(this.formData.affiliate.res[0].res, 'phone', this.formZipData.affiliate.res[0].res.phone);
1128
-          this.$set(this.formData.affiliate.res[0].res, 'idCard', this.formZipData.affiliate.res[0].res.idCard);
1129
-          this.$set(this.formData.affiliate.res[0].res, 'sex', Number(this.formZipData.affiliate.res[0].res.sex));
1130
-          this.$set(this.formData.affiliate.res[0].res, 'birth', this.formZipData.affiliate.res[0].res.birth);
1131
-          this.$set(this.formData.affiliate.res[0].res, 'home', this.formZipData.affiliate.res[0].res.home);
1132
-          this.$set(this.formData.affiliate.res[0].res, 'email', this.formZipData.affiliate.res[0].res.email);
1242
+          this.$set(this.formData.affiliate.applicant[0].applicant, "name", this.getUserInfoList.nickName);
1243
+          this.$set(this.formData.affiliate.applicant[0].applicant, "idCard", this.getUserInfoList.idCard);
1244
+          this.$set(this.formData.affiliate.applicant[0].applicant, "email", this.getUserInfoList.email);
1245
+          this.$set(this.formData.affiliate.applicant[0].applicant, "phone", this.getUserInfoList.phonenumber);
1246
+          this.$set(this.formData.affiliate.applicant[0].applicant, "idType", this.getUserInfoList.idType);
1247
+          this.$set(this.formData.affiliate.applicant[0].applicant, "nationality", this.getUserInfoList.nationality);
1248
+
1133 1249
         } else {
1134 1250
           this.formData.affiliate.applicant[0].applicantAgent.name = null;
1135 1251
           this.formData.affiliate.applicant[0].applicantAgent.email = null;
@@ -1140,27 +1256,63 @@ export default {
1140 1256
         this.$set(this.formData.affiliate.applicant[0].applicantAgent, "email", this.getUserInfoList.email);
1141 1257
         this.$set(this.formData.affiliate.applicant[0].applicantAgent, "phone", this.getUserInfoList.phonenumber);
1142 1258
         if (this.formZipData.affiliate) {
1143
-          this.$set(this.formData, 'organizeFlag', 1);
1259
+          this.$set(this.formData.affiliate.applicant[0].applicant, 'organizeFlag', 1);
1144 1260
           this.$set(this.formData, 'arbitratClaims', this.formZipData.arbitratClaims);
1145 1261
           this.$set(this.formData, 'facts', this.formZipData.facts);
1146
-          this.$set(this.formData.affiliate.applicant[0].applicant, 'name', this.formZipData.affiliate.applicant[0].applicant.name);
1147
-          this.$set(this.formData.affiliate.applicant[0].applicant, 'code', this.formZipData.affiliate.applicant[0].applicant.code);
1148
-          this.$set(this.formData.affiliate.applicant[0].applicant, 'email', this.formZipData.affiliate.applicant[0].applicant.email);
1149
-          this.$set(this.formData.affiliate.applicant[0].applicant, 'phone', this.formZipData.affiliate.applicant[0].applicant.phone);
1262
+          this.$set(this.formData.affiliate.applicant[0].applicant, 'name', this.formZipData
1263
+            .affiliate.applicant[0]
1264
+            .applicant.name);
1265
+          this.$set(this.formData.affiliate.applicant[0].applicant, 'code', this.formZipData
1266
+            .affiliate.applicant[0].applicant.code);
1267
+          this.$set(this.formData.affiliate.applicant[0].applicant, 'home', this.formZipData
1268
+            .affiliate.applicant[0]
1269
+            .applicant.home);
1270
+          this.$set(this.formData.affiliate.applicant[0].applicant, 'address', this
1271
+            .formZipData.affiliate.applicant[0]
1272
+            .applicant.address);
1273
+          this.$set(this.formData.affiliate.applicant[0].applicant, 'compLegalPerson', this
1274
+            .formZipData.affiliate.applicant[0]
1275
+            .applicant.compLegalPerson);
1276
+          this.$set(this.formData.affiliate.applicant[0].applicant, 'email', this.formZipData
1277
+            .affiliate.applicant[0]
1278
+            .applicant.email);
1279
+          this.$set(this.formData.affiliate.applicant[0].applicant, 'phone', this.formZipData
1280
+            .affiliate.applicant[0]
1281
+            .applicant.phone);
1282
+        } else {
1283
+          this.$set(this.formData.affiliate.applicant[0].applicant, 'name', null);
1284
+          this.$set(this.formData.affiliate.applicant[0].applicant, 'idCard', null);
1285
+          this.$set(this.formData.affiliate.applicant[0].applicant, 'email', null);
1286
+          this.$set(this.formData.affiliate.applicant[0].applicant, 'phone', null);
1287
+        }
1288
+      }
1289
+      this.$refs["ruleForm"].clearValidate()
1290
+    },
1291
+    clearValidateRes(val) {
1292
+      if (val == 0) {
1293
+        if (this.formZipData.affiliate) {
1294
+          this.$set(this.formData.affiliate.res[0].res, 'organizeFlag', 0);
1150 1295
           this.$set(this.formData.affiliate.res[0].res, 'name', this.formZipData.affiliate.res[0].res.name);
1151 1296
           this.$set(this.formData.affiliate.res[0].res, 'phone', this.formZipData.affiliate.res[0].res.phone);
1152 1297
           this.$set(this.formData.affiliate.res[0].res, 'idCard', this.formZipData.affiliate.res[0].res.idCard);
1153
-          this.$set(this.formData.affiliate.res[0].res, 'sex', this.formZipData.affiliate.res[0].res.sex);
1298
+          this.$set(this.formData.affiliate.res[0].res, 'sex', Number(this.formZipData.affiliate.res[0].res.sex));
1299
+          this.$set(this.formData.affiliate.res[0].res, 'birth', this.formZipData.affiliate.res[0].res.birth);
1300
+          this.$set(this.formData.affiliate.res[0].res, 'home', this.formZipData.affiliate.res[0].res.home);
1301
+          this.$set(this.formData.affiliate.res[0].res, 'email', this.formZipData.affiliate.res[0].res.email);
1302
+        }
1303
+      } else if (val == 1) {
1304
+        if (this.formZipData.affiliate) {
1305
+          this.$set(this.formData.affiliate.res[0].res, 'organizeFlag', 1);
1306
+          this.$set(this.formData.affiliate.res[0].res, 'name', this.formZipData.affiliate.res[0].res.name);
1307
+          this.$set(this.formData.affiliate.res[0].res, 'phone', this.formZipData.affiliate.res[0].res.phone);
1308
+          this.$set(this.formData.affiliate.res[0].res, 'idCard', this.formZipData.affiliate.res[0].res.idCard);
1309
+          this.$set(this.formData.affiliate.res[0].res, 'sex', Number(this.formZipData.affiliate.res[0].res.sex));
1154 1310
           this.$set(this.formData.affiliate.res[0].res, 'birth', this.formZipData.affiliate.res[0].res.birth);
1155 1311
           this.$set(this.formData.affiliate.res[0].res, 'home', this.formZipData.affiliate.res[0].res.home);
1156 1312
           this.$set(this.formData.affiliate.res[0].res, 'email', this.formZipData.affiliate.res[0].res.email);
1157
-        } else {
1158
-          this.$set(this.formData.affiliate.applicant[0].applicant, 'name', null);
1159
-          this.$set(this.formData.affiliate.applicant[0].applicant, 'idCard', null);
1160
-          this.$set(this.formData.affiliate.applicant[0].applicant, 'email', null);
1161
-          this.$set(this.formData.affiliate.applicant[0].applicant, 'phone', null);
1162 1313
         }
1163 1314
       }
1315
+      console.log(val)
1164 1316
       this.$refs["ruleForm"].clearValidate()
1165 1317
     },
1166 1318
     cancel() {
@@ -1180,6 +1332,18 @@ export default {
1180 1332
         this.formData.affiliate.res[index].res.birth = res.respondentBirth;
1181 1333
       });
1182 1334
     },
1335
+    // 申请人身份证
1336
+    handleBlurApplicant(index) {
1337
+      console.log(index)
1338
+      let idCards = {
1339
+        idCard: this.formData.affiliate.applicant[index].applicant.idCard,
1340
+      };
1341
+      getInfoByIdCard(idCards).then((res) => {
1342
+        this.formData.affiliate.applicant[index].applicant.sex = res.respondentSex;
1343
+        // console.log(res.respondentBirth);
1344
+        this.formData.affiliate.applicant[index].applicant.birth = res.respondentBirth;
1345
+      });
1346
+    },
1183 1347
     /**删除新增信息某一项 */
1184 1348
     deleteDetali(item) {
1185 1349
       var index = this.formData.affiliate.indexOf(item)
@@ -1204,7 +1368,8 @@ export default {
1204 1368
           nationality: 1,
1205 1369
           birth: "",
1206 1370
           sex: "1",
1207
-          operatorFlag: 1
1371
+          operatorFlag: 1,
1372
+          organizeFlag: 0,
1208 1373
         },
1209 1374
         applicantAgent: {
1210 1375
           roleType: 2,
@@ -1220,7 +1385,8 @@ export default {
1220 1385
           nationality: 1,
1221 1386
           birth: "",
1222 1387
           sex: "1",
1223
-          operatorFlag: 1
1388
+          operatorFlag: 1,
1389
+          organizeFlag: 0,
1224 1390
         },
1225 1391
       },);
1226 1392
     },
@@ -1241,7 +1407,8 @@ export default {
1241 1407
           nationality: 1,
1242 1408
           birth: "",
1243 1409
           sex: "1",
1244
-          operatorFlag: 1
1410
+          operatorFlag: 1,
1411
+          organizeFlag: 0,
1245 1412
         },
1246 1413
         resAgent: {
1247 1414
           roleType: 4,
@@ -1257,7 +1424,8 @@ export default {
1257 1424
           nationality: 1,
1258 1425
           birth: "",
1259 1426
           sex: "1",
1260
-          operatorFlag: 1
1427
+          operatorFlag: 1,
1428
+          organizeFlag: 0,
1261 1429
         },
1262 1430
       },);
1263 1431
     },

+ 12
- 5
src/views/caseManagement/components/mediation.vue Zobrazit soubor

@@ -57,7 +57,7 @@
57 57
         </el-col>
58 58
         <el-col :span="24">
59 59
           <el-form-item label="是否用印申请" v-if="formData.mediaResult == 1">
60
-             <el-radio-group v-model="sealFlag">
60
+             <el-radio-group v-model="formData.sealFlag" :disabled="!selectRoido">
61 61
                 <el-radio :label="1">是</el-radio>
62 62
                 <el-radio :label="0">否</el-radio>
63 63
             </el-radio-group>
@@ -156,7 +156,8 @@ export default {
156 156
       // isReconci:0,
157 157
       formData: {
158 158
         affiliate: {},
159
-        mediaResult:1
159
+        mediaResult:1,
160
+        sealFlag:1,
160 161
       },
161 162
       user: "",
162 163
       userId: null,
@@ -177,7 +178,8 @@ export default {
177 178
   },
178 179
   watch: {
179 180
     mediationVisable(val) {
180
-      this.formData.mediaResult = 1
181
+      this.formData.mediaResult = 1;
182
+      this.formData.sealFlag = 1;
181 183
       this.recordArr = [];
182 184
       this.recordArrMediate = [];
183 185
       if (this.mediationData.mediationMethod == "1") {
@@ -238,8 +240,12 @@ export default {
238 240
           this.formData = res.data;
239 241
           this.formData.mediaResult = 1;
240 242
         }
241
-       
242
-        console.log(this.formData)
243
+        if(res.data.sealFlag==1||res.data.sealFlag==0){
244
+           this.formData = res.data;
245
+        }else{
246
+          this.formData = res.data;
247
+          this.formData.sealFlag = 1;
248
+        }
243 249
         this.applicateArr = res.data.caseAttachList;
244 250
         res.data.caseAttachList.forEach(item => {
245 251
           if (item.annexType == 6) {
@@ -282,6 +288,7 @@ export default {
282 288
         caseFlowId: this.mediationData.caseFlowId,
283 289
         batchNumber: "",
284 290
         mediaResult: this.formData.mediaResult,
291
+        sealFlag:this.formData.sealFlag
285 292
       }).then(res => {
286 293
         caseApplicationSelectById({
287 294
           id: this.mediationData.id

+ 57
- 0
src/views/deliveryRecord/components/emailEdits.vue Zobrazit soubor

@@ -0,0 +1,57 @@
1
+<template>
2
+    <div>
3
+        <el-dialog title="编辑内容" :visible="emailVidable"  @close="cancel" center
4
+            :distroy-on-close="true">
5
+            <div>
6
+                <el-input type="textarea" :rows="6" placeholder="请输入内容" v-model="sendData">
7
+                </el-input>
8
+            </div>
9
+            <div slot="footer" class="dialog-footer">
10
+                <el-button @click="cancel" class="endbutton1" round><span>取 消</span></el-button>
11
+                <el-button @click="submitSend" class="endbutton1" type="primary" round><span>确 认</span></el-button>
12
+            </div>
13
+        </el-dialog>
14
+    </div>
15
+</template>
16
+
17
+<script>
18
+import {
19
+    updateSendContent,update
20
+} from "@/api/deliveryRecord/deliveryRecord.js";
21
+export default {
22
+    props: ["emailVidable", "emailRow","queryParams"],
23
+    data() {
24
+        return {
25
+            sendData:''
26
+        };
27
+    },
28
+    watch: {
29
+        emailVidable(val){
30
+            if(val){
31
+                this.sendData = this.emailRow.mailContent;
32
+            }
33
+        }
34
+    },
35
+    methods: {
36
+        cancel() {
37
+            this.$emit("cancelEmail");
38
+        },
39
+        submitSend() {
40
+            console.log(this.emailRow.mailContent)
41
+            this.updateSendContentFn({
42
+                id:this.emailRow.id,
43
+                mailContent:this.sendData
44
+            })
45
+        },
46
+        updateSendContentFn(data){
47
+            update(data).then(res=>{
48
+                this.$message.success('更新成功');
49
+                this.$emit("cancelEmail");
50
+                this.$emit('getList',this.queryParams);
51
+            })
52
+        }
53
+    },
54
+};
55
+</script>
56
+
57
+<style lang="scss" scoped></style>

+ 19
- 6
src/views/deliveryRecord/components/resend.vue Zobrazit soubor

@@ -2,10 +2,12 @@
2 2
     <div>
3 3
         <el-dialog title="修改内容" :visible="resendVidable" v-if="resendVidable" @close="cancel" center
4 4
             :distroy-on-close="true">
5
-            <div>
6
-                <el-input type="textarea" :rows="6" placeholder="请输入内容" v-model="sendData">
7
-                </el-input>
8
-            </div>
5
+            <div style="margin-bottom: 30px;"><span style="font-weight: bold;">发送内容:</span>{{ sendData }}</div>
6
+            <el-form label-width="100px">
7
+                <el-form-item v-for="(item,index) in rowData.templateParams" :label="item.paramName" :key="item.id"> 
8
+                    <el-input v-model="rowData.templateParams[index].paramValue" @input="changeContent"></el-input>
9
+                </el-form-item>
10
+            </el-form>
9 11
             <div slot="footer" class="dialog-footer">
10 12
                 <el-button @click="cancel" class="endbutton1" round><span>取 消</span></el-button>
11 13
                 <el-button @click="submitSend" class="endbutton1" type="primary" round><span>确 认</span></el-button>
@@ -22,7 +24,10 @@ export default {
22 24
     props: ["resendVidable", "rowData","queryParams"],
23 25
     data() {
24 26
         return {
25
-            sendData:''
27
+            sendData:'',
28
+            param:"",
29
+            paramValue:""
30
+
26 31
         };
27 32
     },
28 33
     watch: {
@@ -37,9 +42,10 @@ export default {
37 42
             this.$emit("cancelSend");
38 43
         },
39 44
         submitSend() {
45
+            console.log(this.rowData)
40 46
             this.updateSendContentFn({
41 47
                 id:this.rowData.id,
42
-                sendContent:this.sendData
48
+                templateParams:this.rowData.templateParams
43 49
             })
44 50
         },
45 51
         updateSendContentFn(data){
@@ -48,6 +54,13 @@ export default {
48 54
                 this.$emit("cancelSend");
49 55
                 this.$emit('getList',this.queryParams);
50 56
             })
57
+        },
58
+        changeContent(){
59
+            let templateContent = this.rowData.templateContent
60
+            this.rowData.templateParams.forEach(item => {
61
+                templateContent = templateContent.replace(item.param,item.paramValue)
62
+            });
63
+           this.sendData = templateContent
51 64
         }
52 65
     },
53 66
 };

+ 38
- 5
src/views/deliveryRecord/emailRecord.vue Zobrazit soubor

@@ -27,7 +27,14 @@
27 27
             <!-- 缴费人 -->
28 28
             <!-- <el-table-column label="案件状态" align="center" prop="caseStatusName" /> -->
29 29
             <el-table-column label="内容" align="center" prop="mailContent"></el-table-column>
30
+            <el-table-column label="操作" align="center">
31
+                <template  slot-scope="scope">
32
+                    <el-button size="mini" type="text" @click="emailEditing(scope.row)" icon="el-icon-s-promotion">邮箱编辑</el-button>
33
+                    <el-button v-if="scope.row.sendStatus == '未发送'" size="mini" type="text" @click="resendCounts(scope.row)" icon="el-icon-s-promotion">重新发送</el-button>
34
+                </template>
35
+            </el-table-column>
30 36
         </el-table>
37
+        <emailEdits :emailVidable="emailVidable" @cancelEmail="cancelEmail"   @getList="getList" :queryParams="queryParams" :emailRow="emailRow"></emailEdits>
31 38
         <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
32 39
             @pagination="getList(queryParams)" />
33 40
 
@@ -36,14 +43,14 @@
36 43
   
37 44
 <script>
38 45
 import {
39
-    emailList,
46
+    emailList,reSendMailRecord
40 47
 } from "@/api/deliveryRecord/deliveryRecord.js";
41
-
48
+import emailEdits from "./components/emailEdits.vue";
42 49
 import { getDicts } from '@/api/system/dict/data.js'
43 50
 export default {
44 51
     name: "paymentList",
45 52
     dicts: ["case_status"],
46
-    components: {},
53
+    components: {emailEdits},
47 54
     data() {
48 55
         return {
49 56
             queryParams: {
@@ -60,6 +67,9 @@ export default {
60 67
             // 校验表单
61 68
             rules: {},
62 69
             dataList: [],
70
+            emailVidable:false,
71
+            emailRow:{},
72
+            sendStatusMessage:false,
63 73
         };
64 74
     },
65 75
     created() {
@@ -89,14 +99,37 @@ export default {
89 99
                         item.sendStatus = "未发送"
90 100
                     } else if (item.sendStatus == 1) {
91 101
                         item.sendStatus = "已发送"
92
-                    } else {
93
-                        item.sendStatus = "未发送"
102
+
94 103
                     }
95 104
                 })
96 105
                 this.total = response.total;
97 106
                 this.loading = false;
98 107
             });
99 108
         },
109
+        // 邮箱编辑内容
110
+        emailEditing(data){
111
+            this.emailVidable = true
112
+            this.emailRow = data;
113
+            console.log(data)
114
+        },
115
+        // 关闭弹窗
116
+        cancelEmail(){
117
+            this.emailVidable = false
118
+        },
119
+        // 重新发送
120
+        resendCounts(row){
121
+           if(row.sendStatus=='未发送'){
122
+            row.sendStatus = 0
123
+           }else if(row.sendStatus=='已发送'){
124
+            row.sendStatus = 1
125
+           }
126
+            reSendMailRecord(row).then(res=>{
127
+                console.log(res)
128
+                this.$message.success('发送成功');
129
+                this.getList(this.queryParams);
130
+            })
131
+            
132
+        }
100 133
     },
101 134
 };
102 135
 </script>

+ 29
- 9
src/views/deliveryRecord/smsRecord.vue Zobrazit soubor

@@ -23,11 +23,13 @@
23 23
             <el-table-column label="发送时间" align="center" prop="sendTime" />
24 24
             <el-table-column label="发送状态" align="center" prop="sendStatus" />
25 25
             <el-table-column label="发送内容" align="center" prop="sendContent" :show-overflow-tooltip="true"/>
26
+            <el-table-column label="备注" align="center" prop="reason" :show-overflow-tooltip="true"/>
26 27
             <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
27 28
                 <template slot-scope="scope">
28 29
                     <el-button size="mini" @click="copyContent(scope.row.sendContent)" type="text"
29 30
                         icon="el-icon-document-copy">复制内容</el-button>
30 31
                     <el-button size="mini" @click="resend(scope.row)" type="text" icon="el-icon-s-promotion">编辑内容</el-button>
32
+                    <el-button v-if="scope.row.sendStatus == '发送失败'|| scope.row.sendStatus == '发送中'"  size="mini" type="text" @click="resendMessage(scope.row)" icon="el-icon-s-promotion">重新发送</el-button>
31 33
                 </template>
32 34
             </el-table-column>
33 35
         </el-table>
@@ -41,7 +43,7 @@
41 43
 
42 44
 <script>
43 45
 import {
44
-    smsList,
46
+    recordList,reSendShortMessage
45 47
 } from "@/api/deliveryRecord/deliveryRecord.js";
46 48
 import resend from "./components/resend.vue";
47 49
 import { getDicts } from '@/api/system/dict/data.js'
@@ -66,7 +68,8 @@ export default {
66 68
             rules: {},
67 69
             dataList: [],
68 70
             rowData:{},
69
-            resendVidable:false
71
+            resendVidable:false,
72
+            sendStatusMessage:false
70 73
         };
71 74
     },
72 75
     created() {
@@ -107,16 +110,14 @@ export default {
107 110
         // 查询列表数据
108 111
         getList(data, params) {
109 112
             this.loading = true;
110
-            smsList(data, params).then((response) => {
113
+            recordList(data, params).then((response) => {
111 114
                 this.dataList = response.rows;
112 115
                 this.dataList.forEach(item => {
113
-                    if (item.sendStatus == 0) {
114
-                        item.sendStatus = "发送失败"
115
-                    } else if (item.sendStatus == 1) {
116
-                        item.sendStatus = "已送达"
116
+                    if (item.sendStatus == 1) {
117
+                        item.sendStatus = "发送成功"
117 118
                     } else if (item.sendStatus == 2) {
118
-                        item.sendStatus = "已读取"
119
-                    } else {
119
+                        item.sendStatus = "发送中"
120
+                    } else if(item.sendStatus == 3){
120 121
                         item.sendStatus = "发送失败"
121 122
                     }
122 123
                 })
@@ -124,6 +125,25 @@ export default {
124 125
                 this.loading = false;
125 126
             });
126 127
         },
128
+        // 重新发送
129
+        resendMessage(row){
130
+            console.log(row.sendStatus)
131
+            let valuesRow ={
132
+                id:row.id,
133
+                templateId:row.templateId,
134
+                phone:row.phone,
135
+                templateParams:row.templateParams
136
+            }
137
+            this.reSendShortMessageFn(valuesRow)
138
+            console.log(valuesRow)
139
+           
140
+        },
141
+        reSendShortMessageFn(valuesRow){
142
+            reSendShortMessage(valuesRow).then(res=>{
143
+                this.$message.success('发送成功');
144
+                this.getList({ caseNum: this.queryParams.caseNum }, { pageNum: this.queryParams.pageNum, pageSize: this.queryParams.pageSize });
145
+            })
146
+        }
127 147
     },
128 148
 };
129 149
 </script>

+ 65
- 9
src/views/register.vue Zobrazit soubor

@@ -1,5 +1,9 @@
1 1
 <template>
2 2
   <div class="register">
3
+      <div class="leftIcon">
4
+        <div class="Icon"></div>
5
+        <div>智慧调解系统</div>
6
+      </div>
3 7
     <el-form ref="registerForm" :model="registerForm" :rules="registerRules" class="register-form">
4 8
       <h3 class="title">智慧调解系统注册</h3>
5 9
       <el-form-item prop="userName">
@@ -35,8 +39,8 @@
35 39
           </el-option>
36 40
         </el-select>
37 41
       </el-form-item>
38
-      <el-form-item prop="identityNo" v-if="registerForm.idType === 0">
39
-        <el-input v-model="registerForm.identityNo" type="text" auto-complete="off" placeholder="身份证号码">
42
+      <el-form-item prop="identityNo">
43
+        <el-input v-model="registerForm.identityNo" type="text" auto-complete="off" placeholder="证号码">
40 44
           <svg-icon slot="prefix" icon-class="user" class="el-input__icon input-icon" />
41 45
         </el-input>
42 46
       </el-form-item>
@@ -46,9 +50,18 @@
46 50
         </el-input>
47 51
       </el-form-item>
48 52
       <el-form-item prop="email">
49
-        <el-input v-model="registerForm.email" type="text" auto-complete="off" placeholder="邮箱">
53
+        <el-input v-model="registerForm.email" type="text" auto-complete="off" placeholder="邮箱" style="width:63%;">
50 54
           <svg-icon slot="prefix" icon-class="email" class="el-input__icon input-icon" />
51 55
         </el-input>
56
+        <div class="register-code">
57
+          <el-button type="primary" :disabled="emailDisabled"  @click="getEmailNumber(registerForm.email)">{{ emailText
58
+          }}</el-button>
59
+        </div>
60
+      </el-form-item>
61
+      <el-form-item prop="emailVerifyCode">
62
+        <el-input v-model="registerForm.emailVerifyCode" type="text" auto-complete="off" placeholder="邮箱验证码">
63
+          <svg-icon slot="prefix" icon-class="validCode" class="el-input__icon input-icon" />
64
+        </el-input>
52 65
       </el-form-item>
53 66
       <el-form-item prop="name">
54 67
         <el-input v-model="registerForm.name" type="text" auto-complete="off" placeholder="用户名">
@@ -105,7 +118,7 @@
105 118
 </template>
106 119
 
107 120
 <script>
108
-import { getCodeImg, register, sendCode, wxregister,verifyUserName,getIdType } from "@/api/login";
121
+import { getCodeImg, register, sendCode, wxregister,verifyUserName,getIdType,sendEmailCode } from "@/api/login";
109 122
 import { listRoleNotoken } from "@/api/system/role.js"
110 123
 export default {
111 124
   name: "Register",
@@ -119,7 +132,9 @@ export default {
119 132
     };
120 133
     return {
121 134
       codeText: "发送验证码",
135
+      emailText:"发送验证码",
122 136
       codeDisabled: false,
137
+      emailDisabled:false,
123 138
       codeUrl: "",
124 139
       registerForm: {
125 140
         userName: "",
@@ -154,7 +169,7 @@ export default {
154 169
         identityNo: [
155 170
           {
156 171
             required: true,
157
-            message: '被申请人身份证号不能为空',
172
+            message: '证不能为空',
158 173
             trigger: 'blur',
159 174
           },
160 175
           // {
@@ -165,7 +180,7 @@ export default {
165 180
           // },
166 181
         ],
167 182
         email: [
168
-          { required: true, trigger: "blur", message: "请再次输入您的密码" },
183
+          { required: true, trigger: "blur", message: "请输入您的邮箱" },
169 184
           {
170 185
             pattern:
171 186
               /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
@@ -192,7 +207,10 @@ export default {
192 207
           },
193 208
         ],
194 209
         verifyCode: [
195
-          { required: true, trigger: "blur", message: "请输入验证码" },
210
+          { required: true, trigger: "blur", message: "请输入短信验证码" },
211
+        ],
212
+        emailVerifyCode:[
213
+        { required: true, trigger: "blur", message: "请输入邮箱验证码" },
196 214
         ],
197 215
         idType: [
198 216
           { required: true, trigger: "blur", message: "请选择证件类型" },
@@ -295,6 +313,28 @@ export default {
295 313
 
296 314
       })
297 315
     },
316
+    // 获取邮箱验证码
317
+    getEmailNumber(emailValue){
318
+      sendEmailCode({email:emailValue}).then(res=>{
319
+        if(res.code != 200){
320
+          this.$modal.msgError(res.msg);
321
+          return
322
+        }else{
323
+          this.$modal.msgSuccess('发送成功');
324
+          let time = 60;
325
+          let timer = setInterval(() => {
326
+            time--;
327
+            this.emailDisabled = true;
328
+            this.emailText = time + 's重试'
329
+            if (time == 0) {
330
+              clearInterval(timer)
331
+              this.emailText = '发送验证码'
332
+              this.emailDisabled = false;
333
+            }
334
+          }, 1000)
335
+        }
336
+      })
337
+    }
298 338
   }
299 339
 };
300 340
 </script>
@@ -304,9 +344,25 @@ export default {
304 344
   display: flex;
305 345
   justify-content: center;
306 346
   align-items: center;
307
-  //height: 100%;
308
-  background-image: url("../assets/images/login-background.jpg");
347
+  // height: 100%;
348
+  // background-image: url("../assets/images/login-background.jpg");
349
+  background-image: url("../assets/images/login.svg");
309 350
   background-size: cover;
351
+  .leftIcon {
352
+      position: relative;
353
+      width: 200px;
354
+      height: 155px;
355
+      top:-300px;
356
+      left: -300px;
357
+
358
+      .Icon {
359
+        width: 100px;
360
+        height: 105px;
361
+        background-image: url("../assets/images/logos.png");
362
+        background-size: cover;
363
+      }
364
+    }
365
+  
310 366
 }
311 367
 
312 368
 .title {

+ 7
- 0
src/views/system/user/index.vue Zobrazit soubor

@@ -189,6 +189,13 @@
189 189
             </el-form-item>
190 190
           </el-col>
191 191
         </el-row>
192
+        <el-row>
193
+          <el-col :span="12">
194
+            <el-form-item  label="证件号码" prop="idCard">
195
+              <el-input v-model="form.idCard" placeholder="请输入证件号码"  maxlength="18"  />
196
+            </el-form-item>
197
+          </el-col>
198
+        </el-row>
192 199
         <el-row>
193 200
           <el-col :span="24">
194 201
             <el-form-item label="备注">

+ 2
- 2
vue.config.js Zobrazit soubor

@@ -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:7001'  //生产
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://172.16.0.237:6001' //Q
18
-// const API = 'http://172.16.1.26:6001' //w
18
+const API = 'http://172.16.1.26:6001' //w
19 19
 
20 20
 // vue.config.js 配置说明 
21 21
 //官方vue.config.js 参考文档 https://cli.vuejs.org/zh/config/#css-loaderoptions