<template>
  <div style="height:75vh;overflow:auto" class="app-content">
    <a-spin :spinning="loading" style="width: 100%;height: 100%;">
      <a-tabs type="card" @change="callback" :activeKey='tabsActive'>
        <a-tab-pane key="1" tab="结题信息"></a-tab-pane>
        <a-tab-pane key="2" tab="结题评审"></a-tab-pane>
      </a-tabs>
      <div class="table-content">
        <div v-show="tabsActive==='1'" style="height:100%;overflow: auto;" class="from-table ">
          <conclusion-info v-model="conclusionData" />
        </div>
        <div v-show="tabsActive==='2'" style="height:100%;overflow: auto;">
          <a-form-model ref="form" :model="formData" :rules="rules" style="border-top: 0px" class="from-table font-line-space">
            <a-row>
              <a-col :span="24" style="border-top: 0px">
                <div style="text-align: center; font-size: 18pt; margin-top: 8px;">
                  <span>{{province}}卫生健康委科研项目结题材料要求</span>
                </div>
              </a-col>
            </a-row>
            <a-row type="flex">
              <a-col :span="2" class="bg-gray">
                <div class="special-middle">
                  <div>纸质编号:</div>
                </div>
              </a-col>
              <a-col :span="4">
                <div class="special-middle">
                  <div>{{ formData.paperNumber }}</div>
                </div>
              </a-col>
              <a-col :span="4" class="bg-gray">
                <div class="special-middle">
                  <div>项目合同编号:</div>
                </div>
              </a-col>
              <a-col :span="6">
                <div class="special-middle">
                  <div>{{ formData.contractNo }}</div>
                </div>
              </a-col>
              <a-col :span="4" class="bg-gray">
                <div class="special-middle">
                  <div>项目负责人:</div>
                </div>
              </a-col>
              <a-col :span="4">
                <div class="special-middle">
                  <div>{{ formData.appPersonName }}</div>
                </div>
              </a-col>
            </a-row>
            <a-row type="flex">
              <a-col :span="2" class="bg-gray">
                <div class="special-middle">
                  <div>立项年份:</div>
                </div>
              </a-col>
              <a-col :span="4">
                <div class="special-middle">
                  <div>{{ formData.reportYear }}</div>
                </div>
              </a-col>
              <a-col :span="4" class="bg-gray">
                <div class="special-middle">
                  <div>项目名称:</div>
                </div>
              </a-col>
              <a-col :span="14">
                <div class="special-middle">
                  <div>{{ formData.projName }}</div>
                </div>
              </a-col>
            </a-row>
            <a-row type="flex">
              <a-col :span="4" class="bg-gray">
                <div class="special-middle">
                  <div>结题审核人:</div>
                </div>
              </a-col>
              <a-col :span="8">
                <div class="special-middle">
                  <div>{{ formData.auditPersonName }}</div>
                </div>
              </a-col>
              <a-col :span="4" class="bg-gray">
                <div class="special-middle">
                  <div>结题日期:</div>
                </div>
              </a-col>
              <a-col :span="8">
                <div class="special-middle">
                  <div>{{ formData.conclusionDate }}</div>
                </div>
              </a-col>
            </a-row>
            <a-row type="flex">
              <a-col :span="2" class="bg-gray">
                <div class="special-middle" style="text-align: center; font-weight: bold;">
                  <div>序号</div>
                </div>
              </a-col>
              <a-col :span="4" class="bg-gray">
                <div class="special-middle" style="text-align: center; font-weight: bold;">
                  <div>结题材料</div>
                </div>
              </a-col>
              <a-col :span="8" class="bg-gray">
                <div class="special-middle" style="text-align: center; font-weight: bold;">
                  <div>检查要求</div>
                </div>
              </a-col>
              <a-col :span="4" class="bg-gray">
                <div class="special-middle" style="text-align: center; font-weight: bold;">
                  <div>是否符合要求</div>
                </div>
              </a-col>
              <a-col :span="6" class="bg-gray">
                <div class="special-middle" style="text-align: center; font-weight: bold;">
                  <div>备注</div>
                </div>
              </a-col>
            </a-row>
            <a-row type="flex">
              <a-col :span="2">
                <div class="special-middle" style="text-align: center;">
                  <div>1</div>
                </div>
              </a-col>
              <a-col :span="4">
                <div class="special-middle" style="text-align: center;">
                  <div>{{province}}卫生健康委科研项目结题报告书</div>
                </div>
              </a-col>
              <a-col :span="12">
                <div class="special-middle">
                  <div>
                    <a-row type="flex">
                      <a-col :span="16" v-if="formData">{{formData.conclusionMaterialList[0].materialName}}</a-col>
                      <a-col :span="8" style="text-align: center; padding-top: 10px;">
                        <a-radio-group v-model="formData.conclusionMaterialList[0].materialValue" :options="plainOptions" @change="onChange" disabled />
                      </a-col>
                    </a-row>
                    <a-row type="flex">
                      <a-col :span="16" v-if="formData">{{formData.conclusionMaterialList[1].materialName}}</a-col>
                      <a-col :span="8" style="text-align: center; padding-top: 10px;">
                        <a-radio-group v-model="formData.conclusionMaterialList[1].materialValue" :options="plainOptions" @change="onChange" disabled />
                      </a-col>
                    </a-row>
                    <a-row type="flex">
                      <a-col :span="16" v-if="formData">{{formData.conclusionMaterialList[2].materialName}}</a-col>
                      <a-col :span="8" style="text-align: center; padding-top: 10px;">
                        <a-radio-group v-model="formData.conclusionMaterialList[2].materialValue" :options="plainOptions" @change="onChange" disabled />
                      </a-col>
                    </a-row>
                    <a-row type="flex">
                      <a-col :span="16" v-if="formData">{{formData.conclusionMaterialList[3].materialName}}</a-col>
                      <a-col :span="8" style="text-align: center; padding-top: 10px;">
                        <a-radio-group v-model="formData.conclusionMaterialList[3].materialValue" :options="plainOptions" @change="onChange" disabled />
                      </a-col>
                    </a-row>
                  </div>
                </div>
              </a-col>
              <a-col :span="6">
                <div class="special-middle" style="text-align: center;">
                  <div>

                  </div>
                </div>
              </a-col>
            </a-row>
            <a-row type="flex">
              <a-col :span="2">
                <div class="special-middle" style="text-align: center;">
                  <div>2</div>
                </div>
              </a-col>
              <a-col :span="4">
                <div class="special-middle" style="text-align: center;">
                  <div>项目研究报告</div>
                </div>
              </a-col>
              <a-col :span="12">
                <div class="special-middle">
                  <div>
                    <a-row type="flex">
                      <a-col :span="16" v-if="formData">{{formData.conclusionMaterialList[4].materialName}}</a-col>
                      <a-col :span="8" style="text-align: center; padding-top: 10px;">
                        <a-radio-group v-model="formData.conclusionMaterialList[4].materialValue" :options="plainOptions" @change="onChange" disabled />
                      </a-col>
                    </a-row>
                  </div>
                </div>
              </a-col>
              <a-col :span="6">
                <div class="special-middle" style="text-align: center;">
                  <div>

                  </div>
                </div>
              </a-col>
            </a-row>
            <a-row type="flex">
              <a-col :span="2">
                <div class="special-middle" style="text-align: center;">
                  <div>3</div>
                </div>
              </a-col>
              <a-col :span="4">
                <div class="special-middle" style="text-align: center;">
                  <div>立项文件和申报(合同书)复印件</div>
                </div>
              </a-col>
              <a-col :span="12">
                <div class="special-middle">
                  <div>
                    <a-row type="flex">
                      <a-col :span="16" v-if="formData">{{formData.conclusionMaterialList[5].materialName}}</a-col>
                      <a-col :span="8" style="text-align: center; padding-top: 60px;">
                        <a-radio-group v-model="formData.conclusionMaterialList[5].materialValue" :options="plainOptions" @change="onChange" disabled />
                      </a-col>
                    </a-row>
                  </div>
                </div>
              </a-col>
              <a-col :span="6">
                <div class="special-middle" style="text-align: center;">
                  <div>
                    检查要求任一项不符合要求均不予以结题
                  </div>
                </div>
              </a-col>
            </a-row>
            <a-row type="flex">
              <a-col :span="2">
                <div class="special-middle" style="text-align: center;">
                  <div>4</div>
                </div>
              </a-col>
              <a-col :span="4">
                <div class="special-middle" style="text-align: center;">
                  <div>附件(支撑材料:项目实施中取得的相关成果及证明材料,包括学术论文、专著、软件、专利、获奖证书、推广证明等)</div>
                </div>
              </a-col>
              <a-col :span="12">
                <div class="special-middle">
                  <div>
                    <a-row type="flex">
                      <a-col :span="16" v-if="formData">{{formData.conclusionMaterialList[6].materialName}}</a-col>
                      <a-col :span="8" style="text-align: center; padding-top: 10px;">
                        <a-radio-group v-model="formData.conclusionMaterialList[6].materialValue" :options="plainOptions" @change="onChange" disabled />
                      </a-col>
                    </a-row>
                    <a-row type="flex">
                      <a-col :span="16" v-if="formData">{{formData.conclusionMaterialList[7].materialName}}</a-col>
                      <a-col :span="8" style="text-align: center; padding-top: 20px;">
                        <a-radio-group v-model="formData.conclusionMaterialList[7].materialValue" :options="plainOptions" @change="onChange" disabled />
                      </a-col>
                    </a-row>
                    <a-row type="flex">
                      <a-col :span="16" v-if="formData">{{formData.conclusionMaterialList[8].materialName}}</a-col>
                      <a-col :span="8" style="text-align: center; padding-top: 10px;">
                        <a-radio-group v-model="formData.conclusionMaterialList[8].materialValue" :options="plainOptions" @change="onChange" disabled />
                      </a-col>
                    </a-row>
                    <a-row type="flex">
                      <a-col :span="16" v-if="formData">{{formData.conclusionMaterialList[9].materialName}}</a-col>
                      <a-col :span="8" style="text-align: center; padding-top: 10px;">
                        <a-radio-group v-model="formData.conclusionMaterialList[9].materialValue" :options="plainOptions" @change="onChange" disabled />
                      </a-col>
                    </a-row>
                  </div>
                </div>
              </a-col>
              <a-col :span="6">
                <div class="special-middle" style="text-align: center;">
                  <div>

                  </div>
                </div>
              </a-col>
            </a-row>
            <a-row type="flex">
              <a-col :span="14">
                <div class="special-middle" style="text-align: center; font-weight: bold;">
                  <div>是否予以结题盖委科教处章</div>
                </div>
              </a-col>
              <a-col :span="10">
                <div class="special-middle" style="text-align: center;">
                  <div>
                    <a-radio-group v-model="conclusionData.isStamp" :options="plainOptions" @change="onChange" disabled />
                  </div>
                </div>
              </a-col>
            </a-row>
            <a-row>
              <a-col :span="24">
                <div class="tb-title">
                  <span>审核记录</span>
                </div>
              </a-col>
            </a-row>
            <a-row>
              <a-col :span="24">
                <audit-list v-model="formData.auditList" />
              </a-col>
            </a-row>
          </a-form-model>
        </div>
      </div>
    </a-spin>
  </div>
