bug 800 802 803 804 805

This commit is contained in:
Ranyunqiao
2026-06-24 13:45:20 +08:00
parent 9640ef7d39
commit 20dade7bf0
8 changed files with 27 additions and 9 deletions

View File

@@ -0,0 +1,9 @@
-- 修复 电子健康卡 & 电子发票 的 parent_id 为 基础数据 (211)
UPDATE sys_menu
SET parent_id = (SELECT menu_id FROM sys_menu WHERE menu_name = '基础数据' AND menu_type = 'M' LIMIT 1)
WHERE menu_name IN ('电子健康卡', '电子发票') AND (parent_id IS NULL OR parent_id NOT IN (SELECT menu_id FROM sys_menu));
-- 修复 传染病报卡 的 parent_id 为 院感管理 (10001)
UPDATE sys_menu
SET parent_id = (SELECT menu_id FROM sys_menu WHERE menu_name = '院感管理' AND menu_type = 'M' LIMIT 1)
WHERE menu_name = '传染病报卡' AND (parent_id IS NULL OR parent_id NOT IN (SELECT menu_id FROM sys_menu));

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.healthlink.his.web.pharmacymanage.mapper.MedicalDeviceDispenseMapper">
<mapper namespace="com.healthlink.his.web.pharmacy.dispense.mapper.MedicalDeviceDispenseMapper">
<select id="selectEncounterInfoListPage" resultType="com.healthlink.his.web.pharmacy.dispense.dto.EncounterInfoDto">
SELECT ii.encounter_id,
ii.encounter_no,

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.healthlink.his.web.pharmacymanage.mapper.MedicationDetailsMapper">
<mapper namespace="com.healthlink.his.web.pharmacy.dispense.mapper.MedicationDetailsMapper">
<select id="selectAmbPractitionerDetailPage"
resultType="com.healthlink.his.web.pharmacy.dispense.dto.MedDetailedAccountPageDto">
select A.outpatient_no,

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.healthlink.his.web.pharmacymanage.mapper.PendingMedicationDetailsMapper">
<mapper namespace="com.healthlink.his.web.pharmacy.dispense.mapper.PendingMedicationDetailsMapper">
<select id="selectPendingMedicationDetailsPage"
resultType="com.healthlink.his.web.pharmacy.dispense.dto.PendingMedicationPageDto">
SELECT T7.medicine_no, --药品编码

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.healthlink.his.web.pharmacymanage.mapper.ReturnMedicineMapper">
<mapper namespace="com.healthlink.his.web.pharmacy.dispense.mapper.ReturnMedicineMapper">
<select id="selectEncounterInfoListPage" resultType="com.healthlink.his.web.pharmacy.dispense.dto.EncounterInfoDto">
SELECT ii.reception_time,
ii.start_time,

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.healthlink.his.web.pharmacymanage.mapper.SummaryDispenseMedicineMapper">
<mapper namespace="com.healthlink.his.web.pharmacy.dispense.mapper.SummaryDispenseMedicineMapper">
</mapper>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.healthlink.his.web.pharmacymanage.mapper.WesternMedicineDispenseMapper">
<mapper namespace="com.healthlink.his.web.pharmacy.dispense.mapper.WesternMedicineDispenseMapper">
<resultMap id="medicineDispenseOrderMap" type="com.healthlink.his.web.pharmacy.dispense.dto.ItemDispenseOrderDto">
<result property="lotNumber" column="lot_number"/>
<result property="departmentName" column="department_name"/>

View File

@@ -1529,13 +1529,17 @@ function getAdviceTableRef() {
function handleBlur(row) {
// 延迟关闭弹窗,等待 click 事件在弹出层内容上正常触发
// 原因:浏览器 blur 事件先于 click 触发;同步关闭会移除 DOM导致 click 丢失
// 如果用户在弹出层内点击药品行selectAdviceBase 会在 150ms 内设 showPopover=false
// 如果用户在弹出层内点击药品行selectAdviceBase 会在 200ms 内设 showPopover=false
// 此处的赋值变为 no-opfalse→false弹窗正常关闭且数据正确填充
setTimeout(() => {
row.showPopover = false;
// 通过uniqueKey找到当前行确保popover关闭
const currentRow = prescriptionList.value.find(r => r.uniqueKey === row.uniqueKey);
if (currentRow) {
currentRow.showPopover = false;
}
// Bug #587: 标记弹窗刚关闭,防止点击空白处时触发行展开
popoverJustClosedByKey.value = row.uniqueKey;
}, 150);
}, 200);
}
function handleChange(value, row, index) {
@@ -1596,6 +1600,10 @@ function selectAdviceBase(key, row) {
} catch (e) {
console.warn('setValue error:', e);
}
// 确保在 setValue 之后再次设置 showPopover 为 false防止被覆盖
if (prescriptionList.value[rowIndex.value]) {
prescriptionList.value[rowIndex.value].showPopover = false;
}
// Bug #589: 出院带药选择药品后恢复类型标志
if (prescriptionList.value[rowIndex.value]?.dischargeFlag) {
prescriptionList.value[rowIndex.value].adviceType = 7;
@@ -2341,6 +2349,7 @@ function setValue(row) {
const updatedRow = {
...prevRow,
...baseRow,
showPopover: false, // 确保选择药品后关闭弹窗
uniqueKey: currentUniqueKey, // 确保 uniqueKey 不被覆盖
// Bug #589: 出院带药在 baseRow 中被药品的 adviceType=1 覆盖,此处恢复
dischargeFlag: prevRow.dischargeFlag, // 显式保留,防止被 baseRow 中的 undefined/null/0 覆盖