6623e51d0b1edb191ca50201c0130cb5ed1beda8..059398ad3ad81ea49dfb75ac09f268bc0b0f6145
2026-05-09 WXL
界面优化
059398 对比 | 目录
2026-05-09 WXL
医疗信息
e15d03 对比 | 目录
2026-05-09 WXL
维护
50a3bc 对比 | 目录
已修改14个文件
340 ■■■■ 文件已修改
src/main.js 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/ruoyi.js 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/business/GetWitness/GetWitnessInfo.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/business/OrganUtilization/OrganUtilizationInfo.vue 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/business/OrganUtilization/index.vue 43 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/business/affirm/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/business/allocation/index.vue 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/business/appear/caseDetail.vue 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/business/appear/index.vue 60 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/business/assess/index.vue 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/business/course/index.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/business/maintain/index.vue 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/donatebaseinfo/EditCaseModal.vue 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/donatebaseinfo/index.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main.js
@@ -25,7 +25,7 @@
import './permission' // permission control
import { getDicts } from "@/api/system/dict/data";
import { getConfigKey } from "@/api/system/config";
import { parseTime, resetForm, addDateRange, selectDictLabel, selectDictLabels,donatebaseinfoEdit, handleTree } from "@/utils/ruoyi";
import { parseTime, getLabelsFromString,resetForm, addDateRange, selectDictLabel, selectDictLabels,donatebaseinfoEdit, handleTree } from "@/utils/ruoyi";
import { formatTime } from "@/utils/index";
import dataV from '@jiaminghi/data-view';//dataV
// 分页组件
@@ -66,6 +66,7 @@
Vue.prototype.getDicts = getDicts
Vue.prototype.getConfigKey = getConfigKey
Vue.prototype.parseTime = parseTime
Vue.prototype.getLabelsFromString = getLabelsFromString
Vue.prototype.donatebaseinfoEdit = donatebaseinfoEdit
Vue.prototype.formatTime = formatTime
Vue.prototype.resetForm = resetForm
src/utils/ruoyi.js
@@ -50,6 +50,43 @@
  });
  return time_str;
}
/**
 * 将逗号分隔的字符串转换为对应的label字符串
 * @param {string} str - 逗号分隔的字符串,如 "2,3,1"
 * @param {Array} options - 选项数组,格式: [{value: "1", label: "选项1"}, ...]
 * @returns {string} - 逗号分隔的label字符串
 */
export function getLabelsFromString(str, options) {
  if (!str || !options || !Array.isArray(options)) {
    return "";
  }
  // 将字符串分割为数组
  const valueArray = str
    .split(",")
    .map(item => item.trim())
    .filter(item => item !== "");
  if (valueArray.length === 0) {
    return "";
  }
  // 创建value到label的映射
  const valueToLabelMap = {};
  options.forEach(option => {
    if (option.value !== undefined && option.label !== undefined) {
      valueToLabelMap[option.value] = option.label;
    }
  });
  // 获取对应的label
  const labelArray = valueArray.map(value => {
    return valueToLabelMap[value] || value; // 如果找不到对应label,就返回原值
  });
  // 返回逗号分隔的label字符串
  return labelArray.join(",");
}
export function donatebaseinfoEdit(data) {
  updateDonatebaseinfo(data);
}
src/views/business/GetWitness/GetWitnessInfo.vue
@@ -203,13 +203,9 @@
      <div slot="header" class="clearfix">
        <span class="detail-title">器官获取记录</span>
        <div style="float: right;">
          <!-- <el-tag
            :type="form.witnessState === 'completed' ? 'success' : 'warning'"
          >
            {{ form.witnessState === "completed" ? "已完成" : "进行中" }}
          </el-tag> -->
          <dict-tag
            :options="dict.type.sys_user_sex"
            :options="dict.type.Obtain_status"
            :value="form.witnessState"
          />
        </div>
src/views/business/OrganUtilization/OrganUtilizationInfo.vue
@@ -13,7 +13,6 @@
          <el-button
            type="success"
            @click="handleComplete"
            :disabled="form.recordstate === 'completed'"
            :loading="confirmLoading"
          >
            完成利用
