123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354 |
- <?xml version="1.0" encoding="EUC-KR"?>
- <!--
- * Name : SPCIT01900_만족도입력정보
- * Summary : 만족도입력정보
- * Programmer : 황현석
- * Date Written : 2010.12.08
- * History :
- * Remark :
- -->
- <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.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>
- <title>
- <stinseqno/>
- <stintitlcnts/>
- <qpaprseqno/>
- <qpaprtitlcnts/>
- </title>
- <rsltlist>
- <row/>
- <key/>
- </rsltlist>
- <execlist>
- <answprsnseqno/>
- <stintrgtflagcd/>
- <stintrgtid/>
- <qestseqno/>
- <emaladdr/>
- <lists/>
- </execlist>
- </main>
- <send>
- <qestprvw>
- <qpaprseqno/>
- <stinseqno/>
- <mode>B</mode>
- </qestprvw>
- </send>
- <hidden>
- <sendgrd>
- <stinseqno/>
- <qpaprseqno/>
- <qestitemgrupseqno/>
- <answprsnseqno/>
- <qestseqno/>
- <stintrgtflagcd/>
- <pid/>
- <homepgid/>
- <userid/>
- <emailaddr/>
- <qestanswno/>
- <qestmltlanswno/>
- <descinptcnts/>
- <descinptaddcnts/>
- <qestrspsyn/>
- <baseqestgrupyn/>
- </sendgrd>
- <grupgrd>
- <stinseqno/>
- <qpaprseqno/>
- <answprsnseqno/>
- </grupgrd>
- </hidden>
- <temp>
- <rsltlist/>
- <result/>
- </temp>
- </root>
- </instance>
- <submission id="TRCIT01801" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/qestprvw" resultref="/root/main/execlist"/>
- <submission id="TRCIT01901" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/qestprvw" resultref="/root/temp/rsltlist"/>
- <submission id="TXCIT01901" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/temp/result"/>
- </model>
- <script type="javascript" src="../../../com/commonweb/js/common.js"/>
- <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
- <script type="javascript" ev:event="xforms-ready">
- <![CDATA[
- // 부모창의 설문지 일련번호를 가져온다.
- var qpaprseqno = opener.window.javascript.getParameter("qpaprseqno");
- model.setValue("/root/main/title/qpaprseqno", qpaprseqno);
- model.setValue("/root/send/qestprvw/qpaprseqno", qpaprseqno);
-
- var stinseqno = opener.window.javascript.getParameter("stinseqno");
- model.setValue("/root/main/title/stinseqno", stinseqno);
- model.setValue("/root/send/qestprvw/stinseqno", stinseqno);
-
- var qpaprtitlcnts = opener.window.javascript.getParameter("qpaprtitlcnts");
- model.setValue("/root/main/title/qpaprtitlcnts", qpaprtitlcnts);
-
- var stintitlcnts = opener.window.javascript.getParameter("stintitlcnts");
- model.setValue("/root/main/title/stintitlcnts", stintitlcnts);
-
- model.removeNodeset("/root/hidden/sendgrd");
- model.removeNodeset("/root/hidden/grupgrd");
-
- fGetNResultRef();
- model.refresh();
- ]]>
- </script>
- <script type="javascript">
- <![CDATA[
- function fGetNResultRef() {
-
- submit("TRCIT01901", false);
-
- var gridCaption = model.getValue("/root/temp/rsltlist/header/caption");
-
- if(gridCaption == "") return;
- //ref 정보
- var gridColRef = model.getValue("/root/temp/rsltlist/header/colref");
- var gridColRefArray = gridColRef.split("^");
-
- var gridColType = model.getValue("/root/temp/rsltlist/header/type");
-
- var gridColTypeArray = gridColType.split("^");
-
- for( var i = 0; i < gridColRefArray.length; i++ ) {
-
- datagrid1.addColumn("ref:" + gridColRefArray[i] + "; type:"+gridColTypeArray[i]+"; ", false);
- datagrid1.colWidth(i+1) = 90;
- }
- datagrid1.caption = gridCaption;
-
- var node = instance1.selectSingleNode("/root/main");
- node.replaceChild(instance1.root.temp.rsltlist, instance1.root.main.rsltlist);
- datagrid1.rowheight(0) = 30;
- datagrid1.colAttribute(3, "imemode") = "disabled";
-
- // 부모창에서 넘어온 대상자구분 코드
- var stintrgtflagcd = opener.window.javascript.getParameter("stintrgtflagcd");
- model.setValue("/root/main/rsltlist/row/stintrgtflagcd", stintrgtflagcd);
-
- datagrid1.rebuild();
-
- }
-
- function fSaveMode() {
- var chk = model.getValue("/root/main/rsltlist/header/colrefarray");
- var chkArray = chk.split("^");
- var qestCount = chkArray.length-1;
- var rowCount = datagrid1.rows-1;
-
- var stinseqno = model.getValue("/root/main/title/stinseqno");
- var qpaprseqno = model.getValue("/root/main/title/qpaprseqno");
- var answprsnseqno = eval(model.getValue("/root/main/rsltlist/key/answprsnseqno"));
- var baseqestgrupyn = "";
- var stintrgtflagcd = "";
- var pid = "";
- var userid = "";
- var rows = "";
- var sColSep = "▦";
- var sRowSep = "▩";
- var send_data1 = "m" + sColSep + "stinseqno" + sColSep + "qpaprseqno" + sColSep + "answprsnseqno" + sRowSep; //타이틀 map file 등에서 사용
- var send_data2 = "m" + sColSep + "stinseqno" + sColSep + "qpaprseqno" + sColSep + "qestitemgrupseqno" + sColSep + "answprsnseqno" +
- sColSep + "qestseqno" + sColSep + "pid" + sColSep + "userid" + sColSep + "stintrgtflagcd" + sColSep + "descinptcnts" + sColSep + "baseqestgrupyn" +
- sColSep + "qestanswno" + sColSep + "qestmltlanswno" + sColSep + "qestrspsyn" + sRowSep; //타이틀 map file 등에서 사용
- for (var i=0; i < rowCount; i++) { // row 개수만큼
- stintrgtflagcd = datagrid1.valueMatrix((i+1), datagrid1.colRef("stintrgtflagcd"));
-
- send_data1 += "m" + sColSep + stinseqno + sColSep + qpaprseqno + sColSep + (answprsnseqno+i) + sRowSep;
-
- for (var k=0; k < qestCount; k++) { // 문항 개수만큼
- var qestseqno = datagrid3.valueMatrix((k+1), datagrid3.colRef("qestseqno"));
- var qestitemgrupseqno = datagrid3.valueMatrix((k+1), datagrid3.colRef("qestitemgrupseqno"));
- var itemkindcd = datagrid3.valueMatrix((k+1), datagrid3.colRef("itemkindcd"));
-
- var descinptcnts = datagrid1.valueMatrix((i+1), datagrid1.colRef("descinptcnts"+k));
- var qestanswno = datagrid1.valueMatrix((i+1), datagrid1.colRef("qestanswno"+k));
- var qestmltlanswno = datagrid1.valueMatrix((i+1), datagrid1.colRef("qestmltlanswno"+k));
-
- // 답변자 id 설정
- if (stintrgtflagcd == "1" || stintrgtflagcd == "2" || stintrgtflagcd == "3") {
- pid = datagrid1.valueMatrix((i+1), datagrid1.colRef("stintrgtid"));
- } else {
- userid = datagrid1.valueMatrix((i+1), datagrid1.colRef("stintrgtid"));
- }
-
- if (qestitemgrupseqno == 1) {
- baseqestgrupyn = "Y";
- } else {
- baseqestgrupyn = "N";
- }
-
- if (itemkindcd == "1" || itemkindcd == "6" || itemkindcd == "7" || itemkindcd == "8" || itemkindcd == "10") {
- if (qestanswno == "" || qestanswno == "0") {
- qestanswno = "99";
- qestrspsyn = "N";
- } else {
- qestrspsyn = "Y";
- }
-
- } else if (itemkindcd == "2") {
- if (qestmltlanswno == "" || qestmltlanswno == "0") {
- qestmltlanswno = "99";
- qestrspsyn = "N";
- } else {
- qestrspsyn = "Y";
- }
- } else if (itemkindcd == "3") {
- if (qestmltlanswno == "" || qestmltlanswno == "0") {
- qestmltlanswno = "99:99";
- qestrspsyn = "N";
- } else {
- qestrspsyn = "Y";
- }
- } else {
- if (descinptcnts == "" || descinptcnts == "0") {
- qestanswno = "99";
- qestrspsyn = "N";
- } else {
- qestanswno = "1";
- qestrspsyn = "Y";
- }
- }
-
- send_data2 += "m" + sColSep + stinseqno + sColSep + qpaprseqno + sColSep + qestitemgrupseqno + sColSep + (answprsnseqno+i) +
- sColSep + qestseqno + sColSep + pid + sColSep + userid + sColSep + stintrgtflagcd + sColSep + descinptcnts + sColSep + baseqestgrupyn +
- sColSep + qestanswno + sColSep + qestmltlanswno + sColSep + qestrspsyn + sRowSep;
- }
- }
- model.makeNode("/root/send/savedata");
- model.makeValue("/root/send/savedata/grupgrd", send_data1);
- model.makeValue("/root/send/savedata/sendgrd",send_data2);
-
- if (submit("TXCIT01901")) {
- messageBox("만족도 답변정보 입력이","I002");
- window.close();
- }
-
- model.removeNodeset("/root/hidden/sendgrd");
- model.removeNodeset("/root/send/savedata");
- model.refresh();
- }
- ]]>
- </script>
- </xhtml:head>
- <xhtml:body pagewidth="1030" pageheight="620" style="margin-left:8; margin-top:8; margin-right:8; margin-bottom:8; ">
- <line id="line3" class="line_2" style="x1:0px; y1:22px; x2:1000; y2:22px; "/>
- <caption id="caption1" class="cell_1" style="left:0; top:0; width:100px; height:23; ">만족도 제목</caption>
- <input id="input1" ref="/root/main/title/stintitlcnts" disabled="true" inputMode="digits" style="left:103px; top:1px; width:896px; height:19px; "/>
- <line id="line4" class="line_3" style="x1:0px; y1:46px; x2:1000; y2:46px; "/>
- <caption id="caption2" class="cell_1" style="left:0px; top:24px; width:100px; height:23px; ">설문지</caption>
- <input id="input2" ref="/root/main/title/qpaprtitlcnts" disabled="true" style="left:103px; top:25px; width:797px; height:19px; "/>
- <button id="button1" class="btn2_letter7" style="left:903px; top:25px; width:97px; height:19px; ">
- <caption>설문지 미리보기</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var qpaprseqno = model.getValue("/root/send/qestprvw/qpaprseqno");
- setParameter("qpaprseqno", qpaprseqno);
-
- modal("SPCIT00400");
-
- clearParameter("qpaprseqno");
-
- model.refresh();
- ]]>
- </script>
- </button>
- <button id="button2" class="btn2_letter4" style="left:869px; top:50px; width:64px; height:19px; ">
- <caption>샘플파일</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var fileName = window.fileDialog("save", ",", false, "결과입력셈플", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
-
- if (fileName != "")
- {
- datagrid1.saveExcel(fileName, "주소록", true, true, "", "", true);
- }
- ]]>
- </script>
- </button>
- <button id="button3" class="btn2_letter4" style="left:936px; top:50px; width:64px; height:19px; ">
- <caption>엑셀입력</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var fileName = window.fileDialog("open", ",", false, "", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
- datagrid1.loadExcel(fileName, 1, false);
- datagrid1.deleteRow(1);
- model.SetFocus("datagrid1");
-
- if (datagrid1.rows > 500) {
- messageBox("한번에 100 명이 넘는 답변은 저장 ", "E001");
- window.close();
- }
- model.refresh();
- ]]>
- </script>
- </button>
- <line id="line1" class="line_1" style="x1:0px; y1:72px; x2:1000px; y2:72px; "/>
- <datagrid id="datagrid1" nodeset="/root/main/rsltlist/row" backcoloralternate="transparent" colsep="^" dataheight="25" ellipsis="true" frozencols="3" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="30" rowsep="|" selectionmode="free" style="left:0px; top:77px; width:1000px; height:500px; "/>
- <group id="group1" style="left:0px; top:578px; width:1000; height:27px; ">
- <button id="button4" class="btn4_letter2" style="left:443px; top:5px; width:56px; height:22px; ">
- <caption>저장</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var rowCount = datagrid1.rows-1;
- var saveCount = 0;
- // 사용자 아이디를 검색
- for (var j=0; j < rowCount; j++) {
- var stintrgtid = datagrid1.valueMatrix((j+1), datagrid1.colRef("stintrgtid"));
- if (stintrgtid == "") {
- messageBox("설문지 ID를", "C001");
- saveCount = 0;
- break;
- } else {
- saveCount++;
- }
- }
-
- if (saveCount > 0) {
- fSaveMode();
- }
-
- ]]>
- </script>
- </button>
- <button id="button5" class="btn4_letter2" style="left:502px; top:5px; width:56px; height:22px; ">
- <caption>취소</caption>
- <close ev:event="DOMActivate"/>
- </button>
- </group>
- <datagrid id="datagrid2" nodeset="/root/hidden/sendgrd" visibility="hidden" caption="stinseqno^qpaprseqno^qestitemgrupseqno^answprsnseqno^qestseqno^stintrgtflagcd^pid^homepgid^userid^emailaddr^qestanswno^qestmltlanswno^descinptcnts^descinptaddcnts^qestrspsyn^baseqestgrupyn" colsep="^" mergecellsfixedrows="bycolrec" rowsep="|" style="left:0px; top:370px; width:955px; height:200px; ">
- <col ref="stinseqno"/>
- <col ref="qpaprseqno"/>
- <col ref="qestitemgrupseqno"/>
- <col ref="answprsnseqno"/>
- <col ref="qestseqno"/>
- <col ref="stintrgtflagcd"/>
- <col ref="pid"/>
- <col ref="homepgid"/>
- <col ref="userid"/>
- <col ref="emailaddr"/>
- <col ref="qestanswno"/>
- <col ref="qestmltlanswno"/>
- <col ref="descinptcnts"/>
- <col ref="descinptaddcnts"/>
- <col ref="qestrspsyn"/>
- <col ref="baseqestgrupyn"/>
- <col ref="rowcount"/>
- </datagrid>
- <datagrid id="datagrid3" nodeset="/root/main/rsltlist/key" visibility="hidden" caption="itemkindcd^qestitemgrupseqno^answprsnseqno^qestseqno" colsep="^" mergecellsfixedrows="bycolrec" rowsep="|" style="left:5px; top:215px; width:520px; height:100px; ">
- <col ref="itemkindcd"/>
- <col ref="qestitemgrupseqno"/>
- <col ref="answprsnseqno"/>
- <col ref="qestseqno"/>
- </datagrid>
- </xhtml:body>
- </xhtml:html>
|