11
WXL
2024-07-11 f06564ebbd94e8cca0874604217dfd03f60aa245
src/views/project/medicalevaluation/index.vue
@@ -9,7 +9,6 @@
      label-width="70px"
    >
      <el-row :gutter="8">
        <el-col :span="6">
          <el-form-item label="姓名" prop="name">
            <el-input
@@ -35,7 +34,7 @@
          </el-form-item>
        </el-col>
         <el-col :span="6">
        <el-col :span="6">
          <el-form-item label="捐献地市">
            <el-select v-model="queryParams.city" placeholder="请选择地市">
              <el-option
@@ -48,17 +47,17 @@
            </el-select>
          </el-form-item>
        </el-col>
        <el-col :span="6">
          <el-form-item label="捐献进度" prop="recordstate">
            <el-select
              v-model="queryParams.recordstate"
              v-model="queryParams.workflow"
              placeholder="请选择捐献进度"
              clearable
              size="small"
            >
              <el-option
                v-for="dict in dict.type.sys_DonationStatus"
                v-for="dict in dict.type.sys_donornode"
                :key="dict.value"
                :label="dict.label"
                :value="dict.value"
@@ -70,7 +69,10 @@
      <el-row :gutter="8">
        <el-col :span="6">
          <el-form-item label="报告人">
            <el-select v-model="queryParams.reporterno" placeholder="请选择报告人">
            <el-select
              v-model="queryParams.reporterno"
              placeholder="请选择报告人"
            >
              <el-option
                v-for="item in reportlist"
                :key="item.index"
@@ -83,7 +85,7 @@
        </el-col>
        <el-col :span="12">
          <el-form-item label="报告日期">
          <el-form-item label="评估时间">
            <el-date-picker
              style="width: 100%"
              v-model="selecttime"
@@ -118,7 +120,17 @@
    <!--<el-table v-loading="loading" border :data="donatebaseinfoList">     -->
    <el-table v-loading="loading" border :data="VMedicalevaluation">
      <el-table-column
        label="报告时间"
        label="案例时间"
        align="center"
        prop="donatetime"
        width="120"
      >
        <template slot-scope="scope">
          <span>{{ parseTime(scope.row.donatetime, "{y}-{m}-{d}") }}</span>
        </template>
      </el-table-column>
      <el-table-column
        label="评估时间"
        align="center"
        prop="reporttime"
        width="120"
@@ -198,13 +210,16 @@
        width="120"
      >
        <template slot-scope="scope">
          <dict-tag
            :options="dict.type.sys_DonationStatus"
            :value="scope.row.recordstate"
          />
          <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
        label="操作"
        align="center"
@@ -571,7 +586,7 @@
  listDonatebaseinfo,
  getDonatebaseinfo,
  addDonatebaseinfo,
  updateDonatebaseinfo,
  updateDonatebaseinfo
  // exportProvincemessage,
} from "@/api/project/donatebaseinfo";
@@ -584,7 +599,7 @@
  delMedicalevaluation,
  addMedicalevaluation,
  updateMedicalevaluation,
  exportMedicalevaluation,
  exportMedicalevaluation
} from "@/api/project/medicalevaluation";
import { listRelativesconfirmation } from "@/api/project/relativesconfirmation";
@@ -599,7 +614,7 @@
  components: {
    Li_area_select,
    OrgSelecter,
    AnnexUpload,
    AnnexUpload
  },
  name: "Medicalevaluation",
  dicts: [
@@ -627,6 +642,7 @@
    "sys_CoreAssessConclusion",
    "sys_BaseAssessConclusion",
    "sys_OrganDecision",
    "sys_donornode"
  ],
  data() {
    //这里存放数据
@@ -645,7 +661,7 @@
        sheng: "",
        shi: "",
        qu: "",
        organizationname: null,
        organizationname: null
      },
      provinceData: [
        { label: "全部", value: "" },
@@ -659,22 +675,22 @@
        { label: "衢州市", value: "8" },
        { label: "舟山市", value: "9" },
        { label: "台州市", value: "A" },
        { label: "丽水市", value: "B" },
        { label: "丽水市", value: "B" }
      ],
      residenceAddresss: {
        sheng: "浙江省",
        shi: "",
        qu: "",
        qu: ""
      },
      registerAddresss: {
        sheng: "浙江省",
        shi: "",
        qu: "",
        qu: ""
      },
      defultAddresss: {
        sheng: "浙江省",
        shi: "",
        qu: "",
        qu: ""
      },
      // 遮罩层
      loading: true,
@@ -716,7 +732,7 @@
        donorno: null,
        reportername: null,
        reporttime: null,
        city: null,
        city: null
      },
      // 表单参数
      form: {},
