| 1 |
- var g=(S,h,r)=>new Promise((d,x)=>{var c=o=>{try{f(r.next(o))}catch(_){x(_)}},v=o=>{try{f(r.throw(o))}catch(_){x(_)}},f=o=>o.done?d(o.value):Promise.resolve(o.value).then(c,v);f((r=r.apply(S,h)).next())});import{_ as O}from"./componentMap-090b9009.js";import{u as j}from"./useForm-2d0613b7.js";import"./FormItem.vue_vue_type_script_lang-d3f182d4.js";import{P as L}from"./ImportModal.vue_vue_type_style_index_0_scoped_a59c69fa_lang-153d3ad5.js";import"./index-74ee4d87.js";import{l as Z}from"./index-971488e0.js";import{aj as w,m as q,_ as A}from"./index.js";import{g as R}from"./suppliesStatsApi-9f2069c1.js";import{u as V,_ as M}from"./useTable-15009f7a.js";import G from"./pie-b0d09d82.js";import{B as J,a5 as T,a6 as B}from"./antd-d98832c6.js";import{d as K,f as m,o as Q,Y as p,Z as u,_ as b,l as a,u as e,a7 as i,$ as C,a9 as y,F as k,E as F}from"./vue-8fccce23.js";import"./index-7b00e5b4.js";import"./index-a7810134.js";import"./useFormItem-9c6d112e.js";import"./uuid-31b8b5a4.js";import"./useSortable-7338e303.js";import"./download-fac9a150.js";import"./copyTextToClipboard-ba2fd847.js";import"./TextEditor-e80f27f2.js";import"./onMountedOrActivated-cb072c10.js";import"./useWindowSizeFn-e2b93e2a.js";import"./useForm-bca35dcc.js";import"./componentMap-4cfd6e0f.js";import"./sortable.esm-4ae27e0b.js";import"./useECharts-60f43adb.js";const U=[{title:"药品类型",dataIndex:"type",align:"left"},{title:"数量",dataIndex:"sum",align:"left"},{title:"占比",dataIndex:"proportion",align:"left"}],W=[{title:"药品名称",dataIndex:"type",align:"left"},{title:"数量",dataIndex:"sum",align:"left"},{title:"占比",dataIndex:"proportion",align:"left"}],X=[{field:"patrolTime",component:"RangePicker",componentProps:{format:"YYYY-MM-DD",valueFormat:"YYYY-MM-DD"}}],tt={class:"flex items-center xt-form"},et={class:"flex"},at={class:"mb-4"},ot={key:0},st=["onClick"],lt=K({__name:"index",setup(S){const h=m("药品用量统计"),r=m({}),d=m([]),x=m([]),c=m([]),v=m(""),[f,{getFieldsValue:o}]=j({schemas:X,autoSubmitOnEnter:!0,size:"large",rowProps:{gutter:16}}),[_,{setTableData:E}]=V({showIndexColumn:!1,bordered:!0,striped:!1,pagination:!1,maxHeight:400,showSummary:!0,summaryFunc:H,dataSource:d.value,columns:U}),[N,{setTableData:I}]=V({showIndexColumn:!1,bordered:!0,striped:!1,pagination:!1,maxHeight:400,dataSource:x.value,columns:W}),D=m();Q(()=>g(this,null,function*(){D.value=yield Z({dictCode:"pht"}),Y()}));function $(){return g(this,null,function*(){c.value=o().patrolTime||[],Y()})}function Y(){return g(this,null,function*(){const s={statsTime:c.value},l=yield R(s);d.value=l.data,yield E(l.data);const t={content:[],description:h.value};l.data.forEach(n=>{t.content.push({name:w(D.value,n.type,"label"),value:n.sum})}),r.value=t,P(d.value[0])})}function z(){console.log("下载按钮")}function P(s){return g(this,null,function*(){if(s){const l={statsTime:c.value,drugType:s.type},t=yield R(l);v.value=w(D.value,s.type,"label"),yield I(t.data)}else yield I([])})}function H(s){console.log(s);let l=0,t=0;return s.forEach(n=>{l+=n.sum,t+=parseFloat(parseFloat(n.proportion.split("%")[0]).toFixed(2))}),[{type:"合计",sum:l,proportion:t+"%"}]}return(s,l)=>(p(),u(k,null,[b("div",tt,[b("div",et,[a(e(O),{onRegister:e(f),onFieldValueChange:$,style:{width:"240px"},class:"mr-2"},null,8,["onRegister"])]),a(e(J),{type:"default",onClick:z,style:{height:"38px","margin-top":"-8px"}},{default:i(()=>[a(q,{icon:"icon-xt-download-download_default|iconfont",size:14})]),_:1})]),b("div",at,[a(e(L),{title:h.value},null,8,["title"])]),a(e(B),{style:{"max-height":"400px"}},{default:i(()=>[a(e(T),{span:16},{default:i(()=>[a(G,{data:r.value},null,8,["data"])]),_:1}),a(e(T),{span:8},{default:i(()=>[a(e(M),{onRegister:e(_)},{bodyCell:i(({column:t,record:n})=>[t.key==="type"?(p(),u("span",ot,C(e(w)(D.value,n.type,"label")),1)):y("",!0),t.key==="sum"?(p(),u("a",{key:1,onClick:nt=>P(n)},C(n.sum),9,st)):y("",!0)]),_:1},8,["onRegister"])]),_:1})]),_:1}),a(e(B),{style:{"max-height":"200px"}},{default:i(()=>[a(e(T),{span:24},{default:i(()=>[a(e(M),{onRegister:e(N)},{headerCell:i(({column:t})=>[t.key==="type"?(p(),u(k,{key:0},[F(C(v.value),1)],64)):y("",!0),t.key==="sum"?(p(),u(k,{key:1},[F(" 数量 ")],64)):y("",!0),t.key==="proportion"?(p(),u(k,{key:2},[F(" 占比 ")],64)):y("",!0)]),_:1},8,["onRegister"])]),_:1})]),_:1})],64))}});const Mt=A(lt,[["__scopeId","data-v-ee3f822d"]]);export{Mt as default};
|