e8096892892ebb80116d5837ad3cef23fe7abf9e
根因分析: 1. orderGroupDrawer.vue 中 handleUseOrderGroup 的 mergedDetail 对象缺少 categoryCode、minUnitCode、doseUnitCode、partPercent、partAttributeEnum、 unitConversionRatio、defaultLotNumber 等关键字段,导致 setValue 和价格计算逻辑失效 2. 使用 || 替代 ?? 作为数字字段(如 doseQuantity=0)的回退操作符,导致值为 0 时被错误覆盖 3. handleSaveGroup 中价格计算使用 item.unitCode 查找 unitInfo,但 item.unitCode 可能为 undefined,而 setValue 已正确填充了 prescriptionList 中的 unitCode 修复内容: - mergedDetail 先展开 orderDetail(包含所有药品基础字段),再用组套用户覆盖值覆盖 - 所有数字字段回退从 || 改为 ??,确保 0 值不被覆盖 - 新增 doseQuantity 的 ?? 回退逻辑到 orderDetail.doseQuantity - 新增 groupId、groupOrder、orgId、orgName、therapyEnum 到 mergedDetail - handleSaveGroup 使用 baseRow 变量避免对象自引用问题 - 价格计算使用 newRow.unitCode(已由 setValue 填充)而非 item.unitCode Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Description
No description provided
Languages
Java
49.5%
Vue
44.8%
JavaScript
4.6%
HTML
0.7%
SCSS
0.1%