11
WXL
2024-03-21 97a2bd7d2621cc7be6629beebe5e03d2b3eb2283
src/views/project/donationdetails/index.vue
@@ -6,19 +6,18 @@
        <div>
          <el-steps direction="vertical" :active="workflow">
            <el-step title="潜在捐献" icon="el-icon-user">
              <template
                slot="description"
                v-if="Processdata.donatebaseinfo.createtime"
              >
              <template slot="description" v-if="donatebaseinfo.createtime">
                <p>
                  提交时间:<span>{{
                    parseTime(Processdata.donatebaseinfo.createtime)
                  }}</span>
                  提交:<span
                    >{{ donatebaseinfo.createperson }}
                    {{ parseTime(donatebaseinfo.createtime) }}</span
                  >
                </p>
                <p>
                  更新时间:<span>{{
                    parseTime(Processdata.donatebaseinfo.updatetime)
                  }}</span>
                  更新:<span
                    >{{ donatebaseinfo.updateperson }}
                    {{ parseTime(donatebaseinfo.updatetime) }}</span
                  >
                </p>
              </template>
            </el-step>
@@ -27,19 +26,18 @@
              icon="el-icon-edit-outline"
              description="请先完成前部步骤"
            >
              <template
                slot="description"
                v-if="Processdata.medicalevaluation.createtime"
              >
              <template slot="description" v-if="medicalevaluation.createtime">
                <p>
                  提交时间:<span>{{
                    parseTime(Processdata.medicalevaluation.createtime)
                  }}</span>
                  提交:<span>
                    {{ medicalevaluation.createperson }}
                    {{ parseTime(medicalevaluation.createtime) }}</span
                  >
                </p>
                <p>
                  更新时间:<span>{{
                    parseTime(Processdata.medicalevaluation.updatetime)
                  }}</span>
                  更新:<span>
                    {{ medicalevaluation.updateperson }}
                    {{ parseTime(medicalevaluation.updatetime) }}</span
                  >
                </p>
              </template>
            </el-step>
@@ -50,17 +48,19 @@
            >
              <template
                slot="description"
                v-if="Processdata.relativesconfirmation.createtime"
                v-if="relativesconfirmation.createtime"
              >
                <p>
                  提交时间:<span>{{
                    parseTime(Processdata.relativesconfirmation.createtime)
                  }}</span>
                  提交:<span>
                    {{ relativesconfirmation.createperson }}
                    {{ parseTime(relativesconfirmation.createtime) }}</span
                  >
                </p>
                <p>
                  更新时间:<span>{{
                    parseTime(Processdata.relativesconfirmation.updatetime)
                  }}</span>
                  更新:<span>
                    {{ relativesconfirmation.updateperson }}
                    {{ parseTime(relativesconfirmation.updatetime) }}</span
                  >
                </p>
              </template>
            </el-step>
@@ -69,19 +69,18 @@
              description="请先完成前部步骤"
              icon="el-icon-s-order"
            >
              <template
                slot="description"
                v-if="Processdata.donateflowcharts.createtime"
              >
              <template slot="description" v-if="donateflowcharts.createtime">
                <p>
                  提交时间:<span>{{
                    parseTime(Processdata.donateflowcharts.createtime)
                  }}</span>
                  提交:<span>
                    {{ donateflowcharts.createperson }}
                    {{ parseTime(donateflowcharts.createtime) }}</span
                  >
                </p>
                <p>
                  更新时间:<span>{{
                    parseTime(Processdata.donateflowcharts.updatetime)
                  }}</span>
                  更新:<span>
                    {{ donateflowcharts.updateperson }}
                    {{ parseTime(donateflowcharts.updatetime) }}</span
                  >
                </p>
              </template>
            </el-step>
@@ -92,17 +91,19 @@
            >
              <template
                slot="description"
                v-if="Processdata.donateorgansService.createtime"
                v-if="donateorgansService.createtime"
              >
                <p>
                  提交时间:<span>{{
                    parseTime(Processdata.donateorgansService.createtime)
                  }}</span>
                  提交:<span>
                    {{ donateorgansService.createperson }}
                    {{ parseTime(donateorgansService.createtime) }}</span
                  >
                </p>
                <p>
                  更新时间:<span>{{
                    parseTime(Processdata.donateorgansService.updatetime)
                  }}</span>
                  更新:<span>
                    {{ donateorgansService.updateperson }}
                    {{ parseTime(donateorgansService.updatetime) }}</span
                  >
                </p>
              </template>
            </el-step>
@@ -111,19 +112,18 @@
              description="请先完成前部步骤"
              icon="el-icon-s-management"
            >
              <template
                slot="description"
                v-if="Processdata.donationwitness.createtime"
              >
              <template slot="description" v-if="donationwitness.createtime">
                <p>
                  提交时间:<span>{{
                    parseTime(Processdata.donationwitness.createtime)
                  }}</span>
                  提交:<span>
                    {{ donationwitness.createperson }}
                    {{ parseTime(donationwitness.createtime) }}</span
                  >
                </p>
                <p>
                  更新时间:<span>{{
                    parseTime(Processdata.donationwitness.updatetime)
                  }}</span>
                  更新:<span>
                    {{ donationwitness.updateperson }}
                    {{ parseTime(donationwitness.updatetime) }}</span
                  >
                </p>
              </template>
            </el-step>
