JudgmentDetail.vue 3.6 KB
<template>
  <div class="d-page d-flex flex-column">
    <title-bar :title="title" @clickLef="onClick">
      <van-icon slot="left" name="cross" size="24" />
    </title-bar>
    <div class="h-scroller flex-1-dhc">
      <div class="title">{{ itemData.title }}</div>
      <div class="labelMainCls">
        <table-double-view :data="itemData" :keyValue="keyValueDouble"></table-double-view>
        <table-single-view :data="itemData" :keyValue="keyValueSingle"></table-single-view>
      </div>
    </div>
  </div>
</template>

<script lang="ts">
import TableDoubleView from "@/public/TableDoubleView.vue";
import TableSingleView from "@/public/TableSingleView.vue";
import { Component, Vue } from "vue-property-decorator";
import TitleBar from "@/components/general/TitleBar.vue";
import { NativeUI } from "@/public/ts/NativeUI";
import nettyApi from "@/constants/api/ms-netty/netty.api.ts";
import IF from "@/public/factory/InterFaceFactory";
import Public from '@/public/ts/Public';
import {formatDate} from "@/public/ts/date.util";

/**
 * @Description 裁判文书详情
 * @Author JiangTao
 * @Date 2021-11-10 下午 03:13
 */
@Component({
  name: "JudgmentDetail",
  components: { TitleBar, TableDoubleView, TableSingleView },
})
export default class Judgment extends Vue {
  title = "裁判文书详情";
  keyValueDouble = {
    caseNo: '案号',
    caseCause: '案由',
    caseType: '案件性质',
    plaintiff: '原告',
    defendant: '被告',
    sortTime: '案件时间',
    court: '发布法院',
    courtRank: '法院等级'
  };
  keyValueSingle = {
    judgeResult: "判决结果"
  };
  defendant = ''; //被告
  plaintiff = ''; //原告
  itemData = {};

  onClick() {
    console.log(111111);
  }
  mounted() {
    this.selectCustInfo();
  }
  /**
   * @Description 裁判文书详情
   * @Author JiangTao
   * @Date 2021-12-13 下午 08:44
   */
  selectCustInfo() {
    let param = {
      id: this.$route.params.entryId,
      SvrCode: Public.getSvrCode(nettyApi.TRADE_CODE.selectCPWSXQ),
      tc: nettyApi.TRADE_CODE.selectCPWSXQ
    };
    NativeUI.showWaiting('正在查询...');
    return IF.transferDataInter(nettyApi.commonRq, param).then((res: any) => {
      NativeUI.closeWaiting();
      if (res.rc == '1') {
        if (res.cpws && res.cpws.length > 0) {
          this.itemData = res.cpws[0];
          if ((this.itemData as any).sortTime && (this.itemData as any).sortTime != '') {
            (this.itemData as any).sortTime = formatDate((this.itemData as any).sortTime);
          }
          for (let i = 0; i < (this.itemData as any).partys.length; i++) {
            if ((this.itemData as any).partys[i].title == '原告') {
              this.plaintiff = this.plaintiff + (this.itemData as any).partys[i].pname + ',';
            }
            if ((this.itemData as any).partys[i].title == '被告') {
              this.defendant = this.defendant + (this.itemData as any).partys[i].pname + ',';
            }
          }
          this.plaintiff = this.plaintiff.substring(0, this.plaintiff.length - 1);
          this.defendant = this.defendant.substring(0, this.defendant.length - 1);
          Vue.set(this.itemData, 'plaintiff', this.plaintiff);
          Vue.set(this.itemData, 'defendant', this.defendant);
        }
      } else {
        if (res.ret_code != '4999999') {
          NativeUI.toast(res.msg);
        }
      }
    });
  }
}
</script>

<style scoped>
.title {
  background-color: white;
  font-size: 14px;
  color: #333333;
  font-weight: bold;
  padding: 10px 15px;
  border-bottom: 2px solid #f2f2f2;
}
.labelMainCls {
  width: 80%;
  margin: 0 auto;
  background-color: white;
}
::v-deep .displaydata {
  width: 85%;
}
</style>