214 lines
		
	
	
		
			6.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
			
		
		
	
	
			214 lines
		
	
	
		
			6.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
<template>
 | 
						|
  <div v-loading="loading" class="clinical-data-wrapper">
 | 
						|
    <el-tabs type="border-card">
 | 
						|
      <!-- 既往局部治疗史 -->
 | 
						|
      <el-tab-pane :label="$t('trials:uploadClinicalData:title:historyTherapy')">
 | 
						|
        <div v-if="enumType*1 === 1">
 | 
						|
          <!-- 既往放疗史 -->
 | 
						|
          <h4>{{ $t('trials:uploadClinicalData:title:pastTreatment') }}</h4>
 | 
						|
          <el-table
 | 
						|
            :data="PreviousHistoryList"
 | 
						|
            style="width: 100%"
 | 
						|
          >
 | 
						|
            <el-table-column
 | 
						|
              type="index"
 | 
						|
              width="50"
 | 
						|
            />
 | 
						|
            <!-- 放疗部位 -->
 | 
						|
            <el-table-column
 | 
						|
              prop="Position"
 | 
						|
              :label="$t('trials:uploadClinicalData:table:bodyPart')"
 | 
						|
              width="180"
 | 
						|
            />
 | 
						|
            <!-- 开始日期 -->
 | 
						|
            <el-table-column
 | 
						|
              prop="StartTime"
 | 
						|
              :label="$t('trials:uploadClinicalData:table:beginDate')"
 | 
						|
              width="180"
 | 
						|
            >
 | 
						|
              <template slot-scope="scope">
 | 
						|
                {{ scope.row.StartTime?moment(scope.row.StartTime).format('YYYY-MM-DD'):'' }}
 | 
						|
              </template>
 | 
						|
            </el-table-column>
 | 
						|
            <!-- 结束日期 -->
 | 
						|
            <el-table-column
 | 
						|
              prop="EndTime"
 | 
						|
              :label="$t('trials:uploadClinicalData:table:endDate')"
 | 
						|
              width="180"
 | 
						|
            >
 | 
						|
              <template slot-scope="scope">
 | 
						|
                {{ scope.row.EndTime?moment(scope.row.EndTime).format('YYYY-MM-DD'):'' }}
 | 
						|
              </template>
 | 
						|
            </el-table-column>
 | 
						|
            <!-- 病灶是否PD -->
 | 
						|
            <el-table-column
 | 
						|
              prop="IsPD"
 | 
						|
              :label="$t('trials:uploadClinicalData:table:isPD')"
 | 
						|
              width="180"
 | 
						|
            >
 | 
						|
              <template slot-scope="scope">
 | 
						|
                {{ $fd('IsPdEnum', scope.row.IsPD) }}
 | 
						|
              </template>
 | 
						|
            </el-table-column>
 | 
						|
          </el-table>
 | 
						|
          <!-- 既往手术史 -->
 | 
						|
          <h4>{{ $t('trials:uploadClinicalData:title:pastSurgery') }}</h4>
 | 
						|
          <el-table
 | 
						|
            :data="PreviousSurgeryList"
 | 
						|
            style="width: 100%"
 | 
						|
          >
 | 
						|
            <el-table-column
 | 
						|
              type="index"
 | 
						|
              width="50"
 | 
						|
            />
 | 
						|
            <!-- 手术名称 -->
 | 
						|
            <el-table-column
 | 
						|
              prop="OperationName"
 | 
						|
              :label="$t('trials:uploadClinicalData:table:surgeryName')"
 | 
						|
              width="180"
 | 
						|
            />
 | 
						|
            <!-- 手术日期 -->
 | 
						|
            <el-table-column
 | 
						|
              prop="OperationTime"
 | 
						|
              :label="$t('trials:uploadClinicalData:table:surgeryDate')"
 | 
						|
              width="180"
 | 
						|
            >
 | 
						|
              <template slot-scope="scope">
 | 
						|
                {{ scope.row.OperationTime?moment(scope.row.OperationTime).format('YYYY-MM-DD'):'' }}
 | 
						|
              </template>
 | 
						|
            </el-table-column>
 | 
						|
          </el-table>
 | 
						|
          <!-- 既往其他治疗史 -->
 | 
						|
          <h4>{{ $t('trials:uploadClinicalData:title:others') }}</h4>
 | 
						|
          <el-table
 | 
						|
            :data="PreviousOtherList"
 | 
						|
            style="width: 100%"
 | 
						|
          >
 | 
						|
            <el-table-column
 | 
						|
              type="index"
 | 
						|
              width="50"
 | 
						|
            />
 | 
						|
            <!-- 治疗类型 -->
 | 
						|
            <el-table-column
 | 
						|
              prop="TreatmentType"
 | 
						|
              :label="$t('trials:uploadClinicalData:table:treatmentType')"
 | 
						|
              width="180"
 | 
						|
            />
 | 
						|
            <!-- 开始日期 -->
 | 
						|
            <el-table-column
 | 
						|
              prop="StartTime"
 | 
						|
              :label="$t('trials:uploadClinicalData:table:treatmentbeginDate')"
 | 
						|
              width="180"
 | 
						|
            >
 | 
						|
              <template slot-scope="scope">
 | 
						|
                {{ scope.row.StartTime?moment(scope.row.StartTime).format('YYYY-MM-DD'):'' }}
 | 
						|
              </template>
 | 
						|
            </el-table-column>
 | 
						|
            <!-- 结束日期 -->
 | 
						|
            <el-table-column
 | 
						|
              prop="EndTime"
 | 
						|
              :label="$t('trials:uploadClinicalData:table:treatmentendDate')"
 | 
						|
              width="180"
 | 
						|
            >
 | 
						|
              <template slot-scope="scope">
 | 
						|
                {{ scope.row.EndTime?moment(scope.row.EndTime).format('YYYY-MM-DD'):'' }}
 | 
						|
              </template>
 | 
						|
            </el-table-column>
 | 
						|
          </el-table>
 | 
						|
        </div>
 | 
						|
        <div v-if="enumType*1 === 2">
 | 
						|
          <el-table
 | 
						|
            :data="PreviousPDFList"
 | 
						|
            style="width: 100%"
 | 
						|
          >
 | 
						|
            <el-table-column
 | 
						|
              type="index"
 | 
						|
              width="50"
 | 
						|
            />
 | 
						|
            <!-- 文件名称 -->
 | 
						|
            <el-table-column
 | 
						|
              prop="FileName"
 | 
						|
              :label="$t('trials:uploadClinicalData:table:fileName')"
 | 
						|
              width="250"
 | 
						|
            />
 | 
						|
            <!-- 上传时间 -->
 | 
						|
            <el-table-column
 | 
						|
              prop="CreateTime"
 | 
						|
              :label="$t('trials:uploadClinicalData:table:uploadedTime')"
 | 
						|
              width="200"
 | 
						|
            />
 | 
						|
            <el-table-column
 | 
						|
              :label="$t('common:action:action')"
 | 
						|
              width="200"
 | 
						|
            >
 | 
						|
              <template slot-scope="scope">
 | 
						|
                <!-- 预览 -->
 | 
						|
                <el-button
 | 
						|
                  type="text"
 | 
						|
                  size="small"
 | 
						|
                  @click.native.prevent="preview(scope.row.FullFilePath)"
 | 
						|
                >
 | 
						|
                  {{ $t('trials:uploadClinicalData:action:preview') }}
 | 
						|
                </el-button>
 | 
						|
              </template>
 | 
						|
            </el-table-column>
 | 
						|
          </el-table>
 | 
						|
        </div>
 | 
						|
      </el-tab-pane>
 | 
						|
    </el-tabs>
 | 
						|
 | 
						|
  </div>
 | 
						|
