felicity-lims/felicity/templates/static/assets/WorkSheetsAdmin-653e476c.js

1 line
16 KiB
JavaScript

import{_ as oe,v as le,w as ne,t as ae,n as ie,A as re,E as de,q as ce}from"./billing-356772f3.js";import{f as me,G as ue,r as C,d as f,c as q,v as pe,h as a,k as i,x as e,F as p,ak as _,s as y,u as o,D as c,B as _e,y as u,i as L,j as he,A as $,ag as h,p as ve,e as fe,_ as ye}from"./_plugin-vue_export-helper-3f67fb71.js";import{a as k,v as T,d as w,e as ge}from"./runtime-dom.esm-bundler-6e07ef74.js";const n=S=>(ve("data-v-548ca798"),S=S(),fe(),S),be={class:"mt-4"},xe={class:"flex items-center"},we=n(()=>e("h1",{class:"h1 my-4 font-bold text-dark-700"},"WorkSheet Templates",-1)),ke=n(()=>e("hr",null,null,-1)),Te={class:"grid grid-cols-12 gap-4 mt-2"},Se={class:"col-span-3"},Ue={class:"overflow-y-scroll overscroll-contain scroll-section"},Ce=["onClick"],We=["onClick"],Ae={key:0,class:"col-span-9 overflow-y-scroll overscroll-contain scroll-section"},Ee={class:"bg-white rounded-sm shadow-sm hover:shadow-lg duration-500 px-4 sm:px-6 md:px-2 py-4"},Ve={class:"grid grid-cols-12 gap-3"},Re={class:"col-span-12 px-3 sm:px-0"},Oe={class:"flex justify-between sm:text-sm md:text-md lg:text-lg text-gray-700 font-bold"},je=n(()=>e("svg",{class:"w-4 h-4 fill-current",viewBox:"0 0 20 20"},[e("path",{d:"M13.586 3.586a2 2 0 112.828 2.828l-.793.793-2.828-2.828.793-.793zM11.379 5.793L3 14.172V17h2.828l8.38-8.379-2.83-2.828z"})],-1)),De=[je],Ie=n(()=>e("hr",null,null,-1)),Me={class:"grid grid-cols-2 mt-2"},qe={class:"col-span-1"},Le={class:"flex"},$e=n(()=>e("span",{class:"text-gray-800 text-sm font-medium w-1/2"},"Instrument:",-1)),Pe={class:"text-gray-600 text-sm md:text-md"},Qe={class:"flex"},Be=n(()=>e("span",{class:"text-gray-800 text-sm font-medium w-1/2"},"Analyses Service:",-1)),Ne={class:"text-gray-600 text-sm md:text-md ml-1"},Fe={class:"col-span-1"},Ke={class:"flex"},ze=n(()=>e("span",{class:"text-gray-800 text-sm font-medium w-1/2"},"Number of Samples:",-1)),He={class:"text-gray-600 text-sm md:text-md"},Ge={class:"flex"},Je=n(()=>e("span",{class:"text-gray-800 text-sm font-medium w-1/2"},"Number of Reserved:",-1)),Xe={class:"text-gray-600 text-sm md:text-md"},Ye=n(()=>e("hr",{class:"my-4"},null,-1)),Ze={class:"grid grid-cols-2 mt-2"},es={class:"col-span-1"},ss={class:"flex w-full"},ts=n(()=>e("span",{class:"text-gray-800 text-sm font-medium w-1/2"},"WorkSheet type",-1)),os={class:"text-gray-600 text-sm md:text-md"},ls={key:0,class:"flex w-full"},ns=n(()=>e("span",{class:"text-gray-800 text-sm font-medium w-1/2"},"Direction:",-1)),as={class:"text-gray-600 text-sm md:text-md"},is={key:0,class:"col-span-1"},rs={class:"flex w-full"},ds=n(()=>e("span",{class:"text-gray-800 text-sm font-medium w-1/2"},"Rows:",-1)),cs={class:"text-gray-600 text-sm md:text-md"},ms={class:"flex w-full"},us=n(()=>e("span",{class:"text-gray-800 text-sm font-medium w-1/2"},"Columns:",-1)),ps={class:"text-gray-600 text-sm md:text-md"},_s={class:"bg-white shadow-md mt-2"},hs={class:"-mb-px flex justify-start"},vs=["onClick"],fs={class:"mt-4"},ys={key:0},gs=n(()=>e("h3",{class:"my-4"},"WorkSheet Layout Preview",-1)),bs=n(()=>e("hr",{class:"my-2"},null,-1)),xs={key:0},ws={class:"grid grid-cols-6 gap-x-2 w-1/2"},ks={class:"col-span-1 my-1"},Ts={key:1},Ss={action:"post",class:"p-1"},Us={class:"grid grid-cols-3 gap-x-4 mb-4"},Cs={class:"block col-span-2 mb-2"},Ws=n(()=>e("span",{class:"text-gray-700"},"Template Name",-1)),As={class:"block col-span-1 mb-2"},Es=n(()=>e("span",{class:"text-gray-700"},"Number of Samples",-1)),Vs=n(()=>e("span",{class:"text-orange-600 ml-2 italic"},"(less reserved)",-1)),Rs={class:"grid grid-cols-4 gap-x-4 mb-4"},Os={class:"block col-span-1 mb-2"},js=n(()=>e("span",{class:"text-gray-700"},"Template Type",-1)),Ds=n(()=>e("option",{value:"flat"},"Single Column / Flat",-1)),Is=n(()=>e("option",{value:"grid"},"GRID",-1)),Ms=[Ds,Is],qs={key:0,class:"col-span-3"},Ls={class:"grid grid-cols-3 gap-x-4"},$s={class:"block col-span-1 mb-2"},Ps=n(()=>e("span",{class:"text-gray-700"},"Cols",-1)),Qs={class:"block col-span-1 mb-2"},Bs=n(()=>e("span",{class:"text-gray-700"},"Rows",-1)),Ns={for:"toggle",class:"text-gray-700 mt-8 ml-4"},Fs={class:"relative inline-block w-10 mr-2 align-middle select-none transition duration-200 ease-in"},Ks=n(()=>e("label",{for:"toggle",class:"toggle-label block overflow-hidden h-6 rounded-full bg-gray-300 cursor-pointer"},null,-1)),zs=n(()=>e("span",{class:"text-gray-700 text-base"},"Row Wise",-1)),Hs={class:"grid grid-cols-3 gap-x-4 mb-4"},Gs={class:"block col-span-1 mb-2"},Js=n(()=>e("span",{class:"text-gray-700"},"Instrument",-1)),Xs=n(()=>e("option",null,null,-1)),Ys=["value"],Zs={class:"block col-span-1 mb-2"},et=n(()=>e("span",{class:"text-gray-700"},"SampleType",-1)),st=n(()=>e("option",null,null,-1)),tt=["value"],ot={class:"block col-span-1 mb-2"},lt=n(()=>e("span",{class:"text-gray-700"},"Anslysis Service",-1)),nt=n(()=>e("option",null,null,-1)),at=["value"],it={id:"samples"},rt=n(()=>e("hr",null,null,-1)),dt={class:"flex justify-between items-center py-2"},ct=n(()=>e("h5",null,"Reserved Positions",-1)),mt={class:"block col-span-1 mb-2"},ut=n(()=>e("span",{class:"text-gray-700"},"QC Template",-1)),pt={class:"flex items-center"},_t=n(()=>e("option",null,null,-1)),ht=["value"],vt=n(()=>e("hr",{class:"mb-4"},null,-1)),ft={class:"flex items-center justify-between"},yt={class:""},gt={class:"grid grid-cols-6 gap-x-4"},bt={class:"block col-span-2 mb-2"},xt=n(()=>e("span",{class:"text-gray-700"},"Position",-1)),wt=["onUpdate:modelValue"],kt={class:"block col-span-2 mb-2"},Tt=n(()=>e("span",{class:"text-gray-700"},"Blank/Control",-1)),St=["onUpdate:modelValue"],Ut=["value"],Ct={class:""},Wt=["onClick"],At=n(()=>e("hr",null,null,-1)),Et=n(()=>e("hr",null,null,-1)),Vt=me({__name:"WorkSheetsAdmin",setup(S){const P=ue(()=>oe(()=>import("./SimpleModal-1f91868a.js"),["assets/SimpleModal-1f91868a.js","assets/_plugin-vue_export-helper-3f67fb71.js","assets/runtime-dom.esm-bundler-6e07ef74.js","assets/SimpleModal-f645a074.css"])),U=le(),g=ne(),R=ae(),O=ie(),{withClientMutation:j}=ce();let b=C("preview");const Q=["preview"];f(()=>"tab-"+b.value);let x=C(!1),W=C(null),s=q({}),D=C(""),B=q({first:void 0,after:"",text:"",sortBy:["name"]});g.fetchAnalysesServices(B),R.fetchSampleTypes(),O.fetchInstruments(),g.fetchQCTemplates(),g.fetchQCLevels(),U.fetchWorkSheetTemplates();const I=f(()=>g.getQCTemplates),N=f(()=>U.getWorkSheetTemplates);function F(){const m={name:s.name,sampleTypeUid:s.sampleTypeUid,instrumentUid:s.instrumentUid,description:s.description,qcTemplateUid:s.qcTemplateUid,reserved:s.reserved,numberOfSamples:+s.numberOfSamples,worksheetType:s.worksheetType,cols:s.cols,rows:s.rows,rowWise:s.rowWise,analysisUid:s.analysisUid};j(re,{payload:m},"createWorksheetTemplate").then(l=>U.addWorksheetTemplate(l))}function K(){const m={name:s.name,sampleTypeUid:s.sampleTypeUid,instrumentUid:s.instrumentUid,description:s.description,qcTemplateUid:s.qcTemplateUid,reserved:s.reserved,numberOfSamples:s.numberOfSamples,worksheetType:s.worksheetType,cols:s.cols,rows:s.rows,rowWise:s.rowWise,analysisUid:s.analysisUid};j(de,{uid:s.uid,payload:m},"updateWorksheetTemplate").then(l=>U.updateWorksheetTemplate(l))}function z(m){let l=[];return Array.from({length:m?.numberOfSamples+m?.reserved?.length},(t,r)=>r+1).forEach(t=>{let r={position:t,row:1,col:1,name:"sample",sampleUid:void 0};m?.reserved?.some(d=>d.position===t)&&(r.name="control"),m?.reserved?.forEach(d=>{d[1]?.position===t&&(r.name=d[1]?.name)}),l.push(r)}),l}function A(){s.worksheetType=="grid"&&(s.rows=Math.ceil((s?.numberOfSamples+(s.reserved?.length|0))/s?.cols))}function M(m){Object.assign(s,m);const l=z(m);s.preview=l}function H(){s.reserved?.push({}),A()}function G(m){s.reserved?.splice(m,1)}function J(){if(s.reserved=[],!s.qcTemplateUid)return;I.value?.find(l=>l.uid===s.qcTemplateUid)?.qcLevels.forEach((l,v)=>{s.reserved?.push({position:v+1,levelUid:l.uid})}),A()}function X(m){m.target.value=="flat"&&(s.cols=void 0,s.rows=void 0)}function E(m,l={}){if(W.value=m,D.value=(m?"CREATE":"EDIT")+" WOKKSHEET TEMPLATE",x.value=!0,m){let v={};v.instrument={},v.sampleType={},v.analysis={},Object.assign(s,{...v})}else M(l)}function Y(){W.value&&F(),W.value||K(),x.value=!1}const Z=f(()=>O.getInstruments),ee=f(()=>g.getAnalysesServicesSimple?.filter(v=>v?.category?.name!=="Quality Control")),se=f(()=>g.getQCLevels),te=f(()=>R.getSampleTypes);return(m,l)=>{const v=pe("font-awesome-icon");return a(),i(p,null,[e("div",be,[e("div",xe,[we,e("button",{class:"p-2 my-2 ml-8 text-sm border-sky-800 border text-dark-700 transition-colors duration-150 rounded-sm focus:outline-none hover:bg-sky-800 hover:text-gray-100",onClick:l[0]||(l[0]=t=>E(!0))}," Add Template ")]),ke,e("div",Te,[e("section",Se,[e("div",Ue,[(a(!0),i(p,null,_(o(N),t=>(a(),i("div",{key:t.uid,class:y(o(s)?.uid===t.uid?"w-full flex justify-between p-2 mb-1 rounded-sm shadow border border-sky-800 bg-emerald-200":"bg-white w-full flex justify-between p-2 mb-1 rounded-sm shadow border")},[e("a",{onClick:k(r=>M(t),["prevent","stop"]),class:"font-semibold text-gray-700"},[e("span",null,c(t.name),1)],8,Ce),e("a",{onClick:r=>E(!1,t),class:"px-2 cursor"},[_e(v,{icon:"pen"})],8,We)],2))),128))])]),o(s).uid?(a(),i("section",Ae,[u(" Listing Item Card "),e("div",Ee,[e("div",Ve,[u(" Summary Column "),e("div",Re,[e("div",Oe,[e("span",null,c(o(s).name),1),e("div",null,[e("button",{onClick:l[1]||(l[1]=t=>E(!1,o(s))),class:"ml-4 inline-flex items-center justify-center w-8 h-8 mr-2 border-sky-800 border text-gray-900 transition-colors duration-150 bg-white rounded-full focus:outline-none hover:bg-gray-200"},De)])]),Ie,e("div",Me,[e("div",qe,[u(" Client Details "),e("div",Le,[$e,e("span",Pe,c(o(s).instrument?.name),1)]),e("div",Qe,[Be,e("span",Ne,c(o(s)?.analysis?.name),1)])]),e("div",Fe,[u(" Communication Details "),e("div",Ke,[ze,e("span",He,c(o(s).numberOfSamples),1)]),e("div",Ge,[Je,e("span",Xe,c(o(s).reserved?.length),1)])])]),Ye,e("div",Ze,[e("div",es,[e("div",ss,[ts,e("span",os,c(o(s).worksheetType),1)]),o(s).worksheetType=="grid"?(a(),i("div",ls,[ns,e("span",as,c(o(s).rowWise?"row-wise":"column-wise"),1)])):u("v-if",!0)]),o(s).worksheetType=="grid"?(a(),i("div",is,[e("div",rs,[ds,e("span",cs,c(o(s).rows),1)]),e("div",ms,[us,e("span",ps,c(o(s).cols),1)])])):u("v-if",!0)])])])]),u(" Sample and Case Data "),e("nav",_s,[e("div",hs,[(a(),i(p,null,_(Q,t=>e("a",{key:t,class:y(["no-underline text-gray-500 uppercase tracking-wide font-bold text-xs py-1 px-4 tab hover:bg-sky-600 hover:text-gray-200",{"tab-active":o(b)===t}]),onClick:r=>L(b)?b.value=t:b=t},c(t),11,vs)),64))])]),e("section",fs,[o(b)==="preview"?(a(),i("div",ys,[gs,bs,o(s).worksheetType=="flat"?(a(),i("div",xs,[(a(!0),i(p,null,_(o(s)?.preview||[],(t,r)=>(a(),i("div",ws,[e("span",ks,c(t.position)+":",1),e("span",{class:y(["col-span-5 my-1 p-1 text-white rounded-xl flex justify-center",{"bg-emerald-600":t.name!=="sample"},{"bg-sky-800":t.name==="sample"}])},c(t.name),3)]))),256))])):u("v-if",!0),o(s).worksheetType=="grid"?(a(),i("div",Ts,[o(s).rowWise?(a(!0),i(p,{key:0},_(o(s).rows,(t,r)=>(a(),i("div",{class:y(["grid grid-cols-"+o(s).cols,"gap-2"]),key:r+"x"},[(a(!0),i(p,null,_(o(s).cols,(d,V)=>(a(),i("div",{key:V,class:"col-span-1 w-full"},[e("span",{class:y(["my-1 p-1 text-white rounded-xl flex justify-center",{"bg-emerald-600":o(s)?.preview[r*o(s).cols+d-1]?.name!=="sample"},{"bg-sky-800":o(s)?.preview[r*o(s).cols+d-1]?.name==="sample"}])},"("+c(r*o(s).cols+d)+") "+c(o(s)?.preview[r*o(s).cols+d-1]?.name),3)]))),128))],2))),128)):(a(),i("div",{key:1,class:y(["grid grid-cols-"+o(s).cols,"gap-2"])},[(a(!0),i(p,null,_(o(s).cols,(t,r)=>(a(),i("div",{class:"col-span-1",key:r+"y"},[(a(!0),i(p,null,_(o(s).rows,(d,V)=>(a(),i("div",{key:V},[u(' <span class="my-1 flex justify-center" >{{ index*workSheetTemplate.rows + row }}</span> '),e("span",{class:y(["my-1 p-1 text-white rounded-xl flex justify-center",{"bg-emerald-600":o(s)?.preview[r*o(s).rows+d-1]?.name!=="sample"},{"bg-sky-800":o(s)?.preview[r*o(s).rows+d-1]?.name==="sample"}])},"("+c(r*o(s).rows+d)+") "+c(o(s)?.preview[r*o(s).rows+d-1]?.name),3)]))),128))]))),128))],2))])):u("v-if",!0)])):u("v-if",!0)])])):u("v-if",!0)])]),u(" WS Template Form Modal "),o(x)?(a(),he(o(P),{key:0,onClose:l[17]||(l[17]=t=>L(x)?x.value=!1:x=!1)},{header:$(()=>[e("h3",null,c(o(D)),1)]),body:$(()=>[e("form",Ss,[e("div",Us,[e("label",Cs,[Ws,h(e("input",{class:"form-input mt-1 block w-full","onUpdate:modelValue":l[2]||(l[2]=t=>o(s).name=t),placeholder:"Name ..."},null,512),[[T,o(s).name]])]),e("label",As,[Es,Vs,h(e("input",{class:"form-input mt-1 block w-full","onUpdate:modelValue":l[3]||(l[3]=t=>o(s).numberOfSamples=t),placeholder:"Count ...",type:"number"},null,512),[[T,o(s).numberOfSamples]])])]),e("div",Rs,[e("label",Os,[js,h(e("select",{class:"form-select block w-full mt-1",onChange:l[4]||(l[4]=t=>X(t)),"onUpdate:modelValue":l[5]||(l[5]=t=>o(s).worksheetType=t)},Ms,544),[[w,o(s).worksheetType]])]),o(s).worksheetType==="grid"?(a(),i("span",qs,[e("div",Ls,[e("label",$s,[Ps,h(e("input",{class:"form-input mt-1 block w-full","onUpdate:modelValue":l[6]||(l[6]=t=>o(s).cols=t),onKeyup:l[7]||(l[7]=t=>A()),type:"number"},null,544),[[T,o(s).cols]])]),e("label",Qs,[Bs,h(e("input",{class:"form-input mt-1 block w-full bg-gray-100","onUpdate:modelValue":l[8]||(l[8]=t=>o(s).rows=t),type:"number",disabled:""},null,512),[[T,o(s).rows]])]),e("label",Ns,[e("div",Fs,[h(e("input",{type:"checkbox",name:"toggle",id:"toggle","onUpdate:modelValue":l[9]||(l[9]=t=>o(s).rowWise=t),class:"toggle-checkbox absolute block w-6 h-6 rounded-full bg-white border-4 appearance-none cursor-pointer outline-none"},null,512),[[ge,o(s).rowWise]]),Ks]),zs])])])):u("v-if",!0)]),e("div",Hs,[e("label",Gs,[Js,h(e("select",{class:"form-select block w-full mt-1","onUpdate:modelValue":l[10]||(l[10]=t=>o(s).instrumentUid=t)},[Xs,(a(!0),i(p,null,_(o(Z),t=>(a(),i("option",{key:t.uid,value:t.uid},c(t.name),9,Ys))),128))],512),[[w,o(s).instrumentUid]])]),e("label",Zs,[et,h(e("select",{class:"form-select block w-full mt-1","onUpdate:modelValue":l[11]||(l[11]=t=>o(s).sampleTypeUid=t)},[st,(a(!0),i(p,null,_(o(te),t=>(a(),i("option",{key:t.uid,value:t.uid},c(t.name),9,tt))),128))],512),[[w,o(s).sampleTypeUid]])]),e("label",ot,[lt,h(e("select",{class:"form-select block w-full mt-1","onUpdate:modelValue":l[12]||(l[12]=t=>o(s).analysisUid=t)},[nt,(a(!0),i(p,null,_(o(ee),t=>(a(),i("option",{key:t.uid,value:t.uid},c(t.name),9,at))),128))],512),[[w,o(s).analysisUid]])])]),e("section",it,[rt,e("div",dt,[ct,e("label",mt,[ut,e("div",pt,[h(e("select",{class:"form-select block w-full mt-1","onUpdate:modelValue":l[13]||(l[13]=t=>o(s).qcTemplateUid=t)},[_t,(a(!0),i(p,null,_(o(I),t=>(a(),i("option",{key:t.uid,value:t.uid},c(t.name),9,ht))),128))],512),[[w,o(s).qcTemplateUid]]),e("button",{onClick:l[14]||(l[14]=k(t=>J(),["prevent"])),class:"px-2 py-1 ml-2 h-auto border-sky-800 border text-sky-800 rounded-sm transition duration-300 hover:bg-sky-800 hover:text-white focus:outline-none"}," Apply ")])]),e("button",{onClick:l[15]||(l[15]=k(t=>H(),["prevent"])),class:"px-2 py-1 mr-2 border-sky-800 border text-sky-800 rounded-sm transition duration-300 hover:bg-sky-800 hover:text-white focus:outline-none"}," Add Reserve Slot ")]),vt,(a(!0),i(p,null,_(o(s).reserved,(t,r)=>(a(),i("div",{key:r},[e("div",ft,[e("div",yt,[e("div",gt,[e("label",bt,[xt,h(e("input",{class:"form-input mt-1 block w-full","onUpdate:modelValue":d=>t.position=d,type:"number"},null,8,wt),[[T,t.position]])]),e("label",kt,[Tt,h(e("select",{"onUpdate:modelValue":d=>t.levelUid=d,class:"form-input mt-1 block w-full"},[(a(!0),i(p,null,_(o(se),d=>(a(),i("option",{key:d.uid,value:d.uid},c(d.level),9,Ut))),128))],8,St),[[w,t.levelUid]])])])]),e("div",Ct,[e("button",{onClick:k(d=>G(r),["prevent"]),class:"px-2 py-1 mr-2 border-orange-600 border text-orange-600rounded-smtransition duration-300 hover:bg-orange-600 hover:text-white focus:outline-none"}," Remove ",8,Wt)])]),At]))),128))]),Et,e("button",{type:"button",onClick:l[16]||(l[16]=k(t=>Y(),["prevent"])),class:"-mb-4 w-full border border-sky-800 bg-sky-800 text-white rounded-sm px-4 py-2 m-2 transition-colors duration-500 ease select-none hover:bg-sky-800 focus:outline-none focus:shadow-outline"}," Save Form ")])]),_:1})):u("v-if",!0)],64)}}});const Dt=ye(Vt,[["__scopeId","data-v-548ca798"],["__file","/home/aurthurm/Development/felicity-lims/webapp/views/admin/worksheets/WorkSheetsAdmin.vue"]]);export{Dt as default};