113 lines
2.3 KiB
Vue
113 lines
2.3 KiB
Vue
<template>
|
||
<div>
|
||
<el-dialog
|
||
title="案件日志"
|
||
:visible="showcaseLog"
|
||
@close="cancel"
|
||
center
|
||
:distroy-on-close="true"
|
||
>
|
||
<div class="loading" v-if="flagLoading">
|
||
<i class="el-icon-loading"></i>
|
||
</div>
|
||
<div v-else>
|
||
<div class="noData" v-if="noData">暂无数据!</div>
|
||
<el-timeline v-else>
|
||
<el-timeline-item
|
||
v-for="(activity, index) in activities"
|
||
:key="index"
|
||
:timestamp="(index + 1).toString()"
|
||
placement="top"
|
||
>
|
||
<p>{{ activity.content }}</p>
|
||
</el-timeline-item>
|
||
</el-timeline>
|
||
</div>
|
||
<div slot="footer" class="dialog-footer">
|
||
<el-button @click="cancel" class="endbutton1"
|
||
><span>取 消</span></el-button
|
||
>
|
||
</div>
|
||
</el-dialog>
|
||
</div>
|
||
</template>
|
||
|
||
<script>
|
||
export default {
|
||
props: ["showcaseLog", "flagLoading", "caselogDataArr"],
|
||
data() {
|
||
return {
|
||
reverse: true,
|
||
activities: [],
|
||
noData: false,
|
||
};
|
||
},
|
||
watch: {
|
||
caselogDataArr: {
|
||
handler(val) {
|
||
if (val && val.length > 0) {
|
||
this.noData = false;
|
||
this.activities = val;
|
||
this.activities.forEach((item) => {
|
||
item.content = item.content;
|
||
});
|
||
} else {
|
||
this.noData = true;
|
||
}
|
||
},
|
||
},
|
||
},
|
||
methods: {
|
||
cancel() {
|
||
this.$emit("cancelcaseLog");
|
||
},
|
||
},
|
||
};
|
||
</script>
|
||
|
||
<style lang="scss" scoped>
|
||
::v-deep .el-dialog__body {
|
||
height: 500px !important;
|
||
overflow: auto !important;
|
||
}
|
||
::v-deep .el-dialog {
|
||
width: 800px;
|
||
background: #ffffff;
|
||
border-radius: 20px;
|
||
}
|
||
.endbutton1 {
|
||
width: 154px;
|
||
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;
|
||
}
|
||
}
|
||
.loading {
|
||
width: 100%;
|
||
height: 100%;
|
||
display: flex;
|
||
justify-content: center;
|
||
align-items: center;
|
||
.el-icon-loading {
|
||
font-size: 50px;
|
||
}
|
||
}
|
||
.noData {
|
||
width: 100%;
|
||
height: 400px;
|
||
font-size: 30px;
|
||
font-weight: 700;
|
||
color: #959595;
|
||
display: flex;
|
||
justify-content: center;
|
||
align-items: center;
|
||
}
|
||
</style> |