11
WXL
2024-02-21 d5786ed5bcb549ad4ea37437b2acc48d0bac9413
src/views/project/donatebaseinfo/index.vue
@@ -45,7 +45,7 @@
              </el-option>
            </el-select>
          </el-form-item>
        </el-col>
        </el-col>
        <el-col :span="9">
          <el-form-item label="日期">
            <el-date-picker
@@ -170,21 +170,26 @@
      :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="时间"
        label="案例时间"
        align="center"
        prop="reporttime"
        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="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">
@@ -207,7 +212,21 @@
            :value="scope.row.bloodtype"
          />
        </template>
      </el-table-column>
      </el-table-column>
      <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"
@@ -242,12 +261,15 @@
        width="120"
      >
        <template slot-scope="scope">
         <dict-tag
            :options="dict.type.sys_donornode"
            :value="scope.row.workflow"
          />
          <div v-if="!scope.row.terminationCase">
            <dict-tag
              :options="dict.type.sys_donornode"
              :value="scope.row.workflow"
            />
          </div>
          <div v-else>任务中止</div>
        </template>
      </el-table-column>
      </el-table-column>
      <el-table-column
        label="操作"
        align="center"
@@ -263,13 +285,26 @@
            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
            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 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
            size="mini"
            type="text"
            icon="el-icon-refrigerator"
            @click="handledownload(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> 
@@ -861,6 +896,7 @@
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,
@@ -1068,6 +1104,9 @@
      endtime: "",
      reportlist: [],
      reportervalue: "",
      headers: {
        Authorization: "Bearer " + getToken()
      },
      provinceData: [
        { label: "全部", value: "" },
        { label: "杭州市", value: "1" },
@@ -1613,7 +1652,6 @@
    /** 提交按钮 */
    submitForm() {
      this.$refs["form"].validate(valid => {
        console.log("提交的数据们:", this.form);
        if (valid) {
          this.form.birthday = this.$moment(this.form.birthday).format(
            "YYYY-MM-DD HH:mm:ss"
@@ -1644,6 +1682,7 @@
          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(
@@ -1674,6 +1713,7 @@
              this.getList();
            });
          } else {
            this.form.workflow = 0;
            this.form.recordstate = 0;
            addDonatebaseinfo(this.form).then(response => {
              if (response.code == 200) {
@@ -1749,18 +1789,36 @@
    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);
          });
      });
    }
  }