11
WXL
2024-02-20 4fbeee3784d4be5483ed7ec9e00a875d66bc9ed0
src/views/project/donatebaseinfo/index.vue
@@ -2,19 +2,19 @@
  <div class="app-container">
    <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="70px">
      <el-row :gutter="8">
        <el-col :span="6">
        <el-col :span="5">
          <el-form-item label="姓名" prop="name">
            <el-input v-model="queryParams.name" placeholder="请输入姓名" clearable size="small"
              @keyup.enter.native="handleQuery" />
          </el-form-item>
        </el-col>
        <el-col :span="6">
        <el-col :span="5">
          <el-form-item align="left" label="医疗机构" prop="treatmenthospitalname">
            <org-selecter ref="orgSelecter" :org-type="'3'" v-model="queryParams.treatmenthospitalno"
              @keyup.enter.native="handleQuery" />
          </el-form-item>
        </el-col>
        <el-col :span="6">
        <el-col :span="5">
          <el-form-item label="捐献地市">
            <el-select v-model="queryParams.city" placeholder="请选择地市">
              <el-option v-for="item in provinceData" :key="item.value" :label="item.label" :value="item.value">
@@ -22,7 +22,16 @@
            </el-select>
          </el-form-item>
        </el-col>
        <el-col :span="6">
        <el-col :span="9">
          <el-form-item label="日期">
            <el-date-picker style="width: 100%" v-model="selecttime" type="monthrange" range-separator="至"
              start-placeholder="开始月份" end-placeholder="结束月份" value-format="yyyy-MM-dd" @change="getTimeList">
            </el-date-picker>
          </el-form-item>
        </el-col>
      </el-row>
      <el-row :gutter="8">
        <el-col :span="5">
          <el-form-item label="捐献进度" prop="recordstate">
            <el-select v-model="queryParams.recordstate" placeholder="请选择当前进度" clearable size="small">
              <el-option v-for="dict in dict.type.sys_DonationStatus" :key="dict.value" :label="dict.label"
@@ -30,9 +39,7 @@
            </el-select>
          </el-form-item>
        </el-col>
      </el-row>
      <el-row :gutter="8">
        <el-col :span="6">
        <el-col :span="5">
          <el-form-item label="报告人">
            <el-select v-model="queryParams.reporterno" placeholder="请选择报告人">
              <el-option v-for="item in reportlist" :key="item.index" :label="item.reportername" :value="item.reporterno">
@@ -40,25 +47,13 @@
            </el-select>
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="报告日期">
            <el-date-picker style="width: 100%" v-model="selecttime" type="monthrange" range-separator="至"
              start-placeholder="开始月份" end-placeholder="结束月份" value-format="yyyy-MM-dd" @change="getTimeList">
            </el-date-picker>
          </el-form-item>
        </el-col>
      </el-row>
      <el-row>
        <el-col :span="14">
        <el-col :span="9">
          <el-form-item label="籍贯">
            <div>
              <li_area_select ref="areaSelect" v-model="searchAddress"></li_area_select>
            </div>
          </el-form-item>
        </el-col>
        <el-col :span="4">
          <el-form-item>
            <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