</template>
  
<script>
import AuditEdit from '@/views/audit/components/auditEdit'
import AuditList from '@/views/audit/components/auditInfo'
import conclusionInfo from '@/views/conclusion/components/conclusionInfo'

export default {
  name: "conclusionMaterialAudit",
  components: { AuditEdit, AuditList, conclusionInfo },
  props: {
    value: {
      type: String,
      default: () => {
        return null;
      },
    },
    auditId: {
      type: String,
      default () {
        return null
      },
    },
    objId: {
      type: String,
      default () {
        return null
      },
    },
  },
  data () {
    return {
      province: process.env.VUE_APP_SYSTEM_PROVINCE,
      tabsActive: '1',
      conclusionData: {
        projNo: null,
        projName: null,
        appPersonName: null,
        appUnitName: null,
        telephone: null,
        planCategory: null,
        startDate: null,
        endDate: null,
        promotionContent: null,
        promotionTarget: null,
        selfEvaluation: null,
        achievingResults: null,
        thesisList: [],
        researchersList: [],
        //拔款
        grant: [],
        //其它途径筹资
        finance: [],
        //主要支出项目
        spending: [],
        balance: null,
        researchContent: null,
        workPlan: null,
        extensionReport: null,
        fileList: [],
        catalogList: [],
        auditList: [],
        isStamp: null,
      },
      formData: {
        paperNumber: '',
        contractNo: '',
        auditPerson: '',
        conclusionDate: null,
        conclusionMaterialList: [
          { materialName: '1.1.学术委员会盖章(或单位盖章)', materialValue: 0 },
          { materialName: '1.2.伦理委员会盖章:(不涉及伦理委员会的项目请注明“本项目不涉及伦理审查”)', materialValue: 0 },
          { materialName: '1.3.实施单位公章', materialValue: 0 },
          { materialName: '1.4.市州卫健局公章(省直单位不做要求)', materialValue: 0 },
          { materialName: '2.1.研究报告填报要求全面地反映项目工作进展与成果、经费使用情况等,确保内容真实、数据准确。', materialValue: 0 },
          { materialName: '3.1立项文件复印件可主要附通知页、附件项目负责人编号页;3.2申报(合同书)可只复印封面页、项目申报简要信息页(预期研究成果页)、经费预算页、申请者所在单位(包括合作单位)的审查与保证页、所在单位伦理委员会审查意见页、市(州)卫健局、省卫健委审批意见、签订协议页。', materialValue: 0 },
          { materialName: '4.1.自身课题目标是否满足(若没完成不予已结题)', materialValue: 0 },
          { materialName: '4.2.委里成果最低要求:一篇以上以第一作者或通讯作者公开发表的学术论文复印件(中文要求:期刊封面、项目人所在目录页及文章全文;英文要求将题目翻译成中文)。', materialValue: 0 },
          { materialName: '4.3.学术论文是否有项目编号', materialValue: 0 },
          { materialName: '4.4.学术论文内容是否与课题内容相关', materialValue: 0 },
        ],
        comProjectAudit: {
          id: this.auditId,
          auditObjectId: this.objId,
          auditResult: null,
          auditType: 4,
          auditContent: '',
        },
        auditList: [],
      },
      loading: false,
      plainOptions: [{ label: '是', value: 1 }, { label: '否', value: 0 }],
      disabledBtns: {
        btnPassed: false,
        btnReturn: false,
        btnUnpassed: false
      },
      rules: {
        paperNumber: { required: true, message: '请填写纸质编号:', trigger: 'blur' },
        contractNo: { required: true, message: '请填写项目合同编号:', trigger: 'blur' },
        auditPerson: { required: true, message: '请填写结题审核人:', trigger: 'blur' },
        conclusionDate: { required: true, message: '请选择结题日期', trigger: 'change' },
        auditContent: { required: true, message: '请填写审核意见', trigger: 'blur' },
        auditResult: { required: true, message: '请选择审核结果', trigger: 'change' },
      },
    };
  },
  created () {
    this.getConclusionByProjId()
    this.getConclusionMaterialList()
  },
  methods: {
    getConclusionByProjId () {
      if (!!this.value) {
        this.$api.conclusion.getConclusionByProjId({ id: this.value }).then(({ data = {} }) => {
          if (data) {
            this.conclusionData = data
            this.loading = false
          } else {
            this.$emit('close', 'error')
          }
        }).catch(() => {
          this.$message.error('500 Internal Server Error!');
          this.$emit('close', 'error')
        })
      } else {
        this.$message.error('500 Internal Server Error!');
        this.$emit('close', 'error')
      }
    },
    getConclusionMaterialList () {
      this.loading = true
      this.$api.conclusion.getConclusionMaterialList({ ProjectID: this.value }).then(({ data = {} }) => {
        if (data) {
          data.comProjectAudit.id = this.auditId
          data.comProjectAudit.auditObjectId = this.objId
          data.comProjectAudit.auditContent = ''
          this.formData = data

          this.loading = false
        }
      }).catch(() => { this.loading = false })
    },
    callback (key) {
      this.tabsActive = key
    },
    onChange () {

    },
  }
};
  </script>

<style scoped lang="less">
.app-content {
  ::v-deep.ant-spin-nested-loading .ant-spin-container {
    height: 100%;
  }
  .table-content {
    height: calc(100% - 40px);
    border-width: 0px 1px 1px 1px;
    border-style: solid;
    border-color: #e8e8e8;

    // border:1px solid #e8e8e8;

    padding: 6px 6px;
  }
  padding: 0;
  ::v-deep.ant-tabs .ant-tabs-bar {
    margin: 0 !important;
  }
  ::v-deep
    .ant-tabs
    .ant-tabs-bar
    .ant-tabs-nav-container
    .ant-tabs-nav-wrap
    .ant-tabs-nav-scroll
    .ant-tabs-nav
    .ant-tabs-tab {
    min-width: 160px !important;
    text-align: center;
  }
}
</style>