123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456 |
- <?xml version="1.0" encoding="EUC-KR"?>
- <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
- <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
- <xhtml:head>
- <xhtml:title>피험자관리</xhtml:title>
- <model id="model1">
- <instance id="instance1">
- <root xmlns="">
- <main>
- <subjlist>
- <item>
- <subjno/>
- <stdyno/>
- <itemnm/>
- <stdysubjnm/>
- <reqnm/>
- <stdytermfrom/>
- <stdytermto/>
- <clincflag/>
- <judgdg/>
- <ioflag/>
- <pid/>
- <subjid/>
- <indd/>
- </item>
- </subjlist>
- <testeelist>
- <item>
- <pid/>
- <patnm/>
- <orddd/>
- <screenno/>
- <subtesteephosid/>
- <subtesteephosnm/>
- <enddd/>
- <ioflag/>
- </item>
- </testeelist>
- <baseinfo>
- <testeeinfo>
- <pid/>
- <patnm/>
- <orddd/>
- <subtesteephosid/>
- <subtesteephosnm/>
- <enddd/>
- <screenno/>
- <ioflag>0</ioflag>
- <indd/>
- </testeeinfo>
- </baseinfo>
- <patinfo>
- <patinfolist/>
- </patinfo>
- <paminfo/>
- <patinpt>
- <indd/>
- </patinpt>
- </main>
- <send>
- <data>
- <testeedata/>
- <subjno/>
- </data>
- <srchdata>
- <subjno/>
- <srchempno/>
- <srchsubjno/>
- <srchflag>1</srchflag>
- <srchsubjendyn/>
- <pid/>
- </srchdata>
- <smartdata>
- <pid/>
- <screenno/>
- <smartdate/>
- </smartdata>
- </send>
- <init/>
- <hidden/>
- <temp>
- <ret/>
- <stdydata>
- <empno/>
- <pid/>
- </stdydata>
- </temp>
- <msg/>
- </root>
- </instance>
- <script type="javascript" ev:event="xforms-ready">
- <![CDATA[
- model.setValue ("/root/main/baseinfo/testeeinfo/pid", getPatientId());
- model.setValue("/root/main/baseinfo/testeeinfo/orddd", getCurrentDate());
- model.setValue("/root/main/baseinfo/testeeinfo/enddd", "99991231");
- model.refresh();
- submit("TRATP00102");
-
- var pamInfoCvs = getGlobalVariable("paminfo");
- if(pamInfoCvs != ""){
- model.removeNodeSet("/root/main/paminfo/list");
- setCSVToNode("/root/main/paminfo", pamInfoCvs);
- var ioflag = model.getValue("/root/main/paminfo/list/ioflag");
- model.setValue("/root/main/baseinfo/testeeinfo/ioflag", ioflag);
- }
-
- model.setValue ( "/root/main/baseinfo/testeeinfo/pid",model.getValue("/root/main/patinfo/patinfolist/pid"));
- model.setValue ( "/root/main/baseinfo/testeeinfo/patnm",model.getValue("/root/main/patinfo/patinfolist/hngnm"));
-
- model.setValue("/root/send/srchdata/pid", getPatientId() );
- submit("TRATB00104");
-
- if ( getPatientId() != "" ) {
- if ( model.getValue("/root/main/subjlist/item[pid="+getPatientId()+"]/pid") == getPatientId() ) {
- for ( i = 1; i < getNodeSetCnt("/root/main/subjlist/item") ; i++) {
- if ( model.getValue("/root/main/subjlist/item["+i+"]/pid") == getPatientId() ) {
- grd_subjlist.row = i;
- model.setValue("/root/send/data/subjno", model.getValue("/root/main/subjlist/item["+grd_subjlist.row+"]/subjid"));
- model.setValue("/root/send/srchdata/subjno", model.getValue("/root/main/subjlist/item["+grd_subjlist.row+"]/subjid"));
- submit("TRATP00101");
- return;
- }
- }
- }
- }
-
- // 20120130_laboru_전송일자 오늘로 셋팅
- model.setValue("/root/send/smartdata/smartdate", getCurrentDate());
-
- ]]>
- </script>
- <script type="javascript" src="../../../com/commonweb/js/common.js"/>
- <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
- <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
- <submission id="TRATP00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/srchdata" replace="instance" resultref="/root/main/testeelist"/>
- <submission id="TRATP00102" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/baseinfo/testeeinfo" replace="instance" resultref="/root/main/patinfo"/>
- <submission id="TXATP00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/data" replace="instance" resultref="/root/temp/ret"/>
- <submission id="TRATB00104" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/srchdata" replace="instance" resultref="/root/main/subjlist"/>
- <submission id="TRATP00201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/smartdata"/>
- <submission id="TRATP00103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/baseinfo/testeeinfo" resultref="/root/main/patinpt"/>
- </model>
- <script type="javascript">
- <![CDATA[
- function getNodeSetCnt(path)
- {
- var insXml = model.instances(0);
- var nodeList = insXml.selectNodes(path);
- return nodeList.length;
- }
- function saveGridToExcel(grdObj){
- var fileName = window.fileDialog("save", ",", false, "excel", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
- if (fileName != ""){
- grdObj.saveExcel(fileName, "SheetName", true, true, "", "", true);
- }
- }
- function fGetInptInfo(flag) {
- submit("TRATP00103");
- if ( model.getValue("/root/main/patinpt/indd") == "") {
- if ( flag == "B") {
- model.setValue("/root/main/baseinfo/testeeinfo/orddd", getCurrentDate());
- }
- model.setValue("/root/msg","");
- }else {
- model.setValue ("/root/main/baseinfo/testeeinfo/orddd",model.getValue("/root/main/patinpt/indd"));
- model.setValue("/root/msg","현재 임상시험 유형의 재원환자입니다,입원일:"+model.getValue("/root/main/patinpt/indd"));
- }
- model.refresh();
-
- }
-
- ]]>
- </script>
- </xhtml:head>
- <xhtml:body pagewidth="810" pageheight="495" guideline="2,14;1,1194;2,784;2,757;1,791;2,482;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
- <group id="grp_biz" scroll="auto" style="left:0px; top:0px; width:790px; height:455px; ">
- <caption id="caption1" class="tit_2" style="left:5px; top:223px; width:150px; height:13px; ">연구 피험자리스트</caption>
- <line id="line1" class="line_1" style="x1:0px; y1:238px; x2:785px; y2:238px; "/>
- <caption id="caption8" class="cell_1" style="left:594px; top:244px; width:90px; height:23px; font-family:돋움; vertical-align:middle; ">등록번호</caption>
- <line id="line7" class="line_2" style="x1:595px; y1:268px; x2:775px; y2:268px; "/>
- <input id="input17" ref="/root/main/baseinfo/testeeinfo/pid" class="input_default" disabled="true" style="left:685px; top:245px; width:80px; height:19px; "/>
- <input id="input1" ref="/root/main/baseinfo/testeeinfo/patnm" class="input_default" style="left:685px; top:270px; width:100px; height:19px; "/>
- <caption id="caption2" class="cell_1" style="left:594px; top:269px; width:90px; height:23px; font-family:돋움; vertical-align:middle; ">환자명</caption>
- <line id="line2" class="line_2" style="x1:595px; y1:292px; x2:775px; y2:292px; "/>
- <caption id="caption3" class="cell_1" style="left:594px; top:294px; width:90px; height:23px; font-family:돋움; vertical-align:middle; ">등록일</caption>
- <line id="line3" class="line_2" style="x1:595px; y1:317px; x2:775px; y2:317px; "/>
- <input id="input2" ref="/root/main/baseinfo/testeeinfo/orddd" class="input_default" inputtype="date" style="left:685px; top:295px; width:100px; height:19px; "/>
- <caption id="caption4" class="cell_1" style="left:594px; top:319px; width:90px; height:23px; font-family:돋움; vertical-align:middle; ">Screening No</caption>
- <line id="line4" class="line_2" style="x1:595px; y1:342px; x2:775px; y2:342px; "/>
- <caption id="caption5" class="cell_1" style="left:594px; top:344px; width:90px; height:23px; font-family:돋움; vertical-align:middle; ">Random No</caption>
- <line id="line5" class="line_2" style="x1:595px; y1:367px; x2:775px; y2:367px; "/>
- <input id="input4" ref="/root/main/baseinfo/testeeinfo/subtesteephosid" class="input_default" style="left:685px; top:345px; width:100px; height:19px; "/>
- <caption id="caption6" class="cell_1" style="left:594px; top:369px; width:90px; height:23px; font-family:돋움; vertical-align:middle; ">피험자약어</caption>
- <input id="input5" ref="/root/main/baseinfo/testeeinfo/subtesteephosnm" class="input_default" style="left:685px; top:370px; width:100px; height:19px; "/>
- <line id="line6" class="line_2" style="x1:595px; y1:392px; x2:775px; y2:392px; "/>
- <caption id="caption7" class="cell_1" visibility="visible" style="left:594px; top:394px; width:90px; height:23px; font-family:돋움; vertical-align:middle; ">종료일</caption>
- <line id="line8" class="line_2" style="x1:595px; y1:417px; x2:775px; y2:417px; "/>
- <button id="button61" class="icon_search" style="left:770px; top:246px; width:16px; height:16px; ">
- <caption/>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- modal("SPPMC02500",0,100,150,"SPPMC02500","","");
- model.setValue ( "/root/main/baseinfo/testeeinfo/pid",model.getValue("/root/main/patinfo/patinfolist/pid"));
- model.setValue ( "/root/main/baseinfo/testeeinfo/patnm",model.getValue("/root/main/patinfo/patinfolist/hngnm"));
- fGetInptInfo("B");
- ]]>
- </script>
- </button>
- <datagrid id="grd_subjlist" nodeset="/root/main/subjlist/item" caption="과제번호^연구코드^연구명^학술명^회사명^시작일^종료일^단계^회차^caption1^caption2^과제ID" colsep="^" colwidth="106, 69, 136, 178, 126, 73, 72, 48, 50, 100, 100, 100" dataheight="25" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" style="left:0px; top:20px; width:785px; height:190px; ">
- <col ref="subjno"/>
- <col ref="stdyno"/>
- <col ref="itemnm"/>
- <col ref="stdysubjnm"/>
- <col ref="reqnm"/>
- <col ref="stdytermfrom" format="yyyy-mm-dd"/>
- <col ref="stdytermto" format="yyyy-mm-dd"/>
- <col ref="clincflag" style="text-align:center; "/>
- <col ref="judgdg" style="text-align:center; "/>
- <col ref="ioflag" visibility="hidden"/>
- <col ref="pid" visibility="hidden"/>
- <col ref="subjid" visibility="hidden"/>
- <script type="javascript" ev:event="onclick">
- <![CDATA[
- if( grd_subjlist.isCell(event.target) && grd_subjlist.row >= grd_subjlist.fixedRows ) {
- model.setValue("/root/send/data/subjno", model.getValue("/root/main/subjlist/item["+grd_subjlist.row+"]/subjid"));
- model.setValue("/root/send/srchdata/subjno", model.getValue("/root/main/subjlist/item["+grd_subjlist.row+"]/subjid"));
- submit("TRATP00101");
- }
- ]]>
- </script>
- <script type="javascript" ev:event="onaftersort">
- <![CDATA[
- grd_subjlist.gridToInstance();
- ]]>
- </script>
- </datagrid>
- <datagrid id="grd_testeelist" nodeset="/root/main/testeelist/item" caption="^등록번호^환자명^등록일^Screening No^Random No^약어^종료일^진료/입원일^입/외" colsep="^" colwidth="24, 61, 55, 85, 85, 97, 49, 90, 100, 100" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" style="left:0px; top:243px; width:590px; height:210px; ">
- <col checkvalue="Y,N" ref="sel" type="radio"/>
- <col ref="pid"/>
- <col ref="patnm"/>
- <col ref="orddd" format="yyyy-mm-dd"/>
- <col ref="screenno"/>
- <col ref="subtesteephosid"/>
- <col ref="subtesteephosnm"/>
- <col ref="enddd" format="yyyy-mm-dd"/>
- <col ref="indd" visibility="hidden" format="yyyy-mm-dd"/>
- <col ref="ioflag" visibility="hidden"/>
- <script type="javascript" ev:event="onclick">
- <![CDATA[
- var terows = grd_testeelist.row;
-
- if( grd_testeelist.isCell(event.target) && grd_testeelist.row >= grd_testeelist.fixedRows) {
- for ( var i = 1 ; i<grd_testeelist.rows; i++){
- if( grd_testeelist.row == i ){
- model.setValue("/root/main/testeelist/item["+i+"]/sel", "Y");
- }else{
- model.setValue("/root/main/testeelist/item["+i+"]/sel", "N");
- }
- }
- model.copyNode("/root/main/baseinfo/testeeinfo","/root/main/testeelist/item["+grd_testeelist.row+"]");
-
- fGetInptInfo("A");
-
- if ( model.getValue("/root/main/baseinfo/testeeinfo") == "" ) {
- model.setValue("/root/main/baseinfo/testeeinfo/enddd", model.getValue("/root/main/testeelist/item["+terows+"]/enddd"));
- }
- }
-
- model.refresh();
- ]]>
- </script>
- <script type="javascript" ev:event="onaftersort">
- <![CDATA[
- grd_testeelist.gridToInstance();
- ]]>
- </script>
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
-
- ]]>
- </script>
- </datagrid>
- <input id="input3" ref="/root/main/baseinfo/testeeinfo/screenno" class="input_default" style="left:685px; top:320px; width:100px; height:19px; "/>
- <select1 id="radio1" ref="/root/main/baseinfo/testeeinfo/ioflag" appearance="full" cols="3" overflow="visible" style="left:595px; top:428px; width:185px; height:15px; border-style:none; ">
- <choices>
- <item>
- <label>입원</label>
- <value>I</value>
- </item>
- <item>
- <label>외래</label>
- <value>O</value>
- </item>
- <item>
- <label>
- <![CDATA[입원->외래]]>
- </label>
- <value>C</value>
- </item>
- </choices>
- </select1>
- <input id="ipt_enddd" ref="/root/main/baseinfo/testeeinfo/enddd" class="input_default" visibility="visible" inputtype="date" style="left:685px; top:395px; width:100px; height:19px; "/>
- <button id="btn_savexls" class="btn2_letter11" visibility="visible" style="left:448px; top:219px; width:141px; height:19px; ">
- <caption>피험자리스트 Excel저장</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- saveGridToExcel(grd_testeelist);
- ]]>
- </script>
- </button>
- <caption id="caption10" style="left:615px; top:418px; width:100px; height:20px; "/>
- <caption id="caption11" class="tit_2" style="left:5px; top:1px; width:145px; height:13px; ">연구리스트</caption>
- <line id="line9" class="line_1" style="x1:0px; y1:16px; x2:785px; y2:16px; "/>
- </group>
- <group id="grp_btn" scroll="auto" style="left:0px; top:456px; width:790px; height:27px; ">
- <button id="btn_save" class="btn4_letter2" style="left:673px; top:3px; width:56px; height:22px; ">
- <caption>저장</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- if ( model.getValue("/root/main/baseinfo/testeeinfo/pid") ==""){
- messageBox("등록번호를 ", "C001");
- return;
- }
- if ( model.getValue("/root/main/baseinfo/testeeinfo/orddd") ==""){
- messageBox("등록일을 ", "C001");
- return;
- }
- if ( model.getValue("/root/send/data/subjno") ==""){
- messageBox("과제를 ", "C002");
- return;
- }
- if ( model.getValue("/root/main/baseinfo/testeeinfo/screenno") ==""){
- messageBox("Screening No를 ", "C001");
- return;
- }
- if ( model.getValue("/root/main/baseinfo/testeeinfo/subtesteephosid") ==""){
- messageBox("Random No를 ", "C001");
- return;
- }
-
- if ( model.getValue("/root/main/baseinfo/testeeinfo/ioflag") ==""){
- messageBox("입원/외래 구분를 ", "C002");
- return;
- }
-
- if ( model.getValue("/root/main/baseinfo/testeeinfo/enddd") ==""){
- model.setValue("/root/main/baseinfo/testeeinfo/enddd", "99991231");
- model.refresh();
- } else {
- if ( model.getValue("/root/main/baseinfo/testeeinfo/enddd") < model.getValue("/root/main/baseinfo/testeeinfo/orddd") ) {
- messageBox("시작일이 종료일보다 큽니다.", "I007");
- return;
- }
- }
- var sTesteeid = model.getValue("/root/main/baseinfo/testeeinfo/subtesteephosid");
- if ( sTesteeid != "" ) {
- if ( model.getValue("/root/main/testeelist/item[subtesteephosid="+sTesteeid+"]/subtesteephosid") == sTesteeid &&
- model.getValue("/root/main/testeelist/item[subtesteephosid="+sTesteeid+"]/pid") != model.getValue("/root/main/baseinfo/testeeinfo/pid") ) {
- messageBox("동일한 Random No가 존재합니다. Random No를", "I007");
- return;
- }
- }
- model.copyNode("/root/send/data/testeedata","/root/main/baseinfo/testeeinfo");
- submit("TXATP00101");
-
-
- if ( parseInt(model.getValue("/root/temp/ret/item/count")) > 0 ) {
- messageBox("피험자 등록이", "I002");
- submit("TRATP00101");
- } else {
- messageBox(model.getValue("/root/temp/ret/item/errmsg"), "C");
- }
-
- model.setValue("/root/main/baseinfo/testeeinfo/pid","");
- model.setValue("/root/main/baseinfo/testeeinfo/patnm","");
- model.setValue("/root/main/baseinfo/testeeinfo/orddd","");
- model.setValue("/root/main/baseinfo/testeeinfo/screenno","");
- model.setValue("/root/main/baseinfo/testeeinfo/subtesteephosid","");
- model.setValue("/root/main/baseinfo/testeeinfo/subtesteephosnm","");
- model.setValue("/root/main/baseinfo/testeeinfo/enddd","");
- model.setValue("/root/main/baseinfo/testeeinfo/ioflag","");
-
- model.refresh();
- ]]>
- </script>
- </button>
- <button id="btn_del" class="btn4_letter2" visibility="hidden" style="left:395px; top:4px; width:56px; height:22px; ">
- <caption>삭제</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- if (messageBox("피험자정보를", "Q001")==6){
-
- }
- ]]>
- </script>
- </button>
- <button id="btn_cls" class="btn4_letter2" style="left:730px; top:3px; width:56px; height:22px; ">
- <caption>닫기</caption>
- <close ev:event="DOMActivate"/>
- </button>
- <button id="button1" class="btn3_letter9" style="left:255px; top:4px; width:128px; height:22px; ">
- <caption>인터넷 지원자조회</caption>
- </button>
- <button id="button2" class="btn4_letter2" visibility="hidden" style="left:451px; top:4px; width:56px; height:22px; ">
- <caption>종료</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- if ( caption7.visible == false ) {
- caption7.visible = true;
- ipt_enddd.visible = true;
- } else {
- caption7.visible = false;
- ipt_enddd.visible = false;
- }
- ]]>
- </script>
- </button>
- <button id="button3" class="btn6_letter2" style="left:195px; top:4px; width:56px; height:22px; ">
- <caption>전송</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var check = "";
-
- for ( var i = 1 ; i<grd_testeelist.rows; i++){
- if(model.getValue("/root/main/testeelist/item["+i+"]/sel")=="Y"){
- if(model.getValue("/root/main/testeelist/item["+i+"]/screenno") != "" && model.getValue("/root/main/testeelist/item["+i+"]/screenno") != "-") {
- model.setValue("/root/send/smartdata/pid", model.getValue("/root/main/testeelist/item["+i+"]/pid"));
- model.setValue("/root/send/smartdata/screenno", model.getValue("/root/main/testeelist/item["+i+"]/screenno"));
- submit("TRATP00201");
- } else {
- check = "Y";
- }
- } else {
- //check = "Y";
- }
- }
-
- if(check == "Y") {
- messageBox("Screening No 가 없는 환자가 존재합니다.","I999");
- } else {
- //submit("TRATP00201");
- }
-
- ]]>
- </script>
- </button>
- <caption id="caption9" class="search_name" style="left:5px; top:6px; width:91px; height:17px; ">전송일자 :</caption>
- <input id="input6" ref="/root/send/smartdata/smartdate" class="input_s_essential" inputtype="date" style="left:95px; top:5px; width:90px; height:19px; "/>
- <caption id="inptmsg" ref="/root/msg" style="left:400px; top:4px; width:265px; height:20px; "/>
- </group>
- </xhtml:body>
- </xhtml:html>
|