@@ -93,47 +88,76 @@
    </el-row>
    <el-table v-loading="loading" :data="donatebaseinfoList" @selection-change="handleSelectionChange" border
      :default-sort="{ prop: 'reporttime', order: 'descending' }">
      :default-sort="{ prop: 'donatetime', order: 'descending' }">
      <!-- <el-table-column label="报告时间" align="center" prop="id" /> -->
      <!-- <el-table-column type="selection" width="55" align="center" /> -->
      <el-table-column label="报告时间" align="center" prop="reporttime" width="100">
      <el-table-column label="案例时间" align="center" prop="donatetime" width="100">
        <template slot-scope="scope">
          <span>{{ parseTime(scope.row.reporttime, "{y}-{m}-{d}") }}</span>
          <span>{{ parseTime(scope.row.donatetime, "{y}-{m}-{d}") }}</span>
        </template>
      </el-table-column>
      <el-table-column label="捐献编号" align="center" prop="donorno" width="200" />
      <el-table-column label="姓名" align="center" prop="name" width="100" />
      <el-table-column label="性别" align="center" prop="sex" width="100">
        <template slot-scope="scope">
          <dict-tag :options="dict.type.sys_user_sex" :value="parseInt(scope.row.sex)" />
        </template>
      </el-table-column>
      <el-table-column label="年龄" align="center" prop="age" width="100" />
      <el-table-column label="现所在地市" align="center" prop="registercityname" width="150" />
      <el-table-column label="医疗机构" align="center" prop="treatmenthospitalname" />
      <el-table-column label="报告人" align="center" prop="reportername" width="100" />
      <el-table-column label="捐献进度" align="center" prop="recordstate" width="120">
      <el-table-column label="血型" align="center" prop="bloodtype" width="100">
        <template slot-scope="scope">
          <dict-tag :options="dict.type.sys_DonationStatus" :value="scope.row.recordstate" />
          <dict-tag :options="dict.type.sys_BloodType" :value="scope.row.bloodtype" />
        </template>
      </el-table-column>
      <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="200" fixed="right">
      <el-table-column label="捐献类别" align="center" prop="donationcategory" width="150">
        <template slot-scope="scope">
          <dict-tag :options="dict.type.sys_DonationCategory" :value="scope.row.donationcategory" />
        </template>
      </el-table-column>
      <el-table-column label="报告人" align="center" prop="reportername" width="100" />
      <!--
         <el-table-column
        label="现所在地市"
        align="center"
        prop="registercityname"
        width="150"
      />
      <el-table-column
        label="捐献进度"
        align="center"
        prop="recordstate"
        width="120"
      >
        <template slot-scope="scope">
         <dict-tag
            :options="dict.type.sys_DonationStatus"
            :value="scope.row.recordstate"
          />
        </template>
      </el-table-column>
      -->
      <el-table-column label="捐献进度" align="center" prop="workflow" width="120">
        <template slot-scope="scope">
          <dict-tag :options="dict.type.sys_donornode" :value="scope.row.workflow" />
        </template>
      </el-table-column>
      <el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right">
        <template slot-scope="scope">
          <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
            v-hasPermi="['project:donatebaseinfo:edit']">修改</el-button>
            v-hasPermi="['project:donatebaseinfo:edit']">详情</el-button>
          <el-button v-if="scope.row.recordstate == 0" size="mini" type="text" icon="el-icon-delete"
            @click="handleDelete(scope.row)" v-hasPermi="['project:donatebaseinfo:remove']">删除</el-button>
          <el-button size="mini" type="text" icon="el-icon-edit" @click="handletermination(scope.row)"
            v-hasPermi="['project:donatebaseinfo:edit']">终止</el-button>
          <!--
            <el-button v-if="scope.row.recordstate == 0 || scope.row.recordstate == 3" size="mini" type="text"
            icon="el-icon-thumb" @click="handleapproval(scope.row)">提交</el-button>
           -->
          <el-button size="mini" type="text" icon="el-icon-refrigerator" @click="handledownload(scope.row)">下载</el-button>
          <el-button v-if="scope.row.recordstate == 0 || scope.row.recordstate == 3" size="mini" type="text"
            icon="el-icon-thumb" @click="handleapproval(scope.row)">上报审核</el-button>
          <!-- 撤销申请 -->
          <!--
            <el-button size="mini" type="text" icon="el-icon-edit" @click="handletermination(scope.row)"
            v-hasPermi="['project:donatebaseinfo:edit']">{{ scope.row.recordstate == 99 ? "恢复": "终止"  }}</el-button>
          -->
        </template>
      </el-table-column>
    </el-table>
@@ -167,15 +191,7 @@
          <el-row>
            <el-col :span="6">
              <el-form-item align="left" label="姓名" prop="name">
                <el-input v-model="form.name" placeholder="请输入姓名" />
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="性别" prop="sex">
                <el-select v-model="form.sex" placeholder="请选择性别">
                  <el-option v-for="dict in dict.type.sys_user_sex" :key="dict.label" :label="dict.label"
                    :value="parseInt(dict.value)"></el-option>
                </el-select>
                <el-input v-model="form.name" placeholder="必填项" />
              </el-form-item>
            </el-col>
            <el-col :span="6">
