<!--
  @description: 招标项目-可参与项目招标公告/资审公告列表
  @Modifier: 肖文龙
  @routerPath:
  @date: 2021/01/06
-->
<template>
  <el-table
    ref="smallTable"
    v-loading="loading"
    :data="tableData"
  >
    <el-table-column
      type="index"
      label="序号"
      width="60px"
      align="center"
    />
    <el-table-column
      prop="tenderNo"
      align="center"
      label="招标项目编号"
      width="170"
    />
    <el-table-column
      header-align="center"
      prop="tenderName"
      label="招标项目名称"
      min-width="230"
    />
    <el-table-column
      header-align="center"
      label="标段（包）名称"
      prop="packName"
      align="left"
      min-width="200"
    />
    <el-table-column
      header-align="center"
      label="标段（包）编号"
      prop="packNo"
      align="left"
      min-width="160"
    />
    <el-table-column
      :formatter="formatTenderMethod"
      header-align="center"
      prop="tenderMethod"
      label="招标方式"
      width="80"
      align="center"
    />
    <el-table-column
      :formatter="formatQualificationMethod"
      header-align="center"
      prop="qualificationMethod"
      label="资格审查方式"
      width="100"
      align="center"
    />
    <el-table-column
      align="center"
      label="投标截止时间"
      prop="submitEndTime"
      width="160"
    />
    <el-table-column
      align="center"
      label="操作"
      fixed="right"
      width="170"
    >
      <template slot-scope="scope">
        <el-link
          type="primary"
          @click.stop="intoProject(scope.row)"
        >
          [参加项目]
        </el-link>
        <el-link
          type="primary"
          @click.stop="bulletinPreve(scope.row)"
        >
          [公告预览]
        </el-link>
      </template>
    </el-table-column>
  </el-table>
</template>
<script>
/* 接口*/
import { getIndexSupplierAttendBulletinList } from '@/api/bidding/bidBulletin'// 可参与招标公告/资审公告项目列表
/* 公用方法*/
import { filterDictText } from '@/assets/js/utils'// 常用方法

export default {
  name: 'BidTenderBulletinCompList',
  data() {
    return {
      /* 字典信息-start */
      bidTypeList: [], // 招标方式
      phaseTypeList: [], // 资格审查方式
      /* 字典信息-end */
      loading: true,
      tableData: []
    }
  },
  created() {
    this.initGroup() // 获取字典方法
  },
  methods: {
    filterDictText, // 字典值替换文本通用方法
    // 获取字典方法
    initGroup() {
      const data = [
        'bidType', // 招标方式
        'phaseType'// 资格审查方式
      ]
      this.$store.dispatch('getGroupType', data).then(res => {
        Object.keys(res.bidTypeData).forEach((key) => {
          this[key] = res.bidTypeData[key]
        })
      })
    },
    // 表格字典值替换文本-资格审查方式
    formatQualificationMethod(row, column, cellValue) {
      return filterDictText(this.phaseTypeList, cellValue)
    },
    // 表格字典值替换文本-招标方式
    formatTenderMethod(row, column, cellValue) {
      return filterDictText(this.bidTypeList, cellValue)
    },
    // 获取数据
    loadData(params, callback) {
      getIndexSupplierAttendBulletinList(params).then(response => {
        this.loading = false
        this.tableData = response.data.records
        callback(response.data.total)
      }).catch(() => {
        this.loading = false
      })
    },
    // 参加项目
    intoProject(row) {
      this.$confirm('点击确认之后将跳转到下载地址；点击右侧的下载中心，下载投标工具进行投标操作；', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        confirmButtonClass: 'confirmBtn',
        cancelButtonClass: 'cancelBtn'
      }).then(() => {
        this.$store.dispatch('backHomepage')
      })
    },
    // 公告预览
    bulletinPreve(row) {
      this.$router.push({
        name: 'bidTenderParticipate-detail',
        params: {
          bulletinId: row.bulletinId,
          bidType: '00'// 00 公开招标
        }
      })
    }
  }
}
</script>
<style lang="less" scoped>

</style>