@@ -134,17 +134,19 @@
            >
              <template
                slot="description"
                v-if="Processdata.donatecompletioninfo.createtime"
                v-if="donatecompletioninfo.createtime"
              >
                <p>
                  提交时间:<span>{{
                    parseTime(Processdata.donatecompletioninfo.createtime)
                  }}</span>
                  提交:<span>
                    {{ donatecompletioninfo.createperson }}
                    {{ parseTime(donatecompletioninfo.createtime) }}</span
                  >
                </p>
                <p>
                  更新时间:<span>{{
                    parseTime(Processdata.donatecompletioninfo.updatetime)
                  }}</span>
                  更新:<span>
                    {{ donatecompletioninfo.updateperson }}
                    {{ parseTime(donatecompletioninfo.updatetime) }}</span
                  >
                </p>
              </template>
            </el-step>
@@ -345,7 +347,7 @@
        </el-steps>
      </div>
      <!-- 凭证文件 -->
      <div class="Ticket-button" v-show="actives != 5 && actives != 4">
      <div class="Ticket-button">
        <el-button @click.native.prevent="Filepopup" type="success"
          >凭证文件</el-button
        >
@@ -571,7 +573,7 @@
                  >
                    <el-checkbox-group v-model="form.kinship">
                      <el-checkbox
                        v-for="dict in dict.type.sys_Kinship"
                        v-for="dict in dict.type.sys_kinship"
                        :key="dict.value"
                        :label="dict.value"
                      >
@@ -719,12 +721,13 @@
        </el-form>
        <div class="dialog-footer">
          <el-button
            v-show="!showTerminationBtn"
            v-show="!showTerminationBtn && workflow != 9"
            type="primary"
            @click="submitForm"
            >保存</el-button
          >
          <el-button
            v-if="workflow != 9"
            :type="showTerminationBtn == 0 ? 'warning' : 'success'"
            @click="Terminationcase"
            >{{ showTerminationBtn == 0 ? "终止" : "恢复" }}</el-button
@@ -942,12 +945,13 @@
        </el-form>
        <div class="dialog-footer">
          <el-button
            v-show="!showTerminationBtn"
            v-show="!showTerminationBtn && workflow != 9"
            type="primary"
            @click="Savethedetails"
            >保存</el-button
          >
          <el-button
            v-if="workflow != 9"
            :type="showTerminationBtn == 0 ? 'warning' : 'success'"
            @click="Terminationcase"
            >{{ showTerminationBtn == 0 ? "终止" : "恢复" }}</el-button
@@ -1038,13 +1042,17 @@
          <el-row>
            <el-col :span="12">
              <el-form-item label="签字亲属" prop="kinshipconfirmationsign">
                <el-checkbox-group v-model="organdecision">
                <el-checkbox-group v-model="kinship">
                  <el-checkbox
                    v-for="item in kinshiplist"
                    :key="item"
                    :label="item"
                    v-for="item in dict.type.sys_kinshipConfirm"
                    :label="item.value"
                    :value="item.value"
                  >
                    {{ item == "子女" ? item + "(人)" : item }}
                    {{
                      item.label == "成年子女"
                        ? item.label + "(人)"
                        : item.label
                    }}
                  </el-checkbox>
                </el-checkbox-group>
              </el-form-item>
@@ -1175,12 +1183,13 @@
        </el-form>
        <div class="dialog-footer">
          <el-button
            v-show="!showTerminationBtn"
            v-show="!showTerminationBtn && workflow != 9"
            type="primary"
            @click="Savethedetails"
            >保存</el-button
          >
          <el-button
            v-if="workflow != 9"
            :type="showTerminationBtn == 0 ? 'warning' : 'success'"
            @click="Terminationcase"
            >{{ showTerminationBtn == 0 ? "终止" : "恢复" }}</el-button
@@ -1246,12 +1255,13 @@
        </el-form>
        <div class="dialog-footer" style="min-height: 500px; margin: 20px 0; ">
          <el-button
            v-show="!showTerminationBtn"
            v-show="!showTerminationBtn && workflow != 9"
            type="primary"
            @click="Savethedetails"
            >保存</el-button
          >
          <el-button
            v-if="workflow != 9"
            :type="showTerminationBtn == 0 ? 'warning' : 'success'"
            @click="Terminationcase"
            >{{ showTerminationBtn == 0 ? "终止" : "恢复" }}</el-button
@@ -1268,9 +1278,9 @@
      <!-- 器官分配 -->
      <div class="boxdiv" v-show="actives == 4">
        <el-form
          ref="allocateddata"
          :model="allocateddata"
          ref="allocateddataform"
          :rules="allocationrules"
          :model="allocateddataform"
          label-position="right"
        >
          <el-row>
@@ -1346,7 +1356,7 @@
                    </template>
                  </el-table-column>
                  <el-table-column
                    label="受体姓名"
                    label="受体姓氏"
                    align="center"
                    width="120"
                    prop="name"
@@ -1354,33 +1364,27 @@
                    <template slot-scope="scope">
                      <el-input
                        v-model="scope.row.name"
                        placeholder="受体姓名"
                        placeholder="受体姓氏"
                      />
                    </template>
                  </el-table-column>
                  <!--
              <el-table-column label="证件类型" align="center" width="150" prop="idcardtype">
                <template slot-scope="scope">
                  <el-select v-model="scope.row.idcardtype" placeholder="移植人证件类型">
                    <el-option v-for="dict in dict.type.sys_IDType" :key="dict.value" :label="dict.label"
                      :value="parseInt(dict.value)"></el-option>
                  </el-select>
                </template>
              </el-table-column>
              <el-table-column label="证件号码" align="center" width="200" prop="idcardno">
                <template slot-scope="scope">
                  <el-input v-model="scope.row.idcardno" placeholder="证件号码" />
                </template>
              </el-table-column>
                  <el-table-column label="分配状态" align="center" width="150" prop="allocationstatus">
                  <el-table-column
                    label="移植医院"
                    align="center"
                    width="230"
                    prop="transplanthospitalno"
                  >
                    <template slot-scope="scope">
                      <el-select v-model="scope.row.allocationstatus" placeholder="请选择器官状态">
                        <el-option v-for="dict in allocationstatuslist" :key="dict.value" :label="dict.label"
                          :value="dict.value"></el-option>
                      </el-select>
                      <div class="elldiv">
                        <org-selecter
                          ref="tranHosSelect"
                          :org-type="'4'"
                          v-model="scope.row.transplanthospitalno"
                        />
                      </div>
                    </template>
                  </el-table-column>
                -->
                  </el-table-column>
                  <el-table-column
                    prop="reallocationreason"
                    label="说明"
