import{_ as e,r as a,J as l,au as t,y as o,D as s,z as u,A as n,c as r,w as d,i,$ as c,Y as m,a0 as v,a1 as f,a3 as p,a2 as _,W as y,a as b,e as h,b as S,t as g,d as V,B as w,av as x,f as k,F as P,a4 as U,M as C,G as I,Q as $,a5 as N,a6 as T,k as D,S as j}from"./index-Bf8mw6fQ.js";import{a as B}from"./index.CZIWx9ZQ.js";import"./uni-icons.B0nHGUYu.js";import"./uni-popup.Cdyk2Swr.js";const H=e({__name:"transferinfo",setup(e){a({});const H=a({annexfilesList:[]}),L=a(!1),W=a(!1),E=a(!1),M=a(!1),q=a(0),F=a(null),z=a(!1),Y=a(0);a(!1);const A=a(!1),G=a([]),J=a([{label:"待转运",value:1},{label:"转运中",value:2},{label:"转运完成",value:3},{label:"转运取消",value:4},{label:"暂存",value:5}]),O=a("#f5f5f7"),Q=l(()=>L.value?"加载中...":W.value?"保存中...":""),K=l(()=>H.value.transportStartPlace&&H.value.transportStartTime&&H.value.contactPerson),R=l(()=>!L.value&&(1===H.value.transitStatus||5===H.value.transitStatus)),X=l(()=>!L.value&&1===H.value.transitStatus),Z=l(()=>!L.value&&2===H.value.transitStatus);l(()=>!L.value);const ee=l(()=>J.value.map(e=>e.label));l(()=>{if(!H.value.transitStatus)return 0;const e=J.value.findIndex(e=>e.value==H.value.transitStatus);return e>=0?e:0}),t(()=>H.value.transitStatus,e=>{if(null!=e){const a=J.value.findIndex(a=>a.value==e);a>=0&&(q.value=a)}},{immediate:!0}),o(async e=>{if(e.id?(F.value=e.id,await ae(e.id)):e.caseId&&(E.value=!0,await le(e.caseId,e.caseNo)),void 0!==H.value.transitStatus){const e=J.value.findIndex(e=>e.value==H.value.transitStatus);q.value=e>=0?e:0}});const ae=async e=>{L.value=!0;try{const a=await uni.$uapi.get(`/project/transport/getInfo/${e}`);if(!a.data)throw new Error(a.msg||"数据加载失败");if(H.value=a.data,a.data.annexfilesList&&(G.value=a.data.annexfilesList,G.value.forEach(e=>{e.url=e.opath,e.name=e.fileName})),void 0!==H.value.transitStatus){const e=J.value.findIndex(e=>e.value==H.value.transitStatus);q.value=e>=0?e:0}}catch(a){console.error("加载转运单失败:",a),s({title:"数据加载失败,请重试",icon:"none"})}finally{L.value=!1}},le=async(e,a)=>{try{if(e){const a=await uni.$uapi.get(`/project/donatebaseinforeport/getInfo/${e}`);if(a.data){const e=a.data;console.log(e),H.value={...H.value,caseNo:e.caseNo||"",patName:e.name||"",sex:e.sex||"",age:e.age||"",reportId:e.id||null,diagnosisname:e.diagnosisname||"",treatmentHospitalName:e.treatmenthospitalname||"",treatmentDeptName:e.treatmentdeptname||"",transportStartPlace:e.treatmenthospitalname||"",contactPerson:e.coordinatorName||""},console.log(H.value,"transportData.value")}}else H.value={transitStatus:1,createTime:(new Date).toISOString().replace("T"," ").substring(0,19)}}catch(l){console.error("初始化转运单失败:",l)}},te=e=>({1:"待转运",2:"转运中",3:"转运完成",4:"转运取消",5:"暂存"}[e]||"未知"),oe=e=>e?"border: 2rpx solid #f56c6c !important; border-radius: 12rpx !important;":"border: 2rpx solid #e5e5e7 !important; border-radius: 12rpx !important;",se=e=>{const a=new Date(e.value);H.value.transportStartTime=`${a.getFullYear()}-${(a.getMonth()+1).toString().padStart(2,"0")}-${a.getDate().toString().padStart(2,"0")} ${a.getHours().toString().padStart(2,"0")}:${a.getMinutes().toString().padStart(2,"0")}:${a.getSeconds().toString().padStart(2,"0")}`,z.value=!1},ue=e=>{const a=e.indexs[0];J.value[a]&&(H.value.transitStatus=J.value[a].value),M.value=!1},ne=()=>{C()},re=()=>{E.value=!0},de=()=>{F.value?(E.value=!1,ae(F.value)):C()},ie=async()=>{if(ce()){W.value=!0;try{const e={...H.value,annexfilesList:G.value.map(e=>({path:e.url,fileName:e.name,type:e.type}))};let a;if(F.value?a=await uni.$uapi.post("/project/transport/edit",e):(e.createBy="移动端用户",a=await uni.$uapi.post("/project/transport/add",e)),200!==a.code)throw new Error(a.msg||"操作失败");s({title:F.value?"修改成功":"新增成功",icon:"success"}),F.value?(E.value=!1,await ae(F.value)):setTimeout(()=>{C()},1500)}catch(e){console.error("保存失败:",e),s({title:e.message||(F.value?"修改失败":"新增失败"),icon:"none"})}finally{W.value=!1}}},ce=()=>H.value.transportStartPlace?H.value.transportStartTime?!!H.value.contactPerson||(s({title:"请输入负责协调员",icon:"none"}),!1):(s({title:"请选择出发时间",icon:"none"}),!1):(s({title:"请输入出发地点",icon:"none"}),!1),me=()=>{I({title:"开始转运",content:"确定要开始转运吗?",success:async e=>{e.confirm&&await fe(2,"开始转运")}})},ve=()=>{I({title:"完成转运",content:"确定要完成转运吗?",success:async e=>{e.confirm&&await fe(3,"完成转运")}})},fe=async(e,a)=>{try{const l={id:F.value,transitStatus:e,...H.value,annexfilesList:G.value.map(e=>({path:e.url,fileName:e.name,type:e.type}))},t=await uni.$uapi.post("/project/transport/edit",l);if(200!==t.code)throw new Error(t.msg||`${a}失败`);s({title:`${a}成功`,icon:"success"}),await ae(F.value)}catch(l){console.error(`${a}失败:`,l),s({title:`${a}失败`,icon:"none"})}},pe=e=>{console.log("基础附件上传成功:",e),G.value.push(e)},_e=e=>{console.log(e,"files"),G.value=e.map(e=>({...e})),console.log(G.value)},ye=e=>{const a=e.url.startsWith("http")?e.url:baseUrlHt+(e.url.startsWith("/")?"":"/")+e.url;e.type.includes("image")?$({urls:G.value.filter(e=>e.type.includes("image")).map(e=>e.url.startsWith("http")?e.url:baseUrlHt+(e.url.startsWith("/")?"":"/")+e.url),current:a}):e.type.includes("pdf")?N({url:a,success:e=>{T({filePath:e.tempFilePath,fileType:"pdf",showMenu:!0})},fail:e=>{console.error("打开文档失败:",e),s({title:"打开文件失败",icon:"none"})}}):s({title:"暂不支持此文件类型预览",icon:"none"})};return(e,a)=>{const l=i,t=D,o=u(n("u-input"),c),s=u(n("u-icon"),m),C=u(n("u-textarea"),v),I=u(n("u-button"),f),$=j,N=u(n("u-datetime-picker"),p),T=u(n("u-picker"),_),F=u(n("u-loading-icon"),y);return b(),r(l,{class:"transport-edit-container"},{default:d(()=>[h($,{"scroll-y":"",class:"form-scroll","show-scrollbar":!1},{default:d(()=>[h(l,{class:"form-content"},{default:d(()=>[H.value.reportId?(b(),r(l,{key:0,class:"form-section"},{default:d(()=>[h(l,{class:"section-header"},{default:d(()=>[h(l,{class:"section-icon"},{default:d(()=>[S("📋")]),_:1}),h(t,{class:"section-title"},{default:d(()=>[S("关联案例信息")]),_:1})]),_:1}),h(l,{class:"case-info"},{default:d(()=>[h(l,{class:"info-row"},{default:d(()=>[h(t,{class:"info-label"},{default:d(()=>[S("案例编号:")]),_:1}),h(t,{class:"info-value"},{default:d(()=>[S(g(H.value.caseNo),1)]),_:1})]),_:1}),h(l,{class:"info-row"},{default:d(()=>[h(t,{class:"info-label"},{default:d(()=>[S("患者姓名:")]),_:1}),h(t,{class:"info-value"},{default:d(()=>[S(g(H.value.patName),1)]),_:1})]),_:1}),h(l,{class:"info-row"},{default:d(()=>[h(t,{class:"info-label"},{default:d(()=>[S("性别/年龄:")]),_:1}),h(t,{class:"info-value"},{default:d(()=>{return[S(g((e=H.value.sex,e?"1"===e?"男":"女":"未知"))+" / "+g(H.value.age)+"岁",1)];var e}),_:1})]),_:1}),h(l,{class:"info-row"},{default:d(()=>[h(t,{class:"info-label"},{default:d(()=>[S("疾病诊断:")]),_:1}),h(t,{class:"info-value"},{default:d(()=>[S(g(H.value.diagnosisname),1)]),_:1})]),_:1}),h(l,{class:"info-row"},{default:d(()=>[h(t,{class:"info-label"},{default:d(()=>[S("治疗医院:")]),_:1}),h(t,{class:"info-value"},{default:d(()=>[S(g(H.value.treatmentHospitalName),1)]),_:1})]),_:1})]),_:1})]),_:1})):V("",!0),h(l,{class:"form-section"},{default:d(()=>[h(l,{class:"section-header"},{default:d(()=>{return[h(l,{class:"section-icon"},{default:d(()=>[S("📄")]),_:1}),h(t,{class:"section-title"},{default:d(()=>[S("转运单信息")]),_:1}),h(l,{class:w(["status-tag",(e=H.value.transitStatus,{1:"pending",2:"transporting",3:"completed",4:"cancelled",5:"draft"}[e]||"draft")])},{default:d(()=>[S(g(te(H.value.transitStatus)),1)]),_:1},8,["class"])];var e}),_:1}),h(l,{class:"form-grid"},{default:d(()=>[h(l,{class:"form-item"},{default:d(()=>[h(t,{class:"item-label required"},{default:d(()=>[S("出发地点")]),_:1}),h(o,{modelValue:H.value.transportStartPlace,"onUpdate:modelValue":a[0]||(a[0]=e=>H.value.transportStartPlace=e),placeholder:"请输入出发地点",border:"none",readonly:!E.value,customStyle:oe(!H.value.transportStartPlace)},null,8,["modelValue","readonly","customStyle"])]),_:1}),h(l,{class:"form-item"},{default:d(()=>[h(t,{class:"item-label required"},{default:d(()=>[S("出发时间")]),_:1}),h(o,{modelValue:H.value.transportStartTime,"onUpdate:modelValue":a[1]||(a[1]=e=>H.value.transportStartTime=e),placeholder:"请选择出发时间",readonly:"",border:"none",disabled:!E.value,onClick:a[2]||(a[2]=e=>E.value&&(z.value=!0)),customStyle:oe(!H.value.transportStartTime)},x({_:2},[E.value?{name:"suffix",fn:d(()=>[h(s,{name:"arrow-down",color:"#86868b"})]),key:"0"}:void 0]),1032,["modelValue","disabled","customStyle"])]),_:1}),h(l,{class:"form-item"},{default:d(()=>[h(t,{class:"item-label"},{default:d(()=>[S("转运状态")]),_:1}),h(l,{class:w(["picker-trigger",{disabled:!E.value}]),onClick:a[3]||(a[3]=e=>E.value&&void(E.value&&(M.value=!0)))},{default:d(()=>[h(t,null,{default:d(()=>[S(g(te(H.value.transitStatus)),1)]),_:1}),E.value?(b(),r(s,{key:0,name:"arrow-down",size:"16",color:"#999"})):V("",!0)]),_:1},8,["class"])]),_:1}),h(l,{class:"form-item"},{default:d(()=>[h(t,{class:"item-label required"},{default:d(()=>[S("负责协调员")]),_:1}),h(o,{modelValue:H.value.contactPerson,"onUpdate:modelValue":a[4]||(a[4]=e=>H.value.contactPerson=e),placeholder:"请输入协调员姓名",border:"none",readonly:!E.value,customStyle:oe(!H.value.contactPerson)},null,8,["modelValue","readonly","customStyle"])]),_:1}),H.value.createTime?(b(),r(l,{key:0,class:"form-item"},{default:d(()=>[h(t,{class:"item-label"},{default:d(()=>[S("创建时间")]),_:1}),h(o,{modelValue:H.value.createTime,"onUpdate:modelValue":a[5]||(a[5]=e=>H.value.createTime=e),placeholder:"自动生成",disabled:"",disabledColor:O.value,border:"none"},null,8,["modelValue","disabledColor"])]),_:1})):V("",!0),H.value.createBy?(b(),r(l,{key:1,class:"form-item"},{default:d(()=>[h(t,{class:"item-label"},{default:d(()=>[S("创建人")]),_:1}),h(o,{modelValue:H.value.createBy,"onUpdate:modelValue":a[6]||(a[6]=e=>H.value.createBy=e),placeholder:"自动获取",disabled:"",disabledColor:O.value,border:"none"},null,8,["modelValue","disabledColor"])]),_:1})):V("",!0)]),_:1})]),_:1}),h(l,{class:"form-section"},{default:d(()=>[h(l,{class:"section-header"},{default:d(()=>[h(l,{class:"section-icon"},{default:d(()=>[S("👥")]),_:1}),h(t,{class:"section-title"},{default:d(()=>[S("医护人员信息")]),_:1})]),_:1}),h(l,{class:"form-grid"},{default:d(()=>[h(l,{class:"form-item"},{default:d(()=>[h(t,{class:"item-label"},{default:d(()=>[S("急诊科医生")]),_:1}),h(o,{modelValue:H.value.doctor,"onUpdate:modelValue":a[7]||(a[7]=e=>H.value.doctor=e),placeholder:"请输入急诊科医生",border:"none",readonly:!E.value},null,8,["modelValue","readonly"])]),_:1}),h(l,{class:"form-item"},{default:d(()=>[h(t,{class:"item-label"},{default:d(()=>[S("医生电话")]),_:1}),h(o,{modelValue:H.value.doctorPhone,"onUpdate:modelValue":a[8]||(a[8]=e=>H.value.doctorPhone=e),placeholder:"请输入医生手机号",type:"number",border:"none",readonly:!E.value},null,8,["modelValue","readonly"])]),_:1}),h(l,{class:"form-item"},{default:d(()=>[h(t,{class:"item-label"},{default:d(()=>[S("护士")]),_:1}),h(o,{modelValue:H.value.nurse,"onUpdate:modelValue":a[9]||(a[9]=e=>H.value.nurse=e),placeholder:"请输入护士姓名",border:"none",readonly:!E.value},null,8,["modelValue","readonly"])]),_:1}),h(l,{class:"form-item"},{default:d(()=>[h(t,{class:"item-label"},{default:d(()=>[S("护士电话")]),_:1}),h(o,{modelValue:H.value.nursePhone,"onUpdate:modelValue":a[10]||(a[10]=e=>H.value.nursePhone=e),placeholder:"请输入护士手机号",type:"number",border:"none",readonly:!E.value},null,8,["modelValue","readonly"])]),_:1}),h(l,{class:"form-item"},{default:d(()=>[h(t,{class:"item-label"},{default:d(()=>[S("驾驶员")]),_:1}),h(o,{modelValue:H.value.driver,"onUpdate:modelValue":a[11]||(a[11]=e=>H.value.driver=e),placeholder:"请输入驾驶员姓名",border:"none",readonly:!E.value},null,8,["modelValue","readonly"])]),_:1}),h(l,{class:"form-item"},{default:d(()=>[h(t,{class:"item-label"},{default:d(()=>[S("驾驶员电话")]),_:1}),h(o,{modelValue:H.value.driverPhone,"onUpdate:modelValue":a[12]||(a[12]=e=>H.value.driverPhone=e),placeholder:"请输入驾驶员手机号",type:"number",border:"none",readonly:!E.value},null,8,["modelValue","readonly"])]),_:1}),h(l,{class:"form-item"},{default:d(()=>[h(t,{class:"item-label"},{default:d(()=>[S("ICU评估医生")]),_:1}),h(o,{modelValue:H.value.icuDoctor,"onUpdate:modelValue":a[13]||(a[13]=e=>H.value.icuDoctor=e),placeholder:"请输入ICU评估医生",border:"none",readonly:!E.value},null,8,["modelValue","readonly"])]),_:1}),h(l,{class:"form-item"},{default:d(()=>[h(t,{class:"item-label"},{default:d(()=>[S("ICU医生电话")]),_:1}),h(o,{modelValue:H.value.icuDoctorPhone,"onUpdate:modelValue":a[14]||(a[14]=e=>H.value.icuDoctorPhone=e),placeholder:"请输入ICU医生手机号",type:"number",border:"none",readonly:!E.value},null,8,["modelValue","readonly"])]),_:1})]),_:1})]),_:1}),h(l,{class:"form-section"},{default:d(()=>[h(l,{class:"section-header"},{default:d(()=>[h(l,{class:"section-icon"},{default:d(()=>[S("📝")]),_:1}),h(t,{class:"section-title"},{default:d(()=>[S("备注信息")]),_:1})]),_:1}),h(l,{class:"form-grid"},{default:d(()=>[h(l,{class:"form-item full-width"},{default:d(()=>[h(C,{modelValue:H.value.remark,"onUpdate:modelValue":a[15]||(a[15]=e=>H.value.remark=e),placeholder:"请输入备注信息",border:"none",readonly:!E.value,count:E.value,maxlength:"500",height:"150"},null,8,["modelValue","readonly","count"])]),_:1})]),_:1})]),_:1}),h(l,{class:"action-buttons"},{default:d(()=>[E.value?(b(),k(P,{key:1},[h(I,{class:"btn secondary",onClick:de},{default:d(()=>[S("取消")]),_:1}),h(I,{class:"btn success",onClick:ie,disabled:!K.value,loading:W.value},{default:d(()=>[S(" 保存 ")]),_:1},8,["disabled","loading"])],64)):(b(),k(P,{key:0},[h(I,{class:"btn secondary",onClick:ne},{default:d(()=>[S("返回")]),_:1}),R.value?(b(),r(I,{key:0,class:"btn primary",onClick:re},{default:d(()=>[S(" 编辑 ")]),_:1})):V("",!0),X.value?(b(),r(I,{key:1,class:"btn warning",onClick:me},{default:d(()=>[S(" 开始转运 ")]),_:1})):V("",!0),Z.value?(b(),r(I,{key:2,class:"btn success",onClick:ve},{default:d(()=>[S(" 完成转运 ")]),_:1})):V("",!0)],64))]),_:1})]),_:1})]),_:1}),h(U(B),{ref:"attachment",files:G.value,readonly:A.value,maxCount:5,"onUpdate:files":_e,onUploadBase:pe,onPreview:ye},null,8,["files","readonly"]),h(N,{show:z.value,modelValue:Y.value,"onUpdate:modelValue":a[16]||(a[16]=e=>Y.value=e),mode:"datetime",onConfirm:se,onCancel:a[17]||(a[17]=e=>z.value=!1),title:"选择出发时间"},null,8,["show","modelValue"]),h(T,{show:M.value,columns:[ee.value],defaultIndex:[q.value],keyName:"label",onConfirm:ue,onCancel:a[18]||(a[18]=e=>M.value=!1),title:"请选择转运状态"},null,8,["show","columns","defaultIndex"]),h(F,{show:L.value,text:Q.value},null,8,["show","text"])]),_:1})}}},[["__scopeId","data-v-1af5011b"]]);export{H as default};
|