123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497 |
- <?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>
- <projlist>
- <list>
- <proj>
- <prcscd/>
- <subteam/>
- <lrg/>
- <mdl/>
- <sml/>
- <srfeflag/>
- <scrnname/>
- <detailfe/>
- <datafile/>
- <dev/>
- <usernm/>
- <useyn/>
- </proj>
- </list>
- </projlist>
- <filelist>
- <list>
- <file>
- <seq/>
- <filepath/>
- <prcscd/>
- <subteam/>
- <filenm/>
- <filesize/>
- <filetype/>
- <fstrgstrid/>
- <fstrgstdt/>
- </file>
- </list>
- </filelist>
- </main>
- <send>
- <search>
- <subteam/>
- <lrg/>
- <mdl/>
- <srfeflag/>
- <scrnname/>
- <usernm/>
- <prcscd/>
- </search>
- <search_file>
- <prcscd/>
- <subteam/>
- <srfeflag/>
- </search_file>
- <reportid/>
- <filelist/>
- </send>
- <sendfile>
- <attach>
- <file/>
- </attach>
- <report>
- <subteam/>
- <prcscd/>
- <filenm/>
- </report>
- </sendfile>
- <init>
- <srfe>
- <item>
- <name>전체</name>
- <id>-</id>
- </item>
- <item>
- <name>화면</name>
- <id>화면</id>
- </item>
- <item>
- <name>보고서</name>
- <id>보고서</id>
- </item>
- <item>
- <name>기능</name>
- <id>기능</id>
- </item>
- <item>
- <name>오류</name>
- <id>오류</id>
- </item>
- <item>
- <name>DB변경</name>
- <id>DB변경</id>
- </item>
- </srfe>
- <subteam>
- <item>
- <name>전체</name>
- <id>-</id>
- </item>
- <item>
- <name>CMC네트워크</name>
- <id>CMC네트워크</id>
- </item>
- <item>
- <name>CRM</name>
- <id>CRM</id>
- </item>
- <item>
- <name>LIS</name>
- <id>LIS</id>
- </item>
- <item>
- <name>MIS</name>
- <id>MIS</id>
- </item>
- <item>
- <name>SWAT</name>
- <id>SWAT</id>
- </item>
- <item>
- <name>간호EMR</name>
- <id>간호EMR</id>
- </item>
- <item>
- <name>건진</name>
- <id>건진</id>
- </item>
- <item>
- <name>공통</name>
- <id>공통</id>
- </item>
- <item>
- <name>보험청구</name>
- <id>보험청구</id>
- </item>
- <item>
- <name>원무</name>
- <id>원무</id>
- </item>
- <item>
- <name>진료EMR</name>
- <id>진료EMR</id>
- </item>
- <item>
- <name>진료지원</name>
- <id>진료지원</id>
- </item>
- </subteam>
- </init>
- <hidden/>
- <cur_scrn/>
- <tmp/>
- </root>
- </instance>
- <script type="javascript" ev:event="xforms-model-construct-done">
- <![CDATA[
- fInitialize();
-
- // sub_cb.select(5);
- srf_cb.select(0);
-
- var prcscd = opener.grd_projlist.textmatrix(opener.grd_projlist.row,opener.grd_projlist.colRef("prcscd"));
- var subteam = opener.grd_projlist.textmatrix(opener.grd_projlist.row,opener.grd_projlist.colRef("subteam"));
- var usernm = opener.grd_projlist.textmatrix(opener.grd_projlist.row,opener.grd_projlist.colRef("usernm"));
-
- // 프로젝트 리스트
- model.setValue("/root/send/search/prcscd",prcscd);
- model.setValue("/root/send/search/subteam",subteam);
- model.setValue("/root/send/search/usernm",usernm);
- fbtnSearch();
-
- // 첨부파일 리스트
- model.setValue("/root/send/search_file/prcscd",model.getValue("/root/send/search/prcscd"));
- model.setValue("/root/send/search_file/subteam",model.getValue("/root/send/search/subteam"));
- model.setValue("/root/cur_scrn",opener.grd_projlist.textmatrix(opener.grd_projlist.row,opener.grd_projlist.colRef("scrnname")));
- submit("TRZTP00103");
- model.refresh();
-
- // 테스트용 테스트용 테스트용 테스트용 테스트용 테스트용 테스트용 테스트용 테스트용
- // 팝업과 동시에 저장을 띄우고 닫아 버리는 꽁수를 부려 보자.
- // if ( grd_attach.rows == 2 )
- // {
- // var idx = 1;
- // var filepath = model.getValue("/root/main/filelist/list/file["+idx+"]/filepath");
- // var filenm = model.getValue("/root/main/filelist/list/file["+idx+"]/filenm");
- // var localfile = window.fileDialog("save","|",false,filenm,"","All Files(*.*)|*.*");
- // if (localfile != "") {
- // model.download(getActionURL("TRZTP00104")+"&filepath="+filepath,localfile);
- // var rtn = messageBox("파일을", "Q004");
- // if( rtn == 6 ) {
- // window.exec(localfile);
- // }
- // }
- // window.close();
- // }
- // 테스트용 테스트용 테스트용 테스트용 테스트용 테스트용 테스트용 테스트용 테스트용
- ]]>
- </script>
- <submission id="TRZTP00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/search" resultref="/root/main/projlist/list"/>
- <submission id="TRZTP00103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/search_file" resultref="/root/main/filelist/list"/>
- <submission id="TRZTP00104" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/search_file" resultref="/root/main/filelist/list"/>
- <submission id="TXZTP00103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/search_file" resultref="/root/main/filelist/list"/>
- <submission id="TXZTP00104" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/filelist" resultref="/root/main/filelist/list"/>
- </model>
- <script type="javascript" src="../../../com/commonweb/js/common.js"/>
- <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
- <script type="javascript">
- <![CDATA[
- // 화면 open시와 초기화 버튼 클릭시 화면 초기화 기능을 수행한다.
- function fInitialize() {
- model.removeNodeset("/root/main/projlist/list/proj");
- model.removeNodeset("/root/main/filelist/list/file");
- model.resetInstanceNode("/root/send");
- model.resetInstanceNode("/root/sendfile");
- model.resetInstanceNode("/root/cur_scrn");
- sub_cb.select(0);
- srf_cb.select(0);
- }
-
- function fbtnSearch()
- {
- submit("TRZTP00101");
- }
-
- function checkGridUpdate(grid)
- {
- var iData = grid.getUpdateDataXml("insert");
- var uData = grid.getUpdateDataXml("update");
- var dData = grid.getUpdateDataXml("delete");
-
- if (iData=="" && uData=="" && dData=="")
- return false;
- else
- return true;
- }
- ]]>
- </script>
- </xhtml:head>
- <xhtml:body pagewidth="925" pageheight="570">
- <caption id="caption2" class="tit_1" style="left:5px; top:0px; width:217px; height:13px; vertical-align:middle; ">프로젝트 진척관리(첨부파일)</caption>
- <caption id="caption1" class="tit_2" style="left:8px; top:393px; width:145px; height:13px; vertical-align:middle; ">첨부파일 목록 :</caption>
- <line id="line8" class="line_1" style="x1:3px; y1:112px; x2:923px; y2:112px; "/>
- <caption id="caption20" class="tit_2" style="left:9px; top:97px; width:118px; height:13px; ">프로젝트 목록</caption>
- <group id="group4" scroll="auto" style="left:3px; top:13px; width:920px; height:27px; ">
- <line id="line32" class="line_6" style="x1:0px; y1:25px; x2:920px; y2:25px; "/>
- <button id="btn_init" class="btn4_letter3" style="left:850px; top:3px; width:68px; height:22px; ">
- <caption>초기화</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- fInitialize();
- model.refresh();
- ]]>
- </script>
- </button>
- </group>
- <group id="group2" style="left:3px; top:54px; width:920px; height:35px; vertical-align:top; ">
- <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:920px; height:35px; background-color:#fffbf2; border-color:#ffd799; "/>
- <line id="line13" style="x1:854px; y1:7px; x2:854px; y2:29px; border-color:#ffe4bb; border-left-style:solid; "/>
- <caption id="caption3" class="search_name" style="left:6px; top:8px; width:86px; height:17px; ">SubTeam</caption>
- <select1 id="sub_cb" ref="/root/send/search/subteam" class="combo_search" appearance="minimal" style="left:95px; top:8px; width:85px; height:19px; ">
- <choices>
- <itemset nodeset="/root/init/subteam/item">
- <label ref="name"/>
- <value ref="id"/>
- </itemset>
- </choices>
- </select1>
- <caption id="caption4" class="search_name" style="left:186px; top:8px; width:66px; height:17px; ">대분류</caption>
- <input id="input2" ref="/root/send/search/lrg" class="input_search" style="left:255px; top:8px; width:75px; height:19px; ">
- <script type="javascript" ev:event="onkeypress">
- <![CDATA[
- if (event.keycode == 13)
- {
- input2.value = input2.currentText;
- fbtnSearch();
- }
- ]]>
- </script>
- </input>
- <caption id="caption5" class="search_name" style="left:336px; top:8px; width:71px; height:17px; ">중분류</caption>
- <input id="input1" ref="/root/send/search/mdl" class="input_search" style="left:405px; top:8px; width:70px; height:19px; ">
- <script type="javascript" ev:event="onkeypress">
- <![CDATA[
- if (event.keycode == 13)
- {
- input1.value = input1.currentText;
- fbtnSearch();
- }
- ]]>
- </script>
- </input>
- <caption id="caption7" class="search_name" style="left:480px; top:8px; width:54px; height:17px; ">구분</caption>
- <select1 id="srf_cb" ref="/root/send/search/srfeflag" class="combo_search" appearance="minimal" style="left:535px; top:8px; width:50px; height:19px; ">
- <choices>
- <itemset nodeset="/root/init/srfe/item">
- <label ref="name"/>
- <value ref="id"/>
- </itemset>
- </choices>
- </select1>
- <caption id="caption8" class="search_name" style="left:590px; top:8px; width:63px; height:17px; ">화면명</caption>
- <input id="input3" ref="/root/send/search/scrnname" class="input_search" style="left:655px; top:8px; width:70px; height:19px; ">
- <script type="javascript" ev:event="onkeypress">
- <![CDATA[
- if (event.keycode == 13)
- {
- input3.value = input3.currentText;
- fbtnSearch();
- }
- ]]>
- </script>
- </input>
- <button id="btn_search" class="btn1_letter2" style="left:860px; top:7px; width:56px; height:22px; ">
- <caption>조회</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- // 최초 팝업시 prcscd를 가지고 넘어 온다.(해당 ROW만 가져오기 위해 prcscd,subteam 사용)
- // 조회 버튼을 눌렀을 경우 prcscd를 가져오는 부분이 없으므로 초기화 해 준다.
- model.setValue("/root/send/search/prcscd","");
- model.setValue("/root/send/search_file/prcscd","");
-
- fbtnSearch();
-
- model.removeNodeset("/root/main/filelist/list/file");
- model.setValue("/root/cur_scrn","");
- model.refresh();
- ]]>
- </script>
- </button>
- <caption id="caption6" class="search_name" style="left:730px; top:8px; width:63px; height:17px; ">개발자</caption>
- <input id="input4" ref="/root/send/search/usernm" class="input_search" style="left:798px; top:8px; width:50px; height:19px; ">
- <script type="javascript" ev:event="onkeypress">
- <![CDATA[
- if (event.keycode == 13)
- {
- input4.value = input4.currentText;
- fbtnSearch();
- }
- ]]>
- </script>
- </input>
- </group>
- <datagrid id="grd_attach" nodeset="/root/main/filelist/list/file" caption="path^seq^prcscd^subteam^파일명^파일 크기^파일 종류^입력자^입력 일시" colwidth="100, 100, 100, 100, 526, 68, 162, 69, 67" extendlastcol="scroll" mergecellsfixedrows="bycolrec" tooltip="true" style="left:3px; top:415px; width:920px; height:150px; ">
- <col ref="filepath" visibility="hidden"/>
- <col ref="seq" visibility="hidden"/>
- <col ref="prcscd" visibility="hidden"/>
- <col ref="subteam" visibility="hidden"/>
- <col ref="filenm"/>
- <col ref="filesize"/>
- <col ref="filetype"/>
- <col ref="fstrgstrid"/>
- <col ref="fstrgstdt" format="yyyy-mm-dd"/>
- <script type="javascript" ev:event="ondblclick">
- <![CDATA[
- // alert(getActionURL("TRZTP00104"));
- if( grd_attach.isCell(event.target) && grd_attach.row >= grd_attach.fixedRows )
- {
- var idx = grd_attach.row;
- var filepath = model.getValue("/root/main/filelist/list/file["+idx+"]/filepath");
- var filenm = model.getValue("/root/main/filelist/list/file["+idx+"]/filenm");
- var localfile = window.fileDialog("save","|",false,filenm,"","All Files(*.*)|*.*");
- if (localfile != "") {
- model.download(getActionURL("TRZTP00104")+"&filepath="+filepath,localfile);
- var rtn = messageBox("파일을", "Q004");
- if( rtn == 6 ) {
- window.exec(localfile);
- }
- }
- }
-
- ]]>
- </script>
- </datagrid>
- <button id="btn_addfile" class="btn2_letter4" style="left:806px; top:390px; width:64px; height:19px; ">
- <caption>파일삭제</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var selectedRows = grd_attach.selectedRows;
- var arr = new Array(selectedRows);
-
- if(selectedRows <= 0) {
- alert("삭제할 행을 선택해주세요.");
- return;
- }
-
- for ( var i = 0 ; i < arr.length ; i ++ )
- {
- arr[i] = grd_attach.selectedRow(i);
- }
-
- for ( var i = arr.length - 1 ; i >= 0 ; i-- )
- {
- // deleteRow(수정할 row,리프레쉬여부) , false로 설정하여 마지막에 한번에 refresh 한다.
- grd_attach.deleteRow(arr[i],false);
- }
-
- grd_attach.refresh();
- ]]>
- </script>
- </button>
- <button id="btn_upload" class="btn5_letter2" style="left:876px; top:390px; width:42px; height:19px; ">
- <caption>저장</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- // var curRow = grd_projlist.row;
- // model.setValue("/root/sendfile/report/filenm",grd_projlist.textmatrix(curRow,grd_projlist.colRef("filenm")));
- model.setValue("/root/send/filelist",grd_attach.getUpdateData());
-
- // if(!checkGridUpdate(grd_attach))
- // {
- // alert("저장할 자료가 존재하지 않습니다.");
- // return;
- // }
-
- if(messageBox("", "Q002")==6){
- if (submit("TXZTP00104")) {
- grd_attach.clearStatus();
- submit("TRZTP00103");
- fbtnSearch();
-
- model.refresh();
- }
- }
- ]]>
- </script>
- </button>
- <datagrid id="grd_projlist" nodeset="/root/main/projlist/list/proj" class="datagrid2" caption="PRCSCD^SUBTEAM^대분류^중분류^소분류^구분^화면명^세부기능/오류^첨부파일^개발자ID^개발자^useyn^" colwidth="0, 87, 89, 100, 94, 51, 125, 210, 34, 61, 49, 31" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" tooltip="true" style="left:3px; top:117px; width:920px; height:255px; ">
- <col ref="prcscd"/>
- <col ref="subteam"/>
- <col ref="lrg"/>
- <col ref="mdl"/>
- <col ref="sml"/>
- <col ref="srfeflag"/>
- <col ref="scrnname"/>
- <col ref="detailfe"/>
- <col ref="datafile"/>
- <col ref="dev"/>
- <col ref="usernm"/>
- <col ref="useyn" visibility="hidden"/>
- <script type="javascript" ev:event="ondblclick">
- <![CDATA[
- if( grd_projlist.isCell(event.target) && grd_projlist.row >= grd_projlist.fixedRows )
- {
- var curRow = grd_projlist.row;
- model.removeNodeset("/root/sendfile/attach/file");
- grd_attach.refresh(); // 첨부파일 그리드를 refresh 해줘야 한다
-
- model.setValue("/root/send/search_file/prcscd",grd_projlist.textmatrix(curRow,grd_projlist.colRef("prcscd")));
- model.setValue("/root/send/search_file/subteam",grd_projlist.textmatrix(curRow,grd_projlist.colRef("subteam")));
-
- model.setValue("/root/cur_scrn",grd_projlist.textmatrix(curRow,grd_projlist.colRef("scrnname")));
-
- submit("TRZTP00103");
- model.refresh();
- // // 파일 확장자 가져 오는 건데 필요 없을 듯 하다. 쓸대 없이 성능 갈아 먹을 거 같아... 너 뭐야
- // for(i=grd_attach.fixedRows ; i < grd_attach.rows ; i++)
- // {
- // var tmp_type = grd_attach.textmatrix(i,grd_attach.colRef("filenm"));
- // var type_list = tmp_type.split(".");
- // for (var h = 1 ; h <= type_list.length ; h++)
- // {
- // if(h == type_list.length-1)
- // {
- // alert(type_list[h]);
- // }
- // }
- // }
- }
- ]]>
- </script>
- </datagrid>
- <upload id="upload1" nodeset="/root/sendfile/attach/file" filesize="1073741824" validate="false" style="left:608px; top:390px; width:100px; height:20px; "/>
- <button id="button1" class="btn2_letter4" style="left:736px; top:390px; width:64px; height:19px; ">
- <caption>파일추가</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- // var curRow = grd_projlist.row;
- if(model.getValue("/root/send/search_file/prcscd") == "" | model.getValue("/root/send/search_file/subteam") == "" | model.getValue("/root/send/search_file/prcscd") == "auto")
- {
- alert("프로젝트를 선택해 주세요");
- return;
- }
- modal("SPZTP00300", "1", "100", "200", "SPZTP00300", "", "", "left:400; top:400; width:500; height:150; sysmenu:visible; min:visible; max:true; resize:true; caption:visible;" , false);
- // 파일 추가 팝업 창을 닫은 후 첨부파일 목록 갱신
- submit("TRZTP00103");
- model.refresh();
- ]]>
- </script>
- </button>
- <caption id="caption9" ref="/root/cur_scrn" style="left:133px; top:390px; width:460px; height:20px; "/>
- </xhtml:body>
- </xhtml:html>
|