@@ -191,8 +207,12 @@
                <el-input v-model="form.nativeplace" placeholder="请输入国籍" />
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="国籍" prop="nationality">
                <el-input v-model="form.nationality" placeholder="请输入国籍" />
              </el-form-item>
            </el-col>
          </el-row>
          <el-row>
            <el-col :span="6">
              <el-form-item label="证件类型" prop="idcardtype">
@@ -206,9 +226,28 @@
              <el-form-item label="证件号码" prop="idcardno">
                <el-input style="width: 174px" ref="updateBSvalue" class="sfzcode" v-model="form.idcardno"
                  placeholder="请输入证件号码" @blur="updateMessage" />
              </el-form-item> </el-col><el-col :span="6">
              <el-form-item label="国籍" prop="nationality">
                <el-input v-model="form.nationality" placeholder="请输入国籍" />
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="性别" prop="sex">
                <el-select v-model="form.sex" placeholder="请输入性别">
                  <el-option v-for="dict in dict.type.sys_user_sex" :key="dict.label" :label="dict.label"
                    :value="parseInt(dict.value)"></el-option>
                </el-select>
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="年龄" prop="age">
                <el-input v-model="form.age" placeholder="请输入年龄" />
              </el-form-item>
            </el-col>
          </el-row>
          <el-row>
            <el-col :span="6">
              <el-form-item label="出生日期" prop="birthday">
                <el-date-picker clearable size="small" v-model="form.birthday" type="date" style="width: 174px"
                  value-format="yyyy-MM-dd HH:mm:ss" placeholder="选择出生日期">
                </el-date-picker>
              </el-form-item>
            </el-col>
            <el-col :span="6">
@@ -219,20 +258,7 @@
                </el-select>
              </el-form-item>
            </el-col>
          </el-row>
          <el-row>
            <el-col :span="6">
              <el-form-item label="年龄" prop="age">
                <el-input v-model="form.age" placeholder="请输入年龄" />
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="出生日期" prop="birthday">
                <el-date-picker clearable size="small" v-model="form.birthday" type="date" style="width: 174px"
                  value-format="yyyy-MM-dd HH:mm:ss" placeholder="选择出生日期">
                </el-date-picker>
              </el-form-item> </el-col><el-col :span="6">
              <el-form-item label="学历" prop="education">
                <el-select v-model="form.education" placeholder="请选择学历">
                  <el-option v-for="dict in dict.type.sys_education" :key="dict.value" :label="dict.label"
@@ -241,7 +267,6 @@
              </el-form-item>
            </el-col>
          </el-row>
          <el-row>
            <el-col :span="12">
              <el-form-item label="住址" prop="residenceaddress">
@@ -485,17 +510,17 @@
            </el-col>
          </el-row>
        </div>
        <div style="padding-right: 60px; margin-top: 20px">
        <!-- <div style="padding-right: 60px; margin-top: 20px">
          <el-row>
            <el-form-item label="附件" align="left" prop="annexfile">
              <annex-upload ref="annex" :infoid="form.id" :donorno="form.donorno" :flowname="flowname"
                :annexno="annexno" />
            </el-form-item>
          </el-row>
        </div>
        </div> -->
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button v-show="showSaveBtn" type="primary" @click="submitForm">保 存</el-button>
        <el-button v-show="showSaveBtn" type="primary" @click="submitForm">保存并前往案例工作台</el-button>
        <el-button v-show="showTerminationBtn" type="primary" @click="submitForm">终止案例</el-button>
        <el-button @click="cancel">取 消</el-button>
        <!-- <el-button @click="handleapproval">提交审核</el-button> -->