@@ -36,9 +35,13 @@
            </el-form-item>
          </el-col>
          <el-col :span="18">
            <el-form-item align="left" label="接收单位" prop="receivingunit">
            <el-form-item
              align="left"
              label="接收单位"
              prop="receivingunitname"
            >
              <el-input
                v-model="form.receivingunit"
                v-model="form.receivingunitname"
                placeholder="请输入接收单位"
                :disabled="form.isbodydonation !== '1'"
              />
@@ -78,7 +81,6 @@
                type="datetime"
                value-format="yyyy-MM-dd HH:mm:ss"
                style="width: 100%"
                :disabled="form.recordstate === 'completed'"
              />
            </el-form-item>
          </el-col>
@@ -87,7 +89,7 @@
        <el-row :gutter="20">
          <el-col :span="12">
            <el-form-item label="登记人" prop="createBy">
              <el-input v-model="form.createBy" readonly />
              <el-input v-model="form.createBy" />
            </el-form-item>
          </el-col>
          <el-col :span="12">
@@ -97,7 +99,6 @@
                type="datetime"
                value-format="yyyy-MM-dd HH:mm:ss"
                style="width: 100%"
                readonly
              />
            </el-form-item>
          </el-col>
@@ -110,9 +111,10 @@
      <div slot="header" class="clearfix">
        <span class="detail-title">器官利用记录</span>
        <div style="float: right;">
          <el-tag :type="getStatusTagType(form.recordstate)">
            {{ getStatusText(form.recordstate) }}
          </el-tag>
        <dict-tag
            :options="dict.type.utilize_statue"
            :value="form.completeState"
          />
        </div>
      </div>
@@ -133,7 +135,6 @@
                  v-for="dict in dict.type.sys_Organ || []"
                  :key="dict.value"
                  :label="dict.value"
                  :disabled="form.recordstate === 'completed'"
                >
                  {{ dict.label }}
                </el-checkbox>
@@ -194,7 +195,6 @@
                                <el-input
                                  v-model="scope.row.name"
                                  placeholder="请输入受者姓名"
                                  :disabled="form.recordstate === 'completed'"
                                />
                              </el-form-item>
                            </el-col>
@@ -206,7 +206,6 @@
                                  value-format="yyyy-MM-dd"
                                  placeholder="选择出生日期"
                                  style="width: 100%"
                                  :disabled="form.recordstate === 'completed'"
                                />
                              </el-form-item>
                            </el-col>
@@ -216,10 +215,9 @@
                                  v-model="scope.row.sex"
                                  placeholder="请选择性别"
                                  style="width: 100%"
                                  :disabled="form.recordstate === 'completed'"
                                >
                                  <el-option label="男" value="0" />
                                  <el-option label="女" value="1" />
                                  <el-option label="男" :value="0" />
                                  <el-option label="女" :value="1" />
                                </el-select>
                              </el-form-item>
                            </el-col>
@@ -231,7 +229,6 @@
                                <el-input
                                  v-model="scope.row.age"
                                  placeholder="年龄"
                                  :disabled="form.recordstate === 'completed'"
                                />
                              </el-form-item>
                            </el-col>
@@ -241,12 +238,11 @@
                                  v-model="scope.row.idcardtype"
                                  placeholder="请选择证件类型"
                                  style="width: 100%"
                                  :disabled="form.recordstate === 'completed'"
                                >
                                  <el-option label="身份证" value="1" />
                                  <el-option label="护照" value="2" />
                                  <el-option label="军官证" value="3" />
                                  <el-option label="其他" value="4" />
                                  <el-option label="身份证" :value="1" />
                                  <el-option label="护照" :value="2" />
                                  <el-option label="军官证" :value="3" />
                                  <el-option label="其他" :value="4" />
                                </el-select>
                              </el-form-item>
                            </el-col>
@@ -255,7 +251,6 @@
                                <el-input
                                  v-model="scope.row.idcardno"
                                  placeholder="证件号码"
                                  :disabled="form.recordstate === 'completed'"
                                />
                              </el-form-item>
                            </el-col>
@@ -271,7 +266,6 @@
                                <el-input
                                  v-model="scope.row.hospitalname"
                                  placeholder="请输入移植中心名称"
                                  :disabled="form.recordstate === 'completed'"
                                />
                              </el-form-item>
                            </el-col>