@@ -734,7 +750,7 @@
      //确认登记表title
      confirmationTitle: "",
      //用户表
      users: [],
      users: []
    };
  },
  //监听属性 类似于data概念
@@ -752,8 +768,7 @@
      this.selecttime = [
        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 != "") {
@@ -790,7 +805,7 @@
  methods: {
    //获取用户列表
    getuserlist() {
      listUser().then((res) => {
      listUser().then(res => {
        this.users = res.data;
      });
    },
@@ -849,13 +864,13 @@
      }
    },
    LoadReportList() {
      listDonatebaseinfo().then((res) => {
      listDonatebaseinfo().then(res => {
        let list = res.rows;
        let reportlist = [];
        list.forEach((element) => {
        list.forEach(element => {
          reportlist.push({
            reporterno: element.reporterno,
            reportername: element.reportername,
            reportername: element.reportername
          });
        });
@@ -867,7 +882,7 @@
    },
    resetArr(Arr) {
      var hash = {};
      Arr = Arr.reduce(function (arr, current) {
      Arr = Arr.reduce(function(arr, current) {
        hash[current.reporterno]
          ? ""
          : (hash[current.reporterno] = true && arr.push(current));
@@ -880,22 +895,17 @@
    getList(e) {
      this.loading = true;
      this.queryParams.params = {};
      // if (null != this.daterangeReporttime && "" != this.daterangeReporttime) {
      //   this.queryParams.params["beginReporttime"] =
      //     this.daterangeReporttime[0];
      //   this.queryParams.params["endReporttime"] = this.daterangeReporttime[1];
      // }
      sessionStorage.removeItem("medicalevaluation");
      sessionStorage.setItem(
        "medicalevaluation",
        JSON.stringify(this.queryParams)
      );
      // 跳转时的默认进度
      if (e != null && e != undefined && !isNaN(e)) {
        this.queryParams.recordstate = e;
      }
      // if (this.selecttime[0] != null && this.selecttime[1] != null) {
      //   this.queryParams.params["starttime"] = this.selecttime[0];
      //   this.queryParams.params["endReporttime"] = this.selecttime[1];
      // }
      // this.queryParams.city='001'
      //console.log(JSON.stringify(this.queryParams));
      if (this.starttime != "") {
        this.queryParams.starttime = this.starttime;
      }
@@ -904,7 +914,7 @@
      }
      this.queryParams.reportervalue = this.reportervalue;
      this.$nextTick(() => {
        listnewMedicalevaluation(this.queryParams).then((response) => {
        listnewMedicalevaluation(this.queryParams).then(response => {
          this.VMedicalevaluation = response.rows;
          console.log("1111111");
          this.total = response.total;
@@ -940,7 +950,7 @@
        coreteamassesstime: null,
        treatmenthospitalname: null,
        coreteamassessconclusion: null,
        assessannex: null,
        assessannex: null
      };
      this.resetForm("form");
    },
@@ -973,7 +983,7 @@
        acquisitiontissueno: null,
        reportername: null,
        reporttime: null,
        city: null,
        city: null
      };
      this.selecttime = [];
      this.getTimeList();
@@ -981,7 +991,7 @@
        sheng: "",
        shi: "",
        qu: "",
        organizationname: null,
        organizationname: null
      };
      this.resetForm("queryForm");
@@ -1006,85 +1016,96 @@
      }
      this.setState({
        birthday,
        sex,
        sex
      });
    },
    /** 新增按钮操作 */
    handleAdd(data) {
      console.log("datadata", data);
      this.$router.push({
        path: "/organ/donationdetails/",
        query: {
          id: data.id,
          organType: "edit"
        }
      });
      // if(data.recordstate != 2 && data.recordstate != 4  && data.recordstate != 5 && data.recordstate != 13){
      //   this.$modal.msgError("当前捐献案例不能进行医学捐献评估");
      //   return
      // }
      this.flowname = "捐献医学评估";
      this.annexno = "";
      this.reset();
      //this.curCase = data;
      this.curCase = {
        id: data.id,
        recordstate: null,
        donorno: data.donorno,
      };
      //获取医学捐献评估记录
      this.loading = true;
      if (data.meid) {
        let searchParam = {
          id: data.meid,
        };
        //listDonatebaseinfo(searchParam).then((response) => {
        listMedicalevaluation(searchParam).then((response) => {
          if (response.code == 200 && response.rows.length == 1) {
            this.title = "修改捐献医学评估";
            this.form = response.rows[0];
            this.form.infoid = data.id;
            this.open = true;
            this.$nextTick(function () {
              this.$refs.evaluationannex.getAnnexList();
            });
          } else {
            this.$modal.msgError(
              "获取医学评估记录失败:" + JSON.stringify(response)
            );
          }
        });
      } else {
        this.title = "新增捐献医学评估";
        this.form.infoid = data.id;
        this.form.donorno = data.donorno;
      // this.flowname = "捐献医学评估";
      // this.annexno = "";
      // this.reset();
      // //this.curCase = data;
      // this.curCase = {
      //   id: data.id,
      //   recordstate: null,
      //   donorno: data.donorno
      // };
      // //获取医学捐献评估记录
      // this.loading = true;
      // if (data.meid) {
      //   let searchParam = {
      //     id: data.meid
      //   };
      //   //listDonatebaseinfo(searchParam).then((response) => {
      //   listMedicalevaluation(searchParam).then(response => {
      //     if (response.code == 200 && response.rows.length == 1) {
      //       this.title = "修改捐献医学评估";
      //       this.form = response.rows[0];
      //       this.form.infoid = data.id;
      //       this.open = true;
      //       this.$nextTick(function() {
      //         this.$refs.evaluationannex.getAnnexList();
      //       });
      //     } else {
      //       this.$modal.msgError(
      //         "获取医学评估记录失败:" + JSON.stringify(response)
      //       );
      //     }
      //   });
      // } else {
      //   this.title = "新增捐献医学评估";
      //   this.form.infoid = data.id;
      //   this.form.donorno = data.donorno;
        this.open = true;
        this.$nextTick(function () {
          this.$refs.evaluationannex.getAnnexList();
        });
      }
      this.loading = false;
      //   this.open = true;
      //   this.$nextTick(function() {
      //     this.$refs.evaluationannex.getAnnexList();
      //   });
      // }
      // this.loading = false;
    },
    /** 提交按钮 */
    submitForm() {
      this.loading = true;
      this.$refs["form"].validate((valid) => {
      this.$refs["form"].validate(valid => {
        if (valid) {
          console.log(this.form.id);
          if (this.form.id != null) {
            updateMedicalevaluation(this.form).then((response) => {
            updateMedicalevaluation(this.form).then(response => {
              this.loading = false;
              this.$modal.msgSuccess("修改成功");
              //查询是否存在确认登记记录
              let searchConfirmParam = {
                infoid: this.curCase.id.toString(),
                infoid: this.curCase.id.toString()
              };
              this.loading = true;
              listRelativesconfirmation(searchConfirmParam).then((response) => {
              listRelativesconfirmation(searchConfirmParam).then(response => {
                this.loading = false;
                console.log(789);
                if (response.code == 200) {
                  if (response.rows.length > 0) {
                    this.curCase.recordstate = 7;
                  } else {
                    this.curCase.recordstate = 4;
                  }
                  updateDonatebaseinfo(this.curCase).then((response1) => {
                    this.getList();
                  updateDonatebaseinfo(this.curCase).then(response1 => {
                    // this.getList();
                    console.log(456);
                    if (response1.code == 200) {
                      if (this.curCase.recordstate == 7) {
                        this.$modal.msgSuccess("捐献评估完成并上报伦理审查");
@@ -1099,19 +1120,20 @@
                  });
                }
              });
              console.log(123);
              this.open = false;
              this.getList();
            });
          } else {
            addMedicalevaluation(this.form).then((response) => {
            addMedicalevaluation(this.form).then(response => {
              this.loading = false;
              this.$modal.msgSuccess("新增成功");
              //查询是否存在确认登记记录
              let searchConfirmParam = {
                infoid: this.curCase.id.toString(),
                infoid: this.curCase.id.toString()
              };
              this.loading = true;
              listRelativesconfirmation(searchConfirmParam).then((response) => {
              listRelativesconfirmation(searchConfirmParam).then(response => {
                this.loading = false;
                if (response.code == 200) {
                  if (response.rows.length > 0) {
@@ -1119,7 +1141,7 @@
                  } else {
                    this.curCase.recordstate = 4;
                  }
                  updateDonatebaseinfo(this.curCase).then((response1) => {
                  updateDonatebaseinfo(this.curCase).then(response1 => {
                    this.getList();
                    if (response1.code == 200) {
                      if (this.curCase.recordstate == 7) {
@@ -1185,7 +1207,7 @@
        createBy: null,
        createTime: null,
        updateBy: null,
        updateTime: null,
        updateTime: null
      };
      this.resetForm("confirmationform");
    },
@@ -1202,13 +1224,13 @@
      this.annexno = "";
      //查询是否存在确认登记记录
      let searchConfirmParam = {
        infoid: row.id.toString(),
        infoid: row.id.toString()
      };
      this.curCase = row;
      this.resetConfirmForm();
      this.loading = true;
      listRelativesconfirmation(searchConfirmParam).then((response) => {
      listRelativesconfirmation(searchConfirmParam).then(response => {
        this.loading = false;
        if (response.code == 200) {
          if (response.rows.length == 0) {
@@ -1230,7 +1252,7 @@
              row.residencetownname;
            this.confirmationTitle = "新增人体器官捐献亲属确认登记表";
            this.isShowConfirmationDialog = true;
            this.$nextTick(function () {
            this.$nextTick(function() {
              this.$refs.confirmannex.getAnnexList();
            });
          } else if (response.rows.length == 1) {
@@ -1250,16 +1272,16 @@
              row.residenceprovincename +
              row.residencecityname +
              row.residencetownname;
            this.defultAddresss.sheng =
              this.confirmationform.residenceprovincename;
            this.defultAddresss.sheng = this.confirmationform.residenceprovincename;
            this.defultAddresss.shi = this.confirmationform.residencecityname;
            this.defultAddresss.qu = this.confirmationform.residencetownname;
            //this.form.kinship = this.form.kinship.split(",");
            this.confirmationform.organdecision =
              this.confirmationform.organdecision.split(",");
            this.confirmationform.organdecision = this.confirmationform.organdecision.split(
              ","
            );
            this.isShowConfirmationDialog = true;
            this.title = "修改人体器官捐献亲属确认登记表";
            this.$nextTick(function () {
            this.$nextTick(function() {
              this.$refs.confirmannex.getAnnexList();
            });
          } else {
@@ -1275,39 +1297,37 @@
    //保存家属确认表
    saveConfirmationForm() {
      this.$refs["confirmationform"].validate((valid) => {
      this.$refs["confirmationform"].validate(valid => {
        if (valid) {
          // this.form.kinship = this.form.kinship.join(",");
          this.confirmationform.organdecision =
            this.confirmationform.organdecision.join(",");
          this.confirmationform.kinship =
            this.confirmationform.kinship.join(",");
          this.confirmationform.residenceprovince =
            this.$refs.residenceaddresss.getSheng();
          this.confirmationform.residenceprovincename =
            this.defultAddresss.sheng;
          this.confirmationform.residencecity =
            this.$refs.residenceaddresss.getShi();
          this.confirmationform.organdecision = this.confirmationform.organdecision.join(
            ","
          );
          this.confirmationform.kinship = this.confirmationform.kinship.join(
            ","
          );
          this.confirmationform.residenceprovince = this.$refs.residenceaddresss.getSheng();
          this.confirmationform.residenceprovincename = this.defultAddresss.sheng;
          this.confirmationform.residencecity = this.$refs.residenceaddresss.getShi();
          this.confirmationform.residencecityname = this.defultAddresss.shi;
          this.confirmationform.residencetown =
            this.$refs.residenceaddresss.getQu();
          this.confirmationform.residencetown = this.$refs.residenceaddresss.getQu();
          this.confirmationform.residencetownname = this.defultAddresss.qu;
          if (this.confirmationform.id != null) {
            updateRelativesconfirmation(this.confirmationform).then(
              (response) => {
              response => {
                this.$modal.msgSuccess("修改成功");
                this.isShowConfirmationDialog = false;
                this.getList();
              }
            );
          } else {
            addRelativesconfirmation(this.confirmationform).then((response) => {
            addRelativesconfirmation(this.confirmationform).then(response => {
              this.$modal.msgSuccess("新增成功");
              this.isShowConfirmationDialog = false;
              //上报伦理审查
              this.curCase.recordstate = 7;
              updateDonatebaseinfo(this.curCase).then((response1) => {
              updateDonatebaseinfo(this.curCase).then(response1 => {
                this.getList();
                if (response1.code == 200) {
                  this.$modal.msgSuccess("上报伦理审查成功");
@@ -1321,7 +1341,7 @@
          }
        }
      });
    },
    }
  },
  //生命周期 - 创建完成(可以访问当前this实例)
@@ -1329,8 +1349,12 @@
    //获取用户列表
    this.getuserlist();
    //获取列表
    if (sessionStorage.getItem("medicalevaluation")) {
      this.queryParams = JSON.parse(sessionStorage.getItem("medicalevaluation"));
      console.log(this.queryParams, "queryParams");
    }
    this.getList();
  },
  }
  // //生命周期 - 挂载完成(可以访问DOM元素)
  //    mounted() {},
  // beforeCreate() {}, //生命周期 - 创建之前