Files
Arbitrate-Frontend/src/views/caseManagement/components/judgmentInformation.vue
T
2024-05-31 15:23:46 +08:00

464 lines
17 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<template>
<div>
<el-dialog :title="title" :visible="openDialogInfor" width="1000px" @close="cancel" :destroy-on-close="true">
<el-descriptions title="案件信息" border style="margin-bottom: 30px">
<el-descriptions-item label="案件编号">{{
form.caseNum
}}</el-descriptions-item>
<el-descriptions-item label="案件标的">{{
form.caseSubjectAmount
}}</el-descriptions-item>
<el-descriptions-item label="借款开始日期">{{
form.loanStartDate
}}</el-descriptions-item>
<el-descriptions-item label="借款结束日期">{{
form.loanEndDate
}}</el-descriptions-item>
<el-descriptions-item label="合同编号">{{
form.contractNumber
}}</el-descriptions-item>
<el-descriptions-item label="申请人主张欠本金">{{
form.claimPrinciOwed
}}</el-descriptions-item>
<el-descriptions-item label="申请人主张欠利息">{{
form.claimInterestOwed
}}</el-descriptions-item>
<el-descriptions-item label="申请人主张违约金">{{
form.claimLiquidDamag
}}</el-descriptions-item>
<el-descriptions-item label="申请人案件证据资料">
<p @click="toFile(index, 2)" v-for="(item, index) in applicantFileArr" :key="index">
<a href="#">{{ item }}</a>
</p>
</el-descriptions-item>
<el-descriptions-item label="被申请人案件证据资料">
<p v-for="(item, index) in respondentFileArr" :key="index" @click="toFile(index, 6)">
<a href="#">{{ item }}</a>
</p>
</el-descriptions-item>
<el-descriptions-item label="裁决书附件">
<p v-for="(item, index) in awardFileArr" :key="index" @click="toFile(index, 3)">
<a href="#">{{ item }}</a>
</p>
</el-descriptions-item>
<el-descriptions-item label="庭审笔录附件">
<p v-for="(item, index) in bookFileArr" :key="index" @click="toFile(index, 7)">
<a href="#">{{ item }}</a>
</p>
</el-descriptions-item>
</el-descriptions>
<el-form ref="form" :model="arbitrateRecord" label-width="300px" label-position="left" :rules="rules"
:disabled="flag == 3">
<!-- <el-form-item label="经庭审质证,对各方提供的证据认定如下" prop="evidenDetermi">
<el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
v-model="arbitrateRecord.evidenDetermi" />
</el-form-item>
<el-form-item label="仲裁庭经审理查明(写明仲裁庭认定的事实)" prop="factDetermi">
<el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
v-model="arbitrateRecord.factDetermi" />
</el-form-item>
<el-form-item label="综上所述" prop="caseSketch">
<el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
v-model="arbitrateRecord.caseSketch" />
</el-form-item>
<el-form-item label="本庭认为" prop="arbitrateThink">
<el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
v-model="arbitrateRecord.arbitrateThink" />
</el-form-item>
<el-form-item label="裁决如下" prop="rulingFollows">
<el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
v-model="arbitrateRecord.rulingFollows" />
</el-form-item>
<el-form-item label="核验裁决书意见:" prop="verificaOpinion">
<el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
v-model="arbitrateRecord.verificaOpinion" />
</el-form-item> -->
<!-- <el-form-item label="笔录内容:" prop="responCrossOpin">
<el-input type="textarea" :autosize="{ minRows: 6 }" v-model="arbitrateRecordt.responCrossOpin"
placeholder="请输入" />
</el-form-item> -->
<el-col :span="24">
<el-form-item label="上传裁决书:" label-width="100px" v-if="flag==1|| flag==4">
<el-upload
class="upload-demo"
accept=".doc,.docx"
ref="upload"
:action="UploadUrls()"
:headers="headers"
:data="filedatas"
:before-remove="beforeRemoves"
:limit="2"
:on-change="beforeUpload"
:on-success="handlSuccessAw"
:file-list="fileListAw"
:before-upload="beforeAvatarUploads"
>
<el-button slot="trigger" size="small" type="primary"
>选取文件</el-button
>
<div slot="tip" class="el-upload__tip">
只能上传.doc,docx文件
</div>
</el-upload>
</el-form-item>
</el-col>
<el-form-item label="驳回原因:" label-width="100px" v-if="flag==1 && awardDetailform.arbitrateReject">
<div style="width:800px;">{{awardDetailform.arbitrateReject}}</div>
</el-form-item>
<el-form-item label="驳回原因:" label-width="100px" v-if="flag==4 && awardDetailform.deptorReject">
<div style="width:800px;">{{awardDetailform.deptorReject}}</div>
</el-form-item>
<el-form-item label-width="100px" label="审核意见:" prop="checkOpinion" v-if="flag == 2 || flag == 4">
<el-input type="textarea" autosize placeholder="请输入内容" v-model.trim="arbitrateRecord.checkOpinion" />
</el-form-item>
<!-- 判断是否驳回 -->
<el-form-item label-width="100px" label="是否驳回:" v-if="flag == 2 || flag == 4">
<el-radio-group v-model="agreeOrNotCheck">
<el-radio :label="1">同意</el-radio>
<el-radio :label="2">驳回</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label-width="100px" label="驳回原因" v-if="agreeOrNotCheck==2 && flag == 4" prop="arbitrateReject"
:rules="[
{ required: true, message: '请输入驳回原因', trigger: 'blur' }
]">
<el-input type="textarea" :rows="2" placeholder="请输入驳回原因" v-model.trim="arbitrateRecord.arbitrateReject"></el-input>
</el-form-item>
<el-form-item label-width="100px" label="驳回原因" v-if="agreeOrNotCheck==2 && flag ==2" prop="deptorReject"
:rules="[
{ required: true, message: '请输入驳回原因', trigger: 'blur' }
]">
<el-input type="textarea" :rows="2" placeholder="请输入驳回原因" v-model.trim="arbitrateRecord.deptorReject"></el-input>
</el-form-item>
</el-form>
<!-- 画布 -->
<!-- <h4 v-if="flag == 3">签名区域</h4>
<div class="esign" v-if="flag == 3">
<vue-esign ref="esign" :width="900" :height="300" bgColor="#ffffff" />
</div> -->
<!-- 清除画布 -->
<div slot="footer" class="dialog-footer">
<!-- <el-button type="danger" @click="submitForm(4)" v-if="flag == 1">重新生成裁决书</el-button> -->
<el-button type="primary" @click="submitForm(0)" v-if="flag == 1" :loading="buttonFlag">提 交</el-button>
<el-button type="primary" @click="submitForm(1)" v-if="flag == 2" :loading="buttonFlag">提交</el-button>
<!-- <el-button type="danger" @click="submitForm(2)" v-if="flag == 2">驳 回</el-button> -->
<!-- <el-button type="primary" @click="submitForm(3)" v-if="flag == 3">提 交</el-button> -->
<!-- <el-button type="primary" @click="submitForm(5)" v-if="flag == 4">同 意</el-button> -->
<el-button type="primary" @click="submitForm(6)" v-if="flag == 4" :loading="buttonFlag">提交</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
verificationArbitrateRecord,
checkArbitrateRecord,
adjudicationSignature,
regenerationDocument,
arbitratorCheckArbitrateRecord
} from "@/api/awardManagement/awardManagement";
import { getToken } from "@/utils/auth";
export default {
props: ["openDialogInfor", "title", "flag", "awardDetailform","queryParams"],
data() {
return {
buttonFlag:false,
// key: value
arbitrateRecordt: {},
agreeOrNotCheck:1,
form: {},
headers: {
Authorization: "Bearer " + getToken(),
},
filedatas: {
annexType: 3,
id:null
},
fileListAw:[],
arbitrateRecord: {
// checkOpinion:"同意"
checkOpinion: ""
},
// 表单校验
rules: {
evidenDetermi: [
{
required: true,
message: "不能为空",
trigger: "blur",
},
],
factDetermi: [
{
required: true,
message: "不能为空",
trigger: "blur",
},
],
caseSketch: [
{
required: true,
message: "不能为空",
trigger: "blur",
},
],
arbitrateThink: [
{
required: true,
message: "不能为空",
trigger: "blur",
},
],
rulingFollows: [
{
required: true,
message: "不能为空",
trigger: "blur",
},
],
verificaOpinion: [
{
required: true,
message: "意见不能为空",
trigger: "blur",
},
],
checkOpinion: [
{
required: true,
message: "意见不能为空",
trigger: "blur",
}
],
// arbitrateReject: [
// {
// required: true,
// message: "拒绝原因不能为空",
// trigger: "blur",
// },
// ],
},
applicantFileArr: [], //申请人
applicantPathArr: [], //申请人
respondentFileArr: [], //被申请人
respondenPathArr: [], //被申请人
awardFileArr: [], //庭审笔录文件
awardPathArr: [], //庭审笔录路径
bookFileArr: [], //裁决书文件
bookPathArr: [], //庭审笔录路径
};
},
watch: {
openDialogInfor:{
handler(val) {
if (val) {
this.agreeOrNotCheck = 1;
}
},
},
awardDetailform: {
handler(val) {
if (val) {
(this.applicantFileArr = []), //申请人
(this.applicantPathArr = []), //申请人
(this.respondentFileArr = []), //被申请人
(this.respondenPathArr = []), //被申请人
(this.awardFileArr = []), //裁决书
(this.awardPathArr = []), //裁决书
// setTimeout(() => {
this.form = this.awardDetailform;
console.log(this.form)
// if(this.form.arbitrateRecord && this.form.arbitrateRecord.checkOpinion == null ){
// this.form.arbitrateRecord.checkOpinion = '同意';
this.arbitrateRecord.checkOpinion = '';
// }
this.arbitrateRecord = {};
if (this.form.arbitrateRecord) {
this.arbitrateRecord.id = this.form.arbitrateRecord.id;
}
this.evidenceFile(this.form);
// }, 1000);
}
},
},
},
methods: {
// 申请人裁决书
evidenceFile(val) {
if (val) {
this.applicantFileArr = [];
this.applicantPathArr = [];
this.respondentFileArr = [];
this.respondenPathArr = [];
this.awardFileArr = [];
this.awardPathArr = [];
this.bookFileArr = [];
this.bookPathArr = [];
val.caseAttachList.forEach((item) => {
if (item.annexType == 2) {
this.applicantFileArr.push(item.annexName);
this.applicantPathArr.push(item.annexPath);
} else if (item.annexType == 6) {
this.respondentFileArr.push(item.annexName);
this.respondenPathArr.push(item.annexPath);
} else if (item.annexType == 3) {
this.awardFileArr.push(item.annexName);
this.awardPathArr.push(item.annexPath);
} else if (item.annexType == 7) {
this.bookFileArr.push(item.annexName);
this.bookPathArr.push(item.annexPath);
}
});
}
},
// 预览文件
toFile(index, val) {
let headPath = window.location.origin + "/API";
if (val == 2) {
window.open(headPath + this.applicantPathArr[index], "_blank");
} else if (val == 6) {
window.open(headPath + this.respondenPathArr[index], "_blank");
} else if (val == 3) {
window.open(headPath + this.awardPathArr[index], "_blank");
} else if (val == 7) {
window.open(headPath + this.bookPathArr[index], "_blank");
}
},
// 校验裁决书
verificationArbitrateRecordFn(parms) {
this.buttonFlag = true;
verificationArbitrateRecord(parms).then((res) => {
this.cancel();
this.buttonFlag = false;
// this.$emit("updataList");
this.$emit("getcaseApply", this.queryParams);
// this.$message("成功");
this.$modal.msgSuccess("提交成功");
});
},
//审核裁决书
checkArbitrateRecordFn(parms) {
this.buttonFlag = true;
checkArbitrateRecord(parms).then((res) => {
this.cancel();
this.buttonFlag = false;
// this.$emit("updataList");
this.$emit("getcaseApply", this.queryParams);
// this.$message("成功");
this.$modal.msgSuccess("提交成功");
});
},
// 仲裁员审核裁决书
arbitratorCheckArbitrateRecordFn(parms) {
this.buttonFlag = true;
console.log(parms)
arbitratorCheckArbitrateRecord(parms).then((res) => {
this.cancel();
this.buttonFlag = false;
// this.$emit("updataList");
this.$emit("getcaseApply", this.queryParams);
// this.$message("成功");
this.$modal.msgSuccess("提交成功");
});
},
// 签名
adjudicationSignatureFn(parms) {
this.buttonFlag = true;
adjudicationSignature(parms).then((res) => {
this.cancel();
this.buttonFlag = false;
// this.$emit("updataList");
this.$emit("getcaseApply", this.queryParams);
this.$message("成功");
})
},
// 上传裁决书
UploadUrls() {
return window.location.origin + "/API/evidence/uploadRecord";
},
beforeRemoves(file,fileList){
return this.$confirm(`确定移除 ${file.name}?`);
},
beforeUpload(flie, fileList) {
// this.fileList = fileList;
},
// 上传文件成功
handlSuccessAw(res, file) {
// this.fileListAw.push(file);
},
beforeAvatarUploads(){
this.filedatas.id = this.awardDetailform.id;
},
submitForm(parms) {
let that = this;
this.$refs["form"].validate((valid) => {
if (valid) {
if (parms == 0) {
this.verificationArbitrateRecordFn({
id: this.form.id,
arbitrateRecord: this.arbitrateRecord,
});
} else if (parms == 1) {
if(this.agreeOrNotCheck==1){
//部门长同意
this.checkArbitrateRecordFn({
id: this.form.id,
agreeOrNotCheck: 1,
arbitrateRecord: this.arbitrateRecord,
});
}else if(this.agreeOrNotCheck==2){
// 部门长驳回
this.checkArbitrateRecordFn({
id: this.form.id,
agreeOrNotCheck: 2,
arbitrateRecord: this.arbitrateRecord,
});
}
} else if (parms == 2) {
} else if (parms == 3) {
this.adjudicationSignatureFn({
id: this.form.id,
});
}else if (parms == 6) {
if(this.agreeOrNotCheck==1){
//仲裁员同意
this.arbitratorCheckArbitrateRecordFn({
id: this.form.id,
agreeOrNotCheck: 1,
arbitrateRecord: this.arbitrateRecord,
});
}else if(this.agreeOrNotCheck==2){
//仲裁员驳回
this.arbitratorCheckArbitrateRecordFn({
id: this.form.id,
agreeOrNotCheck: 2,
arbitrateRecord: this.arbitrateRecord,
});
}
}
}
});
},
cancel() {
this.$emit("cancelpaymentdetailsCom");
},
},
};
</script>
<style lang="scss" scoped>
::v-deep .el-dialog {
border-radius: 30px;
}
.esign {
border: 1px solid;
}
a {
color: blue;
}
</style>