Explorar el Código

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

gaogaoyujie hace 2 años
padre
commit
3a6a780964

+ 2
- 1
src/api/login.js Ver fichero

@@ -107,9 +107,10 @@ export function selectIdentityAuthenticaEIDtoken() {
107 107
   })
108 108
 } 
109 109
 // H5轮询获取E证通Token状态
110
-export function selectPCEIDtokenStatus() {
110
+export function selectPCEIDtokenStatus(data) {
111 111
   return request({
112 112
     url: '/identityAuthentication/selectPCEIDtokenStatus',
113 113
     method: 'get',
114
+    params:data
114 115
   })
115 116
 }

+ 2
- 1
src/store/modules/user.js Ver fichero

@@ -73,13 +73,14 @@ const user = {
73 73
     },
74 74
 
75 75
     // 退出系统
76
-    LogOut({ commit, state }) {
76
+    LogOut({ commit, state, dispatch }) {
77 77
       return new Promise((resolve, reject) => {
78 78
         logout(state.token).then(() => {
79 79
           commit('SET_TOKEN', '')
80 80
           commit('SET_ROLES', [])
81 81
           commit('SET_PERMISSIONS', [])
82 82
           removeToken()
83
+          dispatch('tagsView/delAllViews', null, { root: true })
83 84
           resolve()
84 85
         }).catch(error => {
85 86
           reject(error)

+ 14
- 1
src/views/caseManagement/components/addCase.vue Ver fichero

@@ -80,7 +80,7 @@
80 80
             </el-form-item>
81 81
           </el-col>
82 82
           <el-col :span="24" v-if="modelFlag && showmediate">
83
-            <el-form-item label="调解书:">
83
+            <el-form-item label="签名前调解书:">
84 84
               <div v-for="(item, index) in formData.caseAttachList" :key="index" v-if="item.annexType == 7">
85 85
                 <div style="color: blue; cursor: pointer" @click="fileDetil(item.onlyOfficeFileId, 2)">
86 86
                   {{ item.annexName }}
@@ -88,6 +88,15 @@
88 88
               </div>
89 89
             </el-form-item>
90 90
           </el-col>
91
+          <el-col :span="24" v-if="modelFlag&&labelShowMediate">
92
+            <el-form-item label="调解后调解书:">
93
+              <div v-for="(item, index) in formData.caseAttachList" :key="index" v-if="item.annexType == 13">
94
+                <div style="color: blue; cursor: pointer" @click="fileDetil(item.annexPath, 1)">
95
+                  {{ item.annexName }}
96
+                </div>
97
+              </div>
98
+            </el-form-item>
99
+          </el-col>
91 100
           <el-col :span="24">
92 101
             <el-form-item label="调解结果:" v-if="modelFlag && formData.mediaResult">
93 102
               <el-link v-if="formData.mediaResult == 1">达成调解</el-link>
@@ -861,6 +870,7 @@ export default {
861 870
       getUserInfoList: {},
862 871
       applicationFlag: null,
863 872
       showmediate: false,
873
+      labelShowMediate:false,
864 874
       showEvidence: false,//是否显示证据
865 875
       mediationApplication: false,
866 876
       formZipData: {},
@@ -1012,6 +1022,7 @@ export default {
1012 1022
         }
1013 1023
         this.activeName = "first";
1014 1024
         this.showmediate = false;
1025
+        this.labelShowMediate = false;
1015 1026
         this.showEvidence = false;
1016 1027
         this.mediationApplication = false;
1017 1028
         this.getTemplateFn();
@@ -1087,6 +1098,8 @@ export default {
1087 1098
             this.showmediate = true
1088 1099
           } else if (item.annexType == 3) {
1089 1100
             this.mediationApplication = true
1101
+          } else if(item.annexType == 13){
1102
+            this.labelShowMediate = true
1090 1103
           }
1091 1104
         });
1092 1105
 

+ 28
- 4
src/views/caseManagement/components/caseFilingDetailsPage.vue Ver fichero

@@ -29,7 +29,17 @@
29 29
          </div> -->
30 30
         <div v-show="activeName == 'third'">
31 31
           <div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType == 7" style="margin-top:10px;">
32
-            <el-link target="_blank" type="primary" :href="fileURL + item.annexPath">{{ item.annexName }}</el-link>
32
+            <!-- <el-link target="_blank" type="primary" :href="fileURL + item.annexPath">{{ item.annexName }}</el-link> -->
33
+                    <span>签署前调解书:</span>
34
+                    <div style="color: blue; cursor: pointer" @click="fileDetil(item.onlyOfficeFileId, 2)">
35
+                      {{ item.annexName }}
36
+                    </div>
37
+          </div>
38
+           <div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType == 13" style="margin-top:10px;">
39
+                    <span>签署后调解书:</span>
40
+                    <div style="color: blue; cursor: pointer" @click="fileDetil(item.annexPath, 1)">
41
+                      {{ item.annexName }}
42
+                    </div>
33 43
           </div>
34 44
           <el-empty v-if="isNoData(detailsAwardNum.caseAttachList, 7) == 0" description="暂无数据"></el-empty>
35 45
         </div>
@@ -89,13 +99,22 @@
89 99
                 </el-form-item>
90 100
               </el-col>
91 101
               <el-col :span="24">
92
-                <el-form-item label="调解书:">
102
+                <el-form-item label="签署前调解书:">
93 103
                   <div v-for="(item, index) in detailsAwardNum.caseAttachList" :key="index" v-if="item.annexType == 7">
94 104
                     <div style="color: blue; cursor: pointer" @click="fileDetil(item.onlyOfficeFileId, 2)">
95 105
                       {{ item.annexName }}
96 106
                     </div>
97 107
                   </div>
98 108
                 </el-form-item>
109
+              </el-col>
110
+               <el-col :span="24">
111
+                <el-form-item label="签署后调解书:">
112
+                  <div v-for="(item, index) in detailsAwardNum.caseAttachList" :key="index" v-if="item.annexType == 13">
113
+                    <div style="color: blue; cursor: pointer" @click="fileDetil(item.annexPath, 1)">
114
+                      {{ item.annexName }}
115
+                    </div>
116
+                  </div>
117
+                </el-form-item>
99 118
               </el-col>
100 119
               <el-col :span="24">
101 120
                 <el-form-item label="调解结果:">
@@ -683,8 +702,13 @@ export default {
683 702
       });
684 703
     },
685 704
     /** 查看证据 */
686
-    fileDetil(val) {
687
-      window.open(this.fileURL + val);
705
+    fileDetil(val,flag) {
706
+      if(flag==1){
707
+         window.open(this.fileURL + val);
708
+      }else if(flag==2){
709
+         this.$router.push({ path: '/onlyoffice', query: { id: val, flag: 0 } })
710
+      }
711
+     
688 712
     },
689 713
     /** 文件上传地址 */
690 714
     UploadUrl() {

+ 1
- 2
src/views/caseManagement/components/mediation.vue Ver fichero

@@ -266,6 +266,7 @@ export default {
266 266
     },
267 267
     /** 发起会议 */
268 268
     openmeeting() {
269
+      this.mediationVisable = false
269 270
       window.open(
270 271
         // `http://localhost:8080/#/home?name=${this.user}&id=${this.formData.id}&userId=${this.userId}&roomId=${this.formData.roomId}&type=tiaojie&token=${getToken()}`
271 272
         `https://txroom.xayunmei.com/#/home?name=${this.user}&id=${this.formData.id}&userId=${this.userId}&roomId=${this.formData.roomId}&type=tiaojie&token=${getToken()}`
@@ -340,8 +341,6 @@ export default {
340 341
           id: this.mediationData.id,
341 342
           caseFlowId: this.mediationData.caseFlowId,
342 343
           attachList: this.attachList,
343
-          sealFlag:this.sealFlag,
344
-          mediaResult: this.formData.mediaResult,
345 344
         }
346 345
       } else {
347 346
         if(this.formData.mediaResult != 1){

+ 5
- 5
src/views/caseManagement/components/mediationApplications.vue Ver fichero

@@ -79,11 +79,6 @@ export default {
79 79
 
80 80
         },
81 81
         beforeUpload(flie, fileList) {
82
-            const isLt2M = flie.size / 1024 / 1024 < 50; // 小于50MB
83
-            if (!isLt2M) {
84
-                this.$message.error('上传的文件大小不能超过 50MB!');
85
-            }
86
-            return isLt2M;
87 82
             function getFileExtension(filename) {
88 83
                 const parts = filename.split('.');
89 84
                 return parts.length > 1 ? parts.pop() : '';
@@ -96,6 +91,11 @@ export default {
96 91
             }
97 92
             this.filedata.caseId = this.mediationLise.id
98 93
             this.fileList = fileList;
94
+            const isLt2M = flie.size / 1024 / 1024 < 50; // 小于50MB
95
+            if (!isLt2M) {
96
+                this.$message.error('上传的文件大小不能超过 50MB!');
97
+            }
98
+            return isLt2M;
99 99
         },
100 100
         handlSuccess(res, file) {
101 101
             if (res.code == 200) {

+ 2
- 1
src/views/caseManagement/components/timeConfirm.vue Ver fichero

@@ -87,10 +87,11 @@ export default {
87 87
             this.createRoomIdFn({
88 88
                 caseId: this.timeConfirmData.id
89 89
             })
90
-            if (this.formLabelAlign.name == '') {
90
+            if (!this.formLabelAlign.name) {
91 91
                 Message.error('请选择时间');
92 92
                 return
93 93
             }
94
+            console.log(this.formLabelAlign.name)
94 95
             this.formLabelAlign.name = moment(
95 96
                 this.formLabelAlign.name
96 97
             ).format("YYYY-MM-DD HH:mm:ss");

+ 69
- 24
src/views/login.vue Ver fichero

@@ -81,24 +81,46 @@
81 81
             <span v-else>登 录 中...</span>
82 82
           </el-button>
83 83
           <div style="float: right" v-if="register">
84
-            <router-link class="link-type" :to="'/register'">立即注册</router-link>
85
-            <!-- <el-button type="text" @click="registrationLink('/register')"
86
-              >立即注册</el-button> -->
84
+            <!-- <router-link class="link-type" :to="'/register'">立即注册</router-link> -->
85
+            <el-button
86
+              type="text"
87
+              v-if="buttonReg"
88
+              @click="registrationLink('/register')"
89
+              >立即注册</el-button
90
+            >
87 91
           </div>
88
-          <div class="registerImg" v-if="closeImgs">
92
+          <div class="registerImg" v-show="closeImgs">
89 93
             <div class="closeImg" @click="closeImg">
90 94
               <img
91 95
                 style="width: 25px; height: 25px"
92 96
                 src="../assets/images/closed.png"
93 97
                 alt=""
94 98
               />
99
+              <span style="padding-left: 100px">扫码人脸核验</span>
95 100
             </div>
96
-            <div id="qrcodeImg"></div>
101
+            <div id="qrcodeImg" style="padding-left: 76px"></div>
97 102
           </div>
98 103
         </el-form-item>
99 104
       </el-form>
100 105
     </div>
101
-
106
+    <!-- 注册时选择是否 -->
107
+    <div>
108
+      <el-dialog
109
+        title="是否需要人脸核实"
110
+        :visible.sync="centerDialogVisible"
111
+        width="30%"
112
+        center
113
+      >
114
+        <span slot="footer" class="dialog-footer">
115
+          <el-button @click="facialVerification('/register')" type="primary"
116
+            >是</el-button
117
+          >
118
+          <el-button @click="noFacialVerification('/register')" type="primary"
119
+            >否</el-button
120
+          >
121
+        </span>
122
+      </el-dialog>
123
+    </div>
102 124
     <!--  底部  -->
103 125
     <div class="el-login-footer">
104 126
       <div>Copyright © 2023 乙巢(上海)企业管理服务有限公司.</div>
@@ -123,8 +145,11 @@ export default {
123 145
     return {
124 146
       codeUrl: "",
125 147
       closeImgs: false,
148
+      centerDialogVisible: false,
149
+      buttonReg: true,
150
+      eidTokens: {},
126 151
       timer: null,
127
-      pathVal:"",
152
+      pathVal: "",
128 153
       loginForm: {
129 154
         username: "admin",
130 155
         password: "admin123",
@@ -214,36 +239,56 @@ export default {
214 239
         }
215 240
       });
216 241
     },
242
+    // 生成二维码
243
+    qrcode(url) {
244
+      // 前端根据 URL 生成微信支付二维码
245
+      document.getElementById("qrcodeImg").innerHTML = "";
246
+      return new QRCode("qrcodeImg", {
247
+        width: 200,
248
+        height: 200,
249
+        text: url,
250
+        colorDark: "#000",
251
+        colorLight: "#fff",
252
+      });
253
+    },
217 254
     registrationLink(path) {
255
+      this.centerDialogVisible = true;
256
+    },
257
+    // 是人脸核实
258
+    facialVerification(path) {
259
+      this.centerDialogVisible = false;
218 260
       this.pathVal = path;
219
-      clearInterval(this.timer);
261
+      // clearInterval(this.timer);
220 262
       selectIdentityAuthenticaEIDtoken().then((res) => {
221
-        // this.timer = setInterval(() => {
222
-        //   this.getSelectPCEIDtokenStatus(res.data.eidToken);
223
-        // }, 1000);
224 263
         this.closeImgs = true;
225
-        let url = res.data.eidToken;
226
-        document.getElementById("qrcodeImg").innerHTML = "";
227
-        return new QRCode("qrcodeImg", {
228
-          width: 200,
229
-          height: 200,
230
-          text: url,
231
-          colorDark: "#000",
232
-          colorLight: "#fff",
233
-        });
264
+        this.buttonReg = false;
265
+        let url = res.data.Url;
266
+        this.eidTokens = {
267
+          eidToken: res.data.EidToken,
268
+        };
269
+        this.timer = setInterval(() => {
270
+          this.getSelectPCEIDtokenStatus(this.eidTokens);
271
+        }, 10000);
272
+        this.qrcode(url);
234 273
       });
235
-      // this.$router.push(path);
274
+    },
275
+    // 不用人脸核实
276
+    noFacialVerification(path) {
277
+      this.$router.push(path);
236 278
     },
237 279
     // H5轮询获取E证通Token状态
238 280
     getSelectPCEIDtokenStatus(data) {
239 281
       selectPCEIDtokenStatus(data).then((res) => {
240
-        this.$router.push(this.pathVal);
282
+        if (res.data.Text.ErrCode == 0) {
283
+          this.$router.push(this.pathVal);
284
+        }
241 285
       });
242 286
     },
243 287
     // 关闭弹框
244 288
     closeImg() {
245
-      clearInterval(this.timer)
289
+      clearInterval(this.timer);
246 290
       this.closeImgs = false;
291
+      this.buttonReg = true;
247 292
     },
248 293
   },
249 294
   beforeDestroy() {
@@ -251,7 +296,7 @@ export default {
251 296
     if (this.timer) {
252 297
       clearInterval(this.timer);
253 298
     }
254
-  }
299
+  },
255 300
 };
256 301
 </script>
257 302