@@ -514,25 +539,26 @@
  updateDonatebaseinfo,
  exportDonatebaseinfo,
  downloadbaseinfo,
  getdonatorno,
  getdonatorno
  // exportProvincemessage,
} from "@/api/project/donatebaseinfo";
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 {
  listOrganization,
  getOrganization,
  listReportname,
  listUser,
  listUser
} from "@/api/project/organization";
import ReportName from "@/views/project/components/organizationUser";
export default {
  components: {
    Li_area_select,
    OrgSelecter,
    AnnexUpload,
    ReportName,
    ReportName
  },
  name: "Donatebaseinfo",
  dicts: [
@@ -561,6 +587,7 @@
    "sys_DiseaseType",
    "sys_SelfWill",
    "sys_FamilyRelation",
    "sys_donornode"
  ],
  data() {
    return {
@@ -577,17 +604,17 @@
        sheng: "",
        shi: "",
        qu: "",
        organizationname: null,
        organizationname: null
      },
      residenceAddresss: {
        sheng: "浙江省",
        shi: "",
        qu: "",
        qu: ""
      },
      registerAddresss: {
        sheng: "浙江省",
        shi: "",
        qu: "",
        qu: ""
      },
      // 遮罩层
      loading: true,
@@ -629,7 +656,7 @@
        starttime: null,
        endtime: null,
        city: null,
        reportno: null,
        reportno: null
        // organizationname: null,
        // organizationtype: null,
        // idcardno: null,
@@ -645,74 +672,77 @@
      // 表单校验
      rules: {
        name: [
          { required: true, message: "请输入捐献者姓名", trigger: "blur" },
          { required: true, message: "请输入捐献者姓名", trigger: "blur" }
        ],
        birthday: [
          { required: true, message: "请选择出生日期", trigger: "blur" }
        ],
        idcardtype: [
          { required: true, message: "请选择证件类型", trigger: "blur" },
          { required: true, message: "请选择证件类型", trigger: "blur" }
        ],
        residenceaddress: [
          { required: true, message: "请输入住址", trigger: "blur" },
          { required: true, message: "请输入住址", trigger: "blur" }
        ],
        contacttime: [
          {
            required: true,
            message: "请输入红十字会联系时间",
            trigger: "blur",
          },
            trigger: "blur"
          }
        ],
        idcardno: [
          { required: true, message: "请正确输入证件号码", trigger: "blur" },
          { required: true, message: "请正确输入证件号码", trigger: "blur" }
        ],
        sex: [{ required: true, message: "性别不能为空", trigger: "blur" }],
        age: [{ required: true, message: "请输入年龄", trigger: "blur" }],
        treatmenthospitalno: [
          { required: true, message: "请选择医疗机构", trigger: "blur" },
          { required: true, message: "请选择医疗机构", trigger: "blur" }
        ],
        // treatmenthospitalno: [{ required: true, message: "请选择医疗机构", trigger: "change" }],
        bloodtype: [
          { required: true, message: "请选择ABO血型", trigger: "blur" },
          { required: true, message: "请选择ABO血型", trigger: "blur" }
        ],
        rhyin: [{ required: true, message: "请选择RHD血型", trigger: "blur" }],
        diseasetype: [
          { required: true, message: "请选择RHD血型", trigger: "blur" },
          { required: true, message: "请选择RHD血型", trigger: "blur" }
        ],
        inpatientno: [
          { required: true, message: "输入住院号", trigger: "blur" },
          { required: true, message: "输入住院号", trigger: "blur" }
        ],
        diagnosisname: [
          { required: true, message: "疾病诊断不能为空", trigger: "blur" },
          { required: true, message: "疾病诊断不能为空", trigger: "blur" }
        ],
        infoname: [
          { required: true, message: "请输入信息员姓名", trigger: "blur" },
          { required: true, message: "请输入信息员姓名", trigger: "blur" }
        ],
        infophone: [
          { required: true, message: "请输入信息员联系电话", trigger: "blur" },
          { required: true, message: "请输入信息员联系电话", trigger: "blur" }
        ],
        redorganno: [
          { required: true, message: "请选择红十字会机构", trigger: "blur" },
          { required: true, message: "请选择红十字会机构", trigger: "blur" }
        ],
        contactperson: [
          {
            required: true,
            message: "红十字会联系人不能为空",
            trigger: "blur",
          },
            trigger: "blur"
          }
        ],
        // contactnumber: [{required: true,message: "请输入红十字会联系电话",trigger: "change"}],
        acquisitiontissueno: [
          { required: true, message: "器官获取组织不能为空", trigger: "blur" },
          { required: true, message: "器官获取组织不能为空", trigger: "blur" }
        ],
        reporterno: [
          { required: true, message: "请选择报告人", trigger: "blur" },
          { required: true, message: "请选择报告人", trigger: "blur" }
        ],
        reporttime: [
          { required: true, message: "请输入报告时间", trigger: "blur" },
          { required: true, message: "请输入报告时间", trigger: "blur" }
        ],
        reporterphone: [
          { required: true, message: "请输入报告人联系电话", trigger: "blur" },
        ],
          { required: true, message: "请输入报告人联系电话", trigger: "blur" }
        ]
      },
      //是否显示保存按钮
      showSaveBtn: true,
