fix
13404089107
2025-06-27 3a828975cbc2b2813dc88b79e208a18bae9657f3
fix
5个文件已修改
102 ■■■■■ 已修改文件
culture/src/views/strain-library/strain-library-manage/components/RecordDetailDialog.vue 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/strain-library/strain-library-manage/record.vue 86 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/strainReportLibrary/reportLibraryOneFour/components/evaluate/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/strainReportLibrary/reportLibraryOneTWO/components/evaluate/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/strainReportLibrary/reportLibraryOneThree/components/evaluate/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/strain-library/strain-library-manage/components/RecordDetailDialog.vue
@@ -14,7 +14,7 @@
                    <el-form-item label="操作人签字" required class="signature-item">
                        <div class="signature-area" :class="{ 'waiting': !formData.handleSignature }">
                            <template v-if="formData.handleSignature">
                                <img :src="formData.handleSignature" alt="操作人签字" />
                                <el-image :src="getFullUrl(formData.handleSignature)" :preview-src-list="[getFullUrl(formData.handleSignature)]" alt="操作人签字" />
                            </template>
                            <template v-else>
                                <span class="waiting-text">等待确认</span>
@@ -36,7 +36,7 @@
                        </template>
                        <div class="signature-area" :class="{ 'waiting': !formData.preserveSignature }">
                            <template v-if="formData.preserveSignature">
                                <img :src="formData.preserveSignature" alt="保藏人签字" />
                                <el-image :src="getFullUrl(formData.preserveSignature)"  :preview-src-list="[getFullUrl(formData.preserveSignature)]" alt="保藏人签字" />
                            </template>
                            <template v-else>
                                <span class="waiting-text">等待确认</span>
