Files
zyt/server/public/admin/assets/NoteTimeline-DIEMdNOH.js
T
2026-05-05 18:27:58 +08:00

3 lines
6.3 KiB
JavaScript

import{v as X,d as q,R as K,a as W}from"./element-plus-B7Dx6hR2.js";import{_ as Y}from"./picker-CMHTtQpW.js";import{e as Z,c as ee,i as S,_ as te}from"./index-ujO9M2tm.js";import{s as B}from"./@vue/runtime-dom-CEiKlVMn.js";import{b as A,G as ie}from"./@element-plus/icons-vue-C25ce6PD.js";import{a as L,d as se}from"./patient-V9ckv-WF.js";import{f as oe,w as ne,ak as i,I as n,a as l,aN as c,J as a,H as d,F as v,ap as k,G as w}from"./@vue/runtime-core-tF_2qJHK.js";import{n as I,y as C}from"./@vue/reactivity-BmZ-20sQ.js";import{Q as U}from"./@vue/shared-mAAVTE9n.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-IOePT4IN.js";import"./index-DySGzem2.js";import"./index.vue_vue_type_script_setup_true_lang-Clh1LnRz.js";import"./index-S0v-6Aw9.js";import"./index-bkXsI6HU.js";import"./index.vue_vue_type_script_setup_true_lang-BmQQfXv-.js";import"./@vueuse/core-Da2f2eD_.js";import"./@vueuse/shared-Bl-RnC0s.js";import"./file-CSUgLJrs.js";import"./usePaging-BIG1oWvJ.js";import"./vuedraggable-Bl4C18MR.js";import"./vue-BEnQNo4t.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-BjeWxBI0.js";import"./pinia-CTWOnonq.js";import"./axios-C80V62Fs.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-yVHyDRAS.js";import"./tslib-BDyQ-Jie.js";import"./zrender-C0YiHEZX.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-Bm7NQW9r.js";const re={class:"note-timeline-wrap"},le={key:0,class:"timeline-actions"},ae={class:"upload-trigger"},me={class:"upload-trigger"},de={key:1,class:"note-timeline"},pe={class:"timeline-date"},ce={class:"timeline-body"},ue={key:0,class:"timeline-content"},ge={key:1,class:"timeline-images"},fe={key:2,class:"timeline-images"},_e={key:0,class:"thumb-wrap"},ve={key:1,class:"file-wrap"},he=["href","title"],ye={class:"file-name"},ke=oe({__name:"NoteTimeline",props:{notes:{},diagnosisId:{},readonly:{type:Boolean}},emits:["refresh"],setup(m,{emit:P}){const u=m,b=P,R=Z(),g=t=>R.getImageUrl(t),x=I([]),N=I([]),f=I(0),_=I(0),$=["jpg","jpeg","png","gif","bmp","webp","svg"],E=t=>{var s;const e=((s=t.split(".").pop())==null?void 0:s.toLowerCase().split("?")[0])||"";return $.includes(e)},F=t=>{var s;const e=t.split("/");return decodeURIComponent(((s=e[e.length-1])==null?void 0:s.split("?")[0])||"文件")},G=t=>t.filter(E).map(g),j=(t,e)=>{const s=t.filter(E),h=t[e];return s.indexOf(h)},O=t=>t?t.split(`
`).filter(Boolean):[],H=t=>{if(!u.diagnosisId)return;const e=Array.isArray(t)?t:[t];if(e.length<=f.value){f.value=e.length;return}const s=e.slice(f.value);f.value=e.length,s.length>0&&L({diagnosis_id:u.diagnosisId,tongue_images:s}).then(()=>{S.msgSuccess("舌苔照片已添加"),b("refresh")})},J=t=>{if(!u.diagnosisId)return;const e=Array.isArray(t)?t:[t];if(e.length<=_.value){_.value=e.length;return}const s=e.slice(_.value);_.value=e.length,s.length>0&&L({diagnosis_id:u.diagnosisId,report_files:s}).then(()=>{S.msgSuccess("检查报告已添加"),b("refresh")})};ne(()=>u.notes,()=>{x.value=[],N.value=[],f.value=0,_.value=0});const V=async(t,e,s)=>{try{await W.confirm("确认删除?","提示",{type:"warning"})}catch{return}await se({note_id:t,image_type:e,image_path:s}),S.msgSuccess("已删除"),b("refresh")};return(t,e)=>{const s=ee,h=Y,M=X,y=q,Q=K;return i(),n("div",re,[!m.readonly&&m.diagnosisId?(i(),n("div",le,[l(h,{modelValue:x.value,"onUpdate:modelValue":e[0]||(e[0]=o=>x.value=o),limit:99,type:"image","exclude-domain":!0,onChange:H},{upload:c(()=>[a("div",ae,[l(s,{size:20,name:"el-icon-Plus"}),e[2]||(e[2]=a("span",null,"舌苔照片",-1))])]),_:1},8,["modelValue"]),l(h,{modelValue:N.value,"onUpdate:modelValue":e[1]||(e[1]=o=>N.value=o),limit:99,type:"file","exclude-domain":!0,onChange:J},{upload:c(()=>[a("div",me,[l(s,{size:20,name:"el-icon-Plus"}),e[3]||(e[3]=a("span",null,"检查报告",-1))])]),_:1},8,["modelValue"])])):d("",!0),m.notes.length?(i(),n("div",de,[(i(!0),n(v,null,k(m.notes,o=>{var T,z;return i(),n("div",{key:o.id,class:"timeline-node"},[e[6]||(e[6]=a("div",{class:"timeline-dot"},null,-1)),a("div",pe,U(o.note_date),1),a("div",ce,[o.content?(i(),n("div",ue,[(i(!0),n(v,null,k(O(o.content),(r,p)=>(i(),n("div",{key:p,class:"content-line"},U(r),1))),128))])):d("",!0),(T=o.tongue_images)!=null&&T.length?(i(),n("div",ge,[e[4]||(e[4]=a("span",{class:"images-label"},"舌苔照片",-1)),(i(!0),n(v,null,k(o.tongue_images,(r,p)=>(i(),n("div",{key:p,class:"thumb-wrap"},[l(M,{src:g(r),"preview-src-list":o.tongue_images.map(g),"initial-index":p,fit:"cover",class:"timeline-thumb","preview-teleported":""},null,8,["src","preview-src-list","initial-index"]),m.readonly?d("",!0):(i(),w(y,{key:0,class:"thumb-delete",onClick:B(D=>V(o.id,"tongue_images",r),["stop"])},{default:c(()=>[l(C(A))]),_:1},8,["onClick"]))]))),128))])):d("",!0),(z=o.report_files)!=null&&z.length?(i(),n("div",fe,[e[5]||(e[5]=a("span",{class:"images-label"},"检查报告",-1)),(i(!0),n(v,null,k(o.report_files,(r,p)=>(i(),n(v,{key:p},[E(r)?(i(),n("div",_e,[l(M,{src:g(r),"preview-src-list":G(o.report_files),"initial-index":j(o.report_files,p),fit:"cover",class:"timeline-thumb","preview-teleported":""},null,8,["src","preview-src-list","initial-index"]),m.readonly?d("",!0):(i(),w(y,{key:0,class:"thumb-delete",onClick:B(D=>V(o.id,"report_files",r),["stop"])},{default:c(()=>[l(C(A))]),_:1},8,["onClick"]))])):(i(),n("div",ve,[a("a",{href:g(r),target:"_blank",class:"file-link",title:F(r)},[l(y,{size:20},{default:c(()=>[l(C(ie))]),_:1}),a("span",ye,U(F(r)),1)],8,he),m.readonly?d("",!0):(i(),w(y,{key:0,class:"file-delete",onClick:B(D=>V(o.id,"report_files",r),["stop"])},{default:c(()=>[l(C(A))]),_:1},8,["onClick"]))]))],64))),128))])):d("",!0)])])}),128))])):d("",!0),!m.notes.length&&m.readonly?(i(),w(Q,{key:2,description:"暂无备注","image-size":48})):d("",!0)])}}}),yt=te(ke,[["__scopeId","data-v-922062fd"]]);export{yt as default};