@sasindi/addresults 1.0.17 → 1.0.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/277.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(globalThis.webpackChunk_sasindi_addresults=globalThis.webpackChunk_sasindi_addresults||[]).push([["277"],{300(e,t,r){r.r(t),r.d(t,{default:()=>y});var n=r(9551),a=r.n(n),o=r(7817),l=r(4878);function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function s(e,t,r,n,a,o,l){try{var c=e[o](l),s=c.value}catch(e){r(e);return}c.done?t(s):Promise.resolve(s).then(n,a)}function i(e){return function(){var t=this,r=arguments;return new Promise(function(n,a){var o=e.apply(t,r);function l(e){s(o,n,a,l,c,"next",e)}function c(e){s(o,n,a,l,c,"throw",e)}l(void 0)})}}function u(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function m(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r,n,a=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var o=[],l=!0,c=!1;try{for(a=a.call(e);!(l=(r=a.next()).done)&&(o.push(r.value),!t||o.length!==t);l=!0);}catch(e){c=!0,n=e}finally{try{l||null==a.return||a.return()}finally{if(c)throw n}}return o}}(e,t)||d(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(e,t){if(e){if("string"==typeof e)return c(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return c(e,t)}}function p(e,t){var r,n,a,o={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]},l=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),c=Object.defineProperty;return c(l,"next",{value:s(0)}),c(l,"throw",{value:s(1)}),c(l,"return",{value:s(2)}),"function"==typeof Symbol&&c(l,Symbol.iterator,{value:function(){return this}}),l;function s(c){return function(s){var i=[c,s];if(r)throw TypeError("Generator is already executing.");for(;l&&(l=0,i[0]&&(o=0)),o;)try{if(r=1,n&&(a=2&i[0]?n.return:i[0]?n.throw||((a=n.return)&&a.call(n),0):n.next)&&!(a=a.call(n,i[1])).done)return a;switch(n=0,a&&(i=[2&i[0],a.value]),i[0]){case 0:case 1:a=i;break;case 4:return o.label++,{value:i[1],done:!1};case 5:o.label++,n=i[1],i=[0];continue;case 7:i=o.ops.pop(),o.trys.pop();continue;default:if(!(a=(a=o.trys).length>0&&a[a.length-1])&&(6===i[0]||2===i[0])){o=0;continue}if(3===i[0]&&(!a||i[1]>a[0]&&i[1]<a[3])){o.label=i[1];break}if(6===i[0]&&o.label<a[1]){o.label=a[1],a=i;break}if(a&&o.label<a[2]){o.label=a[2],o.ops.push(i);break}a[2]&&o.ops.pop(),o.trys.pop();continue}i=t.call(e,o)}catch(e){i=[6,e],n=0}finally{r=a=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}}}var f=function(e){window.history.pushState({},"",e),window.dispatchEvent(new PopStateEvent("popstate"))},h=function(e){return Array.isArray(e)?e:e&&Array.isArray(e.data)?e.data:e&&Array.isArray(e.results)?e.results:[]};let y=function(){(0,o.useTranslation)().t;var e=localStorage.getItem("phnNo")||"",t=localStorage.getItem("section")||"",r=localStorage.getItem("barcode")||"",s=localStorage.getItem("id")||"",y=m((0,n.useState)(""),2),v=y[0],g=y[1],b=m((0,n.useState)(""),2),E=b[0],w=b[1],A=m((0,n.useState)(""),2),S=A[0],N=A[1],C=m((0,n.useState)(""),2),O=C[0],x=C[1],k=m((0,n.useState)(""),2),T=k[0],P=k[1],j=m((0,n.useState)(""),2),R=j[0],F=j[1],D=m((0,n.useState)(""),2),I=D[0],W=D[1],B=m((0,n.useState)(!1),2),U=B[0],J=B[1],L=m((0,n.useState)([]),2),M=L[0],G=L[1],_=m((0,n.useState)(""),2),z=_[0],H=_[1],X=m((0,n.useState)(""),2),Y=X[0],q=X[1],V=m((0,n.useState)(""),2),$=V[0],K=V[1],Q=m((0,n.useState)(!1),2),Z=Q[0],ee=Q[1],et=m((0,n.useState)(""),2),er=et[0],en=et[1],ea=m((0,n.useState)(""),2),eo=ea[0],el=ea[1],ec=m((0,n.useState)(""),2),es=ec[0],ei=ec[1],eu=m((0,n.useState)("Both"),2),em=eu[0],ed=eu[1],ep=m((0,n.useState)(2),2),ef=ep[0],eh=ep[1],ey=m((0,n.useState)(100),2),ev=ey[0],eg=ey[1],eb=m((0,n.useState)(!1),2),eE=eb[0],ew=eb[1],eA=m((0,n.useState)([]),2),eS=eA[0],eN=eA[1],eC=m((0,n.useState)(!0),2),eO=eC[0],ex=eC[1],ek=m((0,n.useState)(!1),2),eT=ek[0],eP=ek[1],ej=m((0,n.useState)("Processing report..."),2),eR=ej[0],eF=ej[1],eD=m((0,n.useState)(!1),2),eI=eD[0],eW=eD[1],eB=m((0,n.useState)(!1),2),eU=eB[0],eJ=eB[1],eL=m((0,n.useState)(null),2);eL[0],eL[1];var eM=m((0,n.useState)(null),2),eG=eM[0],e_=eM[1],ez=function(e,t){e_({type:e,text:t}),setTimeout(function(){return e_(null)},3e3)},eH=function(){var e=new Date,t=e.getFullYear(),r=String(e.getMonth()+1).padStart(2,"0"),n=String(e.getDate()).padStart(2,"0");return"".concat(t,"-").concat(r,"-").concat(n)},eX=function(){var e=new Date,t=String(e.getHours()).padStart(2,"0"),r=String(e.getMinutes()).padStart(2,"0");return"".concat(t,":").concat(r)},eY=function(e){if(!e)return"";var t=new Date,r=new Date(e),n=t.getFullYear()-r.getFullYear(),a=t.getMonth()-r.getMonth();return(a<0||0===a&&t.getDate()<r.getDate())&&n--,String(n)},eq=function(e){if(!e)return"";var t=e.trim().toUpperCase();return"M"===t||"MALE"===t?"Male":"F"===t||"FEMALE"===t?"Female":e};(0,n.useEffect)(function(){i(function(){var t,n,a,o,l,c,i,u,d,f,y,v,b,E,A;return p(this,function(p){switch(p.label){case 0:return p.trys.push([0,18,19,20]),ex(!0),[4,fetch("/openmrs/ws/rest/v1/session")];case 1:if(!(t=p.sent()).ok)throw Error("Failed to load session");return[4,t.json()];case 2:return a=(n=p.sent()).user.person.uuid,K(n.user.uuid),[4,fetch("/openmrs/ws/rest/v1/person/".concat(a))];case 3:if(!(o=p.sent()).ok)throw Error("Failed to load person");return[4,o.json()];case 4:if(l=p.sent(),c="",l.attributes&&l.attributes.forEach(function(e){if(e.display){var t=m(e.display.split("="),2),r=t[0],n=t[1];r&&n&&("Institute Id"===r.trim()||"Institute"===r.trim())&&(c=n.trim())}}),!c&&n.sessionLocation&&n.sessionLocation.uuid&&(c=n.sessionLocation.uuid),H(c),!c)return[3,7];return[4,fetch("/openmrs/ws/rest/v1/location/".concat(c))];case 5:if(!(i=p.sent()).ok)return[3,7];return[4,i.json()];case 6:q(p.sent().display||""),p.label=7;case 7:return[4,fetch("/openmrs/ws/rest/v1/opd/phn/".concat(e))];case 8:if(!(u=p.sent()).ok)throw Error("PHN not found!");return[4,u.json()];case 9:if(!(d=p.sent()).patientuuid)return[3,14];return[4,fetch("/openmrs/ws/rest/v1/patient/".concat(d.patientuuid))];case 10:if(!(f=p.sent()).ok)return[3,12];return[4,f.json()];case 11:return g((y=p.sent().person||{}).display||d.fullName||""),w(eq(y.gender||"")),y.birthdate&&N(eY(y.birthdate)),[3,13];case 12:g(d.fullName||""),N(eY(d.dateOfBirth)),p.label=13;case 13:return[3,15];case 14:g(d.fullName||""),N(eY(d.dateOfBirth)),p.label=15;case 15:return[4,fetch("/openmrs/ws/rest/v1/addresult/loadview/".concat(r))];case 16:if(!(v=p.sent()).ok)throw Error("Barcode details not found!");return[4,v.json()];case 17:return b=h(p.sent()),E=[],b.length>0&&(b.forEach(function(e){var t=(e[2]||"").trim(),r=e[8]||s,n=e[9]||"";t.includes("/")||t.includes(",")?t.split(/[\/,]+/).map(function(e){return e.trim()}).filter(Boolean).forEach(function(e,t){E.push({id:"".concat(r,"_").concat(t),name:e,remark:n})}):t&&E.push({id:r,name:t,remark:n})}),x(E.map(function(e){return e.name}).join(", ")),P(b[0][9]||""),G(E),J(E.length>1)),F(eH()),W(eX()),[3,20];case 18:return console.error(A=p.sent()),ez("error",A.message||"Error initializing page data"),[3,20];case 19:return ex(!1),[7];case 20:return[2]}})})()},[e,r]),(0,n.useEffect)(function(){O&&z&&i(function(){var e,r,n,a,o,l;return p(this,function(c){switch(c.label){case 0:if(c.trys.push([0,13,,14]),J(e=M.length>1),n=M.length>0?M[0].name:O,"OPD"!==t)return[3,2];return[4,fetch("/openmrs/ws/rest/v1/addresult/getvalueopd/".concat(s,"/").concat(encodeURIComponent(n)))];case 1:case 3:return r=c.sent(),[3,6];case 2:if("Clinic"!==t)return[3,4];return[4,fetch("/openmrs/ws/rest/v1/addresult/getvalueclinic/".concat(s,"/").concat(encodeURIComponent(n)))];case 4:if("Ward"!==t)return[3,6];return[4,fetch("/openmrs/ws/rest/v1/addresult/getvalueward/".concat(s,"/").concat(encodeURIComponent(n)))];case 5:r=c.sent(),c.label=6;case 6:if(a=[],!(r&&r.ok))return[3,8];return[4,r.json()];case 7:a=h(c.sent()),c.label=8;case 8:if(!e)return[3,9];return eN(M.map(function(e){var t=a.find(function(t){return t[1]===e.name||t[2]===e.id}),r=t&&null!==t[0]?t[0]:"",n=t&&t[5]?t[5]:"",o=t&&t[6]?t[6]:"",l=t&&t[7]?t[7]:"",c=t?t[3]:0;return{id:e.id,name:e.name,options:[],value:r,units:n,flag:o,ranges:l,savedId:c,isTestRow:!0}})),[3,12];case 9:return o=M[0]?M[0].name:O,[4,fetch("/openmrs/ws/rest/v1/addresult/loadparameter/".concat(encodeURIComponent(o),"/").concat(z))];case 10:if(!(l=c.sent()).ok)throw Error("Failed to load parameters");return[4,l.json()];case 11:eN(h(c.sent()).map(function(e){var t=e[3],r=e[2],n=e[4],o=e[5]||"",l=e[6]||"",c=[];try{n&&"string"==typeof n&&(c=JSON.parse(n))}catch(e){c=[]}var s=a.find(function(e){return e[2]===t||e[1]===r}),i=s&&null!==s[0]?s[0]:c.length>0?c[0]:"";return{id:t,name:r,options:c,value:i,units:s&&s[5]?s[5]:o,flag:s&&s[6]?s[6]:"",ranges:s&&s[7]?s[7]:l,savedId:s?s[3]:0,isTestRow:!1}})),c.label=12;case 12:return[3,14];case 13:return console.error(c.sent()),ez("error","Error loading test details"),[3,14];case 14:return[2]}})})()},[O,z,t,s,M]);var eV=function(e){return i(function(){var t,r,n;return p(this,function(a){switch(a.label){case 0:return[4,fetch("/openmrs/ws/rest/v1/conceptreferenceterm?codeOrName=".concat(e,"&v=custom:(name,code)"))];case 1:if(!(t=a.sent()).ok)throw Error("Reference concept ".concat(e," not found"));return[4,t.json()];case 2:if((r=a.sent()).results&&r.results.length>0){if((n=r.results[0]).code&&n.code.startsWith("http"))return[2,n.code];if(n.name&&n.name.startsWith("http"))return[2,n.name];return[2,n.code===e?n.name||"":n.code||""]}return[2,""]}})})()},e$=function(e,t,r){eN(function(n){return n.map(function(n){var a,o;return n.id===e?(a=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){u(e,t,r[t])})}return e}({},n),o=null!=(o=u({},t,r))?o:{},Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(o)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(Object(o)).forEach(function(e){Object.defineProperty(a,e,Object.getOwnPropertyDescriptor(o,e))}),a):n})})};return a().createElement("div",{className:l.A.bodyWrapper},eG&&a().createElement("div",{className:"".concat(l.A.toast," ").concat("success"===eG.type?l.A.toastSuccess:l.A.toastError)},eG.text),eT&&a().createElement("div",{className:l.A.overlay},a().createElement("div",{className:l.A.spinner}),a().createElement("p",null,eR)),eO?a().createElement("div",{className:l.A.card},a().createElement("div",{className:l.A.textCenter,style:{padding:"2rem"}},a().createElement("div",{className:l.A.spinner,style:{margin:"0 auto"}}),a().createElement("p",{style:{marginTop:"1rem",color:"var(--text-light)"}},"Loading profile data..."))):a().createElement("div",{className:l.A.card},a().createElement("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"2rem",flexWrap:"wrap",gap:"10px"}},a().createElement("h2",{className:l.A.navTitle,style:{margin:0}},"Enter Test Results"),a().createElement("div",{className:l.A.instituteSelector,style:{margin:0}},a().createElement("span",null,"Hospital:"),a().createElement("span",{style:{fontWeight:600,color:"var(--primary-color)",marginLeft:"0.5rem"}},Y))),a().createElement("div",{className:l.A.row},a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",null,"Full Name"),a().createElement("input",{type:"text",className:l.A.formControl,value:v,readOnly:!0})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",null,"Section"),a().createElement("input",{type:"text",className:l.A.formControl,value:t,readOnly:!0})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",null,"PHN No"),a().createElement("input",{type:"text",className:l.A.formControl,value:e,readOnly:!0})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",null,"Age"),a().createElement("input",{type:"text",className:l.A.formControl,value:S,readOnly:!0})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",null,"Gender"),a().createElement("input",{type:"text",className:l.A.formControl,value:E,readOnly:!0}))),a().createElement("hr",{style:{margin:"1.5rem 0",borderTop:"1px solid var(--border-color)"}}),a().createElement("div",{className:l.A.row},a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1),style:{flexGrow:2}},a().createElement("label",null,"Test Name"),a().createElement("input",{type:"text",className:l.A.formControl,value:O,readOnly:!0})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1),style:{flexGrow:3}},a().createElement("label",null,"Remark"),a().createElement("textarea",{className:l.A.formControl,rows:2,value:T,readOnly:!0})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",null,"Date"),a().createElement("input",{type:"date",className:l.A.formControl,value:R,onChange:function(e){return F(e.target.value)}})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",null,"Time"),a().createElement("input",{type:"time",className:l.A.formControl,value:I,onChange:function(e){return W(e.target.value)}}))),a().createElement("hr",{style:{margin:"2rem 0",borderTop:"1px solid var(--border-color)"}}),a().createElement("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"1rem"}},a().createElement("h3",{style:{fontSize:"1.1rem",fontWeight:600,margin:0,color:"var(--primary-color)"}},U?"Ordered Tests":"Test Parameters"),!U&&a().createElement("button",{type:"button",className:"".concat(l.A.btn," ").concat(l.A.btnPrimary),onClick:function(){return ee(!0)},style:{padding:"0.4rem 0.8rem",fontSize:"0.875rem"}},"+ Add New Parameter")),a().createElement("div",{className:l.A.showHideTableParameter},a().createElement("table",{className:"".concat(l.A.table," ").concat(l.A.tableBordered," ").concat(l.A.tableStriped)},a().createElement("thead",null,a().createElement("tr",null,a().createElement("th",null,"No"),a().createElement("th",null,U?"Test Name":"Parameter Name"),a().createElement("th",{style:{width:"220px"}},"Value"),a().createElement("th",null,"Units"),a().createElement("th",null,"Flag"),a().createElement("th",null,"Ranges"))),a().createElement("tbody",null,eS.length>0?eS.map(function(e,t){return a().createElement("tr",{key:e.id},a().createElement("td",null,t+1),a().createElement("td",{style:{fontWeight:500}},e.name),a().createElement("td",null,e.options.length>0?a().createElement("select",{className:l.A.formControl,value:e.value,onChange:function(t){return e$(e.id,"value",t.target.value)},style:{width:"100%"}},e.options.map(function(e){return a().createElement("option",{key:e,value:e},e)})):a().createElement("input",{type:"text",className:l.A.formControl,value:e.value,onChange:function(t){return e$(e.id,"value",t.target.value)},style:{width:"100%"}})),a().createElement("td",null,a().createElement("input",{type:"text",className:l.A.formControl,value:e.units,onChange:function(t){return e$(e.id,"units",t.target.value)}})),a().createElement("td",null,a().createElement("input",{type:"text",className:l.A.formControl,value:e.flag,onChange:function(t){return e$(e.id,"flag",t.target.value)}})),a().createElement("td",null,a().createElement("input",{type:"text",className:l.A.formControl,value:e.ranges,onChange:function(t){return e$(e.id,"ranges",t.target.value)}})))}):a().createElement("tr",null,a().createElement("td",{colSpan:6,className:l.A.textCenter,style:{color:"var(--text-light)"}},"No parameters defined for this test."))))),a().createElement("div",{className:l.A.row,style:{marginTop:"2rem",alignItems:"center"}},a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1),style:{flexGrow:2}},a().createElement("div",{className:l.A.checkboxContainer,onClick:function(){return eW(function(e){return!e})}},a().createElement("input",{type:"checkbox",checked:eI,onChange:function(){}}),a().createElement("span",null,"Send to Approval"))),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1),style:{flexGrow:3,alignItems:"flex-end"}},a().createElement("button",{type:"button",className:"".concat(l.A.btn," ").concat(l.A.btnWarning),onClick:function(){return i(function(){var r,n,a,o,l,c,i,u,m,d,f,h,y,g,b,E,w,A,N,C,x,k,T,P,j,F,D,W,B,U,J,L,M,G,_,z,H,X,q;return p(this,function(p){switch(p.label){case 0:if(eS.some(function(e){return""===String(e.value).trim()}))return ez("error","Please fill all parameter values before generating report."),[2];p.label=1;case 1:return p.trys.push([1,44,45,46]),eP(!0),eF("Uploading file template..."),eF("Reading report template..."),r="".concat(O,".docx"),[4,fetch("/openmrs/ws/rest/v1/addresult/downloadtemplate/".concat(encodeURIComponent(r)))];case 2:if((n=p.sent()).ok)return[3,4];return console.warn('Specific template "'.concat(r,'" not found. Falling back to CommonTemplate.docx.')),[4,fetch("/openmrs/ws/rest/v1/addresult/downloadtemplate/CommonTemplate.docx")];case 3:if(!(n=p.sent()).ok)throw Error('Neither "'.concat(r,'" nor "CommonTemplate.docx" was found in LabReportTemplateFileUploaded folder on the server.'));p.label=4;case 4:return[4,n.blob()];case 5:return a=p.sent(),[4,new Promise(function(e,t){var r=new FileReader;r.onloadend=function(){e(r.result.replace(/^data:.+;base64,/,""))},r.onerror=t,r.readAsDataURL(a)})];case 6:o=p.sent(),eF("Connecting to JSReport server..."),l="",p.label=7;case 7:return p.trys.push([7,9,,10]),[4,eV("JSReportURLManual")];case 8:return l=p.sent(),[3,10];case 9:return console.warn("Failed to fetch JSReportURLManual from database, using fallback",p.sent()),[3,10];case 10:return l||(l="http://localhost:5488/"),[4,fetch("".concat(l,"odata/folders"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:"".concat(O," folder")})})];case 11:if(!(c=p.sent()).ok)throw Error("Failed to create folder on JSReport server");return[4,c.json()];case 12:return u=(i=p.sent()).shortid,m=i._id,[4,fetch("".concat(l,"odata/assets"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:o,folder:{shortid:u},name:O})})];case 13:if(!(d=p.sent()).ok)throw Error("Failed to upload asset to JSReport");return[4,d.json()];case 14:return f=p.sent().shortid,h={},y=[],eS.forEach(function(e,t){var r=e.name,n="";if(e.name.includes("/")){var a=e.name.split("/");n=a[0].trim(),r=a[1].trim()}var o={value:e.value,units:e.units,ranges:e.ranges,flag:e.flag,item:r,itemName:n,itemCode:r};h[e.name]=o,h[r]=o,n&&(h[n]=o),y.push({index:t+1,item:r,itemName:n,value:e.value,units:e.units,ranges:e.ranges,flag:e.flag})}),g={hospital:Y,patientname:v,phn:e,docname:"",testName:O,age:S,collectdate:"".concat(R," ").concat(I),printdate:"".concat(eH()," ").concat(eX()),parameters:h,parametersList:y},[4,fetch("".concat(l,"odata/data"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({dataJson:JSON.stringify(g),folder:{shortid:u},name:"".concat(O," data")})})];case 15:if(!(b=p.sent()).ok)throw Error("Failed to register report data on JSReport");return[4,b.json()];case 16:return E=p.sent().shortid,[4,fetch("".concat(l,"odata/templates"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({data:{shortid:E},docx:{templateAssetShortid:f},engine:"handlebars",folder:{shortid:u},name:"".concat(O," template"),recipe:"docx"})})];case 17:if(!(w=p.sent()).ok)throw Error("Failed to construct template configuration on JSReport");return[4,w.json()];case 18:return A=p.sent().shortid,eF("Rendering report..."),[4,fetch("".concat(l,"api/report"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({template:{shortid:A},recipe:"docx"})})];case 19:if(!(N=p.sent()).ok)throw Error("Failed to compile report document on JSReport");return[4,N.blob()];case 20:if(C=p.sent(),eF("Saving document attachment..."),x="","OPD"!==t)return[3,22];return[4,fetch("/openmrs/ws/rest/v1/addresult/labdetailsopd/".concat(s))];case 21:case 23:return k=p.sent(),[3,26];case 22:if("Clinic"!==t)return[3,24];return[4,fetch("/openmrs/ws/rest/v1/addresult/labdetailsclinic/".concat(s))];case 24:if("Ward"!==t)return[3,26];return[4,fetch("/openmrs/ws/rest/v1/addresult/labdetailsward/".concat(s))];case 25:k=p.sent(),p.label=26;case 26:if(!(k&&k.ok))return[3,28];return[4,k.json()];case 27:x=p.sent().encounteruuid||"",p.label=28;case 28:T="".concat(e,"@@@").concat(O,"@@@").concat(x),P="",p.label=29;case 29:return p.trys.push([29,31,,32]),[4,eV("DocToPdfConverterURLManual")];case 30:return P=p.sent(),[3,32];case 31:return console.warn("Failed to fetch DocToPdfConverterURLManual from database, using fallback",p.sent()),[3,32];case 32:P||(P="http://localhost:5000/"),j=C,F="".concat(T,".docx"),D=!1,p.label=33;case 33:return p.trys.push([33,38,,39]),eF("Converting report to PDF..."),(W=new FormData).append("file",C,"document.docx"),[4,fetch("".concat(P,"convert-to-pdf"),{method:"POST",body:W})];case 34:if(!(B=p.sent()).ok)return[3,36];return[4,B.blob()];case 35:return j=U=p.sent(),F="".concat(T,".pdf"),D=!0,J=window.URL.createObjectURL(U),window.open(J),[3,37];case 36:console.warn("PDF conversion response was not ok, falling back to DOCX."),p.label=37;case 37:return[3,39];case 38:return console.warn("PDF conversion service failed or not reachable, falling back to DOCX.",p.sent()),[3,39];case 39:return D||(L=window.URL.createObjectURL(C),(M=document.createElement("a")).href=L,M.download="".concat(O,"_Report.docx"),document.body.appendChild(M),M.click(),document.body.removeChild(M),ez("error","PDF converter not available. Defaulted to DOCX download.")),(G=new FormData).append("file",j,F),[4,fetch("/openmrs/ws/rest/v1/addresult/upload",{method:"POST",body:G})];case 40:if(!(_=p.sent()).ok)throw Error("Failed to upload attachment to OpenMRS OWA");return[4,_.json()];case 41:return z=p.sent(),H={labreportingid:"OPD"===t?s:null,labreportingclinicid:"Clinic"===t?s:null,labreportingwardid:"Ward"===t?s:null,reportname:F,file:z.data,status:"Approved",cby:$},X="/openmrs/ws/rest/v1/addresult/savedocument","Clinic"===t&&(X="/openmrs/ws/rest/v1/addresult/savedocumentclinic"),"Ward"===t&&(X="/openmrs/ws/rest/v1/addresult/savedocumentward"),[4,fetch(X,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(H)})];case 42:if(!p.sent().ok)throw Error("Failed to save document meta record to database");return eF("Cleaning up..."),[4,fetch("".concat(l,"odata/folders('").concat(m,"')"),{method:"DELETE"})];case 43:return p.sent(),eJ(!0),ez("success","Report generated and converted successfully!"),[3,46];case 44:return console.error(q=p.sent()),ez("error",q.message||"Error occurred during report generation"),[3,46];case 45:return eP(!1),[7];case 46:return[2]}})})()}},"Generate Report"))),a().createElement("hr",{style:{margin:"1.5rem 0",borderTop:"1px solid var(--border-color)"}}),a().createElement("div",{className:l.A.textRight},a().createElement("button",{type:"button",className:"".concat(l.A.btn," ").concat(l.A.btnSuccess," ").concat(l.A.mx2),onClick:function(){return i(function(){var e,r,n,a,o,l,c,i,u,m,d;return p(this,function(p){switch(p.label){case 0:if(!eU)return ez("error","Please generate Report first before saving."),[2];if(!R||!I)return ez("error","Please fill all the date and time fields."),[2];p.label=1;case 1:p.trys.push([1,11,12,13]),eP(!0),eF("Saving parameter values..."),e=!0,r=!1,n=void 0,p.label=2;case 2:p.trys.push([2,7,8,9]),a=eS[Symbol.iterator](),p.label=3;case 3:if(e=(o=a.next()).done)return[3,6];return c={id:(l=o.value).savedId,parameterid:l.id,value:l.value,cby:$,units:l.units,flag:l.flag,ranges:l.ranges},i="/openmrs/ws/rest/v1/addresult/saveparametervalue","OPD"===t?c.labreportingid=s:"Clinic"===t?(c.labreportingclinicid=s,i="/openmrs/ws/rest/v1/addresult/saveparametervalueclinic"):"Ward"===t&&(c.labreportingwardid=s,i="/openmrs/ws/rest/v1/addresult/saveparametervalueward"),[4,fetch(i,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(c)})];case 4:if(!p.sent().ok)throw Error("Failed to save parameter ".concat(l.name));p.label=5;case 5:return e=!0,[3,3];case 6:return[3,9];case 7:return u=p.sent(),r=!0,n=u,[3,9];case 8:try{e||null==a.return||a.return()}finally{if(r)throw n}return[7];case 9:return eF("Updating laboratory status..."),m="/openmrs/ws/rest/v1/samplecollection/labtestsstatus","Clinic"===t?m="/openmrs/ws/rest/v1/samplecollection/labtestsstatusclinic":"Ward"===t&&(m="/openmrs/ws/rest/v1/samplecollection/labtestsstatusward"),[4,fetch(m,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:s,status:eI?"Send Approved":"Approved"})})];case 10:if(!p.sent().ok)throw Error("Failed to update lab test status");return ez("success","Data Saved Successfully!"),setTimeout(function(){f(window.getOpenmrsSpaBase()+"addresults")},1500),[3,13];case 11:return console.error(d=p.sent()),ez("error",d.message||"Error saving results details"),[3,13];case 12:return eP(!1),[7];case 13:return[2]}})})()},style:{width:"120px",height:"40px"}},"Save"),a().createElement("button",{type:"button",className:"".concat(l.A.btn," ").concat(l.A.btnDanger),onClick:function(){return f(window.getOpenmrsSpaBase()+"addresults")},style:{width:"120px",height:"40px"}},"Back"))),Z&&a().createElement("div",{style:{position:"fixed",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(0,0,0,0.5)",display:"flex",justifyContent:"center",alignItems:"center",zIndex:9999}},a().createElement("div",{style:{backgroundColor:"#ffffff",borderRadius:"8px",padding:"1.5rem",width:"480px",maxWidth:"90%",boxShadow:"0 4px 12px rgba(0,0,0,0.15)"}},a().createElement("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"1rem"}},a().createElement("h3",{style:{margin:0,fontSize:"1.1rem",fontWeight:600,color:"var(--primary-color)"}},'Add New Parameter to "',M[0]?M[0].name:O,'"'),a().createElement("button",{type:"button",onClick:function(){return ee(!1)},style:{background:"none",border:"none",fontSize:"1.25rem",cursor:"pointer",color:"#666"}},"\xd7")),a().createElement("form",{onSubmit:function(e){return i(function(){var t,r,n,a,o;return p(this,function(l){switch(l.label){case 0:if(e.preventDefault(),!(t=er.trim()))return ez("error","Please enter a Parameter Name."),[2];if(!(r=M[0]?M[0].name:O))return ez("error","No active test selected to add parameter to."),[2];l.label=1;case 1:return l.trys.push([1,3,4,5]),ew(!0),[4,fetch("/openmrs/ws/rest/v1/labtestmasterdetails/savedetails",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:0,location:"",testname:r.trim(),parametername:t,gender:em||"Both",agefrom:Number(ef||2),ageto:Number(ev||100),unit:eo.trim(),referencerange:es.trim(),cby:$||""})})];case 2:if(!(n=l.sent()).ok)throw Error("Failed to save parameter: ".concat(n.statusText));return a={id:Date.now(),name:t,options:[],value:"",units:eo.trim(),flag:"",ranges:es.trim(),savedId:0,isTestRow:!1},eN(function(e){return((function(e){if(Array.isArray(e))return c(e)})(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||d(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).concat([a])}),ez("success",'Parameter "'.concat(t,'" saved and added to test!')),en(""),el(""),ei(""),ed("Both"),eh(2),eg(100),ee(!1),[3,5];case 3:return console.error(o=l.sent()),ez("error",o.message||"Failed to save new parameter"),[3,5];case 4:return ew(!1),[7];case 5:return[2]}})})()}},a().createElement("div",{className:l.A.my1},a().createElement("label",{style:{display:"block",fontWeight:500,marginBottom:"0.25rem"}},"Parameter Name ",a().createElement("span",{style:{color:"red"}},"*")),a().createElement("input",{type:"text",className:l.A.formControl,style:{width:"100%"},value:er,onChange:function(e){return en(e.target.value)},placeholder:"e.g. Hemoglobin / WBC / SGPT",required:!0})),a().createElement("div",{className:l.A.row,style:{marginTop:"0.5rem"}},a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",{style:{display:"block",fontWeight:500,marginBottom:"0.25rem"}},"Unit"),a().createElement("input",{type:"text",className:l.A.formControl,style:{width:"100%"},value:eo,onChange:function(e){return el(e.target.value)},placeholder:"e.g. g/dL"})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",{style:{display:"block",fontWeight:500,marginBottom:"0.25rem"}},"Reference Range"),a().createElement("input",{type:"text",className:l.A.formControl,style:{width:"100%"},value:es,onChange:function(e){return ei(e.target.value)},placeholder:"e.g. 12.0 - 16.0"}))),a().createElement("div",{className:l.A.row,style:{marginTop:"0.5rem"}},a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",{style:{display:"block",fontWeight:500,marginBottom:"0.25rem"}},"Gender"),a().createElement("select",{className:l.A.formControl,style:{width:"100%"},value:em,onChange:function(e){return ed(e.target.value)}},a().createElement("option",{value:"Both"},"Both"),a().createElement("option",{value:"Male"},"Male"),a().createElement("option",{value:"Female"},"Female"))),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",{style:{display:"block",fontWeight:500,marginBottom:"0.25rem"}},"Age From"),a().createElement("input",{type:"number",className:l.A.formControl,style:{width:"100%"},value:ef,onChange:function(e){return eh(Number(e.target.value))},min:0})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",{style:{display:"block",fontWeight:500,marginBottom:"0.25rem"}},"Age To"),a().createElement("input",{type:"number",className:l.A.formControl,style:{width:"100%"},value:ev,onChange:function(e){return eg(Number(e.target.value))},min:0}))),a().createElement("div",{style:{display:"flex",justifyContent:"flex-end",gap:"0.5rem",marginTop:"1.5rem"}},a().createElement("button",{type:"button",className:"".concat(l.A.btn),onClick:function(){return ee(!1)},disabled:eE,style:{backgroundColor:"#e0e0e0",color:"#333"}},"Cancel"),a().createElement("button",{type:"submit",className:"".concat(l.A.btn," ").concat(l.A.btnPrimary),disabled:eE},eE?"Saving...":"Save Parameter"))))))}}}]);
|
|
1
|
+
"use strict";(globalThis.webpackChunk_sasindi_addresults=globalThis.webpackChunk_sasindi_addresults||[]).push([["277"],{300(e,t,n){n.r(t),n.d(t,{default:()=>v});var r=n(9551),a=n.n(r),o=n(7817),l=n(4878);function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function c(e,t,n,r,a,o,l){try{var s=e[o](l),c=s.value}catch(e){n(e);return}s.done?t(c):Promise.resolve(c).then(r,a)}function i(e){return function(){var t=this,n=arguments;return new Promise(function(r,a){var o=e.apply(t,n);function l(e){c(o,r,a,l,s,"next",e)}function s(e){c(o,r,a,l,s,"throw",e)}l(void 0)})}}function u(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function m(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,a=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var o=[],l=!0,s=!1;try{for(a=a.call(e);!(l=(n=a.next()).done)&&(o.push(n.value),!t||o.length!==t);l=!0);}catch(e){s=!0,r=e}finally{try{l||null==a.return||a.return()}finally{if(s)throw r}}return o}}(e,t)||d(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(e,t){if(e){if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return s(e,t)}}function p(e,t){var n,r,a,o={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]},l=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),s=Object.defineProperty;return s(l,"next",{value:c(0)}),s(l,"throw",{value:c(1)}),s(l,"return",{value:c(2)}),"function"==typeof Symbol&&s(l,Symbol.iterator,{value:function(){return this}}),l;function c(s){return function(c){var i=[s,c];if(n)throw TypeError("Generator is already executing.");for(;l&&(l=0,i[0]&&(o=0)),o;)try{if(n=1,r&&(a=2&i[0]?r.return:i[0]?r.throw||((a=r.return)&&a.call(r),0):r.next)&&!(a=a.call(r,i[1])).done)return a;switch(r=0,a&&(i=[2&i[0],a.value]),i[0]){case 0:case 1:a=i;break;case 4:return o.label++,{value:i[1],done:!1};case 5:o.label++,r=i[1],i=[0];continue;case 7:i=o.ops.pop(),o.trys.pop();continue;default:if(!(a=(a=o.trys).length>0&&a[a.length-1])&&(6===i[0]||2===i[0])){o=0;continue}if(3===i[0]&&(!a||i[1]>a[0]&&i[1]<a[3])){o.label=i[1];break}if(6===i[0]&&o.label<a[1]){o.label=a[1],a=i;break}if(a&&o.label<a[2]){o.label=a[2],o.ops.push(i);break}a[2]&&o.ops.pop(),o.trys.pop();continue}i=t.call(e,o)}catch(e){i=[6,e],r=0}finally{n=a=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}}}var f=function(e){window.history.pushState({},"",e),window.dispatchEvent(new PopStateEvent("popstate"))},g=function(e){return Array.isArray(e)?e:e&&Array.isArray(e.data)?e.data:e&&Array.isArray(e.results)?e.results:[]};let v=function(){(0,o.useTranslation)().t;var e=localStorage.getItem("phnNo")||"",t=localStorage.getItem("section")||"",n=localStorage.getItem("barcode")||"",c=localStorage.getItem("id")||"",v=m((0,r.useState)(""),2),y=v[0],b=v[1],h=m((0,r.useState)(""),2),E=h[0],w=h[1],A=m((0,r.useState)(""),2),x=A[0],N=A[1],S=m((0,r.useState)(""),2),C=S[0],O=S[1],k=m((0,r.useState)(""),2),P=k[0],T=k[1],j=m((0,r.useState)(""),2),I=j[0],B=j[1],D=m((0,r.useState)(""),2),R=D[0],F=D[1],W=m((0,r.useState)(!1),2),z=W[0],L=W[1],M=m((0,r.useState)([]),2),U=M[0],G=M[1],H=m((0,r.useState)(""),2),_=H[0],J=H[1],Y=m((0,r.useState)(""),2),V=Y[0],q=Y[1],$=m((0,r.useState)(""),2),K=$[0],Q=$[1],X=m((0,r.useState)(!1),2),Z=X[0],ee=X[1],et=m((0,r.useState)(""),2),en=et[0],er=et[1],ea=m((0,r.useState)(""),2),eo=ea[0],el=ea[1],es=m((0,r.useState)(""),2),ec=es[0],ei=es[1],eu=m((0,r.useState)("Both"),2),em=eu[0],ed=eu[1],ep=m((0,r.useState)(2),2),ef=ep[0],eg=ep[1],ev=m((0,r.useState)(100),2),ey=ev[0],eb=ev[1],eh=m((0,r.useState)(!1),2),eE=eh[0],ew=eh[1],eA=m((0,r.useState)([]),2),ex=eA[0],eN=eA[1],eS=m((0,r.useState)(!0),2),eC=eS[0],eO=eS[1],ek=m((0,r.useState)(!1),2),eP=ek[0],eT=ek[1],ej=m((0,r.useState)("Processing report..."),2),eI=ej[0],eB=ej[1],eD=m((0,r.useState)(!1),2),eR=eD[0],eF=eD[1],eW=m((0,r.useState)(!1),2),ez=eW[0],eL=eW[1],eM=m((0,r.useState)(null),2);eM[0],eM[1];var eU=m((0,r.useState)(null),2),eG=eU[0],eH=eU[1],e_=function(e,t){eH({type:e,text:t}),setTimeout(function(){return eH(null)},3e3)},eJ=function(){var e=new Date,t=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),r=String(e.getDate()).padStart(2,"0");return"".concat(t,"-").concat(n,"-").concat(r)},eY=function(){var e=new Date,t=String(e.getHours()).padStart(2,"0"),n=String(e.getMinutes()).padStart(2,"0");return"".concat(t,":").concat(n)},eV=function(e){if(!e)return"";var t=new Date,n=new Date(e),r=t.getFullYear()-n.getFullYear(),a=t.getMonth()-n.getMonth();return(a<0||0===a&&t.getDate()<n.getDate())&&r--,String(r)},eq=function(e){if(!e)return"";var t=e.trim().toUpperCase();return"M"===t||"MALE"===t?"Male":"F"===t||"FEMALE"===t?"Female":e};(0,r.useEffect)(function(){i(function(){var t,r,a,o,l,s,i,u,d,f,v,y,h,E,A;return p(this,function(p){switch(p.label){case 0:return p.trys.push([0,18,19,20]),eO(!0),[4,fetch("/openmrs/ws/rest/v1/session")];case 1:if(!(t=p.sent()).ok)throw Error("Failed to load session");return[4,t.json()];case 2:return a=(r=p.sent()).user.person.uuid,Q(r.user.uuid),[4,fetch("/openmrs/ws/rest/v1/person/".concat(a))];case 3:if(!(o=p.sent()).ok)throw Error("Failed to load person");return[4,o.json()];case 4:if(l=p.sent(),s="",l.attributes&&l.attributes.forEach(function(e){if(e.display){var t=m(e.display.split("="),2),n=t[0],r=t[1];n&&r&&("Institute Id"===n.trim()||"Institute"===n.trim())&&(s=r.trim())}}),!s&&r.sessionLocation&&r.sessionLocation.uuid&&(s=r.sessionLocation.uuid),J(s),!s)return[3,7];return[4,fetch("/openmrs/ws/rest/v1/location/".concat(s))];case 5:if(!(i=p.sent()).ok)return[3,7];return[4,i.json()];case 6:q(p.sent().display||""),p.label=7;case 7:return[4,fetch("/openmrs/ws/rest/v1/opd/phn/".concat(e))];case 8:if(!(u=p.sent()).ok)throw Error("PHN not found!");return[4,u.json()];case 9:if(!(d=p.sent()).patientuuid)return[3,14];return[4,fetch("/openmrs/ws/rest/v1/patient/".concat(d.patientuuid))];case 10:if(!(f=p.sent()).ok)return[3,12];return[4,f.json()];case 11:return b((v=p.sent().person||{}).display||d.fullName||""),w(eq(v.gender||"")),v.birthdate&&N(eV(v.birthdate)),[3,13];case 12:b(d.fullName||""),N(eV(d.dateOfBirth)),p.label=13;case 13:return[3,15];case 14:b(d.fullName||""),N(eV(d.dateOfBirth)),p.label=15;case 15:return[4,fetch("/openmrs/ws/rest/v1/addresult/loadview/".concat(n))];case 16:if(!(y=p.sent()).ok)throw Error("Barcode details not found!");return[4,y.json()];case 17:return h=g(p.sent()),E=[],h.length>0&&(h.forEach(function(e){var t=(e[2]||"").trim(),n=e[8]||c,r=e[9]||"";t.includes("/")||t.includes(",")?t.split(/[\/,]+/).map(function(e){return e.trim()}).filter(Boolean).forEach(function(e,t){E.push({id:"".concat(n,"_").concat(t),name:e,remark:r})}):t&&E.push({id:n,name:t,remark:r})}),O(E.map(function(e){return e.name}).join(", ")),T(h[0][9]||""),G(E),L(E.length>1)),B(eJ()),F(eY()),[3,20];case 18:return console.error(A=p.sent()),e_("error",A.message||"Error initializing page data"),[3,20];case 19:return eO(!1),[7];case 20:return[2]}})})()},[e,n]),(0,r.useEffect)(function(){C&&_&&i(function(){var e,n,r,a,o,l;return p(this,function(s){switch(s.label){case 0:if(s.trys.push([0,13,,14]),L(e=U.length>1),r=U.length>0?U[0].name:C,"OPD"!==t)return[3,2];return[4,fetch("/openmrs/ws/rest/v1/addresult/getvalueopd/".concat(c,"/").concat(encodeURIComponent(r)))];case 1:case 3:return n=s.sent(),[3,6];case 2:if("Clinic"!==t)return[3,4];return[4,fetch("/openmrs/ws/rest/v1/addresult/getvalueclinic/".concat(c,"/").concat(encodeURIComponent(r)))];case 4:if("Ward"!==t)return[3,6];return[4,fetch("/openmrs/ws/rest/v1/addresult/getvalueward/".concat(c,"/").concat(encodeURIComponent(r)))];case 5:n=s.sent(),s.label=6;case 6:if(a=[],!(n&&n.ok))return[3,8];return[4,n.json()];case 7:a=g(s.sent()),s.label=8;case 8:if(!e)return[3,9];return eN(U.map(function(e){var t=a.find(function(t){return t[1]===e.name||t[2]===e.id}),n=t&&null!==t[0]?t[0]:"",r=t&&t[5]?t[5]:"",o=t&&t[6]?t[6]:"",l=t&&t[7]?t[7]:"",s=t?t[3]:0;return{id:e.id,name:e.name,options:[],value:n,units:r,flag:o,ranges:l,savedId:s,isTestRow:!0}})),[3,12];case 9:return o=U[0]?U[0].name:C,[4,fetch("/openmrs/ws/rest/v1/addresult/loadparameter/".concat(encodeURIComponent(o),"/").concat(_))];case 10:if(!(l=s.sent()).ok)throw Error("Failed to load parameters");return[4,l.json()];case 11:eN(g(s.sent()).map(function(e){var t=e[3],n=e[2],r=e[4],o=e[5]||"",l=e[6]||"",s=[];try{r&&"string"==typeof r&&(s=JSON.parse(r))}catch(e){s=[]}var c=a.find(function(e){return e[2]===t||e[1]===n}),i=c&&null!==c[0]?c[0]:s.length>0?s[0]:"";return{id:t,name:n,options:s,value:i,units:c&&c[5]?c[5]:o,flag:c&&c[6]?c[6]:"",ranges:c&&c[7]?c[7]:l,savedId:c?c[3]:0,isTestRow:!1}})),s.label=12;case 12:return[3,14];case 13:return console.error(s.sent()),e_("error","Error loading test details"),[3,14];case 14:return[2]}})})()},[C,_,t,c,U]);var e$=function(e,t,n){eN(function(r){return r.map(function(r){var a,o;return r.id===e?(a=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){u(e,t,n[t])})}return e}({},r),o=null!=(o=u({},t,n))?o:{},Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(o)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(o)).forEach(function(e){Object.defineProperty(a,e,Object.getOwnPropertyDescriptor(o,e))}),a):r})})};return a().createElement("div",{className:l.A.bodyWrapper},eG&&a().createElement("div",{className:"".concat(l.A.toast," ").concat("success"===eG.type?l.A.toastSuccess:l.A.toastError)},eG.text),eP&&a().createElement("div",{className:l.A.overlay},a().createElement("div",{className:l.A.spinner}),a().createElement("p",null,eI)),eC?a().createElement("div",{className:l.A.card},a().createElement("div",{className:l.A.textCenter,style:{padding:"2rem"}},a().createElement("div",{className:l.A.spinner,style:{margin:"0 auto"}}),a().createElement("p",{style:{marginTop:"1rem",color:"var(--text-light)"}},"Loading profile data..."))):a().createElement("div",{className:l.A.card},a().createElement("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"2rem",flexWrap:"wrap",gap:"10px"}},a().createElement("h2",{className:l.A.navTitle,style:{margin:0}},"Enter Test Results"),a().createElement("div",{className:l.A.instituteSelector,style:{margin:0}},a().createElement("span",null,"Hospital:"),a().createElement("span",{style:{fontWeight:600,color:"var(--primary-color)",marginLeft:"0.5rem"}},V))),a().createElement("div",{className:l.A.row},a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",null,"Full Name"),a().createElement("input",{type:"text",className:l.A.formControl,value:y,readOnly:!0})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",null,"Section"),a().createElement("input",{type:"text",className:l.A.formControl,value:t,readOnly:!0})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",null,"PHN No"),a().createElement("input",{type:"text",className:l.A.formControl,value:e,readOnly:!0})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",null,"Age"),a().createElement("input",{type:"text",className:l.A.formControl,value:x,readOnly:!0})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",null,"Gender"),a().createElement("input",{type:"text",className:l.A.formControl,value:E,readOnly:!0}))),a().createElement("hr",{style:{margin:"1.5rem 0",borderTop:"1px solid var(--border-color)"}}),a().createElement("div",{className:l.A.row},a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1),style:{flexGrow:2}},a().createElement("label",null,"Test Name"),a().createElement("input",{type:"text",className:l.A.formControl,value:C,readOnly:!0})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1),style:{flexGrow:3}},a().createElement("label",null,"Remark"),a().createElement("textarea",{className:l.A.formControl,rows:2,value:P,readOnly:!0})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",null,"Date"),a().createElement("input",{type:"date",className:l.A.formControl,value:I,onChange:function(e){return B(e.target.value)}})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",null,"Time"),a().createElement("input",{type:"time",className:l.A.formControl,value:R,onChange:function(e){return F(e.target.value)}}))),a().createElement("hr",{style:{margin:"2rem 0",borderTop:"1px solid var(--border-color)"}}),a().createElement("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"1rem"}},a().createElement("h3",{style:{fontSize:"1.1rem",fontWeight:600,margin:0,color:"var(--primary-color)"}},z?"Ordered Tests":"Test Parameters"),!z&&a().createElement("button",{type:"button",className:"".concat(l.A.btn," ").concat(l.A.btnPrimary),onClick:function(){return ee(!0)},style:{padding:"0.4rem 0.8rem",fontSize:"0.875rem"}},"+ Add New Parameter")),a().createElement("div",{className:l.A.showHideTableParameter},a().createElement("table",{className:"".concat(l.A.table," ").concat(l.A.tableBordered," ").concat(l.A.tableStriped)},a().createElement("thead",null,a().createElement("tr",null,a().createElement("th",null,"No"),a().createElement("th",null,z?"Test Name":"Parameter Name"),a().createElement("th",{style:{width:"220px"}},"Value"),a().createElement("th",null,"Units"),a().createElement("th",null,"Flag"),a().createElement("th",null,"Ranges"))),a().createElement("tbody",null,ex.length>0?ex.map(function(e,t){return a().createElement("tr",{key:e.id},a().createElement("td",null,t+1),a().createElement("td",{style:{fontWeight:500}},e.name),a().createElement("td",null,e.options.length>0?a().createElement("select",{className:l.A.formControl,value:e.value,onChange:function(t){return e$(e.id,"value",t.target.value)},style:{width:"100%"}},e.options.map(function(e){return a().createElement("option",{key:e,value:e},e)})):a().createElement("input",{type:"text",className:l.A.formControl,value:e.value,onChange:function(t){return e$(e.id,"value",t.target.value)},style:{width:"100%"}})),a().createElement("td",null,a().createElement("input",{type:"text",className:l.A.formControl,value:e.units,onChange:function(t){return e$(e.id,"units",t.target.value)}})),a().createElement("td",null,a().createElement("input",{type:"text",className:l.A.formControl,value:e.flag,onChange:function(t){return e$(e.id,"flag",t.target.value)}})),a().createElement("td",null,a().createElement("input",{type:"text",className:l.A.formControl,value:e.ranges,onChange:function(t){return e$(e.id,"ranges",t.target.value)}})))}):a().createElement("tr",null,a().createElement("td",{colSpan:6,className:l.A.textCenter,style:{color:"var(--text-light)"}},"No parameters defined for this test."))))),a().createElement("div",{className:l.A.row,style:{marginTop:"2rem",alignItems:"center"}},a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1),style:{flexGrow:2}},a().createElement("div",{className:l.A.checkboxContainer,onClick:function(){return eF(function(e){return!e})}},a().createElement("input",{type:"checkbox",checked:eR,onChange:function(){}}),a().createElement("span",null,"Send to Approval"))),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1),style:{flexGrow:3,alignItems:"flex-end"}},a().createElement("button",{type:"button",className:"".concat(l.A.btn," ").concat(l.A.btnWarning),onClick:function(){return i(function(){var n,r,a,o,l,s,i,u,m,d,f,g,v,b,h;return p(this,function(p){switch(p.label){case 0:if(ex.some(function(e){return""===String(e.value).trim()}))return e_("error","Please fill all parameter values before generating report."),[2];p.label=1;case 1:if(p.trys.push([1,14,15,16]),eT(!0),eB("Preparing report..."),n=U.length<=1&&!z,r=U.length>0?Array.from(new Set(U.map(function(e){return(e.name||"").trim()}))).filter(Boolean).join(", "):C,a=ex.map(function(e){if(e.name,e.name&&e.name.includes("/")){var t=e.name.split("/");t[0].trim(),t[1].trim()}var r=n?e.name:e.testName||e.name,a=e.value||"",o=e.units||"",l=e.flag||"",s=e.ranges||"";return'\n <tr>\n <td style="border: 1px solid #000; padding: 6px 10px; font-weight: 500;">'.concat(r,'</td>\n <td style="border: 1px solid #000; padding: 6px 10px; text-align: center; font-weight: bold;">').concat(a,'</td>\n <td style="border: 1px solid #000; padding: 6px 10px; text-align: center;">').concat(o,'</td>\n <td style="border: 1px solid #000; padding: 6px 10px; text-align: center;">').concat(l,'</td>\n <td style="border: 1px solid #000; padding: 6px 10px; text-align: center;">').concat(s,"</td>\n </tr>\n ")}).join(""),o='<!DOCTYPE html>\n<html>\n<head>\n <meta charset="utf-8">\n <title>Lab Report - '.concat(y,'</title>\n <style>\n @page { size: A4; margin: 15mm; }\n body { font-family: \'Segoe UI\', Calibri, Arial, sans-serif; color: #000; background: #fff; margin: 0; padding: 25px; }\n .confidential { text-align: right; font-style: italic; text-decoration: underline; font-size: 11px; font-weight: bold; margin-bottom: 5px; }\n .header-block { text-align: center; margin-bottom: 15px; }\n .header-title { font-family: Arial, sans-serif; font-size: 26px; font-weight: bold; margin: 0; letter-spacing: 1px; }\n .header-sub { font-size: 14px; margin-top: 5px; color: #333; }\n .divider { border-bottom: 2px solid #000; margin: 15px 0 20px 0; }\n .demo-table { width: 100%; border-collapse: collapse; margin-bottom: 20px; font-size: 13px; line-height: 1.8; }\n .demo-table td { padding: 3px 0; vertical-align: top; }\n .test-name-line { font-size: 14px; margin-bottom: 15px; font-weight: normal; }\n .test-name-val { font-weight: bold; }\n .report-table { width: 100%; border-collapse: collapse; margin-top: 10px; font-size: 13px; }\n .report-table th { background-color: #80E2A7; color: #000; font-weight: bold; border: 1px solid #000; padding: 8px 10px; text-align: center; }\n .report-table td { border: 1px solid #000; padding: 6px 10px; }\n .footer-block { margin-top: 50px; display: flex; justify-content: space-between; font-size: 12px; }\n @media print {\n body { padding: 0; }\n }\n </style>\n</head>\n<body>\n <div class="confidential">CONFIDENTIAL</div>\n <div class="header-block">\n <div class="header-title">LABORATORY</div>\n <div class="header-sub">Hospital Name: ').concat(V,'</div>\n </div>\n <div class="divider"></div>\n\n <table class="demo-table">\n <tr>\n <td style="width: 55%;">\n <div><strong>Patient Name:</strong> ').concat(y,"</div>\n <div><strong>Ref.Doctor :</strong> </div>\n <div><strong>Sample Collection :</strong> ").concat(I," ").concat(R,'</div>\n </td>\n <td style="width: 45%;">\n <div><strong>PHN No :</strong> <strong>').concat(e,"</strong></div>\n <div><strong>Age :</strong> ").concat(x,"</div>\n <div><strong>Printed Date:</strong> ").concat(eJ()," ").concat(eY(),'</div>\n </td>\n </tr>\n </table>\n\n <div class="test-name-line">\n <strong>Test Name :</strong> <span class="test-name-val">').concat(r||C,'</span>\n </div>\n\n <table class="report-table">\n <thead>\n <tr>\n <th style="width: 35%;">Parameter</th>\n <th style="width: 15%;">Values</th>\n <th style="width: 15%;">Unit</th>\n <th style="width: 15%;">Flag</th>\n <th style="width: 20%;">Ref. Ranges</th>\n </tr>\n </thead>\n <tbody>\n ').concat(a,'\n </tbody>\n </table>\n\n <div class="footer-block">\n <div>\n <div>The results are for this sample only</div>\n <div>Test Date: ').concat(I,'</div>\n </div>\n <div style="text-align: right;">\n <div>........................................................</div>\n <div><strong>Medical Laboratory Technologist</strong></div>\n <div style="margin-top: 5px;">Print Time: ').concat(eY(),"</div>\n </div>\n </div>\n\n <script>\n window.onload = function() {\n setTimeout(function() {\n window.print();\n }, 300);\n };\n <\/script>\n</body>\n</html>"),(l=window.open("","_blank"))&&(l.document.write(o),l.document.close()),eB("Saving document attachment..."),s="","OPD"!==t)return[3,3];return[4,fetch("/openmrs/ws/rest/v1/addresult/labdetailsopd/".concat(c))];case 2:case 4:return i=p.sent(),[3,7];case 3:if("Clinic"!==t)return[3,5];return[4,fetch("/openmrs/ws/rest/v1/addresult/labdetailsclinic/".concat(c))];case 5:if("Ward"!==t)return[3,7];return[4,fetch("/openmrs/ws/rest/v1/addresult/labdetailsward/".concat(c))];case 6:i=p.sent(),p.label=7;case 7:if(!(i&&i.ok))return[3,9];return[4,i.json()];case 8:s=p.sent().encounteruuid||"",p.label=9;case 9:return u="".concat(e,"@@@").concat(C,"@@@").concat(s,".html"),m=new Blob([o],{type:"text/html"}),(d=new FormData).append("file",m,u),[4,fetch("/openmrs/ws/rest/v1/addresult/upload",{method:"POST",body:d})];case 10:if(!(f=p.sent()).ok)return[3,13];return[4,f.json()];case 11:return g=p.sent(),v={labreportingid:"OPD"===t?c:null,labreportingclinicid:"Clinic"===t?c:null,labreportingwardid:"Ward"===t?c:null,reportname:u,file:g.data,status:"Approved",cby:K},b="/openmrs/ws/rest/v1/addresult/savedocument","Clinic"===t&&(b="/openmrs/ws/rest/v1/addresult/savedocumentclinic"),"Ward"===t&&(b="/openmrs/ws/rest/v1/addresult/savedocumentward"),[4,fetch(b,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(v)})];case 12:p.sent(),p.label=13;case 13:return eL(!0),e_("success","Report generated successfully!"),[3,16];case 14:return console.error(h=p.sent()),e_("error",h.message||"Error occurred during report generation"),[3,16];case 15:return eT(!1),[7];case 16:return[2]}})})()}},"Generate Report"))),a().createElement("hr",{style:{margin:"1.5rem 0",borderTop:"1px solid var(--border-color)"}}),a().createElement("div",{className:l.A.textRight},a().createElement("button",{type:"button",className:"".concat(l.A.btn," ").concat(l.A.btnSuccess," ").concat(l.A.mx2),onClick:function(){return i(function(){var e,n,r,a,o,l,s,i,u,m,d;return p(this,function(p){switch(p.label){case 0:if(!ez)return e_("error","Please generate Report first before saving."),[2];if(!I||!R)return e_("error","Please fill all the date and time fields."),[2];p.label=1;case 1:p.trys.push([1,11,12,13]),eT(!0),eB("Saving parameter values..."),e=!0,n=!1,r=void 0,p.label=2;case 2:p.trys.push([2,7,8,9]),a=ex[Symbol.iterator](),p.label=3;case 3:if(e=(o=a.next()).done)return[3,6];return s={id:(l=o.value).savedId,parameterid:l.id,value:l.value,cby:K,units:l.units,flag:l.flag,ranges:l.ranges},i="/openmrs/ws/rest/v1/addresult/saveparametervalue","OPD"===t?s.labreportingid=c:"Clinic"===t?(s.labreportingclinicid=c,i="/openmrs/ws/rest/v1/addresult/saveparametervalueclinic"):"Ward"===t&&(s.labreportingwardid=c,i="/openmrs/ws/rest/v1/addresult/saveparametervalueward"),[4,fetch(i,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(s)})];case 4:if(!p.sent().ok)throw Error("Failed to save parameter ".concat(l.name));p.label=5;case 5:return e=!0,[3,3];case 6:return[3,9];case 7:return u=p.sent(),n=!0,r=u,[3,9];case 8:try{e||null==a.return||a.return()}finally{if(n)throw r}return[7];case 9:return eB("Updating laboratory status..."),m="/openmrs/ws/rest/v1/samplecollection/labtestsstatus","Clinic"===t?m="/openmrs/ws/rest/v1/samplecollection/labtestsstatusclinic":"Ward"===t&&(m="/openmrs/ws/rest/v1/samplecollection/labtestsstatusward"),[4,fetch(m,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:c,status:eR?"Send Approved":"Approved"})})];case 10:if(!p.sent().ok)throw Error("Failed to update lab test status");return e_("success","Data Saved Successfully!"),setTimeout(function(){f(window.getOpenmrsSpaBase()+"addresults")},1500),[3,13];case 11:return console.error(d=p.sent()),e_("error",d.message||"Error saving results details"),[3,13];case 12:return eT(!1),[7];case 13:return[2]}})})()},style:{width:"120px",height:"40px"}},"Save"),a().createElement("button",{type:"button",className:"".concat(l.A.btn," ").concat(l.A.btnDanger),onClick:function(){return f(window.getOpenmrsSpaBase()+"addresults")},style:{width:"120px",height:"40px"}},"Back"))),Z&&a().createElement("div",{style:{position:"fixed",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(0,0,0,0.5)",display:"flex",justifyContent:"center",alignItems:"center",zIndex:9999}},a().createElement("div",{style:{backgroundColor:"#ffffff",borderRadius:"8px",padding:"1.5rem",width:"480px",maxWidth:"90%",boxShadow:"0 4px 12px rgba(0,0,0,0.15)"}},a().createElement("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"1rem"}},a().createElement("h3",{style:{margin:0,fontSize:"1.1rem",fontWeight:600,color:"var(--primary-color)"}},'Add New Parameter to "',U[0]?U[0].name:C,'"'),a().createElement("button",{type:"button",onClick:function(){return ee(!1)},style:{background:"none",border:"none",fontSize:"1.25rem",cursor:"pointer",color:"#666"}},"\xd7")),a().createElement("form",{onSubmit:function(e){return i(function(){var t,n,r,a,o;return p(this,function(l){switch(l.label){case 0:if(e.preventDefault(),!(t=en.trim()))return e_("error","Please enter a Parameter Name."),[2];if(!(n=U[0]?U[0].name:C))return e_("error","No active test selected to add parameter to."),[2];l.label=1;case 1:return l.trys.push([1,3,4,5]),ew(!0),[4,fetch("/openmrs/ws/rest/v1/labtestmasterdetails/savedetails",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:0,location:"",testname:n.trim(),parametername:t,gender:em||"Both",agefrom:Number(ef||2),ageto:Number(ey||100),unit:eo.trim(),referencerange:ec.trim(),cby:K||""})})];case 2:if(!(r=l.sent()).ok)throw Error("Failed to save parameter: ".concat(r.statusText));return a={id:Date.now(),name:t,options:[],value:"",units:eo.trim(),flag:"",ranges:ec.trim(),savedId:0,isTestRow:!1},eN(function(e){return((function(e){if(Array.isArray(e))return s(e)})(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||d(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).concat([a])}),e_("success",'Parameter "'.concat(t,'" saved and added to test!')),er(""),el(""),ei(""),ed("Both"),eg(2),eb(100),ee(!1),[3,5];case 3:return console.error(o=l.sent()),e_("error",o.message||"Failed to save new parameter"),[3,5];case 4:return ew(!1),[7];case 5:return[2]}})})()}},a().createElement("div",{className:l.A.my1},a().createElement("label",{style:{display:"block",fontWeight:500,marginBottom:"0.25rem"}},"Parameter Name ",a().createElement("span",{style:{color:"red"}},"*")),a().createElement("input",{type:"text",className:l.A.formControl,style:{width:"100%"},value:en,onChange:function(e){return er(e.target.value)},placeholder:"e.g. Hemoglobin / WBC / SGPT",required:!0})),a().createElement("div",{className:l.A.row,style:{marginTop:"0.5rem"}},a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",{style:{display:"block",fontWeight:500,marginBottom:"0.25rem"}},"Unit"),a().createElement("input",{type:"text",className:l.A.formControl,style:{width:"100%"},value:eo,onChange:function(e){return el(e.target.value)},placeholder:"e.g. g/dL"})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",{style:{display:"block",fontWeight:500,marginBottom:"0.25rem"}},"Reference Range"),a().createElement("input",{type:"text",className:l.A.formControl,style:{width:"100%"},value:ec,onChange:function(e){return ei(e.target.value)},placeholder:"e.g. 12.0 - 16.0"}))),a().createElement("div",{className:l.A.row,style:{marginTop:"0.5rem"}},a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",{style:{display:"block",fontWeight:500,marginBottom:"0.25rem"}},"Gender"),a().createElement("select",{className:l.A.formControl,style:{width:"100%"},value:em,onChange:function(e){return ed(e.target.value)}},a().createElement("option",{value:"Both"},"Both"),a().createElement("option",{value:"Male"},"Male"),a().createElement("option",{value:"Female"},"Female"))),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",{style:{display:"block",fontWeight:500,marginBottom:"0.25rem"}},"Age From"),a().createElement("input",{type:"number",className:l.A.formControl,style:{width:"100%"},value:ef,onChange:function(e){return eg(Number(e.target.value))},min:0})),a().createElement("div",{className:"".concat(l.A.col," ").concat(l.A.my1)},a().createElement("label",{style:{display:"block",fontWeight:500,marginBottom:"0.25rem"}},"Age To"),a().createElement("input",{type:"number",className:l.A.formControl,style:{width:"100%"},value:ey,onChange:function(e){return eb(Number(e.target.value))},min:0}))),a().createElement("div",{style:{display:"flex",justifyContent:"flex-end",gap:"0.5rem",marginTop:"1.5rem"}},a().createElement("button",{type:"button",className:"".concat(l.A.btn),onClick:function(){return ee(!1)},disabled:eE,style:{backgroundColor:"#e0e0e0",color:"#333"}},"Cancel"),a().createElement("button",{type:"submit",className:"".concat(l.A.btn," ").concat(l.A.btnPrimary),disabled:eE},eE?"Saving...":"Save Parameter"))))))}}}]);
|
package/dist/277.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"277.js","sources":["webpack://@sasindi/addresults/./src/add-results-form.component.tsx"],"names":["navigateTo","url","window","PopStateEvent","ensureArray","data","Array","useTranslation","t","phn","localStorage","section","barcode","serial","_useState","patientName","setPatientName","_useState1","patientGender","setPatientGender","_useState2","patientAge","setPatientAge","_useState3","testName","setTestName","_useState4","testRemark","setTestRemark","_useState5","testDate","setTestDate","_useState6","testTime","setTestTime","_useState7","isMultiTest","setIsMultiTest","_useState8","orderedTests","setOrderedTests","_useState9","locationUuid","setLocationUuid","_useState10","instituteName","setInstituteName","_useState11","currentUserUuid","setCurrentUserUuid","_useState12","showAddParamModal","setShowAddParamModal","_useState13","newParamName","setNewParamName","_useState14","newParamUnit","setNewParamUnit","_useState15","newParamRange","setNewParamRange","_useState16","newParamGender","setNewParamGender","_useState17","newParamAgeFrom","setNewParamAgeFrom","_useState18","newParamAgeTo","setNewParamAgeTo","_useState19","savingNewParam","setSavingNewParam","_useState20","parameters","setParameters","_useState21","loading","setLoading","_useState22","showSpinner","setShowSpinner","_useState23","spinnerText","setSpinnerText","_useState24","sendToApproval","setSendToApproval","_useState25","flagGenerate","setFlagGenerate","_useState26","_useState27","toast","setToast","showToast","type","text","setTimeout","getCurrentDateFormatted","now","Date","year","month","String","day","getCurrentTimeFormatted","hours","minutes","getAge","dateString","today","birthDate","age","m","formatGender","gender","upper","useEffect","sessionRes","sessionData","personUuid","personRes","personData","initialLocUuid","locRes","phnRes","phnData","patientRes","person","testRes","testDataArray","testItems","err","fetch","Error","attr","_attr_display_split","key","value","locData","patientData","item","rawTestName","rowId","remark","parts","s","Boolean","p","pIdx","console","isMultiple","valuesRes","mainTest","savedValues","singleTestName","paramsRes","encodeURIComponent","matchedSaved","sv","initialValue","initialUnits","initialFlag","initialRanges","savedId","paramsData","paramId","paramName","paramOptionsStr","defaultUnit","defaultRange","options","JSON","e","getConceptReferenceTerm","codeName","res","term","a","handleParameterChange","field","prev","styles","onChange","onClick","idx","opt","finalTemplateFileName","templateRes","templateBlob","base64String","jsReportUrl","folderRes","folderData","folderShortId","folderId","assetRes","assetShortId","paramMap","parametersList","reportJsonData","jsreportDataRes","dataShortId","jsreportTemplateRes","templateShortId","renderRes","renderedDocxBlob","labEncounterUuid","labDetailsRes","docName","docToPdfUrl","finalBlob","finalDocName","isPdf","convertFormData","pdfRes","pdfBlob","pdfUrl","docxUrl","downloadLink","uploadFormData","serverUploadRes","serverUploadResult","rawDocRecord","saveDocUrl","err1","Promise","resolve","reject","reader","FileReader","assetData","itemCode","itemName","paramObj","jsreportDataResult","jsreportTemplateResult","labDetails","e1","FormData","document","saveDocRecordRes","_iteratorError","paramRecord","saveParamUrl","saveParamRes","saveStatusUrl","saveStatusRes","trimmedName","newParamObj","Number"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"277.js","sources":["webpack://@sasindi/addresults/./src/add-results-form.component.tsx"],"names":["navigateTo","url","window","PopStateEvent","ensureArray","data","Array","useTranslation","t","phn","localStorage","section","barcode","serial","_useState","patientName","setPatientName","_useState1","patientGender","setPatientGender","_useState2","patientAge","setPatientAge","_useState3","testName","setTestName","_useState4","testRemark","setTestRemark","_useState5","testDate","setTestDate","_useState6","testTime","setTestTime","_useState7","isMultiTest","setIsMultiTest","_useState8","orderedTests","setOrderedTests","_useState9","locationUuid","setLocationUuid","_useState10","instituteName","setInstituteName","_useState11","currentUserUuid","setCurrentUserUuid","_useState12","showAddParamModal","setShowAddParamModal","_useState13","newParamName","setNewParamName","_useState14","newParamUnit","setNewParamUnit","_useState15","newParamRange","setNewParamRange","_useState16","newParamGender","setNewParamGender","_useState17","newParamAgeFrom","setNewParamAgeFrom","_useState18","newParamAgeTo","setNewParamAgeTo","_useState19","savingNewParam","setSavingNewParam","_useState20","parameters","setParameters","_useState21","loading","setLoading","_useState22","showSpinner","setShowSpinner","_useState23","spinnerText","setSpinnerText","_useState24","sendToApproval","setSendToApproval","_useState25","flagGenerate","setFlagGenerate","_useState26","_useState27","toast","setToast","showToast","type","text","setTimeout","getCurrentDateFormatted","now","Date","year","month","String","day","getCurrentTimeFormatted","hours","minutes","getAge","dateString","today","birthDate","age","m","formatGender","gender","upper","useEffect","sessionRes","sessionData","personUuid","personRes","personData","initialLocUuid","locRes","phnRes","phnData","patientRes","person","testRes","testDataArray","testItems","err","fetch","Error","attr","_attr_display_split","key","value","locData","patientData","item","rawTestName","rowId","remark","parts","s","Boolean","p","pIdx","console","isMultiple","valuesRes","mainTest","savedValues","singleTestName","paramsRes","encodeURIComponent","matchedSaved","sv","initialValue","initialUnits","initialFlag","initialRanges","savedId","paramsData","paramId","paramName","paramOptionsStr","defaultUnit","defaultRange","options","JSON","e","handleParameterChange","field","prev","styles","onChange","onClick","idx","opt","isSingleTest","formattedTestName","tableRowsHtml","htmlContent","printWin","labEncounterUuid","labDetailsRes","docName","htmlBlob","uploadFormData","serverUploadRes","serverUploadResult","rawDocRecord","saveDocUrl","Set","displayName","val","unit","flag","range","labDetails","Blob","FormData","_iteratorError","paramRecord","saveParamUrl","saveParamRes","saveStatusUrl","err1","saveStatusRes","trimmedName","res","newParamObj","Number"],"mappings":"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"}
|
|
@@ -200,9 +200,9 @@
|
|
|
200
200
|
"rendered": true,
|
|
201
201
|
"initial": false,
|
|
202
202
|
"entry": false,
|
|
203
|
-
"size":
|
|
203
|
+
"size": 81607,
|
|
204
204
|
"sizes": {
|
|
205
|
-
"javascript":
|
|
205
|
+
"javascript": 81607
|
|
206
206
|
},
|
|
207
207
|
"names": [],
|
|
208
208
|
"idHints": [],
|
|
@@ -216,7 +216,7 @@
|
|
|
216
216
|
"auxiliaryFiles": [
|
|
217
217
|
"277.js.map"
|
|
218
218
|
],
|
|
219
|
-
"hash": "
|
|
219
|
+
"hash": "de62ddfff533b544",
|
|
220
220
|
"childrenByOrder": {}
|
|
221
221
|
},
|
|
222
222
|
{
|
package/dist/routes.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"$schema":"https://json.openmrs.org/routes.schema.json","pages":[{"route":"addresults","component":"root","online":true,"offline":true},{"route":"addresults-form","component":"addresultsForm","online":true,"offline":true}],"extensions":[],"version":"1.0.
|
|
1
|
+
{"$schema":"https://json.openmrs.org/routes.schema.json","pages":[{"route":"addresults","component":"root","online":true,"offline":true},{"route":"addresults-form","component":"addresultsForm","online":true,"offline":true}],"extensions":[],"version":"1.0.20"}
|
package/package.json
CHANGED
|
@@ -444,181 +444,138 @@ const AddResultsForm: React.FC = () => {
|
|
|
444
444
|
|
|
445
445
|
try {
|
|
446
446
|
setShowSpinner(true);
|
|
447
|
-
setSpinnerText('
|
|
448
|
-
|
|
449
|
-
// a. Template file name must be same as Test name (team convention)
|
|
450
|
-
// Important: The DOCX template must be pre-placed on the server at:
|
|
451
|
-
// /openmrs/data/owa/LabReportTemplateFileUploaded/${testName}.docx
|
|
452
|
-
setSpinnerText('Reading report template...');
|
|
453
|
-
const finalTemplateFileName = `${testName}.docx`;
|
|
454
|
-
|
|
455
|
-
// b. Fetch report template directly from backend downloadtemplate REST API (which reads from server OWA folder)
|
|
456
|
-
let fileUrl = `/openmrs/ws/rest/v1/addresult/downloadtemplate/${encodeURIComponent(finalTemplateFileName)}`;
|
|
457
|
-
let templateRes = await fetch(fileUrl);
|
|
458
|
-
|
|
459
|
-
// If test-specific template is missing, fall back to CommonTemplate.docx
|
|
460
|
-
if (!templateRes.ok) {
|
|
461
|
-
console.warn(`Specific template "${finalTemplateFileName}" not found. Falling back to CommonTemplate.docx.`);
|
|
462
|
-
const commonFileUrl = `/openmrs/ws/rest/v1/addresult/downloadtemplate/CommonTemplate.docx`;
|
|
463
|
-
templateRes = await fetch(commonFileUrl);
|
|
464
|
-
if (!templateRes.ok) {
|
|
465
|
-
throw new Error(`Neither "${finalTemplateFileName}" nor "CommonTemplate.docx" was found in LabReportTemplateFileUploaded folder on the server.`);
|
|
466
|
-
}
|
|
467
|
-
}
|
|
468
|
-
|
|
469
|
-
const templateBlob = await templateRes.blob();
|
|
470
|
-
|
|
471
|
-
// Convert to Base64
|
|
472
|
-
const base64String: string = await new Promise((resolve, reject) => {
|
|
473
|
-
const reader = new FileReader();
|
|
474
|
-
reader.onloadend = () => {
|
|
475
|
-
const res = reader.result as string;
|
|
476
|
-
resolve(res.replace(/^data:.+;base64,/, ""));
|
|
477
|
-
};
|
|
478
|
-
reader.onerror = reject;
|
|
479
|
-
reader.readAsDataURL(templateBlob);
|
|
480
|
-
});
|
|
481
|
-
|
|
482
|
-
// c. Resolve JSReport Server URL (with fallback to default if database is empty/slow)
|
|
483
|
-
setSpinnerText('Connecting to JSReport server...');
|
|
484
|
-
let jsReportUrl = '';
|
|
485
|
-
try {
|
|
486
|
-
jsReportUrl = await getConceptReferenceTerm('JSReportURLManual');
|
|
487
|
-
} catch (e) {
|
|
488
|
-
console.warn('Failed to fetch JSReportURLManual from database, using fallback', e);
|
|
489
|
-
}
|
|
490
|
-
if (!jsReportUrl) {
|
|
491
|
-
jsReportUrl = 'http://localhost:5488/'; // Standard default local port for JSReport
|
|
492
|
-
}
|
|
447
|
+
setSpinnerText('Preparing report...');
|
|
493
448
|
|
|
494
|
-
|
|
495
|
-
const
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
body: JSON.stringify({ name: `${testName} folder` })
|
|
499
|
-
});
|
|
500
|
-
if (!folderRes.ok) throw new Error('Failed to create folder on JSReport server');
|
|
501
|
-
const folderData = await folderRes.json();
|
|
502
|
-
const folderShortId = folderData.shortid;
|
|
503
|
-
const folderId = folderData._id;
|
|
504
|
-
|
|
505
|
-
// Upload template asset to JSReport folder
|
|
506
|
-
const assetRes = await fetch(`${jsReportUrl}odata/assets`, {
|
|
507
|
-
method: 'POST',
|
|
508
|
-
headers: { 'Content-Type': 'application/json' },
|
|
509
|
-
body: JSON.stringify({
|
|
510
|
-
content: base64String,
|
|
511
|
-
folder: { shortid: folderShortId },
|
|
512
|
-
name: testName
|
|
513
|
-
})
|
|
514
|
-
});
|
|
515
|
-
if (!assetRes.ok) throw new Error('Failed to upload asset to JSReport');
|
|
516
|
-
const assetData = await assetRes.json();
|
|
517
|
-
const assetShortId = assetData.shortid;
|
|
518
|
-
|
|
519
|
-
// Construct payload data
|
|
520
|
-
const paramMap: { [key: string]: any } = {};
|
|
521
|
-
const parametersList: any[] = [];
|
|
449
|
+
const isSingleTest = orderedTests.length <= 1 && !isMultiTest;
|
|
450
|
+
const formattedTestName = orderedTests.length > 0
|
|
451
|
+
? Array.from(new Set(orderedTests.map((t: any) => (t.name || '').trim()))).filter(Boolean).join(', ')
|
|
452
|
+
: testName;
|
|
522
453
|
|
|
523
|
-
|
|
524
|
-
|
|
454
|
+
// Construct parameter table rows HTML
|
|
455
|
+
const tableRowsHtml = parameters.map((p: any) => {
|
|
456
|
+
let itemCode = p.name || '';
|
|
525
457
|
let itemName = '';
|
|
526
|
-
if (p.name.includes('/')) {
|
|
458
|
+
if (p.name && p.name.includes('/')) {
|
|
527
459
|
const parts = p.name.split('/');
|
|
528
460
|
itemName = parts[0].trim();
|
|
529
461
|
itemCode = parts[1].trim();
|
|
530
462
|
}
|
|
463
|
+
const displayName = isSingleTest ? p.name : (p.testName || p.name);
|
|
464
|
+
const val = p.value || '';
|
|
465
|
+
const unit = p.units || '';
|
|
466
|
+
const flag = p.flag || '';
|
|
467
|
+
const range = p.ranges || '';
|
|
468
|
+
|
|
469
|
+
return `
|
|
470
|
+
<tr>
|
|
471
|
+
<td style="border: 1px solid #000; padding: 6px 10px; font-weight: 500;">${displayName}</td>
|
|
472
|
+
<td style="border: 1px solid #000; padding: 6px 10px; text-align: center; font-weight: bold;">${val}</td>
|
|
473
|
+
<td style="border: 1px solid #000; padding: 6px 10px; text-align: center;">${unit}</td>
|
|
474
|
+
<td style="border: 1px solid #000; padding: 6px 10px; text-align: center;">${flag}</td>
|
|
475
|
+
<td style="border: 1px solid #000; padding: 6px 10px; text-align: center;">${range}</td>
|
|
476
|
+
</tr>
|
|
477
|
+
`;
|
|
478
|
+
}).join('');
|
|
479
|
+
|
|
480
|
+
// Complete HTML Document matching media_1788372543957.png layout
|
|
481
|
+
const htmlContent = `<!DOCTYPE html>
|
|
482
|
+
<html>
|
|
483
|
+
<head>
|
|
484
|
+
<meta charset="utf-8">
|
|
485
|
+
<title>Lab Report - ${patientName}</title>
|
|
486
|
+
<style>
|
|
487
|
+
@page { size: A4; margin: 15mm; }
|
|
488
|
+
body { font-family: 'Segoe UI', Calibri, Arial, sans-serif; color: #000; background: #fff; margin: 0; padding: 25px; }
|
|
489
|
+
.confidential { text-align: right; font-style: italic; text-decoration: underline; font-size: 11px; font-weight: bold; margin-bottom: 5px; }
|
|
490
|
+
.header-block { text-align: center; margin-bottom: 15px; }
|
|
491
|
+
.header-title { font-family: Arial, sans-serif; font-size: 26px; font-weight: bold; margin: 0; letter-spacing: 1px; }
|
|
492
|
+
.header-sub { font-size: 14px; margin-top: 5px; color: #333; }
|
|
493
|
+
.divider { border-bottom: 2px solid #000; margin: 15px 0 20px 0; }
|
|
494
|
+
.demo-table { width: 100%; border-collapse: collapse; margin-bottom: 20px; font-size: 13px; line-height: 1.8; }
|
|
495
|
+
.demo-table td { padding: 3px 0; vertical-align: top; }
|
|
496
|
+
.test-name-line { font-size: 14px; margin-bottom: 15px; font-weight: normal; }
|
|
497
|
+
.test-name-val { font-weight: bold; }
|
|
498
|
+
.report-table { width: 100%; border-collapse: collapse; margin-top: 10px; font-size: 13px; }
|
|
499
|
+
.report-table th { background-color: #80E2A7; color: #000; font-weight: bold; border: 1px solid #000; padding: 8px 10px; text-align: center; }
|
|
500
|
+
.report-table td { border: 1px solid #000; padding: 6px 10px; }
|
|
501
|
+
.footer-block { margin-top: 50px; display: flex; justify-content: space-between; font-size: 12px; }
|
|
502
|
+
@media print {
|
|
503
|
+
body { padding: 0; }
|
|
504
|
+
}
|
|
505
|
+
</style>
|
|
506
|
+
</head>
|
|
507
|
+
<body>
|
|
508
|
+
<div class="confidential">CONFIDENTIAL</div>
|
|
509
|
+
<div class="header-block">
|
|
510
|
+
<div class="header-title">LABORATORY</div>
|
|
511
|
+
<div class="header-sub">Hospital Name: ${instituteName}</div>
|
|
512
|
+
</div>
|
|
513
|
+
<div class="divider"></div>
|
|
514
|
+
|
|
515
|
+
<table class="demo-table">
|
|
516
|
+
<tr>
|
|
517
|
+
<td style="width: 55%;">
|
|
518
|
+
<div><strong>Patient Name:</strong> ${patientName}</div>
|
|
519
|
+
<div><strong>Ref.Doctor :</strong> </div>
|
|
520
|
+
<div><strong>Sample Collection :</strong> ${testDate} ${testTime}</div>
|
|
521
|
+
</td>
|
|
522
|
+
<td style="width: 45%;">
|
|
523
|
+
<div><strong>PHN No :</strong> <strong>${phn}</strong></div>
|
|
524
|
+
<div><strong>Age :</strong> ${patientAge}</div>
|
|
525
|
+
<div><strong>Printed Date:</strong> ${getCurrentDateFormatted()} ${getCurrentTimeFormatted()}</div>
|
|
526
|
+
</td>
|
|
527
|
+
</tr>
|
|
528
|
+
</table>
|
|
529
|
+
|
|
530
|
+
<div class="test-name-line">
|
|
531
|
+
<strong>Test Name :</strong> <span class="test-name-val">${formattedTestName || testName}</span>
|
|
532
|
+
</div>
|
|
533
|
+
|
|
534
|
+
<table class="report-table">
|
|
535
|
+
<thead>
|
|
536
|
+
<tr>
|
|
537
|
+
<th style="width: 35%;">Parameter</th>
|
|
538
|
+
<th style="width: 15%;">Values</th>
|
|
539
|
+
<th style="width: 15%;">Unit</th>
|
|
540
|
+
<th style="width: 15%;">Flag</th>
|
|
541
|
+
<th style="width: 20%;">Ref. Ranges</th>
|
|
542
|
+
</tr>
|
|
543
|
+
</thead>
|
|
544
|
+
<tbody>
|
|
545
|
+
${tableRowsHtml}
|
|
546
|
+
</tbody>
|
|
547
|
+
</table>
|
|
548
|
+
|
|
549
|
+
<div class="footer-block">
|
|
550
|
+
<div>
|
|
551
|
+
<div>The results are for this sample only</div>
|
|
552
|
+
<div>Test Date: ${testDate}</div>
|
|
553
|
+
</div>
|
|
554
|
+
<div style="text-align: right;">
|
|
555
|
+
<div>........................................................</div>
|
|
556
|
+
<div><strong>Medical Laboratory Technologist</strong></div>
|
|
557
|
+
<div style="margin-top: 5px;">Print Time: ${getCurrentTimeFormatted()}</div>
|
|
558
|
+
</div>
|
|
559
|
+
</div>
|
|
560
|
+
|
|
561
|
+
<script>
|
|
562
|
+
window.onload = function() {
|
|
563
|
+
setTimeout(function() {
|
|
564
|
+
window.print();
|
|
565
|
+
}, 300);
|
|
566
|
+
};
|
|
567
|
+
</script>
|
|
568
|
+
</body>
|
|
569
|
+
</html>`;
|
|
570
|
+
|
|
571
|
+
// Open automatic print preview window in browser
|
|
572
|
+
const printWin = window.open('', '_blank');
|
|
573
|
+
if (printWin) {
|
|
574
|
+
printWin.document.write(htmlContent);
|
|
575
|
+
printWin.document.close();
|
|
576
|
+
}
|
|
531
577
|
|
|
532
|
-
|
|
533
|
-
value: p.value,
|
|
534
|
-
units: p.units,
|
|
535
|
-
ranges: p.ranges,
|
|
536
|
-
flag: p.flag,
|
|
537
|
-
item: itemCode,
|
|
538
|
-
itemName: itemName,
|
|
539
|
-
itemCode: itemCode
|
|
540
|
-
};
|
|
541
|
-
|
|
542
|
-
// 1. Map by full parameter name (e.g. "SGPT / ALT")
|
|
543
|
-
paramMap[p.name] = paramObj;
|
|
544
|
-
|
|
545
|
-
// 2. Map by split item code (e.g. "ALT")
|
|
546
|
-
paramMap[itemCode] = paramObj;
|
|
547
|
-
|
|
548
|
-
// 3. Map by split item name (e.g. "SGPT") if it exists
|
|
549
|
-
if (itemName) {
|
|
550
|
-
paramMap[itemName] = paramObj;
|
|
551
|
-
}
|
|
552
|
-
|
|
553
|
-
parametersList.push({
|
|
554
|
-
index: idx + 1,
|
|
555
|
-
item: itemCode,
|
|
556
|
-
itemName: itemName,
|
|
557
|
-
value: p.value,
|
|
558
|
-
units: p.units,
|
|
559
|
-
ranges: p.ranges,
|
|
560
|
-
flag: p.flag
|
|
561
|
-
});
|
|
562
|
-
});
|
|
563
|
-
|
|
564
|
-
const reportJsonData = {
|
|
565
|
-
hospital: instituteName,
|
|
566
|
-
patientname: patientName,
|
|
567
|
-
phn: phn,
|
|
568
|
-
docname: '', // loaded docname
|
|
569
|
-
testName: testName,
|
|
570
|
-
age: patientAge,
|
|
571
|
-
collectdate: `${testDate} ${testTime}`,
|
|
572
|
-
printdate: `${getCurrentDateFormatted()} ${getCurrentTimeFormatted()}`,
|
|
573
|
-
parameters: paramMap,
|
|
574
|
-
parametersList: parametersList
|
|
575
|
-
};
|
|
576
|
-
|
|
577
|
-
// Create JSReport Data element
|
|
578
|
-
const jsreportDataRes = await fetch(`${jsReportUrl}odata/data`, {
|
|
579
|
-
method: 'POST',
|
|
580
|
-
headers: { 'Content-Type': 'application/json' },
|
|
581
|
-
body: JSON.stringify({
|
|
582
|
-
dataJson: JSON.stringify(reportJsonData),
|
|
583
|
-
folder: { shortid: folderShortId },
|
|
584
|
-
name: `${testName} data`
|
|
585
|
-
})
|
|
586
|
-
});
|
|
587
|
-
if (!jsreportDataRes.ok) throw new Error('Failed to register report data on JSReport');
|
|
588
|
-
const jsreportDataResult = await jsreportDataRes.json();
|
|
589
|
-
const dataShortId = jsreportDataResult.shortid;
|
|
590
|
-
|
|
591
|
-
// Create JSReport Template element
|
|
592
|
-
const jsreportTemplateRes = await fetch(`${jsReportUrl}odata/templates`, {
|
|
593
|
-
method: 'POST',
|
|
594
|
-
headers: { 'Content-Type': 'application/json' },
|
|
595
|
-
body: JSON.stringify({
|
|
596
|
-
data: { shortid: dataShortId },
|
|
597
|
-
docx: { templateAssetShortid: assetShortId },
|
|
598
|
-
engine: 'handlebars',
|
|
599
|
-
folder: { shortid: folderShortId },
|
|
600
|
-
name: `${testName} template`,
|
|
601
|
-
recipe: 'docx'
|
|
602
|
-
})
|
|
603
|
-
});
|
|
604
|
-
if (!jsreportTemplateRes.ok) throw new Error('Failed to construct template configuration on JSReport');
|
|
605
|
-
const jsreportTemplateResult = await jsreportTemplateRes.json();
|
|
606
|
-
const templateShortId = jsreportTemplateResult.shortid;
|
|
607
|
-
|
|
608
|
-
// Render DOCX report from template
|
|
609
|
-
setSpinnerText('Rendering report...');
|
|
610
|
-
const renderRes = await fetch(`${jsReportUrl}api/report`, {
|
|
611
|
-
method: 'POST',
|
|
612
|
-
headers: { 'Content-Type': 'application/json' },
|
|
613
|
-
body: JSON.stringify({
|
|
614
|
-
template: { shortid: templateShortId },
|
|
615
|
-
recipe: 'docx'
|
|
616
|
-
})
|
|
617
|
-
});
|
|
618
|
-
if (!renderRes.ok) throw new Error('Failed to compile report document on JSReport');
|
|
619
|
-
const renderedDocxBlob = await renderRes.blob();
|
|
620
|
-
|
|
621
|
-
// e. Fetch laboratory details to retrieve encounter UUID first
|
|
578
|
+
// Fetch laboratory details to retrieve encounter UUID for OpenMRS record storage
|
|
622
579
|
setSpinnerText('Saving document attachment...');
|
|
623
580
|
let labEncounterUuid = '';
|
|
624
581
|
let labDetailsRes;
|
|
@@ -635,102 +592,44 @@ const AddResultsForm: React.FC = () => {
|
|
|
635
592
|
labEncounterUuid = labDetails.encounteruuid || '';
|
|
636
593
|
}
|
|
637
594
|
|
|
638
|
-
const docName = `${phn}@@@${testName}@@@${labEncounterUuid}`;
|
|
639
|
-
|
|
640
|
-
// Resolve DocToPdf Converter URL
|
|
641
|
-
let docToPdfUrl = '';
|
|
642
|
-
try {
|
|
643
|
-
docToPdfUrl = await getConceptReferenceTerm('DocToPdfConverterURLManual');
|
|
644
|
-
} catch (e) {
|
|
645
|
-
console.warn('Failed to fetch DocToPdfConverterURLManual from database, using fallback', e);
|
|
646
|
-
}
|
|
647
|
-
if (!docToPdfUrl) {
|
|
648
|
-
docToPdfUrl = 'http://localhost:5000/';
|
|
649
|
-
}
|
|
650
|
-
|
|
651
|
-
// Try PDF conversion
|
|
652
|
-
let finalBlob = renderedDocxBlob;
|
|
653
|
-
let finalDocName = `${docName}.docx`;
|
|
654
|
-
let isPdf = false;
|
|
655
|
-
|
|
656
|
-
try {
|
|
657
|
-
setSpinnerText('Converting report to PDF...');
|
|
658
|
-
const convertFormData = new FormData();
|
|
659
|
-
convertFormData.append('file', renderedDocxBlob, 'document.docx');
|
|
660
|
-
const pdfRes = await fetch(`${docToPdfUrl}convert-to-pdf`, {
|
|
661
|
-
method: 'POST',
|
|
662
|
-
body: convertFormData
|
|
663
|
-
});
|
|
664
|
-
|
|
665
|
-
if (pdfRes.ok) {
|
|
666
|
-
const pdfBlob = await pdfRes.blob();
|
|
667
|
-
finalBlob = pdfBlob;
|
|
668
|
-
finalDocName = `${docName}.pdf`;
|
|
669
|
-
isPdf = true;
|
|
670
|
-
|
|
671
|
-
// Open the PDF in a new window/tab (Print Preview)
|
|
672
|
-
const pdfUrl = window.URL.createObjectURL(pdfBlob);
|
|
673
|
-
window.open(pdfUrl);
|
|
674
|
-
} else {
|
|
675
|
-
console.warn('PDF conversion response was not ok, falling back to DOCX.');
|
|
676
|
-
}
|
|
677
|
-
} catch (err) {
|
|
678
|
-
console.warn('PDF conversion service failed or not reachable, falling back to DOCX.', err);
|
|
679
|
-
}
|
|
680
|
-
|
|
681
|
-
if (!isPdf) {
|
|
682
|
-
// Trigger direct download of the generated DOCX report
|
|
683
|
-
const docxUrl = window.URL.createObjectURL(renderedDocxBlob);
|
|
684
|
-
const downloadLink = document.createElement('a');
|
|
685
|
-
downloadLink.href = docxUrl;
|
|
686
|
-
downloadLink.download = `${testName}_Report.docx`;
|
|
687
|
-
document.body.appendChild(downloadLink);
|
|
688
|
-
downloadLink.click();
|
|
689
|
-
document.body.removeChild(downloadLink);
|
|
690
|
-
showToast('error', 'PDF converter not available. Defaulted to DOCX download.');
|
|
691
|
-
}
|
|
595
|
+
const docName = `${phn}@@@${testName}@@@${labEncounterUuid}.html`;
|
|
596
|
+
const htmlBlob = new Blob([htmlContent], { type: 'text/html' });
|
|
692
597
|
|
|
693
598
|
// Upload attachment to OpenMRS OWA filesystem
|
|
694
599
|
const uploadFormData = new FormData();
|
|
695
|
-
uploadFormData.append('file',
|
|
600
|
+
uploadFormData.append('file', htmlBlob, docName);
|
|
696
601
|
|
|
697
602
|
const serverUploadRes = await fetch('/openmrs/ws/rest/v1/addresult/upload', {
|
|
698
603
|
method: 'POST',
|
|
699
604
|
body: uploadFormData
|
|
700
605
|
});
|
|
701
|
-
if (
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
let saveDocUrl = '/openmrs/ws/rest/v1/addresult/savedocument';
|
|
716
|
-
if (section === 'Clinic') saveDocUrl = '/openmrs/ws/rest/v1/addresult/savedocumentclinic';
|
|
717
|
-
if (section === 'Ward') saveDocUrl = '/openmrs/ws/rest/v1/addresult/savedocumentward';
|
|
606
|
+
if (serverUploadRes.ok) {
|
|
607
|
+
const serverUploadResult = await serverUploadRes.json();
|
|
608
|
+
|
|
609
|
+
// Save report document record in OpenMRS database
|
|
610
|
+
const rawDocRecord = {
|
|
611
|
+
labreportingid: section === 'OPD' ? serial : null,
|
|
612
|
+
labreportingclinicid: section === 'Clinic' ? serial : null,
|
|
613
|
+
labreportingwardid: section === 'Ward' ? serial : null,
|
|
614
|
+
reportname: docName,
|
|
615
|
+
file: serverUploadResult.data,
|
|
616
|
+
status: 'Approved',
|
|
617
|
+
cby: currentUserUuid
|
|
618
|
+
};
|
|
718
619
|
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
body: JSON.stringify(rawDocRecord)
|
|
723
|
-
});
|
|
724
|
-
if (!saveDocRecordRes.ok) throw new Error('Failed to save document meta record to database');
|
|
620
|
+
let saveDocUrl = '/openmrs/ws/rest/v1/addresult/savedocument';
|
|
621
|
+
if (section === 'Clinic') saveDocUrl = '/openmrs/ws/rest/v1/addresult/savedocumentclinic';
|
|
622
|
+
if (section === 'Ward') saveDocUrl = '/openmrs/ws/rest/v1/addresult/savedocumentward';
|
|
725
623
|
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
624
|
+
await fetch(saveDocUrl, {
|
|
625
|
+
method: 'POST',
|
|
626
|
+
headers: { 'Content-Type': 'application/json' },
|
|
627
|
+
body: JSON.stringify(rawDocRecord)
|
|
628
|
+
});
|
|
629
|
+
}
|
|
731
630
|
|
|
732
631
|
setFlagGenerate(true);
|
|
733
|
-
showToast('success', 'Report generated
|
|
632
|
+
showToast('success', 'Report generated successfully!');
|
|
734
633
|
|
|
735
634
|
} catch (err: any) {
|
|
736
635
|
console.error(err);
|