@@ -61,6 +61,7 @@
<script>
import SignatureCanvas from '@/components/SignatureCanvas.vue'
import { getFullUrl } from '@/utils/utils'
export default {
    name: 'RecordDetailDialog',
    components: { SignatureCanvas },
@@ -95,6 +96,11 @@
        }
    },
    methods: {
        getFullUrl(url) {
            if (url) {
                return getFullUrl(url);
            }
        },
        opened() {
            this.formData.type = this.recordData.type
        },
culture/src/views/strain-library/strain-library-manage/record.vue
@@ -46,38 +46,20 @@
    </el-card>
    <!-- 出入库记录表格 -->
    <TableCustom
      :queryForm="queryForm"
      :tableData="recordList"
      :total="total"
      @currentChange="handlePageChange"
    >
    <TableCustom :queryForm="queryForm" :tableData="recordList" :total="total" @currentChange="handlePageChange">
      <template #setting>
        <div class="tableTitle">
          <div class="flex a-center">
            <div
              class="title"
              :class="{ active: currentType === 'table' }"
              @click="handleTypeChange('table')"
            >
             {{type==1?'原始细胞保藏出/入库登记表':type==2?'主细胞保藏出/入库登记表':'生产细胞保藏出/入库登记表'}}
            <div class="title" :class="{ active: currentType === 'table' }" @click="handleTypeChange('table')">
              {{ type == 1 ? '原始细胞保藏出/入库登记表' : type == 2 ? '主细胞保藏出/入库登记表' : '生产细胞保藏出/入库登记表' }}
            </div>
            <div
              class="drafts"
              :class="{ active: currentType === 'timeline' }"
              @click="handleTypeChange('timeline')"
            >
              {{type==1?'原始细胞保藏出/入库时间轴':type==2?'主细胞保藏出/入库时间轴':'生产细胞保藏出/入库时间轴'}}
            <div class="drafts" :class="{ active: currentType === 'timeline' }" @click="handleTypeChange('timeline')">
              {{ type == 1 ? '原始细胞保藏出/入库时间轴' : type == 2 ? '主细胞保藏出/入库时间轴' : '生产细胞保藏出/入库时间轴' }}
            </div>
          </div>
          <div class="flex a-center">
            <el-button
              v-if="roleType == 4"
              @click="handleAddRecord"
              class="el-icon-plus"
              type="primary"
              >新增出入库记录</el-button
            >
            <el-button v-if="roleType == 4" @click="handleAddRecord" class="el-icon-plus"
              type="primary">新增出入库记录</el-button>
          </div>
        </div>
      </template>
@@ -93,23 +75,15 @@
        <el-table-column prop="boundTime" label="操作时间" />
        <el-table-column prop="signature" label="操作人签字">
          <template #default="{ row }">
            <el-image
              v-if="row.handleSignature"
              style="width: 100px; height: 100px"
              :src="row.handleSignature"
              :preview-src-list="[row.handleSignature]"
            >
            <el-image v-if="row.handleSignature" style="width: 100px; height: 100px" :src="getFullUrl(row.handleSignature)"
              :preview-src-list="[getFullUrl(row.handleSignature)]">
            </el-image>
          </template>
        </el-table-column>
        <el-table-column prop="preserveSignature" label="菌种保藏人签字">
          <template #default="{ row }">
            <el-image
              v-if="row.preserveSignature"
              style="width: 100px; height: 100px"
              :src="row.preserveSignature"
              :preview-src-list="[row.preserveSignature]"
            >
            <el-image v-if="row.preserveSignature" style="width: 100px; height: 100px" :src="getFullUrl(row.preserveSignature)"
              :preview-src-list="[getFullUrl(row.preserveSignature)]">
            </el-image>
          </template>
        </el-table-column>
@@ -122,19 +96,9 @@
        </el-table-column>
        <el-table-column label="操作" width="180">
          <template #default="{ row }">
            <el-button
              v-if="!row.preserveSignature && roleType == 3"
              type="text"
              class="operation-btn"
              @click="handleConfirm(row)"
              >确认</el-button
            >
            <el-button
              type="text"
              class="operation-btn"
              @click="handleView(row)"
              >详情</el-button
            >
            <el-button v-if="!row.preserveSignature && roleType == 3" type="text" class="operation-btn"
              @click="handleConfirm(row)">确认</el-button>
            <el-button type="text" class="operation-btn" @click="handleView(row)">详情</el-button>
            <el-button v-if="roleType == 1" type="text" @click="handleDelete(row)">删除</el-button>
          </template>
        </el-table-column>
@@ -145,18 +109,10 @@
    </TableCustom>
    <!-- 详情弹窗 -->
    <record-detail-dialog
      :visible.sync="dialogVisible"
      :record-data="currentRecord"
      @close="handleDialogClose"
      @confirm="handleOutbound"
      :type="dialogType"
    />
    <record-detail-dialog :visible.sync="dialogVisible" :record-data="currentRecord" @close="handleDialogClose"
      @confirm="handleOutbound" :type="dialogType" />
    <!-- 新增出入库记录弹窗 -->
    <add-record-dialog
      :visible.sync="addDialogVisible"
      @confirm="handleAddRecordConfirm"
    />
    <add-record-dialog :visible.sync="addDialogVisible" @confirm="handleAddRecordConfirm" />
  </div>
</template>
@@ -164,6 +120,7 @@
import RecordDetailDialog from "./components/RecordDetailDialog.vue";
import AddRecordDialog from "./components/AddRecordDialog.vue";
import RecordTimeline from "./components/RecordTimeline.vue";
import { getFullUrl } from "@/utils/utils"
import {
  timeList,
  getDetail,
@@ -198,7 +155,7 @@
      dialogType: "detail",
      roleType: "",
      type: 1,
      };
    };
  },
  created() {
    this.roleType = JSON.parse(sessionStorage.getItem("userInfo")).roleType;
@@ -212,6 +169,11 @@
    }
  },
  methods: {
    getFullUrl(url){
      if (url) {
        return getFullUrl(url);
      }
    },
    handleDelete(row) {
      this.$confirm("确定删除该数据吗?", "提示", {
        confirmButtonText: "确定",
culture/src/views/strainReportLibrary/reportLibraryOneFour/components/evaluate/index.vue
@@ -198,7 +198,7 @@
            return this.type == 1 || this.type == '1' ? this.assessmentTable2 : this.assessmentTable1;
        },
        fullScore() {
            return this.type == 1 || this.type == '1'
            return this.type == 2 || this.type == '2'
                ? this.assessmentTable1.reduce((sum, item) => sum + (item.fullScore || 0), 0)
                : this.assessmentTable2.reduce((sum, item) => sum + (item.fullScore || 0), 0);
        },
culture/src/views/strainReportLibrary/reportLibraryOneTWO/components/evaluate/index.vue
@@ -195,7 +195,7 @@
    },
    computed: {
        currentAssessmentTable() {
            return this.type == 1 || this.type == '1' ? this.assessmentTable2 : this.assessmentTable1;
            return this.type == 2 || this.type == '2' ? this.assessmentTable2 : this.assessmentTable1;
        },
        fullScore() {
            return this.type == 1 || this.type == '1'
culture/src/views/strainReportLibrary/reportLibraryOneThree/components/evaluate/index.vue
@@ -198,7 +198,7 @@
            return this.type == 1 || this.type == '1' ? this.assessmentTable2 : this.assessmentTable1;
        },
        fullScore() {
            return this.type == 1 || this.type == '1'
            return this.type == 2 || this.type == '2'
                ? this.assessmentTable1.reduce((sum, item) => sum + (item.fullScore || 0), 0)
                : this.assessmentTable2.reduce((sum, item) => sum + (item.fullScore || 0), 0);
        },