Merge remote-tracking branch 'origin/develop' into develop

This commit is contained in:
2026-06-17 11:43:18 +08:00
199 changed files with 2737 additions and 1950 deletions

View File

@@ -1,10 +1,12 @@
package com.healthlink.his.web.inpatientmanage.appservice; package com.healthlink.his.web.inpatientmanage.appservice;
import com.core.common.core.domain.R; import com.core.common.core.domain.R;
import com.healthlink.his.web.inpatientmanage.dto.BatchNursingRecordDto;
import com.healthlink.his.web.inpatientmanage.dto.NursingEmrTemplateDto; import com.healthlink.his.web.inpatientmanage.dto.NursingEmrTemplateDto;
import com.healthlink.his.web.inpatientmanage.dto.NursingRecordDto; import com.healthlink.his.web.inpatientmanage.dto.NursingRecordDto;
import com.healthlink.his.web.inpatientmanage.dto.NursingSearchParam; import com.healthlink.his.web.inpatientmanage.dto.NursingSearchParam;
import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletRequest;
import java.util.List; import java.util.List;
@@ -100,4 +102,13 @@ public interface INursingRecordAppService {
*/ */
R<?> updateEmrTemplate(NursingEmrTemplateDto emrTemplateDto); R<?> updateEmrTemplate(NursingEmrTemplateDto emrTemplateDto);
/**
* 批量保存护理记录单
*
* @param batchDto 批量入参
* @return 结果
*/
R<?> batchSaveRecord(BatchNursingRecordDto batchDto);
} }

View File

@@ -399,4 +399,77 @@ public class NursingRecordAppServiceImpl implements INursingRecordAppService {
return emrTemplateService.updateById(emrTemplate) ? R.ok() : R.fail(); return emrTemplateService.updateById(emrTemplate) ? R.ok() : R.fail();
} }
/**
* 批量保存/更新/删除护理记录
*
* @param batchDto 批量提交数据包
* @return 结果
*/
@Override
@Transactional(rollbackFor = Exception.class)
public R<?> batchSaveRecord(BatchNursingRecordDto batchDto) {
Long recorderId = SecurityUtils.getLoginUser().getPractitionerId();
java.util.Map<String, Long> tempIdToRealIdMap = new java.util.HashMap<>();
// 1. 处理待删除记录 (物理删除记录及体征表对应数据)
if (batchDto.getDeleted() != null && !batchDto.getDeleted().isEmpty()) {
this.delRecord(batchDto.getDeleted());
}
// 2. 处理待插入新建记录
if (batchDto.getInserted() != null && !batchDto.getInserted().isEmpty()) {
for (NursingRecordDto dto : batchDto.getInserted()) {
Emr emr = new Emr();
emr.setEncounterId(dto.getEncounterId())
.setPatientId(dto.getPatientId())
.setRecordId(recorderId)
.setRecordTime(dto.getRecordingTime())
.setClassEnum(1)
.setContextJson(dto.getContextJson());
emrService.save(emr);
// 保存生成的真实主键,用于返回给前端重置
if (dto.getTempId() != null && !dto.getTempId().isEmpty()) {
tempIdToRealIdMap.put(dto.getTempId(), emr.getId());
}
// 判断是否联动更新体征表
if (Boolean.TRUE.equals(dto.getVitalSignsSyncFlag())) {
this.vitalSigns(dto, recorderId);
}
}
}
// 3. 处理待更新已有记录
if (batchDto.getUpdated() != null && !batchDto.getUpdated().isEmpty()) {
for (NursingRecordDto dto : batchDto.getUpdated()) {
Emr emr = new Emr();
emr.setId(dto.getRecordId())
.setEncounterId(dto.getEncounterId())
.setPatientId(dto.getPatientId())
.setRecordId(recorderId)
.setRecordTime(dto.getRecordingTime())
.setClassEnum(1)
.setContextJson(dto.getContextJson());
emrService.updateById(emr);
// 联动体征处理
if (Boolean.TRUE.equals(dto.getVitalSignsSyncFlag())) {
this.vitalSigns(dto, recorderId);
} else {
this.deleteVitalSigns(dto);
}
}
}
// 组装返回映射表
java.util.Map<String, Object> resultMap = new java.util.HashMap<>();
resultMap.put("tempIdToRealIdMap", tempIdToRealIdMap);
return R.ok(resultMap, "批量护理记录保存成功!");
}
} }

View File

@@ -2,9 +2,11 @@ package com.healthlink.his.web.inpatientmanage.controller;
import com.core.common.core.domain.R; import com.core.common.core.domain.R;
import com.healthlink.his.web.inpatientmanage.appservice.INursingRecordAppService; import com.healthlink.his.web.inpatientmanage.appservice.INursingRecordAppService;
import com.healthlink.his.web.inpatientmanage.dto.BatchNursingRecordDto;
import com.healthlink.his.web.inpatientmanage.dto.NursingEmrTemplateDto; import com.healthlink.his.web.inpatientmanage.dto.NursingEmrTemplateDto;
import com.healthlink.his.web.inpatientmanage.dto.NursingRecordDto; import com.healthlink.his.web.inpatientmanage.dto.NursingRecordDto;
import com.healthlink.his.web.inpatientmanage.dto.NursingSearchParam; import com.healthlink.his.web.inpatientmanage.dto.NursingSearchParam;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -144,4 +146,16 @@ public class NursingRecordController {
return nursingRecordAppService.updateEmrTemplate(emrTemplateDto); return nursingRecordAppService.updateEmrTemplate(emrTemplateDto);
} }
/**
* 批量保存/更新/删除护理记录
*
* @param batchDto 批量提交数据包
* @return 结果
*/
@PostMapping("/batch-save")
public R<?> batchSaveRecord(@Validated @RequestBody BatchNursingRecordDto batchDto) {
return nursingRecordAppService.batchSaveRecord(batchDto);
}
} }

View File

@@ -0,0 +1,29 @@
/*
* Copyright ©2023 CJB-CNIT Team. All rights reserved
*/
package com.healthlink.his.web.inpatientmanage.dto;
import lombok.Data;
import lombok.experimental.Accessors;
import java.util.List;
/**
* 护理记录批量提交包装 DTO
*
* @author Antigravity AI
* @date 2026-06-16
*/
@Data
@Accessors(chain = true)
public class BatchNursingRecordDto {
/** 待保存/新建的护理记录列表 */
private List<NursingRecordDto> inserted;
/** 待更新的护理记录列表 */
private List<NursingRecordDto> updated;
/** 待删除的护理记录列表 */
private List<NursingRecordDto> deleted;
}

View File

@@ -50,4 +50,8 @@ public class NursingRecordDto {
/** 是否同步到体温单 */ /** 是否同步到体温单 */
private Boolean vitalSignsSyncFlag; private Boolean vitalSignsSyncFlag;
/** 前端临时ID映射标识 */
private String tempId;
} }

View File

