Compare commits

..

1 Commits

2 changed files with 4 additions and 31 deletions

View File

@@ -36,9 +36,6 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.Date; import java.util.Date;
import java.util.*; import java.util.*;
@@ -601,25 +598,6 @@ public class DoctorStationDiagnosisAppServiceImpl implements IDoctorStationDiagn
InfectiousDiseaseReport infectiousDiseaseReport = new InfectiousDiseaseReport(); InfectiousDiseaseReport infectiousDiseaseReport = new InfectiousDiseaseReport();
BeanUtils.copyProperties(infectiousDiseaseReportDto, infectiousDiseaseReport); BeanUtils.copyProperties(infectiousDiseaseReportDto, infectiousDiseaseReport);
// BeanUtils.copyProperties 不支持 LocalDate/LocalDateTime 到 java.util.Date 的类型转换,需手动处理
if (infectiousDiseaseReportDto.getOnsetDate() != null) {
infectiousDiseaseReport.setOnsetDate(
Date.from(infectiousDiseaseReportDto.getOnsetDate().atStartOfDay(ZoneId.systemDefault()).toInstant()));
}
if (infectiousDiseaseReportDto.getDiagDate() != null) {
infectiousDiseaseReport.setDiagDate(
Date.from(infectiousDiseaseReportDto.getDiagDate().atZone(ZoneId.systemDefault()).toInstant()));
}
// deathDate / reportDate 同理
if (infectiousDiseaseReportDto.getDeathDate() != null) {
infectiousDiseaseReport.setDeathDate(
Date.from(infectiousDiseaseReportDto.getDeathDate().atStartOfDay(ZoneId.systemDefault()).toInstant()));
}
if (infectiousDiseaseReportDto.getReportDate() != null) {
infectiousDiseaseReport.setReportDate(
Date.from(infectiousDiseaseReportDto.getReportDate().atStartOfDay(ZoneId.systemDefault()).toInstant()));
}
/** /**
* 设置创建人、删除状态、租户ID * 设置创建人、删除状态、租户ID
*/ */

View File

@@ -1362,9 +1362,8 @@ async function handleMethodSelect(checked, method, cat) {
existingItem.isPackage = true; existingItem.isPackage = true;
existingItem.packageId = method.packageId; existingItem.packageId = method.packageId;
existingItem.packageName = method.packageName || existingItem.packageName; // #428修复: 确保 packageName 同步 existingItem.packageName = method.packageName || existingItem.packageName; // #428修复: 确保 packageName 同步
existingItem.expanded = true; // #428修复: 有套餐时默认展开,展示套餐明细
// 预加载套餐明细 // 预加载套餐明细
await loadPackageDetailsForItem(existingItem); loadPackageDetailsForItem(existingItem);
} }
updateMethodDisplay(); updateMethodDisplay();
return; return;
@@ -1400,10 +1399,9 @@ async function handleMethodSelect(checked, method, cat) {
}; };
selectedItems.value.push(newItem); selectedItems.value.push(newItem);
// 如果是套餐,预加载套餐明细并默认展开 // 如果是套餐,预加载套餐明细
if (newItem.isPackage && newItem.packageId) { if (newItem.isPackage && newItem.packageId) {
newItem.expanded = true; loadPackageDetailsForItem(newItem);
await loadPackageDetailsForItem(newItem);
} }
// 自动回填执行科室 // 自动回填执行科室
@@ -1525,10 +1523,7 @@ async function handleItemSelect(checked, item, cat) {
// Bug #384修复 + #426修复: 展开/收起项目卡片 // Bug #384修复 + #426修复: 展开/收起项目卡片
async function toggleItemExpand(item) { async function toggleItemExpand(item) {
item.expanded = !item.expanded; item.expanded = !item.expanded;
const carrier = getPackageCarrier(item); if (item.expanded && (item.isPackage || item.packageName) && (!item.packageDetails || item.packageDetails.length === 0) && !item.packageDetailsLoading) {
const hasDetails = Array.isArray(item.packageDetailsDisplay) && item.packageDetailsDisplay.length > 0
|| Array.isArray(carrier?.packageDetails) && carrier.packageDetails.length > 0;
if (item.expanded && (item.isPackage || item.packageName) && !hasDetails && !item.packageDetailsLoading) {
await loadPackageDetailsForItem(item); await loadPackageDetailsForItem(item);
} }
if (item.expanded && shouldShowPackageBody(item)) { if (item.expanded && shouldShowPackageBody(item)) {