<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>