@@ -724,6 +754,9 @@
      endtime: "",
      reportlist: [],
      reportervalue: "",
      headers: {
        Authorization: "Bearer " + getToken()
      },
      provinceData: [
        { label: "全部", value: "" },
        { label: "杭州市", value: "1" },
@@ -736,8 +769,8 @@
        { label: "衢州市", value: "8" },
        { label: "舟山市", value: "9" },
        { label: "台州市", value: "A" },
        { label: "丽水市", value: "B" },
      ],
        { label: "丽水市", value: "B" }
      ]
    };
  },
  created() { },
@@ -757,7 +790,7 @@
        this.$moment(this.$route.params.starttime).format("YYYY-MM-DD"),
        this.$moment(this.$route.params.endtime)
          .add(-1, "month")
          .format("YYYY-MM-DD"),
          .format("YYYY-MM-DD")
      ];
    }
    if (this.$route.params.reporterno != "") {
@@ -795,20 +828,20 @@
  methods: {
    getCurrentUser() {
      getUserProfile().then((response) => {
      getUserProfile().then(response => {
        this.currentuser = response.data;
      });
    },
    LoadReportList() {
      listDonatebaseinfo().then((res) => {
      listDonatebaseinfo().then(res => {
        let list = res.rows;
        let reportlist = [];
        reportlist.push({ reporterno: "", reportername: "全部" });
        list.forEach((element) => {
        list.forEach(element => {
          reportlist.push({
            reporterno: element.reporterno,
            reportername: element.reportername,
            reportername: element.reportername
          });
        });
@@ -894,14 +927,14 @@
    selectReporters() {
      //专职人员
      listReportname("zzry").then((res) => {
      listReportname("zzry").then(res => {
        this.reporters = res.data;
      });
    },
    getuserlist() {
      //用户列表
      listUser().then((res) => {
      listUser().then(res => {
        this.users = res.data;
      });
    },
@@ -910,11 +943,11 @@
      this.$confirm("是否确认将案例上报审核?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
        type: "warning"
      })
        .then(() => {
          row.recordstate = 1;
          updateDonatebaseinfo(row).then((response) => {
          updateDonatebaseinfo(row).then(response => {
            this.$modal.msgSuccess("上报审核成功");
            this.getList();
          });
@@ -922,7 +955,7 @@
        .catch(() => {
          this.$message({
            type: "info",
            message: "已取消上报",
            message: "已取消上报"
          });
        });
    },
@@ -930,15 +963,14 @@
      this.approvalState = false;
      //  this.reset();
      // const id = row.id || this.ids;
      updateDonatebaseinfo(row).then((response) => {
      updateDonatebaseinfo(row).then(response => {
        row.recordstate = 0;
      });
    },
    updateMessage() {
      try {
        const reg =
          /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;
        const reg = /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;
        if (reg.test(this.form.idcardno)) {
          // 身份证号码是否合法
          var org_birthday = this.form.idcardno.substring(6, 14);
@@ -993,7 +1025,7 @@
      }
      this.setState({
        birthday,
        sex,
        sex
      });
    },
@@ -1028,7 +1060,7 @@
      this.queryParams.residenceprovince = this.$refs.areaSelect.getSheng();
      this.queryParams.residencecity = this.$refs.areaSelect.getShi();
      this.queryParams.residencetown = this.$refs.areaSelect.getQu();
      listDonatebaseinfo(this.queryParams).then((response) => {
      listDonatebaseinfo(this.queryParams).then(response => {
        this.donatebaseinfoList = response.rows;
        //console.log("listDonatebaseinfo", response.rows);
        this.total = response.total;
@@ -1120,7 +1152,7 @@
        majorrelatives: null,
        familyrelations: null,
        acquisitiontissueno: "ZJOPO",
        acquisitiontissuename: "浙江省人体器官获取组织",
        acquisitiontissuename: "浙江省人体器官获取组织"
      };
      this.resetForm("form");
@@ -1153,7 +1185,7 @@
        reportername: null,
        reporttime: null,
        city: null,
        treatmenthospitalno: null,
        treatmenthospitalno: null
      };
      this.selecttime = [];
      this.getTimeList();
@@ -1161,7 +1193,7 @@
        sheng: "",
        shi: "",
        qu: "",
        organizationname: null,
        organizationname: null
      };
      //this.$refs.areaSelect.clean();
@@ -1170,12 +1202,18 @@
    },
    // 多选框选中数据
    handleSelectionChange(selection) {
      this.ids = selection.map((item) => item.id);
      this.ids = selection.map(item => item.id);
      this.single = selection.length !== 1;
      this.multiple = !selection.length;
    },
    /** 新增按钮操作 */
    handleAdd() {
      // this.$router.push({
      //   path: "/organ/donationdetails/",
      //   query: {
      //     organType: "add",
      //   }
      // });
      this.reset();
      //设置报告人和部门/组
      this.form.reporterno = this.currentuser.userName;
@@ -1194,44 +1232,50 @@
    /** 修改按钮操作 */
    handleUpdate(row) {
      this.showSaveBtn = true;
      const id = row.id || this.ids;
      //this.$refs.annex.getAnnexList();
      getDonatebaseinfo(id).then((response) => {
        this.reset();
        this.$nextTick(function () {
          this.$refs.annex.getAnnexList();
        });
        this.form = response.data;
        response.data.sex = parseInt(response.data.sex);
        debugger;
        this.form.id = response.data.id;
        this.form.diseasetype = this.form.diseasetype.split(",");
        this.form.infectious = this.form.infectious.split(",");
        this.form.selfwill = this.form.selfwill.split(",");
        this.form.othercases = this.form.othercases.split(",");
        this.form.infosources = this.form.infosources.split(",");
        this.form.kinship = this.form.kinship.split(",");
        this.form.patientstate = this.form.patientstate.split(",");
        this.open = true;
        this.title = "人体器官潜在捐献者登记表";
        this.registerAddresss.sheng = response.data.registerprovincename;
        this.residenceAddresss.sheng = response.data.residenceprovincename;
        this.registerAddresss.shi = response.data.registercityname;
        this.residenceAddresss.shi = response.data.residencecityname;
        this.residenceAddresss.qu = response.data.residencetownname;
        this.registerAddresss.qu = response.data.registertownname;
      this.$router.push({
        path: "/organ/donationdetails/",
        query: {
          id: row.id,
          organType: "edit"
        }
      });
    },
      // this.showSaveBtn = true;
      // const id = row.id || this.ids;
      // //this.$refs.annex.getAnnexList();
      // getDonatebaseinfo(id).then((response) => {
      //   this.reset();
      //   this.$nextTick(function () {
      //     this.$refs.annex.getAnnexList();
      //   });
      //   this.form = response.data;
      //   response.data.sex = parseInt(response.data.sex);
      //   this.form.id = response.data.id;
      //   this.form.diseasetype = this.form.diseasetype.split(",");
      //   this.form.infectious = this.form.infectious.split(",");
      //   this.form.selfwill = this.form.selfwill.split(",");
      //   this.form.othercases = this.form.othercases.split(",");
      //   this.form.infosources = this.form.infosources.split(",");
      //   this.form.kinship = this.form.kinship.split(",");
      //   this.form.patientstate = this.form.patientstate.split(",");
      //   this.open = true;
      //   this.title = "人体器官潜在捐献者登记表";
      //   this.registerAddresss.sheng = response.data.registerprovincename;
      //   this.residenceAddresss.sheng = response.data.residenceprovincename;
      //   this.registerAddresss.shi = response.data.registercityname;
      //   this.residenceAddresss.shi = response.data.residencecityname;
      //   this.residenceAddresss.qu = response.data.residencetownname;
      //   this.registerAddresss.qu = response.data.registertownname;
      // });
    },
    // 终止案例
    handletermination(row) {
      this.reset();
      this.showSaveBtn = false;
      this.showTerminationBtn = true;
      const id = row.id || this.ids;
      getDonatebaseinfo(id).then((response) => {
      getDonatebaseinfo(id).then(response => {
        this.form = response.data;
        this.form.diseasetype = this.form.diseasetype.split(",");
@@ -1257,8 +1301,7 @@
    },
    /** 提交按钮 */
    submitForm() {
      this.$refs["form"].validate((valid) => {
        console.log("提交的数据们:", this.form);
      this.$refs["form"].validate(valid => {
        if (valid) {
          this.form.birthday = this.$moment(this.form.birthday).format(
            "YYYY-MM-DD HH:mm:ss"
@@ -1289,21 +1332,20 @@
          this.form.registertownname = this.registerAddresss.qu;
          this.form.reportername = this.$refs.getReportname.$data.selectedLabel;
          this.form.donatetime = this.form.reporttime;
          try {
            this.form.treatmenthospitalname =
              this.$refs.addOrgSelect.getOptionByValue(
                this.form.treatmenthospitalno
              ).organizationname;
            this.form.treatmenthospitalname = this.$refs.addOrgSelect.getOptionByValue(
              this.form.treatmenthospitalno
            ).organizationname;
          } catch {
            this.form.treatmenthospitalname = this.form.treatmenthospitalno;
          }
          try {
            this.form.redorganname =
              this.$refs.addCrossOrgSelect.getOptionByValue(
                this.form.redorganno
              ).organizationname;
            this.form.redorganname = this.$refs.addCrossOrgSelect.getOptionByValue(
              this.form.redorganno
            ).organizationname;
          } catch {
            this.form.redorganname = this.form.redorganno;
          }
@@ -1315,18 +1357,26 @@
          // });
          if (this.form.id != null) {
            updateDonatebaseinfo(this.form).then((response) => {
            updateDonatebaseinfo(this.form).then(response => {
              this.$modal.msgSuccess("修改成功");
              this.open = false;
              this.getList();
            });
          } else {
            this.form.workflow = 0;
            this.form.recordstate = 0;
            addDonatebaseinfo(this.form).then((response) => {
            addDonatebaseinfo(this.form).then(response => {
              if (response.code == 200) {
                this.$modal.msgSuccess("新增成功");
                this.$router.push({
                  path: "/organ/donationdetails/",
                  query: {
                    id: response.data.id,
                    organType: "edit"
                  }
                });
                this.open = false;
                this.getList();
                // this.getList();
              } else {
                this.$modal.msgError("新增失败:" + response.msg);
              }
@@ -1359,7 +1409,7 @@
          this.exportLoading = true;
          return exportDonatebaseinfo(queryParams);
        })
        .then((response) => {
        .then(response => {
          this.$download.name(response.msg);
          this.exportLoading = false;
        })
@@ -1389,21 +1439,39 @@
    handledownload(row) {
      const id = row.id || this.ids;
      downloadbaseinfo(id).then((response) => {
        var fileUrl = response;
      downloadbaseinfo(id).then(res => {
        var fileUrl = res;
        //获取当前网址
        var urlBase = process.env.VUE_APP_BASE_API;
        var curWWWPath = window.document.location.href;
        var pos = curWWWPath.indexOf(window.document.location.pathname);
        // 创建a标签
        var aEle = document.createElement("a");
        aEle.href =
          curWWWPath.substring(0, pos) + urlBase + fileUrl["downloadUrl"];
        aEle.click();
        console.log(aEle.href);
        // 添加Authorization头部
        fetch(aEle.href, {
          headers: this.headers
        })
          .then(response => {
            // 将文件下载链接作为blob对象进行下载
            return response.blob();
          })
          .then(blob => {
            const url = window.URL.createObjectURL(new Blob([blob]));
            console.log(url);
            const link = document.createElement("a");
            link.href = url;
            const name=fileUrl["downloadName"]
            link.setAttribute("download", name); // 替换file.pdf为实际的文件名
            document.body.appendChild(link);
            link.click();
            link.parentNode.removeChild(link);
          });
      });
    },
  },
    }
  }
};
</script>
@@ -1413,4 +1481,4 @@
  margin: auto !important;
  padding-bottom: 0px !important;
}
</style>
</style>