bug 467 569
This commit is contained in:
@@ -239,8 +239,8 @@ public class AdviceUtils {
|
||||
BigDecimal totalQuantity = matchedInventories.stream()
|
||||
.map(dto -> dto.getQuantity() != null ? dto.getQuantity() : BigDecimal.ZERO)
|
||||
.reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||
BigDecimal requestQuantity = medicationRequestUseExe.getExecuteTimesNum()
|
||||
.multiply(medicationRequestUseExe.getMinUnitQuantity());
|
||||
// 只校验单次执行所需数量,不按全部执行次数校验(长期医嘱多次执行由发药流程逐次管控库存)
|
||||
BigDecimal requestQuantity = medicationRequestUseExe.getMinUnitQuantity();
|
||||
if (requestQuantity.compareTo(totalQuantity) > 0) {
|
||||
tipsList
|
||||
.add("【" + medicationRequestUseExe.getBusNo() + "】在" + matchedInventories.get(0).getLocationName() + "库存不足");
|
||||
|
||||
@@ -628,8 +628,8 @@ public class ATDManageAppServiceImpl implements IATDManageAppService {
|
||||
// 查询患者待取的药品
|
||||
List<MedicationDispense> medicationDispenseList = medicationDispenseService
|
||||
.list(new LambdaQueryWrapper<MedicationDispense>().eq(MedicationDispense::getEncounterId, encounterId)
|
||||
.in(MedicationDispense::getStatusEnum, DispenseStatus.PREPARATION.getValue(),
|
||||
DispenseStatus.PENDING_REFUND.getValue(), DispenseStatus.SUMMARIZED.getValue())
|
||||
.in(MedicationDispense::getStatusEnum, DispenseStatus.EXECUTED.getValue(),
|
||||
DispenseStatus.PENDING_REFUND.getValue(), DispenseStatus.SUBMITTED.getValue())
|
||||
.eq(MedicationDispense::getDeleteFlag, DelFlag.NO.getCode()));
|
||||
if (!medicationDispenseList.isEmpty()) {
|
||||
return R.fail("患者有待取的药品,请先取药");
|
||||
@@ -696,8 +696,8 @@ public class ATDManageAppServiceImpl implements IATDManageAppService {
|
||||
// 查询患者待取的药品
|
||||
List<MedicationDispense> medicationDispenseList = medicationDispenseService
|
||||
.list(new LambdaQueryWrapper<MedicationDispense>().eq(MedicationDispense::getEncounterId, encounterId)
|
||||
.in(MedicationDispense::getStatusEnum, DispenseStatus.PREPARATION.getValue(),
|
||||
DispenseStatus.PENDING_REFUND.getValue(), DispenseStatus.SUMMARIZED.getValue())
|
||||
.in(MedicationDispense::getStatusEnum, DispenseStatus.EXECUTED.getValue(),
|
||||
DispenseStatus.PENDING_REFUND.getValue(), DispenseStatus.SUBMITTED.getValue())
|
||||
.eq(MedicationDispense::getDeleteFlag, DelFlag.NO.getCode()));
|
||||
if (!medicationDispenseList.isEmpty()) {
|
||||
return R.fail("患者有待取的药品,请先取药");
|
||||
@@ -762,8 +762,8 @@ public class ATDManageAppServiceImpl implements IATDManageAppService {
|
||||
@Override
|
||||
public R<?> getPendingMedication(Long encounterId) {
|
||||
Integer tenantId = SecurityUtils.getLoginUser().getTenantId();
|
||||
return R.ok(atdManageAppMapper.getPendingMedication(encounterId, DispenseStatus.PREPARATION.getValue(),
|
||||
DispenseStatus.SUMMARIZED.getValue(), RequestStatus.CANCELLED.getValue(), tenantId));
|
||||
return R.ok(atdManageAppMapper.getPendingMedication(encounterId, DispenseStatus.EXECUTED.getValue(),
|
||||
DispenseStatus.SUBMITTED.getValue(), RequestStatus.CANCELLED.getValue(), tenantId));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -545,8 +545,8 @@ public class AdviceProcessAppServiceImpl implements IAdviceProcessAppService {
|
||||
for (MedicationDispense medicationDispense : longMedDispenseList) {
|
||||
if (DispenseStatus.COMPLETED.getValue().equals(medicationDispense.getStatusEnum())) {
|
||||
longMedDispensedList.add(medicationDispense);
|
||||
} else if (DispenseStatus.PREPARATION.getValue().equals(medicationDispense.getStatusEnum())
|
||||
|| DispenseStatus.SUMMARIZED.getValue().equals(medicationDispense.getStatusEnum())) {
|
||||
} else if (DispenseStatus.EXECUTED.getValue().equals(medicationDispense.getStatusEnum())
|
||||
|| DispenseStatus.SUBMITTED.getValue().equals(medicationDispense.getStatusEnum())) {
|
||||
longMedUndispenseList.add(medicationDispense);
|
||||
}
|
||||
}
|
||||
@@ -573,8 +573,8 @@ public class AdviceProcessAppServiceImpl implements IAdviceProcessAppService {
|
||||
for (MedicationDispense medicationDispense : tempMedDispenseList) {
|
||||
if (DispenseStatus.COMPLETED.getValue().equals(medicationDispense.getStatusEnum())) {
|
||||
tempMedDispensedList.add(medicationDispense);
|
||||
} else if (DispenseStatus.PREPARATION.getValue().equals(medicationDispense.getStatusEnum())
|
||||
|| DispenseStatus.SUMMARIZED.getValue().equals(medicationDispense.getStatusEnum())) {
|
||||
} else if (DispenseStatus.EXECUTED.getValue().equals(medicationDispense.getStatusEnum())
|
||||
|| DispenseStatus.SUBMITTED.getValue().equals(medicationDispense.getStatusEnum())) {
|
||||
tempMedUndispenseList.add(medicationDispense);
|
||||
}
|
||||
}
|
||||
@@ -1063,7 +1063,7 @@ public class AdviceProcessAppServiceImpl implements IAdviceProcessAppService {
|
||||
.eq(MedicationDispense::getMedReqId, tempMedicationRequest.getId())
|
||||
.set(MedicationDispense::getProcedureId, procedureId)
|
||||
.set(MedicationDispense::getPlannedDispenseTime, expectedDate)
|
||||
.set(MedicationDispense::getStatusEnum, DispenseStatus.PREPARATION.getValue()));
|
||||
.set(MedicationDispense::getStatusEnum, DispenseStatus.EXECUTED.getValue()));
|
||||
|
||||
// 更新账单状态
|
||||
chargeItemService.update(
|
||||
|
||||
@@ -119,7 +119,7 @@ public class MedicineSummaryAppServiceImpl implements IMedicineSummaryAppService
|
||||
LocationForm.BED.getValue(), ParticipantType.ADMITTING_DOCTOR.getCode(),
|
||||
AccountType.PERSONAL_CASH_ACCOUNT.getCode(), ChargeItemStatus.BILLABLE.getValue(),
|
||||
ChargeItemStatus.BILLED.getValue(), ChargeItemStatus.REFUNDED.getValue(),
|
||||
DispenseStatus.SUMMARIZED.getValue());
|
||||
DispenseStatus.SUBMITTED.getValue());
|
||||
medicineDispenseFormPage.getRecords().forEach(e -> {
|
||||
// 是否皮试
|
||||
e.setSkinTestFlag_enumText(EnumUtils.getInfoByValue(Whether.class, e.getSkinTestFlag()));
|
||||
@@ -156,8 +156,8 @@ public class MedicineSummaryAppServiceImpl implements IMedicineSummaryAppService
|
||||
|
||||
// 汇总单分页列表
|
||||
Page<MedicineSummaryFormDto> medicineSummaryFormPage = medicineSummaryAppMapper.selectMedicineSummaryFormPage(
|
||||
new Page<>(pageNo, pageSize), queryWrapper, DispenseStatus.COMPLETED.getValue(),
|
||||
DispenseStatus.PREPARATION.getValue(), SupplyType.SUMMARY_DISPENSE.getValue());
|
||||
new Page<>(pageNo, pageSize), queryWrapper, DispenseStatus.PREPARATION.getValue(),
|
||||
SupplyType.SUMMARY_DISPENSE.getValue());
|
||||
medicineSummaryFormPage.getRecords().forEach(e -> {
|
||||
// 发药状态(汇总单展示文案)
|
||||
e.setStatusEnum_enumText(getSummaryFormStatusText(e.getStatusEnum()));
|
||||
@@ -203,7 +203,7 @@ public class MedicineSummaryAppServiceImpl implements IMedicineSummaryAppService
|
||||
throw new ServiceException("未找到药品发放信息");
|
||||
}
|
||||
if (medicationDispenseList.stream().map(MedicationDispense::getStatusEnum)
|
||||
.anyMatch(x -> x.equals(DispenseStatus.SUMMARIZED.getValue()))) {
|
||||
.anyMatch(x -> x.equals(DispenseStatus.SUBMITTED.getValue()))) {
|
||||
throw new ServiceException("药品已汇总,请勿重复汇总");
|
||||
}
|
||||
// 查询药品信息
|
||||
@@ -295,7 +295,7 @@ public class MedicineSummaryAppServiceImpl implements IMedicineSummaryAppService
|
||||
* 汇总发药单状态展示文案(药品医嘱状态映射表:汇总申请→已提交,发药→已发药)
|
||||
*/
|
||||
private String getSummaryFormStatusText(Integer statusEnum) {
|
||||
if (DispenseStatus.PREPARATION.getValue().equals(statusEnum)) {
|
||||
if (DispenseStatus.EXECUTED.getValue().equals(statusEnum)) {
|
||||
return "已提交";
|
||||
}
|
||||
if (DispenseStatus.COMPLETED.getValue().equals(statusEnum)) {
|
||||
|
||||
@@ -46,14 +46,13 @@ public interface MedicineSummaryAppMapper {
|
||||
*
|
||||
* @param page 分页信息
|
||||
* @param queryWrapper 查询条件
|
||||
* @param completed 发药状态:已完成
|
||||
* @param preparation 发药状态:待配药
|
||||
* @param summaryDispense 单据类型:汇总发药
|
||||
* @return 汇总单列表
|
||||
*/
|
||||
Page<MedicineSummaryFormDto> selectMedicineSummaryFormPage(@Param("page") Page<MedicineSummaryFormDto> page,
|
||||
@Param(Constants.WRAPPER) QueryWrapper<DispenseFormSearchParam> queryWrapper,
|
||||
@Param("completed") Integer completed, @Param("preparation") Integer preparation,
|
||||
@Param("preparation") Integer preparation,
|
||||
@Param("summaryDispense") Integer summaryDispense);
|
||||
|
||||
/**
|
||||
|
||||
@@ -3,6 +3,7 @@ package com.openhis.web.pharmacymanage.appservice.impl;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.core.common.core.domain.R;
|
||||
import com.core.common.exception.ServiceException;
|
||||
@@ -192,7 +193,7 @@ public class WesternMedicineDispenseAppServiceImpl implements IWesternMedicineDi
|
||||
= westernMedicineDispenseMapper.selectEncounterInfoListPage(new Page<>(pageNo, pageSize), queryWrapper,
|
||||
statusEnum, DispenseStatus.IN_PROGRESS.getValue(), DispenseStatus.COMPLETED.getValue(),
|
||||
DispenseStatus.PREPARATION.getValue(), DispenseStatus.PREPARED.getValue(),
|
||||
DispenseStatus.SUMMARIZED.getValue());
|
||||
DispenseStatus.SUMMARIZED.getValue(), DispenseStatus.SUBMITTED.getValue());
|
||||
encounterInfoPage.getRecords().forEach(encounterInfo -> {
|
||||
// 性别
|
||||
encounterInfo.setGenderEnum_enumText(
|
||||
@@ -230,7 +231,8 @@ public class WesternMedicineDispenseAppServiceImpl implements IWesternMedicineDi
|
||||
= westernMedicineDispenseMapper.selectMedicineDispenseOrderPage(new Page<>(pageNo, pageSize), queryWrapper,
|
||||
DispenseStatus.IN_PROGRESS.getValue(), DispenseStatus.COMPLETED.getValue(),
|
||||
DispenseStatus.PREPARATION.getValue(), DispenseStatus.PREPARED.getValue(), dispenseStatus,
|
||||
PublicationStatus.ACTIVE.getValue(), DispenseStatus.SUMMARIZED.getValue());
|
||||
PublicationStatus.ACTIVE.getValue(), DispenseStatus.SUMMARIZED.getValue(),
|
||||
DispenseStatus.SUBMITTED.getValue());
|
||||
medicineDispenseOrderPage.getRecords().forEach(medicineDispenseOrder -> {
|
||||
// 发药状态
|
||||
medicineDispenseOrder.setStatusEnum_enumText(
|
||||
@@ -254,6 +256,9 @@ public class WesternMedicineDispenseAppServiceImpl implements IWesternMedicineDi
|
||||
*/
|
||||
@Override
|
||||
public R<?> medicinePrepare(List<DispenseItemDto> dispenseMedicineList) {
|
||||
if (dispenseMedicineList == null || dispenseMedicineList.isEmpty()) {
|
||||
throw new ServiceException("配药信息不能为空");
|
||||
}
|
||||
// 追溯码集合
|
||||
List<String> traceNoList
|
||||
= dispenseMedicineList.stream().map(DispenseItemDto::getTraceNo).collect(Collectors.toList());
|
||||
@@ -355,7 +360,7 @@ public class WesternMedicineDispenseAppServiceImpl implements IWesternMedicineDi
|
||||
}
|
||||
// 发药单状态校验
|
||||
if (unDispenseInventoryList.stream().map(UnDispenseInventoryDto::getDispenseStatus)
|
||||
.anyMatch(x -> !x.equals(DispenseStatus.PREPARED.getValue()))) {
|
||||
.anyMatch(x -> !x.equals(DispenseStatus.SUBMITTED.getValue()))) {
|
||||
throw new ServiceException("发药失败,请检查发药单状态");
|
||||
}
|
||||
|
||||
@@ -471,6 +476,11 @@ public class WesternMedicineDispenseAppServiceImpl implements IWesternMedicineDi
|
||||
}
|
||||
// 药品发放更新
|
||||
medicationDispenseService.updateBatchById(dispenseUpdateList);
|
||||
// 更新医嘱状态为已完成
|
||||
List<Long> medReqIdList = unDispenseInventoryList.stream()
|
||||
.map(UnDispenseInventoryDto::getRequestId).distinct().collect(Collectors.toList());
|
||||
medicationRequestService.update(new MedicationRequest().setStatusEnum(RequestStatus.DISPENSE_COMPLETED.getValue()),
|
||||
new LambdaUpdateWrapper<MedicationRequest>().in(MedicationRequest::getId, medReqIdList));
|
||||
// 库存更新
|
||||
inventoryItemService.updateBatchById(inventoryItemList);
|
||||
// 追溯码管理表数据追加
|
||||
|
||||
@@ -35,7 +35,8 @@ public interface WesternMedicineDispenseMapper {
|
||||
@Param(Constants.WRAPPER) QueryWrapper<EncounterInfoSearchParam> queryWrapper,
|
||||
@Param("statusEnum") Integer statusEnum, @Param("inProgress") Integer inProgress,
|
||||
@Param("completed") Integer completed, @Param("preparation") Integer preparation,
|
||||
@Param("prepared") Integer prepared, @Param("summarized") Integer summarized);
|
||||
@Param("prepared") Integer prepared, @Param("summarized") Integer summarized,
|
||||
@Param("submitted") Integer submitted);
|
||||
|
||||
/**
|
||||
* 发药单查询
|
||||
@@ -55,7 +56,7 @@ public interface WesternMedicineDispenseMapper {
|
||||
@Param("inProgress") Integer inProgress, @Param("completed") Integer completed,
|
||||
@Param("preparation") Integer preparation, @Param("prepared") Integer prepared,
|
||||
@Param("dispenseStatus") Integer dispenseStatus, @Param("active") Integer active,
|
||||
@Param("summarized") Integer summarized);
|
||||
@Param("summarized") Integer summarized, @Param("submitted") Integer submitted);
|
||||
|
||||
/**
|
||||
* 获取配药人下拉选列表
|
||||
|
||||
@@ -239,7 +239,7 @@
|
||||
ON wsr.source_location_id = al.id
|
||||
AND al.delete_flag = '0'
|
||||
WHERE wsr.delete_flag = '0'
|
||||
AND wsd.status_enum IN (#{preparation}, #{completed})
|
||||
AND wsd.status_enum = #{preparation}
|
||||
AND wsr.type_enum = #{summaryDispense}
|
||||
GROUP BY wsr.tenant_id,
|
||||
wsr.bus_no ,
|
||||
|
||||
@@ -105,6 +105,9 @@
|
||||
<if test="statusEnum == 4">
|
||||
T4.status_enum = #{completed}
|
||||
</if>
|
||||
<if test="statusEnum == 18">
|
||||
T4.status_enum = #{submitted}
|
||||
</if>
|
||||
AND T4.summary_no IS NOT NULL
|
||||
AND T4.summary_no != ''
|
||||
) AS ii
|
||||
@@ -277,6 +280,9 @@
|
||||
<if test="dispenseStatus == 4">
|
||||
T1.status_enum = #{completed}
|
||||
</if>
|
||||
<if test="dispenseStatus == 18">
|
||||
T1.status_enum = #{submitted}
|
||||
</if>
|
||||
AND T14.inventory_status_enum = #{active}
|
||||
ORDER BY prescription_no DESC
|
||||
) AS ii
|
||||
|
||||
@@ -29,9 +29,9 @@ public enum DispenseStatus implements HisEnumInterface {
|
||||
IN_PROGRESS(3, "IN", "待发药"),
|
||||
|
||||
/**
|
||||
* 已发药
|
||||
* 已发药/已完成
|
||||
*/
|
||||
COMPLETED(4, "CO", "已发放"),
|
||||
COMPLETED(4, "CO", "已发药/已完成"),
|
||||
|
||||
/**
|
||||
* 暂停
|
||||
@@ -91,7 +91,17 @@ public enum DispenseStatus implements HisEnumInterface {
|
||||
/**
|
||||
* 已退药
|
||||
*/
|
||||
RETURNED(17, "RT", "已退药");
|
||||
RETURNED(17, "RT", "已退药"),
|
||||
|
||||
/**
|
||||
* 已执行
|
||||
*/
|
||||
EXECUTED(11, "EX", "已执行"),
|
||||
|
||||
/**
|
||||
* 已提交
|
||||
*/
|
||||
SUBMITTED(18, "SB", "已提交");
|
||||
|
||||
private Integer value;
|
||||
private String code;
|
||||
|
||||
@@ -25,9 +25,9 @@ public enum RequestStatus implements HisEnumInterface {
|
||||
ACTIVE(2, "active", "已发送"),
|
||||
|
||||
/**
|
||||
* 已完成
|
||||
* 已校对
|
||||
*/
|
||||
COMPLETED(3, "completed", "已完成"),
|
||||
COMPLETED(3, "completed", "已校对"),
|
||||
|
||||
/**
|
||||
* 暂停
|
||||
@@ -72,7 +72,12 @@ public enum RequestStatus implements HisEnumInterface {
|
||||
/**
|
||||
* 已接收(检查申请:医技科室已接单)
|
||||
*/
|
||||
CHECK_RECEIVED(12, "check_received", "已接收");
|
||||
CHECK_RECEIVED(12, "check_received", "已接收"),
|
||||
|
||||
/**
|
||||
* 已完成(药品发药完成)
|
||||
*/
|
||||
DISPENSE_COMPLETED(20, "dispense_completed", "已完成");
|
||||
|
||||
@EnumValue
|
||||
private final Integer value;
|
||||
|
||||
@@ -141,7 +141,7 @@ public class MedicationDispenseServiceImpl extends ServiceImpl<MedicationDispens
|
||||
// 药品发放id
|
||||
medicationDispense.setBusNo(assignSeqUtil.getSeqByDay(AssignSeqEnum.MEDICATION_DIS_NO.getPrefix(), 4));
|
||||
// 药品发放状态
|
||||
medicationDispense.setStatusEnum(DispenseStatus.PREPARATION.getValue());
|
||||
medicationDispense.setStatusEnum(DispenseStatus.EXECUTED.getValue());
|
||||
// 状态变更时间
|
||||
medicationDispense.setStatusChangedTime(DateUtils.getNowDate());
|
||||
// 发药类型
|
||||
@@ -300,7 +300,7 @@ public class MedicationDispenseServiceImpl extends ServiceImpl<MedicationDispens
|
||||
baseMapper.update(null,
|
||||
new LambdaUpdateWrapper<MedicationDispense>()
|
||||
.set(MedicationDispense::getStatusEnum,
|
||||
DispenseStatus.SUMMARIZED.getValue())
|
||||
DispenseStatus.SUBMITTED.getValue())
|
||||
.set(MedicationDispense::getStatusChangedTime, DateUtils.getNowDate())
|
||||
.set(MedicationDispense::getSummaryNo, busNo)
|
||||
.in(MedicationDispense::getId, medDispenseId)
|
||||
@@ -332,7 +332,7 @@ public class MedicationDispenseServiceImpl extends ServiceImpl<MedicationDispens
|
||||
int result = baseMapper.update(null,
|
||||
new LambdaUpdateWrapper<MedicationDispense>()
|
||||
.set(MedicationDispense::getStatusEnum,
|
||||
DispenseStatus.PREPARATION.getValue())
|
||||
DispenseStatus.EXECUTED.getValue())
|
||||
.set(MedicationDispense::getSummaryNo, null)
|
||||
.in(MedicationDispense::getSummaryNo, summaryNoList)
|
||||
.eq(MedicationDispense::getDeleteFlag, DelFlag.NO.getCode()));
|
||||
@@ -368,6 +368,6 @@ public class MedicationDispenseServiceImpl extends ServiceImpl<MedicationDispens
|
||||
.in(MedicationDispense::getSummaryNo, summaryNoList)
|
||||
.eq(MedicationDispense::getDeleteFlag, DelFlag.NO.getCode())
|
||||
.eq(MedicationDispense::getStatusEnum,
|
||||
DispenseStatus.SUMMARIZED.getValue()));
|
||||
DispenseStatus.SUBMITTED.getValue()));
|
||||
}
|
||||
}
|
||||
|
||||
24278
openhis-ui-vue3/package-lock.json
generated
Executable file → Normal file
24278
openhis-ui-vue3/package-lock.json
generated
Executable file → Normal file
File diff suppressed because it is too large
Load Diff
@@ -22,7 +22,7 @@ export const RequestStatus = {
|
||||
DRAFT: 1,
|
||||
/** 已发送/待执行 */
|
||||
ACTIVE: 2,
|
||||
/** 已完成 */
|
||||
/** 已校对 */
|
||||
COMPLETED: 3,
|
||||
/** 暂停 */
|
||||
ON_HOLD: 4,
|
||||
@@ -40,6 +40,8 @@ export const RequestStatus = {
|
||||
PENDING_RECEIVE: 11,
|
||||
/** 已接收(检查申请:医技科室已接单) */
|
||||
CHECK_RECEIVED: 12,
|
||||
/** 已完成(药品发药完成) */
|
||||
DISPENSE_COMPLETED: 20,
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -48,7 +50,7 @@ export const RequestStatus = {
|
||||
export const RequestStatusDescriptions = {
|
||||
1: '待发送',
|
||||
2: '已发送/待执行',
|
||||
3: '已完成',
|
||||
3: '已校对',
|
||||
4: '暂停',
|
||||
5: '取消/待退',
|
||||
6: '停嘱',
|
||||
@@ -57,6 +59,7 @@ export const RequestStatusDescriptions = {
|
||||
10: '已校对',
|
||||
11: '待接收',
|
||||
12: '已接收',
|
||||
20: '已完成',
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
@@ -244,7 +244,8 @@
|
||||
|
||||
/** 发药状态 → 规范状态名称映射(与《药品医嘱状态映射表》保持一致) */
|
||||
const DETAIL_DRUG_STATUS_DISPLAY = {
|
||||
2: '待配药',
|
||||
11: '已执行',
|
||||
18: '已提交',
|
||||
4: '已发药',
|
||||
};
|
||||
const DETAIL_LEGACY_STATUS_TEXT = {
|
||||
|
||||
@@ -477,7 +477,7 @@ const data = reactive({
|
||||
pageSize: 10,
|
||||
condition: null,
|
||||
departmentId: null,
|
||||
statusEnum: 3,
|
||||
statusEnum: 18,
|
||||
classEnum: 1,
|
||||
},
|
||||
});
|
||||
@@ -556,7 +556,7 @@ function getList() {
|
||||
}
|
||||
//打印中西药处方
|
||||
async function printPrescription() {
|
||||
const selectedRows = tableRef.value.getSelectionRows();
|
||||
const selectedRows = tableRef.value.getCheckboxRecords();
|
||||
if (selectedRows.length === 0) {
|
||||
proxy.$modal.msgWarning('未选择要打印的项目,请重新选择,打印失败');
|
||||
return;
|
||||
@@ -762,7 +762,8 @@ function formatPrice(row, column, cellValue) {
|
||||
|
||||
/** 发药状态 → 规范状态名称映射(与《药品医嘱状态映射表》保持一致) */
|
||||
const DRUG_STATUS_DISPLAY = {
|
||||
2: '待配药',
|
||||
11: '已执行',
|
||||
18: '已提交',
|
||||
4: '已发药',
|
||||
};
|
||||
|
||||
@@ -1000,27 +1001,19 @@ function submitMedicine(saveList) {
|
||||
proxy.$modal.msgError('发药失败: ' + error.message);
|
||||
});
|
||||
} else if (projectTypeCode.value == 2) {
|
||||
let preparationList = saveList.filter((item) => {
|
||||
return item.statusEnum == 2;
|
||||
}); // 待配药列表
|
||||
let preparedList = saveList.filter((item) => {
|
||||
return item.statusEnum == 14;
|
||||
}); // 已配药列表
|
||||
if (preparedList.length > 0) {
|
||||
updateMedicion(preparedList).then((response) => {
|
||||
let submittedList = saveList.filter((item) => {
|
||||
return item.statusEnum == 18;
|
||||
}); // 已提交列表
|
||||
if (submittedList.length === 0) {
|
||||
proxy.$modal.msgWarning('没有可操作的发药项目');
|
||||
return;
|
||||
}
|
||||
updateMedicion(submittedList).then((response) => {
|
||||
if (response.code == 200) {
|
||||
proxy.$modal.msgSuccess('发药成功');
|
||||
getMedicineList(currentRow.value.encounterId);
|
||||
});
|
||||
} else {
|
||||
prepareMedicion(preparationList).then((res) => {
|
||||
if (res.code == 200) {
|
||||
updateMedicion(preparationList).then((response) => {
|
||||
proxy.$modal.msgSuccess('发药成功');
|
||||
getMedicineList(currentRow.value.encounterId);
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
} else {
|
||||
deviceDispense(saveList).then((res) => {
|
||||
if (res.code == 200) {
|
||||
@@ -1129,8 +1122,8 @@ function handleBatch(row) {
|
||||
};
|
||||
});
|
||||
} else {
|
||||
if (tableRef.value.getSelectionRows().length > 0) {
|
||||
saveList = tableRef.value.getSelectionRows().map((item) => {
|
||||
if (tableRef.value.getCheckboxRecords().length > 0) {
|
||||
saveList = tableRef.value.getCheckboxRecords().map((item) => {
|
||||
return {
|
||||
requestId: item.requestId,
|
||||
dispenseId: item.dispenseId,
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
<template>
|
||||
<div class="med-summary-container">
|
||||
<div style="width: 40%">
|
||||
<el-card style="height: 80vh">
|
||||
<template #header>
|
||||
{{ '汇总单' }}
|
||||
</template>
|
||||
<div class="summary-card" style="width: 40%; height: 80vh">
|
||||
<div class="summary-card-header">{{ '汇总单' }}</div>
|
||||
<div class="summary-card-body">
|
||||
<div style="display: flex; justify-content: space-between; margin-bottom: 10px">
|
||||
<div>
|
||||
<el-input
|
||||
@@ -34,20 +32,19 @@
|
||||
</el-select>
|
||||
</div>
|
||||
</div>
|
||||
<div style="display: flex; justify-content: space-between; margin-bottom: 10px">
|
||||
<div>
|
||||
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; flex-wrap: nowrap; gap: 8px">
|
||||
<div style="display: flex; align-items: center; gap: 8px; flex-shrink: 0">
|
||||
<el-date-picker
|
||||
v-model="queryParams.applyTime"
|
||||
type="daterange"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期"
|
||||
style="width: 400px"
|
||||
style="width: 300px"
|
||||
value-format="YYYY-MM-DD"
|
||||
:clearable="false"
|
||||
/>
|
||||
<el-button
|
||||
type="primary"
|
||||
style="margin-left: 10px"
|
||||
@click="getSummaryList"
|
||||
>
|
||||
搜索
|
||||
@@ -56,7 +53,7 @@
|
||||
重置
|
||||
</el-button>
|
||||
</div>
|
||||
<div>
|
||||
<div style="display: flex; gap: 8px; flex-shrink: 0">
|
||||
<el-button
|
||||
type="primary"
|
||||
plain
|
||||
@@ -75,47 +72,55 @@
|
||||
<vxe-table
|
||||
ref="summaryTableRef"
|
||||
:data="summaryList"
|
||||
max-height="85vh"
|
||||
style="width: 100%"
|
||||
border
|
||||
highlight-current-row
|
||||
@cell-click="getDetails"
|
||||
auto-resize
|
||||
@cell-click="({ row }) => getDetails(row)"
|
||||
>
|
||||
<vxe-column
|
||||
type="checkbox"
|
||||
align="center"
|
||||
width="50"
|
||||
min-width="40"
|
||||
/>
|
||||
<vxe-column
|
||||
field="busNo"
|
||||
title="单据号"
|
||||
align="center"
|
||||
width="150"
|
||||
min-width="90"
|
||||
show-overflow
|
||||
/>
|
||||
<vxe-column
|
||||
field="applicantName"
|
||||
title="申请人"
|
||||
align="center"
|
||||
width="100"
|
||||
min-width="65"
|
||||
show-overflow
|
||||
/>
|
||||
<vxe-column
|
||||
field="locationName"
|
||||
title="发药药房"
|
||||
align="center"
|
||||
min-width="75"
|
||||
show-overflow
|
||||
/>
|
||||
<vxe-column
|
||||
field="statusEnum_enumText"
|
||||
title="状态"
|
||||
align="center"
|
||||
min-width="80"
|
||||
>
|
||||
<template #default="scope">
|
||||
{{ formatSummaryStatusText(scope.row) }}
|
||||
<el-tag :type="getStatusTagType(scope.row)" size="small" effect="light">
|
||||
{{ formatSummaryStatusText(scope.row) }}
|
||||
</el-tag>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column
|
||||
field="applyTime"
|
||||
title="汇总日期"
|
||||
align="center"
|
||||
width="140"
|
||||
min-width="75"
|
||||
>
|
||||
<template #default="scope">
|
||||
{{ scope.row.applyTime ? parseTime(scope.row.applyTime, '{y}-{m}-{d}') : '-' }}
|
||||
@@ -124,6 +129,7 @@
|
||||
<vxe-column
|
||||
title="操作"
|
||||
align="center"
|
||||
min-width="50"
|
||||
>
|
||||
<template #default="scope">
|
||||
<el-button
|
||||
@@ -136,8 +142,8 @@
|
||||
</template>
|
||||
</vxe-column>
|
||||
</vxe-table>
|
||||
</el-card>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- <el-row :gutter="10" justify="end" align="middle" style="margin-bottom: 10px">
|
||||
<el-button type="danger" plain icon="Refresh" @click="handleSendDrug" :disabled="!busNo">
|
||||
发药
|
||||
@@ -146,8 +152,7 @@
|
||||
导出
|
||||
</el-button>
|
||||
</el-row> -->
|
||||
<div style="width: 59%">
|
||||
<el-card style="height: 80vh">
|
||||
<el-card style="width: 59%; height: 80vh">
|
||||
<template #header>
|
||||
{{ '汇总单详情' }}
|
||||
</template>
|
||||
@@ -221,7 +226,6 @@
|
||||
</vxe-column>
|
||||
</vxe-table>
|
||||
</el-card>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@@ -233,7 +237,8 @@ const { proxy } = getCurrentInstance();
|
||||
|
||||
/** 发药汇总单状态展示(汇总申请→已提交,发药→已发药) */
|
||||
const SUMMARY_STATUS_DISPLAY = {
|
||||
2: '已提交',
|
||||
11: '已执行',
|
||||
18: '已提交',
|
||||
4: '已发药',
|
||||
};
|
||||
const LEGACY_SUMMARY_STATUS_TEXT = {
|
||||
@@ -249,6 +254,17 @@ function formatSummaryStatusText(row) {
|
||||
return LEGACY_SUMMARY_STATUS_TEXT[row?.statusEnum_enumText] || row?.statusEnum_enumText || '-';
|
||||
}
|
||||
|
||||
/** 状态标签颜色 */
|
||||
const STATUS_TAG_TYPE_MAP = {
|
||||
2: 'warning', // 待配药 - 橙色
|
||||
4: 'success', // 已发药 - 绿色
|
||||
11: 'info', // 已执行 - 灰色
|
||||
18: '', // 已提交 - 蓝色(默认)
|
||||
};
|
||||
function getStatusTagType(row) {
|
||||
return STATUS_TAG_TYPE_MAP[Number(row?.statusEnum)] || 'info';
|
||||
}
|
||||
|
||||
function mapSummaryStatusOptions(options = []) {
|
||||
return options.map((item) => ({
|
||||
...item,
|
||||
@@ -355,6 +371,34 @@ defineExpose({
|
||||
height: 100%;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.summary-card {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
background: #fff;
|
||||
border: 1px solid #ebeef5;
|
||||
border-radius: 4px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.summary-card-header {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
padding: 18px 20px;
|
||||
font-size: 16px;
|
||||
font-weight: 500;
|
||||
border-bottom: 1px solid #ebeef5;
|
||||
color: #303133;
|
||||
}
|
||||
|
||||
.summary-card-body {
|
||||
flex: 1;
|
||||
padding: 20px;
|
||||
overflow: auto;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.medicationTableDetail {
|
||||
|
||||
@@ -667,12 +667,10 @@ const buildApplicationName = (row) => {
|
||||
// 单一项目:直接显示项目全名
|
||||
return details[0].adviceName || row.name || '-';
|
||||
}
|
||||
// 多个项目:首项 + 第二项 + 等n项
|
||||
// 多个项目:项目1 + 项目2 + ...
|
||||
const names = details.map((d) => d.adviceName).filter(Boolean);
|
||||
if (names.length === 0) return row.name || '-';
|
||||
const first = names[0];
|
||||
const second = names.length > 1 ? ` + ${names[1]}` : '';
|
||||
return `${first}${second} 等${details.length}项`;
|
||||
return names.join(' + ');
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
@@ -717,13 +717,15 @@ const submit = () => {
|
||||
accountId: patientInfo.value.accountId, // // 账户id
|
||||
};
|
||||
}).filter(Boolean);
|
||||
// 从选中项目中提取检验项目名称,用于申请单名称字段
|
||||
const selectedNames = applicationListAllFilter.map(item => item.adviceName).filter(Boolean).join('、');
|
||||
const params = {
|
||||
activityList: applicationListAllFilter,
|
||||
patientId: patientInfo.value.patientId, //患者ID
|
||||
encounterId: patientInfo.value.encounterId, // 就诊ID
|
||||
organizationId: patientInfo.value.inHospitalOrgId, // 医疗机构ID
|
||||
requestFormId: isEditMode.value ? props.editData.requestFormId : '', // 申请单ID(编辑模式传入,新增为空)
|
||||
name: '检验申请单',
|
||||
name: selectedNames || '检验申请单',
|
||||
descJson: JSON.stringify({
|
||||
...form,
|
||||
// 标本类型显示名称(供申请单查看页使用,避免查看页依赖字典加载)
|
||||
|
||||
@@ -61,8 +61,7 @@
|
||||
刷新
|
||||
</el-button> -->
|
||||
</div>
|
||||
<div class="operate-btns">
|
||||
<el-space>
|
||||
<div class="operate-btns" style="display: flex; align-items: center; gap: 12px;">
|
||||
<el-radio-group v-model="therapyEnum">
|
||||
<el-radio-button value="">全部</el-radio-button>
|
||||
<el-radio-button value="1">长期</el-radio-button>
|
||||
@@ -90,7 +89,6 @@
|
||||
</el-button>
|
||||
<el-button link type="primary" @click="onNursingStatus">护理状态</el-button>
|
||||
<el-button link type="primary" @click="refresh()">刷新数据</el-button>
|
||||
</el-space>
|
||||
</div>
|
||||
</div>
|
||||
<div class="inpatientDoctor-order-table">
|
||||
@@ -254,8 +252,9 @@
|
||||
<el-tag v-else-if="scope.row.statusEnum == 1" type="primary">待签发</el-tag>
|
||||
<el-tag v-else-if="scope.row.statusEnum == 10" type="primary">已校对</el-tag>
|
||||
<el-tag v-else-if="scope.row.statusEnum == 11" type="primary">待接收</el-tag>
|
||||
<el-tag v-else-if="scope.row.statusEnum == 3" type="success">已完成</el-tag>
|
||||
<el-tag v-else-if="scope.row.statusEnum == 3" type="success">已校对</el-tag>
|
||||
<el-tag v-else-if="scope.row.statusEnum == 6" type="danger">停止</el-tag>
|
||||
<el-tag v-else-if="scope.row.statusEnum == 20" type="success">已完成</el-tag>
|
||||
<el-tag v-else type="info">{{ scope.row.chargeStatus_enumText }}</el-tag>
|
||||
</template>
|
||||
</vxe-column>
|
||||
@@ -1239,7 +1238,7 @@ function resolveAllOrgIds() {
|
||||
}
|
||||
|
||||
function handleDelete() {
|
||||
let selectRows = prescriptionRef.value.getSelectionRows();
|
||||
let selectRows = prescriptionRef.value.getCheckboxRecords();
|
||||
if (selectRows.length === 0) {
|
||||
proxy.$modal.msgWarning('请选择要删除的医嘱');
|
||||
return;
|
||||
@@ -1326,7 +1325,7 @@ function handleSave() {
|
||||
expandOrder.value = [];
|
||||
}
|
||||
|
||||
const selectedRows = prescriptionRef.value ? prescriptionRef.value.getSelectionRows() : [];
|
||||
const selectedRows = prescriptionRef.value ? prescriptionRef.value.getCheckboxRecords() : [];
|
||||
let sourceList = [];
|
||||
if (selectedRows.length > 0) {
|
||||
sourceList = selectedRows;
|
||||
@@ -1990,7 +1989,7 @@ function escKeyListener(e) {
|
||||
|
||||
// 签退
|
||||
function handleSingOut() {
|
||||
let selectRows = prescriptionRef.value.getSelectionRows();
|
||||
let selectRows = prescriptionRef.value.getCheckboxRecords();
|
||||
// 是否存在未保存数据
|
||||
let isSave = true;
|
||||
// statusEnum = 2
|
||||
@@ -2054,7 +2053,7 @@ function handleSingOut() {
|
||||
|
||||
// 停嘱 - 弹出时间选择弹窗
|
||||
function handleStopAdvice() {
|
||||
let selectRows = prescriptionRef.value.getSelectionRows();
|
||||
let selectRows = prescriptionRef.value.getCheckboxRecords();
|
||||
console.log('selectRows======>', JSON.stringify(selectRows));
|
||||
if ((selectRows || []).length <= 0) {
|
||||
ElMessage({
|
||||
@@ -2159,7 +2158,7 @@ function confirmStopAdvice() {
|
||||
}
|
||||
// 恢复(取消停嘱)
|
||||
function handleResumeAdvice() {
|
||||
let selectRows = prescriptionRef.value.getSelectionRows();
|
||||
let selectRows = prescriptionRef.value.getCheckboxRecords();
|
||||
console.log('handleResumeAdvice selectRows======>', JSON.stringify(selectRows));
|
||||
if ((selectRows || []).length <= 0) {
|
||||
ElMessage({
|
||||
@@ -2224,7 +2223,7 @@ function handleGroupId(paramList) {
|
||||
|
||||
// 组合
|
||||
function combination() {
|
||||
let selectRows = prescriptionRef.value.getSelectionRows();
|
||||
let selectRows = prescriptionRef.value.getCheckboxRecords();
|
||||
if (selectRows.length <= 1) {
|
||||
proxy.$modal.msgWarning('至少选择两项');
|
||||
return;
|
||||
@@ -2322,7 +2321,7 @@ function combination() {
|
||||
|
||||
// 拆组
|
||||
function split() {
|
||||
let selectRows = prescriptionRef.value.getSelectionRows();
|
||||
let selectRows = prescriptionRef.value.getCheckboxRecords();
|
||||
if (selectRows.length < 1) {
|
||||
proxy.$modal.msgWarning('至少选择一项');
|
||||
return;
|
||||
@@ -2564,7 +2563,7 @@ function calculateTotalAmount(row, index) {
|
||||
|
||||
// 选择框改变时的处理
|
||||
function handleSelectionChange({ selection, row }) {
|
||||
if (!row) return;
|
||||
if (!row || !selection) return;
|
||||
const isSelected = selection.some((item) => item.uniqueKey === row.uniqueKey);
|
||||
prescriptionList.value
|
||||
.filter((item) => {
|
||||
|
||||
@@ -213,14 +213,14 @@ import useUserStore from '@/store/modules/user';
|
||||
|
||||
/** 发药状态 → 医嘱状态(药品医嘱状态映射表) */
|
||||
const DISPENSE_STATUS_TO_ADVICE_TEXT = {
|
||||
2: '已执行',
|
||||
8: '已提交',
|
||||
11: '已执行',
|
||||
18: '已提交',
|
||||
4: '已发药',
|
||||
};
|
||||
|
||||
function getStatusDisplayText(row) {
|
||||
const params = row?.medicineSummaryParamList || [];
|
||||
const pending = params.filter((p) => Number(p.dispenseStatus) !== 8);
|
||||
const pending = params.filter((p) => Number(p.dispenseStatus) !== 18);
|
||||
if (pending.length === 0) {
|
||||
return params.length ? '已提交' : '已执行';
|
||||
}
|
||||
@@ -378,7 +378,7 @@ function getSelectRows() {
|
||||
// 获取选中的医嘱信息
|
||||
let list = [];
|
||||
prescriptionList.value.forEach((item, index) => {
|
||||
list = [...list, ...proxy.$refs['tableRef' + index][0].getSelectionRows()];
|
||||
list = [...list, ...proxy.$refs['tableRef' + index][0].getCheckboxRecords()];
|
||||
});
|
||||
return list;
|
||||
}
|
||||
|
||||
@@ -131,7 +131,8 @@ import {patientInfoList} from '../../components/store/patient.js';
|
||||
import {getCurrentInstance, ref} from 'vue';
|
||||
|
||||
const SUMMARY_STATUS_DISPLAY = {
|
||||
2: '已提交',
|
||||
11: '已执行',
|
||||
18: '已提交',
|
||||
4: '已发药',
|
||||
};
|
||||
|
||||
@@ -228,7 +229,7 @@ function getSelectRows() {
|
||||
// 获取选中的医嘱信息
|
||||
let list = [];
|
||||
prescriptionList.value.forEach((item, index) => {
|
||||
list = [...list, ...proxy.$refs['tableRef' + index][0].getSelectionRows()];
|
||||
list = [...list, ...proxy.$refs['tableRef' + index][0].getCheckboxRecords()];
|
||||
});
|
||||
return list;
|
||||
}
|
||||
|
||||
@@ -174,8 +174,8 @@
|
||||
:data="item"
|
||||
border
|
||||
:header-cell-style="{ background: '#eef9fd !important' }"
|
||||
@select="(selection, row) => handleRowSelect(selection, row, index)"
|
||||
@checkbox-all="(selection) => handleSelectAll(selection, index)"
|
||||
@checkbox-change="({ selection, row }) => handleRowSelect(selection, row, index)"
|
||||
@checkbox-all="({ selection }) => handleSelectAll(selection, index)"
|
||||
>
|
||||
<vxe-column
|
||||
type="checkbox"
|
||||
@@ -233,11 +233,10 @@
|
||||
>
|
||||
<template #default="scope">
|
||||
<el-tag
|
||||
v-if="props.exeStatus === 6"
|
||||
type="success"
|
||||
:type="getStatusType(scope.row)"
|
||||
size="small"
|
||||
>
|
||||
已执行
|
||||
{{ getStatusDisplayText(scope.row) }}
|
||||
</el-tag>
|
||||
</template>
|
||||
</vxe-column>
|
||||
@@ -300,11 +299,13 @@ const REQUEST_STATUS_DISPLAY = {
|
||||
[RequestStatus.DRAFT]: '待签发',
|
||||
[RequestStatus.ACTIVE]: '已签发',
|
||||
[RequestStatus.COMPLETED]: '已校对',
|
||||
[RequestStatus.DISPENSE_COMPLETED]: '已完成',
|
||||
};
|
||||
|
||||
/** 发药状态 → 医嘱状态映射表(汇总申请/发药) */
|
||||
const DISPENSE_STATUS_DISPLAY = {
|
||||
8: '已提交',
|
||||
11: '已执行',
|
||||
18: '已提交',
|
||||
4: '已发药',
|
||||
};
|
||||
|
||||
@@ -321,20 +322,24 @@ const LEGACY_STATUS_TEXT = {
|
||||
已发送: '已签发',
|
||||
'已发送/待执行': '已签发',
|
||||
已完成: '已校对',
|
||||
已执行: '已执行',
|
||||
待配药: '已提交',
|
||||
已汇总: '已提交',
|
||||
已提交: '已提交',
|
||||
已发放: '已发药',
|
||||
};
|
||||
|
||||
function getStatusDisplayText(row) {
|
||||
const dispenseCode = Number(row?.dispenseStatus);
|
||||
if (DISPENSE_STATUS_DISPLAY[dispenseCode]) {
|
||||
return DISPENSE_STATUS_DISPLAY[dispenseCode];
|
||||
}
|
||||
// 优先使用当前 tab 的统一状态文本
|
||||
const tabText = STATUS_DISPLAY_BY_EXE_TAB[props.exeStatus]?.text;
|
||||
if (tabText) {
|
||||
return tabText;
|
||||
}
|
||||
// 非标准 tab 时,按优先级降级显示
|
||||
const dispenseCode = Number(row?.dispenseStatus);
|
||||
if (DISPENSE_STATUS_DISPLAY[dispenseCode]) {
|
||||
return DISPENSE_STATUS_DISPLAY[dispenseCode];
|
||||
}
|
||||
const requestCode = Number(row?.requestStatus);
|
||||
if (REQUEST_STATUS_DISPLAY[requestCode]) {
|
||||
return REQUEST_STATUS_DISPLAY[requestCode];
|
||||
@@ -349,6 +354,7 @@ function getStatusDisplayText(row) {
|
||||
}
|
||||
|
||||
function getStatusType(row) {
|
||||
// 优先使用当前 tab 的统一类型
|
||||
const tabType = STATUS_DISPLAY_BY_EXE_TAB[props.exeStatus]?.type;
|
||||
if (tabType) {
|
||||
return tabType;
|
||||
|
||||
@@ -140,7 +140,7 @@
|
||||
:data="item"
|
||||
border
|
||||
:header-cell-style="{ background: '#eef9fd !important' }"
|
||||
@select="handleSelectionChange"
|
||||
@checkbox-change="({ selection, row }) => handleSelectionChange(selection, row)"
|
||||
>
|
||||
<vxe-column
|
||||
type="checkbox"
|
||||
@@ -275,7 +275,8 @@ const REQUEST_STATUS_DISPLAY = {
|
||||
|
||||
/** 发药状态 → 医嘱状态映射表 */
|
||||
const DISPENSE_STATUS_DISPLAY = {
|
||||
8: '已提交',
|
||||
11: '已执行',
|
||||
18: '已提交',
|
||||
4: '已发药',
|
||||
};
|
||||
|
||||
@@ -285,8 +286,10 @@ const LEGACY_STATUS_TEXT = {
|
||||
已发送: '已签发',
|
||||
'已发送/待执行': '已签发',
|
||||
已完成: '已校对',
|
||||
已执行: '已执行',
|
||||
待配药: '已提交',
|
||||
已汇总: '已提交',
|
||||
已提交: '已提交',
|
||||
已发放: '已发药',
|
||||
};
|
||||
|
||||
@@ -502,7 +505,7 @@ function getSelectRows() {
|
||||
prescriptionList.value.forEach((item, index) => {
|
||||
const ref = proxy.$refs['tableRef' + index];
|
||||
if (ref && ref[0]) {
|
||||
list = [...list, ...ref[0].getSelectionRows()];
|
||||
list = [...list, ...ref[0].getCheckboxRecords()];
|
||||
}
|
||||
});
|
||||
return list.map((item) => {
|
||||
|
||||
Reference in New Issue
Block a user