WXL
2 天以前 c80bc467a41daa6cbae4e5515a300a8ca98cfeaa
1
"use strict";const e=require("../../common/vendor.js"),a=require("../../stores/useHomeButton.js"),t=require("../../stores/user.js"),o=require("../../utils/useDictMapper.js");if(!Array){e.resolveComponent("u-loading-icon")()}const r=()=>"../../uni_modules/uview-plus/components/u-loading-icon/u-loading-icon.js";Math||(e.unref(l)+r)();const l=()=>"../../components/attachment/index.js",s={__name:"CaseInfo",setup(r){const{showHomeButton:l,checkAutoLogin:s,goHome:u}=a.useHomeButton(),{dictData:n,loading:i}=o.useDictMapper(["sys_user_sex","sys_BloodType","sys_AgeUnit","sys_IDType","sys_Nation","sys_education","sys_occupation","sys_Infectious"]),v=(e,a)=>{if(!a)return"未填写";const t=(e=>n.value[e]||[])(e),o=t.find(e=>e.value==a||e.value===a);return o?o.label:a},p=()=>{const e=c.value.infectious;if(!e)return"无";const a=e.split(",").filter(e=>e.trim());if(0===a.length)return"无";const t=a.map(e=>v("sys_Infectious",e.trim())),o=c.value.infectiousOther;return t.join("、")+(o?`(${o})`:"")},c=e.ref({}),d=t.useUserStore(),m=e.ref(!1),f=e.ref(!1),T=e.ref("basic"),y=e.ref(null),g=e.ref([]),h=e.ref(!1),x=e.computed(()=>{var e;console.log(d.userInfo.roles);return((null==(e=d.userInfo)?void 0:e.roles)||[]).some(e=>"admin"===e.roleKey||"opoadmin")}),R=[{label:"好转",value:"1"},{label:"死亡",value:"2"},{label:"不符合捐献标准",value:"3"},{label:"家属放弃捐献",value:"4"},{label:"其他",value:"5"}],b=e.ref({id:null,approveResult:"3",confirmResult:"",rejectType:"",isTransport:"2",isDonate:"0"}),w=e.ref([{id:"basic",label:"基本信息"},{id:"medical",label:"医疗信息"},{id:"contact",label:"联系信息"},{id:"transport",label:"转运信息"}]),j=e.computed(()=>c.value.serviceTransport&&c.value.serviceTransport.length>0);e.onShow(()=>{y.value&&_(y.value)}),e.onLoad(async e=>{s(e),e.id&&(y.value=e.id,await _(e.id))});const _=async a=>{m.value=!0;try{const t=await e.index.$uapi.get(`/project/donatebaseinforeport/getInfo/${a}`);if(!t.data)throw new Error(t.msg||"数据加载失败");c.value=t.data,t.data.annexfilesList&&(g.value=t.data.annexfilesList.map(e=>({...e,url:e.path,name:e.fileName})))}catch(t){console.error("加载案例详情失败:",t),e.index.showToast({title:"数据加载失败,请重试",icon:"none"})}finally{m.value=!1}},D=()=>{const{registerprovincename:e,registercityname:a,registertownname:t,registeraddress:o}=c.value;return[e,a,t,o].filter(e=>e&&e.trim()).join("")},S=()=>{const{residenceprovincename:e,residencecityname:a,residencetownname:t,residenceaddress:o}=c.value;return[e,a,t,o].filter(e=>e&&e.trim()).join("")},N=e=>({1:"reported",2:"read",3:"agreed",4:"rejected"}[e]||"reported"),I=e=>({1:"待转运",2:"转运中",3:"转运完成",4:"转运取消",5:"暂存"}[e]||"未知"),H=e=>({1:"pending",2:"transporting",3:"completed",4:"cancelled",5:"draft"}[e]||"pending"),M=e=>e?e.replace("T"," ").substring(0,16):"",Y=()=>{b.value={id:c.value.id,approveResult:"3",confirmResult:"",rejectType:"",isTransport:c.value.isTransport||"2",isDonate:"0"},h.value=!0},$=()=>{h.value=!1},B=e=>{"3"==e?(b.value.rejectType="",b.value.isDonate="0"):"4"==e&&(b.value.isTransport="1")},C=async()=>{var a,t;if((()=>{if(!b.value.approveResult)return e.index.showToast({title:"请选择确认结果",icon:"none"}),!1;if("3"==b.value.approveResult&&!b.value.isTransport)return e.index.showToast({title:"请选择是否需要转运",icon:"none"}),!1;if("4"==b.value.approveResult){if(!b.value.rejectType)return e.index.showToast({title:"请选择驳回原因",icon:"none"}),!1;if(!b.value.confirmResult)return e.index.showToast({title:"驳回时必须填写驳回意见",icon:"none"}),!1}return!0})()){f.value=!0;try{const o={...c.value,reportStatus:b.value.approveResult,confirmResult:b.value.confirmResult,approvername:(null==(a=d.user)?void 0:a.name)||"当前用户",approvetime:e.dayjs().format("YYYY-MM-DD HH:mm:ss"),updateTime:e.dayjs().format("YYYY-MM-DD HH:mm:ss"),updateBy:(null==(t=d.user)?void 0:t.name)||"当前用户"};"3"==b.value.approveResult?(o.isTransport=b.value.isTransport,"1"==b.value.isTransport?o.isDonate="1":o.isDonate="0"):"4"==b.value.approveResult&&(o.rejectType=b.value.rejectType,o.isTransport="1",o.isDonate="0");const r=await e.index.$uapi.post("/project/donatebaseinforeport/edit",o);200==r.code?(e.index.showToast({title:"确认成功",icon:"success"}),h.value=!1,await _(y.value),"3"==b.value.approveResult&&"2"==b.value.isTransport&&(console.log(y.value),setTimeout(()=>{e.index.navigateTo({url:`/pagesSub/case/transferinfo?caseId=${y.value}&caseNo=${c.value.caseNo}&autoCreate=true`})},800))):e.index.showToast({title:r.msg||"确认失败",icon:"none"})}catch(o){console.error("确认失败:",o),e.index.showToast({title:"确认失败,请重试",icon:"none"})}finally{f.value=!1}}},L=()=>{l?e.index.switchTab({url:"/pages/index/index"}):e.index.navigateBack()},P=()=>{e.index.navigateTo({url:`/pagesSub/case/CaseDetails?id=${y.value}&edit=true`})},q=()=>{"3"===c.value.reportStatus?e.index.navigateTo({url:`/pages/transport/create?caseId=${y.value}&caseNo=${c.value.caseNo}`}):e.index.showToast({title:"案例需先审批同意",icon:"none"})},A=()=>{if(j.value){const a=c.value.serviceTransport[0];e.index.navigateTo({url:`/pages/transport/detail?id=${a.id}`})}},F=a=>{const t=a.url.startsWith("http")?a.url:(a.url.startsWith("/")?"":"/")+a.url;a.type&&a.type.includes("image")?e.index.previewImage({urls:g.value.filter(e=>e.type&&e.type.includes("image")).map(e=>e.url.startsWith("http")?e.url:(e.url.startsWith("/")?"":"/")+e.url),current:t}):a.type&&a.type.includes("pdf")?e.index.downloadFile({url:t,success:a=>{e.index.openDocument({filePath:a.tempFilePath,fileType:"pdf",showMenu:!0})},fail:()=>e.index.showToast({title:"打开文件失败",icon:"none"})}):e.index.showToast({title:"暂不支持此文件类型预览",icon:"none"})};return(a,t)=>{return e.e({a:c.value.hospitalLogo||"/static/hospital-default.png",b:e.t(c.value.treatmenthospitalname||"未填写治疗医院"),c:e.t(c.value.donorNo?"器官捐献案例":"案例详情"),d:e.t((o=c.value.reportStatus,{1:"已上报",2:"已阅读",3:"已同意",4:"已驳回"}[o]||"已上报")),e:e.n(N(c.value.reportStatus)),f:e.t(c.value.caseNo||"未生成"),g:e.t(M(c.value.reporttime)),h:e.f(w.value,(a,t,o)=>({a:e.t(a.label),b:a.id,c:T.value==a.id?1:"",d:e.o(e=>{return t=a.id,void(T.value=t);var t},a.id)})),i:"basic"==T.value},"basic"==T.value?{j:e.t(c.value.name||"未填写"),k:e.t(v("sys_user_sex",c.value.sex)),l:e.t(c.value.age||"0"),m:e.t(v("sys_AgeUnit",c.value.ageunit)),n:e.t(v("sys_IDType",c.value.idcardtype)),o:e.t(c.value.idcardno||"未填写"),p:e.t(v("sys_Nation",c.value.nation)),q:e.t(c.value.nationality||"未填写"),r:e.t(c.value.nativeplace||"未填写"),s:e.t(v("sys_education",c.value.education)),t:e.t(v("sys_occupation",c.value.occupation)),v:e.t(c.value.phone||"未填写"),w:e.t(D()||"未填写"),x:e.t(S()||"未填写")}:{},{y:"medical"==T.value},"medical"==T.value?{z:e.t(c.value.inpatientno||"未填写"),A:e.t(c.value.gcsScore||"未评估"),B:e.t(v("sys_BloodType",c.value.bloodType)),C:e.t("1"==c.value.rhYin?"是":"否"),D:e.t(p()||"无"),E:e.t(c.value.diagnosisname||"未填写"),F:e.t(c.value.illnessoverview||"未填写"),G:e.t(c.value.patientstate||"未填写")}:{},{H:"contact"==T.value},"contact"==T.value?{I:e.t(c.value.treatmenthospitalname||"未填写"),J:e.t(c.value.treatmentdeptname||"未填写"),K:e.t(c.value.toHospital||"未填写"),L:e.t(c.value.infoName||"未填写"),M:e.t(c.value.infoNo||"未填写"),N:e.t(c.value.coordinatorName||"未填写"),O:e.t(c.value.coordinatorNo||"未填写")}:{},{P:"transport"==T.value},"transport"==T.value?e.e({Q:"3"==c.value.reportStatus},"3"==c.value.reportStatus?e.e({R:"2"==c.value.isTransport&&!j.value},"2"!=c.value.isTransport||j.value?{}:{S:e.o(q)},{T:j.value},j.value?{U:e.o(A)}:{}):{},{V:e.t("2"==c.value.isTransport?"需要":"不需要"),W:j.value&&c.value.serviceTransport},j.value&&c.value.serviceTransport?{X:e.f(c.value.serviceTransport,(a,t,o)=>e.e({a:e.t(a.reportId||a.id),b:e.t(I(a.transitStatus)),c:e.n(H(a.transitStatus)),d:e.t(a.transportStartPlace||"未填写"),e:e.t(M(a.transportStartTime)),f:e.t(a.contactPerson||"未填写"),g:a.doctor},a.doctor?{h:e.t(a.doctor)}:{},{i:a.nurse},a.nurse?{j:e.t(a.nurse)}:{},{k:a.driver},a.driver?{l:e.t(a.driver)}:{},{m:a.icuDoctor},a.icuDoctor?{n:e.t(a.icuDoctor)}:{},{o:a.id}))}:"2"==c.value.isTransport?e.e({Z:"3"!==c.value.reportStatus},(c.value.reportStatus,{})):{},{Y:"2"==c.value.isTransport}):{},{aa:e.sr("attachment","6b5be726-0"),ab:e.o(F),ac:e.p({files:g.value,readonly:!0,maxCount:5}),ad:e.o(L),ae:x.value&&0==c.value.delFlag},x.value&&0==c.value.delFlag?{af:e.o(Y)}:{},{ag:"1"==c.value.reportStatus||"2"==c.value.reportStatus},"1"==c.value.reportStatus||"2"==c.value.reportStatus?{ah:e.o(P)}:{},{ai:h.value},h.value?{aj:e.o($)}:{},{ak:e.o($),al:e.t(c.value.caseNo),am:e.t(c.value.name),an:e.t(c.value.diagnosisname),ao:e.t(c.value.treatmenthospitalname),ap:"3"==b.value.approveResult?1:"",aq:"3"==b.value.approveResult?1:"",ar:e.o(e=>{b.value.approveResult="3",B("3")}),as:"4"==b.value.approveResult?1:"",at:"4"==b.value.approveResult?1:"",av:e.o(e=>{b.value.approveResult="4",B("4")}),aw:"3"==b.value.approveResult},"3"==b.value.approveResult?{ax:"1"==b.value.isTransport?1:"",ay:"1"==b.value.isTransport?1:"",az:e.o(e=>b.value.isTransport="1"),aA:"2"==b.value.isTransport?1:"",aB:"2"==b.value.isTransport?1:"",aC:e.o(e=>b.value.isTransport="2")}:{},{aD:"4"==b.value.approveResult},"4"==b.value.approveResult?{aE:e.f(R,(a,t,o)=>({a:b.value.rejectType==a.value?1:"",b:e.t(a.label),c:a.value,d:b.value.rejectType==a.value?1:"",e:e.o(e=>b.value.rejectType=a.value,a.value)}))}:{},{aF:e.t("4"==b.value.approveResult?"驳回意见":"确认意见"),aG:"4"==b.value.approveResult},(b.value.approveResult,{}),{aH:"4"==b.value.approveResult?"请输入详细的驳回意见":"请输入确认意见",aI:b.value.confirmResult,aJ:e.o(e=>b.value.confirmResult=e.detail.value),aK:e.t(b.value.confirmResult.length),aL:e.o($),aM:e.o(C),aN:f.value,aO:h.value?1:"",aP:m.value},m.value?{aQ:e.p({show:m.value,text:"加载中..."})}:{},{aR:e.gei(a,"")});var o}}},u=e._export_sfc(s,[["__scopeId","data-v-6b5be726"]]);wx.createPage(u);