Files
Arbitrate-Frontend/src/views/caseManagement/components/formateCourtDialog.vue
T

205 lines
5.0 KiB
Vue
Raw Normal View History

2023-09-18 21:55:43 +08:00
<template>
<div>
<!-- 组庭界面 -->
<el-dialog
title="组庭审核"
:visible="showformateCourt"
@close="cancel"
:destroy-on-close="true"
2023-09-21 16:06:45 +08:00
center
2023-09-18 21:55:43 +08:00
>
<el-form label-width="150px" v-if="!noArbitrator">
2023-09-18 21:55:43 +08:00
<el-form-item label="是否同意组庭:">
<el-radio-group v-model="isAgreePendTral">
<el-radio :label="1">是</el-radio>
<el-radio :label="0">否</el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<el-tag type="warning" v-if="noArbitrator">当前案件未指定仲裁员,请先指定仲裁员!</el-tag>
<p></p>
2023-09-18 21:55:43 +08:00
<!-- <el-form ref="form"> -->
2023-10-08 13:47:19 +08:00
<div v-if="isAgreePendTral == 0 || noArbitrator" style="display:inline-flex; margin-bottom: 8px;">
<div class="infoIcon"></div>
<div>仲裁员信息列表</div>
</div>
2023-09-18 21:55:43 +08:00
<el-table
:data="dataList"
style="width: 100%"
@selection-change="handleSelectionChange"
v-if="isAgreePendTral == 0 || noArbitrator"
2023-09-18 21:55:43 +08:00
>
<el-table-column type="selection" width="55"> </el-table-column>
<el-table-column
label="仲裁员姓名"
align="center"
prop="arbitratorName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="专业分类"
align="center"
prop="professiClassifi"
:show-overflow-tooltip="true"
/>
<el-table-column
label="当前案件数量"
align="center"
prop="currentCaseNum"
:show-overflow-tooltip="true"
/>
<el-table-column
label="已结案数量"
align="center"
prop="closedCaseNum"
:show-overflow-tooltip="true"
/>
</el-table>
<pagination
v-show="total > 0"
:total="total"
2023-09-21 09:40:04 +08:00
:page.sync="queryParams1.pageNum"
:limit.sync="queryParams1.pageSize"
2023-09-18 21:55:43 +08:00
@pagination="getarbitrAtor"
v-if="isAgreePendTral == 0"
/>
<!-- </el-form> -->
<div slot="footer" class="dialog-footer">
<el-button
type="primary"
@click="submitForm"
:disabled="!this.arbitrators.length > 0 && isAgreePendTral == 0"
2023-09-21 16:06:45 +08:00
class="endbutton"
><span>确 定</span></el-button
>
<el-button @click="cancel" class="endbutton1"
><span>取 消</span></el-button
2023-09-18 21:55:43 +08:00
>
</div>
</el-dialog>
</div>
</template>
<script>
import { arbitrAtor, pendTralCheck } from "@/api/formationCourt/formationCourt";
export default {
2023-09-21 09:40:04 +08:00
props: ["showformateCourt", "formateCourtData", "queryParams"],
2023-09-18 21:55:43 +08:00
data() {
return {
dataList: [],
total: 0,
2023-09-21 09:40:04 +08:00
queryParams1: {
2023-09-18 21:55:43 +08:00
pageNum: 1,
pageSize: 10,
},
arbitrators: [],
isAgreePendTral: 1,
paramsdata: {},
noArbitrator: false,
2023-09-18 21:55:43 +08:00
};
},
created() {
this.getarbitrAtor();
},
watch: {
formateCourtData: {
handler(val) {
if (val.arbitratorName == null) {
console.log('无仲裁员',val);
this.noArbitrator = true
} else {
this.noArbitrator = false
}
},
},
},
2023-09-18 21:55:43 +08:00
methods: {
// 获取仲裁员信息
getarbitrAtor() {
arbitrAtor({}).then((res) => {
this.dataList = res.rows;
this.total = res.total;
});
},
// 勾选仲裁员
handleSelectionChange(val) {
this.arbitrators = [];
val.forEach((item) => {
this.arbitrators.push({
id: item.id,
arbitratorName: item.arbitratorName,
});
});
},
// 确认
submitForm() {
// if (this.arbitrators.length > 0) {
if (this.isAgreePendTral == 0) {
this.paramsdata = {
isAgreePendTral: 0,
id: this.formateCourtData.id,
arbitrators: this.arbitrators,
};
} else {
this.paramsdata = {
isAgreePendTral: 1,
id: this.formateCourtData.id,
};
}
pendTralCheck(this.paramsdata).then((res) => {
this.cancel();
this.$modal.msgSuccess("组庭成功");
2023-09-21 16:06:45 +08:00
this.$emit("getcaseApply", this.queryParams);
2023-09-18 21:55:43 +08:00
});
// }
},
// 取消
cancel() {
this.$emit("cancelcourtDialog");
this.arbitrators = [];
},
},
};
</script>
<style lang="scss" scoped>
2023-09-21 16:06:45 +08:00
::v-deep .el-dialog {
background: #ffffff;
border-radius: 20px;
}
.endbutton {
width: 124px;
height: 37px;
background: #0072ff;
border-radius: 19px;
span {
width: 32px;
height: 15px;
font-size: 16px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #ffffff;
}
}
.endbutton1 {
width: 124px;
height: 37px;
background: #ffffff;
border: 1px solid #d0d0d0;
border-radius: 19px;
span {
width: 31px;
height: 13px;
font-size: 16px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #959595;
}
}
2023-10-08 13:47:19 +08:00
.infoIcon {
width: 4px;
// height: 17px;
background-color: #0072ff;
margin-right: 5px;
}
2023-09-18 21:55:43 +08:00
</style>