</template>
 | 
						|
<script>
 | 
						|
import { getSubjectClinicalData } from '@/api/trials'
 | 
						|
import moment from 'moment'
 | 
						|
export default {
 | 
						|
  name: 'ClinicalData',
 | 
						|
  props: {
 | 
						|
    subjectVisitId: {
 | 
						|
      type: String,
 | 
						|
      required: true
 | 
						|
    },
 | 
						|
    enumType: {
 | 
						|
      type: Number,
 | 
						|
      default: 0
 | 
						|
    },
 | 
						|
    subjectClinicalData: {
 | 
						|
      type: Object,
 | 
						|
      default() {
 | 
						|
        return {}
 | 
						|
      }
 | 
						|
    }
 | 
						|
  },
 | 
						|
  data() {
 | 
						|
    return {
 | 
						|
      loading: false,
 | 
						|
      PreviousHistoryList: this.subjectClinicalData.PreviousHistoryList,
 | 
						|
      PreviousSurgeryList: this.subjectClinicalData.PreviousSurgeryList,
 | 
						|
      PreviousOtherList: this.subjectClinicalData.PreviousOtherList,
 | 
						|
      PreviousPDFList: this.subjectClinicalData.PreviousPDFList,
 | 
						|
      moment
 | 
						|
    }
 | 
						|
  },
 | 
						|
  methods: {
 | 
						|
    getList() {
 | 
						|
      this.loading = true
 | 
						|
      getSubjectClinicalData(this.subjectVisitId).then(res => {
 | 
						|
        this.PreviousHistoryList = res.Result.PreviousHistoryList
 | 
						|
        this.PreviousSurgeryList = res.Result.PreviousSurgeryList
 | 
						|
        this.PreviousOtherList = res.Result.PreviousOtherList
 | 
						|
        this.PreviousPDFList = res.Result.PreviousPDFList
 | 
						|
        this.loading = false
 | 
						|
      }).catch(() => { this.loading = false })
 | 
						|
    },
 | 
						|
 | 
						|
    // 文件预览
 | 
						|
    preview(path) {
 | 
						|
      if (!path) return
 | 
						|
      window.open(path, '_blank')
 | 
						|
    }
 | 
						|
  }
 | 
						|
}
 | 
						|
</script>
 | 
						|
 |