视频调解页面接口开发
This commit is contained in:
+5
-1
@@ -1,6 +1,6 @@
|
|||||||
import axios from "@/utils/request";
|
import axios from "@/utils/request";
|
||||||
// let baseUrlZc = 'https://api.xayunmei.com/zhongcaiapi';
|
// let baseUrlZc = 'https://api.xayunmei.com/zhongcaiapi';
|
||||||
// let baseUrl = 'https://api.xayunmei.com/tiaojieapitest';
|
let baseUrl = 'https://api.xayunmei.com/tiaojieapitest';
|
||||||
// let baseUrl = 'http://172.16.1.4:6001';
|
// let baseUrl = 'http://172.16.1.4:6001';
|
||||||
// 获取usersig
|
// 获取usersig
|
||||||
export function getUsersig(userId) {
|
export function getUsersig(userId) {
|
||||||
@@ -46,3 +46,7 @@ export function msCaseSign(data) {
|
|||||||
export function fileList(caseAppliId,annexTypeList) {
|
export function fileList(caseAppliId,annexTypeList) {
|
||||||
return axios.get(`tiaojie/common/fileList?caseAppliId=${caseAppliId}&annexTypeList=${annexTypeList}`);
|
return axios.get(`tiaojie/common/fileList?caseAppliId=${caseAppliId}&annexTypeList=${annexTypeList}`);
|
||||||
}
|
}
|
||||||
|
// 确定会议结果
|
||||||
|
export function confirmMeetingResult(data) {
|
||||||
|
return axios.post(`tiaojie/caseApplication/confirmMeetingResult`, data);
|
||||||
|
}
|
||||||
|
|||||||
@@ -56,6 +56,10 @@
|
|||||||
v-else
|
v-else
|
||||||
@click="sharClickOff"
|
@click="sharClickOff"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="mediationPop">
|
||||||
|
<el-button type="warning" @click="mediationPop">调解</el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -107,6 +111,10 @@ export default {
|
|||||||
this.sharFlag = true;
|
this.sharFlag = true;
|
||||||
this.$emit("sharClickOff");
|
this.$emit("sharClickOff");
|
||||||
},
|
},
|
||||||
|
// 弹出调解内容
|
||||||
|
mediationPop(){
|
||||||
|
this.$emit("mediationPop");
|
||||||
|
},
|
||||||
exitRoom() {
|
exitRoom() {
|
||||||
if (this.roleFlag) {
|
if (this.roleFlag) {
|
||||||
this.stopVideoFn();
|
this.stopVideoFn();
|
||||||
@@ -194,7 +202,9 @@ export default {
|
|||||||
height: 60px;
|
height: 60px;
|
||||||
margin-left: 20px;
|
margin-left: 20px;
|
||||||
}
|
}
|
||||||
|
.mediationPop{
|
||||||
|
margin-left: 20px;
|
||||||
|
}
|
||||||
.micImg,
|
.micImg,
|
||||||
.videoImg,
|
.videoImg,
|
||||||
.sharImg {
|
.sharImg {
|
||||||
|
|||||||
+173
-12
@@ -36,6 +36,7 @@
|
|||||||
@videoClickOff="videoClickOff"
|
@videoClickOff="videoClickOff"
|
||||||
@sharClickOn="sharClickOn"
|
@sharClickOn="sharClickOn"
|
||||||
@sharClickOff="sharClickOff"
|
@sharClickOff="sharClickOff"
|
||||||
|
@mediationPop="mediationPop"
|
||||||
:roomId="roomId"
|
:roomId="roomId"
|
||||||
:micFlag="micFlag"
|
:micFlag="micFlag"
|
||||||
:videoFlag="videoFlag"
|
:videoFlag="videoFlag"
|
||||||
@@ -63,7 +64,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- 语音转文字弹窗 -->
|
<!-- 语音转文字弹窗 -->
|
||||||
<el-drawer title="会议内容" :visible.sync="textVisible" :modal="false">
|
<el-drawer title="会议内容" :visible.sync="textVisible" :modal="false">
|
||||||
<div style="margin-left: 20px; margin-bottom: 10px">
|
<!-- <div style="margin-left: 20px; margin-bottom: 10px">
|
||||||
<div
|
<div
|
||||||
style="
|
style="
|
||||||
width: 100%;
|
width: 100%;
|
||||||
@@ -87,7 +88,6 @@
|
|||||||
>申请人上传证据</el-button
|
>申请人上传证据</el-button
|
||||||
>
|
>
|
||||||
</el-upload>
|
</el-upload>
|
||||||
<!-- https://api.xayunmei.com/tiaojieapitest/video/upload -->
|
|
||||||
<el-upload
|
<el-upload
|
||||||
v-if="resFlag"
|
v-if="resFlag"
|
||||||
ref="upload1"
|
ref="upload1"
|
||||||
@@ -155,7 +155,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div> -->
|
||||||
<quill-editor
|
<quill-editor
|
||||||
ref="myQuillEditor"
|
ref="myQuillEditor"
|
||||||
v-model="contentValue"
|
v-model="contentValue"
|
||||||
@@ -172,11 +172,131 @@
|
|||||||
>确认修改内容</el-button
|
>确认修改内容</el-button
|
||||||
>
|
>
|
||||||
</el-drawer>
|
</el-drawer>
|
||||||
|
<!-- 调解 -->
|
||||||
|
<el-drawer :visible.sync="drawerMediatio" direction="ltr" title="调解内容">
|
||||||
|
<div
|
||||||
|
style="
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-around;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
margin-top: 20px;
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<el-upload
|
||||||
|
ref="upload"
|
||||||
|
:limit="1"
|
||||||
|
:action="UploadUrl()"
|
||||||
|
:headers="headers"
|
||||||
|
:data="filedata"
|
||||||
|
:on-change="beforeUpload"
|
||||||
|
:on-success="handlSuccess"
|
||||||
|
:file-list="fileList"
|
||||||
|
v-if="appFlag"
|
||||||
|
>
|
||||||
|
<el-button slot="trigger" size="small" type="primary"
|
||||||
|
>申请人上传证据</el-button
|
||||||
|
>
|
||||||
|
</el-upload>
|
||||||
|
<el-upload
|
||||||
|
ref="upload1"
|
||||||
|
:limit="1"
|
||||||
|
:action="UploadUrl()"
|
||||||
|
:headers="headers1"
|
||||||
|
:data="filedata1"
|
||||||
|
:on-change="beforeUpload1"
|
||||||
|
:on-success="handlSuccess1"
|
||||||
|
:file-list="fileList1"
|
||||||
|
v-if="resFlag"
|
||||||
|
>
|
||||||
|
<el-button slot="trigger" size="small" type="primary"
|
||||||
|
>被申请人上传证据</el-button
|
||||||
|
>
|
||||||
|
</el-upload>
|
||||||
|
<el-upload
|
||||||
|
ref="upload3"
|
||||||
|
:limit="1"
|
||||||
|
:action="UploadUrl()"
|
||||||
|
:headers="headers3"
|
||||||
|
:data="filedata3"
|
||||||
|
:on-change="beforeUpload3"
|
||||||
|
:on-success="handlSuccess3"
|
||||||
|
:file-list="fileList3"
|
||||||
|
accept=".doc,.docx"
|
||||||
|
v-if="updataFlag"
|
||||||
|
>
|
||||||
|
<el-button slot="trigger" size="small" type="primary"
|
||||||
|
>上传调解书</el-button
|
||||||
|
>
|
||||||
|
</el-upload>
|
||||||
|
</div>
|
||||||
|
<div class="list">
|
||||||
|
<div class="applicant" v-if="applicantFile.length > 0">
|
||||||
|
<div>申请人证据</div>
|
||||||
|
<div
|
||||||
|
style="color: #104fad; cursor: pointer"
|
||||||
|
v-for="(item, index) in applicantFile"
|
||||||
|
:key="index"
|
||||||
|
@click="preview(item, 0)"
|
||||||
|
>
|
||||||
|
{{ item.annexName }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="res" v-if="resFile.length > 0">
|
||||||
|
<div>被申请人证据</div>
|
||||||
|
<div
|
||||||
|
style="color: #104fad; cursor: pointer"
|
||||||
|
v-for="(item, index) in resFile"
|
||||||
|
:key="index"
|
||||||
|
@click="preview(item, 0)"
|
||||||
|
>
|
||||||
|
{{ item.annexName }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="mediate" v-if="mediateFile.length > 0">
|
||||||
|
<div>调解书</div>
|
||||||
|
<div
|
||||||
|
style="color: #104fad; cursor: pointer"
|
||||||
|
v-for="(item, index) in mediateFile"
|
||||||
|
:key="index"
|
||||||
|
@click="preview(item, 1)"
|
||||||
|
>
|
||||||
|
{{ item.annexName }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<el-form label-width="100px">
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item label="调解结果:">
|
||||||
|
<el-radio-group v-model="formData.mediaResult">
|
||||||
|
<el-radio :label="1">达成调解</el-radio>
|
||||||
|
<el-radio :label="2">未达成调解</el-radio>
|
||||||
|
<el-radio :label="3">未达成调解但不在争议</el-radio>
|
||||||
|
<el-radio :label="4">未达成调解但同意引入仲裁</el-radio>
|
||||||
|
<el-radio :label="5">达成和解</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item label="是否用印申请:">
|
||||||
|
<el-radio-group v-model="formData.sealFlag">
|
||||||
|
<el-radio :label="1">是</el-radio>
|
||||||
|
<el-radio :label="0">否</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<el-button style="width:100%;" type="primary" @click="determineMeeting">确定</el-button>
|
||||||
|
</div>
|
||||||
|
</el-drawer>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { getUsersig, reserveConferenceList } from "@/api/home";
|
import { getUsersig, reserveConferenceList,confirmMeetingResult } from "@/api/home";
|
||||||
import {
|
import {
|
||||||
secretaryRoleByUserId,
|
secretaryRoleByUserId,
|
||||||
htmlToPDF,
|
htmlToPDF,
|
||||||
@@ -217,6 +337,7 @@ export default {
|
|||||||
userId: null,
|
userId: null,
|
||||||
id: null,
|
id: null,
|
||||||
showFlag: false,
|
showFlag: false,
|
||||||
|
drawerMediatio: false,
|
||||||
modileFlag: false,
|
modileFlag: false,
|
||||||
localStreamAsr: null,
|
localStreamAsr: null,
|
||||||
contentValue: "",
|
contentValue: "",
|
||||||
@@ -231,6 +352,11 @@ export default {
|
|||||||
applicantFile: [],
|
applicantFile: [],
|
||||||
resFile: [],
|
resFile: [],
|
||||||
mediateFile: [],
|
mediateFile: [],
|
||||||
|
formData:{
|
||||||
|
mediaResult:1,
|
||||||
|
sealFlag:1
|
||||||
|
},
|
||||||
|
caseFlowId:null,
|
||||||
headers: {
|
headers: {
|
||||||
// Authorization: "Bearer " + token,
|
// Authorization: "Bearer " + token,
|
||||||
Authorization: "",
|
Authorization: "",
|
||||||
@@ -317,8 +443,8 @@ export default {
|
|||||||
// this.videoClass = "videoItem2";
|
// this.videoClass = "videoItem2";
|
||||||
// this.screenShareFlag = true;
|
// this.screenShareFlag = true;
|
||||||
if (this.screenShareFlag) {
|
if (this.screenShareFlag) {
|
||||||
alert("其他用户已经分享")
|
alert("其他用户已经分享");
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
await trtc.startScreenShare().then(() => {
|
await trtc.startScreenShare().then(() => {
|
||||||
this.sharFlag = false;
|
this.sharFlag = false;
|
||||||
@@ -404,7 +530,7 @@ export default {
|
|||||||
} else {
|
} else {
|
||||||
flag = 0;
|
flag = 0;
|
||||||
}
|
}
|
||||||
let token = sessionStorage.getItem('token')
|
let token = sessionStorage.getItem("token");
|
||||||
window.open(
|
window.open(
|
||||||
`http://121.40.189.20:8002/onlyoffice?id=${item.onlyOfficeFileId}&flag=${flag}&token=${token}`,
|
`http://121.40.189.20:8002/onlyoffice?id=${item.onlyOfficeFileId}&flag=${flag}&token=${token}`,
|
||||||
"_black"
|
"_black"
|
||||||
@@ -454,15 +580,16 @@ export default {
|
|||||||
// 点击显示修改的文本框
|
// 点击显示修改的文本框
|
||||||
txtContent() {
|
txtContent() {
|
||||||
this.textVisible = true;
|
this.textVisible = true;
|
||||||
setInterval(() => {
|
// setInterval(() => {
|
||||||
this.selectByIdFn(this.caseId);
|
// this.selectByIdFn(this.caseId);
|
||||||
}, 8000);
|
// }, 8000);
|
||||||
this.selectRoleMenuByCaseIdFn(this.caseId);
|
this.selectRoleMenuByCaseIdFn(this.caseId);
|
||||||
this.getMenuPermsByUserFn();
|
this.getMenuPermsByUserFn();
|
||||||
},
|
},
|
||||||
/** 获取证据列表 */
|
/** 获取证据列表 */
|
||||||
selectByIdFn(id) {
|
selectByIdFn(id) {
|
||||||
selectById(id).then((res) => {
|
selectById(id).then((res) => {
|
||||||
|
this.caseFlowId = res.data.caseFlowId;
|
||||||
this.applicantFile = [];
|
this.applicantFile = [];
|
||||||
this.resFile = [];
|
this.resFile = [];
|
||||||
this.mediateFile = [];
|
this.mediateFile = [];
|
||||||
@@ -511,11 +638,13 @@ export default {
|
|||||||
});
|
});
|
||||||
} else if (streamType == "sub") {
|
} else if (streamType == "sub") {
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
trtc.startRemoteVideo({ userId, streamType, view: "screenShare" }).then(()=>{
|
trtc
|
||||||
|
.startRemoteVideo({ userId, streamType, view: "screenShare" })
|
||||||
|
.then(() => {
|
||||||
this.videoList = "videoList1";
|
this.videoList = "videoList1";
|
||||||
this.videoClass = "videoItem2";
|
this.videoClass = "videoItem2";
|
||||||
});
|
});
|
||||||
})
|
});
|
||||||
this.screenShareFlag = true;
|
this.screenShareFlag = true;
|
||||||
}
|
}
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
@@ -619,6 +748,38 @@ export default {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
// 调解
|
||||||
|
mediationPop() {
|
||||||
|
this.drawerMediatio = true;
|
||||||
|
this.selectByIdFn(this.caseId);
|
||||||
|
setInterval(() => {
|
||||||
|
this.selectByIdFn(this.caseId);
|
||||||
|
}, 8000);
|
||||||
|
console.log("iiiiiiiiiiiiiiiiiiiiiiiiiiii");
|
||||||
|
},
|
||||||
|
// 确定会议结果
|
||||||
|
determineMeeting(){
|
||||||
|
let valueMeeting = {
|
||||||
|
id:this.caseId,
|
||||||
|
mediaResult: this.formData.mediaResult,
|
||||||
|
sealFlag:this.formData.sealFlag,
|
||||||
|
caseFlowId:this.caseFlowId
|
||||||
|
}
|
||||||
|
confirmMeetingResult(valueMeeting).then(res=>{
|
||||||
|
if (res.code == 200) {
|
||||||
|
this.$message({
|
||||||
|
message: "确定成功",
|
||||||
|
type: "success",
|
||||||
|
});
|
||||||
|
this.drawerMediatio = false
|
||||||
|
} else {
|
||||||
|
this.$message({
|
||||||
|
message: res.msg,
|
||||||
|
type: "error",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
editor() {
|
editor() {
|
||||||
|
|||||||
@@ -32,6 +32,7 @@
|
|||||||
@videoClickOff="videoClickOff"
|
@videoClickOff="videoClickOff"
|
||||||
@sharClickOn="sharClickOn"
|
@sharClickOn="sharClickOn"
|
||||||
@sharClickOff="sharClickOff"
|
@sharClickOff="sharClickOff"
|
||||||
|
@mediationPop="mediationPop"
|
||||||
:roomId="roomId"
|
:roomId="roomId"
|
||||||
:micFlag="micFlag"
|
:micFlag="micFlag"
|
||||||
:videoFlag="videoFlag"
|
:videoFlag="videoFlag"
|
||||||
@@ -472,6 +473,10 @@ export default {
|
|||||||
name: "Home",
|
name: "Home",
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
// 调解
|
||||||
|
async mediationPop(){
|
||||||
|
console.log()
|
||||||
|
},
|
||||||
// 获取拉流信息
|
// 获取拉流信息
|
||||||
getPushVideo() {
|
getPushVideo() {
|
||||||
trtc.on(TRTC.EVENT.REMOTE_VIDEO_AVAILABLE, (event) => {
|
trtc.on(TRTC.EVENT.REMOTE_VIDEO_AVAILABLE, (event) => {
|
||||||
|
|||||||
Reference in New Issue
Block a user