@@ -1419,12 +1423,13 @@
        </el-form>
        <div class="dialog-footer" v-show="actives == 4">
          <el-button
            v-show="!showTerminationBtn"
            v-show="!showTerminationBtn && workflow != 9"
            type="primary"
            @click="Savethedetails"
            >保存</el-button
          >
          <el-button
            v-if="workflow != 9"
            :type="showTerminationBtn == 0 ? 'warning' : 'success'"
            @click="Terminationcase"
            >{{ showTerminationBtn == 0 ? "终止" : "恢复" }}</el-button
@@ -1705,7 +1710,7 @@
              <el-form-item label-width="100px" label="获取器官">
                <el-checkbox-group v-model="organList.organprocured">
                  <el-checkbox
                    v-for="dict in dict.type.sys_Organ"
                    v-for="dict in sysOrganlistL"
                    :key="dict.value"
                    :label="dict.value"
                    @change="changeorganprocured(dict.value)"
@@ -1740,6 +1745,19 @@
                    width="90"
                    prop="organno"
                  />
                  <!-- <el-table-column
                    label="系统编号"
                    align="center"
                    width="120"
                    prop="caseno"
                  >
                    <template slot-scope="scope">
                      <el-input
                        v-model="scope.row.caseno"
                        placeholder="系统编号"
                      />
                    </template>
                  </el-table-column> -->
                  <el-table-column
                    label="器官离体时间"
                    align="center"
@@ -1788,6 +1806,19 @@
                      />
                    </template>
                  </el-table-column>
                  <!-- <el-table-column
                    label="受体姓氏"
                    align="center"
                    width="120"
                    prop="name"
                  >
                    <template slot-scope="scope">
                      <el-input
                        v-model="scope.row.name"
                        placeholder="受体姓氏"
                      />
                    </template>
                  </el-table-column> -->
                  <el-table-column
                    label="获取状态"
                    align="center"
@@ -1903,12 +1934,13 @@
        <div class="dialog-footer">
          <el-button
            v-show="!showTerminationBtn"
            v-show="!showTerminationBtn && workflow != 9"
            type="primary"
            @click="Savethedetails"
            >保存</el-button
          >
          <el-button
            v-if="workflow != 9"
            :type="showTerminationBtn == 0 ? 'warning' : 'success'"
            @click="Terminationcase"
            >{{ showTerminationBtn == 0 ? "终止" : "恢复" }}</el-button
@@ -1973,18 +2005,44 @@
                    prop="organno"
                  />
                  <el-table-column
                    label="系统编号"
                    align="center"
                    width="120"
                    prop="caseno"
                  >
                    <template slot-scope="scope">
                      <el-input
                        v-model="scope.row.caseno"
                        placeholder="系统编号"
                      />
                    </template>
                  </el-table-column>
                  <el-table-column
                    label="移植医院"
                    align="center"
                    width="220"
                    prop="transplanthospitalname"
                    prop="hospitalno"
                    v-if="actives == 6"
                  >
                    <template slot-scope="scope">
                      <org-selecter
                        ref="tranHosSelect"
                        :org-type="'4'"
                        v-model="scope.row.transplanthospitalno"
                        v-model="scope.row.hospitalno"
                        style="width: 100%"
                      />
                    </template>
                  </el-table-column>
                  <el-table-column
                    label="受体姓氏"
                    align="center"
                    width="120"
                    prop="name"
                  >
                    <template slot-scope="scope">
                      <el-input
                        v-model="scope.row.name"
                        placeholder="受体姓氏"
                      />
                    </template>
                  </el-table-column>
@@ -2013,8 +2071,8 @@
                        size="small"
                        style="width: 100%"
                        v-model="scope.row.transplanttime"
                        type="datetime"
                        value-format="yyyy-MM-dd HH:mm:ss"
                        type="date"
                        value-format="yyyy-MM-dd"
                        placeholder="选择移植时间"
                      >
                      </el-date-picker>
@@ -2147,21 +2205,25 @@
        </el-form>
        <div class="dialog-footer">
          <el-button
            v-show="!showTerminationBtn"
            v-show="!showTerminationBtn && workflow != 9"
            type="primary"
            @click="Savethedetails"
            >保存</el-button
          >
          <el-button
            v-if="workflow != 9"
            :type="showTerminationBtn == 0 ? 'warning' : 'success'"
            @click="Terminationcase"
            >{{ showTerminationBtn == 0 ? "终止" : "恢复" }}</el-button
          >
          <el-button
            v-show="Reportforreview"
            type="primary"
            v-if="workflow != 9"
            type="success"
            @click="Reportforreview"
            >提交</el-button
            >提交归档</el-button
          >
          <el-button v-else type="danger" @click="Reportforreview"
            >撤销归档</el-button
          >
          <!-- <el-button @click="cancel">取 消</el-button> -->
        </div>
