<!--
  @description: 立项-不分标段（包）
  @Modifier:肖文龙
  @routerPath:
  @date:2019-12-25 14:49:153
-->
<template>
  <div>
    <div class="mb16">
      <el-form
        ref="form"
      >
        <table class="from_table">
          <!--固定金额01显示服务费金额 不添加class 否则添加singleRow-->
          <tr :class="projectData.agentServiceFeeMethod=== '01'?'':'singleRow'">
            <td>
              <el-form-item label="项目最高限价（元）" prop="maxLimitedPrice" />
            </td>
            <td>
              <money :money-value="packageList" :thousands="true" size="mini" width="250px" name="maxLimitedPrice" />
            </td>
            <template v-if="bidProjectSystemSourceType && projectData.agentServiceFeeMethod==='01'">
              <td>
                <el-form-item label="服务费金额（元）" prop="servicePrice" />
              </td>
              <td>
                <money :money-value="packageList" :thousands="true" size="mini" width="250px" name="servicePrice" />
              </td>
            </template>
          </tr>
        </table>
      </el-form>
      <div class="clearfix mb16">
        <div class="fl">
          <el-link type="primary" @click="savePack('01')">
            我还要分标段（包）
          </el-link>
          <el-button
            size="mini"
            style="color: red;margin-top: 16px"
            type="text"
          >
            注：最高限价不填即不设限价
          </el-button>
        </div>
      </div>
    </div>
    <!--保存按钮-->
    <div class="but_footer">
      <div class="but_footer-h">
        <div class="but_footer-but">
          <el-button @click="prevStep">
            上一步
          </el-button>
          <el-button :loading="confirmLoading" type="primary" @click="saveData()">
            暂存,
            进入下一步
          </el-button>
        </div>
      </div>
    </div>
  </div>
</template>

<script>
/* api*/
import {
  queryLimitedPriceInfo, // 获取项目限价
  saveLimitedPriceInfo // 保存项目限价
} from '@/api/bidding/biddingProject'
/* 组件*/
import money from '@comp/common/money/money'// 金额
/* 混入*/
import { bidProjectCommon } from '../mixins/bidProjectCommon'
export default {
  name: 'NoPackageAdd',
  components: {
    money // 金额
  },
  mixins: [bidProjectCommon],
  props: {
    // 保存分包状态
    savePack: {
      type: Function,
      default: function(isPack) {
        // isPack 00 不分包 01 分包
      }
    },
    // 上一步
    prevStep: {
      type: Function,
      default: function() {
      }
    },
    // 下一步
    nextStep: {
      type: Function,
      default: function() {
      }
    }
  },
  data() {
    return {
      confirmLoading: false, // 暂存草稿 进行下一步 Loding
      // 项目限价信息
      packageList: {
        tenderId: '',
        isSetUpMaxLimitedPrice: '', // 最高限价 00 否 01 是
        maxLimitedPrice: '', // 限价金额
        servicePrice: '', // 服务费
        schemeName: '', // 计划名称(显示用)
        // 招标计划信息集合
        taskPlanList: [{
          isLimitPrice: '', // 超过法定限额(00否 01是)
          judgesGroupedStatus: '', // 评委会是否分组 00不分组 01 分组
          libraryProfessional: '', // 入库专业
          planDepartment: '', // 计划所属部门
          planDepartmentId: '', // 计划所属部门ID
          projectDepart: '', // 项目单位
          schemeId: '', // 采购计划ID
          schemeName: '', // 计划名称
          schemeNo: '' // 计划编号
        }]
      },
      /* ========================关联招标计划部分========================*/
      // 关联招标计划选择-弹框
      relevanceTenderPlanDialog: {
        materialId: [], // 招标计划Id去重列表
        dialog: false, // 弹框展示状态
        packIndex: '' // 标段索引,
      }
    }
  },
  created() {
    this.initData()// 获取标包列表
  },
  methods: {
    // 获取标包列表
    initData() {
      const data = {
        tenderId: this.projectData.id // 项目Id
      }
      queryLimitedPriceInfo(data).then(response => {
        const { data } = response
        this.packageList = Object.assign(this.packageList, data)
        // 回显招标计划已选计划名称
        if (this.packageList.taskPlanList && this.packageList.taskPlanList.length > 0) {
          this.packageList.schemeName = this.packageList.taskPlanList[0].schemeName
        }
      })
    },
    // 保存数据 暂存，进行下一步
    saveData(type) {
      this.confirmLoading = true
      this.packageList.tenderId = this.projectData.id
      if (this.packageList.maxLimitedPrice) {
        // 填写即设限价
        this.packageList.isSetUpMaxLimitedPrice = '01'
      } else {
        // 不填即不设限价
        this.packageList.isSetUpMaxLimitedPrice = '00'
      }
      saveLimitedPriceInfo(this.packageList).then(() => {
        if (type === 'draft') return false // 判断是否-点击步骤条切换-如果是则不执行next下一步
        this.nextStep()// 下一步
        this.confirmLoading = false
      }).catch(() => {
        this.confirmLoading = false
      })
    },
    /* ========================关联招标计划部分========================*/
    /*
     * 关联招标计划
     * row 当前点击的标段信息 index 下标
     * */
    relevanceTenderPlanClick() {
      this.relevanceTenderPlanDialog.dialog = true // 打开弹窗
    },
    /*
     * 关联招标计划选择-弹框-相应方法
     * data 当前选中的招标计划信息
     * */
    relevanceTenderPlanSelect(data) {
      if (JSON.stringify(data) !== '{}') {
        // 关联招标计划名称（表格显示）
        this.packageList.schemeName = data.schemeName
        // 需要保存到后端的关联招标计划信息
        this.packageList.taskPlanList = [{
          schemeId: data.schemeId, // 采购计划ID
          schemeName: data.schemeName, // 计划名称
          schemeNo: data.schemeNo // 计划编号
        }]
      }
    }
  }
}
</script>

<style lang="less" scoped>

</style>
