7 lines
54 KiB
JavaScript
7 lines
54 KiB
JavaScript
import{o as ts,R as ut,q as b,r as V,F as j,v as l,B as ss,u as a,C as N,bM as as,D as n,s as o,K as ls,L as p,b9 as os,c7 as ns,c8 as is,b6 as rs,T as m,b7 as ds,br as us,P as h,dj as cs,cG as ps,c9 as _s,J as ms,G as se,ae as ct,O as w,bm as gs,bn as fs,bc as bs,bf as vs,I as ys,aw as ae,w as xs,bz as ks,bH as Vs,a1 as hs,bt as ws,b8 as Ss,bA as Cs,ac as Us,bi as Rs,bk as Ds,bj as Is,bs as $s,M as v,p as O,ba as pt,cd as Ps,cc as _t}from"./.pnpm-CC7b2w5D.js";import{M as mt}from"./index-BgLAupNM.js";import{u as Ns,e as Es,i as k,m as U,_ as Os}from"./index-DjOYOm7k.js";import{f as Ts}from"./diabetes-discovery-display-B_wmGXQJ.js";import{a8 as zs,o as me,a9 as gt,t as Ls,u as Hs,au as Ws}from"./tcm-3syQyebu.js";import{m as Ms}from"./medicine-B9LknmYh.js";import{P as As}from"./index-cdLvm0xB.js";const js={key:0,class:"prescription-edit"},Fs={class:"info-section"},Bs={class:"info-section"},Gs={class:"info-section info-section--rp"},Ks={class:"rp-toolbar",role:"region","aria-label":"中药处方"},qs={class:"rp-toolbar__lead"},Js={class:"rp-toolbar__text"},Ys={class:"rp-toolbar__meta"},Xs={key:0,class:"rp-toolbar__lock-tip"},Qs={class:"rp-toolbar__actions",role:"toolbar","aria-label":"处方药材快捷操作"},Zs={class:"mb-3"},ea={class:"herb-formula-block"},ta={class:"herb-formula-block__head"},sa={class:"herbs-editor-grid"},aa={class:"herb-editor-card__title"},la={key:0,class:"herb-editor-card__dup-hint text-amber-600 text-xs mb-1"},oa={class:"herb-editor-card__row"},na={class:"herb-formula-block mt-4"},ia={class:"herb-formula-block__head"},ra={class:"herbs-editor-grid"},da={key:0,class:"herb-editor-card__dup-hint text-amber-600 text-xs mb-1"},ua={class:"herb-editor-card__row"},ca={key:0,class:"text-sm text-gray-400 py-2"},pa={class:"info-section"},_a={key:3,class:"ml-2"},ma={class:"signature-pad-wrap"},ga={class:"signature-actions"},fa={key:1,class:"rx-wrap"},ba={class:"rx-toolbar"},va={key:0,class:"rx-status rx-status-danger"},ya={key:1,class:"rx-status rx-status-danger"},xa={key:0,class:"mt-1"},ka={class:"prescription-preview-content"},Va={class:"case-record-a3-inner"},ha={class:"case-record-a3-title"},wa={class:"case-record-a3-body"},Sa={class:"cr-section"},Ca={class:"cr-grid"},Ua={class:"cr-item"},Ra={class:"cr-item"},Da={class:"cr-item"},Ia={class:"cr-item"},$a={class:"cr-item"},Pa={class:"cr-item"},Na={class:"cr-item"},Ea={class:"cr-item"},Oa={class:"cr-item"},Ta={class:"cr-item"},za={class:"cr-section"},La={class:"cr-grid"},Ha={class:"cr-item"},Wa={class:"cr-item"},Ma={class:"cr-section"},Aa={class:"cr-grid"},ja={class:"cr-item"},Fa={class:"cr-item"},Ba={class:"cr-item"},Ga={class:"cr-item"},Ka={class:"cr-item"},qa={class:"cr-item cr-full"},Ja={class:"cr-item cr-full"},Ya={class:"cr-section"},Xa={class:"cr-grid"},Qa={class:"cr-item cr-full"},Za={class:"cr-item cr-full"},el={class:"cr-item cr-full"},tl={class:"cr-item cr-full"},sl={class:"cr-item cr-full"},al={class:"cr-item cr-full"},ll={class:"cr-item cr-full"},ol={class:"cr-item cr-full"},nl={class:"cr-item cr-full"},il={class:"cr-item cr-full"},rl={class:"cr-item cr-full"},dl={class:"cr-item cr-full"},ul={class:"cr-item cr-full"},cl={class:"cr-item cr-full"},pl={class:"cr-item cr-full"},_l={class:"cr-section"},ml={class:"cr-item cr-full"},gl={class:"cr-section"},fl={class:"cr-grid"},bl={class:"cr-item"},vl={class:"cr-item"},yl={class:"cr-item"},xl={class:"cr-item"},kl={class:"cr-item"},Vl={class:"cr-section"},hl={key:0,class:"cr-grid"},wl={class:"cr-item cr-full"},Sl={class:"cr-images"},Cl=["src"],Ul={class:"cr-grid"},Rl={class:"cr-item cr-full"},Dl={key:2,class:"rx-audit"},Il={key:0},$l={key:0,class:"ml-2 text-gray-400"},Pl={key:1,class:"mt-1"},Nl={class:"flex justify-end gap-2 mt-4"},El={class:"inline-block"},Ol={class:"flex justify-end gap-2"},Tl={class:"mb-4 flex gap-3"},zl={class:"mb-3 flex flex-wrap items-center gap-x-4 gap-y-2"},Ll={key:0},Hl={key:1,class:"text-gray-400"},Wl={class:"flex justify-end mt-4"},Ml={class:"mt-3 flex flex-wrap items-center gap-x-4 gap-y-2"},le=560,oe=168,Al=ts({__name:"index",emits:["success"],setup(jl,{expose:ft,emit:bt}){function F(s){return s==="辅方"?"辅方":"主方"}function $e(s){const e={name:String((s==null?void 0:s.name)??"").trim(),dosage:Number(s==null?void 0:s.dosage)||0,formula_type:F(s==null?void 0:s.formula_type)},i=Number((s==null?void 0:s.medicine_id)??(s==null?void 0:s.id)??0);return Number.isInteger(i)&&i>0&&(e.medicine_id=i),((s==null?void 0:s.locked)===!0||(s==null?void 0:s.locked)===1)&&(e.locked=!0),e}function ne(s="浓缩水丸"){return s==="饮片"?{dosage_amount:50,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}:s==="浓缩水丸"?{dosage_amount:5,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}:{dosage_amount:1,dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,times_per_day:3,usage_days:7}}const Pe=bt,z=v(!1),vt=v(),ge=v(!1),fe=v(!1),Ne=v(null),Ee=v(),L=v(),ie=v(null),c=v(null),Oe=v("internal"),be=v(!1),re=O(()=>{const s=c.value;return s?Number(s.audit_status)===1&&Number(s.void_status)!==1:!1}),Te=O(()=>{const s=c.value;return s?Number(s.has_prescription_order)===1:!1}),yt=O(()=>re.value?"查看处方":"中医处方单");function xt(s){if(!s)return"";const e=new Date(s*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}const ze=O(()=>t.herbs.map((s,e)=>({herb:s,index:e})).filter(({herb:s})=>F(s.formula_type)==="主方")),X=O(()=>t.herbs.map((s,e)=>({herb:s,index:e})).filter(({herb:s})=>F(s.formula_type)==="辅方")),kt=O(()=>ze.value.length),Vt=O(()=>X.value.length),$=O(()=>t.herbs.some(s=>s.locked===!0)),ve=O(()=>{var e;const s=Number((e=we.userInfo)==null?void 0:e.id);return s>0?s:0}),H=v(!1),ye=v(!1),xe=v([]),Q=v(""),Z=v(""),B=v("replace"),G=v(!1),K=v(1),de=v(15),ke=v(0),q=v(!1),J=v(""),ue=v("replace"),Ve=v(!1),ht=/^(用法|用量|医嘱|忌口|水煎服|空腹|饭后|温水|内服|外用|备注|顿服|分服|ml|毫升|[×xX]\s*\d)/;function wt(s){let e=s.replace(/\r\n/g,`
|
||
`).replace(/\r/g,`
|
||
`);return e=e.replace(/[0-9]/g,i=>String.fromCharCode(i.charCodeAt(0)-65296+48)),e.trim()}function St(s){return s.replace(/^\s*Rp[::**\s]*/i,"").replace(/^\s*处方[::\s]*/,"").replace(/^\s*中药处方[::\s]*/,"").trimStart()}function he(s){return s.replace(/([^)]*)$/u,"").replace(/\([^)]*\)$/u,"").trim()}function Le(s){const e=s.trim();if(!e||ht.test(e)||/^\d/.test(e)||/^\d+\s*剂$/.test(e))return null;const i=e.match(/^(.+)\s*各\s*(\d+(?:\.\d+)?)\s*(?:克|g|G)?$/i);if(i){const y=parseFloat(i[2]);if(!Number.isFinite(y)||y<=0)return null;const g=i[1].split(/[、,,\s]+/).map(f=>f.trim()).filter(Boolean);return g.length?g.map(f=>({name:he(f),dosage:y})):null}const r=e.match(/^(.+?)\s*(\d+(?:\.\d+)?)\s*(?:克|g|G|钱)?$/i);if(r){const y=he(r[1].trim()),g=parseFloat(r[2]);return!y||!Number.isFinite(g)||g<=0?null:[{name:y,dosage:g}]}const _=he(e);return _.length>=2&&_.length<=16?[{name:_,dosage:6}]:null}function Ct(s){const e=St(wt(s)),i=[];for(const r of e.split(/\n+/)){const _=r.trim();if(_)for(const y of _.split(/[、,,;;]/)){const g=y.trim();if(g)if(/\s/.test(g)&&!Le(g)){const f=g.split(/\s+(?=[\u4e00-\u9fff]{2,})/);for(const S of f){const d=S.trim();d&&i.push(d)}}else i.push(g)}}return i}function Ut(s){const e=[];for(const i of Ct(s)){const r=Le(i);r&&e.push(...r)}return e}async function Rt(s){const e=s.trim();if(!e)return null;try{const _=((await Ms({name:e,page_no:1,page_size:200,status:1})).lists||[]).filter(y=>(y.name??"").trim()===e);return _.length===1?{medicine_id:Number(_[0].id),name:_[0].name.trim()}:null}catch{return null}}function Dt(){q.value=!0}async function It(){const s=Ut(J.value);if(!s.length){k.msgWarning("未能从文本中解析出药材,请检查格式(药名 + 剂量,或用顿号/换行分隔)");return}Ve.value=!0;try{const e=[],i=[];for(const g of s){const f=await Rt(g.name);if(!f){i.push(g.name.trim());continue}e.push({...f,dosage:g.dosage,formula_type:"主方"})}const r=[...new Set(i.filter(Boolean))];if(e.length===0){k.msgWarning(r.length?`药品库中无以下完全同名药材,未录入:${r.join("、")}`:"未能匹配到药品库中的药材");return}if(ue.value==="replace"){const g=t.herbs.filter(f=>F(f.formula_type)==="辅方");t.herbs=[...g,...e]}else t.herbs.push(...e);const _=Ie(),y=r.length>0?`;药品库未收录已跳过:${r.join("、")}`:"";_.length?k.msgWarning(`已导入 ${e.length} 味药材${y}。存在重复药名:${_.join("、")},请合并剂量或删除多余行`):r.length?k.msgSuccess(`已导入 ${e.length} 味药材${y},请核对剂量`):k.msgSuccess(`已导入 ${e.length} 味药材,请核对药名与剂量`),q.value=!1,J.value=""}finally{Ve.value=!1}}const He=pt({stationName:"成都双流甄养堂互联网医院",showDisclaimer:!0,disclaimer:""}),t=pt({diagnosis_id:0,appointment_id:0,prescription_name:"",prescription_type:"浓缩水丸",dosage_amount:10,dosage_unit:"g",dosage_bag_count:1,need_decoction:!1,bags_per_dose:1,patient_name:"",gender:0,gender_desc:"女",age:0,phone:"",visit_no:"",prescription_date:"",pulse:"",tongue:"",tongue_image:"",pulse_condition:"",clinical_diagnosis:"",case_record:null,herbs:[],dose_count:1,dose_unit:"剂",usage_days:7,times_per_day:2,usage_instruction:"",usage_time:"饭后",usage_way:"温水送服",dietary_taboo:[],usage_notes:"",amount:0,doctor_name:"",doctor_signature:"",is_shared:0,aux_usage:ne("浓缩水丸")}),we=Ns(),$t=Es(),Pt=s=>{const e=typeof s=="string"?s:(s==null?void 0:s.url)??(s==null?void 0:s.uri)??(s==null?void 0:s.path)??"";return e?String(e).startsWith("http")?e:$t.getImageUrl(e):""},Se=v([]),Ce=v([]),We=v([]),Me=v([]),Ae=v([]),je=v([]),Fe=v([]),Be=v([]),Ge=v([]),Ke=v([]),qe=v([]),Je=v([]),Ye=v([]),Xe=v([]),Qe=v([]),Ze=v([]),et=v([]),tt=v([]),T=(s,e)=>{if(!e)return"";const i=s.find(r=>r.value===e);return i?i.name:e},st=async()=>{try{const[s,e,i,r,_,y,g,f,S,d,C,D,P,W,M,Y,ee,te]=await Promise.all([U({type:"diagnosis_type"}),U({type:"syndrome_type"}),U({type:"diabetes_type"}),U({type:"past_history"}),U({type:"appetite"}),U({type:"water_intake"}),U({type:"diet_condition"}),U({type:"weight_change"}),U({type:"body_feeling"}),U({type:"sleep_condition"}),U({type:"eye_condition"}),U({type:"head_feeling"}),U({type:"sweat_condition"}),U({type:"skin_condition"}),U({type:"urine_condition"}),U({type:"stool_condition"}),U({type:"kidney_condition"}),U({type:"fatty_liver_degree"})]);Se.value=(s==null?void 0:s.diagnosis_type)||[],Ce.value=(e==null?void 0:e.syndrome_type)||[],We.value=(i==null?void 0:i.diabetes_type)||[],Me.value=(r==null?void 0:r.past_history)||[],Ae.value=(_==null?void 0:_.appetite)||[],je.value=(y==null?void 0:y.water_intake)||[],Fe.value=(g==null?void 0:g.diet_condition)||[],Be.value=(f==null?void 0:f.weight_change)||[],Ge.value=(S==null?void 0:S.body_feeling)||[],Ke.value=(d==null?void 0:d.sleep_condition)||[],qe.value=(C==null?void 0:C.eye_condition)||[],Je.value=(D==null?void 0:D.head_feeling)||[],Ye.value=(P==null?void 0:P.sweat_condition)||[],Xe.value=(W==null?void 0:W.skin_condition)||[],Qe.value=(M==null?void 0:M.urine_condition)||[],Ze.value=(Y==null?void 0:Y.stool_condition)||[],et.value=(ee==null?void 0:ee.kidney_condition)||[],tt.value=(te==null?void 0:te.fatty_liver_degree)||[]}catch{}},I=(s,e)=>{if(!e||Array.isArray(e)&&e.length===0)return"—";const r=(Array.isArray(e)?e:typeof e=="string"?e.split(","):[]).map(_=>{const y=s.find(g=>g.value===_);return y?y.name:_}).filter(Boolean);return r.length?r.join("、"):"—"},Nt=s=>!s||Array.isArray(s)&&s.length===0?"—":(Array.isArray(s)?s:typeof s=="string"?s.split(","):[]).filter(Boolean).join("、")||"—",Et=s=>{var _;if((_=s==null?void 0:s.symptoms)!=null&&_.trim())return s.symptoms.trim();const e=T(Se.value,s==null?void 0:s.diagnosis_type),i=T(Ce.value,s==null?void 0:s.syndrome_type),r=[e,i].filter(Boolean);return r.length?r.join(" "):""},Ot=async(s,e)=>{var i;if(G.value){console.warn("处方正在打开中,请勿重复点击");return}G.value=!0;try{e!=null&&e.stationName&&(He.stationName=e.stationName);const r=s.diagnosis||s,_=s.diagnosis_id??(r==null?void 0:r.id)??s.id;if(!_){k.msgWarning("缺少诊单信息");return}await st();const y=Number(s.id??s.appointment_id??0);if(y)try{const f=await zs({appointment_id:y});if(console.log("-----------",f),f!=null&&f.id){const S=await me({id:f.id});c.value=S,z.value=!0;return}}catch{}let g=s.case_record&&Object.keys(s.case_record).length>0?s.case_record:null;if(!g&&_)try{const f=await gt({id:Number(_)});g=f&&typeof f=="object"?f:null}catch(f){console.warn("获取诊单详情失败:",f)}t.diagnosis_id=Number(_),t.appointment_id=y,t.prescription_name="",t.prescription_type="浓缩水丸",t.dosage_unit="g",t.dosage_amount=10,t.dosage_bag_count=1,t.patient_name=s.patient_name||r.patient_name||"",t.gender=s.patient_gender??r.gender??0,t.gender_desc=t.gender===1?"男":"女",t.age=s.patient_age??r.age??0,t.phone=s.patient_phone||r.phone||"",t.visit_no=s.id?`1K${String(s.id).padStart(8,"0")}`:"",t.prescription_date=new Date().toISOString().slice(0,10),t.pulse=r.pulse||"",t.tongue=r.tongue_coating||r.tongue||"",t.tongue_image="",t.pulse_condition="",t.clinical_diagnosis=Et(r),t.case_record=g,t.herbs=[],t.dose_count=1,t.dose_unit="剂",t.usage_days=7,t.usage_instruction="",t.usage_time="饭后",t.usage_way="温水送服",t.dietary_taboo=[],t.usage_notes="",t.amount=0,t.doctor_name=((i=we.userInfo)==null?void 0:i.name)||"",t.doctor_signature="",t.is_shared=0,t.need_decoction=!1,t.bags_per_dose=1,t.times_per_day=2,Object.assign(t.aux_usage,ne("浓缩水丸")),c.value=null,z.value=!0,setTimeout(()=>Re(),100)}finally{setTimeout(()=>{G.value=!1},500)}},Tt=async(s,e)=>{if(G.value){console.warn("处方正在打开中,请勿重复点击");return}G.value=!0,Oe.value=(e==null?void 0:e.slipType)??"internal",be.value=(e==null?void 0:e.hideCaseRecord)??!1;try{const i=await me({id:s});c.value=i,i!=null&&i.case_record&&Object.keys(i.case_record).length>0&&await st(),z.value=!0}catch{k.msgError("加载处方失败")}finally{setTimeout(()=>{G.value=!1},500)}},Ue=()=>{z.value=!1,c.value=null,Oe.value="internal",be.value=!1},at=s=>{const e=L.value;if(!e)return{x:0,y:0};const i=e.getBoundingClientRect();if(i.width<=0||i.height<=0)return{x:0,y:0};const r=(s.clientX-i.left)/i.width*le,_=(s.clientY-i.top)/i.height*oe;return{x:Math.max(0,Math.min(le,r)),y:Math.max(0,Math.min(oe,_))}},zt=()=>{const s=L.value;s&&(t.doctor_signature=s.toDataURL("image/png"))},Lt=s=>{if(s.pointerType==="mouse"&&s.button!==0)return;const e=L.value,i=e==null?void 0:e.getContext("2d");if(!e||!i)return;e.setPointerCapture(s.pointerId),ie.value=s.pointerId;const{x:r,y:_}=at(s);i.beginPath(),i.moveTo(r,_)},Ht=s=>{var _;if(ie.value!==s.pointerId)return;const e=(_=L.value)==null?void 0:_.getContext("2d");if(!e)return;const{x:i,y:r}=at(s);e.lineTo(i,r),e.stroke(),e.beginPath(),e.moveTo(i,r)},lt=s=>{if(ie.value!==s.pointerId)return;ie.value=null;const e=L.value;if(e)try{e.releasePointerCapture(s.pointerId)}catch{}zt()},Wt=()=>{Re(),t.doctor_signature=""},Re=()=>{const s=L.value;if(!s)return;const e=Math.min(typeof window<"u"&&window.devicePixelRatio||1,2.5);s.style.width=`${le}px`,s.style.height=`${oe}px`,s.width=Math.round(le*e),s.height=Math.round(oe*e);const i=s.getContext("2d");i&&(i.setTransform(1,0,0,1,0,0),i.scale(e,e),i.fillStyle="#fff",i.fillRect(0,0,le,oe),i.strokeStyle="#333",i.lineWidth=2.5,i.lineCap="round",i.lineJoin="round")};function De(s){return(s??"").trim()}function ce(s){var _,y;const e=t.herbs,i=De((_=e[s])==null?void 0:_.name);if(!i)return!1;let r=0;for(let g=0;g<e.length;g++)De((y=e[g])==null?void 0:y.name)===i&&r++;return r>1}function Ie(){const s=new Map;for(const e of t.herbs){const i=De(e==null?void 0:e.name);i&&s.set(i,(s.get(i)??0)+1)}return[...s.entries()].filter(([,e])=>e>1).map(([e])=>e)}const ot=(s="主方")=>{if($.value){k.msgWarning("该处方含「禁用修改」模板,药材已锁定,请重新从处方库导入覆盖");return}t.herbs.push({name:"",dosage:6,formula_type:s})},nt=s=>{if($.value){k.msgWarning("该处方含「禁用修改」模板,药材已锁定,不可删除");return}t.herbs.splice(s,1)},pe=async()=>{const s=ve.value;if(!s){k.msgWarning("无法确定开方医师,无法加载处方库"),xe.value=[],ke.value=0;return}ye.value=!0;try{const e=await Ls({page_no:K.value,page_size:de.value,prescription_name:Q.value,formula_type:Z.value,prescribing_creator_id:s});xe.value=e.lists||[],ke.value=e.count||0}catch(e){console.error("加载处方库失败:",e),k.msgError("加载处方库失败")}finally{ye.value=!1}},_e=()=>{K.value=1,pe()},Mt=()=>{if(!ve.value){k.msgWarning("无法确定开方医师,无法从处方库导入");return}H.value=!0},At=s=>{it(s)},it=s=>{if(!s.herbs||s.herbs.length===0){k.msgWarning("该处方没有药材信息");return}const e=F(s.formula_type),i=Number(s==null?void 0:s.disable_edit)===1,r=JSON.parse(JSON.stringify(s.herbs)).map(y=>{const g=$e(y);return g.formula_type=e,i?g.locked=!0:delete g.locked,g});if(B.value==="replace"){const y=t.herbs.filter(g=>F(g.formula_type)!==e);t.herbs=[...y,...r]}else t.herbs.push(...r);const _=B.value==="append"?"(已追加)":"";Ie().length?k.msgWarning(`已导入处方「${s.prescription_name}」${_},共${r.length}味药材。存在重复药名,请合并剂量或删除多余行`):k.msgSuccess(`已导入处方「${s.prescription_name}」${_},共${r.length}味药材`),H.value=!1};ut(H,s=>{if(s){if(!ve.value){k.msgWarning("无法确定开方医师,无法从处方库导入"),H.value=!1;return}Q.value="",Z.value="",B.value="replace",K.value=1,pe()}}),ut(()=>t.prescription_type,s=>{s==="浓缩水丸"?(t.dosage_unit="g",t.dosage_amount=10,t.dosage_bag_count=1,t.need_decoction=!1,t.bags_per_dose=1):s==="饮片"?(t.dosage_unit="ml",t.dosage_amount=50,t.dosage_bag_count=1,t.bags_per_dose=1):(t.dosage_unit="g",t.dosage_amount=void 0,t.dosage_bag_count=1,t.need_decoction=!1,t.bags_per_dose=1),Object.assign(t.aux_usage,ne(s))});const jt=async()=>{var e,i,r;if(!((e=t.clinical_diagnosis)!=null&&e.trim())){k.msgWarning("请输入临床诊断");return}if(t.herbs.length===0){k.msgWarning("请至少添加一味中药");return}const s=Ie();if(s.length){k.msgWarning(`存在重复药名:${s.join("、")},请合并剂量或删除多余行后再保存`);return}for(const _ of t.herbs){if(!((i=_.name)!=null&&i.trim())){k.msgWarning("请填写中药名称");return}if(!_.dosage||_.dosage<=0){k.msgWarning(`请填写「${_.name}」的剂量`);return}}if(!((r=t.doctor_signature)!=null&&r.trim())){k.msgWarning("请使用电子签名板手写医师签名");return}ge.value=!0;try{const _=await Hs({diagnosis_id:t.diagnosis_id,appointment_id:t.appointment_id,prescription_name:t.prescription_name,prescription_type:t.prescription_type,patient_name:t.patient_name,gender:t.gender,age:t.age,phone:t.phone,visit_no:t.visit_no,prescription_date:t.prescription_date,pulse:t.pulse,tongue:t.tongue,tongue_image:t.tongue_image,pulse_condition:t.pulse_condition,clinical_diagnosis:t.clinical_diagnosis,case_record:t.case_record,herbs:t.herbs.map(g=>$e(g)),aux_usage:X.value.length>0?{...t.aux_usage}:null,dose_count:t.dose_count,dose_unit:t.dose_unit,dosage_amount:t.dosage_amount,dosage_unit:t.dosage_unit,dosage_bag_count:t.dosage_bag_count,need_decoction:t.need_decoction,bags_per_dose:t.bags_per_dose,usage_days:t.usage_days,times_per_day:t.times_per_day,usage_instruction:t.usage_instruction,usage_time:t.usage_time,usage_way:t.usage_way,dietary_taboo:t.dietary_taboo,usage_notes:t.usage_notes,amount:t.amount,doctor_name:t.doctor_name,doctor_signature:t.doctor_signature,is_shared:t.is_shared}),y=_==null?void 0:_.id;if(y){const g=await me({id:y});c.value=g,Pe("success")}else k.msgError("保存失败")}catch(_){k.msgError((_==null?void 0:_.msg)||"保存失败")}finally{ge.value=!1}},Ft=s=>{if(!s)return"—";const e=new Date(s*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}:${String(e.getSeconds()).padStart(2,"0")}`},Bt=async()=>{var e,i;const s=(e=c.value)==null?void 0:e.id;if(s){if(Number((i=c.value)==null?void 0:i.has_prescription_order)===1){k.msgWarning("该处方已存在业务订单,无法作废");return}try{await k.confirm("确定要作废该处方吗?作废后不可恢复。"),fe.value=!0,await Ws({id:s}),k.msgSuccess("作废成功");const r=await me({id:s});c.value=r,Pe("success")}catch(r){r!=="cancel"&&(r==null?void 0:r.message)!=="cancel"&&k.msgError((r==null?void 0:r.msg)||"作废失败")}finally{fe.value=!1}}},Gt=async s=>{if(!s)return null;try{const e=await gt({id:s});return e&&typeof e=="object"?e:null}catch(e){return console.warn("获取诊单详情失败:",e),null}},Kt=async()=>{var e;const s=c.value;s&&(t.diagnosis_id=s.diagnosis_id??t.diagnosis_id,t.appointment_id=s.appointment_id??t.appointment_id,t.prescription_name="",t.prescription_type=s.prescription_type||"浓缩水丸",t.prescription_type==="浓缩水丸"?(t.dosage_unit="g",t.dosage_amount=10,t.dosage_bag_count=1):t.prescription_type==="饮片"?(t.dosage_unit="ml",t.dosage_amount=50,t.dosage_bag_count=1):(t.dosage_unit="g",t.dosage_amount=void 0,t.dosage_bag_count=1),t.patient_name=s.patient_name||"",t.gender=s.gender??0,t.gender_desc=s.gender===1?"男":"女",t.age=s.age??0,t.phone=s.phone||"",t.visit_no=s.visit_no||"",t.prescription_date=new Date().toISOString().slice(0,10),t.pulse=s.pulse||"",t.tongue=s.tongue||"",t.tongue_image="",t.pulse_condition="",t.clinical_diagnosis=s.clinical_diagnosis||"",t.dose_count=1,t.dose_unit=s.dose_unit||"剂",t.usage_days=7,t.usage_instruction="",t.usage_time="饭后",t.usage_way="温水送服",t.dietary_taboo=[],t.usage_notes="",t.amount=0,t.doctor_name=((e=we.userInfo)==null?void 0:e.name)||s.doctor_name||"",t.doctor_signature="",t.is_shared=0,t.herbs=[],Object.assign(t.aux_usage,ne(t.prescription_type||"浓缩水丸")),t.case_record=s.case_record&&Object.keys(s.case_record).length>0?s.case_record:await Gt(Number(t.diagnosis_id)),setTimeout(()=>Re(),100)),c.value=null},rt=async()=>{var e;const s=((e=Ne.value)==null?void 0:e.paperEl)??null;if(!s)throw new Error("未找到处方内容");return _t(s,{scale:2,useCORS:!0,logging:!1,backgroundColor:"#ffffff"})},qt=async s=>{const e=s.querySelectorAll('img[src^="http"]'),i=Array.from(e).map(async r=>{try{const _=await fetch(r.src,{mode:"cors"});if(!_.ok)return;const y=await _.blob(),g=await new Promise((f,S)=>{const d=new FileReader;d.onload=()=>f(d.result),d.onerror=S,d.readAsDataURL(y)});r.src=g}catch{}});await Promise.allSettled(i)},Jt=async()=>{const s=Ee.value;return s?(s.scrollIntoView({behavior:"instant",block:"nearest"}),await qt(s),await new Promise(e=>setTimeout(e,200)),_t(s,{scale:2,useCORS:!0,logging:!1,backgroundColor:"#ffffff"})):null},Yt=async()=>{var s;try{const e=await rt(),i=document.createElement("a");i.download=`处方_${((s=c.value)==null?void 0:s.patient_name)||"未命名"}_${Date.now()}.png`,i.href=e.toDataURL("image/png"),i.click(),k.msgSuccess("图片已下载")}catch{k.msgError("下载图片失败")}},Xt=async()=>{var s;try{const e=await rt(),i=e.toDataURL("image/png"),r=new Ps({orientation:"portrait",unit:"mm",format:"a5"}),_=r.internal.pageSize.getWidth(),y=r.internal.pageSize.getHeight(),g=Math.min(_/e.width,y/e.height),f=e.width*g,S=e.height*g;r.addImage(i,"PNG",0,0,f,S);const d=await Jt();if(d){r.addPage("a3","p");const P=Math.min(297/d.width,420/d.height),W=d.width*P,M=d.height*P;r.addImage(d.toDataURL("image/png"),"PNG",0,0,W,M)}r.save(`处方_${((s=c.value)==null?void 0:s.patient_name)||"未命名"}_${Date.now()}.pdf`),k.msgSuccess("PDF已下载")}catch{k.msgError("下载PDF失败")}};return ft({open:Ot,openById:Tt}),(s,e)=>{const i=rs,r=is,_=ds,y=ns,g=us,f=ls,S=ms,d=fs,C=gs,D=vs,P=bs,W=ys,M=os,Y=xs,ee=hs,te=ss,A=Ds,Qt=Is,Zt=$s,dt=ws,es=Rs;return b(),V(j,null,[l(te,{modelValue:a(z),"onUpdate:modelValue":e[31]||(e[31]=x=>N(z)?z.value=x:null),title:a(yt),size:"1200px","close-on-click-modal":!1,onClose:Ue},as({default:n(()=>{var x,E;return[a(c)?(b(),V("div",fa,[o("div",ba,[a(c).void_status===1?(b(),w(g,{key:0,type:"danger",size:"small"},{default:n(()=>[...e[70]||(e[70]=[p("已作废",-1)])]),_:1})):a(re)?(b(),w(g,{key:1,type:"success",size:"small"},{default:n(()=>[...e[71]||(e[71]=[p("已通过",-1)])]),_:1})):Number(a(c).audit_status)===0?(b(),w(g,{key:2,type:"warning",size:"small"},{default:n(()=>[...e[72]||(e[72]=[p("待审核",-1)])]),_:1})):Number(a(c).audit_status)===2?(b(),w(g,{key:3,type:"danger",size:"small"},{default:n(()=>[...e[73]||(e[73]=[p("已驳回",-1)])]),_:1})):h("",!0),e[74]||(e[74]=o("div",{class:"flex-1"},null,-1))]),a(c).void_status===1?(b(),V("div",va," 作废人:"+m(a(c).void_by_name||"—")+",作废时间:"+m(Ft(a(c).void_time)),1)):Number(a(c).audit_status)===2?(b(),V("div",ya,[e[75]||(e[75]=o("div",{class:"font-medium"},"处方审核:已驳回",-1)),a(c).audit_remark?(b(),V("div",xa,"驳回意见:"+m(a(c).audit_remark),1)):h("",!0)])):h("",!0),o("div",ka,[a(c)?(b(),w(As,{key:0,ref_key:"rxSlipRef",ref:Ne,data:a(c)},null,8,["data"])):h("",!0),a(c).case_record&&!a(be)?(b(),V("div",{key:1,ref_key:"caseRecordPrintRef",ref:Ee,class:"case-record-a3"},[o("div",Va,[o("h2",ha,m(a(He).stationName)+" 详细病历",1),o("div",wa,[o("div",Sa,[e[86]||(e[86]=o("div",{class:"cr-section-title"},"基本信息",-1)),o("div",Ca,[o("div",Ua,[e[76]||(e[76]=o("span",{class:"cr-label"},"诊单ID",-1)),p(m(a(c).case_record.patient_id||"—"),1)]),o("div",Ra,[e[77]||(e[77]=o("span",{class:"cr-label"},"姓名",-1)),p(m(a(c).case_record.patient_name||"—"),1)]),o("div",Da,[e[78]||(e[78]=o("span",{class:"cr-label"},"身份证号",-1)),p(m(a(c).case_record.id_card||"—"),1)]),o("div",Ia,[e[79]||(e[79]=o("span",{class:"cr-label"},"手机号",-1)),p(m(a(c).case_record.phone||"—"),1)]),o("div",$a,[e[80]||(e[80]=o("span",{class:"cr-label"},"性别",-1)),p(m(a(c).gender_desc),1)]),o("div",Pa,[e[81]||(e[81]=o("span",{class:"cr-label"},"年龄",-1)),p(m(a(c).case_record.age??"—")+"岁",1)]),o("div",Na,[e[82]||(e[82]=o("span",{class:"cr-label"},"婚姻状态",-1)),p(m(["未婚","已婚","离异"][a(c).case_record.marital_status]??"—"),1)]),o("div",Ea,[e[83]||(e[83]=o("span",{class:"cr-label"},"身高",-1)),p(m(a(c).case_record.height??"—")+"cm",1)]),o("div",Oa,[e[84]||(e[84]=o("span",{class:"cr-label"},"体重",-1)),p(m(a(c).case_record.weight??"—")+"kg",1)]),o("div",Ta,[e[85]||(e[85]=o("span",{class:"cr-label"},"地区",-1)),p(m(a(c).case_record.region||"—"),1)])])]),o("div",za,[e[89]||(e[89]=o("div",{class:"cr-section-title"},"生命体征",-1)),o("div",La,[o("div",Ha,[e[87]||(e[87]=o("span",{class:"cr-label"},"血压",-1)),p(m(a(c).case_record.systolic_pressure!=null&&a(c).case_record.diastolic_pressure!=null?a(c).case_record.systolic_pressure+"/"+a(c).case_record.diastolic_pressure+" mmHg":"—"),1)]),o("div",Wa,[e[88]||(e[88]=o("span",{class:"cr-label"},"空腹血糖",-1)),p(m(a(c).case_record.fasting_blood_sugar!=null?a(c).case_record.fasting_blood_sugar+" mmol/L":"—"),1)])])]),o("div",Ma,[e[97]||(e[97]=o("div",{class:"cr-section-title"},"主诉",-1)),o("div",Aa,[o("div",ja,[e[90]||(e[90]=o("span",{class:"cr-label"},"诊断日期",-1)),p(m(a(c).case_record.diagnosis_date||"—"),1)]),o("div",Fa,[e[91]||(e[91]=o("span",{class:"cr-label"},"诊断类型",-1)),p(m(T(a(Se),a(c).case_record.diagnosis_type)||"—"),1)]),o("div",Ba,[e[92]||(e[92]=o("span",{class:"cr-label"},"证型",-1)),p(m(T(a(Ce),a(c).case_record.syndrome_type)||"—"),1)]),o("div",Ga,[e[93]||(e[93]=o("span",{class:"cr-label"},"糖尿病期数",-1)),p(m(T(a(We),a(c).case_record.diabetes_type)||"—"),1)]),o("div",Ka,[e[94]||(e[94]=o("span",{class:"cr-label"},"发现糖尿病患病史",-1)),p(m(a(Ts)((x=a(c).case_record)==null?void 0:x.diabetes_discovery_year)),1)]),o("div",qa,[e[95]||(e[95]=o("span",{class:"cr-label"},"当地医院诊断",-1)),p(m(Nt(a(c).case_record.local_hospital_diagnosis)),1)]),o("div",Ja,[e[96]||(e[96]=o("span",{class:"cr-label"},"当地就诊医院",-1)),p(m(a(c).case_record.local_hospital_name||"—"),1)])])]),o("div",Ya,[e[113]||(e[113]=o("div",{class:"cr-section-title"},"现病史",-1)),o("div",Xa,[o("div",Qa,[e[98]||(e[98]=o("span",{class:"cr-label"},"口腔感觉",-1)),p(m(I(a(Ae),a(c).case_record.appetite)),1)]),o("div",Za,[e[99]||(e[99]=o("span",{class:"cr-label"},"每日饮水量",-1)),p(m(T(a(je),a(c).case_record.water_intake)||"—"),1)]),o("div",el,[e[100]||(e[100]=o("span",{class:"cr-label"},"体重变化",-1)),p(m(T(a(Be),a(c).case_record.weight_change)||"—"),1)]),o("div",tl,[e[101]||(e[101]=o("span",{class:"cr-label"},"脂肪肝程度",-1)),p(m(T(a(tt),a(c).case_record.fatty_liver_degree)||"—"),1)]),o("div",sl,[e[102]||(e[102]=o("span",{class:"cr-label"},"饮食情况",-1)),p(m(I(a(Fe),a(c).case_record.diet_condition)),1)]),o("div",al,[e[103]||(e[103]=o("span",{class:"cr-label"},"肢体感觉",-1)),p(m(I(a(Ge),a(c).case_record.body_feeling)),1)]),o("div",ll,[e[104]||(e[104]=o("span",{class:"cr-label"},"睡眠情况",-1)),p(m(I(a(Ke),a(c).case_record.sleep_condition)),1)]),o("div",ol,[e[105]||(e[105]=o("span",{class:"cr-label"},"眼睛情况",-1)),p(m(I(a(qe),a(c).case_record.eye_condition)),1)]),o("div",nl,[e[106]||(e[106]=o("span",{class:"cr-label"},"头部感觉",-1)),p(m(I(a(Je),a(c).case_record.head_feeling)),1)]),o("div",il,[e[107]||(e[107]=o("span",{class:"cr-label"},"出汗情况",-1)),p(m(I(a(Ye),a(c).case_record.sweat_condition)),1)]),o("div",rl,[e[108]||(e[108]=o("span",{class:"cr-label"},"皮肤情况",-1)),p(m(I(a(Xe),a(c).case_record.skin_condition)),1)]),o("div",dl,[e[109]||(e[109]=o("span",{class:"cr-label"},"小便情况",-1)),p(m(I(a(Qe),a(c).case_record.urine_condition)),1)]),o("div",ul,[e[110]||(e[110]=o("span",{class:"cr-label"},"大便情况",-1)),p(m(I(a(Ze),a(c).case_record.stool_condition)),1)]),o("div",cl,[e[111]||(e[111]=o("span",{class:"cr-label"},"腰肾情况",-1)),p(m(I(a(et),a(c).case_record.kidney_condition)),1)]),o("div",pl,[e[112]||(e[112]=o("span",{class:"cr-label"},"其他补充",-1)),p(m(a(c).case_record.symptoms||"—"),1)])])]),o("div",_l,[e[115]||(e[115]=o("div",{class:"cr-section-title"},"既往史",-1)),o("div",ml,[e[114]||(e[114]=o("span",{class:"cr-label"},null,-1)),p(m(I(a(Me),a(c).case_record.past_history)),1)])]),o("div",gl,[e[121]||(e[121]=o("div",{class:"cr-section-title"},"其他病史",-1)),o("div",fl,[o("div",bl,[e[116]||(e[116]=o("span",{class:"cr-label"},"外伤史",-1)),p(m(a(c).case_record.trauma_history===1?"有":"无"),1)]),o("div",vl,[e[117]||(e[117]=o("span",{class:"cr-label"},"手术史",-1)),p(m(a(c).case_record.surgery_history===1?"有":"无"),1)]),o("div",yl,[e[118]||(e[118]=o("span",{class:"cr-label"},"过敏史",-1)),p(m(a(c).case_record.allergy_history===1?"有":"无"),1)]),o("div",xl,[e[119]||(e[119]=o("span",{class:"cr-label"},"家族病史",-1)),p(m(a(c).case_record.family_history===1?"有":"无"),1)]),o("div",kl,[e[120]||(e[120]=o("span",{class:"cr-label"},"妊娠哺乳史",-1)),p(m(a(c).case_record.pregnancy_history===1?"有":"无"),1)])])]),o("div",Vl,[e[124]||(e[124]=o("div",{class:"cr-section-title"},"诊断信息",-1)),(E=a(c).case_record.tongue_images)!=null&&E.length?(b(),V("div",hl,[o("div",wl,[e[122]||(e[122]=o("span",{class:"cr-label"},"舌苔照片",-1)),o("div",Sl,[(b(!0),V(j,null,se(a(c).case_record.tongue_images,(u,R)=>(b(),V("img",{key:R,src:Pt(u),class:"cr-img",crossorigin:"anonymous"},null,8,Cl))),128))])])])):h("",!0),o("div",Ul,[o("div",Rl,[e[123]||(e[123]=o("span",{class:"cr-label"},"舌象",-1)),p(m(a(c).case_record.tongue_coating||"—"),1)])])])])])],512)):h("",!0)]),a(c)&&(a(c).audit_by_name||a(c).audit_remark)?(b(),V("div",Dl,[a(c).audit_by_name?(b(),V("div",Il,[p(" 审核人:"+m(a(c).audit_by_name)+" ",1),a(c).audit_time?(b(),V("span",$l,m(xt(a(c).audit_time)),1)):h("",!0)])):h("",!0),a(c).audit_remark?(b(),V("div",Pl,"审核意见:"+m(a(c).audit_remark),1)):h("",!0)])):h("",!0),o("div",Nl,[l(f,{onClick:Yt},{default:n(()=>[l(Y,null,{default:n(()=>[l(a(ks))]),_:1}),e[125]||(e[125]=p(" 下载图片 ",-1))]),_:1}),l(f,{type:"primary",onClick:Xt},{default:n(()=>[l(Y,null,{default:n(()=>[l(a(Vs))]),_:1}),e[126]||(e[126]=p(" 下载PDF ",-1))]),_:1}),a(c).void_status!==1&&!a(re)?(b(),w(ee,{key:0,disabled:!a(Te),content:"该处方已存在业务订单,无法作废,请前往已开处方里修改",placement:"top"},{default:n(()=>[o("span",El,[l(f,{type:"danger",plain:"",disabled:a(Te),loading:a(fe),onClick:Bt},{default:n(()=>[...e[127]||(e[127]=[p(" 作废处方 ",-1)])]),_:1},8,["disabled","loading"])])]),_:1},8,["disabled"])):h("",!0),a(re)?h("",!0):(b(),w(f,{key:1,onClick:Kt},{default:n(()=>[...e[128]||(e[128]=[p("新建处方",-1)])]),_:1})),l(f,{onClick:Ue},{default:n(()=>[...e[129]||(e[129]=[p("关闭",-1)])]),_:1})])])):(b(),V("div",js,[l(M,{ref_key:"formRef",ref:vt,model:a(t),"label-width":"100px",class:"prescription-form"},{default:n(()=>[o("div",Fs,[e[43]||(e[43]=o("div",{class:"section-title"},"患者信息",-1)),l(y,{gutter:16},{default:n(()=>[l(r,{span:8},{default:n(()=>[l(i,{label:"姓名"},{default:n(()=>[o("span",null,m(a(t).patient_name),1)]),_:1})]),_:1}),l(r,{span:8},{default:n(()=>[l(i,{label:"性别"},{default:n(()=>[o("span",null,m(a(t).gender_desc),1)]),_:1})]),_:1}),l(r,{span:8},{default:n(()=>[l(i,{label:"年龄"},{default:n(()=>[o("span",null,m(a(t).age),1)]),_:1})]),_:1}),l(r,{span:12},{default:n(()=>[l(i,{label:"电话"},{default:n(()=>[o("span",null,m(a(t).phone),1)]),_:1})]),_:1}),l(r,{span:12},{default:n(()=>[l(i,{label:"门诊号"},{default:n(()=>[l(_,{modelValue:a(t).visit_no,"onUpdate:modelValue":e[0]||(e[0]=u=>a(t).visit_no=u),placeholder:"门诊号"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})]),o("div",Bs,[e[44]||(e[44]=o("div",{class:"section-title"},"诊断信息",-1)),l(y,{gutter:16},{default:n(()=>[l(r,{span:12},{default:n(()=>[l(i,{label:"面象",prop:"pulse"},{default:n(()=>[l(_,{modelValue:a(t).pulse,"onUpdate:modelValue":e[1]||(e[1]=u=>a(t).pulse=u),placeholder:"面象"},null,8,["modelValue"])]),_:1})]),_:1}),l(r,{span:12},{default:n(()=>[l(i,{label:"舌象",prop:"tongue"},{default:n(()=>[l(_,{modelValue:a(t).tongue,"onUpdate:modelValue":e[2]||(e[2]=u=>a(t).tongue=u),placeholder:"舌象"},null,8,["modelValue"])]),_:1})]),_:1}),l(r,{span:24},{default:n(()=>[l(i,{label:"临床诊断",prop:"clinical_diagnosis"},{default:n(()=>[l(_,{modelValue:a(t).clinical_diagnosis,"onUpdate:modelValue":e[3]||(e[3]=u=>a(t).clinical_diagnosis=u),type:"textarea",rows:2,placeholder:"请输入临床诊断"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})]),o("div",Gs,[o("div",Ks,[o("div",qs,[e[49]||(e[49]=o("span",{class:"rp-toolbar__marker","aria-hidden":"true"},null,-1)),o("div",Js,[e[48]||(e[48]=o("h3",{class:"rp-toolbar__heading"},[p(" 中药处方 "),o("span",{class:"rp-toolbar__abbr"},"(RP)")],-1)),o("p",Ys,[e[45]||(e[45]=p(" 共 ",-1)),o("strong",null,m(a(t).herbs.length),1),p(" 味(主方 "+m(a(kt))+" / 辅方 "+m(a(Vt))+")· 可手动添加、从处方库或粘贴药方批量录入 ",1)]),a($)?(b(),V("p",Xs,[l(g,{type:"danger",size:"small",effect:"plain"},{default:n(()=>[...e[46]||(e[46]=[p("禁用修改",-1)])]),_:1}),e[47]||(e[47]=p(" 含「禁用修改」处方库模板,药材已锁定,不可增删改,如需调整请重新「从处方库导入」覆盖 ",-1))])):h("",!0)])]),o("div",Qs,[l(f,{type:"primary",size:"small",icon:a(cs),disabled:a($),onClick:e[4]||(e[4]=u=>ot("主方"))},{default:n(()=>[...e[50]||(e[50]=[p(" 添加主方 ",-1)])]),_:1},8,["icon","disabled"]),l(f,{type:"primary",plain:"",size:"small",disabled:a($),onClick:e[5]||(e[5]=u=>ot("辅方"))},{default:n(()=>[...e[51]||(e[51]=[p(" 添加辅方 ",-1)])]),_:1},8,["disabled"]),l(f,{type:"primary",plain:"",size:"small",icon:a(ps),onClick:Mt},{default:n(()=>[...e[52]||(e[52]=[p(" 从处方库导入 ",-1)])]),_:1},8,["icon"]),l(f,{type:"primary",plain:"",size:"small",icon:a(_s),onClick:Dt},{default:n(()=>[...e[53]||(e[53]=[p(" 导入药方 ",-1)])]),_:1},8,["icon"])])]),o("div",Zs,[l(i,{label:"处方价格",prop:"amount",class:"!mb-0"},{default:n(()=>[l(S,{modelValue:a(t).amount,"onUpdate:modelValue":e[6]||(e[6]=u=>a(t).amount=u),min:0,precision:2,placeholder:"请输入处方总价(元)",class:"!w-40"},null,8,["modelValue"]),e[54]||(e[54]=o("span",{class:"ml-2 text-gray-500"},"元",-1))]),_:1})]),o("div",ea,[o("div",ta,[l(g,{type:"primary",size:"small"},{default:n(()=>[...e[55]||(e[55]=[p("主方",-1)])]),_:1})]),o("div",sa,[(b(!0),V(j,null,se(a(ze),u=>(b(),V("div",{key:"main-"+u.index,class:ct(["herb-editor-card",{"herb-editor-card--dup":ce(u.index)}])},[o("div",aa,"主方 "+m(u.index+1),1),l(mt,{modelValue:a(t).herbs[u.index].name,"onUpdate:modelValue":R=>a(t).herbs[u.index].name=R,"medicine-id":a(t).herbs[u.index].medicine_id,"onUpdate:medicineId":R=>a(t).herbs[u.index].medicine_id=R,disabled:a($),class:"herb-editor-card__select"},null,8,["modelValue","onUpdate:modelValue","medicine-id","onUpdate:medicineId","disabled"]),ce(u.index)?(b(),V("div",la," 该药名与其他行重复,请合并剂量或删除多余行 ")):h("",!0),o("div",oa,[l(S,{modelValue:a(t).herbs[u.index].dosage,"onUpdate:modelValue":R=>a(t).herbs[u.index].dosage=R,min:.1,step:1,precision:1,disabled:a($),placeholder:"剂量(克)",class:"herb-editor-card__dose"},null,8,["modelValue","onUpdate:modelValue","disabled"]),e[57]||(e[57]=o("span",{class:"text-gray-500 shrink-0"},"克",-1)),a($)?h("",!0):(b(),w(f,{key:0,type:"danger",size:"small",link:"",onClick:R=>nt(u.index)},{default:n(()=>[...e[56]||(e[56]=[p(" 删除 ",-1)])]),_:1},8,["onClick"]))])],2))),128))])]),o("div",na,[o("div",ia,[l(g,{type:"warning",size:"small"},{default:n(()=>[...e[58]||(e[58]=[p("辅方",-1)])]),_:1})]),o("div",ra,[(b(!0),V(j,null,se(a(X),u=>(b(),V("div",{key:"aux-"+u.index,class:ct(["herb-editor-card",{"herb-editor-card--dup":ce(u.index)}])},[e[61]||(e[61]=o("div",{class:"herb-editor-card__title"},"辅方",-1)),l(mt,{modelValue:a(t).herbs[u.index].name,"onUpdate:modelValue":R=>a(t).herbs[u.index].name=R,"medicine-id":a(t).herbs[u.index].medicine_id,"onUpdate:medicineId":R=>a(t).herbs[u.index].medicine_id=R,disabled:a($),class:"herb-editor-card__select"},null,8,["modelValue","onUpdate:modelValue","medicine-id","onUpdate:medicineId","disabled"]),ce(u.index)?(b(),V("div",da," 该药名与其他行重复,请合并剂量或删除多余行 ")):h("",!0),o("div",ua,[l(S,{modelValue:a(t).herbs[u.index].dosage,"onUpdate:modelValue":R=>a(t).herbs[u.index].dosage=R,min:.1,step:1,precision:1,disabled:a($),placeholder:"剂量(克)",class:"herb-editor-card__dose"},null,8,["modelValue","onUpdate:modelValue","disabled"]),e[60]||(e[60]=o("span",{class:"text-gray-500 shrink-0"},"克",-1)),a($)?h("",!0):(b(),w(f,{key:0,type:"danger",size:"small",link:"",onClick:R=>nt(u.index)},{default:n(()=>[...e[59]||(e[59]=[p(" 删除 ",-1)])]),_:1},8,["onClick"]))])],2))),128)),a(X).length?h("",!0):(b(),V("p",ca,"暂无辅方药材"))])])]),o("div",pa,[l(y,{gutter:16},{default:n(()=>[l(r,{span:8},{default:n(()=>[l(i,{label:"处方类型",prop:"prescription_type"},{default:n(()=>[l(C,{modelValue:a(t).prescription_type,"onUpdate:modelValue":e[7]||(e[7]=u=>a(t).prescription_type=u),placeholder:"请选择处方类型",class:"!w-full"},{default:n(()=>[l(d,{label:"浓缩水丸",value:"浓缩水丸"}),l(d,{label:"饮片",value:"饮片"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(r,{span:24},{default:n(()=>[...e[62]||(e[62]=[o("div",{class:"usage-formula-title usage-formula-title--main"},"主方用法",-1)])]),_:1}),l(r,{span:8},{default:n(()=>[l(i,{label:"用量",prop:"dosage_amount"},{default:n(()=>[a(t).prescription_type==="浓缩水丸"?(b(),w(C,{key:0,modelValue:a(t).dosage_amount,"onUpdate:modelValue":e[8]||(e[8]=u=>a(t).dosage_amount=u),placeholder:"请选择用量",class:"!w-full"},{default:n(()=>[l(d,{label:"1g",value:1}),l(d,{label:"2g",value:2}),l(d,{label:"3g",value:3}),l(d,{label:"4g",value:4}),l(d,{label:"5g",value:5}),l(d,{label:"6g",value:6}),l(d,{label:"7g",value:7}),l(d,{label:"8g",value:8}),l(d,{label:"9g",value:9}),l(d,{label:"10g",value:10})]),_:1},8,["modelValue"])):a(t).prescription_type==="饮片"?(b(),w(C,{key:1,modelValue:a(t).dosage_amount,"onUpdate:modelValue":e[9]||(e[9]=u=>a(t).dosage_amount=u),placeholder:"请选择用量",class:"!w-full"},{default:n(()=>[l(d,{label:"50ml",value:50}),l(d,{label:"100ml",value:100}),l(d,{label:"120ml",value:120}),l(d,{label:"150ml",value:150}),l(d,{label:"180ml",value:180}),l(d,{label:"200ml",value:200}),l(d,{label:"250ml",value:250})]),_:1},8,["modelValue"])):(b(),w(S,{key:2,modelValue:a(t).dosage_amount,"onUpdate:modelValue":e[10]||(e[10]=u=>a(t).dosage_amount=u),min:0,precision:2,class:"!w-full"},null,8,["modelValue"])),a(t).prescription_type!=="浓缩水丸"&&a(t).prescription_type!=="饮片"?(b(),V("span",_a,m(a(t).dosage_unit),1)):h("",!0)]),_:1})]),_:1}),a(t).prescription_type==="浓缩水丸"?(b(),w(r,{key:0,span:8},{default:n(()=>[l(i,{label:" ",prop:"dosage_bag_count","label-width":"12px"},{default:n(()=>[l(C,{modelValue:a(t).dosage_bag_count,"onUpdate:modelValue":e[11]||(e[11]=u=>a(t).dosage_bag_count=u),placeholder:"请选择袋数",class:"!w-[120px]"},{default:n(()=>[l(d,{label:"1袋",value:1}),l(d,{label:"2袋",value:2}),l(d,{label:"3袋",value:3}),l(d,{label:"4袋",value:4}),l(d,{label:"5袋",value:5})]),_:1},8,["modelValue"])]),_:1})]),_:1})):h("",!0),a(t).prescription_type==="饮片"?(b(),w(r,{key:1,span:8},{default:n(()=>[l(i,{label:"每贴出包数",prop:"bags_per_dose"},{default:n(()=>[l(C,{modelValue:a(t).bags_per_dose,"onUpdate:modelValue":e[12]||(e[12]=u=>a(t).bags_per_dose=u),placeholder:"请选择",class:"!w-full"},{default:n(()=>[l(d,{label:"1包",value:1}),l(d,{label:"2包",value:2}),l(d,{label:"3包",value:3}),l(d,{label:"4包",value:4}),l(d,{label:"5包",value:5}),l(d,{label:"6包",value:6}),l(d,{label:"7包",value:7}),l(d,{label:"8包",value:8}),l(d,{label:"9包",value:9})]),_:1},8,["modelValue"])]),_:1})]),_:1})):h("",!0),a(t).prescription_type==="饮片"?(b(),w(r,{key:2,span:8},{default:n(()=>[l(i,{label:"是否代煎",prop:"need_decoction"},{default:n(()=>[l(P,{modelValue:a(t).need_decoction,"onUpdate:modelValue":e[13]||(e[13]=u=>a(t).need_decoction=u)},{default:n(()=>[l(D,{label:!0},{default:n(()=>[...e[63]||(e[63]=[p("代煎",-1)])]),_:1}),l(D,{label:!1},{default:n(()=>[...e[64]||(e[64]=[p("不代煎",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1})):h("",!0),l(r,{span:8},{default:n(()=>[l(i,{label:"服用天数",prop:"usage_days"},{default:n(()=>[l(S,{modelValue:a(t).usage_days,"onUpdate:modelValue":e[14]||(e[14]=u=>a(t).usage_days=u),min:1,max:365,class:"!w-full"},null,8,["modelValue"])]),_:1})]),_:1}),l(r,{span:8},{default:n(()=>[l(i,{label:"每天几次",prop:"times_per_day"},{default:n(()=>[l(S,{modelValue:a(t).times_per_day,"onUpdate:modelValue":e[15]||(e[15]=u=>a(t).times_per_day=u),min:1,max:6,class:"!w-full",placeholder:"每天服用次数"},null,8,["modelValue"])]),_:1})]),_:1}),a(X).length>0?(b(),V(j,{key:3},[l(r,{span:24},{default:n(()=>[...e[65]||(e[65]=[o("div",{class:"usage-formula-title usage-formula-title--aux"},"辅方用法",-1)])]),_:1}),l(r,{span:8},{default:n(()=>[l(i,{label:"用量"},{default:n(()=>[a(t).prescription_type==="浓缩水丸"?(b(),w(C,{key:0,modelValue:a(t).aux_usage.dosage_amount,"onUpdate:modelValue":e[16]||(e[16]=u=>a(t).aux_usage.dosage_amount=u),placeholder:"请选择用量",class:"!w-full"},{default:n(()=>[(b(),V(j,null,se(10,u=>l(d,{key:u,label:u+"g",value:u},null,8,["label","value"])),64))]),_:1},8,["modelValue"])):a(t).prescription_type==="饮片"?(b(),w(C,{key:1,modelValue:a(t).aux_usage.dosage_amount,"onUpdate:modelValue":e[17]||(e[17]=u=>a(t).aux_usage.dosage_amount=u),placeholder:"请选择用量",class:"!w-full"},{default:n(()=>[l(d,{label:"50ml",value:50}),l(d,{label:"100ml",value:100}),l(d,{label:"120ml",value:120}),l(d,{label:"150ml",value:150}),l(d,{label:"180ml",value:180}),l(d,{label:"200ml",value:200}),l(d,{label:"250ml",value:250})]),_:1},8,["modelValue"])):(b(),w(S,{key:2,modelValue:a(t).aux_usage.dosage_amount,"onUpdate:modelValue":e[18]||(e[18]=u=>a(t).aux_usage.dosage_amount=u),min:0,precision:2,class:"!w-full"},null,8,["modelValue"]))]),_:1})]),_:1}),a(t).prescription_type==="浓缩水丸"?(b(),w(r,{key:0,span:8},{default:n(()=>[l(i,{label:" ","label-width":"12px"},{default:n(()=>[l(C,{modelValue:a(t).aux_usage.dosage_bag_count,"onUpdate:modelValue":e[19]||(e[19]=u=>a(t).aux_usage.dosage_bag_count=u),placeholder:"请选择袋数",class:"!w-[120px]"},{default:n(()=>[l(d,{label:"1袋",value:1}),l(d,{label:"2袋",value:2}),l(d,{label:"3袋",value:3}),l(d,{label:"4袋",value:4}),l(d,{label:"5袋",value:5})]),_:1},8,["modelValue"])]),_:1})]),_:1})):h("",!0),a(t).prescription_type==="饮片"?(b(),w(r,{key:1,span:8},{default:n(()=>[l(i,{label:"是否代煎"},{default:n(()=>[l(P,{modelValue:a(t).aux_usage.need_decoction,"onUpdate:modelValue":e[20]||(e[20]=u=>a(t).aux_usage.need_decoction=u)},{default:n(()=>[l(D,{label:!0},{default:n(()=>[...e[66]||(e[66]=[p("代煎",-1)])]),_:1}),l(D,{label:!1},{default:n(()=>[...e[67]||(e[67]=[p("不代煎",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1})):h("",!0),a(t).prescription_type==="饮片"?(b(),w(r,{key:2,span:8},{default:n(()=>[l(i,{label:"每贴出包数"},{default:n(()=>[l(C,{modelValue:a(t).aux_usage.bags_per_dose,"onUpdate:modelValue":e[21]||(e[21]=u=>a(t).aux_usage.bags_per_dose=u),placeholder:"请选择",class:"!w-full"},{default:n(()=>[(b(),V(j,null,se(9,u=>l(d,{key:u,label:u+"包",value:u},null,8,["label","value"])),64))]),_:1},8,["modelValue"])]),_:1})]),_:1})):h("",!0),l(r,{span:8},{default:n(()=>[l(i,{label:"每天几次"},{default:n(()=>[l(S,{modelValue:a(t).aux_usage.times_per_day,"onUpdate:modelValue":e[22]||(e[22]=u=>a(t).aux_usage.times_per_day=u),min:1,max:6,class:"!w-full",placeholder:"每天服用次数"},null,8,["modelValue"])]),_:1})]),_:1}),l(r,{span:8},{default:n(()=>[l(i,{label:"服用天数"},{default:n(()=>[l(S,{modelValue:a(t).aux_usage.usage_days,"onUpdate:modelValue":e[23]||(e[23]=u=>a(t).aux_usage.usage_days=u),min:1,max:365,class:"!w-full"},null,8,["modelValue"])]),_:1})]),_:1})],64)):h("",!0),l(r,{span:24},{default:n(()=>[l(i,{label:"用法",prop:"usage_instruction"},{default:n(()=>[l(_,{modelValue:a(t).usage_instruction,"onUpdate:modelValue":e[24]||(e[24]=u=>a(t).usage_instruction=u),placeholder:"",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1}),l(r,{span:12},{default:n(()=>[l(i,{label:"服用时间",prop:"usage_time"},{default:n(()=>[l(C,{modelValue:a(t).usage_time,"onUpdate:modelValue":e[25]||(e[25]=u=>a(t).usage_time=u),placeholder:"请选择服用时间",class:"!w-full"},{default:n(()=>[l(d,{label:"饭前",value:"饭前"}),l(d,{label:"饭后",value:"饭后"}),l(d,{label:"饭中",value:"饭中"}),l(d,{label:"空腹",value:"空腹"}),l(d,{label:"睡前",value:"睡前"}),l(d,{label:"晨起",value:"晨起"}),l(d,{label:"随时",value:"随时"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(r,{span:12},{default:n(()=>[l(i,{label:"服用方式",prop:"usage_way"},{default:n(()=>[l(C,{modelValue:a(t).usage_way,"onUpdate:modelValue":e[26]||(e[26]=u=>a(t).usage_way=u),placeholder:"请选择服用方式",class:"!w-full"},{default:n(()=>[l(d,{label:"温水送服",value:"温水送服"}),l(d,{label:"开水冲服",value:"开水冲服"}),l(d,{label:"黄酒送服",value:"黄酒送服"}),l(d,{label:"淡盐水送服",value:"淡盐水送服"}),l(d,{label:"米汤送服",value:"米汤送服"}),l(d,{label:"嚼服",value:"嚼服"}),l(d,{label:"含化",value:"含化"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(r,{span:24},{default:n(()=>[l(i,{label:"忌口",prop:"dietary_taboo"},{default:n(()=>[l(C,{modelValue:a(t).dietary_taboo,"onUpdate:modelValue":e[27]||(e[27]=u=>a(t).dietary_taboo=u),multiple:"",placeholder:"请选择忌口内容(可多选)",class:"!w-full"},{default:n(()=>[l(d,{label:"辛辣食物",value:"辛辣食物"}),l(d,{label:"生冷食物",value:"生冷食物"}),l(d,{label:"油腻食物",value:"油腻食物"}),l(d,{label:"海鲜",value:"海鲜"}),l(d,{label:"牛羊肉",value:"牛羊肉"}),l(d,{label:"鸡蛋",value:"鸡蛋"}),l(d,{label:"豆制品",value:"豆制品"}),l(d,{label:"酒类",value:"酒类"}),l(d,{label:"浓茶",value:"浓茶"}),l(d,{label:"咖啡",value:"咖啡"}),l(d,{label:"烟草",value:"烟草"}),l(d,{label:"萝卜",value:"萝卜"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(r,{span:24},{default:n(()=>[l(i,{label:"其他说明",prop:"usage_notes"},{default:n(()=>[l(_,{modelValue:a(t).usage_notes,"onUpdate:modelValue":e[28]||(e[28]=u=>a(t).usage_notes=u),type:"textarea",rows:2,placeholder:"其他服用注意事项",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1}),l(r,{span:12},{default:n(()=>[l(i,{label:"医师",prop:"doctor_name"},{default:n(()=>[l(_,{modelValue:a(t).doctor_name,"onUpdate:modelValue":e[29]||(e[29]=u=>a(t).doctor_name=u),placeholder:"医师姓名"},null,8,["modelValue"])]),_:1})]),_:1}),l(r,{span:12},{default:n(()=>[l(i,{label:"是否共享",prop:"is_shared"},{default:n(()=>[l(W,{modelValue:a(t).is_shared,"onUpdate:modelValue":e[30]||(e[30]=u=>a(t).is_shared=u),"active-value":1,"inactive-value":0,"active-text":"所有人可见","inactive-text":"仅自己可见"},null,8,["modelValue"])]),_:1})]),_:1}),l(r,{span:24},{default:n(()=>[l(i,{label:"医师签名",prop:"doctor_signature",required:""},{default:n(()=>[o("div",ma,[o("canvas",{ref_key:"signatureCanvasRef",ref:L,class:"signature-canvas",onPointerdown:ae(Lt,["prevent"]),onPointermove:ae(Ht,["prevent"]),onPointerup:ae(lt,["prevent"]),onPointercancel:ae(lt,["prevent"])},null,544),o("div",ga,[l(f,{size:"small",onClick:Wt},{default:n(()=>[...e[68]||(e[68]=[p("清空签名",-1)])]),_:1})])]),e[69]||(e[69]=o("div",{class:"text-xs text-amber-600 mt-1"},"* 必填,请在框内手写医师签名",-1))]),_:1})]),_:1})]),_:1})])]),_:1},8,["model"])]))]}),_:2},[a(c)?void 0:{name:"footer",fn:n(()=>[o("div",Ol,[l(f,{onClick:Ue},{default:n(()=>[...e[130]||(e[130]=[p("取消",-1)])]),_:1}),l(f,{type:"primary",onClick:jt,loading:a(ge)},{default:n(()=>[...e[131]||(e[131]=[p("保存处方",-1)])]),_:1},8,["loading"])])]),key:"0"}]),1032,["modelValue","title"]),l(dt,{modelValue:a(H),"onUpdate:modelValue":e[37]||(e[37]=x=>N(H)?H.value=x:null),title:"从处方库导入",width:"800px","close-on-click-modal":!1},{default:n(()=>[o("div",Tl,[l(_,{modelValue:a(Q),"onUpdate:modelValue":e[32]||(e[32]=x=>N(Q)?Q.value=x:null),class:"flex-1",placeholder:"请输入处方名称搜索",clearable:"",onKeyup:Ss(_e,["enter"]),onClear:_e},{append:n(()=>[l(f,{icon:a(Cs),onClick:_e},null,8,["icon"])]),_:1},8,["modelValue"]),l(C,{modelValue:a(Z),"onUpdate:modelValue":e[33]||(e[33]=x=>N(Z)?Z.value=x:null),placeholder:"处方类型",clearable:"",class:"w-[140px]",onChange:_e},{default:n(()=>[l(d,{label:"全部",value:""}),l(d,{label:"主方",value:"主方"}),l(d,{label:"辅方",value:"辅方"})]),_:1},8,["modelValue"])]),o("div",zl,[e[134]||(e[134]=o("span",{class:"text-sm text-gray-600 shrink-0"},"导入方式",-1)),l(P,{modelValue:a(B),"onUpdate:modelValue":e[34]||(e[34]=x=>N(B)?B.value=x:null)},{default:n(()=>[l(D,{label:"replace"},{default:n(()=>[...e[132]||(e[132]=[p("覆盖同类型药材",-1)])]),_:1}),l(D,{label:"append"},{default:n(()=>[...e[133]||(e[133]=[p("追加到末尾",-1)])]),_:1})]),_:1},8,["modelValue"])]),Us((b(),w(Qt,{data:a(xe),height:"400",onRowClick:At,style:{cursor:"pointer"}},{default:n(()=>[l(A,{label:"处方名称",prop:"prescription_name","min-width":"150","show-overflow-tooltip":""}),l(A,{label:"处方类型",width:"90"},{default:n(({row:x})=>[l(g,{type:x.formula_type==="辅方"?"warning":"primary",size:"small"},{default:n(()=>[p(m(x.formula_type||"主方"),1)]),_:2},1032,["type"])]),_:1}),l(A,{label:"药材数量",width:"100"},{default:n(({row:x})=>{var E;return[p(m(((E=x.herbs)==null?void 0:E.length)||0)+"味 ",1)]}),_:1}),l(A,{label:"药材明细","min-width":"300","show-overflow-tooltip":""},{default:n(({row:x})=>[x.herbs&&x.herbs.length>0?(b(),V("span",Ll,m(x.herbs.map(E=>`${E.name} ${E.dosage}g`).join("、")),1)):(b(),V("span",Hl,"暂无药材"))]),_:1}),l(A,{label:"是否公开",width:"110"},{default:n(({row:x})=>[l(g,{type:x.is_public?"success":"info",size:"small"},{default:n(()=>[p(m(x.is_public?"所有人可见":"仅自己可见"),1)]),_:2},1032,["type"])]),_:1}),l(A,{label:"创建人",prop:"creator_name",width:"100"}),l(A,{label:"操作",width:"100",fixed:"right"},{default:n(({row:x})=>[l(f,{type:"primary",link:"",onClick:ae(E=>it(x),["stop"])},{default:n(()=>[...e[135]||(e[135]=[p(" 导入 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[es,a(ye)]]),o("div",Wl,[l(Zt,{"current-page":a(K),"onUpdate:currentPage":e[35]||(e[35]=x=>N(K)?K.value=x:null),"page-size":a(de),"onUpdate:pageSize":e[36]||(e[36]=x=>N(de)?de.value=x:null),total:a(ke),"page-sizes":[10,15,20,50],layout:"total, sizes, prev, pager, next",onCurrentChange:pe,onSizeChange:pe},null,8,["current-page","page-size","total"])])]),_:1},8,["modelValue"]),l(dt,{modelValue:a(q),"onUpdate:modelValue":e[41]||(e[41]=x=>N(q)?q.value=x:null),title:"导入药方(识别药材)",width:"560px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:e[42]||(e[42]=x=>J.value="")},{footer:n(()=>[l(f,{onClick:e[40]||(e[40]=x=>q.value=!1)},{default:n(()=>[...e[140]||(e[140]=[p("取消",-1)])]),_:1}),l(f,{type:"primary",loading:a(Ve),onClick:It},{default:n(()=>[...e[141]||(e[141]=[p(" 识别并导入 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[e[142]||(e[142]=o("p",{class:"text-gray-500 text-sm mb-2 leading-relaxed"}," 粘贴整张药方文本,系统按「药名 + 剂量」解析;药名须与药品库中名称完全一致才会录入,否则跳过。支持顿号/逗号/换行分隔;单行可用空格分味(如「黄芪15g 白术10g」);「黄芪、党参各10克」等同剂量写法亦可识别。 ",-1)),l(_,{modelValue:a(J),"onUpdate:modelValue":e[38]||(e[38]=x=>N(J)?J.value=x:null),type:"textarea",rows:10,placeholder:`示例:
|
||
黄芪15 党参12 茯苓10
|
||
柴胡10g、黄芩10、半夏12克
|
||
黄芪、白术、茯苓各15克`},null,8,["modelValue"]),o("div",Ml,[e[138]||(e[138]=o("span",{class:"text-sm text-gray-600 shrink-0"},"导入方式",-1)),l(P,{modelValue:a(ue),"onUpdate:modelValue":e[39]||(e[39]=x=>N(ue)?ue.value=x:null)},{default:n(()=>[l(D,{label:"replace"},{default:n(()=>[...e[136]||(e[136]=[p("覆盖主方药材",-1)])]),_:1}),l(D,{label:"append"},{default:n(()=>[...e[137]||(e[137]=[p("追加到主方末尾",-1)])]),_:1})]),_:1},8,["modelValue"]),e[139]||(e[139]=o("span",{class:"text-xs text-gray-500"},"(粘贴导入至主方,保留已有辅方)",-1))])]),_:1},8,["modelValue"])],64)}}}),Xl=Os(Al,[["__scopeId","data-v-f13cf449"]]);export{Xl as default};
|