puzhibing
6 天以前 0db8c9b94a9ac655549d5eba5c2a6c92ac386c06
culture/src/views/strain-library/validation/chief-cell/confirm-detail.vue
@@ -2,8 +2,7 @@
  <Card class="confirm-detail-page">
    <el-card class="top-card">
      <el-row :gutter="24" class="top-info-row">
        <el-col :span="8" class="info-col">
<!--          <div class="info-item"><span class="label">菌种来源:</span>{{ detail.strainSource }}</div>-->
        <el-col :span="24" class="info-col source-col">
          <div class="info-item source-item">
            <span class="label">菌种来源:</span>
            <el-tooltip
@@ -16,6 +15,8 @@
              <span class="source-text">{{ detail.strainSource || '暂无数据' }}</span>
            </el-tooltip>
          </div>
        </el-col>
        <el-col :span="8" class="info-col">
          <div class="info-item"><span class="label">鉴别菌株编号:</span>{{ detail.identifyingStrainCode }}</div>
          <div class="info-item"><span class="label">鉴别菌株名称:</span>{{ detail.identifyingStrainName }}</div>
        </el-col>
@@ -33,7 +34,7 @@
            </div>
          </div>
        </el-col>
        <el-col :span="6" class="info-col">
        <el-col :span="8" class="info-col">
          <div class="info-item">
            <span class="label">签字时间:</span>{{ detail.handleTime }}
          </div>
@@ -176,10 +177,17 @@
    },
    getDetail() {
      detail({id: this.$route.query.id}).then(res => {
        const data = res.data || res
        const purpose = Array.isArray(data.purpose)
          ? data.purpose
          : String(data.purpose || '').split(',').filter(Boolean).map(Number)
        this.detail = {
          ...res,
          handleSignature: res.handleSignature || '', // 处理签名为空的情况
          purpose: res.purpose || [] // 处理 purpose 为空的情况
          ...data,
          handleSignature: data.handleSignature || '',
          purpose
        }
        if (Array.isArray(data.list) && data.list.length) {
          this.tableData = data.list.map(item => ({ ...item }))
        }
      })
    },
@@ -205,14 +213,17 @@
    handleSave() {
      this.$refs.form.validate((valid) => {
        if (valid) {
          this.detail.list = this.tableData || []
          this.detail.purpose = this.detail.purpose.join(',')
          this.detail.isDraft = 0
          confirm({...this.detail}).then(res => {
          const payload = {
            ...this.detail,
            list: this.tableData || [],
            purpose: (this.detail.purpose || []).join(','),
            isDraft: 0
          }
          confirm(payload).then(res => {
            if (res.code == 200) {
              this.$message.success('保存成功');
              this.cacheForm = null
              this.$router.back()
              this.$closeCurrentView('/strain/validation/chief-cell')
            } else {
              this.$message.error(res.msg);
            }