@@ -4,6 +4,7 @@ import { fileURLToPath } from "node:url";
import globals from "globals"; import globals from "globals";
import pluginVue from "eslint-plugin-vue"; import pluginVue from "eslint-plugin-vue";
import parserVue from "vue-eslint-parser"; import parserVue from "vue-eslint-parser";
import parserTs from "@typescript-eslint/parser";
import importPlugin, { createNodeResolver } from "eslint-plugin-import-x"; import importPlugin, { createNodeResolver } from "eslint-plugin-import-x";
const __dirname = path.dirname(fileURLToPath(import.meta.url)); const __dirname = path.dirname(fileURLToPath(import.meta.url));
@@ -20,7 +21,7 @@ export default [
}, },
...pluginVue.configs["flat/recommended"], ...pluginVue.configs["flat/recommended"],
{ {
languageOptions: { languageOptions: {
globals: { globals: {
@@ -30,6 +31,9 @@ export default [
parser: parserVue, parser: parserVue,
ecmaVersion: "latest", ecmaVersion: "latest",
sourceType: "module", sourceType: "module",
parserOptions: {
parser: parserTs,
},
}, },
plugins: { plugins: {

View File

@@ -32,6 +32,7 @@
"@vue/shared": "^3.5.25", "@vue/shared": "^3.5.25",
"@vueup/vue-quill": "^1.5.1", "@vueup/vue-quill": "^1.5.1",
"@vueuse/core": "^14.3.0", "@vueuse/core": "^14.3.0",
"@vxe-ui/plugin-render-element": "^4.4.0",
"axios": "^1.16.1", "axios": "^1.16.1",
"china-division": "^2.7.0", "china-division": "^2.7.0",
"cornerstone-core": "^2.6.1", "cornerstone-core": "^2.6.1",
@@ -72,6 +73,7 @@
"devDependencies": { "devDependencies": {
"@playwright/test": "^1.60.0", "@playwright/test": "^1.60.0",
"@types/node": "^25.0.1", "@types/node": "^25.0.1",
"@typescript-eslint/parser": "^8.61.1",
"@vitejs/plugin-vue": "^5.2.4", "@vitejs/plugin-vue": "^5.2.4",
"@vue/test-utils": "^2.4.6", "@vue/test-utils": "^2.4.6",
"eslint": "^10.4.1", "eslint": "^10.4.1",

View File

@@ -44,7 +44,7 @@
:row-config="{ keyField: '_etKey' }" :row-config="{ keyField: '_etKey' }"
:scroll-x="{ enabled: true }" :scroll-x="{ enabled: true }"
:scroll-y="{ enabled: true }" :scroll-y="{ enabled: true }"
:show-overflow="true" show-overflow="title"
v-bind="$attrs" v-bind="$attrs"
@checkbox-change="handleSelectionChange" @checkbox-change="handleSelectionChange"
@checkbox-all="handleSelectionChange" @checkbox-all="handleSelectionChange"

View File

@@ -2,6 +2,7 @@ import {createApp, nextTick} from 'vue';
import VxeUIAll from 'vxe-table'; import VxeUIAll from 'vxe-table';
import 'vxe-table/lib/style.css'; import 'vxe-table/lib/style.css';
import { VxeTooltip } from 'vxe-pc-ui';
import Cookies from 'js-cookie'; import Cookies from 'js-cookie';
// 导入 hiprint 并挂载到全局 window 对象 // 导入 hiprint 并挂载到全局 window 对象
@@ -121,6 +122,11 @@ app.use(ElementPlus, {
// 支持 large̢̮̣ââ¬Å¡Ã¬Ã‚Ádefault̢̮̣ââ¬Å¡Ã¬Ã‚Ásmall // 支持 large̢̮̣ââ¬Å¡Ã¬Ã‚Ádefault̢̮̣ââ¬Å¡Ã¬Ã‚Ásmall
size: Cookies.get('size') || 'default', size: Cookies.get('size') || 'default',
}); });
// Register vxe-tooltip component required by vxe-table v4 for show-overflow="title"
VxeUIAll.VxeUI.component(VxeTooltip);
// Register element-plus render plugin for declarative editRender (ElSelect, ElInput etc.)
import VXETablePluginRenderElement from '@vxe-ui/plugin-render-element';
VxeUIAll.VxeUI.use(VXETablePluginRenderElement);
app.use(VxeUIAll); app.use(VxeUIAll);
// 导入公告帮助工具 // 导入公告帮助工具

View File

@@ -84,7 +84,7 @@
title="卫生机构" title="卫生机构"
width="200" width="200"
align="center" align="center"
show-overflow show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<!-- ==忽略类型匹配string的"3"和number的3就能匹配上 --> <!-- ==忽略类型匹配string的"3"和number的3就能匹配上 -->
@@ -96,21 +96,21 @@
title="诊室名称" title="诊室名称"
width="160" width="160"
align="center" align="center"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
field="department" field="department"
title="科室名称" title="科室名称"
width="160" width="160"
align="center" align="center"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
field="building" field="building"
title="诊室楼号" title="诊室楼号"
width="120" width="120"
align="center" align="center"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
field="floor" field="floor"
@@ -141,7 +141,7 @@
title="备注" title="备注"
min-width="100" min-width="100"
align="center" align="center"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
field="void" field="void"
@@ -159,7 +159,7 @@
title="操作人" title="操作人"
width="120" width="120"
align="center" align="center"
show-overflow show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
{{ scope.row.updateBy || scope.row.createBy || '系统默认' }} {{ scope.row.updateBy || scope.row.createBy || '系统默认' }}

View File

@@ -101,14 +101,14 @@
title="所属机构" title="所属机构"
min-width="150" min-width="150"
align="center" align="center"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
field="department" field="department"
title="科室名称" title="科室名称"
min-width="150" min-width="150"
align="center" align="center"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
field="morningStart" field="morningStart"
@@ -161,7 +161,7 @@
title="操作人" title="操作人"
min-width="100" min-width="100"
align="center" align="center"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
width="120" width="120"

View File

@@ -19,7 +19,7 @@
<vxe-table :data="tableData" border height="calc(100vh - 320px)" v-loading="loading"> <vxe-table :data="tableData" border height="calc(100vh - 320px)" v-loading="loading">
<vxe-column type="seq" title="序号" width="60" /> <vxe-column type="seq" title="序号" width="60" />
<vxe-column field="conditionCode" title="编码" width="120" /> <vxe-column field="conditionCode" title="编码" width="120" />
<vxe-column field="name" title="诊断名称" min-width="200" show-overflow /> <vxe-column field="name" title="诊断名称" min-width="200" show-overflow="title" />
<vxe-column field="typeCode" title="类型" width="100" /> <vxe-column field="typeCode" title="类型" width="100" />
<vxe-column field="status" title="状态" width="80" align="center"> <vxe-column field="status" title="状态" width="80" align="center">
<template #default="{ row }"> <template #default="{ row }">

View File

@@ -19,7 +19,7 @@
<vxe-table :data="tableData" border height="calc(100vh - 320px)" v-loading="loading"> <vxe-table :data="tableData" border height="calc(100vh - 320px)" v-loading="loading">
<vxe-column type="seq" title="序号" width="60" /> <vxe-column type="seq" title="序号" width="60" />
<vxe-column field="conditionCode" title="编码" width="120" /> <vxe-column field="conditionCode" title="编码" width="120" />
<vxe-column field="name" title="项目名称" min-width="200" show-overflow /> <vxe-column field="name" title="项目名称" min-width="200" show-overflow="title" />
<vxe-column field="typeCode" title="类型" width="100" /> <vxe-column field="typeCode" title="类型" width="100" />
<vxe-column field="status" title="状态" width="80" align="center"> <vxe-column field="status" title="状态" width="80" align="center">
<template #default="{ row }"> <template #default="{ row }">

View File

@@ -73,7 +73,7 @@
title="诊疗目录" title="诊疗目录"
width="150" width="150"
align="center" align="center"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-select <el-select
@@ -95,7 +95,7 @@
<vxe-column <vxe-column
title="项目名称" title="项目名称"
align="center" align="center"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-select <el-select
@@ -123,7 +123,7 @@
title="开始时间" title="开始时间"
align="center" align="center"
field="startTime" field="startTime"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-time-picker <el-time-picker
@@ -140,7 +140,7 @@
title="结束时间" title="结束时间"
align="center" align="center"
field="endTime" field="endTime"
show-overflow show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-time-picker <el-time-picker

View File

@@ -191,19 +191,19 @@
title="科室位置" title="科室位置"
align="center" align="center"
field="location" field="location"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
title="科室简介" title="科室简介"
align="center" align="center"
field="intro" field="intro"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
title="备注" title="备注"
align="center" align="center"
field="remark" field="remark"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
title="状态" title="状态"

View File

@@ -57,7 +57,7 @@
align="center" align="center"
field="name" field="name"
width="300" width="300"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<div style="display: flex; align-items: center; justify-content: center"> <div style="display: flex; align-items: center; justify-content: center">
@@ -84,7 +84,7 @@
title="项目类型" title="项目类型"
align="center" align="center"
field="itemCode" field="itemCode"
:show-overflow="true" show-overflow="title"
width="300" width="300"
> >
<template #default="scope"> <template #default="scope">
@@ -113,7 +113,7 @@
title="药品类别" title="药品类别"
align="center" align="center"
field="pyStr" field="pyStr"
:show-overflow="true" show-overflow="title"
width="300" width="300"
> >
<template #default="scope"> <template #default="scope">
@@ -150,7 +150,7 @@
title="开始时间" title="开始时间"
align="center" align="center"
field="wbStr" field="wbStr"
:show-overflow="true" show-overflow="title"
width="300" width="300"
> >
<template #default="scope"> <template #default="scope">
@@ -167,7 +167,7 @@
title="结束时间" title="结束时间"
align="center" align="center"
field="categoryCode_dictText" field="categoryCode_dictText"
:show-overflow="true" show-overflow="title"
width="300" width="300"
> >
<template #default="scope"> <template #default="scope">
@@ -180,7 +180,7 @@
</template> </template>
</vxe-column> </vxe-column>
<!-- <vxe-column title="备注" align="center" key="typeEnum_enumText" field="typeEnum_enumText" <!-- <vxe-column title="备注" align="center" key="typeEnum_enumText" field="typeEnum_enumText"
:show-overflow="true" width="300"> show-overflow="title" width="300">
<template #default="scope"> <template #default="scope">
<el-input v-model="scope.row.detailJson" placeholder="" /> <el-input v-model="scope.row.detailJson" placeholder="" />
</template> </template>

View File

@@ -118,21 +118,21 @@
title="名称" title="名称"
align="center" align="center"
field="name" field="name"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="pyStr" key="pyStr"
title="拼音助记码" title="拼音助记码"
align="center" align="center"
field="pyStr" field="pyStr"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="typeEnum_enumText" key="typeEnum_enumText"
title="类型 " title="类型 "
align="center" align="center"
field="typeEnum_enumText" field="typeEnum_enumText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="address" key="address"

View File

@@ -19,7 +19,7 @@
<vxe-table :data="tableData" border height="calc(100vh - 320px)" v-loading="loading"> <vxe-table :data="tableData" border height="calc(100vh - 320px)" v-loading="loading">
<vxe-column type="seq" title="序号" width="60" /> <vxe-column type="seq" title="序号" width="60" />
<vxe-column field="conditionCode" title="编码" width="120" /> <vxe-column field="conditionCode" title="编码" width="120" />
<vxe-column field="name" title="处方名称" min-width="200" show-overflow /> <vxe-column field="name" title="处方名称" min-width="200" show-overflow="title" />
<vxe-column field="typeCode" title="类型" width="100" /> <vxe-column field="typeCode" title="类型" width="100" />
<vxe-column field="status" title="状态" width="80" align="center"> <vxe-column field="status" title="状态" width="80" align="center">
<template #default="{ row }"> <template #default="{ row }">

View File

@@ -132,21 +132,21 @@
title="提供部门" title="提供部门"
align="center" align="center"
field="offeredOrgId_dictText" field="offeredOrgId_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="categoryCode_dictText" key="categoryCode_dictText"
title="服务分类" title="服务分类"
align="center" align="center"
field="categoryCode_dictText" field="categoryCode_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="typeCode_dictText" key="typeCode_dictText"
title="服务类型 " title="服务类型 "
align="center" align="center"
field="typeCode_dictText" field="typeCode_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="specialtyCode_dictText" key="specialtyCode_dictText"

View File

@@ -170,7 +170,7 @@
title="编码" title="编码"
align="center" align="center"
field="busNo" field="busNo"
:show-overflow="true" show-overflow="title"
width="150" width="150"
/> />
<vxe-column <vxe-column
@@ -178,7 +178,7 @@
title="器材名称" title="器材名称"
align="center" align="center"
field="name" field="name"
:show-overflow="true" show-overflow="title"
width="100" width="100"
/> />
<vxe-column <vxe-column
@@ -187,21 +187,21 @@
align="center" align="center"
field="size" field="size"
width="100" width="100"
:show-overflow="true" show-overflow="title"
/> />
<!-- <vxe-column <!-- <vxe-column
title="拼音" title="拼音"
align="center" align="center"
key="pyStr" key="pyStr"
field="pyStr" field="pyStr"
:show-overflow="true" show-overflow="title"
/> --> /> -->
<vxe-column <vxe-column
key="categoryCode_dictText" key="categoryCode_dictText"
title="器材分类" title="器材分类"
align="center" align="center"
field="categoryCode_dictText" field="categoryCode_dictText"
:show-overflow="true" show-overflow="title"
width="100" width="100"
/> />
<!-- <vxe-column <!-- <vxe-column
@@ -209,7 +209,7 @@
align="center" align="center"
key="typeCode_dictText" key="typeCode_dictText"
field="typeCode_dictText" field="typeCode_dictText"
:show-overflow="true" show-overflow="title"
width="50" width="50"
/> --> /> -->
<vxe-column <vxe-column
@@ -217,7 +217,7 @@
title="包装单位" title="包装单位"
align="center" align="center"
field="unitCode_dictText" field="unitCode_dictText"
:show-overflow="true" show-overflow="title"
width="100" width="100"
/> />
<vxe-column <vxe-column
@@ -225,7 +225,7 @@
title="拆零比" title="拆零比"
align="center" align="center"
field="partPercent" field="partPercent"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
{{ {{
@@ -241,7 +241,7 @@
title="最小使用单位" title="最小使用单位"
align="center" align="center"
field="minUnitCode_dictText" field="minUnitCode_dictText"
:show-overflow="true" show-overflow="title"
width="100" width="100"
/> />
<!-- <vxe-column <!-- <vxe-column
@@ -249,21 +249,21 @@
align="center" align="center"
key="orgId_dictText" key="orgId_dictText"
field="orgId_dictText" field="orgId_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="所在位置" title="所在位置"
align="center" align="center"
key="locationId_dictText" key="locationId_dictText"
field="locationId_dictText" field="locationId_dictText"
:show-overflow="true" show-overflow="title"
/> --> /> -->
<!-- <vxe-column <!-- <vxe-column
title="产品型号" title="产品型号"
align="center" align="center"
key="modelNumber" key="modelNumber"
field="modelNumber" field="modelNumber"
:show-overflow="true" show-overflow="title"
/> --> /> -->
<vxe-column <vxe-column
@@ -271,7 +271,7 @@
title="销售单位" title="销售单位"
align="center" align="center"
field="salesUnitCode_dictText" field="salesUnitCode_dictText"
:show-overflow="true" show-overflow="title"
width="100" width="100"
/> />
<!-- <vxe-column <!-- <vxe-column
@@ -279,14 +279,14 @@
align="center" align="center"
key="approvalNumber" key="approvalNumber"
field="approvalNumber" field="approvalNumber"
:show-overflow="true" show-overflow="title"
/> --> /> -->
<!-- <vxe-column <!-- <vxe-column
title="医保标记" title="医保标记"
align="center" align="center"
key="ybFlag_enumText" key="ybFlag_enumText"
field="ybFlag_enumText" field="ybFlag_enumText"
:show-overflow="true" show-overflow="title"
width="110" width="110"
/> --> /> -->
<vxe-column <vxe-column
@@ -294,7 +294,7 @@
title="医保编码" title="医保编码"
align="center" align="center"
field="ybNo" field="ybNo"
:show-overflow="true" show-overflow="title"
width="110" width="110"
/> />
<vxe-column <vxe-column
@@ -302,7 +302,7 @@
title="医药机构目录编码" title="医药机构目录编码"
align="center" align="center"
field="ybOrgNo" field="ybOrgNo"
:show-overflow="true" show-overflow="title"
width="130" width="130"
/> />
<!-- <vxe-column <!-- <vxe-column
@@ -310,7 +310,7 @@
align="center" align="center"
key="ybMatchFlag_enumText" key="ybMatchFlag_enumText"
field="ybMatchFlag_enumText" field="ybMatchFlag_enumText"
:show-overflow="true" show-overflow="title"
width="105" width="105"
/> --> /> -->
<vxe-column <vxe-column
@@ -318,7 +318,7 @@
title="状态" title="状态"
align="center" align="center"
field="statusEnum_enumText" field="statusEnum_enumText"
:show-overflow="true" show-overflow="title"
width="90" width="90"
/> />
<!-- <vxe-column <!-- <vxe-column
@@ -326,7 +326,7 @@
align="center" align="center"
key="manufacturerId" key="manufacturerId"
field="manufacturerId" field="manufacturerId"
:show-overflow="true" show-overflow="title"
width="90" width="90"
/> --> /> -->
<vxe-column <vxe-column
@@ -334,7 +334,7 @@
title="生产厂家" title="生产厂家"
align="center" align="center"
field="manufacturerText" field="manufacturerText"
:show-overflow="true" show-overflow="title"
width="200" width="200"
/> />
<!-- <vxe-column <!-- <vxe-column
@@ -342,7 +342,7 @@
align="center" align="center"
key="supplyId_dictText" key="supplyId_dictText"
field="supplyId_dictText" field="supplyId_dictText"
:show-overflow="true" show-overflow="title"
width="110" width="110"
/> />
<vxe-column <vxe-column
@@ -350,14 +350,14 @@
align="center" align="center"
key="description" key="description"
field="description" field="description"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="适用范围" title="适用范围"
align="center" align="center"
key="jurisdiction" key="jurisdiction"
field="jurisdiction" field="jurisdiction"
:show-overflow="true" show-overflow="title"
width="120" width="120"
/> />
<vxe-column <vxe-column
@@ -365,7 +365,7 @@
align="center" align="center"
key="version" key="version"
field="version" field="version"
:show-overflow="true" show-overflow="title"
width="120" width="120"
/> />
<vxe-column <vxe-column
@@ -373,14 +373,14 @@
align="center" align="center"
key="substanceText" key="substanceText"
field="substanceText" field="substanceText"
:show-overflow="true" show-overflow="title"
/> --> /> -->
<!-- <vxe-column <!-- <vxe-column
title="过敏标记" title="过敏标记"
align="center" align="center"
key="allergenFlag_enumText" key="allergenFlag_enumText"
field="allergenFlag_enumText" field="allergenFlag_enumText"
:show-overflow="true" show-overflow="title"
width="90" width="90"
/> --> /> -->
<vxe-column <vxe-column
@@ -388,7 +388,7 @@
title="售价" title="售价"
align="center" align="center"
field="retailPrice" field="retailPrice"
:show-overflow="true" show-overflow="title"
width="90" width="90"
/> />
<vxe-column <vxe-column
@@ -396,7 +396,7 @@
title="财务类别" title="财务类别"
align="center" align="center"
field="itemTypeCode_dictText" field="itemTypeCode_dictText"
:show-overflow="true" show-overflow="title"
width="90" width="90"
/> />
<vxe-column <vxe-column
@@ -404,7 +404,7 @@
title="高值器材标志" title="高值器材标志"
align="center" align="center"
field="hvcmFlag_enumText" field="hvcmFlag_enumText"
:show-overflow="true" show-overflow="title"
width="120" width="120"
/> />
<!-- <vxe-column <!-- <vxe-column
@@ -412,7 +412,7 @@
align="center" align="center"
key="ybType_dictText" key="ybType_dictText"
field="ybType_dictText" field="ybType_dictText"
:show-overflow="true" show-overflow="title"
width="90" width="90"
/> --> /> -->
<vxe-column <vxe-column

View File

@@ -236,7 +236,7 @@
title="编码" title="编码"
align="center" align="center"
field="busNo" field="busNo"
:show-overflow="true" show-overflow="title"
width="200" width="200"
/> />
<vxe-column <vxe-column
@@ -244,7 +244,7 @@
title="项目名称" title="项目名称"
align="center" align="center"
field="name" field="name"
:show-overflow="true" show-overflow="title"
width="200" width="200"
/> />
@@ -253,7 +253,7 @@
title="目录类别" title="目录类别"
align="center" align="center"
field="categoryCode_dictText" field="categoryCode_dictText"
:show-overflow="true" show-overflow="title"
width="100" width="100"
/> />
<vxe-column <vxe-column
@@ -261,7 +261,7 @@
title="售价" title="售价"
align="center" align="center"
field="retailPrice" field="retailPrice"
:show-overflow="true" show-overflow="title"
width="100" width="100"
/> />
<vxe-column <vxe-column
@@ -269,7 +269,7 @@
title="财务类别" title="财务类别"
align="center" align="center"
field="itemTypeCode_dictText" field="itemTypeCode_dictText"
:show-overflow="true" show-overflow="title"
width="100" width="100"
/> />
<vxe-column <vxe-column
@@ -277,28 +277,28 @@
title="使用单位" title="使用单位"
align="center" align="center"
field="permittedUnitCode_dictText" field="permittedUnitCode_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="ybNo" key="ybNo"
title="医保编码" title="医保编码"
align="center" align="center"
field="ybNo" field="ybNo"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="statusEnum_enumText" key="statusEnum_enumText"
title="状态" title="状态"
align="center" align="center"
field="statusEnum_enumText" field="statusEnum_enumText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="pricingFlag_enumText" key="pricingFlag_enumText"
title="划价标记" title="划价标记"
align="center" align="center"
field="pricingFlag_enumText" field="pricingFlag_enumText"
:show-overflow="true" show-overflow="title"
width="100" width="100"
> >
<template #default="scope"> <template #default="scope">

View File

@@ -167,42 +167,42 @@
title="名称" title="名称"
align="center" align="center"
field="name" field="name"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="sourceEnum_enumText" key="sourceEnum_enumText"
title="疾病分类" title="疾病分类"
align="center" align="center"
field="sourceEnum_enumText" field="sourceEnum_enumText"
:show-overflow="true" show-overflow="title"
/> />
<!-- <vxe-column <!-- <vxe-column
title="拼音助记码" title="拼音助记码"
align="center" align="center"
key="pyStr" key="pyStr"
field="pyStr" field="pyStr"
:show-overflow="true" show-overflow="title"
/> --> /> -->
<vxe-column <vxe-column
key="typeCode_dictText" key="typeCode_dictText"
title="类型" title="类型"
align="center" align="center"
field="typeCode_dictText" field="typeCode_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="reportTypeCode_dictText" key="reportTypeCode_dictText"
title="报卡类型" title="报卡类型"
align="center" align="center"
field="reportTypeCode_dictText" field="reportTypeCode_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="ybNo" key="ybNo"
title="医保编码 " title="医保编码 "
align="center" align="center"
field="ybNo" field="ybNo"
:show-overflow="true" show-overflow="title"
/> />
<!-- <vxe-column <!-- <vxe-column
title="医保标记" title="医保标记"

View File

@@ -218,7 +218,7 @@
title="药品编号" title="药品编号"
align="center" align="center"
field="busNo" field="busNo"
:show-overflow="true" show-overflow="title"
min-width="90" min-width="90"
width="200px" width="200px"
/> />
@@ -227,7 +227,7 @@
title="药品名称" title="药品名称"
align="center" align="center"
field="name" field="name"
:show-overflow="true" show-overflow="title"
min-width="110" min-width="110"
width="200px" width="200px"
sortable sortable
@@ -238,7 +238,7 @@
title="规格" title="规格"
align="center" align="center"
field="totalVolume" field="totalVolume"
:show-overflow="true" show-overflow="title"
min-width="200px" min-width="200px"
width="200px" width="200px"
/> />
@@ -247,7 +247,7 @@
title="药品状态" title="药品状态"
align="center" align="center"
field="statusEnum_enumText" field="statusEnum_enumText"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-tag <el-tag
@@ -271,7 +271,7 @@
title="药品分类" title="药品分类"
align="center" align="center"
field="categoryCode_dictText" field="categoryCode_dictText"
:show-overflow="true" show-overflow="title"
width="90" width="90"
/> />
<!-- <vxe-column <!-- <vxe-column
@@ -279,14 +279,14 @@
align="center" align="center"
key="orgId_dictText" key="orgId_dictText"
field="orgId_dictText" field="orgId_dictText"
:show-overflow="true" show-overflow="title"
/> --> /> -->
<!-- <vxe-column <!-- <vxe-column
title="采购入库位置" title="采购入库位置"
align="center" align="center"
key="locationId_dictText" key="locationId_dictText"
field="locationId_dictText" field="locationId_dictText"
:show-overflow="true" show-overflow="title"
/> --> /> -->
<vxe-column <vxe-column
@@ -294,7 +294,7 @@
title="医保编码" title="医保编码"
align="center" align="center"
field="ybNo" field="ybNo"
:show-overflow="true" show-overflow="title"
width="90" width="90"
/> />
<vxe-column <vxe-column
@@ -302,21 +302,21 @@
title="医保是否对码" title="医保是否对码"
align="center" align="center"
field="ybMatchFlag_enumText" field="ybMatchFlag_enumText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="drug69Code" key="drug69Code"
title="69" title="69"
align="center" align="center"
field="drug69Code" field="drug69Code"
:show-overflow="true" show-overflow="title"
/> />
<!-- <vxe-column <!-- <vxe-column
title="医保上传" title="医保上传"
align="center" align="center"
key="ybNo" key="ybNo"
field="ybNo" field="ybNo"
:show-overflow="true" show-overflow="title"
width="90" width="90"
/> --> /> -->
<vxe-column <vxe-column
@@ -324,7 +324,7 @@
title="采购价" title="采购价"
align="center" align="center"
field="purchasePrice" field="purchasePrice"
:show-overflow="true" show-overflow="title"
width="90" width="90"
/> />
<vxe-column <vxe-column
@@ -332,7 +332,7 @@
title="售价" title="售价"
align="center" align="center"
field="retailPrice" field="retailPrice"
:show-overflow="true" show-overflow="title"
width="90" width="90"
/> />
<vxe-column <vxe-column

View File

@@ -86,7 +86,7 @@
key="glNo" key="glNo"
field="glNo" field="glNo"
title="国临版疾病编码" title="国临版疾病编码"
:show-overflow="true" show-overflow="title"
align="center" align="center"
width="180" width="180"
/> />
@@ -95,7 +95,7 @@
key="glName" key="glName"
field="glName" field="glName"
title="国临版疾病名称" title="国临版疾病名称"
:show-overflow="true" show-overflow="title"
align="center" align="center"
min-width="200" min-width="200"
/> />
@@ -104,7 +104,7 @@
key="icd10No" key="icd10No"
field="icd10No" field="icd10No"
title="医保版疾病编码" title="医保版疾病编码"
:show-overflow="true" show-overflow="title"
align="center" align="center"
width="180" width="180"
/> />
@@ -113,7 +113,7 @@
key="icd10Name" key="icd10Name"
field="icd10Name" field="icd10Name"
title="医保版疾病名称" title="医保版疾病名称"
:show-overflow="true" show-overflow="title"
align="center" align="center"
min-width="200" min-width="200"
/> />

View File

@@ -107,38 +107,38 @@
title="患者姓名" title="患者姓名"
align="center" align="center"
field="patientName" field="patientName"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="支付状态" title="支付状态"
align="center" align="center"
field="statusEnum_dictText" field="statusEnum_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="费用类型" title="费用类型"
align="center" align="center"
field="paymentEnum_dictText" field="paymentEnum_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="医保结算Id" title="医保结算Id"
align="center" align="center"
field="ybSettleIds" field="ybSettleIds"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="收费流水号" title="收费流水号"
align="center" align="center"
field="paymentNo" field="paymentNo"
width="280" width="280"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="发票号" title="发票号"
align="center" align="center"
field="invoiceNo" field="invoiceNo"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="结算金额" title="结算金额"
@@ -146,7 +146,7 @@
field="tenderedAmount" field="tenderedAmount"
header-align="center" header-align="center"
width="100" width="100"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<span>{{ scope.row.tenderedAmount + ' 元' }}</span> <span>{{ scope.row.tenderedAmount + ' 元' }}</span>
@@ -158,7 +158,7 @@
field="displayAmount" field="displayAmount"
header-align="center" header-align="center"
width="100" width="100"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<span>{{ scope.row.displayAmount + ' 元' }}</span> <span>{{ scope.row.displayAmount + ' 元' }}</span>
@@ -170,7 +170,7 @@
align="center" align="center"
field="billDate" field="billDate"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<span>{{ parseTime(scope.row.billDate) }}</span> <span>{{ parseTime(scope.row.billDate) }}</span>
@@ -180,20 +180,20 @@
title="收款人" title="收款人"
align="center" align="center"
field="entererName" field="entererName"
:show-overflow="true" show-overflow="title"
/> />
<!-- <vxe-column title="医生" align="center" field="paymentEnum_enumText" /> --> <!-- <vxe-column title="医生" align="center" field="paymentEnum_enumText" /> -->
<vxe-column <vxe-column
title="支付结果" title="支付结果"
align="center" align="center"
field="outcomeEnum_dictText" field="outcomeEnum_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="打印次数" title="打印次数"
align="center" align="center"
field="printCount" field="printCount"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="操作" title="操作"
@@ -261,25 +261,25 @@
title="支付类型" title="支付类型"
align="center" align="center"
field="payEnum_dictText" field="payEnum_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="金额" title="金额"
align="center" align="center"
field="amount" field="amount"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="找零" title="找零"
align="center" align="center"
field="returnAmount" field="returnAmount"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="交款" title="交款"
align="center" align="center"
field="chargeAmount" field="chargeAmount"
:show-overflow="true" show-overflow="title"
/> />
</vxe-table> </vxe-table>
</el-dialog> </el-dialog>

View File

@@ -22,28 +22,28 @@
title="患者姓名" title="患者姓名"
align="center" align="center"
field="name" field="name"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="genderEnum_enumText" key="genderEnum_enumText"
title="性别" title="性别"
align="center" align="center"
field="genderEnum_enumText" field="genderEnum_enumText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="idCard" key="idCard"
title="身份证号" title="身份证号"
align="center" align="center"
field="idCard" field="idCard"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="phone" key="phone"
title="电话" title="电话"
align="center" align="center"
field="phone" field="phone"
:show-overflow="true" show-overflow="title"
width="100" width="100"
/> />
<vxe-column <vxe-column
@@ -51,14 +51,14 @@
title="生日" title="生日"
align="center" align="center"
field="birthDate" field="birthDate"
:show-overflow="true" show-overflow="title"
width="50" width="50"
/> />
<vxe-column <vxe-column
key="age" key="age"
title="年龄" title="年龄"
align="center" align="center"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
{{ scope.row.age ? `${scope.row.age}` : '-' }} {{ scope.row.age ? `${scope.row.age}` : '-' }}

View File

@@ -654,7 +654,7 @@
align="center" align="center"
key="organizationId" key="organizationId"
field="organizationId" field="organizationId"
:show-overflow="true" show-overflow="title"
/> --> /> -->
<vxe-column <vxe-column
title="" title=""
@@ -713,7 +713,7 @@
title="科室名称" title="科室名称"
align="center" align="center"
field="organizationName" field="organizationName"
:show-overflow="true" show-overflow="title"
:min-width="120" :min-width="120"
/> />
<vxe-column <vxe-column
@@ -721,7 +721,7 @@
title="*挂号类型 " title="*挂号类型 "
align="center" align="center"
field="healthcareName" field="healthcareName"
:show-overflow="true" show-overflow="title"
:min-width="140" :min-width="140"
> >
<template #default="scope"> <template #default="scope">

View File

@@ -41,13 +41,13 @@
title="患者姓名" title="患者姓名"
align="center" align="center"
field="patientName" field="patientName"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="支付单号" title="支付单号"
align="center" align="center"
field="paymentBusNo" field="paymentBusNo"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="交易金额(元)" title="交易金额(元)"
@@ -55,25 +55,25 @@
field="txnAmt" field="txnAmt"
header-align="center" header-align="center"
width="100" width="100"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="交易类型" title="交易类型"
align="center" align="center"
field="tranType" field="tranType"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="支付方式" title="支付方式"
align="center" align="center"
field="payType" field="payType"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="交易时间" title="交易时间"
align="center" align="center"
field="txnTime" field="txnTime"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<span>{{ parseTime(scope.row.txnTime) }}</span> <span>{{ parseTime(scope.row.txnTime) }}</span>
@@ -83,37 +83,37 @@
title="原交易类型" title="原交易类型"
align="center" align="center"
field="orgTranType" field="orgTranType"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="原交易类型" title="原交易类型"
align="center" align="center"
field="orgTranType" field="orgTranType"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="第三方优惠说明" title="第三方优惠说明"
align="center" align="center"
field="otherMsg" field="otherMsg"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="错误信息" title="错误信息"
align="center" align="center"
field="errMsg" field="errMsg"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="查询结果" title="查询结果"
align="center" align="center"
field="queryResult" field="queryResult"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="查询结果说明" title="查询结果说明"
align="center" align="center"
field="queryResultMsg" field="queryResultMsg"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="操作" title="操作"

View File

@@ -98,11 +98,11 @@
max-height="calc(100vh - 420px)" max-height="calc(100vh - 420px)"
@cell-click="handleDetail" @cell-click="handleDetail"
> >
<vxe-column field="billNo" title="账单号" align="center" width="180" show-overflow /> <vxe-column field="billNo" title="账单号" align="center" width="180" show-overflow="title" />
<vxe-column field="patientName" title="患者姓名" align="center" width="110" /> <vxe-column field="patientName" title="患者姓名" align="center" width="110" />
<vxe-column field="genderEnum_enumText" title="性别" align="center" width="70" /> <vxe-column field="genderEnum_enumText" title="性别" align="center" width="70" />
<vxe-column field="age" title="年龄" align="center" width="60" /> <vxe-column field="age" title="年龄" align="center" width="60" />
<vxe-column field="encounterNo" title="门诊号" align="center" width="140" show-overflow /> <vxe-column field="encounterNo" title="门诊号" align="center" width="140" show-overflow="title" />
<vxe-column field="billType_dictText" title="收费类型" align="center" width="100" /> <vxe-column field="billType_dictText" title="收费类型" align="center" width="100" />
<vxe-column field="totalAmount" title="收费金额" align="right" width="110"> <vxe-column field="totalAmount" title="收费金额" align="right" width="110">
<template #default="scope"> <template #default="scope">
@@ -183,9 +183,9 @@
<div class="item-title">费用明细</div> <div class="item-title">费用明细</div>
<vxe-table :data="billDetail.items" border size="small"> <vxe-table :data="billDetail.items" border size="small">
<vxe-column type="index" title="序号" align="center" width="60" /> <vxe-column type="index" title="序号" align="center" width="60" />
<vxe-column field="itemName" title="项目名称" align="left" min-width="180" show-overflow /> <vxe-column field="itemName" title="项目名称" align="left" min-width="180" show-overflow="title" />
<vxe-column field="itemType_dictText" title="类型" align="center" width="100" /> <vxe-column field="itemType_dictText" title="类型" align="center" width="100" />
<vxe-column field="specification" title="规格" align="center" width="120" show-overflow /> <vxe-column field="specification" title="规格" align="center" width="120" show-overflow="title" />
<vxe-column field="quantity" title="数量" align="center" width="80" /> <vxe-column field="quantity" title="数量" align="center" width="80" />
<vxe-column field="unitPrice" title="单价" align="right" width="100"> <vxe-column field="unitPrice" title="单价" align="right" width="100">
<template #default="scope"> <template #default="scope">

View File

@@ -47,10 +47,10 @@
height="calc(100vh - 360px)" height="calc(100vh - 360px)"
@cell-click="handlePatientClick" @cell-click="handlePatientClick"
> >
<vxe-column field="patientName" title="姓名" align="center" width="110" show-overflow /> <vxe-column field="patientName" title="姓名" align="center" width="110" show-overflow="title" />
<vxe-column field="genderEnum_enumText" title="性别" align="center" width="60" /> <vxe-column field="genderEnum_enumText" title="性别" align="center" width="60" />
<vxe-column field="age" title="年龄" align="center" width="50" /> <vxe-column field="age" title="年龄" align="center" width="50" />
<vxe-column field="encounterNo" title="门诊号" align="center" width="140" show-overflow /> <vxe-column field="encounterNo" title="门诊号" align="center" width="140" show-overflow="title" />
<vxe-column title="就诊日期" align="center" width="110"> <vxe-column title="就诊日期" align="center" width="110">
<template #default="scope"> <template #default="scope">
{{ scope.row.receptionTime ? formatDateStr(scope.row.receptionTime, 'YYYY-MM-DD') : '-' }} {{ scope.row.receptionTime ? formatDateStr(scope.row.receptionTime, 'YYYY-MM-DD') : '-' }}
@@ -109,9 +109,9 @@
@select="handleSelectionChange" @select="handleSelectionChange"
> >
<vxe-column type="checkbox" width="55" align="center" /> <vxe-column type="checkbox" width="55" align="center" />
<vxe-column field="itemName" title="项目名称" align="center" show-overflow min-width="180" /> <vxe-column field="itemName" title="项目名称" align="center" show-overflow="title" min-width="180" />
<vxe-column field="itemType_dictText" title="类型" align="center" width="100" /> <vxe-column field="itemType_dictText" title="类型" align="center" width="100" />
<vxe-column field="specification" title="规格" align="center" width="120" show-overflow /> <vxe-column field="specification" title="规格" align="center" width="120" show-overflow="title" />
<vxe-column field="quantity" title="数量" align="center" width="80" /> <vxe-column field="quantity" title="数量" align="center" width="80" />
<vxe-column field="unitPrice" title="单价" align="right" width="100"> <vxe-column field="unitPrice" title="单价" align="right" width="100">
<template #default="scope"> <template #default="scope">
@@ -129,7 +129,7 @@
</template> </template>
</vxe-column> </vxe-column>
<vxe-column field="doctorName" title="开单医生" align="center" width="110" /> <vxe-column field="doctorName" title="开单医生" align="center" width="110" />
<vxe-column field="deptName" title="科室" align="center" width="130" show-overflow /> <vxe-column field="deptName" title="科室" align="center" width="130" show-overflow="title" />
<vxe-column title="退费状态" align="center" width="90"> <vxe-column title="退费状态" align="center" width="90">
<template #default="scope"> <template #default="scope">
<el-tag v-if="scope.row.refundStatus === '0'" type="success" size="small">正常</el-tag> <el-tag v-if="scope.row.refundStatus === '0'" type="success" size="small">正常</el-tag>

View File

@@ -60,21 +60,21 @@
title="处方号" title="处方号"
align="center" align="center"
field="prescriptionNo" field="prescriptionNo"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="requesterId_dictText" key="requesterId_dictText"
title="请求人" title="请求人"
align="center" align="center"
field="requesterId_dictText" field="requesterId_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="requestTime" key="requestTime"
title="请求时间" title="请求时间"
align="center" align="center"
field="requestTime" field="requestTime"
:show-overflow="true" show-overflow="title"
width="160px" width="160px"
> >
<template #default="scope"> <template #default="scope">
@@ -86,21 +86,21 @@
title="医嘱名称" title="医嘱名称"
align="center" align="center"
field="adviceName" field="adviceName"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="volume" key="volume"
title="规格" title="规格"
align="center" align="center"
field="volume" field="volume"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="lotNumber" key="lotNumber"
title="产品批号" title="产品批号"
align="center" align="center"
field="lotNumber" field="lotNumber"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="请求数量" title="请求数量"
@@ -118,7 +118,7 @@
align="center" align="center"
key="unitCode_dictText" key="unitCode_dictText"
field="unitCode_dictText" field="unitCode_dictText"
:show-overflow="true" show-overflow="title"
/> --> /> -->
<vxe-column <vxe-column
title="请求状态" title="请求状态"
@@ -152,14 +152,14 @@
title="用法" title="用法"
align="center" align="center"
field="methodCode_dictText" field="methodCode_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="rateCode_dictText" key="rateCode_dictText"
title="使用频次" title="使用频次"
align="center" align="center"
field="rateCode_dictText" field="rateCode_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="单次剂量" title="单次剂量"
@@ -190,7 +190,7 @@
title="收费状态" title="收费状态"
align="center" align="center"
field="chargeStatus_enumText" field="chargeStatus_enumText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="收费状态" title="收费状态"
@@ -236,14 +236,14 @@
title="用药天数" title="用药天数"
align="center" align="center"
field="dispensePerDuration" field="dispensePerDuration"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="conditionDefinitionName" key="conditionDefinitionName"
title="诊断定义名称" title="诊断定义名称"
align="center" align="center"
field="conditionDefinitionName" field="conditionDefinitionName"
:show-overflow="true" show-overflow="title"
/> />
</vxe-table> </vxe-table>
<pagination <pagination

View File

@@ -67,28 +67,28 @@
title="处方号" title="处方号"
align="center" align="center"
field="prescriptionNo" field="prescriptionNo"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="patientName" key="patientName"
title="患者" title="患者"
align="center" align="center"
field="patientName" field="patientName"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="conditionDefinitionName" key="conditionDefinitionName"
title="疾病诊断" title="疾病诊断"
align="center" align="center"
field="conditionDefinitionName" field="conditionDefinitionName"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="requestTime" key="requestTime"
title="修改时间" title="修改时间"
align="center" align="center"
field="requestTime" field="requestTime"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<span>{{ parseTime(scope.row.requestTime) }}</span> <span>{{ parseTime(scope.row.requestTime) }}</span>
@@ -99,7 +99,7 @@
title="开方医生" title="开方医生"
align="center" align="center"
field="practitionerName" field="practitionerName"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column

View File

@@ -79,53 +79,53 @@
title="科室" title="科室"
align="center" align="center"
field="orgName" field="orgName"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="人次" title="人次"
align="center" align="center"
field="personCnt" field="personCnt"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="应收金额" title="应收金额"
align="center" align="center"
field="amount" field="amount"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="实收金额" title="实收金额"
align="center" align="center"
field="receivedAmount" field="receivedAmount"
width="280" width="280"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="挂号费" title="挂号费"
align="center" align="center"
field="registrationFee" field="registrationFee"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="处置费" title="处置费"
align="center" align="center"
field="serviceFee" field="serviceFee"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="药品费" title="药品费"
align="center" align="center"
field="medFee" field="medFee"
:show-overflow="true" show-overflow="title"
/> />
<!-- <vxe-column title="优惠金额" align="center" field="entererName" :show-overflow="true"/> --> <!-- <vxe-column title="优惠金额" align="center" field="entererName" show-overflow="title"/> -->
<!-- <vxe-column title="日结" align="center" field="outcomeEnum_dictText" :show-overflow="true"/> --> <!-- <vxe-column title="日结" align="center" field="outcomeEnum_dictText" show-overflow="title"/> -->
<!-- <vxe-column title="月累计" align="center" field="printCount" :show-overflow="true"/> --> <!-- <vxe-column title="月累计" align="center" field="printCount" show-overflow="title"/> -->
<vxe-column <vxe-column
title="备注" title="备注"
align="center" align="center"
field="printCount" field="printCount"
:show-overflow="true" show-overflow="title"
/> />
</vxe-table> </vxe-table>
<pagination <pagination

View File

@@ -44,12 +44,12 @@
max-height="calc(100vh - 320px)" max-height="calc(100vh - 320px)"
@cell-click="handleLabDetail" @cell-click="handleLabDetail"
> >
<vxe-column field="reportNo" title="报告号" align="center" width="160" show-overflow /> <vxe-column field="reportNo" title="报告号" align="center" width="160" show-overflow="title" />
<vxe-column field="patientName" title="患者姓名" align="center" width="110" /> <vxe-column field="patientName" title="患者姓名" align="center" width="110" />
<vxe-column field="genderEnum_enumText" title="性别" align="center" width="70" /> <vxe-column field="genderEnum_enumText" title="性别" align="center" width="70" />
<vxe-column field="age" title="年龄" align="center" width="60" /> <vxe-column field="age" title="年龄" align="center" width="60" />
<vxe-column field="encounterNo" title="门诊号" align="center" width="140" show-overflow /> <vxe-column field="encounterNo" title="门诊号" align="center" width="140" show-overflow="title" />
<vxe-column field="itemName" title="检验项目" align="left" min-width="200" show-overflow /> <vxe-column field="itemName" title="检验项目" align="left" min-width="200" show-overflow="title" />
<vxe-column field="sampleType" title="标本类型" align="center" width="100" /> <vxe-column field="sampleType" title="标本类型" align="center" width="100" />
<vxe-column field="reportStatus_dictText" title="报告状态" align="center" width="100" /> <vxe-column field="reportStatus_dictText" title="报告状态" align="center" width="100" />
<vxe-column field="abnormalFlag" title="异常标记" align="center" width="90"> <vxe-column field="abnormalFlag" title="异常标记" align="center" width="90">
@@ -90,13 +90,13 @@
max-height="calc(100vh - 320px)" max-height="calc(100vh - 320px)"
@cell-click="handleExamDetail" @cell-click="handleExamDetail"
> >
<vxe-column field="reportNo" title="报告号" align="center" width="160" show-overflow /> <vxe-column field="reportNo" title="报告号" align="center" width="160" show-overflow="title" />
<vxe-column field="patientName" title="患者姓名" align="center" width="110" /> <vxe-column field="patientName" title="患者姓名" align="center" width="110" />
<vxe-column field="genderEnum_enumText" title="性别" align="center" width="70" /> <vxe-column field="genderEnum_enumText" title="性别" align="center" width="70" />
<vxe-column field="age" title="年龄" align="center" width="60" /> <vxe-column field="age" title="年龄" align="center" width="60" />
<vxe-column field="encounterNo" title="门诊号" align="center" width="140" show-overflow /> <vxe-column field="encounterNo" title="门诊号" align="center" width="140" show-overflow="title" />
<vxe-column field="examItemName" title="检查项目" align="left" min-width="200" show-overflow /> <vxe-column field="examItemName" title="检查项目" align="left" min-width="200" show-overflow="title" />
<vxe-column field="examPart" title="检查部位" align="center" width="120" show-overflow /> <vxe-column field="examPart" title="检查部位" align="center" width="120" show-overflow="title" />
<vxe-column field="reportStatus_dictText" title="报告状态" align="center" width="100" /> <vxe-column field="reportStatus_dictText" title="报告状态" align="center" width="100" />
<vxe-column field="reportDoctor" title="报告医生" align="center" width="110" /> <vxe-column field="reportDoctor" title="报告医生" align="center" width="110" />
<vxe-column title="报告时间" align="center" width="160"> <vxe-column title="报告时间" align="center" width="160">
@@ -146,7 +146,7 @@
<div class="section-title">检验结果</div> <div class="section-title">检验结果</div>
<vxe-table :data="labDetail.resultItems" border size="small" max-height="400"> <vxe-table :data="labDetail.resultItems" border size="small" max-height="400">
<vxe-column type="index" title="序号" align="center" width="60" /> <vxe-column type="index" title="序号" align="center" width="60" />
<vxe-column field="itemName" title="项目名称" align="left" min-width="160" show-overflow /> <vxe-column field="itemName" title="项目名称" align="left" min-width="160" show-overflow="title" />
<vxe-column field="resultValue" title="结果" align="center" width="120"> <vxe-column field="resultValue" title="结果" align="center" width="120">
<template #default="scope"> <template #default="scope">
<span :class="scope.row.abnormalFlag === '1' ? 'abnormal' : ''">{{ scope.row.resultValue }}</span> <span :class="scope.row.abnormalFlag === '1' ? 'abnormal' : ''">{{ scope.row.resultValue }}</span>
@@ -162,7 +162,7 @@
<span v-else>-</span> <span v-else>-</span>
</template> </template>
</vxe-column> </vxe-column>
<vxe-column field="method" title="检测方法" align="center" width="120" show-overflow /> <vxe-column field="method" title="检测方法" align="center" width="120" show-overflow="title" />
</vxe-table> </vxe-table>
</div> </div>
<div v-if="labDetail.conclusion" class="conclusion"> <div v-if="labDetail.conclusion" class="conclusion">

View File

@@ -67,15 +67,15 @@
max-height="calc(100vh - 280px)" max-height="calc(100vh - 280px)"
@cell-click="handleDetail" @cell-click="handleDetail"
> >
<vxe-column field="orderNo" title="医嘱号" align="center" width="160" show-overflow /> <vxe-column field="orderNo" title="医嘱号" align="center" width="160" show-overflow="title" />
<vxe-column field="patientName" title="患者姓名" align="center" width="110" /> <vxe-column field="patientName" title="患者姓名" align="center" width="110" />
<vxe-column field="genderEnum_enumText" title="性别" align="center" width="70" /> <vxe-column field="genderEnum_enumText" title="性别" align="center" width="70" />
<vxe-column field="age" title="年龄" align="center" width="60" /> <vxe-column field="age" title="年龄" align="center" width="60" />
<vxe-column field="encounterNo" title="门诊号" align="center" width="140" show-overflow /> <vxe-column field="encounterNo" title="门诊号" align="center" width="140" show-overflow="title" />
<vxe-column field="orderType_dictText" title="医嘱类型" align="center" width="100" /> <vxe-column field="orderType_dictText" title="医嘱类型" align="center" width="100" />
<vxe-column field="orderContent" title="医嘱内容" align="left" min-width="220" show-overflow /> <vxe-column field="orderContent" title="医嘱内容" align="left" min-width="220" show-overflow="title" />
<vxe-column field="doctorName" title="开嘱医生" align="center" width="110" /> <vxe-column field="doctorName" title="开嘱医生" align="center" width="110" />
<vxe-column field="deptName" title="科室" align="center" width="130" show-overflow /> <vxe-column field="deptName" title="科室" align="center" width="130" show-overflow="title" />
<vxe-column field="orderStatus_dictText" title="状态" align="center" width="90"> <vxe-column field="orderStatus_dictText" title="状态" align="center" width="90">
<template #default="scope"> <template #default="scope">
<el-tag v-if="scope.row.orderStatus === 'NEW'" type="primary" size="small">新开</el-tag> <el-tag v-if="scope.row.orderStatus === 'NEW'" type="primary" size="small">新开</el-tag>
@@ -145,13 +145,13 @@
<div class="section-title">医嘱明细项目</div> <div class="section-title">医嘱明细项目</div>
<vxe-table :data="orderDetail.items" border size="small"> <vxe-table :data="orderDetail.items" border size="small">
<vxe-column type="index" title="序号" align="center" width="60" /> <vxe-column type="index" title="序号" align="center" width="60" />
<vxe-column field="itemName" title="项目名称" align="left" min-width="180" show-overflow /> <vxe-column field="itemName" title="项目名称" align="left" min-width="180" show-overflow="title" />
<vxe-column field="itemType_dictText" title="类型" align="center" width="100" /> <vxe-column field="itemType_dictText" title="类型" align="center" width="100" />
<vxe-column field="specification" title="规格" align="center" width="120" show-overflow /> <vxe-column field="specification" title="规格" align="center" width="120" show-overflow="title" />
<vxe-column field="dosage" title="剂量" align="center" width="80" /> <vxe-column field="dosage" title="剂量" align="center" width="80" />
<vxe-column field="unit" title="单位" align="center" width="70" /> <vxe-column field="unit" title="单位" align="center" width="70" />
<vxe-column field="quantity" title="数量" align="center" width="80" /> <vxe-column field="quantity" title="数量" align="center" width="80" />
<vxe-column field="usageMethod" title="用法" align="center" width="100" show-overflow /> <vxe-column field="usageMethod" title="用法" align="center" width="100" show-overflow="title" />
</vxe-table> </vxe-table>
</div> </div>
</div> </div>

View File

@@ -68,15 +68,15 @@
border border
height="100%" height="100%"
> >
<vxe-column field="formNo" title="申请单号" align="center" width="180" show-overflow /> <vxe-column field="formNo" title="申请单号" align="center" width="180" show-overflow="title" />
<vxe-column field="patientName" title="患者姓名" align="center" width="110" /> <vxe-column field="patientName" title="患者姓名" align="center" width="110" />
<vxe-column field="genderEnum_enumText" title="性别" align="center" width="70" /> <vxe-column field="genderEnum_enumText" title="性别" align="center" width="70" />
<vxe-column field="age" title="年龄" align="center" width="60" /> <vxe-column field="age" title="年龄" align="center" width="60" />
<vxe-column field="encounterNo" title="门诊号" align="center" width="140" show-overflow /> <vxe-column field="encounterNo" title="门诊号" align="center" width="140" show-overflow="title" />
<vxe-column field="formType_dictText" title="申请类型" align="center" width="110" /> <vxe-column field="formType_dictText" title="申请类型" align="center" width="110" />
<vxe-column field="itemNames" title="申请项目" align="left" min-width="200" show-overflow /> <vxe-column field="itemNames" title="申请项目" align="left" min-width="200" show-overflow="title" />
<vxe-column field="applyDoctorName" title="申请医生" align="center" width="110" /> <vxe-column field="applyDoctorName" title="申请医生" align="center" width="110" />
<vxe-column field="deptName" title="申请科室" align="center" width="140" show-overflow /> <vxe-column field="deptName" title="申请科室" align="center" width="140" show-overflow="title" />
<vxe-column field="status_dictText" title="状态" align="center" width="90" /> <vxe-column field="status_dictText" title="状态" align="center" width="90" />
<vxe-column title="申请时间" align="center" width="160"> <vxe-column title="申请时间" align="center" width="160">
<template #default="scope"> <template #default="scope">
@@ -145,11 +145,11 @@
<div class="item-title">申请项目明细</div> <div class="item-title">申请项目明细</div>
<vxe-table :data="detailData.items" border size="small"> <vxe-table :data="detailData.items" border size="small">
<vxe-column type="index" title="序号" align="center" width="60" /> <vxe-column type="index" title="序号" align="center" width="60" />
<vxe-column field="itemName" title="项目名称" align="left" show-overflow /> <vxe-column field="itemName" title="项目名称" align="left" show-overflow="title" />
<vxe-column field="itemCode" title="项目编码" align="center" width="140" /> <vxe-column field="itemCode" title="项目编码" align="center" width="140" />
<vxe-column field="specification" title="规格" align="center" width="120" /> <vxe-column field="specification" title="规格" align="center" width="120" />
<vxe-column field="quantity" title="数量" align="center" width="80" /> <vxe-column field="quantity" title="数量" align="center" width="80" />
<vxe-column field="purpose" title="目的/说明" align="left" show-overflow /> <vxe-column field="purpose" title="目的/说明" align="left" show-overflow="title" />
</vxe-table> </vxe-table>
</div> </div>
</div> </div>

View File

@@ -66,19 +66,19 @@
align="center" align="center"
title="姓名" title="姓名"
width="130" width="130"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
field="genderEnum_enumText" field="genderEnum_enumText"
align="center" align="center"
title="性别" title="性别"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
align="center" align="center"
width="140" width="140"
title="就诊日期" title="就诊日期"
show-overflow show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
{{ {{
@@ -138,7 +138,7 @@
<vxe-column <vxe-column
field="itemName" field="itemName"
title="药品名称" title="药品名称"
show-overflow show-overflow="title"
align="center" align="center"
/> />
<vxe-column <vxe-column

View File

@@ -41,7 +41,7 @@
<!-- 数据表格 --> <!-- 数据表格 -->
<vxe-table v-loading="loading" :data="orderList" @checkbox-change="handleSelectionChange" border stripe> <vxe-table v-loading="loading" :data="orderList" @checkbox-change="handleSelectionChange" border stripe>
<vxe-column type="checkbox" width="55" align="center" /> <vxe-column type="checkbox" width="55" align="center" />
<vxe-column title="申请单号" field="applyNo" width="180" :show-overflow="true" /> <vxe-column title="申请单号" field="applyNo" width="180" show-overflow="title" />
<vxe-column title="申请类型" field="applyTypeName" width="80" align="center"> <vxe-column title="申请类型" field="applyTypeName" width="80" align="center">
<template #default="{ row }"> <template #default="{ row }">
<el-tag :type="row.applyType === 'exam' ? 'primary' : 'success'" size="small"> <el-tag :type="row.applyType === 'exam' ? 'primary' : 'success'" size="small">
@@ -49,13 +49,13 @@
</el-tag> </el-tag>
</template> </template>
</vxe-column> </vxe-column>
<vxe-column title="患者ID" field="patientId" width="120" :show-overflow="true" /> <vxe-column title="患者ID" field="patientId" width="120" show-overflow="title" />
<vxe-column title="患者姓名" field="patientName" width="100" :show-overflow="true" /> <vxe-column title="患者姓名" field="patientName" width="100" show-overflow="title" />
<vxe-column title="就诊号" field="visitNo" width="140" :show-overflow="true" /> <vxe-column title="就诊号" field="visitNo" width="140" show-overflow="title" />
<vxe-column title="开单科室" field="applyDeptCode" width="120" :show-overflow="true" /> <vxe-column title="开单科室" field="applyDeptCode" width="120" show-overflow="title" />
<vxe-column title="申请医生" field="applyDocName" width="100" :show-overflow="true" /> <vxe-column title="申请医生" field="applyDocName" width="100" show-overflow="title" />
<vxe-column title="申请时间" field="applyTime" width="170" align="center" /> <vxe-column title="申请时间" field="applyTime" width="170" align="center" />
<vxe-column title="诊断/描述" field="clinicDesc" min-width="180" :show-overflow="true" /> <vxe-column title="诊断/描述" field="clinicDesc" min-width="180" show-overflow="title" />
<vxe-column title="加急" width="70" align="center"> <vxe-column title="加急" width="70" align="center">
<template #default="{ row }"> <template #default="{ row }">
<el-tag v-if="row.isUrgent === 1" type="danger" size="small">加急</el-tag> <el-tag v-if="row.isUrgent === 1" type="danger" size="small">加急</el-tag>

View File

@@ -46,7 +46,7 @@
<!-- 数据表格 --> <!-- 数据表格 -->
<vxe-table v-loading="loading" :data="orderList" @checkbox-change="handleSelectionChange" border stripe> <vxe-table v-loading="loading" :data="orderList" @checkbox-change="handleSelectionChange" border stripe>
<vxe-column type="checkbox" width="55" align="center" /> <vxe-column type="checkbox" width="55" align="center" />
<vxe-column title="申请单号" field="applyNo" width="180" :show-overflow="true" /> <vxe-column title="申请单号" field="applyNo" width="180" show-overflow="title" />
<vxe-column title="申请类型" field="applyTypeName" width="80" align="center"> <vxe-column title="申请类型" field="applyTypeName" width="80" align="center">
<template #default="{ row }"> <template #default="{ row }">
<el-tag :type="row.applyType === 'exam' ? 'primary' : 'success'" size="small"> <el-tag :type="row.applyType === 'exam' ? 'primary' : 'success'" size="small">
@@ -54,19 +54,19 @@
</el-tag> </el-tag>
</template> </template>
</vxe-column> </vxe-column>
<vxe-column title="患者ID" field="patientId" width="120" :show-overflow="true" /> <vxe-column title="患者ID" field="patientId" width="120" show-overflow="title" />
<vxe-column title="患者姓名" field="patientName" width="100" :show-overflow="true" /> <vxe-column title="患者姓名" field="patientName" width="100" show-overflow="title" />
<vxe-column title="就诊号" field="visitNo" width="140" :show-overflow="true" /> <vxe-column title="就诊号" field="visitNo" width="140" show-overflow="title" />
<vxe-column title="开单科室" field="applyDeptCode" width="120" :show-overflow="true" /> <vxe-column title="开单科室" field="applyDeptCode" width="120" show-overflow="title" />
<vxe-column title="申请医生" field="applyDocName" width="100" :show-overflow="true" /> <vxe-column title="申请医生" field="applyDocName" width="100" show-overflow="title" />
<vxe-column title="申请时间" field="applyTime" width="170" align="center" /> <vxe-column title="申请时间" field="applyTime" width="170" align="center" />
<vxe-column title="诊断/描述" field="clinicDesc" min-width="180" :show-overflow="true" /> <vxe-column title="诊断/描述" field="clinicDesc" min-width="180" show-overflow="title" />
<vxe-column title="申请状态" width="100" align="center"> <vxe-column title="申请状态" width="100" align="center">
<template #default="{ row }"> <template #default="{ row }">
<el-tag type="warning" size="small">待审批</el-tag> <el-tag type="warning" size="small">待审批</el-tag>
</template> </template>
</vxe-column> </vxe-column>
<vxe-column title="备注" field="applyRemark" width="150" :show-overflow="true" /> <vxe-column title="备注" field="applyRemark" width="150" show-overflow="title" />
<vxe-column title="操作" width="160" align="center" fixed="right"> <vxe-column title="操作" width="160" align="center" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
<el-button type="success" link size="small" @click="handleApproveSingle(row)"> <el-button type="success" link size="small" @click="handleApproveSingle(row)">

View File

@@ -35,10 +35,10 @@
height="calc(100vh - 320px)" height="calc(100vh - 320px)"
@cell-click="handlePatientClick" @cell-click="handlePatientClick"
> >
<vxe-column field="patientName" title="姓名" align="center" width="120" show-overflow /> <vxe-column field="patientName" title="姓名" align="center" width="120" show-overflow="title" />
<vxe-column field="genderEnum_enumText" title="性别" align="center" width="70" /> <vxe-column field="genderEnum_enumText" title="性别" align="center" width="70" />
<vxe-column field="age" title="年龄" align="center" width="60" /> <vxe-column field="age" title="年龄" align="center" width="60" />
<vxe-column field="encounterNo" title="门诊号" align="center" width="150" show-overflow /> <vxe-column field="encounterNo" title="门诊号" align="center" width="150" show-overflow="title" />
<vxe-column title="就诊日期" align="center" width="120"> <vxe-column title="就诊日期" align="center" width="120">
<template #default="scope"> <template #default="scope">
{{ scope.row.receptionTime ? formatDateStr(scope.row.receptionTime, 'YYYY-MM-DD') : '-' }} {{ scope.row.receptionTime ? formatDateStr(scope.row.receptionTime, 'YYYY-MM-DD') : '-' }}
@@ -82,9 +82,9 @@
@select="handleSelectionChange" @select="handleSelectionChange"
> >
<vxe-column type="checkbox" width="55" align="center" /> <vxe-column type="checkbox" width="55" align="center" />
<vxe-column field="itemName" title="项目名称" align="center" show-overflow /> <vxe-column field="itemName" title="项目名称" align="center" show-overflow="title" />
<vxe-column field="itemType" title="类型" align="center" width="100" /> <vxe-column field="itemType" title="类型" align="center" width="100" />
<vxe-column field="specification" title="规格" align="center" width="120" show-overflow /> <vxe-column field="specification" title="规格" align="center" width="120" show-overflow="title" />
<vxe-column field="quantity" title="数量" align="center" width="80" /> <vxe-column field="quantity" title="数量" align="center" width="80" />
<vxe-column field="unitPrice" title="单价" align="right" width="100"> <vxe-column field="unitPrice" title="单价" align="right" width="100">
<template #default="scope"> <template #default="scope">
@@ -97,7 +97,7 @@
</template> </template>
</vxe-column> </vxe-column>
<vxe-column field="doctorName" title="开单医生" align="center" width="120" /> <vxe-column field="doctorName" title="开单医生" align="center" width="120" />
<vxe-column field="deptName" title="科室" align="center" width="140" show-overflow /> <vxe-column field="deptName" title="科室" align="center" width="140" show-overflow="title" />
<vxe-column title="开单时间" align="center" width="150"> <vxe-column title="开单时间" align="center" width="150">
<template #default="scope"> <template #default="scope">
{{ scope.row.createTime ? formatDateStr(scope.row.createTime, 'YYYY-MM-DD HH:mm') : '-' }} {{ scope.row.createTime ? formatDateStr(scope.row.createTime, 'YYYY-MM-DD HH:mm') : '-' }}

View File

@@ -167,7 +167,7 @@
title="ID" title="ID"
min-width="150" min-width="150"
align="center" align="center"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
title="急" title="急"
@@ -204,7 +204,7 @@
field="invitedObject" field="invitedObject"
title="邀请对象" title="邀请对象"
min-width="150" min-width="150"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
field="consultationRequestDate" field="consultationRequestDate"

View File

@@ -85,7 +85,7 @@
<vxe-table <vxe-table
v-loading="loading" v-loading="loading"
:data="definitionList" :data="definitionList"
show-overflow show-overflow="title"
> >
<vxe-column <vxe-column
type="checkbox" type="checkbox"
@@ -283,7 +283,7 @@
<vxe-table <vxe-table
v-loading="loading" v-loading="loading"
:data="definitionList" :data="definitionList"
show-overflow show-overflow="title"
> >
<vxe-column <vxe-column
type="checkbox" type="checkbox"
@@ -481,7 +481,7 @@
<vxe-table <vxe-table
v-loading="loading" v-loading="loading"
:data="definitionList" :data="definitionList"
show-overflow show-overflow="title"
> >
<vxe-column <vxe-column
type="checkbox" type="checkbox"
@@ -617,7 +617,7 @@
<vxe-table <vxe-table
v-loading="detailLoading" v-loading="detailLoading"
:data="definitionDetailList" :data="definitionDetailList"
show-overflow show-overflow="title"
> >
<vxe-column <vxe-column
title="条件" title="条件"

View File

@@ -18,7 +18,7 @@
align="center" align="center"
field="adviceName" field="adviceName"
width="200" width="200"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
title="包装单位" title="包装单位"
@@ -54,14 +54,14 @@
align="center" align="center"
field="volume" field="volume"
width="120" width="120"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
title="用法" title="用法"
align="center" align="center"
field="methodCode_dictText" field="methodCode_dictText"
width="120" width="120"
show-overflow show-overflow="title"
/> />
<!-- 修改价格列从inventoryList中获取价格 --> <!-- 修改价格列从inventoryList中获取价格 -->
<vxe-column <vxe-column
@@ -89,7 +89,7 @@
align="center" align="center"
field="rateCode_dictText" field="rateCode_dictText"
width="100" width="100"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
title="注射药品" title="注射药品"
@@ -117,13 +117,13 @@
align="center" align="center"
field="ybNo" field="ybNo"
width="100" width="100"
show-overflow show-overflow="title"
/> />
<!-- <vxe-column title="限制使用标志" align="center" field="useLimitFlag" /> --> <!-- <vxe-column title="限制使用标志" align="center" field="useLimitFlag" /> -->
<vxe-column <vxe-column
title="限制使用范围" title="限制使用范围"
align="center" align="center"
:show-overflow="true" show-overflow="title"
field="useScope" field="useScope"
width="120" width="120"
> >

View File

@@ -76,7 +76,7 @@
field="invitedObjectText" field="invitedObjectText"
title="邀请对象" title="邀请对象"
min-width="120" min-width="120"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
field="department" field="department"

View File

@@ -29,7 +29,7 @@
align="left" align="left"
field="name" field="name"
min-width="200" min-width="200"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
title="ICD代码" title="ICD代码"

View File

@@ -21,14 +21,14 @@
title="主诉" title="主诉"
align="left" align="left"
field="name" field="name"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="时间" title="时间"
align="center" align="center"
field="createTime" field="createTime"
width="180" width="180"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="操作" title="操作"

View File

@@ -64,7 +64,7 @@
align="left" align="left"
field="name" field="name"
min-width="180" min-width="180"
show-overflow show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-tooltip <el-tooltip
@@ -261,7 +261,7 @@
title="医嘱名称" title="医嘱名称"
field="orderDefinitionName" field="orderDefinitionName"
min-width="150" min-width="150"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
title="数量" title="数量"
@@ -385,7 +385,7 @@
title="医嘱名称" title="医嘱名称"
field="orderDefinitionName" field="orderDefinitionName"
min-width="180" min-width="180"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
title="数量" title="数量"
@@ -465,7 +465,7 @@
title="医嘱名称" title="医嘱名称"
field="adviceName" field="adviceName"
min-width="150" min-width="150"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
title="类型" title="类型"
@@ -477,7 +477,7 @@
title="规格" title="规格"
field="volume" field="volume"
width="100" width="100"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
title="单价" title="单价"

View File

@@ -96,7 +96,7 @@
align="center" align="center"
field="applyDeptName" field="applyDeptName"
width="120" width="120"
show-overflow show-overflow="title"
/> />
<!-- 手术名称 --> <!-- 手术名称 -->
@@ -105,7 +105,7 @@
align="center" align="center"
field="surgeryName" field="surgeryName"
min-width="150" min-width="150"
show-overflow show-overflow="title"
/> />
<!-- 手术等级 --> <!-- 手术等级 -->

View File

@@ -66,19 +66,19 @@
align="center" align="center"
title="姓名" title="姓名"
width="130" width="130"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
field="genderEnum_enumText" field="genderEnum_enumText"
align="center" align="center"
title="性别" title="性别"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
align="center" align="center"
width="140" width="140"
title="就诊日期" title="就诊日期"
show-overflow show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
{{ {{
@@ -138,7 +138,7 @@
<vxe-column <vxe-column
field="itemName" field="itemName"
title="药品名称" title="药品名称"
show-overflow show-overflow="title"
align="center" align="center"
/> />
<vxe-column <vxe-column

View File

@@ -33,7 +33,7 @@
</el-form> </el-form>
<vxe-table :data="tableData" border height="calc(100vh - 400px)" v-loading="loading"> <vxe-table :data="tableData" border height="calc(100vh - 400px)" v-loading="loading">
<vxe-column type="seq" title="序号" width="60" /> <vxe-column type="seq" title="序号" width="60" />
<vxe-column field="messageId" title="消息ID" width="160" show-overflow /> <vxe-column field="messageId" title="消息ID" width="160" show-overflow="title" />
<vxe-column field="messageType" title="类型" width="100" /> <vxe-column field="messageType" title="类型" width="100" />
<vxe-column field="sourceSystem" title="来源" width="100" /> <vxe-column field="sourceSystem" title="来源" width="100" />
<vxe-column field="targetSystem" title="目标" width="100" /> <vxe-column field="targetSystem" title="目标" width="100" />

View File

@@ -23,9 +23,9 @@
</el-form> </el-form>
<vxe-table :data="tableData" border height="calc(100vh - 320px)" v-loading="loading"> <vxe-table :data="tableData" border height="calc(100vh - 320px)" v-loading="loading">
<vxe-column type="seq" title="序号" width="60" /> <vxe-column type="seq" title="序号" width="60" />
<vxe-column field="serviceName" title="服务名称" width="160" show-overflow /> <vxe-column field="serviceName" title="服务名称" width="160" show-overflow="title" />
<vxe-column field="serviceVersion" title="版本" width="80" /> <vxe-column field="serviceVersion" title="版本" width="80" />
<vxe-column field="serviceEndpoint" title="端点" min-width="250" show-overflow /> <vxe-column field="serviceEndpoint" title="端点" min-width="250" show-overflow="title" />
<vxe-column field="protocol" title="协议" width="80" /> <vxe-column field="protocol" title="协议" width="80" />
<vxe-column field="serviceStatus" title="状态" width="80" align="center"> <vxe-column field="serviceStatus" title="状态" width="80" align="center">
<template #default="{ row }"> <template #default="{ row }">

View File

@@ -113,17 +113,17 @@
<vxe-column <vxe-column
title="申请编号" title="申请编号"
field="applicationNo" field="applicationNo"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="项目名称" title="项目名称"
field="name" field="name"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="项目编号" title="项目编号"
field="busNo" field="busNo"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column title="医保编码"> <vxe-column title="医保编码">
<template #default="scope"> <template #default="scope">
@@ -136,7 +136,7 @@
<vxe-column <vxe-column
title="项目分类" title="项目分类"
field="itemTypeName" field="itemTypeName"
:show-overflow="true" show-overflow="title"
align="center" align="center"
width="100" width="100"
/> />
@@ -173,14 +173,14 @@
<vxe-column <vxe-column
title="开始时间" title="开始时间"
field="startDate" field="startDate"
:show-overflow="true" show-overflow="title"
align="center" align="center"
width="150" width="150"
/> />
<vxe-column <vxe-column
title="结束时间" title="结束时间"
field="endDate" field="endDate"
:show-overflow="true" show-overflow="title"
align="center" align="center"
width="150" width="150"
/> />
@@ -547,32 +547,32 @@
<vxe-column <vxe-column
title="项目编号" title="项目编号"
field="busNo" field="busNo"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="项目名称" title="项目名称"
field="name" field="name"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="医保编码" title="医保编码"
field="ybNo" field="ybNo"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="医保等级" title="医保等级"
field="chrgitmLvName" field="chrgitmLvName"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="生产厂家" title="生产厂家"
field="manufacturerText" field="manufacturerText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="规格" title="规格"
field="totalVolume" field="totalVolume"
:show-overflow="true" show-overflow="title"
/> />
</vxe-table> </vxe-table>
<pagination <pagination

View File

@@ -34,19 +34,19 @@
<vxe-column <vxe-column
title="医保分项编码" title="医保分项编码"
field="ybClass" field="ybClass"
:show-overflow="true" show-overflow="title"
align="center" align="center"
/> />
<vxe-column <vxe-column
title="医保分项名称" title="医保分项名称"
field="ybClassName" field="ybClassName"
:show-overflow="true" show-overflow="title"
align="center" align="center"
/> />
<vxe-column <vxe-column
title="医保等级" title="医保等级"
field="ybLvName" field="ybLvName"
:show-overflow="true" show-overflow="title"
align="center" align="center"
/> />
<!-- 自付比例列 --> <!-- 自付比例列 -->
@@ -134,12 +134,12 @@
<vxe-column <vxe-column
title="项目编号" title="项目编号"
field="busNo" field="busNo"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="项目名称" title="项目名称"
field="name" field="name"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="医保编码" title="医保编码"
@@ -155,14 +155,14 @@
<vxe-column <vxe-column
title="项目分类" title="项目分类"
field="itemTypeName" field="itemTypeName"
:show-overflow="true" show-overflow="title"
width="110" width="110"
align="center" align="center"
/> />
<vxe-column <vxe-column
title="医保等级" title="医保等级"
field="chrgitmLvName" field="chrgitmLvName"
:show-overflow="true" show-overflow="title"
width="110" width="110"
align="center" align="center"
/> />
@@ -199,13 +199,13 @@
<vxe-column <vxe-column
title="开始时间" title="开始时间"
field="startDate" field="startDate"
:show-overflow="true" show-overflow="title"
align="center" align="center"
/> />
<vxe-column <vxe-column
title="结束时间" title="结束时间"
field="endDate" field="endDate"
:show-overflow="true" show-overflow="title"
align="center" align="center"
/> />
</vxe-table> </vxe-table>

View File

@@ -109,98 +109,98 @@
<vxe-column <vxe-column
title="学号" title="学号"
field="studentId" field="studentId"
:show-overflow="true" show-overflow="title"
width="150" width="150"
/> />
<vxe-column <vxe-column
title="姓名" title="姓名"
field="name" field="name"
:show-overflow="true" show-overflow="title"
width="150" width="150"
/> />
<vxe-column <vxe-column
title="性别" title="性别"
field="gender_dictText" field="gender_dictText"
:show-overflow="true" show-overflow="title"
width="70" width="70"
align="center" align="center"
/> />
<vxe-column <vxe-column
title="年龄" title="年龄"
field="age" field="age"
:show-overflow="true" show-overflow="title"
width="70" width="70"
align="center" align="center"
/> />
<vxe-column <vxe-column
title="身份证号" title="身份证号"
field="idNumber" field="idNumber"
:show-overflow="true" show-overflow="title"
width="200" width="200"
/> />
<vxe-column <vxe-column
title="电话" title="电话"
field="phone" field="phone"
:show-overflow="true" show-overflow="title"
width="150" width="150"
/> />
<vxe-column <vxe-column
title="学院" title="学院"
field="college" field="college"
:show-overflow="true" show-overflow="title"
width="150" width="150"
/> />
<vxe-column <vxe-column
title="专业" title="专业"
field="major" field="major"
:show-overflow="true" show-overflow="title"
width="150" width="150"
/> />
<vxe-column <vxe-column
title="年级" title="年级"
field="grade" field="grade"
:show-overflow="true" show-overflow="title"
width="100" width="100"
/> />
<vxe-column <vxe-column
title="学历层次" title="学历层次"
field="educationLevel_dictText" field="educationLevel_dictText"
:show-overflow="true" show-overflow="title"
width="120" width="120"
align="center" align="center"
/> />
<vxe-column <vxe-column
title="入校时间" title="入校时间"
field="enrollmentDate" field="enrollmentDate"
:show-overflow="true" show-overflow="title"
width="120" width="120"
align="center" align="center"
/> />
<vxe-column <vxe-column
title="离校时间" title="离校时间"
field="graduationDate" field="graduationDate"
:show-overflow="true" show-overflow="title"
width="120" width="120"
align="center" align="center"
/> />
<vxe-column <vxe-column
title="学习形式" title="学习形式"
field="studyMode_dictText" field="studyMode_dictText"
:show-overflow="true" show-overflow="title"
width="120" width="120"
align="center" align="center"
/> />
<vxe-column <vxe-column
title="在校状态" title="在校状态"
field="studentStatus_dictText" field="studentStatus_dictText"
:show-overflow="true" show-overflow="title"
width="100" width="100"
align="center" align="center"
/> />
<vxe-column <vxe-column
title="体检结果" title="体检结果"
field="physicalExamResult_dictText" field="physicalExamResult_dictText"
:show-overflow="true" show-overflow="title"
width="120" width="120"
align="center" align="center"
/> />

View File

@@ -2,7 +2,7 @@
<div class="patient-list"> <div class="patient-list">
<vxe-table <vxe-table
:row-config="{ isCurrent: true }" :data="data" :row-config="{ isCurrent: true }" :data="data"
show-overflow show-overflow="title"
height="100%" height="100%"
@current-change="handleCurrentChange" @current-change="handleCurrentChange"
> >

View File

@@ -54,8 +54,7 @@
<vxe-table <vxe-table
ref="tableRef" ref="tableRef"
:data="treatHospitalizedData" :data="treatHospitalizedData"
style="width: 100%" min-width="1600px"
height="100%"
show-overflow="title" show-overflow="title"
@radio-change="handleRadioChange" @radio-change="handleRadioChange"
> >
@@ -68,6 +67,7 @@
/> />
<vxe-column <vxe-column
field="patientName" field="patientName"
min-width="120"
align="center" align="center"
title="申请患者" title="申请患者"
/> />
@@ -85,6 +85,7 @@
/> />
<vxe-column <vxe-column
field="busNo" field="busNo"
min-width="140"
align="center" align="center"
title="患者住院号" title="患者住院号"
> >
@@ -94,6 +95,7 @@
</vxe-column> </vxe-column>
<vxe-column <vxe-column
field="contractNo" field="contractNo"
min-width="140"
align="center" align="center"
title="费用性质" title="费用性质"
> >
@@ -105,7 +107,7 @@
field="idCard" field="idCard"
align="center" align="center"
title="身份证号码" title="身份证号码"
width="180" width="200"
> >
<template #default="scope"> <template #default="scope">
{{ scope.row.idCard || '-' }} {{ scope.row.idCard || '-' }}
@@ -113,9 +115,9 @@
</vxe-column> </vxe-column>
<vxe-column <vxe-column
field="organizationName" field="organizationName"
min-width="140"
align="center" align="center"
title="入院科室" title="入院科室"
width="120"
> >
<template #default="scope"> <template #default="scope">
{{ scope.row.organizationName || '-' }} {{ scope.row.organizationName || '-' }}
@@ -125,10 +127,11 @@
field="requestTime" field="requestTime"
align="center" align="center"
title="登记时间" title="登记时间"
width="160" width="170"
/> />
<vxe-column <vxe-column
field="admitSourceCode" field="admitSourceCode"
min-width="100"
align="center" align="center"
title="入院类型" title="入院类型"
> >
@@ -149,6 +152,7 @@
</vxe-column> </vxe-column>
<vxe-column <vxe-column
field="sourceName" field="sourceName"
min-width="120"
align="center" align="center"
title="申请来源" title="申请来源"
> >
@@ -159,11 +163,13 @@
<vxe-column <vxe-column
field="wardName" field="wardName"
min-width="120"
align="center" align="center"
title="入院病区" title="入院病区"
/> />
<vxe-column <vxe-column
field="registrar" field="registrar"
min-width="100"
align="center" align="center"
title="登记员" title="登记员"
/> />
@@ -269,6 +275,10 @@ const queryParams = ref({
pageSize: 10, pageSize: 10,
registeredFlag: '1', registeredFlag: '1',
searchKey: '', searchKey: '',
idCard: '',
organizationId: '',
startTime: '',
endTime: '',
}); });
const treatHospitalizedData = ref([]); const treatHospitalizedData = ref([]);
@@ -326,8 +336,8 @@ const doVoid = (row) => {
.catch(() => {}); .catch(() => {});
}; };
const handleRadioChange = ({ newValue }) => { const handleRadioChange = ({ row }) => {
selectedRow.value = newValue; selectedRow.value = row;
}; };
const handlePrintCertificate = async () => { const handlePrintCertificate = async () => {
@@ -508,6 +518,7 @@ const getList = () => {
} }
.table-container { .table-container {
padding: 8px 16px; padding: 8px 16px;
overflow-x: auto;
} }
} }
</style> </style>

View File

@@ -34,7 +34,7 @@
:data="treatHospitalizedData" :data="treatHospitalizedData"
style="width: 100%" style="width: 100%"
height="100%" height="100%"
show-overflow show-overflow="title"
> >
<vxe-column <vxe-column
type="seq" type="seq"

View File

@@ -44,7 +44,7 @@
:data="treatHospitalizedData" :data="treatHospitalizedData"
style="width: 100%" style="width: 100%"
height="100%" height="100%"
show-overflow show-overflow="title"
> >
<vxe-column <vxe-column
type="seq" type="seq"

View File

@@ -82,38 +82,38 @@
title="患者姓名" title="患者姓名"
align="center" align="center"
field="patientName" field="patientName"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="支付状态" title="支付状态"
align="center" align="center"
field="statusEnum_dictText" field="statusEnum_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="费用类型" title="费用类型"
align="center" align="center"
field="paymentEnum_dictText" field="paymentEnum_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="医保结算Id" title="医保结算Id"
align="center" align="center"
field="ybSettleIds" field="ybSettleIds"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="收费流水号" title="收费流水号"
align="center" align="center"
field="paymentNo" field="paymentNo"
width="280" width="280"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="发票号" title="发票号"
align="center" align="center"
field="invoiceNo" field="invoiceNo"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="结算金额" title="结算金额"
@@ -121,7 +121,7 @@
field="tenderedAmount" field="tenderedAmount"
header-align="center" header-align="center"
width="100" width="100"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<span>{{ scope.row.tenderedAmount + ' 元' }}</span> <span>{{ scope.row.tenderedAmount + ' 元' }}</span>
@@ -133,7 +133,7 @@
field="displayAmount" field="displayAmount"
header-align="center" header-align="center"
width="100" width="100"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<span>{{ scope.row.displayAmount + ' 元' }}</span> <span>{{ scope.row.displayAmount + ' 元' }}</span>
@@ -145,7 +145,7 @@
align="center" align="center"
field="billDate" field="billDate"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<span>{{ parseTime(scope.row.billDate) }}</span> <span>{{ parseTime(scope.row.billDate) }}</span>
@@ -155,20 +155,20 @@
title="收款人" title="收款人"
align="center" align="center"
field="entererName" field="entererName"
:show-overflow="true" show-overflow="title"
/> />
<!-- <vxe-column title="医生" align="center" field="paymentEnum_enumText" /> --> <!-- <vxe-column title="医生" align="center" field="paymentEnum_enumText" /> -->
<vxe-column <vxe-column
title="支付结果" title="支付结果"
align="center" align="center"
field="outcomeEnum_dictText" field="outcomeEnum_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="打印次数" title="打印次数"
align="center" align="center"
field="printCount" field="printCount"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="操作" title="操作"
@@ -244,25 +244,25 @@
title="支付类型" title="支付类型"
align="center" align="center"
field="payEnum_dictText" field="payEnum_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="金额" title="金额"
align="center" align="center"
field="amount" field="amount"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="找零" title="找零"
align="center" align="center"
field="returnAmount" field="returnAmount"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="交款" title="交款"
align="center" align="center"
field="chargeAmount" field="chargeAmount"
:show-overflow="true" show-overflow="title"
/> />
</vxe-table> </vxe-table>
</el-dialog> </el-dialog>

View File

@@ -55,7 +55,7 @@
<vxe-table <vxe-table
:data="queryPpatientList" :data="queryPpatientList"
height="186px" height="186px"
show-overflow show-overflow="title"
:style="{ height: '100%' }" :style="{ height: '100%' }"
> >
<vxe-column <vxe-column
@@ -115,7 +115,7 @@
<vxe-table <vxe-table
:data="econDetailsInfo.bpubTypeList" :data="econDetailsInfo.bpubTypeList"
height="186px" height="186px"
show-overflow show-overflow="title"
:style="{ height: '100%' }" :style="{ height: '100%' }"
> >
<vxe-column <vxe-column
@@ -143,7 +143,7 @@
<vxe-table <vxe-table
:data="econDetailsInfo.econIpdSettlePayAsToList" :data="econDetailsInfo.econIpdSettlePayAsToList"
height="186px" height="186px"
show-overflow show-overflow="title"
:style="{ height: '100%' }" :style="{ height: '100%' }"
> >
<vxe-column <vxe-column

View File

@@ -55,7 +55,7 @@
<vxe-table <vxe-table
:data="queryPpatientList" :data="queryPpatientList"
height="186px" height="186px"
show-overflow show-overflow="title"
:style="{ height: '100%' }" :style="{ height: '100%' }"
> >
<vxe-column <vxe-column
@@ -134,7 +134,7 @@
<vxe-table <vxe-table
:data="econDetailsInfo.bpubTypeList" :data="econDetailsInfo.bpubTypeList"
height="186px" height="186px"
show-overflow show-overflow="title"
:style="{ height: '100%' }" :style="{ height: '100%' }"
> >
<vxe-column <vxe-column
@@ -162,7 +162,7 @@
<vxe-table <vxe-table
:data="econDetailsInfo.econIpdSettlePayAsToList" :data="econDetailsInfo.econIpdSettlePayAsToList"
height="186px" height="186px"
show-overflow show-overflow="title"
:style="{ height: '100%' }" :style="{ height: '100%' }"
> >
<vxe-column <vxe-column

View File

@@ -40,17 +40,17 @@
<vxe-table <vxe-table
:data="patientListData" :data="patientListData"
height="100%" height="100%"
show-overflow show-overflow="title"
:style="{ height: '100%' }" :style="{ height: '100%' }"
> >
<vxe-column field="deptNurseName" title="病区" width="127" show-overflow /> <vxe-column field="deptNurseName" title="病区" width="127" show-overflow="title" />
<vxe-column field="bedName" title="床号" width="77" /> <vxe-column field="bedName" title="床号" width="77" />
<vxe-column field="name" title="姓名" width="78" show-overflow /> <vxe-column field="name" title="姓名" width="78" show-overflow="title" />
<vxe-column <vxe-column
field="status" field="status"
title="状态" title="状态"
min-width="108" min-width="108"
show-overflow show-overflow="title"
:formatter="statusFormatter" :formatter="statusFormatter"
> >
</vxe-column> </vxe-column>

View File

@@ -5,7 +5,7 @@
--> -->
<template> <template>
<el-dialog v-model="visible" top="6vh" width="930px" title="患者列表" :z-index="20"> <el-dialog v-model="visible" top="6vh" width="930px" title="患者列表" :z-index="20">
<vxe-table :data="patientList" style="width: 100%;" height="300px" show-overflow> <vxe-table :data="patientList" style="width: 100%;" height="300px" show-overflow="title">
<vxe-column field="deptNurseName" title="病区" width="100"> <vxe-column field="deptNurseName" title="病区" width="100">
</vxe-column> </vxe-column>
<vxe-column field="name" title="姓名" width="80" /> <vxe-column field="name" title="姓名" width="80" />

View File

@@ -33,7 +33,7 @@
</el-space> </el-space>
</div> </div>
<div class="payData-container"> <div class="payData-container">
<vxe-table :data="payData" height="100%" show-overflow <vxe-table :data="payData" height="100%" show-overflow="title"
:style="{ 'border-right': '1px solid #eeeeee', height: '100%' }"> :style="{ 'border-right': '1px solid #eeeeee', height: '100%' }">
<vxe-column field="paywayName" title="缴费方式" width="99" /> <vxe-column field="paywayName" title="缴费方式" width="99" />
<vxe-column field="amount" title="金额" width="117" align="right" header-align="left" /> <vxe-column field="amount" title="金额" width="117" align="right" header-align="left" />

View File

@@ -31,7 +31,7 @@
</el-space> </el-space>
</div> </div>
<div class="table-container"> <div class="table-container">
<vxe-table :data="refundData" height="100%" show-overflow :style="{ height: '100%' }" <vxe-table :data="refundData" height="100%" show-overflow="title" :style="{ height: '100%' }"
v-loading="prePayDataloading" @checkbox-change="selectionChange"> v-loading="prePayDataloading" @checkbox-change="selectionChange">
<vxe-column field="checkStatus" type="checkbox" width="38" header-row-class-name="removeAllSelect" <vxe-column field="checkStatus" type="checkbox" width="38" header-row-class-name="removeAllSelect"
:selectable="selectablejisuna"> :selectable="selectablejisuna">

View File

@@ -116,7 +116,7 @@
<vxe-table <vxe-table
:data="itemSettlementData" :data="itemSettlementData"
height="100%" height="100%"
show-overflow show-overflow="title"
:style="{ 'border-right': '1px solid #eeeeee', height: '100%' }" :style="{ 'border-right': '1px solid #eeeeee', height: '100%' }"
> >
<vxe-column <vxe-column
@@ -166,7 +166,7 @@
:data="reimbursementMethodData" :data="reimbursementMethodData"
style="width: 100%" style="width: 100%"
height="100%" height="100%"
show-overflow show-overflow="title"
> >
<vxe-column <vxe-column
field="nameLeft" field="nameLeft"
@@ -287,7 +287,7 @@
:data="prePayData" :data="prePayData"
style="width: 100%" style="width: 100%"
height="100%" height="100%"
show-overflow show-overflow="title"
> >
<vxe-column <vxe-column
field="paywayName" field="paywayName"

View File

@@ -64,14 +64,14 @@
<vxe-table <vxe-table
:data="patientListData" :data="patientListData"
height="100%" height="100%"
show-overflow show-overflow="title"
:style="{ height: '100%' }" :style="{ height: '100%' }"
> >
<vxe-column <vxe-column
field="deptNurseName" field="deptNurseName"
title="病区" title="病区"
width="127" width="127"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
field="bedName" field="bedName"
@@ -82,13 +82,13 @@
field="name" field="name"
title="姓名" title="姓名"
width="78" width="78"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
field="status" field="status"
title="状态" title="状态"
min-width="108" min-width="108"
show-overflow show-overflow="title"
:formatter="statusFormatter" :formatter="statusFormatter"
/> />
<vxe-column <vxe-column

View File

@@ -40,7 +40,7 @@
style="width: 100%" style="width: 100%"
height="100%" height="100%"
align="center" align="center"
show-overflow show-overflow="title"
> >
<vxe-column <vxe-column
type="checkbox" type="checkbox"

View File

@@ -85,7 +85,7 @@
<el-row :gutter="16" class="settle-table-container"> <el-row :gutter="16" class="settle-table-container">
<el-col :span="12" style="height: 100%"> <el-col :span="12" style="height: 100%">
<vxe-table :data="itemSettlementData" height="100%" show-overflow <vxe-table :data="itemSettlementData" height="100%" show-overflow="title"
:style="{ 'border-right': '1px solid #eeeeee', height: '100%' }"> :style="{ 'border-right': '1px solid #eeeeee', height: '100%' }">
<vxe-column field="nameLeft" title="项目" min-width="100" /> <vxe-column field="nameLeft" title="项目" min-width="100" />
<vxe-column field="costLeft" title="金额" width="121" align="right" header-align="left" /> <vxe-column field="costLeft" title="金额" width="121" align="right" header-align="left" />
@@ -94,7 +94,7 @@
</vxe-table> </vxe-table>
</el-col> </el-col>
<el-col :span="12" style="height: 100%"> <el-col :span="12" style="height: 100%">
<vxe-table :data="reimbursementMethodData" style="width: 100%" height="100%" show-overflow> <vxe-table :data="reimbursementMethodData" style="width: 100%" height="100%" show-overflow="title">
<vxe-column field="nameLeft" title="报销方式" min-width="100" /> <vxe-column field="nameLeft" title="报销方式" min-width="100" />
<vxe-column field="costLeft" title="金额" width="123" align="right" header-align="left" /> <vxe-column field="costLeft" title="金额" width="123" align="right" header-align="left" />
<vxe-column class-name="nameRight" field="nameRight" title="报销方式" min-width="100" /> <vxe-column class-name="nameRight" field="nameRight" title="报销方式" min-width="100" />
@@ -154,7 +154,7 @@
</el-space> </el-space>
</div> </div>
<div class="advancedData-container"> <div class="advancedData-container">
<vxe-table :data="prePayData.prepayList" style="width: 100%" height="100%" show-overflow> <vxe-table :data="prePayData.prepayList" style="width: 100%" height="100%" show-overflow="title">
<vxe-column field="paywayName" title="支付方式" width="147" /> <vxe-column field="paywayName" title="支付方式" width="147" />
<vxe-column field="amount" title="金额" align="right" header-align="left" width="93" /> <vxe-column field="amount" title="金额" align="right" header-align="left" width="93" />
<vxe-column field="remainingAmount" title="可用金额" width="94" align="right" header-align="left" /> <vxe-column field="remainingAmount" title="可用金额" width="94" align="right" header-align="left" />

View File

@@ -19,8 +19,8 @@
<vxe-table :data="tableData" border height="calc(100vh - 300px)" v-loading="loading"> <vxe-table :data="tableData" border height="calc(100vh - 300px)" v-loading="loading">
<vxe-column type="seq" title="序号" width="60" /> <vxe-column type="seq" title="序号" width="60" />
<vxe-column field="name" title="诊断名称" min-width="180" show-overflow /> <vxe-column field="name" title="诊断名称" min-width="180" show-overflow="title" />
<vxe-column field="diagnosisDesc" title="诊断描述" min-width="200" show-overflow /> <vxe-column field="diagnosisDesc" title="诊断描述" min-width="200" show-overflow="title" />
<vxe-column field="classification" title="分类" width="100" /> <vxe-column field="classification" title="分类" width="100" />
<vxe-column field="maindiseFlag" title="主诊断" width="80" align="center"> <vxe-column field="maindiseFlag" title="主诊断" width="80" align="center">
<template #default="{ row }"> <template #default="{ row }">

View File

@@ -10,8 +10,8 @@
</el-input> </el-input>
<vxe-table :data="patientList" border height="calc(100vh - 260px)" :row-config="{ isCurrent: true }" @cell-click="handlePatientClick"> <vxe-table :data="patientList" border height="calc(100vh - 260px)" :row-config="{ isCurrent: true }" @cell-click="handlePatientClick">
<vxe-column field="patientName" title="姓名" width="80" /> <vxe-column field="patientName" title="姓名" width="80" />
<vxe-column field="encounterNo" title="住院号" width="130" show-overflow /> <vxe-column field="encounterNo" title="住院号" width="130" show-overflow="title" />
<vxe-column field="deptName" title="科室" width="100" show-overflow /> <vxe-column field="deptName" title="科室" width="100" show-overflow="title" />
<vxe-column field="bedNo" title="床号" width="50" /> <vxe-column field="bedNo" title="床号" width="50" />
</vxe-table> </vxe-table>
<pagination v-show="patientTotal > 0" v-model:page="pageNo" v-model:limit="pageSize" :total="patientTotal" @pagination="loadPatients" /> <pagination v-show="patientTotal > 0" v-model:page="pageNo" v-model:limit="pageSize" :total="patientTotal" @pagination="loadPatients" />
@@ -29,9 +29,9 @@
<vxe-table :data="feeItems" border height="calc(100vh - 320px)" v-loading="feeLoading" show-footer :footer-data="footerData"> <vxe-table :data="feeItems" border height="calc(100vh - 320px)" v-loading="feeLoading" show-footer :footer-data="footerData">
<vxe-column type="seq" title="序号" width="60" /> <vxe-column type="seq" title="序号" width="60" />
<vxe-column field="itemName" title="项目名称" min-width="180" show-overflow /> <vxe-column field="itemName" title="项目名称" min-width="180" show-overflow="title" />
<vxe-column field="itemType_dictText" title="类型" width="90" /> <vxe-column field="itemType_dictText" title="类型" width="90" />
<vxe-column field="specification" title="规格" width="100" show-overflow /> <vxe-column field="specification" title="规格" width="100" show-overflow="title" />
<vxe-column field="quantity" title="数量" width="70" align="center" /> <vxe-column field="quantity" title="数量" width="70" align="center" />
<vxe-column field="unitPrice" title="单价" width="90" align="right"> <vxe-column field="unitPrice" title="单价" width="90" align="right">
<template #default="{ row }">{{ row.unitPrice ? row.unitPrice.toFixed(2) : '-' }}</template> <template #default="{ row }">{{ row.unitPrice ? row.unitPrice.toFixed(2) : '-' }}</template>

View File

@@ -25,8 +25,8 @@
<vxe-column field="patientName" title="患者姓名" width="100" /> <vxe-column field="patientName" title="患者姓名" width="100" />
<vxe-column field="genderEnum_enumText" title="性别" width="60" /> <vxe-column field="genderEnum_enumText" title="性别" width="60" />
<vxe-column field="age" title="年龄" width="50" /> <vxe-column field="age" title="年龄" width="50" />
<vxe-column field="encounterNo" title="住院号" width="140" show-overflow /> <vxe-column field="encounterNo" title="住院号" width="140" show-overflow="title" />
<vxe-column field="deptName" title="科室" width="120" show-overflow /> <vxe-column field="deptName" title="科室" width="120" show-overflow="title" />
<vxe-column field="bedNo" title="床号" width="60" /> <vxe-column field="bedNo" title="床号" width="60" />
<vxe-column field="admissionDate" title="入院日期" width="120" /> <vxe-column field="admissionDate" title="入院日期" width="120" />
<vxe-column field="dischargeDate" title="出院日期" width="120" /> <vxe-column field="dischargeDate" title="出院日期" width="120" />
@@ -61,9 +61,9 @@
<div class="section-title">费用概览</div> <div class="section-title">费用概览</div>
<vxe-table :data="prescriptionItems" border size="small" max-height="300"> <vxe-table :data="prescriptionItems" border size="small" max-height="300">
<vxe-column type="seq" title="序号" width="60" /> <vxe-column type="seq" title="序号" width="60" />
<vxe-column field="itemName" title="项目名称" min-width="160" show-overflow /> <vxe-column field="itemName" title="项目名称" min-width="160" show-overflow="title" />
<vxe-column field="itemType_dictText" title="类型" width="90" /> <vxe-column field="itemType_dictText" title="类型" width="90" />
<vxe-column field="specification" title="规格" width="100" show-overflow /> <vxe-column field="specification" title="规格" width="100" show-overflow="title" />
<vxe-column field="quantity" title="数量" width="70" /> <vxe-column field="quantity" title="数量" width="70" />
<vxe-column field="unitPrice" title="单价" width="90" align="right"> <vxe-column field="unitPrice" title="单价" width="90" align="right">
<template #default="{ row }">{{ row.unitPrice ? row.unitPrice.toFixed(2) : '-' }}</template> <template #default="{ row }">{{ row.unitPrice ? row.unitPrice.toFixed(2) : '-' }}</template>

View File

@@ -12,8 +12,8 @@
<vxe-column field="patientName" title="姓名" width="80" /> <vxe-column field="patientName" title="姓名" width="80" />
<vxe-column field="genderEnum_enumText" title="性别" width="50" /> <vxe-column field="genderEnum_enumText" title="性别" width="50" />
<vxe-column field="age" title="年龄" width="50" /> <vxe-column field="age" title="年龄" width="50" />
<vxe-column field="encounterNo" title="住院号" width="130" show-overflow /> <vxe-column field="encounterNo" title="住院号" width="130" show-overflow="title" />
<vxe-column field="deptName" title="科室" width="100" show-overflow /> <vxe-column field="deptName" title="科室" width="100" show-overflow="title" />
<vxe-column field="bedNo" title="床号" width="60" /> <vxe-column field="bedNo" title="床号" width="60" />
</vxe-table> </vxe-table>
</el-card> </el-card>
@@ -34,7 +34,7 @@
<vxe-table :data="adviceList" border height="calc(100vh - 360px)" v-loading="adviceLoading"> <vxe-table :data="adviceList" border height="calc(100vh - 360px)" v-loading="adviceLoading">
<vxe-column type="seq" title="序号" width="60" /> <vxe-column type="seq" title="序号" width="60" />
<vxe-column field="adviceContent" title="医嘱内容" min-width="200" show-overflow /> <vxe-column field="adviceContent" title="医嘱内容" min-width="200" show-overflow="title" />
<vxe-column field="adviceType_dictText" title="类型" width="90" /> <vxe-column field="adviceType_dictText" title="类型" width="90" />
<vxe-column field="frequency" title="频次" width="80" /> <vxe-column field="frequency" title="频次" width="80" />
<vxe-column field="dosage" title="剂量" width="80" /> <vxe-column field="dosage" title="剂量" width="80" />

View File

@@ -33,7 +33,7 @@
<vxe-column type="seq" title="序号" width="60" /> <vxe-column type="seq" title="序号" width="60" />
<vxe-column field="patientName" title="患者姓名" width="100" /> <vxe-column field="patientName" title="患者姓名" width="100" />
<vxe-column field="encounterNo" title="住院号" width="140" /> <vxe-column field="encounterNo" title="住院号" width="140" />
<vxe-column field="surgeryName" title="手术名称" min-width="180" show-overflow /> <vxe-column field="surgeryName" title="手术名称" min-width="180" show-overflow="title" />
<vxe-column field="surgeonName" title="手术医生" width="100" /> <vxe-column field="surgeonName" title="手术医生" width="100" />
<vxe-column field="anesthesiologistName" title="麻醉医生" width="100" /> <vxe-column field="anesthesiologistName" title="麻醉医生" width="100" />
<vxe-column field="plannedTime" title="计划时间" width="160" /> <vxe-column field="plannedTime" title="计划时间" width="160" />

View File

@@ -8,7 +8,7 @@
:table-height="400" :table-height="400"
:max-height="400" :max-height="400"
:loading="loading" :loading="loading"
:row-config="{ keyField: 'patientId' }" :row-config="{ keyField: 'adviceDefinitionId' }"
@cell-click="handleRowClick" @cell-click="handleRowClick"
> >
<template #quantity="{ row }"> <template #quantity="{ row }">
@@ -26,15 +26,16 @@
import {computed, nextTick, ref} from 'vue'; import {computed, nextTick, ref} from 'vue';
import {throttle} from 'lodash-es'; import {throttle} from 'lodash-es';
import Table from '@/components/TableLayout/Table.vue'; import Table from '@/components/TableLayout/Table.vue';
// @ts-ignore: api.js 无类型声明
import {getAdviceBaseInfo} from './api'; import {getAdviceBaseInfo} from './api';
import type {TableColumn} from '@/components/types/TableLayout'; import {TableColumn} from '@/components/types/TableLayout';
interface Props { type Props = {
patientInfo: { patientInfo: {
inHospitalOrgId?: string; inHospitalOrgId?: string;
[key: string]: any; [key: string]: any;
}; };
} };
const props = defineProps<Props>(); const props = defineProps<Props>();
@@ -42,13 +43,23 @@ const emit = defineEmits<{
selectAdviceBase: [row: any]; selectAdviceBase: [row: any];
}>(); }>();
interface QueryParams {
pageSize: number;
pageNo: number;
adviceTypes: number[];
searchKey?: string;
organizationId?: string;
categoryCode?: string;
dischargeFlag?: number;
}
const total = ref<number>(0); const total = ref<number>(0);
const loading = ref<boolean>(false); const loading = ref<boolean>(false);
const adviceBaseRef = ref<InstanceType<typeof Table> | null>(null); const adviceBaseRef = ref<InstanceType<typeof Table> | null>(null);
const tableWrapper = ref<HTMLDivElement | null>(null); const tableWrapper = ref<HTMLDivElement | null>(null);
const currentIndex = ref<number>(0); const currentIndex = ref<number>(0);
const currentSelectRow = ref<any>({}); const currentSelectRow = ref<any>({});
const queryParams = ref({ const queryParams = ref<QueryParams>({
pageSize: 30, pageSize: 30,
pageNo: 1, pageNo: 1,
adviceTypes: [1, 2, 3, 6], adviceTypes: [1, 2, 3, 6],
@@ -86,6 +97,9 @@ const tableColumns = computed<TableColumn[]>(() => [
* @param searchKey 搜索关键词 * @param searchKey 搜索关键词
*/ */
function refresh(adviceType: any, categoryCode: string, searchKey: string) { function refresh(adviceType: any, categoryCode: string, searchKey: string) {
// 每次刷新时重置选中状态,防止上次选中的药品在新列表中残留
currentIndex.value = 0;
currentSelectRow.value = {};
// 有搜索词时跨类型搜索,避免用户输入"级护理"但因当前adviceType为药品而搜不到诊疗类护理项目 // 有搜索词时跨类型搜索,避免用户输入"级护理"但因当前adviceType为药品而搜不到诊疗类护理项目
if (searchKey) { if (searchKey) {
queryParams.value.adviceTypes = [1, 2, 3, 6]; queryParams.value.adviceTypes = [1, 2, 3, 6];
@@ -118,7 +132,7 @@ function getList() {
} }
getAdviceBaseInfo(queryParams.value) getAdviceBaseInfo(queryParams.value)
.then((res) => { .then((res: any) => {
const records = res.data?.records || []; const records = res.data?.records || [];
// 药品/耗材需要有库存才显示,诊疗/手术直接显示 // 药品/耗材需要有库存才显示,诊疗/手术直接显示
@@ -144,7 +158,7 @@ function getList() {
} }
}); });
}) })
.catch((err) => { .catch((err: any) => {
console.warn('医嘱基础信息加载失败:', err); console.warn('医嘱基础信息加载失败:', err);
adviceBaseList.value = []; adviceBaseList.value = [];
}) })

View File

@@ -6,7 +6,7 @@
新增 新增
</el-button> </el-button>
<el-button type="primary" @click="handleSaveBatch()" :disabled="false"> 保存 </el-button> <el-button type="primary" @click="handleSaveBatch()" :disabled="false"> 保存 </el-button>
<el-button type="primary" @click="handleSave()" :disabled="isSaveDisabled"> 签发 </el-button> <el-button type="primary" :loading="loading || isSaving" :disabled="isSaveDisabled || loading || isSaving" @click="handleSave()"> 签发 </el-button>
<el-button type="warning" plain @click="handleSingOut()" :disabled="false"> <el-button type="warning" plain @click="handleSingOut()" :disabled="false">
撤回 撤回
</el-button> </el-button>
@@ -174,6 +174,11 @@
:disabled="!isCategoryLoaded" :disabled="!isCategoryLoaded"
@change=" @change="
(value) => { (value) => {
// 切换类型时强制收起编辑区,防止残留字段(如药品→诊疗时 dose/rateCode 未清理)
// 注意:模板内联表达式中 ref 自动解包expandOrder 即数组,不要加 .value
if (expandOrder.length > 0) {
collapseAllExpanded();
}
filterPrescriptionList[scope.rowIndex].adviceName = undefined; filterPrescriptionList[scope.rowIndex].adviceName = undefined;
// 根据选中的医嘱类型,设置对应的 categoryCode // 根据选中的医嘱类型,设置对应的 categoryCode
const selectedItem = adviceTypeList.find(item => item.value === value); const selectedItem = adviceTypeList.find(item => item.value === value);
@@ -196,7 +201,7 @@
searchKey: adviceQueryParams.value?.searchKey || '', searchKey: adviceQueryParams.value?.searchKey || '',
}; };
// 直接调用子组件 refresh 方法,立即刷新列表(用 scope.rowIndex 找到当前行的子组件) // 直接调用子组件 refresh 方法,立即刷新列表(用 scope.rowIndex 找到当前行的子组件)
const tableRef = Array.isArray(adviceTableRef.value) ? adviceTableRef.value[scope.rowIndex] : adviceTableRef.value; const tableRef = getAdviceTableRef();
if (tableRef && tableRef.refresh) { if (tableRef && tableRef.refresh) {
tableRef.refresh(newAdviceType, newCategoryCode, ''); tableRef.refresh(newAdviceType, newCategoryCode, '');
} }
@@ -221,7 +226,7 @@
popper-class="order-advice-popper" popper-class="order-advice-popper"
:offset="0" :offset="0"
:visible="scope.row.showPopover" :visible="scope.row.showPopover"
:width="1200" :width="advicePopperWidth"
:teleported="true" :teleported="true"
:popper-options="advicePopperOptions" :popper-options="advicePopperOptions"
> >
@@ -246,7 +251,7 @@
if (['ArrowUp', 'ArrowDown', 'Enter'].includes(e.key)) { if (['ArrowUp', 'ArrowDown', 'Enter'].includes(e.key)) {
e.preventDefault(); e.preventDefault();
// 传递事件到弹窗容器 // 传递事件到弹窗容器
const tableRef = Array.isArray(adviceTableRef.value) ? adviceTableRef.value[scope.rowIndex] : adviceTableRef.value; const tableRef = getAdviceTableRef();
if (tableRef && tableRef.handleKeyDown) tableRef.handleKeyDown(e); if (tableRef && tableRef.handleKeyDown) tableRef.handleKeyDown(e);
} }
} }
@@ -461,7 +466,7 @@ import {
} from '../api'; } from '../api';
import adviceBaseList from '../adviceBaseList'; import adviceBaseList from '../adviceBaseList';
import {calculateQuantityByDays} from '@/utils/his'; import {calculateQuantityByDays} from '@/utils/his';
import {localPatientInfo as patientInfo} from '../../store/localPatient.js'; import {localPatientInfo as localPatient} from '../../store/localPatient.js';
import OrderGroupDrawer from '@/views/doctorstation/components/prescription/orderGroupDrawer.vue'; import OrderGroupDrawer from '@/views/doctorstation/components/prescription/orderGroupDrawer.vue';
import PrescriptionHistory from '@/views/doctorstation/components/prescription/prescriptionHistory.vue'; import PrescriptionHistory from '@/views/doctorstation/components/prescription/prescriptionHistory.vue';
import Decimal from 'decimal.js'; import Decimal from 'decimal.js';
@@ -492,7 +497,7 @@ const groupIndexList = ref([]);
const diagnosisList = ref([]); const diagnosisList = ref([]);
const nextId = ref(1); const nextId = ref(1);
const unitCodeList = ref([]); const unitCodeList = ref([]);
const adviceTableRef = ref([]); const adviceTableRef = ref(null);
const organization = ref([]); const organization = ref([]);
const conditionDefinitionId = ref(''); const conditionDefinitionId = ref('');
const encounterDiagnosisId = ref(''); const encounterDiagnosisId = ref('');
@@ -505,6 +510,11 @@ const popoverJustClosedByKey = ref(null);
// 医嘱检索下拉浮框对齐:跟踪表格水平滚动偏移与主体区域边界限制 // 医嘱检索下拉浮框对齐:跟踪表格水平滚动偏移与主体区域边界限制
const tableScrollLeft = ref(0); const tableScrollLeft = ref(0);
const mainBoundary = ref(null); const mainBoundary = ref(null);
const advicePopperWidth = computed(() => {
// 取主体区域宽度与 900px 中较小值,避免小屏幕溢出;下限 500px
const mainWidth = mainBoundary.value?.clientWidth || window.innerWidth - 300;
return Math.max(500, Math.min(mainWidth - 24, 900));
});
const advicePopperStyle = computed(() => ({ const advicePopperStyle = computed(() => ({
padding: '0', padding: '0',
marginLeft: `-${tableScrollLeft.value}px`, marginLeft: `-${tableScrollLeft.value}px`,
@@ -549,10 +559,10 @@ const unitMap = ref({
unit: 'unit', unit: 'unit',
}); });
const buttonDisabled = computed(() => { const buttonDisabled = computed(() => {
return !patientInfo.value; return !localPatient.value;
}); });
const isSaveDisabled = computed(() => { const isSaveDisabled = computed(() => {
return !patientInfo.value || prescriptionList.value.length === 0; return !localPatient.value || prescriptionList.value.length === 0;
}); });
const props = defineProps({ const props = defineProps({
patientInfo: { patientInfo: {
@@ -763,7 +773,7 @@ function getListInfo(addNewRow) {
const orgTreePromise = getOrgTree().then((res) => { const orgTreePromise = getOrgTree().then((res) => {
organization.value = res?.data?.records ?? res?.data ?? []; organization.value = res?.data?.records ?? res?.data ?? [];
}); });
getPrescriptionList(patientInfo.value.encounterId).then((res) => { getPrescriptionList(localPatient.value.encounterId).then((res) => {
// 等待科室树加载完成后再处理处方数据,确保 resolveOrgId 能正确匹配 // 等待科室树加载完成后再处理处方数据,确保 resolveOrgId 能正确匹配
orgTreePromise.then(() => { orgTreePromise.then(() => {
loading.value = false; loading.value = false;
@@ -830,10 +840,10 @@ function getListInfo(addNewRow) {
} }
}); });
}).catch(() => { loading.value = false; }); }).catch(() => { loading.value = false; });
getContract({ encounterId: patientInfo.value.encounterId }).then((res) => { getContract({ encounterId: localPatient.value.encounterId }).then((res) => {
contractList.value = res.data; contractList.value = res.data;
}); });
accountId.value = patientInfo.value.accountId; accountId.value = localPatient.value.accountId;
// 加载已配置的药品类别 // 加载已配置的药品类别
loadConfiguredCategories(); loadConfiguredCategories();
@@ -843,7 +853,7 @@ function getListInfo(addNewRow) {
* 加载已配置的药品类别 * 加载已配置的药品类别
*/ */
function loadConfiguredCategories() { function loadConfiguredCategories() {
const orgId = patientInfo.value?.inHospitalOrgId; const orgId = localPatient.value?.inHospitalOrgId;
if (!orgId) { if (!orgId) {
isCategoryLoaded.value = true; // 标记已加载即使没有科室ID isCategoryLoaded.value = true; // 标记已加载即使没有科室ID
return; return;
@@ -917,7 +927,7 @@ const filterPrescriptionList = computed(() => {
}); });
function getDiagnosisInfo() { function getDiagnosisInfo() {
getEncounterDiagnosis(patientInfo.value.encounterId).then((res) => { getEncounterDiagnosis(localPatient.value.encounterId).then((res) => {
diagnosisList.value = res.data; diagnosisList.value = res.data;
let diagnosisInfo = diagnosisList.value.filter((item) => { let diagnosisInfo = diagnosisList.value.filter((item) => {
return item.maindiseFlag == 1; return item.maindiseFlag == 1;
@@ -937,6 +947,7 @@ function getRowDisabled(row) {
/** /**
* 将行的 adviceType + categoryCode 映射为 el-select 的选中值 * 将行的 adviceType + categoryCode 映射为 el-select 的选中值
* 药品子分类使用复合值如 '1-2'adviceType-categoryCode诊疗/手术/全部使用原始值 * 药品子分类使用复合值如 '1-2'adviceType-categoryCode诊疗/手术/全部使用原始值
* 注意el-select 使用严格匹配,返回值类型需与 adviceTypeList option value 一致
*/ */
function getRowSelectValue(row) { function getRowSelectValue(row) {
if (row.adviceType == 1 && row.categoryCode) { if (row.adviceType == 1 && row.categoryCode) {
@@ -945,13 +956,17 @@ function getRowSelectValue(row) {
if (row.adviceType == 7) { if (row.adviceType == 7) {
return 7; return 7;
} }
// adviceType == 1 但没有 categoryCode 时无匹配项,返回 undefined 让 select 显示空
if (row.adviceType == 1) {
return undefined;
}
return row.adviceType; return row.adviceType;
} }
// 新增医嘱 // 新增医嘱
function handleAddPrescription() { function handleAddPrescription() {
// 校验是否选中患者 // 校验是否选中患者
if (!patientInfo.value || !patientInfo.value.encounterId) { if (!localPatient.value || !localPatient.value.encounterId) {
proxy.$modal.msgWarning('请先选择患者'); proxy.$modal.msgWarning('请先选择患者');
return; return;
} }
@@ -1002,9 +1017,9 @@ function checkUnit(item, row) {
* @returns {boolean} true=通过, false=不通过 * @returns {boolean} true=通过, false=不通过
*/ */
function validateStartTime(startTime) { function validateStartTime(startTime) {
if (!startTime || !patientInfo.value?.inHospitalTime) return true; if (!startTime || !localPatient.value?.inHospitalTime) return true;
const startDate = new Date(startTime); const startDate = new Date(startTime);
const inHospitalDate = new Date(patientInfo.value.inHospitalTime); const inHospitalDate = new Date(localPatient.value.inHospitalTime);
if (startDate < inHospitalDate) { if (startDate < inHospitalDate) {
const pad = (n) => String(n).padStart(2, '0'); const pad = (n) => String(n).padStart(2, '0');
const d = inHospitalDate; const d = inHospitalDate;
@@ -1168,25 +1183,40 @@ function handleFocus(row, index) {
return; return;
} }
row.showPopover = true; row.showPopover = true;
// Bug #555: handleFocus 初始化查询参数并加载初始数据searchKey 为空,无竞态风险 // 初始化查询参数searchKey 使用当前输入框已有文本,避免 @input 二次触发导致竞态
let categoryCode = ''; const searchKey = row.adviceName || '';
if (row.adviceType !== undefined) { adviceQueryParams.value = { adviceType, categoryCode: resolveCategoryCode(row, adviceType), searchKey };
const selectValue = (adviceType == 1 && row.categoryCode) ? '1-' + row.categoryCode : adviceType; const tableRef = getAdviceTableRef();
const selectedItem = adviceTypeList.value.find(item => item.value === selectValue) || adviceTypeList.value.find(item => item.adviceType === adviceType);
categoryCode = selectedItem ? selectedItem.categoryCode : (row.categoryCode || '');
}
adviceQueryParams.value = { adviceType, categoryCode, searchKey: '' };
// 弹窗首次打开时加载初始数据
const tableRef = Array.isArray(adviceTableRef.value) ? adviceTableRef.value[index] : adviceTableRef.value;
if (tableRef && tableRef.refresh) { if (tableRef && tableRef.refresh) {
tableRef.refresh(adviceType, categoryCode, ''); tableRef.refresh(adviceType, adviceQueryParams.value.categoryCode, searchKey);
} }
} }
/** 从行数据和 adviceType 解析 categoryCode */
function resolveCategoryCode(row, adviceType) {
if (row.adviceType !== undefined) {
const selectValue = (adviceType == 1 && row.categoryCode) ? '1-' + row.categoryCode : adviceType;
const selectedItem = adviceTypeList.value.find(item => item.value === selectValue) || adviceTypeList.value.find(item => item.adviceType === adviceType);
return selectedItem ? selectedItem.categoryCode : (row.categoryCode || '');
}
return '';
}
/** 获取 adviceTableRef单实例不在 v-for 中) */
function getAdviceTableRef() {
return adviceTableRef.value;
}
function handleBlur(row) { function handleBlur(row) {
row.showPopover = false; // 延迟关闭弹窗,等待 click 事件在弹出层内容上正常触发
// Bug #587: 标记弹窗刚关闭,防止点击空白处时触发行展开 // 原因:浏览器 blur 事件先于 click 触发;同步关闭会移除 DOM导致 click 丢失
popoverJustClosedByKey.value = row.uniqueKey; // 如果用户在弹出层内点击药品行selectAdviceBase 会在 150ms 内设 showPopover=false
// 此处的赋值变为 no-opfalse→false弹窗正常关闭且数据正确填充
setTimeout(() => {
row.showPopover = false;
// Bug #587: 标记弹窗刚关闭,防止点击空白处时触发行展开
popoverJustClosedByKey.value = row.uniqueKey;
}, 150);
} }
function handleChange(value, row, index) { function handleChange(value, row, index) {
@@ -1197,21 +1227,13 @@ function handleChange(value, row, index) {
return; return;
} }
adviceQueryParams.value.searchKey = value; adviceQueryParams.value.searchKey = value;
// @focus 已先于 @input 执行rowIndex 必定有效
// popover 被 blur 关闭后,用户继续输入时自行打开 // popover 被 blur 关闭后,用户继续输入时自行打开
if (!row.showPopover) { if (!row.showPopover) {
row.showPopover = true; row.showPopover = true;
} }
const tableRef = Array.isArray(adviceTableRef.value) ? adviceTableRef.value[index] : adviceTableRef.value; const tableRef = getAdviceTableRef();
if (tableRef && tableRef.refresh) { if (tableRef && tableRef.refresh) {
const adviceType = row?.adviceType !== undefined ? row.adviceType : adviceQueryParams.value.adviceType; tableRef.refresh(adviceType, resolveCategoryCode(row, adviceType), value);
let categoryCode = '';
if (row?.adviceType !== undefined) {
const selectValue = (adviceType == 1 && row?.categoryCode) ? '1-' + row.categoryCode : adviceType;
const selectedItem = adviceTypeList.value.find(item => item.value === selectValue) || adviceTypeList.value.find(item => item.adviceType === adviceType);
categoryCode = selectedItem ? selectedItem.categoryCode : (adviceQueryParams.value.categoryCode || '');
}
tableRef.refresh(adviceType, categoryCode, value);
} }
} }
@@ -1279,9 +1301,10 @@ function selectAdviceBase(key, row) {
prescriptionList.value[rowIndex.value].skinTestFlag = 1; prescriptionList.value[rowIndex.value].skinTestFlag = 1;
prescriptionList.value[rowIndex.value].skinTestFlag_enumText = '是'; prescriptionList.value[rowIndex.value].skinTestFlag_enumText = '是';
expandOrder.value = [currentUniqueKey]; expandOrder.value = [currentUniqueKey];
const expandRow = filterPrescriptionList.value.find(item => item.uniqueKey === currentUniqueKey); // 使用 prescriptionList 而非 filterPrescriptionList避免过滤后找不到行导致展开失败
if (expandRow && prescriptionRef.value?.setRowExpand) { const rowObj = prescriptionList.value.find(item => item.uniqueKey === currentUniqueKey);
prescriptionRef.value.setRowExpand([expandRow], true); if (rowObj && prescriptionRef.value?.setRowExpand) {
prescriptionRef.value.setRowExpand([rowObj], true);
} }
expandOrderAndFocus(currentUniqueKey, row); expandOrderAndFocus(currentUniqueKey, row);
}) })
@@ -1290,17 +1313,18 @@ function selectAdviceBase(key, row) {
prescriptionList.value[rowIndex.value].skinTestFlag = 0; prescriptionList.value[rowIndex.value].skinTestFlag = 0;
prescriptionList.value[rowIndex.value].skinTestFlag_enumText = '否'; prescriptionList.value[rowIndex.value].skinTestFlag_enumText = '否';
expandOrder.value = [currentUniqueKey]; expandOrder.value = [currentUniqueKey];
const expandRow = filterPrescriptionList.value.find(item => item.uniqueKey === currentUniqueKey); // 使用 prescriptionList 而非 filterPrescriptionList避免过滤后找不到行导致展开失败
if (expandRow && prescriptionRef.value?.setRowExpand) { const rowObj = prescriptionList.value.find(item => item.uniqueKey === currentUniqueKey);
prescriptionRef.value.setRowExpand([expandRow], true); if (rowObj && prescriptionRef.value?.setRowExpand) {
prescriptionRef.value.setRowExpand([rowObj], true);
} }
expandOrderAndFocus(currentUniqueKey, row); expandOrderAndFocus(currentUniqueKey, row);
}); });
} else { } else {
// 选完药品后展开编辑区域,供医生编辑剂量等字段 // 选完药品后展开编辑区域,供医生编辑剂量等字段
expandOrder.value = [currentUniqueKey]; expandOrder.value = [currentUniqueKey];
// 直接调 vxe-table 实例方法展开expandRowKeys 仅在初始化时生效) // 使用 prescriptionList 而非 filterPrescriptionList避免过滤后找不到行导致展开失败
const rowObj = filterPrescriptionList.value.find(item => item.uniqueKey === currentUniqueKey); const rowObj = prescriptionList.value.find(item => item.uniqueKey === currentUniqueKey);
if (rowObj && prescriptionRef.value?.setRowExpand) { if (rowObj && prescriptionRef.value?.setRowExpand) {
prescriptionRef.value.setRowExpand([rowObj], true); prescriptionRef.value.setRowExpand([rowObj], true);
} }
@@ -1539,9 +1563,9 @@ function handleSave() {
// 签发处理逻辑 // 签发处理逻辑
function executeSaveLogic() { function executeSaveLogic() {
saveList.forEach((item) => { saveList.forEach((item) => {
item.patientId = patientInfo.value.patientId; item.patientId = localPatient.value.patientId;
item.encounterId = patientInfo.value.encounterId; item.encounterId = localPatient.value.encounterId;
item.accountId = patientInfo.value.accountId; item.accountId = localPatient.value.accountId;
item.dbOpType = '1'; item.dbOpType = '1';
// Bug #589: 出院带药保存时转为药品类型 // Bug #589: 出院带药保存时转为药品类型
if (item.adviceType == 7) { if (item.adviceType == 7) {
@@ -1570,17 +1594,19 @@ function handleSave() {
// 保存签发按钮 // 保存签发按钮
isSaving.value = true; isSaving.value = true;
console.log('签发处方参数:', { console.log('签发处方参数:', {
organizationId: patientInfo.value.inHospitalOrgId, organizationId: localPatient.value.inHospitalOrgId,
adviceSaveList: list, adviceSaveList: list,
}); });
savePrescriptionSign({ savePrescriptionSign({
organizationId: patientInfo.value.inHospitalOrgId, organizationId: localPatient.value.inHospitalOrgId,
regAdviceSaveList: list, regAdviceSaveList: list,
}) })
.then((res) => { .then((res) => {
if (res.code === 200) { if (res.code === 200) {
proxy.$modal.msgSuccess('签发成功'); proxy.$modal.msgSuccess('签发成功');
isSaving.value = false; isSaving.value = false;
// 清除勾选状态
prescriptionRef.value?.clearCheckboxRow();
getListInfo(false); getListInfo(false);
bindMethod.value = {}; bindMethod.value = {};
nextId.value == 1; nextId.value == 1;
@@ -1636,8 +1662,8 @@ function handleOrderBindInfo(bindIdInfo) {
const newRow = { const newRow = {
...prescriptionList.value[rowIndex.value], ...prescriptionList.value[rowIndex.value],
uniqueKey: nextId.value++, uniqueKey: nextId.value++,
patientId: patientInfo.value.patientId, patientId: localPatient.value.patientId,
encounterId: patientInfo.value.encounterId, encounterId: localPatient.value.encounterId,
accountId: accountId.value, accountId: accountId.value,
quantity: item.quantity, quantity: item.quantity,
methodCode: item.methodCode, methodCode: item.methodCode,
@@ -1742,8 +1768,8 @@ function handleSaveSign(row, index) {
// 执行保存 // 执行保存
row.contentJson = undefined; row.contentJson = undefined;
row.patientId = patientInfo.value.patientId; row.patientId = localPatient.value.patientId;
row.encounterId = patientInfo.value.encounterId; row.encounterId = localPatient.value.encounterId;
row.accountId = accountId.value; row.accountId = accountId.value;
// 🔧 文字医嘱(type=8)跳过计费逻辑总金额为0 // 🔧 文字医嘱(type=8)跳过计费逻辑总金额为0
@@ -1867,6 +1893,11 @@ function handleSaveBatch() {
const therapyEnum = item.therapyEnum || '1'; const therapyEnum = item.therapyEnum || '1';
const result = { const result = {
...item, ...item,
// 确保 patientId/encounterId/accountId 始终存在,防止新增行未保存时这些字段为 null
// (新增行由 handleAddPrescription 创建时不携带患者信息,与其他保存路径保持一致)
patientId: item.patientId || localPatient.value?.patientId,
encounterId: item.encounterId || localPatient.value?.encounterId,
accountId: item.accountId || accountId.value,
therapyEnum: therapyEnum, therapyEnum: therapyEnum,
dbOpType: item.requestId ? '2' : '1', dbOpType: item.requestId ? '2' : '1',
// 确保 skinTestFlag 是数字类型1 或 0 // 确保 skinTestFlag 是数字类型1 或 0
@@ -1992,15 +2023,17 @@ function setValue(row) {
// 2. 诊疗类型优先使用项目维护的所属科室(row.orgId)其次positionId // 2. 诊疗类型优先使用项目维护的所属科室(row.orgId)其次positionId
// 3. 如果都为空,回退到患者当前所在科室(patientInfo.orgId) // 3. 如果都为空,回退到患者当前所在科室(patientInfo.orgId)
// 4. 使用 resolveOrgId 从组织树中匹配正确的 String id解决大 Long 精度丢失问题 // 4. 使用 resolveOrgId 从组织树中匹配正确的 String id解决大 Long 精度丢失问题
orgId: row.adviceType != 3 ? undefined : (resolveOrgId(row.orgId || row.positionId || patientInfo.value?.inHospitalOrgId) || ''), orgId: row.adviceType != 3 ? undefined : (resolveOrgId(row.orgId || row.positionId || localPatient.value?.inHospitalOrgId) || ''),
// 🔧 修复:同时保存 orgName当 orgId 在科室树中匹配不到时作为兜底显示 // 🔧 修复:同时保存 orgName当 orgId 在科室树中匹配不到时作为兜底显示
orgName: row.adviceType != 3 ? undefined : (findOrgName(row.orgId || row.positionId || patientInfo.value?.inHospitalOrgId) || row.orgName || patientInfo.value?.inHospitalOrgName || ''), orgName: row.adviceType != 3 ? undefined : (findOrgName(row.orgId || row.positionId || localPatient.value?.inHospitalOrgId) || row.orgName || localPatient.value?.inHospitalOrgName || ''),
// dose: undefined, Removed to preserve dose value from group package // dose: undefined, Removed to preserve dose value from group package
unitCodeList: unitCodeList.value, unitCodeList: unitCodeList.value,
doseUnitCode: row.doseUnitCode, doseUnitCode: row.doseUnitCode,
minUnitCode: String(row.minUnitCode), minUnitCode: String(row.minUnitCode),
unitCode: row.partAttributeEnum == 1 ? String(row.minUnitCode) : String(row.unitCode), unitCode: row.partAttributeEnum == 1 ? String(row.minUnitCode) : String(row.unitCode),
categoryEnum: row.categoryCode, // 显式保留 categoryCode防止 API 未返回时类型下拉框显示空白
categoryCode: row.categoryCode || baseRow.categoryCode || prevRow.categoryCode || '',
categoryEnum: row.categoryCode || baseRow.categoryCode || prevRow.categoryEnum || '',
// 确保 skinTestFlag 是数字类型1 或 0如果未定义则默认为 0 // 确保 skinTestFlag 是数字类型1 或 0如果未定义则默认为 0
skinTestFlag: row.skinTestFlag !== undefined && row.skinTestFlag !== null skinTestFlag: row.skinTestFlag !== undefined && row.skinTestFlag !== null
? (typeof row.skinTestFlag === 'number' ? row.skinTestFlag : (row.skinTestFlag ? 1 : 0)) ? (typeof row.skinTestFlag === 'number' ? row.skinTestFlag : (row.skinTestFlag ? 1 : 0))
@@ -2100,8 +2133,8 @@ function handleSaveGroup(orderGroupList) {
...prescriptionList.value[tempIndex], ...prescriptionList.value[tempIndex],
requesterId_dictText: userStore.nickName, requesterId_dictText: userStore.nickName,
requesterId: userStore.id, requesterId: userStore.id,
patientId: patientInfo.value.patientId, patientId: localPatient.value.patientId,
encounterId: patientInfo.value.encounterId, encounterId: localPatient.value.encounterId,
accountId: accountId.value, accountId: accountId.value,
// 🔧 修复 Bug #403从 mergedDetail 读取明细字段,而非直接从 item 取 // 🔧 修复 Bug #403从 mergedDetail 读取明细字段,而非直接从 item 取
// item.dose 等字段可能为 nullmergedDetail 已做 ?? 兜底 // item.dose 等字段可能为 nullmergedDetail 已做 ?? 兜底
@@ -2115,9 +2148,9 @@ function handleSaveGroup(orderGroupList) {
unitCode: mergedDetail.unitCode ?? item.unitCode, unitCode: mergedDetail.unitCode ?? item.unitCode,
unitCode_dictText: item.unitCodeName || mergedDetail.unitCodeName || '', unitCode_dictText: item.unitCodeName || mergedDetail.unitCodeName || '',
statusEnum: 1, statusEnum: 1,
orgId: resolveOrgId(mergedDetail.orgId || patientInfo.value?.inHospitalOrgId) || '', orgId: resolveOrgId(mergedDetail.orgId || localPatient.value?.inHospitalOrgId) || '',
// 🔧 修复:同时存储 orgName确保树匹配不到时仍有中文名称可显示 // 🔧 修复:同时存储 orgName确保树匹配不到时仍有中文名称可显示
orgName: findOrgName(mergedDetail.orgId || patientInfo.value?.inHospitalOrgId) || mergedDetail.orgName || patientInfo.value?.inHospitalOrgName || '', orgName: findOrgName(mergedDetail.orgId || localPatient.value?.inHospitalOrgId) || mergedDetail.orgName || localPatient.value?.inHospitalOrgName || '',
startTime: mergedDetail.startTime || defaultStartTimeFn(), startTime: mergedDetail.startTime || defaultStartTimeFn(),
dbOpType: prescriptionList.value[tempIndex].requestId ? '2' : '1', dbOpType: prescriptionList.value[tempIndex].requestId ? '2' : '1',
conditionId: conditionId.value, conditionId: conditionId.value,
@@ -2161,8 +2194,8 @@ function handleSaveHistory(value) {
...value, ...value,
requesterId_dictText: userStore.nickName, requesterId_dictText: userStore.nickName,
requesterId: userStore.id, requesterId: userStore.id,
patientId: patientInfo.value.patientId, patientId: localPatient.value.patientId,
encounterId: patientInfo.value.encounterId, encounterId: localPatient.value.encounterId,
accountId: accountId.value, accountId: accountId.value,
uniqueKey: undefined, uniqueKey: undefined,
startTime: defaultStartTimeFn(), startTime: defaultStartTimeFn(),
@@ -2386,9 +2419,9 @@ function confirmStopAdvice() {
return; return;
} }
// 校验:停嘱时间不能早于患者入院时间 // 校验:停嘱时间不能早于患者入院时间
if (patientInfo.value?.inHospitalTime) { if (localPatient.value?.inHospitalTime) {
const stopDate = new Date(stopForm.stopTime); const stopDate = new Date(stopForm.stopTime);
const inHospitalDate = new Date(patientInfo.value.inHospitalTime); const inHospitalDate = new Date(localPatient.value.inHospitalTime);
if (stopDate < inHospitalDate) { if (stopDate < inHospitalDate) {
const pad = (n) => String(n).padStart(2, '0'); const pad = (n) => String(n).padStart(2, '0');
const d = inHospitalDate; const d = inHospitalDate;
@@ -2903,7 +2936,7 @@ function sortPrescriptionList() {
} }
function handleLeaveHospital() { function handleLeaveHospital() {
if (!patientInfo.value) { if (!localPatient.value) {
proxy.$modal.msgWarning('请先选择患者'); proxy.$modal.msgWarning('请先选择患者');
return; return;
} }
@@ -3053,7 +3086,7 @@ defineExpose({ getListInfo, getDiagnosisInfo });
.inpatientDoctor-order-table { .inpatientDoctor-order-table {
flex: auto; flex: auto;
width: 100%; width: 100%;
min-height: 0; min-height: 300px;
overflow: auto; overflow: auto;
} }
.applicationForm-bottom-btn { .applicationForm-bottom-btn {

View File

@@ -398,7 +398,7 @@
<vxe-column <vxe-column
title="组套名称" title="组套名称"
min-width="180" min-width="180"
show-overflow show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
{{ scope.row.name || scope.row.Name || '' }} {{ scope.row.name || scope.row.Name || '' }}

View File

@@ -9,7 +9,7 @@
:row-config="{ keyField: 'id' }" :row-config="{ keyField: 'id' }"
style="width: 100%; height: 100%" style="width: 100%; height: 100%"
:show-header="false" :show-header="false"
show-overflow show-overflow="title"
@checkbox-change="handleSelectionChange" @checkbox-change="handleSelectionChange"
> >
<vxe-column <vxe-column

View File

@@ -8,7 +8,7 @@
:data="medicalOrderListData" :data="medicalOrderListData"
:row-config="{ keyField: 'id' }" :row-config="{ keyField: 'id' }"
style="width: 100%; height: 100%" style="width: 100%; height: 100%"
show-overflow show-overflow="title"
> >
<vxe-column <vxe-column
title="类型" title="类型"

View File

@@ -9,7 +9,7 @@
:row-config="{ keyField: 'id' }" :row-config="{ keyField: 'id' }"
style="width: 100%; height: 100%" style="width: 100%; height: 100%"
:show-header="false" :show-header="false"
show-overflow show-overflow="title"
@checkbox-change="handleSelectionChange" @checkbox-change="handleSelectionChange"
> >
<vxe-column <vxe-column

View File

@@ -115,7 +115,7 @@
style="width: 100%; height: 100%" style="width: 100%; height: 100%"
border border
:span-method="arraySpanMethod" :span-method="arraySpanMethod"
show-overflow show-overflow="title"
> >
<vxe-column type="checkbox" /> <vxe-column type="checkbox" />
<vxe-column <vxe-column
@@ -229,7 +229,7 @@
style="width: 100%; height: 100%" style="width: 100%; height: 100%"
border border
:span-method="arraySpanMethod" :span-method="arraySpanMethod"
show-overflow show-overflow="title"
> >
<vxe-column type="checkbox" /> <vxe-column type="checkbox" />
<vxe-column <vxe-column

View File

@@ -45,7 +45,7 @@
:data="bedList" :data="bedList"
:row-config="{ keyField: 'locationId' }" :row-config="{ keyField: 'locationId' }"
style="width: 100%; height: 100%" style="width: 100%; height: 100%"
show-overflow show-overflow="title"
max-height="400px" max-height="400px"
@cell-click="selectBed" @cell-click="selectBed"
> >

View File

@@ -101,7 +101,7 @@
:data="patientData" :data="patientData"
:row-config="{ keyField: 'id' }" :row-config="{ keyField: 'id' }"
style="width: 100%; height: 100%" style="width: 100%; height: 100%"
show-overflow show-overflow="title"
max-height="800px" max-height="800px"
@cell-dblclick="openPatientDetailDialog" @cell-dblclick="openPatientDetailDialog"
> >

View File

@@ -451,6 +451,17 @@ function handleGetPrescription(skipAutoSelectAll = false) {
.map((x) => x.trim()) .map((x) => x.trim())
.filter((x) => x !== '') .filter((x) => x !== '')
.map((x) => normalizeDayTimeHm(x)); .map((x) => normalizeDayTimeHm(x));
// 如果频次表(adm_frequency)中 day_times 为空,降级使用 executeNum 生成默认时间点
// 避免长期医嘱因缺失 dayTimes 被静默过滤(不显示在待执行列表)
if (!rate || rate.length === 0) {
const execCount = prescription.executeNum || 1;
// 生成默认时间点:从 08:00 开始,按 executeNum 均分到 20:00
rate = Array.from({ length: execCount }, (_, i) => {
const h = 8 + Math.floor((12 / execCount) * i);
const m = Math.round(((12 / execCount) * i) % 1 * 60);
return `${String(h).padStart(2, '0')}:${String(m).padStart(2, '0')}`;
});
}
// 用截止时间和医嘱签发时间算出全部执行日期 // 用截止时间和医嘱签发时间算出全部执行日期
times = getDateRange(prescription.requestTime, deadline.value); times = getDateRange(prescription.requestTime, deadline.value);
} else { } else {

View File

@@ -63,9 +63,10 @@
</template> </template>
<script setup> <script setup>
import {getCurrentInstance, ref, nextTick, provide} from 'vue'; import {getCurrentInstance, ref, nextTick, provide, watch, onActivated} from 'vue';
import PatientList from '../components/patientList.vue'; import PatientList from '../components/patientList.vue';
import PrescriptionList from './components/prescriptionList.vue'; import PrescriptionList from './components/prescriptionList.vue';
import { patientInfoList } from '../components/store/patient.js';
import { RequestStatus } from '@/utils/medicalConstants'; import { RequestStatus } from '@/utils/medicalConstants';
const activeName = ref('preparation'); const activeName = ref('preparation');
@@ -129,6 +130,31 @@ function handleClick(tabName) {
provide('handleGetPrescription', (value) => { provide('handleGetPrescription', (value) => {
prescriptionRefs.value[activeName.value].handleGetPrescription(); prescriptionRefs.value[activeName.value].handleGetPrescription();
}); });
// 监听患者列表变化自动触发当前tab数据加载
// 解决从校对页面切换过来时lazy tab 未挂载导致数据不刷新的问题)
const autoFetchDone = ref(false);
watch(patientInfoList, async (newVal) => {
if (!autoFetchDone.value && newVal.length > 0) {
autoFetchDone.value = true;
// 等待组件挂载完成、模板refprescriptionRefs填充后再触发数据加载
// immediate 回调在 setup 阶段同步执行此时模板尚未渲染prescriptionRefs 为空
await nextTick();
nextTick(() => {
handleClick(activeName.value);
});
}
}, { immediate: true });
// keep-alive 缓存后重新激活时,强制刷新当前 tab 数据
// 校对通过长期医嘱后切换到执行页面autoFetchDone 已为 true 不会再触发)
onActivated(() => {
if (patientInfoList.value.length > 0) {
nextTick(() => {
handleClick(activeName.value);
});
}
});
</script> </script>
<style scoped> <style scoped>

View File

@@ -30,7 +30,7 @@
<!-- 待入科列表 --> <!-- 待入科列表 -->
<div class="patientList-table"> <div class="patientList-table">
<vxe-table :data="patientListData" :row-config="{ keyField: 'id' }" style="width: 100%; height: 100%" <vxe-table :data="patientListData" :row-config="{ keyField: 'id' }" style="width: 100%; height: 100%"
@checkbox-change="handleSelectionChange" :show-header="false" show-overflow> @checkbox-change="handleSelectionChange" :show-header="false" show-overflow="title">
<!-- <vxe-column type="checkbox" :width="isCollapsed ? 14 : 20" /> --> <!-- <vxe-column type="checkbox" :width="isCollapsed ? 14 : 20" /> -->
<vxe-column title="姓名" field="name" min-width="100"> <vxe-column title="姓名" field="name" min-width="100">
<template #default="{ row }"> <template #default="{ row }">

View File

@@ -30,7 +30,7 @@
<!-- 待入科列表 --> <!-- 待入科列表 -->
<div class="patientList-table"> <div class="patientList-table">
<vxe-table :data="patientListData" :row-config="{ keyField: 'id' }" style="width: 100%; height: 100%" <vxe-table :data="patientListData" :row-config="{ keyField: 'id' }" style="width: 100%; height: 100%"
@checkbox-change="handleSelectionChange" :show-header="false" show-overflow> @checkbox-change="handleSelectionChange" :show-header="false" show-overflow="title">
<!-- <vxe-column type="checkbox" :width="isCollapsed ? 14 : 20" /> --> <!-- <vxe-column type="checkbox" :width="isCollapsed ? 14 : 20" /> -->
<vxe-column title="姓名" field="name" min-width="100"> <vxe-column title="姓名" field="name" min-width="100">
<template #default="{ row }"> <template #default="{ row }">

View File

@@ -207,7 +207,7 @@
> >
<template #default="scope"> <template #default="scope">
<el-tag <el-tag
:type="getStatusType(scope.row.requestStatus)" :type="getStatusType(scope.row)"
size="small" size="small"
> >
{{ getStatusDisplayText(scope.row) }} {{ getStatusDisplayText(scope.row) }}
@@ -430,6 +430,11 @@ const getStatusDisplayText = (row) => {
if (DISPENSE_STATUS_DISPLAY[dispenseCode]) { if (DISPENSE_STATUS_DISPLAY[dispenseCode]) {
return DISPENSE_STATUS_DISPLAY[dispenseCode]; return DISPENSE_STATUS_DISPLAY[dispenseCode];
} }
// 2.5 兼容后端未更新 dispenseStatus 的情况:通过执行记录列表判断是否已执行
const exeRecords = row?.exePerformRecordList;
if (exeRecords && Array.isArray(exeRecords) && exeRecords.length > 0) {
return '已执行';
}
// 3. 最后回退到其他请求状态 // 3. 最后回退到其他请求状态
if (REQUEST_STATUS_DISPLAY[requestCode]) { if (REQUEST_STATUS_DISPLAY[requestCode]) {
return REQUEST_STATUS_DISPLAY[requestCode]; return REQUEST_STATUS_DISPLAY[requestCode];
@@ -439,7 +444,13 @@ const getStatusDisplayText = (row) => {
}; };
const getStatusType = (status) => { const getStatusType = (row) => {
// '已执行'状态优先用 success 色,与 getStatusDisplayText 保持一致
const displayText = getStatusDisplayText(row);
if (displayText === '已执行') {
return 'success';
}
const status = row?.requestStatus;
const map = { const map = {
[RequestStatus.DRAFT]: 'info', [RequestStatus.DRAFT]: 'info',
[RequestStatus.ACTIVE]: 'primary', [RequestStatus.ACTIVE]: 'primary',
@@ -452,9 +463,10 @@ const getStatusType = (status) => {
}; };
return map[status] || 'info'; return map[status] || 'info';
}; };
/** 选中医嘱中是否包含已执行或已发药记录 — 用于禁用退回按钮 */
const hasDispensedSelected = computed(() => { const hasDispensedSelected = computed(() => {
selectionTrigger.value; selectionTrigger.value;
return getSelectRows().some(item => item.dispenseStatus === 4); return getSelectRows().some(item => item.dispenseStatus === 11 || item.dispenseStatus === 4);
}); });
const props = defineProps({ const props = defineProps({
requestStatus: { requestStatus: {
@@ -591,6 +603,12 @@ function handleCheck() {
function handleCancel() { function handleCancel() {
let list = getSelectRows(); let list = getSelectRows();
if (list.length > 0) { if (list.length > 0) {
// 校验已执行的医嘱不允许直接退回
let executedItems = list.filter(item => item.dispenseStatus === 11);
if (executedItems.length > 0) {
proxy.$message.error('选中医嘱已执行,请先在"医嘱执行"界面取消执行后再执行退回操作');
return;
}
// 校验已发药的医嘱不允许退回 // 校验已发药的医嘱不允许退回
let dispensedItems = list.filter(item => item.dispenseStatus === 4); let dispensedItems = list.filter(item => item.dispenseStatus === 4);
if (dispensedItems.length > 0) { if (dispensedItems.length > 0) {

View File

@@ -66,6 +66,7 @@
import PatientList from '../components/patientList.vue'; import PatientList from '../components/patientList.vue';
import PrescriptionList from './components/prescriptionList.vue'; import PrescriptionList from './components/prescriptionList.vue';
import { RequestStatus } from '@/utils/medicalConstants'; import { RequestStatus } from '@/utils/medicalConstants';
import { patientInfoList } from '../components/store/patient.js';
const activeName = ref('unverified'); const activeName = ref('unverified');
const active = ref('first'); const active = ref('first');
@@ -123,6 +124,30 @@ function handleTabClick(tabName) {
provide('handleGetPrescription', (value) => { provide('handleGetPrescription', (value) => {
prescriptionRefs.value[activeName.value].handleGetPrescription(); prescriptionRefs.value[activeName.value].handleGetPrescription();
}); });
// 监听患者列表变化自动触发当前tab数据加载
// (解决切换医嘱校对/医嘱执行tab后组件重建时数据不刷新的问题
const autoFetchDone = ref(false);
watch(patientInfoList, async (newVal) => {
if (!autoFetchDone.value && newVal.length > 0) {
autoFetchDone.value = true;
// 等待组件挂载完成、模板refprescriptionRefs填充后再触发数据加载
// immediate 回调在 setup 阶段同步执行此时模板尚未渲染prescriptionRefs 为空
await nextTick();
nextTick(() => {
handleTabClick(activeName.value);
});
}
}, { immediate: true });
// keep-alive 缓存后重新激活时,强制刷新当前 tab 数据
onActivated(() => {
if (patientInfoList.value.length > 0) {
nextTick(() => {
handleTabClick(activeName.value);
});
}
});
</script> </script>
<style scoped> <style scoped>

View File

@@ -110,4 +110,15 @@ export function deleteRecordTemplate(data) {
method: 'post', method: 'post',
data: data data: data
}) })
}
/**
* 批量保存护理记录单
*/
export function batchSaveRecord(data) {
return request({
url: '/nursing-record/batch-save',
method: 'post',
data: data
})
} }

View File

@@ -145,91 +145,91 @@
title="仪器编码" title="仪器编码"
align="center" align="center"
field="instrumentCode" field="instrumentCode"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="instrumentName" key="instrumentName"
title="仪器名称" title="仪器名称"
align="center" align="center"
field="instrumentName" field="instrumentName"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="instrumentMainCode" key="instrumentMainCode"
title="主编码" title="主编码"
align="center" align="center"
field="instrumentMainCode" field="instrumentMainCode"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="instrumentTypeEnumText" key="instrumentTypeEnumText"
title="类型" title="类型"
align="center" align="center"
field="instrumentTypeEnumText" field="instrumentTypeEnumText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="instrumentModel" key="instrumentModel"
title="型号" title="型号"
align="center" align="center"
field="instrumentModel" field="instrumentModel"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="manufacturer" key="manufacturer"
title="生产厂家" title="生产厂家"
align="center" align="center"
field="manufacturer" field="manufacturer"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="serialNumber" key="serialNumber"
title="序列号" title="序列号"
align="center" align="center"
field="serialNumber" field="serialNumber"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="purchasingCompany" key="purchasingCompany"
title="采购单位" title="采购单位"
align="center" align="center"
field="purchasingCompany" field="purchasingCompany"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="contactPerson" key="contactPerson"
title="联系人" title="联系人"
align="center" align="center"
field="contactPerson" field="contactPerson"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="purchaseDate" key="purchaseDate"
title="采购日期" title="采购日期"
align="center" align="center"
field="purchaseDate" field="purchaseDate"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="originalPrice" key="originalPrice"
title="原价" title="原价"
align="center" align="center"
field="originalPrice" field="originalPrice"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="transactionPrice" key="transactionPrice"
title="成交价" title="成交价"
align="center" align="center"
field="transactionPrice" field="transactionPrice"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="installationDate" key="installationDate"
title="安装日期" title="安装日期"
align="center" align="center"
field="installationDate" field="installationDate"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<span>{{ parseTime(scope.row.installationDate ) }}</span> <span>{{ parseTime(scope.row.installationDate ) }}</span>
@@ -240,84 +240,84 @@
title="安装人" title="安装人"
align="center" align="center"
field="installationPerson" field="installationPerson"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="maintenancePerson" key="maintenancePerson"
title="维护人" title="维护人"
align="center" align="center"
field="maintenancePerson" field="maintenancePerson"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="orgId_dictText" key="orgId_dictText"
title="使用科室" title="使用科室"
align="center" align="center"
field="orgId_dictText" field="orgId_dictText"
:show-overflow="true" show-overflow="title"
/>> />>
<vxe-column <vxe-column
key="identificationPerson" key="identificationPerson"
title="鉴定人" title="鉴定人"
align="center" align="center"
field="identificationPerson" field="identificationPerson"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="recordedTemperature" key="recordedTemperature"
title="记录温度" title="记录温度"
align="center" align="center"
field="recordedTemperature" field="recordedTemperature"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="accessories" key="accessories"
title="附件" title="附件"
align="center" align="center"
field="accessories" field="accessories"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="instrumentStatusEnum" key="instrumentStatusEnum"
title="仪器状态" title="仪器状态"
align="center" align="center"
field="instrumentStatusEnum" field="instrumentStatusEnum"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="damageReportDate" key="damageReportDate"
title="报损日期" title="报损日期"
align="center" align="center"
field="damageReportDate" field="damageReportDate"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="recheckableInstrumentEnum" key="recheckableInstrumentEnum"
title="可复检" title="可复检"
align="center" align="center"
field="recheckableInstrumentEnum" field="recheckableInstrumentEnum"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="usageStatusEnum" key="usageStatusEnum"
title="使用情况" title="使用情况"
align="center" align="center"
field="usageStatusEnum" field="usageStatusEnum"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="decommissionReason" key="decommissionReason"
title="报废原因" title="报废原因"
align="center" align="center"
field="decommissionReason" field="decommissionReason"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="remarks" key="remarks"
title="备注" title="备注"
align="center" align="center"
field="remarks" field="remarks"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column

View File

@@ -146,7 +146,7 @@
title="观测名称" title="观测名称"
align="center" align="center"
field="name" field="name"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
@@ -154,7 +154,7 @@
title="观测代码" title="观测代码"
align="center" align="center"
field="code" field="code"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
@@ -162,7 +162,7 @@
title="观测类型" title="观测类型"
align="center" align="center"
field="observationTypeEnumText" field="observationTypeEnumText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
@@ -170,7 +170,7 @@
title="参考范围" title="参考范围"
align="center" align="center"
field="referenceRange" field="referenceRange"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
@@ -178,7 +178,7 @@
title="仪器" title="仪器"
align="center" align="center"
field="instrumentId_dictText" field="instrumentId_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
@@ -186,7 +186,7 @@
title="状态" title="状态"
align="center" align="center"
field="statusEnumText" field="statusEnumText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="操作" title="操作"

View File

@@ -145,91 +145,91 @@
title="样本类型" title="样本类型"
align="center" align="center"
field="specimenTypeEnumText" field="specimenTypeEnumText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="specimenName" key="specimenName"
title="样本名称" title="样本名称"
align="center" align="center"
field="specimenName" field="specimenName"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="customCode" key="customCode"
title="自定义码" title="自定义码"
align="center" align="center"
field="customCode" field="customCode"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="typeOrder" key="typeOrder"
title="类型顺序" title="类型顺序"
align="center" align="center"
field="typeOrder" field="typeOrder"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="externalCode" key="externalCode"
title="外部代码" title="外部代码"
align="center" align="center"
field="externalCode" field="externalCode"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="serialNumber" key="serialNumber"
title="序号" title="序号"
align="center" align="center"
field="serialNumber" field="serialNumber"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="globalType" key="globalType"
title="全网型" title="全网型"
align="center" align="center"
field="globalType" field="globalType"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="pyStr" key="pyStr"
title="拼音" title="拼音"
align="center" align="center"
field="pyStr" field="pyStr"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="wbStr" key="wbStr"
title="五笔" title="五笔"
align="center" align="center"
field="wbStr" field="wbStr"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="specimenClass" key="specimenClass"
title="样本类" title="样本类"
align="center" align="center"
field="specimenClass" field="specimenClass"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="extendedType" key="extendedType"
title="扩展类型" title="扩展类型"
align="center" align="center"
field="extendedType" field="extendedType"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="whonetCode" key="whonetCode"
title="WHONET代码" title="WHONET代码"
align="center" align="center"
field="whonetCode" field="whonetCode"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="statusEnumText" key="statusEnumText"
title="状态" title="状态"
align="center" align="center"
field="statusEnumText" field="statusEnumText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
title="操作" title="操作"

View File

@@ -159,7 +159,7 @@
field="packageName" field="packageName"
title="套餐名称" title="套餐名称"
min-width="150" min-width="150"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
field="packageType" field="packageType"

View File

@@ -113,7 +113,7 @@
align="center" align="center"
field="supplierId_dictText" field="supplierId_dictText"
width="180" width="180"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<span>{{ scope.row.supplierId_dictText || '-' }}</span> <span>{{ scope.row.supplierId_dictText || '-' }}</span>

View File

@@ -254,7 +254,7 @@
field="itemBusNo" field="itemBusNo"
width="160" width="160"
fixed fixed
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-form-item <el-form-item
@@ -276,7 +276,7 @@
field="itemName" field="itemName"
width="160" width="160"
fixed fixed
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-form-item <el-form-item
@@ -310,7 +310,7 @@
align="center" align="center"
field="totalVolume" field="totalVolume"
width="200" width="200"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-form-item <el-form-item
@@ -331,7 +331,7 @@
align="center" align="center"
field="lotNumber" field="lotNumber"
width="120" width="120"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-form-item :prop="`purchaseinventoryList.${scope.rowIndex}.lotNumber`"> <el-form-item :prop="`purchaseinventoryList.${scope.rowIndex}.lotNumber`">
@@ -350,7 +350,7 @@
align="center" align="center"
key="unitCode_dictText" key="unitCode_dictText"
field="unitCode_dictText" field="unitCode_dictText"
:show-overflow="true" show-overflow="title"
width="110" width="110"
> >
<template #default="scope"> <template #default="scope">
@@ -396,7 +396,7 @@
align="center" align="center"
field="partPercent" field="partPercent"
width="110" width="110"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-form-item <el-form-item
@@ -447,7 +447,7 @@
title="盘点单位" title="盘点单位"
align="center" align="center"
field="unitCode" field="unitCode"
:show-overflow="true" show-overflow="title"
width="90" width="90"
> >
<template #default="scope"> <template #default="scope">
@@ -491,7 +491,7 @@
key="price" key="price"
field="price" field="price"
width="110" width="110"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-form-item <el-form-item
@@ -517,7 +517,7 @@
align="center" align="center"
field="totalPurposeQuantity" field="totalPurposeQuantity"
width="110" width="110"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-form-item <el-form-item
@@ -538,7 +538,7 @@
align="center" align="center"
field="totalQuantity" field="totalQuantity"
width="110" width="110"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-form-item <el-form-item
@@ -560,7 +560,7 @@
align="center" align="center"
field="totalPrice" field="totalPrice"
width="130" width="130"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-form-item <el-form-item
@@ -588,7 +588,7 @@
align="center" align="center"
field="itemQuantity" field="itemQuantity"
width="110" width="110"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-form-item <el-form-item
@@ -609,7 +609,7 @@
align="center" align="center"
field="profitAmount" field="profitAmount"
width="140" width="140"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-form-item <el-form-item
@@ -630,7 +630,7 @@
title="盈亏类型" title="盈亏类型"
align="center" align="center"
field="reasonCode" field="reasonCode"
:show-overflow="true" show-overflow="title"
width="110" width="110"
> >
<template #default="scope"> <template #default="scope">
@@ -663,7 +663,7 @@
title="盈亏原因" title="盈亏原因"
align="center" align="center"
field="reason" field="reason"
:show-overflow="true" show-overflow="title"
width="110" width="110"
> >
<template #default="scope"> <template #default="scope">
@@ -686,7 +686,7 @@
align="center" align="center"
field="ybNo" field="ybNo"
width="240" width="240"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-form-item <el-form-item
@@ -706,7 +706,7 @@
title="厂家/产地" title="厂家/产地"
align="center" align="center"
field="manufacturerText" field="manufacturerText"
:show-overflow="true" show-overflow="title"
width="260" width="260"
> >
<template #default="scope"> <template #default="scope">

View File

@@ -264,7 +264,7 @@
align="center" align="center"
field="volume" field="volume"
width="140" width="140"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<el-form-item <el-form-item
@@ -284,7 +284,7 @@
title="厂家/产地" title="厂家/产地"
align="center" align="center"
field="manufacturerText" field="manufacturerText"
:show-overflow="true" show-overflow="title"
width="220" width="220"
> >
<template #default="scope"> <template #default="scope">
@@ -350,7 +350,7 @@
title="盘点单位" title="盘点单位"
align="center" align="center"
field="unitCode" field="unitCode"
:show-overflow="true" show-overflow="title"
width="90" width="90"
> >
<template #default="scope"> <template #default="scope">
@@ -491,7 +491,7 @@
title="盈亏类型" title="盈亏类型"
align="center" align="center"
field="reasonCode" field="reasonCode"
:show-overflow="true" show-overflow="title"
width="120" width="120"
> >
<template #default="scope"> <template #default="scope">
@@ -523,7 +523,7 @@
title="盈亏原因" title="盈亏原因"
align="center" align="center"
field="reason" field="reason"
:show-overflow="true" show-overflow="title"
width="150" width="150"
> >
<template #default="scope"> <template #default="scope">

View File

@@ -155,7 +155,7 @@
title="厂家/产地" title="厂家/产地"
align="center" align="center"
field="manufacturerText" field="manufacturerText"
show-overflow show-overflow="title"
/> />
<vxe-column <vxe-column
title="产品批号" title="产品批号"

View File

@@ -138,49 +138,49 @@
align="center" align="center"
field="supplyBusNo" field="supplyBusNo"
width="200" width="200"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="typeEnum_enumText" key="typeEnum_enumText"
title="单据类型" title="单据类型"
align="center" align="center"
field="typeEnum_enumText" field="typeEnum_enumText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="statusEnum_enumText" key="statusEnum_enumText"
title="审批状态" title="审批状态"
align="center" align="center"
field="statusEnum_enumText" field="statusEnum_enumText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="purposeLocationId_dictText" key="purposeLocationId_dictText"
title="盘点仓库" title="盘点仓库"
align="center" align="center"
field="purposeLocationId_dictText" field="purposeLocationId_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="breakevenPrice" key="breakevenPrice"
title="盈亏金额" title="盈亏金额"
align="center" align="center"
field="breakevenPrice" field="breakevenPrice"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="applicantId_dictText" key="applicantId_dictText"
title="制单人" title="制单人"
align="center" align="center"
field="applicantId_dictText" field="applicantId_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="approverId_dictText" key="approverId_dictText"
title="审核人" title="审核人"
align="center" align="center"
field="approverId_dictText" field="approverId_dictText"
:show-overflow="true" show-overflow="title"
/> />
<vxe-column <vxe-column
key="createTime" key="createTime"
@@ -188,7 +188,7 @@
align="center" align="center"
field="createTime" field="createTime"
width="180" width="180"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<span>{{ parseTime(scope.row.createTime) }}</span> <span>{{ parseTime(scope.row.createTime) }}</span>
@@ -200,7 +200,7 @@
align="center" align="center"
field="approvalTime" field="approvalTime"
width="180" width="180"
:show-overflow="true" show-overflow="title"
> >
<template #default="scope"> <template #default="scope">
<span>{{ parseTime(scope.row.approvalTime) }}</span> <span>{{ parseTime(scope.row.approvalTime) }}</span>

Some files were not shown because too many files have changed in this diff Show More