@@ -280,7 +274,6 @@
                                <el-input
                                  v-model="scope.row.phone"
                                  placeholder="联系电话"
                                  :disabled="form.recordstate === 'completed'"
                                />
                              </el-form-item>
                            </el-col>
@@ -294,7 +287,6 @@
                                  :rows="2"
                                  v-model="scope.row.residenceaddress"
                                  placeholder="请输入详细地址"
                                  :disabled="form.recordstate === 'completed'"
                                />
                              </el-form-item>
                            </el-col>
@@ -313,10 +305,9 @@
                                <el-date-picker
                                  v-model="scope.row.transplanttime"
                                  type="datetime"
                                  value-format="YYYY-MM-DD HH:mm:ss"
                                  value-format="yyyy-MM-dd HH:mm:ss"
                                  placeholder="选择移植日期"
                                  style="width: 100%"
                                  :disabled="form.recordstate === 'completed'"
                                />
                              </el-form-item>
                            </el-col>
@@ -325,7 +316,6 @@
                                <el-input
                                  v-model="scope.row.transplantdoct"
                                  placeholder="请输入移植医生"
                                  :disabled="form.recordstate === 'completed'"
                                />
                              </el-form-item>
                            </el-col>
@@ -346,7 +336,6 @@
                                  :rows="3"
                                  v-model="scope.row.abandonreason"
                                  placeholder="请输入未移植原因"
                                  :disabled="form.recordstate === 'completed'"
                                />
                              </el-form-item>
                            </el-col>
@@ -438,7 +427,7 @@
                      style="width: 100%"
                      v-model="scope.row.transplanttime"
                      type="datetime"
                      value-format="YYYY-MM-DD HH:mm:ss"
                      value-format="yyyy-MM-dd HH:mm:ss"
                      placeholder="选择移植时间"
                    />
                  </template>
@@ -459,11 +448,7 @@
                <el-table-column label="受者姓名" align="center" prop="name">
                  <template slot-scope="scope">
                    <el-input
                      v-model="scope.row.name"
                      placeholder="受者姓名"
                      :disabled="form.recordstate === 'completed'"
                    />
                    <el-input v-model="scope.row.name" placeholder="受者姓名" />
                  </template>
                </el-table-column>
@@ -471,7 +456,7 @@
                  label="操作"
                  align="center"
                  class-name="small-padding fixed-width"
                  v-if="form.recordstate !== 'completed'"
                  v-if="form.completeState !== '3'"
                >
                  <template slot-scope="scope">
                    <el-button