@@ -2169,10 +2231,6 @@
      <!-- 完结流程 -->
      <div class="boxdiv" v-show="actives > 6">
        <div style="display:flex; line-height: 100px; justify-content: center;">
          <!-- <el-image
            style="width: 100px; height: 100px"
            :src="require('@/assets/images/wanc.png')"
          ></el-image> -->
          <div style="padding: 20px 0; margin: 0 30px">
            <img
              style="width: 60px; height: 60px"
@@ -2196,17 +2254,27 @@
      :close-on-click-modal="false"
      :title="pdftitle"
      :visible.sync="pdfVisible"
      width="60%"
      width="68%"
    >
      <!-- <div style="text-align: right;">
        <el-button type="success" @click="drawer = true"
          >文件指导目录</el-button
        >
      </div> -->
      <el-tabs style="margin-top: 20px;" v-model="activeName" type="card">
      <!-- <el-tabs style="margin-top: 20px;" v-model="activeName" type="card">
        <el-tab-pane :label="activetele" name="1"> </el-tab-pane>
      </el-tabs>
      </el-tabs> -->
      <div class="pdfimg">
        <div>
          <el-tabs
            tab-position="right"
            style="height: 600px;"
            v-model="annextype"
            @tab-click="selecttab"
          >
            <el-tab-pane
              v-for="dict in dict.type.materials_DBD"
              :label="dict.label"
              :name="dict.value"
            ></el-tab-pane>
          </el-tabs>
        </div>
        <div class="box-pdf">
          <div>
            <el-upload
@@ -2245,6 +2313,7 @@
            >
              <el-table-column
                prop="annexname"
                align="center"
                :show-overflow-tooltip="true"
                label="名称"
              >
@@ -2257,22 +2326,16 @@
              <el-table-column
                prop="name"
                width="180"
                align="center"
                :show-overflow-tooltip="true"
                label="功能"
              >
                <template slot-scope="scope">
                  <el-button
                    type="primary"
                    type="danger"
                    size="mini"
                    @click.native.prevent.stop="deletedowfile(scope.row)"
                    >删除</el-button
                  >
                  <el-button
                    type="primary"
                    size="mini"
                    @click.native.prevent.stop="moveupdowfile(scope.row)"
                    >上移</el-button
                  >
                </template>
              </el-table-column>
@@ -2280,7 +2343,7 @@
          </div>
        </div>
        <div v-if="this.previewpdf && pdfimgsrcList.length" class="pdfimgmin">
        <div v-if="previewpdf && pdfimgsrcList.length" class="pdfimgmin">
          <!-- <img :src="pdfimg" /> -->
          <el-image
            style="width: 95%; height: 90%"
@@ -2337,7 +2400,8 @@
  getDonatebaseinfo,
  addDonatebaseinfo,
  updateDonatebaseinfo,
  getDonatebaseinfoflow
  getDonatebaseinfoflow,
  fileCase
} from "@/api/project/donatebaseinfo";
import {
  listMedicalevaluation,
@@ -2385,18 +2449,27 @@
} from "@/api/project/donationwitness";
import {
  listnewDonatecompletioninfo,
  listDonatecompletioninfo,
  addDonatecompletioninfo,
  updateDonatecompletioninfo,
  listDonatecomporgan,
  saveDonatecomporgan,
  delDonatecomporgan
} from "@/api/project/donatecompletioninfo";
import {
  listDonorchargeorgan,
  updateDonorchargeorgan,
  addDonorchargeorgan,
  saveDonorchargeorgan,
  delDonorchargeorgan
} from "@/api/project/donorcharge";
import Li_area_select from "@/components/Address";
import OrgSelecter from "@/views/project/components/orgselect";
import AnnexUpload from "@/views/project/components/annexupload";
import ReportName from "@/views/project/components/organizationUser";
import { getToken } from "@/utils/auth";
import { formatDate } from "@/utils/index";
import { forEach } from "lodash";
export default {
  name: "donationdetails",
@@ -2406,6 +2479,7 @@
    AnnexUpload,
    ReportName
  },
  data() {
    return {
      infoid: 736,
@@ -2425,9 +2499,11 @@
      },
      affirmform: {
        infoid: null,
        organdecision: []
        organdecision: [],
        kinship: []
      },
      organdecision: [],
      kinship: [],
      ethicform: {
        infoid: null
      },
@@ -2438,7 +2514,7 @@
        "双肾脏",
        "心脏",
        "肺脏",
        "腺体",
        "胰腺",
        "小肠",
        "双眼组织",
        "遗体",
@@ -2470,9 +2546,24 @@
      ],
      //器官数据
      allocateddata: [],
      allocateddataform: {},
      procureddata: [],
      transplantdata: [],
      sysOrganlistL: [
        { label: "心脏", value: "C38" },
        { label: "肝脏", value: "C22" },
        { label: "左肾", value: "C64L" },
        { label: "右肾", value: "C64R" },
        { label: "全肺", value: "C34" },
        { label: "左肺", value: "C34L" },
        { label: "右肺", value: "C34R" },
        { label: "小肠", value: "C17" },
        { label: "胰腺", value: "C25" },
        { label: "遗体", value: "C00" },
        { label: "左眼角膜", value: "C69L" },
        { label: "右眼角膜", value: "C69R" },
        { label: "其他", value: "C01" }
      ],
      witnessform: {
        infoid: null
      },
