Parcourir la source

demo1修改检验方法性能评审组件

zhonghuizhen il y a 8 heures
Parent
commit
8c43011469

+ 462 - 0
src/views/business/testMethod/demo1Review.vue

@@ -0,0 +1,462 @@
+<template>
+  <div class="main" :inert="isInert">
+    <div class="hand-btn">
+      <el-button
+        v-if="btnShsow"
+        type="primary"
+        icon="el-icon-plus"
+        @click="addData"
+        >添加</el-button
+      >
+      <el-button
+        v-if="btnShsow"
+        type="danger"
+        icon="el-icon-close"
+        @click="goRemove"
+        >删除</el-button
+      >
+    </div>
+    <el-table
+      ref="reviewTable"
+      :data="currentPageData"
+      border
+      stripe
+      highlight-current-row
+      style="width: 100%"
+      class="review-table blue-header"
+      :max-height="maxHeight"
+      @selection-change="handleSelectionChange"
+    >
+      <el-table-column type="selection" width="55" />
+      <!-- 修改序号列,显示全局序号 -->
+      <el-table-column label="序号" width="55">
+        <template v-slot="{ $index }">
+          {{ (pagination.currentPage - 1) * pagination.pageSize + $index + 1 }}
+        </template>
+      </el-table-column>
+      <el-table-column label="检验方法" width="300">
+        <template v-slot="{ row }">
+          <span style="margin-left: 10px">{{
+            getJianYanFangFaName(row.jianYanFangFa)
+          }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column prop="xiangMuMingCheng" label="检测项目" width="300" />
+      <el-table-column label="操作">
+        <template v-slot="{ row, $index }">
+          <span v-if="btnShsow" class="spanto" @click="handleEdit(row, $index)"
+            ><i class="el-icon-edit-outline" />编辑</span
+          >
+          <span v-if="btnShsow" class="spant">|</span>
+          <span class="spanto" @click="handleSelect(row)"
+            ><i class="el-icon-view" />查阅</span
+          >
+        </template>
+      </el-table-column>
+    </el-table>
+
+    <!-- 分页控件 -->
+    <el-pagination
+      v-if="pagination.total >= 0"
+      :current-page="pagination.currentPage"
+      :page-sizes="[5, 10, 20]"
+      :page-size="pagination.pageSize"
+      layout="total, sizes, prev, pager, next, jumper"
+      :total="pagination.total"
+      @size-change="handleSizeChange"
+      @current-change="handleCurrentChange"
+      style="margin-top: 15px; text-align: left"
+    />
+
+    <reviewDialog
+      v-if="dialogFormVisibles"
+      :visidial="dialogFormVisibles"
+      :select-edit-data="selectEditData"
+      :select-editchange="selectEditchange"
+      :config-list="configList"
+      @getData="getData"
+      @getcolse="getcolse"
+    />
+  </div>
+</template>
+
+<script>
+import ibpsUserSelector from '@/business/platform/org/selector'
+import reviewDialog from './demo1ReviewDialog.vue'
+
+export default {
+  components: {
+    ibpsUserSelector,
+    reviewDialog,
+    IbpsCustomDialog: () =>
+      import('@/business/platform/data/templaterender/custom-dialog')
+  },
+  props: {
+    formData: {
+      type: Object,
+      default: () => {}
+    },
+    params: {
+      type: Object,
+      default: () => {}
+    },
+    readonly: {
+      type: Boolean,
+      default: false
+    }
+  },
+  data() {
+    const { first, second } = this.$store.getters.level || {}
+    return {
+      dynamicParams: {},
+      dialogFormVisibles: false,
+      isInert: false,
+      btnShsow: false,
+      isFirst: true,
+      selectEditchange: false,
+      statData: [],
+      first,
+      allPlayData: [],
+      second,
+      maxHeight: '600px',
+      jianYanFangFaNameCache: {},
+      projectAndMethodNameCache: {},
+      tableKey: 0,
+      multipleSelection: [],
+      selectEditData: '',
+      isInternalUpdate: false, // 标记是否是内部更新
+      isExternalUpdate: false, // 标记是否是外部更新
+      // 修改分页配置
+      pagination: {
+        currentPage: 1,
+        pageSize: 10,
+        total: 0
+      },
+      configList: []
+    }
+  },
+  computed: {
+    // 计算当前页数据
+    currentPageData() {
+      const start = (this.pagination.currentPage - 1) * this.pagination.pageSize
+      const end = start + this.pagination.pageSize
+      return this.statData.slice(start, end)
+    },
+    getJianYanFangFaName() {
+      return (jianYanFangFa) => {
+        const item = this.allPlayData.find((t) => t.id_ === jianYanFangFa)
+        // console.log('item===>', item)
+        return item ? item.fang_fa_ming_chen : ''
+      }
+    }
+  },
+  watch: {
+    formData: {
+      handler(val) {
+        // 如果是内部更新触发的,则忽略
+        if (this.isInternalUpdate) {
+          this.isInternalUpdate = false
+          return
+        }
+
+        this.isExternalUpdate = true
+        if (val.lieBiaoShuJu) {
+          if (this.isFirst) {
+            this.statData = JSON.parse(val.lieBiaoShuJu)
+            this.pagination.total = this.statData.length // 更新总条数
+            this.isFirst = false
+          }
+        }
+        if (
+          val.jyffxnpsjlzb &&
+          val.jyffxnpsjlzb.length &&
+          val.jyffxnpsjlzb.length > 0
+        ) {
+          this.statData = val.jyffxnpsjlzb.map((item) => ({
+            id: '',
+            parentId: '',
+            jianYanXiangMu: item.jianYanXiangMu,
+            fangFaMingCheng: item.fangFaMingCheng,
+            jianYanFangFa: item.jianYanFangFa,
+            xiangMuYuFangFa: item.xiangMuYuFangFa,
+            xiangMuMingCheng: item.xiangMuMingCheng,
+            sheBeiMingCheng: item.sheBeiMingCheng,
+            sheBeiBianHao: item.sheBeiBianHao,
+            shiJiJiPiHao: item.shiJiJiPiHao,
+            xiaoZhunPinJiPiHa: '不适用',
+            shangCiYanZhengXi: item.shangCiYanZhengXi,
+            pingShenNeiRong: item.pingShenNeiRong,
+            pingShenJieLun: item.pingShenJieLun,
+            faXianDeWenTi: item.faXianDeWenTi,
+            pinShen1: item.pingShenNeiRong,
+            xiangMuFangFa: item.xiangMuYuFangFa,
+            shiJi: item.shiJiJiPiHao,
+            yangzheng: item.shangCiYanZhengXi,
+            jieLun: item.pingShenJieLun,
+            faXianWenTi: item.faXianDeWenTi
+          }))
+          this.pagination.total = this.statData.length // 更新总条数
+        }
+        //this.isExternalUpdate = false;
+        this.$nextTick(() => {
+          this.isExternalUpdate = false
+        })
+      },
+      immediate: true,
+      deep: true
+    },
+    params: {
+      handler(val) {
+        if (val.nodeId && val.nodeId === 'Activity_0ruri1g') {
+          this.btnShsow = true
+        } else {
+          this.btnShsow = false
+        }
+      },
+      immediate: true,
+      deep: true
+    },
+    statData: {
+      handler(val) {
+        // 如果是外部更新触发的,则不需要$emit
+        if (this.isExternalUpdate) {
+          return
+        }
+        const t = val.map((item) => ({
+          id: '',
+          parentId: '',
+          jianYanXiangMu: item.jianYanXiangMu,
+          fangFaMingCheng: '',
+          jianYanFangFa: item.jianYanFangFa,
+          xiangMuYuFangFa: item.xiangMuFangFa,
+          xiangMuMingCheng: item.xiangMuMingCheng,
+          sheBeiMingCheng: item.sheBeiMingCheng,
+          sheBeiBianHao: item.sheBeiBianHao,
+          shiJiJiPiHao: item.shiJi,
+          xiaoZhunPinJiPiHa: '不适用',
+          shangCiYanZhengXi: item.yangzheng,
+          pingShenNeiRong: item.pinShen1,
+          pingShenJieLun: item.jieLun,
+          faXianDeWenTi: item.faXianWenTi
+        }))
+        this.pagination.total = val.length // 更新总条数
+
+        // 标记这是内部更新,避免formData的watch再次触发
+        this.isInternalUpdate = true
+        this.$emit('change-data', 'lieBiaoShuJu', JSON.stringify(val))
+        this.$emit('change-data', 'jyffxnpsjlzb', t)
+      },
+      deep: true
+    }
+  },
+  created() {
+    this.getAllPlayData()
+    // 初始化时加载所有需要的数据
+    // if (this.statData && this.statData.length > 0) {
+    //   this.statData.forEach((row) => {
+    //     this.loadJianYanFangFaName(row.jianYanFangFa)
+    //     this.loadProjectAndMethodName(row.xiangMuFangFa)
+    //   })
+    // }
+  },
+  methods: {
+    // 每页条数改变
+    handleSizeChange(val) {
+      this.pagination.pageSize = val
+      this.pagination.currentPage = 1 // 重置到第一页
+      this.refreshTable()
+    },
+    // 当前页改变
+    handleCurrentChange(val) {
+      this.pagination.currentPage = val
+      this.refreshTable()
+    },
+    loadJianYanFangFaName(jianYanFangFa) {
+      return this.jian(jianYanFangFa)
+    },
+    refreshTable() {
+      this.tableKey++
+    },
+    async loadProjectAndMethodName(xiangMuFangFa) {
+      console.log('xiangMuFangFa===>', xiangMuFangFa)
+      try {
+        const methodName = await this.xiang(xiangMuFangFa)
+        this.projectAndMethodNameCache[xiangMuFangFa] = methodName
+      } catch (error) {
+        console.error('Error fetching data:', error)
+      }
+    },
+    // 点击添加按钮
+    addData() {
+      this.selectEditchange = true
+      this.dialogFormVisibles = true
+      this.configList = []
+      this.configData()
+    },
+    // 点击取消按钮
+    getcolse() {
+      this.selectEditData = ''
+      this.selectEditchange = false
+      this.dialogFormVisibles = false
+    },
+    getData(obj, index) {
+      if (typeof index === 'undefined') {
+        // 新增
+        this.statData.push(obj)
+      } else {
+        // 修改
+        Object.assign(this.statData[index], obj)
+      }
+      this.loadJianYanFangFaName(obj.jianYanFangFa)
+      this.loadProjectAndMethodName(obj.xiangMuFangFa)
+
+      // 添加或修改数据后,可能需要调整分页
+      const totalPages = Math.ceil(
+        this.statData.length / this.pagination.pageSize
+      )
+      if (this.pagination.currentPage > totalPages) {
+        this.pagination.currentPage = totalPages
+      }
+    },
+    async getAllPlayData() {
+      const response = await this.$common.request('query', {
+        key: 'getBzffglbById1',
+        params: [null]
+      })
+      this.allPlayData = response.variables.data
+    },
+    jian(val) {
+      const item = this.allPlayData.find((t) => t.id_ === val)
+      return item ? item.fang_fa_ming_chen : ''
+    },
+    async xiang(val) {
+      try {
+        const response = await this.$common.request('query', {
+          key: 'getNlfwbById1',
+          params: [null]
+        })
+        const a =
+          response.variables.data[0] &&
+          response.variables.data[0].jian_yan_xiang_mu
+        return a
+      } catch (error) {
+        console.error('Error fetching data:', error)
+        throw error
+      }
+    },
+    handleSelectionChange(val) {
+      this.multipleSelection = val
+    },
+    goRemove() {
+      if (this.multipleSelection.length === 0) {
+        this.$message({
+          message: '请选择要删除的数据',
+          type: 'warning'
+        })
+        return
+      }
+
+      // 删除选中的数据
+      this.statData = this.statData.filter(
+        (item) => !this.multipleSelection.includes(item)
+      )
+
+      // 删除后调整分页
+      const totalPages = Math.ceil(
+        this.statData.length / this.pagination.pageSize
+      )
+      if (this.pagination.currentPage > totalPages && totalPages > 0) {
+        this.pagination.currentPage = totalPages
+      } else if (totalPages === 0) {
+        this.pagination.currentPage = 1
+      }
+
+      this.multipleSelection = []
+    },
+    handleEdit(row, index) {
+      // 计算实际在statData中的索引
+      const actualIndex =
+        (this.pagination.currentPage - 1) * this.pagination.pageSize + index
+
+      // 编辑操作
+      this.selectEditchange = true
+      this.selectEditData = row
+      this.selectEditData.rowIndex = actualIndex
+      this.dialogFormVisibles = true
+      this.configList = []
+      this.configData()
+    },
+    handleSelect(row) {
+      // 查阅操作
+      this.dialogFormVisibles = true
+      this.selectEditData = row
+      this.selectEditchange = false
+    },
+    // 配置完成之后评审内容数据自动带出
+    configData() {
+      this.$common
+        .request('query', {
+          key: 'getJyffxnpspzb',
+          params: [null]
+        })
+        .then((res) => {
+          const data = res.variables.data
+
+          data.forEach((item) => {
+            const obj = {
+              name: item.ping_shen_nei_ron,
+              shi_fou: '是',
+              bei_zhu: '',
+              shi_fou_shi_yong: '是',
+              cuo_shi_: ''
+            }
+            this.configList.push(obj)
+          })
+        })
+    }
+  }
+}
+</script>
+
+<style lang="scss" scoped>
+.main {
+  .hand-btn {
+    width: 100%;
+    text-align: right;
+    background-color: azure !important; /* 背景颜色 */
+    border-top: 1px solid #ebeef5;
+    border-left: 1px solid #ebeef5;
+    border-right: 1px solid #ebeef5;
+    margin-bottom: 0;
+  }
+  ::v-deep .blue-header .el-table__header th {
+    background-color: #84d5cf !important; /* 背景颜色 */
+    color: #080808; /* 标题文字颜色 */
+  }
+  .dialog {
+    padding: 10px;
+  }
+  .spanto {
+    color: #1e90ff;
+  }
+  .spanto:hover {
+    cursor: pointer;
+  }
+  .spant {
+    display: inline-block;
+    color: #dfdddd;
+    margin: 0 7px;
+  }
+  .dialog-footer {
+    text-align: center;
+  }
+  .el-form {
+    padding: 10px;
+  }
+  .setBorder {
+    border: 1px solid #dcdfe6;
+    padding: 10px;
+    border-radius: 8px;
+  }
+}
+</style>

+ 397 - 0
src/views/business/testMethod/demo1ReviewDialog.vue

@@ -0,0 +1,397 @@
+<template>
+  <!-- 点击添加 -->
+  <el-dialog
+    title="添加"
+    :visible.sync="dialogFormVisibles"
+    :close-on-click-modal="false"
+    :close-on-press-escape="false"
+    :show-close="false"
+    class="dialog paper-detail-dialog"
+    append-to-body
+    @close="dialogFormVisibles = false"
+  >
+    <el-form
+      ref="ruleForm"
+      :model="ruleForm"
+      label-width="120px"
+      :rules="rules"
+      class="review-form"
+    >
+      <el-form-item label="检验方法" prop="jianYanFangFa">
+        <ibps-custom-dialog
+          v-model="ruleForm.jianYanFangFa"
+          size="small"
+          template-key="ffglxz"
+          :multiple="false"
+          :disabled="!selectEditchanges"
+          type="dialog"
+          icon="el-icon-zoom-in"
+          class="custom-dialog"
+          placeholder="请选择检验方法"
+        />
+      </el-form-item>
+      <el-form-item label="项目与方法" prop="xiangMuFangFa">
+        <ibps-custom-dialog
+          v-model="ruleForm.xiangMuFangFa"
+          size="small"
+          template-key="nlfwxz"
+          :multiple="reviewDialogMultiple"
+          :disabled="!selectEditchanges"
+          type="dialog"
+          class="custom-dialog"
+          icon="el-icon-zoom-in"
+          placeholder="请选择检验方法"
+        />
+        <!-- :dynamic-params="dynamicParams" -->
+        <!--  :dynamic-params="field.dynamicParams"接收的参数,相当于过滤 -->
+        <!-- <el-input v-model="ruleForm.xiangMuFangFa" placeholder="请输入项目名称" />
+                     -->
+      </el-form-item>
+      <el-form-item label="项目名称" prop="deng_ji_bu_men_">
+        <el-input
+          v-model="ruleForm.xiangMuMingCheng"
+          :disabled="!selectEditchanges"
+          placeholder="请输入项目名称"
+        />
+      </el-form-item>
+      <!-- <el-form-item label="设备名称" prop="deng_ji_bu_men_">
+                <el-input v-model="ruleForm.sheBeiMingCheng" :disabled="!selectEditchanges" placeholder="请输入设备名称" /></el-form-item>
+            <el-form-item label="设备编号" prop="deng_ji_bu_men_">
+                <el-input v-model="ruleForm.sheBeiBianHao" :disabled="!selectEditchanges" placeholder="请输入设备编号" /></el-form-item>
+            <el-form-item label="试剂及批号" prop="deng_ji_bu_men_">
+                <div class="setBorder" :disabled="!selectEditchanges">{{ ruleForm.shiJi?ruleForm.shiJi:'/' }}</div>
+            </el-form-item>
+            <el-form-item label="校准品及批号" prop="deng_ji_bu_men_">
+                <div class="setBorder" :disabled="!selectEditchanges">{{ ruleForm.jiaozhuiPin?ruleForm.jiaozhuiPin:'/' }}</div>
+            </el-form-item> -->
+      <!-- <el-form-item label="上次性能验证" prop="deng_ji_bu_men_">
+                <div class="setMargin" :inert="isInert">
+                    <div style="height: 32px" />
+                    <el-checkbox-group v-model="ruleForm.xing_neng_yan_zheng">
+                        <el-row :gutter="20">
+                            <el-col v-for="(item, index) in yangzheng" :key="index" :span="8">
+                                <el-checkbox :label="item" :disabled="!selectEditchanges">{{ item }}</el-checkbox>
+                            </el-col>
+                        </el-row>
+                    </el-checkbox-group>
+                </div>
+            </el-form-item> -->
+      <el-form-item label="评审内容" prop="deng_ji_bu_men_">
+        <div>
+          <el-table
+            :data="pinShen1"
+            style="width: 100%"
+            border
+            stripe
+            max-height="300px"
+          >
+            <el-table-column prop="name" label="描述" />
+            <el-table-column prop="shi_fou" label="判断" width="150px">
+              <template v-slot="{ row }">
+                <el-radio-group v-model="row.shi_fou">
+                  <el-radio label="是" :disabled="!selectEditchanges" />
+                  <el-radio label="否" :disabled="!selectEditchanges" />
+                </el-radio-group>
+              </template>
+            </el-table-column>
+            <el-table-column prop="bei_zhu" label="备注">
+              <template v-slot="{ row }">
+                <el-input
+                  v-model="row.bei_zhu"
+                  :disabled="!selectEditchanges"
+                  placeholder="请输入备注"
+                />
+              </template>
+            </el-table-column>
+            <!-- 添加两个字段 -->
+
+            <el-table-column width="110px" prop="shi_fou_shi_yong"   align="center"  label="该次评审不适用">
+              <template v-slot="{ row }">
+                <el-checkbox
+                  v-model="row.shi_fou_shi_yong"
+                  true-label="否"   
+                  false-label="是"   
+                  :disabled="!selectEditchanges"
+                />
+              </template>
+            </el-table-column>
+            <el-table-column prop="cuo_shi_" label="预防或纠正措施">
+              <template v-slot="{ row }">
+                <el-input
+                  v-model="row.cuo_shi_"
+                  :disabled="!selectEditchanges"
+                  placeholder="请输入备注"
+                />
+              </template>
+            </el-table-column>
+          </el-table>
+        </div>
+      </el-form-item>
+      <!-- <el-form-item label="评审结论" prop="deng_ji_bu_men_">
+                <div :inert="isInert" class="setMargin">
+                    <div style="height: 32px" />
+                    <el-checkbox-group v-model="ruleForm.ping_shen_jie_lun">
+                        <el-row :gutter="20">
+                            <el-col v-for="(item, index) in jieLun" :key="index" :span="8">
+                                <el-checkbox :label="item" :disabled="!selectEditchanges">{{ item }}</el-checkbox>
+                            </el-col>
+                        </el-row>
+                    </el-checkbox-group>
+                </div>
+            </el-form-item> -->
+      <!-- <el-form-item label="发现的问题" prop="deng_ji_bu_men_">
+                <el-input v-model="ruleForm.faXianWenTi" class="custom-input" type="textarea" :disabled="!selectEditchanges" />
+            </el-form-item> -->
+    </el-form>
+    <div slot="footer" class="el-dialog--center">
+      <ibps-toolbar :actions="toolbars" @action-event="handleActionEvent" />
+    </div>
+  </el-dialog>
+</template>
+<script>
+import { getSetting } from '@/utils/query'
+
+export default {
+  components: {
+    IbpsCustomDialog: () =>
+      import('@/business/platform/data/templaterender/custom-dialog')
+  },
+  props: {
+    formData: {
+      type: Object,
+      default: () => {}
+    },
+    params: {
+      type: Object,
+      default: () => {}
+    },
+    visidial: {
+      type: Boolean,
+      default: false
+    },
+    selectEditData: {
+      type: [Object, String],
+      default: () => {}
+    },
+    selectEditchange: {
+      type: Boolean,
+      default: false
+    },
+    configList: {
+      type: Array,
+      default: () => {}
+    }
+  },
+  data() {
+    return {
+      dialogFormVisibles: this.visidial,
+      selectEditchanges: this.selectEditchange,
+      selectEditDatas: this.selectEditData,
+      pinShen1: this.configList,
+      isInert: false,
+      dynamicParams: {},
+      id: '',
+      reviewDialogMultiple: false,
+      toolbars: [
+        {
+          key: 'confirm'
+        },
+        {
+          key: 'cancel'
+        }
+      ],
+      ruleForm: {
+        jianYanFangFa: '',
+        xiangMuFangFa: '',
+        xiangMuMingCheng: '',
+        sheBeiMingCheng: '',
+        sheBeiBianHao: '',
+        shiJi: '',
+        jiaozhuiPin: '',
+        xing_neng_yan_zheng: [],
+        ping_shen_jie_lun: [],
+        faXianWenTi: '',
+        jianYanXiangMu: ''
+      },
+      rules: {
+        jianYanFangFa: [{ required: true, message: '请填写数据' }],
+        xiangMuFangFa: [{ required: true, message: '请填写数据' }]
+      },
+      maxHeight: '600px',
+      yangzheng: [
+        '(1)正确性',
+        '(2)精密度',
+        '(3)检出限',
+        '(4)可报告范围',
+        '(5)线性',
+        '(6)符合率',
+        '(7)抗干扰能力',
+        '(8)特异性',
+        '(9)携带污染率'
+      ],
+      jieLun: [
+        '(1)适用于检验申请',
+        '(2)需方法验证',
+        '(3)需方法确认',
+        '(4)需室间比对',
+        '(5)需设备间对比',
+        '(6)需留样再测',
+        '(7)需项目校准',
+        '(8)复测室间质评物',
+        '(9)其他'
+      ]
+    }
+  },
+  watch: {
+    'ruleForm.jianYanFangFa'(val) {
+      this.dynamicParams.jian_yan_fang_fa_ = val
+    },
+    'ruleForm.xiangMuFangFa': function (newValeu) {
+      this.breakData(newValeu)
+      this.id = newValeu
+    }
+  },
+  async created() {
+    if (this.selectEditDatas) {
+      this.slectUpdate(this.selectEditDatas)
+    }
+    const res = await getSetting('pxSpectacularsOption')
+    this.reviewDialogMultiple = res?.reviewDialogMultiple || false
+  },
+  methods: {
+    handleActionEvent({ key }) {
+      switch (key) {
+        case 'confirm':
+          if (this.selectEditchanges) this.submitForm('ruleForm')
+          else this.closeDialog()
+          break
+        case 'cancel':
+          this.closeDialog()
+          break
+        default:
+          break
+      }
+    },
+    closeDialog() {
+      this.$emit('getcolse')
+    },
+    submitForm(formName) {
+      this.$refs[formName]?.validate((valid) => {
+        if (valid) {
+          const obj = {
+            jianYanFangFa: this.ruleForm.jianYanFangFa,
+            xiangMuFangFa: this.ruleForm.xiangMuFangFa,
+            xiangMuMingCheng: this.ruleForm.xiangMuMingCheng,
+            sheBeiMingCheng: this.ruleForm.sheBeiMingCheng,
+            sheBeiBianHao: this.ruleForm.sheBeiBianHao,
+            shiJi: this.ruleForm.shiJi,
+            jiaozhuiPin: this.ruleForm.jiaozhuiPin,
+            //   yangzheng: JSON.stringify(this.yangzheng),
+            yangzheng: this.ruleForm.xing_neng_yan_zheng,
+            //   jieLun: JSON.stringify(this.jieLun),
+            jieLun: this.ruleForm.ping_shen_jie_lun,
+            pinShen1: JSON.stringify(this.pinShen1),
+            faXianWenTi: this.ruleForm.faXianWenTi,
+            jianYanXiangMu: this.ruleForm.jianYanXiangMu
+          }
+          this.$emit('getData', obj, this.selectEditData.rowIndex)
+          this.$emit('getcolse')
+        } else {
+          return false
+        }
+      })
+    },
+    // 选择检验与方法带出数据
+    breakData(newValeu) {
+      if(this.reviewDialogMultiple){ //四川肿瘤 检验方法需多选
+          const idList = newValeu.split(',')
+          //const idList = newValeu.split(',').map(id => `'${id}'`).join(',')
+           //多选 const sql = `SELECT * FROM neng_li_fan_wei_ WHERE id_ IN (${idList})`
+           this.$common
+          .request('query', {
+            key: 'getNlfwbById1',
+            params: [null]
+          })
+          .then((res) => {
+            if(res.variables.data.length >0){
+              let strList = []
+              idList.forEach(id=>{
+                const obj = res.variables.data.filter(item => item.id_ === id)
+                if(obj.length>0){
+                  strList.push(obj[0].jian_yan_xiang_mu)
+                }
+
+              })
+              const str = strList.join(',')
+              this.ruleForm.xiangMuMingCheng =str
+            }
+          
+          })
+      }else{
+          //单选 const sql = `select * from neng_li_fan_wei_ where id_='${newValeu}'`
+          this.$common
+          .request('query', {
+            key: 'getNlfwbById',
+            params: [newValeu]
+          })
+          .then((res) => {
+            if(res.variables.data.length >0){
+                this.ruleForm.xiangMuMingCheng =res.variables.data[0].jian_yan_xiang_mu
+              this.ruleForm.sheBeiMingCheng = res.variables.data[0].she_bei_
+              this.ruleForm.sheBeiBianHao = res.variables.data[0].she_bei_bian_hao_
+              this.ruleForm.shiJi = res.variables.data[0].shi_ji_
+              this.ruleForm.jiaozhuiPin = res.variables.data[0].yang_pin_lei_xing
+              this.ruleForm.jianYanXiangMu = res.variables.data[0].parent_id_
+              this.ruleForm.xiaoZhunPinJiPiHa = res.variables.data[0].xiao_zhun_wu_
+            }
+          
+          })
+      }
+
+    },
+
+    // 查阅,修改带出数据
+    slectUpdate(selectEditDatas) {
+      this.ruleForm.xing_neng_yan_zheng = selectEditDatas.yangzheng
+      this.ruleForm.jianYanFangFa = selectEditDatas.jianYanFangFa
+      this.ruleForm.xiangMuFangFa = selectEditDatas.xiangMuFangFa
+      this.ruleForm.xiangMuMingCheng = selectEditDatas.xiangMuMingCheng
+      this.ruleForm.sheBeiBianHao = selectEditDatas.sheBeiBianHao
+      this.ruleForm.sheBeiMingCheng = selectEditDatas.sheBeiMingCheng
+      this.ruleForm.shiJi = selectEditDatas.shiJi
+      this.ruleForm.jiaozhuiPin = selectEditDatas.jiaozhuiPin
+      this.ruleForm.faXianWenTi = selectEditDatas.faXianWenTi
+      // this.yangzheng = JSON.parse(selectEditDatas.yangzheng)
+      this.pinShen1 = JSON.parse(selectEditDatas.pinShen1)
+      // this.jieLun = JSON.parse(selectEditDatas.jieLun)
+      this.ruleForm.ping_shen_jie_lun = selectEditDatas.jieLun
+      this.ruleForm.jianYanXiangMu = selectEditDatas.jianYanXiangMu
+    }
+  }
+}
+</script>
+<style scoped lang="scss">
+.paper-detail-dialog {
+  .dialog-footer {
+    text-align: center;
+  }
+  .setBorder {
+    border: 1px solid #dcdfe6;
+    padding: 10px;
+    border-radius: 4px;
+  }
+  // .setMargin{
+  //     margin:0 0 15px 0;
+  // }
+  .review-form {
+    padding: 10px;
+  }
+  ::v-deep {
+    .el-dialog {
+      width: 80% !important;
+      margin-top: 2vh !important;
+      height: 90% !important;
+    }
+  }
+}
+</style>