@@ -697,7 +682,7 @@
    FilePreviewDialog,
    CaseBasicInfo
  },
  dicts: ["sys_BloodType", "sys_Organ", "sys_0_1"],
  dicts: ["sys_BloodType", "sys_Organ", "sys_0_1",'utilize_statue'],
  data() {
    return {
      caseId: null,
@@ -707,7 +692,7 @@
        id: undefined,
        infoid: undefined,
        inpatientno: "",
        recordstate: "pending",
        completeState: "2",
        caseNo: "",
        donorno: "",
        treatmenthospitalname: "",
@@ -728,7 +713,7 @@
        assessannex: "",
        donateorgan: "",
        isbodydonation: "0",
        receivingunit: "",
        receivingunitname: "",
        createBy: "",
        createTime: "",
        updateBy: "",
@@ -880,6 +865,9 @@
          response.data.length > 0
        ) {
          const data = response.data[0];
          if (!data.completeState || data.completeState == 1) {
            data.completeState = "2";
          }
          // 填充表单数据
          Object.assign(this.form, data);
@@ -898,12 +886,14 @@
            )
              ? data.serviceDonatecomporganList.map(record => ({
                  ...record,
                  transplanttime: record.transplanttime || "",
                  transplantstate: record.transplantstate
                    ? record.transplantstate.toString()
                    : "1"
                }))
              : [];
          }
          console.log(this.utilizationData.serviceDonatecomporganList);
          // 初始化附件
          if (this.form.assessannex) {
@@ -1170,9 +1160,9 @@
    // 获取状态标签类型
    getStatusTagType(status) {
      const typeMap = {
        completed: "success",
        processing: "warning",
        pending: "info"
        3: "success",
        2: "warning",
        1: "info"
      };
      return typeMap[status] || "info";
    },
@@ -1180,9 +1170,9 @@
    // 获取状态文本
    getStatusText(status) {
      const textMap = {
        completed: "已完成",
        processing: "进行中",
        pending: "待处理"
        3: "已完成",
        2: "进行中",
        1: "待处理"
      };
      return textMap[status] || "未知";
    },
@@ -1313,7 +1303,7 @@
      })
        .then(async () => {
          this.confirmLoading = true;
          this.form.recordstate = "completed";
          this.form.completeState = "3";
          this.form.completetime =
            this.form.completetime ||
            new Date()
@@ -1338,13 +1328,13 @@
              this.$message.error(
                "确认利用失败:" + (response.msg || "未知错误")
              );
              this.form.recordstate = "pending";
              this.form.completeState = "2";
              this.form.completetime = "";
            }
          } catch (error) {
            console.error("确认利用失败:", error);
            this.$message.error("确认利用失败");
            this.form.recordstate = "pending";
            this.form.completeState = "2";
            this.form.completetime = "";
          } finally {
            this.confirmLoading = false;
src/views/business/OrganUtilization/index.vue
@@ -10,7 +10,7 @@
      >
        <el-form-item label="住院号" prop="inpatientno">
          <el-input
            v-model="queryParams.inpatientno"
            v-model="queryParams.caseNo"
            placeholder="请输入住院号"
            clearable
            style="width: 200px"
@@ -124,9 +124,9 @@
          </template>
        </el-table-column>
        <el-table-column
          label="疾病诊断"
          label="接收单位"
          align="center"
          prop="diagnosisname"
          prop="receivingunitname"
          min-width="180"
          show-overflow-tooltip
        />
@@ -161,9 +161,10 @@
          width="100"
        >
          <template slot-scope="scope">
            <el-tag :type="getStatusTagType(scope.row.recordstate)">
              {{ getStatusText(scope.row.recordstate) }}
            </el-tag>
               <dict-tag
              :options="dict.type.utilize_statue"
              :value="scope.row.completeState"
            />
          </template>
        </el-table-column>
        <el-table-column
@@ -181,21 +182,21 @@
              @click="handleView(scope.row)"
              >详情</el-button
            >
            <el-button
            <!-- <el-button
              size="mini"
              type="text"
              icon="el-icon-edit"
              @click="handleUpdate(scope.row)"
              >修改</el-button
            >
            <el-button
            > -->
            <!-- <el-button
              size="mini"
              type="text"
              icon="el-icon-delete"
              style="color: #F56C6C"
              @click="handleDelete(scope.row)"
              >删除</el-button
            >
            > -->
          </template>
        </el-table-column>
      </el-table>
@@ -219,7 +220,7 @@
export default {
  name: "OrganUtilizationList",
  components: { Pagination },
  dicts: ["sys_user_sex", "sys_BloodType"],
  dicts: ["sys_user_sex", "sys_BloodType",'utilize_statue'],
  data() {
    return {
      // 遮罩层
@@ -281,26 +282,6 @@
      } finally {
        this.loading = false;
      }
    },
    // 获取状态标签类型
    getStatusTagType(status) {
      const typeMap = {
        completed: "success",
        processing: "warning",
        pending: "info",
        closed: "danger"
      };
      return typeMap[status] || "info";
    },
    // 获取状态文本
    getStatusText(status) {
      const textMap = {
        completed: "已完成",
        processing: "进行中",
        pending: "待处理",
        closed: "已关闭"
      };
      return textMap[status] || "未知";
    },
    // 搜索按钮操作
    handleQuery() {
src/views/business/affirm/index.vue
@@ -114,7 +114,7 @@
        <el-table-column
          label="住院号"
          align="center"
          prop="caseNo"
          prop="inpatientno"
          width="120"
        />
        <el-table-column
src/views/business/allocation/index.vue
@@ -109,18 +109,13 @@
        @selection-change="handleSelectionChange"
      >
        <el-table-column type="selection" width="55" align="center" />
        <el-table-column
        <!-- <el-table-column
          label="案例编号"
          align="center"
          prop="caseNo"
          width="120"
        />
        <el-table-column
          label="捐献者编号"
          align="center"
          prop="donorno"
          width="120"
        />
        /> -->
        <el-table-column label="姓名" align="center" prop="name" width="100" />
        <el-table-column
          label="住院号"
src/views/business/appear/caseDetail.vue
@@ -95,9 +95,11 @@
        <el-descriptions-item label="GCS评分">{{
          caseData.gcsScore || "-"
        }}</el-descriptions-item>
        <el-descriptions-item label="传染病情况">{{
          caseData.infectious || "无"
        }}</el-descriptions-item>
        <el-descriptions-item label="传染病情况"
          >{{
            getLabelsFromString(caseData.infectious, dict.type.sys_Infectious)
          }}
        </el-descriptions-item>
        <el-descriptions-item
          label="传染病其他说明"
          v-if="caseData.infectiousOther"
@@ -130,9 +132,7 @@
        <!-- <el-descriptions-item label="部门编号">{{
          caseData.deptNo || "-"
        }}</el-descriptions-item> -->
        <el-descriptions-item label="上报医院">{{
          caseData.toHospital || "-"
        }}</el-descriptions-item>
      </el-descriptions>
    </el-card>
@@ -142,14 +142,15 @@
        <span class="section-title">上报信息</span>
      </div>
      <el-descriptions :column="2" border>
         <el-descriptions-item label="上报医院">{{
          caseData.toHospital || "-"
        }}</el-descriptions-item>
        <el-descriptions-item label="报告者姓名">{{
          caseData.infoName || "-"
        }}</el-descriptions-item>
        <el-descriptions-item label="报告者编号">{{
          caseData.infoNo || "-"
        }}</el-descriptions-item>
        <el-descriptions-item label="报告者联系电话">{{
          caseData.reporterphone || "-"
          caseData.phone || "-"
        }}</el-descriptions-item>
        <el-descriptions-item label="协调员姓名">{{
          caseData.coordinatorName || "-"
@@ -423,7 +424,7 @@
      default: true
    }
  },
  dicts: ["sys_user_sex", "sys_BloodType"],
  dicts: ["sys_user_sex", "sys_BloodType",'sys_Infectious'],
  data() {
    return {
      // 预览相关
src/views/business/appear/index.vue
@@ -395,9 +395,11 @@
                  placeholder="请选择证件类型"
                  style="width: 100%"
                >
                  <el-option label="身份证" value="1" />
                  <el-option label="护照" value="2" />
                  <el-option label="军官证" value="3" />
                  <el-option
                    v-for="item in dict.type.sys_IDType"
                    :label="item.label"
                    :value="item.value"
                  />
                </el-select>
              </el-form-item>
            </el-col>
@@ -627,10 +629,18 @@
          <el-row :gutter="20">
            <el-col :span="12">
              <el-form-item label="传染病情况" prop="infectious">
                <el-input
                <el-checkbox-group v-model="editForm.infectious">
                  <el-checkbox
                    v-for="item in dict.type.sys_Infectious"
                    :label="item.value"
                    :value="item.value"
                    >{{ item.label }}</el-checkbox
                  >
                </el-checkbox-group>
                <!-- <el-input
                  v-model="editForm.infectious"
                  placeholder="请输入传染病情况"
                />
                /> -->
              </el-form-item>
            </el-col>
            <el-col :span="12">
@@ -739,24 +749,16 @@
              </el-form-item>
            </el-col>
            <el-col :span="12">
              <el-form-item label="报告者编号" prop="infoNo">
              <el-form-item label="报告者电话" prop="reporterphone">
                <el-input
                  v-model="editForm.infoNo"
                  placeholder="请输入报告者编号"
                  v-model="editForm.phone"
                  placeholder="请输入报告者联系电话"
                />
              </el-form-item>
            </el-col>
          </el-row>
          <el-row :gutter="20">
            <el-col :span="12">
              <el-form-item label="报告者电话" prop="reporterphone">
                <el-input
                  v-model="editForm.reporterphone"
                  placeholder="请输入报告者联系电话"
                />
              </el-form-item>
            </el-col>
            <el-col :span="12">
              <el-form-item label="协调员姓名" prop="coordinatorName">
                <el-input
@@ -765,23 +767,12 @@
                />
              </el-form-item>
            </el-col>
          </el-row>
          <el-row :gutter="20">
            <el-col :span="12">
              <el-form-item label="协调员编号" prop="coordinatorNo">
                <el-input
                  v-model="editForm.coordinatorNo"
                  placeholder="请输入协调员编号"
                />
              </el-form-item>
            </el-col>
            <el-col :span="12">
              <el-form-item label="是否终止案例" prop="terminationCase">
                <el-radio-group v-model="editForm.terminationCase">
                  <el-radio label="0">进行中</el-radio>
                  <el-radio label="1">已终止</el-radio>
                </el-radio-group>
              </el-form-item>
            </el-col>
          </el-row>
@@ -961,7 +952,7 @@
    UploadAttachment,
    FilePreviewDialog
  },
  dicts: ["sys_user_sex", "sys_BloodType"],
  dicts: ["sys_user_sex", "sys_BloodType", "sys_Infectious", "sys_IDType"],
  data() {
    return {
      // 遮罩层
@@ -1019,9 +1010,7 @@
        caseNo: [
          { required: true, message: "请输入案例编号", trigger: "blur" }
        ],
        name: [
          { required: true, message: "请输入患者姓名", trigger: "blur" }
        ],
        name: [{ required: true, message: "请输入患者姓名", trigger: "blur" }],
        sex: [{ required: true, message: "请选择性别", trigger: "change" }],
        age: [{ required: true, message: "请输入年龄", trigger: "blur" }],
        diagnosisname: [
@@ -1124,7 +1113,7 @@
        // 根据转运单状态显示不同颜色
        const transport = row.serviceTransport[0];
        if (transport.transitStatus) {
         return "primary"; // 有转运信息但无状态
          return "primary"; // 有转运信息但无状态
        }
        return "primary"; // 有转运信息但无状态
      }
@@ -1364,6 +1353,12 @@
          this.currentCase = data;
          this.editForm = { ...data };
          this.editForm.idcardtype = this.editForm.idcardtype.toString();
          console.log(this.editForm.idcardtype);
          this.editForm.infectious = this.editForm.infectious
            .split(",")
            .filter(item => item.trim() !== "");
          this.editOpen = true;
          this.$nextTick(() => {
            this.$refs.editForm && this.$refs.editForm.clearValidate();
@@ -1683,6 +1678,7 @@
        this.saveLoading = true;
        const requestData = { ...this.editForm };
        requestData.infectious = requestData.infectious.join(",");
        let response;
        if (this.isEditing) {
src/views/business/assess/index.vue
@@ -123,10 +123,10 @@
        @selection-change="handleSelectionChange"
      >
        <el-table-column type="selection" width="55" align="center" />
        <el-table-column
         <el-table-column
          label="住院号"
          align="center"
          prop="caseNo"
          prop="inpatientno"
          width="120"
        />
        <el-table-column
@@ -375,19 +375,19 @@
        if (Array.isArray(response.data)) {
          // 如果返回的是数组
          this.assessmentList = response.data;
          this.total = response.data.length;
          this.total = response.total;
        } else if (response.data.rows) {
          // 如果返回的是分页数据结构
          this.assessmentList = response.data.rows;
          this.total = response.data.total;
          this.total = response.total;
        } else if (Array.isArray(response.data.list)) {
          // 如果返回的是list字段
          this.assessmentList = response.data.list;
          this.total = response.data.total || response.data.list.length;
          this.total = response.total || response.data.list.length;
        } else {
          // 其他数据结构,尝试直接使用data
          this.assessmentList = response.data;
          this.total = response.total || response.data.length;
          this.total = response.total || response.total;
        }
      } else {
        // 如果data为空,使用根级别的rows或list
src/views/business/course/index.vue
@@ -153,6 +153,7 @@
</template>
<script>
import { getDonatebaseinfoflow } from "@/api/project/donatebaseinfo";
import { getDonationProcessDetail } from "./donationProcess";
import DonorMaintenanceStage from "./components/DonorMaintenanceStage";
import MedicalAssessmentStage from "./components/MedicalAssessmentStage";
@@ -180,6 +181,7 @@
  data() {
    return {
      caseId: null,
      infoid:null,
      caseInfo: {
        id: "",
        caseNo: "",
@@ -265,7 +267,7 @@
  computed: {},
  created() {
    this.caseId = this.$route.query.id;
    console.log(this.caseId, "this.caseId");
    this.infoid = this.$route.query.id;
    if (this.caseId) {
      this.getDetail();
@@ -292,7 +294,7 @@
    async getDetail() {
      this.loading = true;
      try {
        const response = await getDonationProcessDetail(this.caseId);
        const response = await getDonatebaseinfoflow(this.caseId);
        if (response.code === 200) {
          this.caseInfo = response.data.caseInfo;
          this.processStages = response.data.processStages;
src/views/business/maintain/index.vue
@@ -113,16 +113,16 @@
        @selection-change="handleSelectionChange"
      >
        <el-table-column type="selection" width="55" align="center" />
        <el-table-column
        <!-- <el-table-column
          label="案例编号"
          align="center"
          prop="caseNo"
          width="120"
        />
        <el-table-column
          label="捐献者编号"
        /> -->
         <el-table-column
          label="住院号"
          align="center"
          prop="donorno"
          prop="inpatientno"
          width="120"
        />
        <el-table-column
@@ -166,12 +166,7 @@
          width="150"
          show-overflow-tooltip
        />
        <el-table-column
          label="住院号"
          align="center"
          prop="inpatientno"
          width="120"
        />
        <!-- <el-table-column
          label="记录状态"
          align="center"
src/views/project/donatebaseinfo/EditCaseModal.vue
@@ -26,14 +26,14 @@
                />
              </el-form-item>
            </el-col>
            <el-col :span="11">
            <!-- <el-col :span="11">
              <el-form-item label="捐献者编号" prop="donorno">
                <el-input
                  v-model="formData.donorno"
                  placeholder="请输入捐献者编号"
                />
              </el-form-item>
            </el-col>
            </el-col> -->
          </el-row>
          <el-row :gutter="20">
@@ -164,22 +164,32 @@
              </el-form-item>
            </el-col>
          </el-row>
          <el-row :gutter="20">
            <el-col :span="8">
              <el-form-item label="上报医院" prop="treatmenthospitalname">
                <el-input
                  v-model="formData.treatmenthospitalname"
                  placeholder="请输入上报医院"
                />
              </el-form-item>
            </el-col>
          </el-row>
        </el-card>
        <!-- 医疗信息部分 -->
        <el-card header="医疗信息" class="form-section">
          <el-row :gutter="20">
            <el-col :span="8">
              <el-form-item label="首诊医院" prop="treatmenthospitalno">
                <org-selecter
                  :org-type="'3'"
                  v-model="formData.treatmenthospitalno"
                  @change="handleHospitalChange"
              <el-form-item label="当前医院" prop="Reporttothehospital">
                <el-input
                  v-model="formData.Reporttothehospital"
                  placeholder="请输入上报医院"
                />
              </el-form-item>
            </el-col>
            <el-col :span="8">
              <el-form-item label="科室" prop="treatmentdeptname">
              <el-form-item label="入院科室" prop="treatmentdeptname">
                <el-input
                  v-model="formData.treatmentdeptname"
                  placeholder="请输入科室"
src/views/project/donatebaseinfo/index.vue
@@ -21,7 +21,7 @@
          </el-form-item>
        </el-col>
        <el-col :span="5">
          <el-form-item label="首诊医院" prop="treatmenthospitalname">
          <el-form-item label="上报医院" prop="treatmenthospitalname">
            <org-selecter
              ref="orgSelecter"
              :org-type="'3'"
@@ -130,7 +130,7 @@
        </template>
      </el-table-column>
      <el-table-column
        label="首诊医院"
        label="上报医院"
        align="center"
        prop="treatmenthospitalname"
      />
@@ -345,7 +345,7 @@
          { required: true, message: "请选择出生日期", trigger: "blur" }
        ],
        treatmenthospitalno: [
          { required: true, message: "请选择首诊医院", trigger: "blur" }
          { required: true, message: "请选择上报医院", trigger: "blur" }
        ],
        bloodtype: [
          { required: true, message: "请选择ABO血型", trigger: "blur" }