@@ -2490,7 +2581,13 @@
      showTerminationBtn: 0, //终止状态 0-未终止 1-已终止
      // 流程数据:donatebaseinfo[createtime,updatetime]、medicalevaluation、relativesconfirmation、donateflowcharts、donateorgansService、donationwitness、donatecompletioninfo
      Processdata: {},
      donatebaseinfo: {},
      medicalevaluation: {},
      relativesconfirmation: {},
      donateflowcharts: {},
      donateorgansService: {},
      donationwitness: {},
      donatecompletioninfo: {},
      //省市区默认值设置,可为空
      searchAddress: {
        sheng: "",
@@ -2620,7 +2717,7 @@
      //报告人列表
      reporters: [],
      //附件列表
      annextype: "1", //附件type
      annexfilesList: [], //附件展示列
      potentiallist: [], //潜在附件
      medicinelist: [], //医学附件
@@ -2652,6 +2749,7 @@
  },
  created() {
    this.Getnetworkheader();
    this.infoid = this.$route.query.id;
  },
  mounted() {
@@ -2677,13 +2775,28 @@
    Getbasicinformation() {
      // 左侧流程数据
      getDonatebaseinfoflow(this.infoid).then(res => {
        this.Processdata = res.data;
        if (res.code == 200) {
          this.Processdata = res.data;
          this.donatebaseinfo = this.Processdata.donatebaseinfo;
          this.medicalevaluation = this.Processdata.medicalevaluation;
          this.relativesconfirmation = this.Processdata.relativesconfirmation;
          this.donateflowcharts = this.Processdata.donateflowcharts;
          this.donateorgansService = this.Processdata.donateorgansService;
          this.donationwitness = this.Processdata.donationwitness;
          this.donatecompletioninfo = this.Processdata.donatecompletioninfo;
        } else {
          this.$message.error("侧边栏信息获取失败");
        }
      });
      // 表单数据
      getDonatebaseinfo(this.infoid).then(response => {
        this.form = response.data;
        this.showTerminationBtn = response.data.terminationCase;
        if (response.data.terminationCase) {
          this.showTerminationBtn = response.data.terminationCase;
        } else {
          this.showTerminationBtn = 0;
        }
        this.actives = response.data.workflow;
        this.workflow = response.data.workflow;
        response.data.sex = parseInt(response.data.sex);
@@ -2713,11 +2826,8 @@
        infoid: this.infoid
      };
      if (this.actives == 1) {
        this.annexfilesList = this.medicinelist;
        this.activetele = "医学评估";
        if (this.medicineform.infoid) {
          return;
        }
        listMedicalevaluation(searchParam).then(response => {
          if (response.code == 200 && response.rows[0]) {
            this.medicineform = response.rows[0];
@@ -2728,16 +2838,16 @@
          }
        });
      } else if (this.actives == 2) {
        this.annexfilesList = this.affirmlist;
        this.activetele = "捐献确认";
        if (this.affirmform.infoid) {
          return;
        }
        listRelativesconfirmation(searchParam).then(response => {
          if (response.code == 200 && response.rows[0]) {
            this.affirmform = response.rows[0];
            if (this.affirmform.organdecision) {
              this.organdecision = this.affirmform.organdecision.split(",");
            }
            if (this.affirmform.kinship) {
              this.kinship = this.affirmform.kinship.split(",");
            }
            if (!this.affirmform) {
              this.affirmform = {};
@@ -2748,14 +2858,6 @@
            this.defultAddresss.sheng = this.affirmform.residenceprovincename;
            this.defultAddresss.shi = this.affirmform.residencecityname;
            this.defultAddresss.qu = this.affirmform.residencetownname;
            // if (this.affirmform.kinship) {
            //   this.affirmform.kinship = this.affirmform.kinship.split(",");
            // }
            // if (this.affirmform.organdecision) {
            //   this.affirmform.organdecision = this.affirmform.organdecision.split(
            //     ","
            //   );
            // }
          } else {
            // this.$modal.msgError(
            //   "查询是否存在确认登记记录失败" + JSON.stringify(response)
@@ -2763,11 +2865,8 @@
          }
        });
      } else if (this.actives == 3) {
        this.annexfilesList = this.ethiclist;
        this.activetele = "伦理审查";
        if (this.ethicform.infoid) {
          return;
        }
        //listDonateflowchart(searchParam).then(response => {
        listEthicalreviewopinions(searchParam).then(response => {
          if (response.code == 200 && response.rows.length) {
@@ -2776,11 +2875,13 @@
            console.log("伦理审查数据为空");
          }
        });
      } else if (this.actives == 4 && !this.allocateddata[0]) {
      } else if (this.actives == 4) {
        listDonateorgan(searchParam).then(res => {
          if (res.code == 200) {
            if (res.rows[0]) {
              this.allocateddata = res.rows;
              console.log("this.allocateddata", this.allocateddata);
              this.allocateddataform.allocateddata = this.allocateddata;
            }
            this.organList.organallocated = [];
            for (let i = 0; i < res.rows.length; i++) {
@@ -2792,16 +2893,20 @@
            // );
          }
        });
      } else if (this.actives == 5 && !this.witnessform.infoid) {
      } else if (this.actives == 5 && !this.witnessform.id) {
        // 不存在时获取器官信息
        if (this.witnessform.infoid) {
        if (this.witnessform.id) {
          return;
        }
        listDonationwitnessorgan(searchParam).then(res => {
          if (res.code == 200) {
            if (res.rows[0]) {
              this.procureddata = res.rows;
              this.procureddata.infoid = this.infoid;
            } else {
              this.procureddata = this.allocateddata.filter(
                obj => obj.organname !== "左半肝" && obj.organname !== "右半肝"
              );
              this.procureddata.infoid = this.infoid;
            }
            this.organList.organprocured = [];
@@ -2829,20 +2934,19 @@
          }
        });
      } else if (this.actives == 6) {
        this.annexfilesList = this.registerlist;
        this.activetele = "完成登记";
        if (this.accomplishform.infoid) {
        if (this.accomplishform.id) {
          return;
        }
        // 不存在时获取器官
        let accpre = {
          id: searchParam.infoid
        };
        if (!this.organList.organtransplant[0]) {
          listDonatecomporgan(searchParam).then(res => {
            if (res.code == 200) {
              if (res.rows[0]) {
                this.transplantdata = res.rows;
                this.transplantdata.infoid = this.infoid;
              } else {
                this.transplantdata = this.allocateddata;
                this.transplantdata.infoid = this.infoid;
              }
              for (let i = 0; i < this.transplantdata.length; i++) {
@@ -2858,7 +2962,7 @@
          });
        }
        // 获取完成登记信息
        listnewDonatecompletioninfo(accpre).then(response => {
        listDonatecompletioninfo(searchParam).then(response => {
          if (response.code == 200 && response.rows.length) {
            this.accomplishform = response.rows[0];
            this.accomplishform.infoid = this.infoid;
@@ -2867,7 +2971,6 @@
          }
        });
      } else if (this.actives == 0) {
        this.annexfilesList = this.potentiallist;
        this.activetele = "潜在捐献";
      }
    },
@@ -2938,20 +3041,17 @@
            }
            updateDonatebaseinfo(this.form).then(response => {
              this.$modal.msgSuccess("保存成功");
              Modifydonationattachment(this.donatelist).then(res => {
              });
              Modifydonationattachment(this.donatelist).then(res => {});
              this.Getbasicinformation();
              // this.Processvalidation();
              this.open = false;
            });
          } else {
            this.form.workflow = 1;
            this.form.recordstate = 0;
            this.form.workflow = 0;
            addDonatebaseinfo(this.form).then(response => {
              if (response.code == 200) {
                this.$modal.msgSuccess("新增成功");
                Modifydonationattachment(this.donatelist).then(res => {
                });
                Modifydonationattachment(this.donatelist).then(res => {});
                this.Getbasicinformation();
                // this.Processvalidation();
                this.open = false;
@@ -2966,6 +3066,7 @@
    // 保存二级表按钮
    Savethedetails() {
      console.log(this.actives);
      this.$modal.loading("正在提交,请稍候!");
      if (this.actives == 1) {
        this.medicineform.infoid = this.infoid;
        this.$refs["medicineform"].validate(valid => {
@@ -2973,10 +3074,12 @@
            if (this.medicineform.id != null) {
              updateMedicalevaluation(this.medicineform).then(response => {
                this.$modal.msgSuccess("医学评估信息修改成功");
                this.$modal.closeLoading();
              });
            } else {
              addMedicalevaluation(this.medicineform).then(response => {
                this.$modal.msgSuccess("医学评估信息新增成功");
                this.$modal.closeLoading();
              });
            }
            this.Processvalidation();
@@ -2985,6 +3088,7 @@
      } else if (this.actives == 2) {
        this.affirmform.infoid = this.infoid;
        this.affirmform.organdecision = this.organdecision.join(",");
        this.affirmform.kinship = this.kinship.join(",");
        this.$refs["affirmform"].validate(valid => {
          if (valid) {
            if (this.affirmform.id != null) {
@@ -2993,10 +3097,15 @@
              this.affirmform.residencetownname = this.defultAddresss.qu;
              updateRelativesconfirmation(this.affirmform).then(response => {
                this.$modal.msgSuccess("捐献确认信息修改成功");
                this.$modal.closeLoading();
              });
            } else {
              this.affirmform.residenceprovincename = this.defultAddresss.sheng;
              this.affirmform.residencecityname = this.defultAddresss.shi;
              this.affirmform.residencetownname = this.defultAddresss.qu;
              addRelativesconfirmation(this.affirmform).then(response => {
                this.$modal.msgSuccess("捐献确认信息新增成功");
                this.$modal.closeLoading();
              });
            }
            this.Processvalidation();
@@ -3010,11 +3119,13 @@
              // updateDonateflowchart(this.ethicform).then(response => {
              updateEthicalreviewopinions(this.ethicform).then(res => {
                this.$modal.msgSuccess("伦理审查信息修改成功");
                this.$modal.closeLoading();
              });
            } else {
              //addDonateflowchart(this.ethicform).then(response => {
              addEthicalreviewopinions(this.ethicform).then(res => {
                this.$modal.msgSuccess("伦理审查信息新增成功");
                this.$modal.closeLoading();
              });
            }
            this.Processvalidation();
@@ -3022,8 +3133,8 @@
        });
      } else if (this.actives == 4) {
        this.procureddata.infoid = this.infoid;
        this.$refs["allocateddata"].validate(valid => {
          /**
        this.$refs["allocateddataform"].validate(valid => {
          /**
          let rows = [];
          this.allocateddata.map(item => {
            if (item.id) {
@@ -3044,8 +3155,9 @@
            item.applicanttime = formatDate(item.applicanttime);
          });
          saveDonateorgan(this.allocateddata).then(res => {
            if (res == 200) {
            if (res.code == 200) {
              this.$modal.msgSuccess("器官捐献分配信息保存成功!");
              this.$modal.closeLoading();
            }
          });
          this.Processvalidation();
@@ -3075,10 +3187,12 @@
            if (this.witnessform.id != null) {
              updateDonationwitness(this.witnessform).then(response => {
                this.$modal.msgSuccess("获取见证信息修改成功");
                this.$modal.closeLoading();
              });
            } else {
              addDonationwitness(this.witnessform).then(response => {
                this.$modal.msgSuccess("获取见证信息新增成功");
                this.$modal.closeLoading();
              });
            }
@@ -3100,20 +3214,58 @@
          if (valid) {
            // 保存捐献器官移植信息
            this.transplantdata.infoid = this.infoid;
            console.log(this.form);
            this.transplantdata.forEach(item => {
              listDonorchargeorgan({
                infoid: item.infoid,
                organno: item.organno
              }).then(res => {
                console.log("aaa");
                if (res.rows[0]) {
                  let objfn = res.rows[0];
                  console.log(objfn, "sass");
                  objfn.caseno = item.caseno;
                  objfn.hospitalno = item.hospitalno;
                  objfn.name = item.name;
                  objfn.receiveTime = item.transplanttime;
                  console.log(objfn, "sass");
                  updateDonorchargeorgan(objfn).then(res1 => {});
                } else {
                  item.id = null;
                  addDonorchargeorgan(item).then(res2 => {});
                }
              });
            });
            saveDonatecomporgan(this.transplantdata).then(res => {
              if (res == 200) {
                this.$modal.msgSuccess("捐献器官获取信息保存成功!");
              } else {
                this.$modal.msgSuccess(res.msg);
                return;
              }
            });
            console.log(this.accomplishform.id, "完成id");
            // 保存确认信息
            if (this.accomplishform.dcid) {
            if (this.accomplishform.id) {
              updateDonatecompletioninfo(this.accomplishform).then(response => {
                this.$modal.msgSuccess("完成登记信息修改成功");
                this.$modal.closeLoading();
              });
            } else {
              addDonatecompletioninfo(this.accomplishform).then(response => {
                this.$modal.msgSuccess("完成登记成功");
                this.$modal.closeLoading();
                // this.$modal
                //   .confirm("案例已完成是否跳转案例费用页面进行费用单保存?")
                //   .then(() => {
                //     this.$router.push({
                //       path: "/finance/donorchargedetail/",
                //       query: { gxinzt: true, operation: "add", data: this.form, }
                //     });
                //   })
                //   .catch(() => {});
              });
            }
@@ -3289,7 +3441,7 @@
        if (organIndex != -1) {
          if (this.transplantdata[organIndex].id > 0) {
            this.$confirm(
              "删除器官数据后将不法恢复,您确认删除该条记录吗?",
              "删除器官数据后将无法恢复,您确认删除该条记录吗?",
              "提示",
              {
                confirmButtonText: "确定",
@@ -3306,6 +3458,12 @@
                    this.$modal.msgSuccess(
                      "删除成功,如果需要增加该器官,请重新选择器官!"
                    );
                    listDonorchargeorgan({
                      infoid: this.transplantdata[organIndex].infoid,
                      organno: this.transplantdata[organIndex].organno
                    }).then(res => {
                      delDonorchargeorgan(res.rows[0].id);
                    });
                  }
                );
              })
@@ -3335,7 +3493,8 @@
              id: null,
              infoid: this.infoid,
              donorno: this.form.donorno,
              organstate: 1
              organstate: 1,
              transplantstate: 1
            });
          }
        } else {
@@ -3355,7 +3514,6 @@
    },
    // 更改进程效验
    Processvalidation() {
      if (this.form.workflow + 1 == this.actives || this.actives == 6) {
        if (this.form.workflow <= 6) {
          this.form.workflow++;
@@ -3364,19 +3522,55 @@
        this.submitForm();
        // this.GetAttacheddata();
      } else if (this.form.workflow > this.actives) {
        // this.submitForm();
        Modifydonationattachment(this.donatelist).then(res => {
        });
        this.submitForm();
        Modifydonationattachment(this.donatelist).then(res => {});
        this.listDonateannex();
        this.GetAttacheddata();
        // this.GetAttacheddata();
      } else {
        this.submitForm();
        // this.$modal.msgWarning("请先完成前部步骤");
        return;
      }
    },
    // 上报审核
    Reportforreview() {},
    // 提交归档
    Reportforreview() {
      if (this.form.workflow == 9) {
        this.form.workflow = 8;
        this.submitForm();
        this.$router.go(-1);
        this.$message({
          type: "success",
          message: "撤销成功!"
        });
      } else {
        this.$confirm("即将进行案例归档, 确认所有数据已保存?", "提示", {
          confirmButtonText: "确定",
          cancelButtonText: "取消",
          type: "warning"
        })
          .then(() => {
            fileCase({ infoId: this.infoid }).then(res => {
              if (res.code == 500) {
                this.$message.error(res.msg);
              } else {
                this.form.workflow = 9;
                this.submitForm();
                this.$message({
                  type: "success",
                  message: "归档成功!"
                });
                this.$router.go(-1);
              }
            });
          })
          .catch(() => {
            this.$message({
              type: "info",
              message: "已取消归档"
            });
          });
      }
    },
    // 终止案例
    Terminationcase() {
      this.form.terminationCase == 1
@@ -3387,6 +3581,13 @@
    // 返回上一页
    cancel() {},
    // ----------------------------------文件
    // 点击分类
    selecttab(row) {
      console.log(row.label);
      this.annextype = row.name;
      this.Filepopup();
    },
    // 获取请求头
    Getnetworkheader() {
      let string = window.location.href;
@@ -3405,40 +3606,10 @@
      parmi.infoid = this.infoid.toString();
      listDonateannex(parmi).then(res => {
        this.donatelist = res.rows;
        const groupedArr = this.donatelist.reduce(
          (accumulator, currentValue) => {
            const key = currentValue.annexfilestype;
            if (key == 0) {
              this.potentiallist.push(currentValue);
            } else if (key == 1) {
              this.medicinelist.push(currentValue);
            } else if (key == 2) {
              this.affirmlist.push(currentValue);
            } else if (key == 3) {
              this.ethiclist.push(currentValue);
            } else if (key == 6) {
              this.registerlist.push(currentValue);
            }
            return accumulator;
          },
          {}
        );
      });
    },
    // 附件修改数据转存封装
    Newconversion(arr, delvalue, addvalue) {
      // 和各部保存同步
      if (this.actives == 0) {
        this.potentiallist = arr;
      } else if (this.actives == 1) {
        this.medicinelist = arr;
      } else if (this.actives == 2) {
        this.affirmlist = arr;
      } else if (this.actives == 3) {
        this.ethiclist = arr;
      } else if (this.actives == 6) {
        this.registerlist = arr;
      }
      // 删除时修改主列delFlag
      const index = this.donatelist.indexOf(delvalue);
      if (index != -1) {
@@ -3457,6 +3628,7 @@
        this.donatelist.push(addvalue);
        console.log("新增后", this.donatelist);
      }
      this.pdftitle = "共" + this.donatelist.length + "项";
    },
    //文件上传
    handleUploadError() {},
@@ -3471,6 +3643,7 @@
        headers: { Authorization: "Bearer " + this.ICDtoken }
      };
      const pdfimg = this.Networkheader + "/prod-api" + response.fileName;
      console.log(this.Networkheader);
      //获取票据信息位置
      if (response.code == 200) {
        this.previewpdf = true;
@@ -3481,13 +3654,12 @@
            // 将获取的数据流转换为URL
            this.pdfimg = URL.createObjectURL(blob);
            this.pdfimgsrcList.push(URL.createObjectURL(blob));
            this.pdftitle = "共" + this.pdfimgsrcList.length + "项";
            let addvalue = {
              annexname: file.name,
              annexurl: URL.createObjectURL(blob),
              delFlag: 0,
              infoid: this.infoid,
              annexfilestype: this.actives
              annexfilestype: this.annextype
            };
            this.fileListto.push(addvalue);
          })
@@ -3507,7 +3679,7 @@
          annexurl: response.fileName,
          delFlag: 0,
          infoid: this.infoid,
          annexfilestype: this.actives
          annexfilestype: this.annextype
        };
        this.annexfilesList.push(addvalues);
        this.Newconversion(this.annexfilesList, "", addvalues);
@@ -3516,15 +3688,18 @@
      }
    },
    // 文件弹窗触发
    Filepopup(index, rows, row) {
    Filepopup() {
      this.annexfilesList = this.donatelist.filter(
        obj => obj.annexfilestype == this.annextype
      );
      const config = {
        headers: { Authorization: "Bearer " + this.ICDtoken }
      };
      this.fileListto = [];
      this.invoicepdfimg = [];
      this.pdfimgsrcList = [];
      this.atpresent = index;
      this.pdfimg = "";
      this.pdfVisible = true;
      if (this.annexfilesList.length) {
        this.annexfilesList.forEach((value, indexson) => {
@@ -3538,7 +3713,7 @@
                annexurl: URL.createObjectURL(blob),
                delFlag: 0,
                infoid: this.infoid,
                annexfilestype: this.actives
                annexfilestype: value.annexfilestype
              });
              if (this.fileListto.length == 1) {
                this.pdfimg = URL.createObjectURL(blob);
@@ -3556,13 +3731,13 @@
        this.pdfimg = "";
        this.pdftitle = "";
      }
      this.pdftitle = "共" + this.pdfimgsrcList.length + "项";
      this.pdftitle = "共" + this.donatelist.length + "项";
    },
    // 点击已上传文件
    downFile(item) {
      console.log(item, "点击文件拿item");
      this.pdftitle =
        "共" + this.pdfimgsrcList.length + "项,当前选中" + item.annexname;
        "共" + this.donatelist.length + "项,当前选中" + item.annexname;
      let name = item.annexname.split(".");
      if (name[1] == "pdf") {
        this.$modal.msgWarning("当前文件暂不支持预览");
@@ -3598,17 +3773,7 @@
      });
      console.log(indexvalue, "删除索引");
      this.annexfilesList.splice(indexvalue, 1);
      this.Newconversion(
        this.annexfilesList,
        indexvalue,
        ""
      );
    },
    // 点击上移
    moveupdowfile(row) {
      const index = this.getIndexInArray(this.fileListto, row);
      const item = this.fileListto.splice(index, 1)[0]; // 移除指定索引处的元素,并保存到item变量中
      this.fileListto.splice(index - 1, 0, item); // 将item插入到索引位置的前一位
      this.Newconversion(this.annexfilesList, indexvalue, "");
    },
    clearFilter() {
@@ -3683,7 +3848,7 @@
    "sys_0_1",
    "sys_patientstate",
    "sys_DonationCategory",
    "sys_Kinship",
    "sys_kinship",
    "sys_Infectious",
    "sys_bloodtype_rhd",
    "sys_InfoSources",
@@ -3694,7 +3859,9 @@
    "sys_OrganDecision",
    "sys_CoreAssessConclusion",
    "sys_BaseAssessConclusion",
    "sys_EthicalReview"
    "sys_EthicalReview",
    "materials_DBD",
    "sys_kinshipConfirm"
  ]
};
</script>
@@ -3746,7 +3913,6 @@
  .box-pdf {
    width: 400px;
    padding-top: 20px;
    margin-right: 30px;
    border: 1px solid #dcdfe6;
    -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
@@ -3819,4 +3985,7 @@
  position: relative;
  width: 80%;
}
:v-deep .el-tabs__nav-scroll {
  overflow: auto;
}
</style>