123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855 |
- <?xml version="1.0" encoding="EUC-KR"?>
- <?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>심사Comment관리(SMPIB00600)</xhtml:title>
- <model id="model1">
- <instance id="instance1">
- <root xmlns="">
- <init>
- <U0001list>
- <U0001>
- <cdid/>
- <cdnm/>
- </U0001>
- <UserInfo>
- <userId/>
- <userNm/>
- </UserInfo>
- </U0001list>
- <appflag/>
- <comm/>
- <userid/>
- <P0495list>
- <P0495>
- <cdnm/>
- <cdid/>
- </P0495>
- </P0495list>
- <P0496list>
- <P0496>
- <cdnm/>
- <cdid/>
- <cdval/>
- </P0496>
- </P0496list>
- </init>
- <main>
- <list1>
- <GridMemo01>
- <memocd/>
- <memoflag/>
- <memocls/>
- <judgrid/>
- <memo/>
- <oldmemoflag/>
- <oldmemocls/>
- <oldmemo/>
- <sortno/>
- </GridMemo01>
- </list1>
- <result/>
- <tocopyJudgrid/>
- <list2>
- <GridMemo01>
- <memocd/>
- <memoflag/>
- <memocls/>
- <judgrid/>
- <memo/>
- </GridMemo01>
- </list2>
- </main>
- <send>
- <srchFlag/>
- <srchFlagNm/>
- <judgrID01/>
- <memoFlag01/>
- <memoCls01/>
- <cmtUpdate>
- <datalist>
- </datalist>
- </cmtUpdate>
- </send>
- <hidden>
- <selectGubun/>
- <list1>
- </list1>
- <popupmenu>
- <judgrcmt>
- <item>
- <name>순서 위로</name>
- <func>fJudgrcmtNoUp</func>
- </item>
- <item>
- <name>순서 아래로</name>
- <func>fJudgrcmtNoDown</func>
- </item>
- <item>
- <name>-</name>
- <func/>
- </item>
- <item>
- <name>행 삽입</name>
- <func>fJudgrcmtGridInsertRow</func>
- </item>
- <item>
- <name>행 추가</name>
- <func>fAddRow</func>
- </item>
- <item>
- <name>행 삭제</name>
- <func>fJudgrcmtGridDeleteRow</func>
- </item>
- </judgrcmt>
- </popupmenu>
- </hidden>
- </root>
- </instance>
- <script type="javascript" ev:event="xforms-ready">
- <![CDATA[
- submit("TRPIB00603");
- zbcfGetCodeList(new Array("P0495","P0496"), new Array("/root/init/P0495list","/root/init/P0496list"), false);
- fInitialize();
-
- ]]>
- </script>
- <submission id="TRPIB00601" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list1"/>
- <submission id="TRPIB00602" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list2"/>
- <submission id="TRPIB00603" mediatype="application/x-www-form-urlencoded" method="post" resultref="/root/init/U0001list"/>
- <submission id="TXPIB00601" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/cmtUpdate" resultref="/root/main/result"/>
- <bind id="bind_memoflag" ref="/root/main/list1/GridMemo01/memoflag" readonly="../judgrid != /root/init/userid"/>
- <bind id="bind_memocls" ref="/root/main/list1/GridMemo01/memocls" readonly="../judgrid != /root/init/userid"/>
- <bind id="bind_judgrid" ref="/root/main/list1/GridMemo01/judgrid" readonly="../judgrid != /root/init/userid"/>
- <bind id="bind_memo" ref="/root/main/list1/GridMemo01/memo" readonly="../judgrid != /root/init/userid"/>
- <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
- <submission id="TRZBC00102" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
- </model>
- <script type="javascript" src="../../../com/commonweb/js/common.js"/>
- <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
- <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
- <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
- <script type="javascript">
- <![CDATA[
- function fInitialize()
- {
- // grid를 인스턴스에 mapping후 인스턴스에 해당하는 빈줄 1줄이 생기므로 grid 초기화
- model.removeNodeset("/root/main/list1/GridMemo01");
- grd_judgrcmt.refresh();
-
- cmb_SrchFlag.select(0);
- cmb_JudgrID01.select(0);
- cmb_MemoFlag01.select(0);
- cmb_MemoCd01.select(0);
-
- var userId = getUserId();
- // 임시 테스트용
- //userId = "98041212";
-
- model.setValue("/root/init/userid", userId);
-
- if (fJudgridCheck()) {
- // 로그인한 사용자가 선택된 상태로 만듬
- model.setValue("/root/send/judgrID01",userId);
- cmb_JudgrID01.refresh();
- }
-
- model.setValue("/root/init/appflag", "false");
- model.setValue("/root/init/comm", "심사자 COMMENT 입력하세요");
-
- //model.refresh();
- }
-
- // 로그인 사용자가 심사자인지 체크한다. (심사자일 경우에만, 행복사, 삭제, 심사comment 저장 등의 작업을 처리할 수 있다)
- function fJudgridCheck()
- {
- var ret = false;
-
- // 심사자 콤보 안에 로그인사용자의 아이디가 존재하면 이는 심사자임
- var userid = getUserId();
- var judgrid = model.getValue("/root/init/U0001list/U0001[cdid='"+ userid +"']/cdid");
-
- if (userid == judgrid) {
- ret = true;
- }
-
- return ret;
- }
-
- // 심사자 comment 입력 후, 엔터를 치면 자동 입력
- function fAddRow() {
-
- grd_judgrcmt.AddRow();
-
- var memoflag = model.getValue("/root/send/memoFlag01");
- if (memoflag != "%") {
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/memoflag", memoflag);
- } else {
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/memoflag", "0");
- }
- var memocls = model.getValue("/root/send/memoCls01");
- if (memocls != "%") {
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/memocls", memocls);
- } else {
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/memocls", "00");
- }
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row + "]/judgrid", model.getValue("/root/init/userid"));
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row + "]/memo", model.getValue("/root/init/comm"));
-
- // 자동 행추가에 따른 변경 여부 확인을 위해 추가
- model.makeNode("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/memosel");
- model.makeNode("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/changeflag");
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/changeflag","I");
-
- //grd_judgrcmt.select(grd_judgrcmt.row, grd_judgrcmt.colRef("memocd"), grd_judgrcmt.row, grd_judgrcmt.colRef("memo")) = true;
-
- // 그리드 변경 여부 (메모구분/메모분류/comment만 수정 가능하며, 심사자는 수정할 수 없다)
- grd_judgrcmt.colDisabled(grd_judgrcmt.colRef("memoflag")) = false;
- grd_judgrcmt.colDisabled(grd_judgrcmt.colRef("memocls")) = false;
- grd_judgrcmt.colDisabled(grd_judgrcmt.colRef("judgrid")) = true;
- grd_judgrcmt.colDisabled(grd_judgrcmt.colRef("memo")) = false;
-
- grd_judgrcmt.row = grd_judgrcmt.rows - 1;
-
- grd_judgrcmt.vscroll.attribute("pos") = grd_judgrcmt.vscroll.attribute("max");
- }
-
- // 메모구분, 메모분류 선택시 필터링
- function fFilterMemo() {
-
- var appflag = model.getValue("/root/init/appflag");
- if (appflag == "false") {
- // 1.조회를 위한 선택(아무 동작 안함)
- } else if (appflag == "true") {
- var memoflag = model.getValue("/root/send/memoFlag01");
- var memocls = model.getValue("/root/send/memoCls01");
-
- if (memoflag == "0" && memocls == "00") {
- for (var i = 1; i < grd_judgrcmt.rows; i++) {
- grd_judgrcmt.rowHidden(i) = false;
- }
- } else if (memoflag == "0" && memocls != "00") {
- for (var i = 1; i < grd_judgrcmt.rows; i++) {
- if (grd_judgrcmt.valueMatrix(i, grd_judgrcmt.colRef("memocls")) != memocls ) {
- grd_judgrcmt.rowHidden(i) = true;
- } else {
- grd_judgrcmt.rowHidden(i) = false;
- }
- }
- } else if (memoflag != "0" && memocls == "00") {
- for (var i = 1; i < grd_judgrcmt.rows; i++) {
- if (grd_judgrcmt.valueMatrix(i, grd_judgrcmt.colRef("memoflag")) != memoflag) {
- grd_judgrcmt.rowHidden(i) = true;
- } else {
- grd_judgrcmt.rowHidden(i) = false;
- }
- }
- } else {
- for (var i = 1; i < grd_judgrcmt.rows; i++) {
- if ( (grd_judgrcmt.valueMatrix(i, grd_judgrcmt.colRef("memoflag")) == memoflag) &&
- (grd_judgrcmt.valueMatrix(i, grd_judgrcmt.colRef("memocls")) == memocls) ) {
- grd_judgrcmt.rowHidden(i) = false;
- } else {
- grd_judgrcmt.rowHidden(i) = true;
- }
- }
- }
- }
- }
-
- function fJudgrcmtNoUp() {
- var rowstatus = grd_judgrcmt.rowstatus(grd_judgrcmt.row);
- var judgrid = grd_judgrcmt.valueMatrix(grd_judgrcmt.row, grd_judgrcmt.colRef("judgrid"));
-
- if (rowstatus == 4) { // 4 : delete
- return;
- }
-
- if (judgrid != getUserId()) {
- messageBox("타심사자 메모를 변경할 수","I004"); // 타심사자 메모를 변경할 수 없습니다.
- return;
- }
-
- var sortno = parseInt(model.getValue("/root/main/list1/GridMemo01["+ grd_judgrcmt.row +"]/sortno")); // 선택된 줄의 NO
- if (sortno > 1) { // 첫번째 줄이 아닌 경우
- model.setValue("/root/main/list1/GridMemo01["+ grd_judgrcmt.row +"]/sortno", --sortno);
- if (rowstatus == 0 || rowstatus == 2) {
- grd_judgrcmt.rowstatus(grd_judgrcmt.row) = 2; // 2 : update
- }
- // 바로 위 상병순서와 중복되는 경우
- var nextrow = grd_judgrcmt.row - 1;
- var nextsortno = model.getValue("/root/main/list1/GridMemo01["+ nextrow +"]/sortno");
-
- if (sortno == nextsortno) {
- model.setValue("/root/main/list1/GridMemo01["+ nextrow +"]/sortno", ++sortno);
- rowstatus = grd_judgrcmt.rowstatus(nextrow);
- if (rowstatus == 0 || rowstatus == 2) {
- grd_judgrcmt.rowstatus(nextrow) = 2; // 2 : update
- }
- }
-
- fJudgrcmtSortNo();
-
- }
-
- }
- function fJudgrcmtNoDown() {
- var judgrid = grd_judgrcmt.valueMatrix(grd_judgrcmt.row, grd_judgrcmt.colRef("judgrid"));
- var rowstatus = grd_judgrcmt.rowstatus(grd_judgrcmt.row);
- if (rowstatus == 4) { // 4 : delete
- return;
- }
-
- if (judgrid != getUserId()) {
- messageBox("타심사자 메모를 변경할 수","I004"); // 타심사자 메모를 변경할 수 없습니다.
- return;
- }
- // 삭제 상태가 아닌 마지막 줄을 찾는다.
- var lastRow = grd_judgrcmt.rows - 1;
- for (var i = 1; i < grd_judgrcmt.rows; i++) {
- if (grd_judgrcmt.rowstatus(i) == 4) { // delete
- lastRow = i - 1;
- i = grd_judgrcmt.rows;
- }
- }
- var sortno = parseInt(model.getValue("/root/main/list1/GridMemo01["+ grd_judgrcmt.row +"]/sortno")); // 선택된 줄의 NO
- if (sortno < lastRow) { // 마지막 줄이 아닌 경우
- model.setValue("/root/main/list1/GridMemo01["+ grd_judgrcmt.row +"]/sortno", ++sortno);
- if (rowstatus == 0 || rowstatus == 2) {
- grd_judgrcmt.rowstatus(grd_judgrcmt.row) = 2; // 2 : update
- }
- // 바로 아래 상병순서와 중복되는 경우
- var nextrow = grd_judgrcmt.row + 1;
- var nextsortno = model.getValue("/root/main/list1/GridMemo01["+ nextrow +"]/sortno");
- if (sortno == nextsortno) {
- model.setValue("/root/main/list1/GridMemo01["+ nextrow +"]/sortno", --sortno);
-
- rowstatus = grd_judgrcmt.rowstatus(nextrow);
- if (rowstatus == 0 || rowstatus == 2) {
- grd_judgrcmt.rowstatus(nextrow) = 2; // 2 : update
- }
- }
-
- fJudgrcmtSortNo();
- }
-
- }
- function fJudgrcmtGridInsertRow() {
- grd_judgrcmt.insertRow(grd_judgrcmt.row, "below", true);
-
- var memoflag = model.getValue("/root/send/memoFlag01");
- if (memoflag != "%") {
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/memoflag", memoflag);
- } else {
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/memoflag", "0");
- }
- var memocls = model.getValue("/root/send/memoCls01");
- if (memocls != "%") {
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/memocls", memocls);
- } else {
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/memocls", "00");
- }
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row + "]/judgrid", model.getValue("/root/init/userid"));
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row + "]/memo", model.getValue("/root/init/comm"));
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row + "]/sortno", grd_judgrcmt.row);
-
- // 자동 행추가에 따른 변경 여부 확인을 위해 추가
- model.makeNode("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/memosel");
- model.makeNode("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/changeflag");
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/changeflag","I");
-
- //grd_judgrcmt.select(grd_judgrcmt.row, grd_judgrcmt.colRef("memocd"), grd_judgrcmt.row, grd_judgrcmt.colRef("memo")) = true;
-
- // 그리드 변경 여부 (메모구분/메모분류/comment만 수정 가능하며, 심사자는 수정할 수 없다)
- grd_judgrcmt.colDisabled(grd_judgrcmt.colRef("memoflag")) = false;
- grd_judgrcmt.colDisabled(grd_judgrcmt.colRef("memocls")) = false;
- grd_judgrcmt.colDisabled(grd_judgrcmt.colRef("judgrid")) = true;
- grd_judgrcmt.colDisabled(grd_judgrcmt.colRef("memo")) = false;
- }
-
- function fJudgrcmtGridDeleteRow() {
- btn_delRow.dispatch("DOMActivate");
- }
-
- function fJudgrcmtSortNo() {
- var maxRow = parseInt(grd_judgrcmt.rows) - 1; // rows는 타이틀부분 부터 개수를 센다
- grd_judgrcmt.sort(grd_judgrcmt.fixedRows, grd_judgrcmt.colRef("sortno"), maxRow, grd_judgrcmt.colRef("sortno")) = "asc"; // 타이틀을 제외한 data 부분의 첫 줄의 row = 1 / col = 3 : no
- grd_judgrcmt.gridToInstance();
- }
- ]]>
- </script>
- </xhtml:head>
- <xhtml:body pagewidth="950" pageheight="720" guideline="1,928;2,696;" style="font-family:굴림체; margin-left:8; margin-top:8; margin-right:8; margin-bottom:8; ">
- <group id="group1" style="left:0px; top:0px; width:927px; height:13px; ">
- <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:135px; height:13px; ">심사 Comment 관리</caption>
- </group>
- <group id="group3" scroll="auto" style="left:0px; top:13px; width:927px; height:652px; ">
- <group id="group2" style="left:0px; top:10px; width:920px; height:80px; vertical-align:top; ">
- <shape id="roundrect1" appearance="roundrect" style="left:0px; top:0px; width:920px; height:80px; "/>
- <caption id="caption2" class="search_name" style="left:19px; top:33px; width:86px; height:17px; ">메모구분 :</caption>
- <button id="btn_search" class="btn1_letter2" style="left:854px; top:29px; width:56px; height:22px; ">
- <caption>조회</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- model.removeNodeset("/root/main/list1/GridMemo01");
- if (submit("TRPIB00601")) {
- //model.refresh();
- model.setValue("/root/hidden/selectGubun", "N");
- //fJudgridCheck();
- model.setValue("/root/init/appflag", "true");
-
- // 그리드 변경 여부 (메모구분/메모분류/comment만 수정 가능하며, 심사자는 수정할 수 없다)
- grd_judgrcmt.colDisabled(grd_judgrcmt.colRef("memoflag")) = false;
- grd_judgrcmt.colDisabled(grd_judgrcmt.colRef("memocls")) = false;
- grd_judgrcmt.colDisabled(grd_judgrcmt.colRef("judgrid")) = true;
- grd_judgrcmt.colDisabled(grd_judgrcmt.colRef("memo")) = false;
- }
- ]]>
- </script>
- <script type="javascript" ev:event="DOMFocusIn">
- <![CDATA[
-
- ]]>
- </script>
- </button>
- <line id="line13" class="line_4" style="x1:839px; y1:9px; x2:839px; y2:72px; "/>
- <caption id="caption3" class="search_name" style="left:310px; top:33px; width:86px; height:17px; ">메모분류 :</caption>
- <caption id="caption4" class="search_name" style="left:19px; top:9px; width:86px; height:17px; ">검색구분 :</caption>
- <caption id="caption5" class="search_name" style="left:565px; top:32px; width:98px; height:17px; ">심사자 :</caption>
- <select1 id="cmb_SrchFlag" ref="/root/send/srchFlag" class="combo_search" appearance="minimal" style="left:129px; top:8px; width:80px; height:19px; ">
- <choices>
- <item>
- <label>Comment</label>
- <value>C</value>
- </item>
- </choices>
- </select1>
- <select1 id="cmb_JudgrID01" ref="/root/send/judgrID01" class="combo_search" appearance="minimal" style="left:670px; top:32px; width:110px; height:19px; ">
- <choices>
- <itemset nodeset="/root/init/U0001list/U0001">
- <label ref="cdnm"/>
- <value ref="cdid"/>
- </itemset>
- </choices>
- <script type="javascript" ev:event="xforms-select">
- <![CDATA[
- //fJudgridCheck();
- ]]>
- </script>
- </select1>
- <select1 id="cmb_MemoFlag01" ref="/root/send/memoFlag01" class="combo_search" appearance="minimal" style="left:129px; top:32px; width:110px; height:19px; ">
- <choices>
- <itemset nodeset="/root/init/P0495list/P0495">
- <label ref="cdnm"/>
- <value ref="cdid"/>
- </itemset>
- </choices>
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- var memoflag = cmb_MemoFlag01.value
-
- // model.alert(memoflag);
-
- if(memoflag == "6"){
- cmb_MemoCd01.choices.itemset.attribute("nodeset") = "/root/init/P0496list/P0496[cdval = '6']";
- }else{
- cmb_MemoCd01.choices.itemset.attribute("nodeset") = "/root/init/P0496list/P0496[cdval = '0']";
- }
- //cmb_MemoCd01.choices.itemset.attribute("nodeset") = "/root/send/memoCls01[cdval = '" + cmb_MemoFlag01.value + "']";
- //model.setValue("/root/main/orddrid", "");
- cmb_MemoCd01.refresh();
- ]]>
- </script>
- </select1>
- <select1 id="cmb_MemoCd01" ref="/root/send/memoCls01" class="combo_search" appearance="minimal" style="left:405px; top:32px; width:110px; height:19px; ">
- <choices>
- <itemset nodeset="/root/init/P0496list/P0496">
- <label ref="cdnm"/>
- <value ref="cdid"/>
- </itemset>
- </choices>
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- /*
- var memocls = model.getValue("/root/send/memoCls01");
-
- if(memocls == "11"){
- model.setValue("/root/send/memoCls01");
- }
- */
- // fFilterMemo();
- ]]>
- </script>
- </select1>
- <input id="ipt_SrchFlagNm" ref="/root/send/srchFlagNm" class="input_search" style="left:212px; top:8px; width:568px; height:19px; "/>
- <input id="input1" ref="/root/init/comm" class="input_search" style="left:129px; top:55px; width:651px; height:19px; ">
- <script type="javascript" ev:event="onkeypress">
- <![CDATA[
- // 심사 comment 1줄 입력 처리
- if (event.keyCode=='13') {
- inputEnterKey("btn_search", "DOMFocusIn");
-
- if (fJudgridCheck()) {
- fAddRow();
- } else {
- messageBox("심사자","E002");
- }
- }
- ]]>
- </script>
- </input>
- <caption id="caption7" class="search_name" style="left:17px; top:56px; width:90px; height:17px; ">메 모 :</caption>
- </group>
- <datagrid id="grd_judgrcmt" nodeset="/root/main/list1/GridMemo01" autoresize="true" caption="메모코드^메모구분^메모분류^심사자^Comment^순서^oldmemoflag^oldmemocls^oldmemo" colsep="^" colwidth="0, 99, 71, 79, 579, 53, 0, 0, 0" dataheight="23" ellipsis="true" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" style="left:1px; top:125px; width:920px; height:525px; font-family:굴림체; ">
- <col ref="memocd" visibility="hidden" style="text-align:center; "/>
- <col ref="memoflag" type="combo">
- <choices>
- <itemset nodeset="/root/init/P0495list/P0495">
- <label ref="cdnm"/>
- <value ref="cdid"/>
- </itemset>
- </choices>
- </col>
- <col ref="memocls" type="combo">
- <choices>
- <item>
- <label>전체</label>
- <value>00</value>
- </item>
- <item>
- <label>약</label>
- <value>01</value>
- </item>
- <item>
- <label>주사</label>
- <value>02</value>
- </item>
- <item>
- <label>처치</label>
- <value>03</value>
- </item>
- <item>
- <label>검사</label>
- <value>04</value>
- </item>
- <item>
- <label>기타</label>
- <value>99</value>
- </item>
- <item>
- <label>평가공통</label>
- <value>11</value>
- </item>
- <item>
- <label>AMI</label>
- <value>12</value>
- </item>
- <item>
- <label>CABG</label>
- <value>13</value>
- </item>
- <item>
- <label>분만</label>
- <value>14</value>
- </item>
- <item>
- <label>뇌졸증</label>
- <value>15</value>
- </item>
- <item>
- <label>예방항생제</label>
- <value>16</value>
- </item>
- </choices>
- </col>
- <col disabled="true" ref="judgrid" type="combo">
- <choices>
- <itemset nodeset="/root/init/U0001list/U0001">
- <label ref="cdnm"/>
- <value ref="cdid"/>
- </itemset>
- </choices>
- </col>
- <col ref="memo" type="input"/>
- <col ref="sortno" type="input" format="999999-9999999"/>
- <col ref="oldmemoflag"/>
- <col ref="oldmemocls"/>
- <col ref="oldmemo"/>
- <script type="javascript" ev:event="xforms-value-changed">
- <![CDATA[
- // 로그인한 사용자의 ID와 다르면 수정 못하도록 해야 한다.
- var col = grd_judgrcmt.col;
- var row = grd_judgrcmt.row;
- var judgrid = grd_judgrcmt.valueMatrix(row, grd_judgrcmt.colRef("judgrid"));
- var userid = model.getValue("/root/init/userid");
-
- if (judgrid != userid) {
- messageBox("타심사자 메모를 변경할 수","I004"); // 타심사자 메모를 변경할 수 없습니다.
- // 이미 수정한 값이 있으면 되돌리고, row 상태 0으로 되돌리기
- grd_judgrcmt.valueMatrix(row, grd_judgrcmt.colRef("memoflag")) = grd_judgrcmt.valueMatrix(row, grd_judgrcmt.colRef("oldmemoflag"));
- grd_judgrcmt.valueMatrix(row, grd_judgrcmt.colRef("memocls")) = grd_judgrcmt.valueMatrix(row, grd_judgrcmt.colRef("oldmemocls"));
- grd_judgrcmt.valueMatrix(row, grd_judgrcmt.colRef("memo")) = grd_judgrcmt.valueMatrix(row, grd_judgrcmt.colRef("oldmemo"));
- grd_judgrcmt.rowstatus(row) = 0;
- return;
- }
-
- var rowstatus = grd_judgrcmt.rowStatus(row);
- if (rowstatus == 1 || rowstatus == 3) {
- model.setValue("/root/main/list1/GridMemo01[" + row+ "]/changeflag","U");
- //model.refresh();
- }
-
- // // 심사자를 바꿀 경우, 로그인한 사용자의 ID와 다르면 수정 못하도록 해야 한다.
- // if (col == grd_judgrcmt.colRef("judgrid")) {
- // var judgrid = grd_judgrcmt.valueMatrix(row, grd_judgrcmt.colRef("judgrid"));
- // var userid = model.getValue("/root/init/userid");
- // if (judgrid != userid) {
- // messageBox("심사자를 변경할 수","I004"); // 심사자를 변경할 수 없습니다.
- // grd_judgrcmt.valueMatrix(row, grd_judgrcmt.colRef("judgrid")) = userid;
- // }
- // }
- ]]>
- </script>
- <script type="javascript" ev:event="onmousedown">
- <![CDATA[
- if (event.button == 3) { // 3 : 오른쪽 버튼
- if (grd_judgrcmt.isCell(event.target) && grd_judgrcmt.mouseRow >= grd_judgrcmt.fixedrows) {
- setPopupMenu("grd_judgrcmt", false, "/root/hidden/popupmenu/judgrcmt/item", "name", "func"); // (tfHelper.js) 컨트롤에서 사용자 팝업 설정 함수
- }
- }
- ]]>
- </script>
- </datagrid>
- <caption id="caption1" class="tit_2" style="left:5px; top:105px; width:625px; height:14px; ">심사 Comment : 본인메모만 수정할 수 있습니다. 다른심사자 메모는 수정불가합니다.</caption>
- <line id="line1" class="line_1" style="x1:0px; y1:120px; x2:921px; y2:120px; "/>
- <button id="btn_addRow" class="btn2_letter3" style="left:813px; top:99px; width:53px; height:19px; ">
- <caption>행추가</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
-
- if (fJudgridCheck()) {
- fAddRow();
- } else {
- messageBox("심사자", "E002");
- }
- ]]>
- </script>
- </button>
- <button id="btn_delRow" class="btn2_letter3" style="left:868px; top:99px; width:53px; height:19px; ">
- <caption>행삭제</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- if (fJudgridCheck()) {
- // 멀티라인 삭제
- var rows = grd_judgrcmt.selectedRows;
- var userid = model.getValue("/root/init/userid");
- for (var i = 0; i < rows; i++) {
- var sel = grd_judgrcmt.selectedRow(i);
- // 로그인한 사용자에 해당되는 메모만 삭제 가능 처리
- if (userid == grd_judgrcmt.valueMatrix(sel,grd_judgrcmt.colRef("judgrid"))) {
- grd_judgrcmt.rowstatus(sel) = "4";
- }
- }
- } else {
- messageBox("심사자","E002");
- }
-
- ]]>
- </script>
- </button>
- <button id="btn_excel" class="btn2_letter4" style="left:692px; top:99px; width:64px; height:19px; ">
- <caption>엑셀저장</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- if (grd_judgrcmt.rows == 1) {
- return;
- }
-
- var fileName = window.fileDialog("save", ",", false, "심사 Comment", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
-
- if (fileName != "")
- {
- grd_judgrcmt.saveExcel(fileName, "SheetName", false, false, "", "");
- messageBox("EXCEL 저장이 완료되었습니다.","I999");
- }
-
- ]]>
- </script>
- </button>
- <datagrid id="grd_tmpjudgrcmt" nodeset="/root/hidden/list1/memolist" visibility="hidden" autoresize="true" caption="메모구분^메모분류^Comment^caption1^oldmemoflag^oldmemocls" colsep="^" colwidth="89, 71, 633, 100" dataheight="23" ellipsis="true" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" style="left:0px; top:388px; width:920px; height:197px; font-family:굴림체; ">
- <col ref="memoflag"/>
- <col ref="memocls"/>
- <col ref="memo"/>
- <col ref="sortno"/>
- </datagrid>
- <button id="addCopy" class="btn2_letter3" style="left:758px; top:99px; width:53px; height:19px; ">
- <caption>행복사</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
-
- if (fJudgridCheck()) {
-
- // 멀티라인 복사
- var rows = grd_judgrcmt.selectedRows;
-
- if (rows <= 0) return;
- // 복사할 행들만 임시 그리드에 담아두도록 하고, 모두 담은뒤 그것을 원래 그리드에 반영하도록 한다.
- // 선택된 행을 돌면서 그리드에 AddRow() 하게 되면 선택해제 상태로 변하게 되어, 처음 하나만 제대로 복사되고 나머지는 빈값으로 되기 때문
- model.removenode("/root/hidden/list1");
- grd_tmpjudgrcmt.refresh();
-
- for (var i = 0; i < rows; i++) {
- var sel = grd_judgrcmt.selectedRow(i); // 복사할 행의 인덱스값
- var memoflag = grd_judgrcmt.valueMatrix(sel, grd_judgrcmt.colRef("memoflag"));
- var memocls = grd_judgrcmt.valueMatrix(sel, grd_judgrcmt.colRef("memocls"));
- var memo = grd_judgrcmt.valueMatrix(sel, grd_judgrcmt.colRef("memo"));
-
- grd_tmpjudgrcmt.AddRow();
-
- model.makeValue("/root/hidden/list1/memolist[" + grd_tmpjudgrcmt.row+ "]/memoflag", memoflag);
- model.makeValue("/root/hidden/list1/memolist[" + grd_tmpjudgrcmt.row + "]/memocls", memocls);
- model.makeValue("/root/hidden/list1/memolist[" + grd_tmpjudgrcmt.row + "]/memo", memo);
- }
-
- grd_tmpjudgrcmt.refresh();
-
- for (var i = 1; i < grd_tmpjudgrcmt.rows; i++) {
-
- var memoflag = grd_tmpjudgrcmt.valueMatrix(i, grd_tmpjudgrcmt.colRef("memoflag"));
- var memocls = grd_tmpjudgrcmt.valueMatrix(i, grd_tmpjudgrcmt.colRef("memocls"));
- var memo = grd_tmpjudgrcmt.valueMatrix(i, grd_tmpjudgrcmt.colRef("memo"));
-
- grd_judgrcmt.AddRow();
-
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/memoflag", memoflag);
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row + "]/memocls", memocls);
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row + "]/judgrid", model.getValue("/root/init/userid"));
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row + "]/memo", memo);
-
- // 자동 행추가에 따른 변경 여부 확인을 위해 추가
- model.makeNode("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/memosel");
- model.makeNode("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/changeflag");
- model.setValue("/root/main/list1/GridMemo01[" + grd_judgrcmt.row+ "]/changeflag","I");
- }
-
- // 그리드 변경 여부 (메모구분/메모분류/comment만 수정 가능하며, 심사자는 수정할 수 없다)
- grd_judgrcmt.colDisabled(grd_judgrcmt.colRef("memoflag")) = false;
- grd_judgrcmt.colDisabled(grd_judgrcmt.colRef("memocls")) = false;
- grd_judgrcmt.colDisabled(grd_judgrcmt.colRef("judgrid")) = true;
- grd_judgrcmt.colDisabled(grd_judgrcmt.colRef("memo")) = false;
-
- // 조회 심사자에 로그인 사용자가 선택되도록 한다.
- model.setValue("/root/send/judgrID01",model.getValue("/root/init/userid"));
- cmb_JudgrID01.refresh();
-
- } else {
- messageBox("심사자", "E002");
- }
- ]]>
- </script>
- </button>
- <button id="button1" class="btn2_letter4" style="left:626px; top:99px; width:64px; height:19px; ">
- <caption>자동순서</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
- var userid = getUserId();
- var cnt = 0;
- for (var i = grd_judgrcmt.fixedRows; i < grd_judgrcmt.rows; i++) {
- // 로그인한 사용자에 해당되는 메모만 삭제 가능 처리
- if ((userid == grd_judgrcmt.valueMatrix(i,grd_judgrcmt.colRef("judgrid"))) && grd_judgrcmt.rowstatus(i) != 4) {
- grd_judgrcmt.valueMatrix(i,grd_judgrcmt.colRef("sortno")) = ++cnt;
- if (grd_judgrcmt.rowstatus(i) == 4 || grd_judgrcmt.rowstatus(i) == 1 ){
- grd_judgrcmt.rowstatus(i) = grd_judgrcmt.rowstatus(i);
- } else {
- grd_judgrcmt.rowstatus(i) = 2;
- }
-
- }
- }
- ]]>
- </script>
- <hint>
- <![CDATA[화면리스트 기준으로 1부터 순서를 자동생성하는 기능.
- *기존 순서는 삭제됩니다.
- *조회를 구분별,메모분류별로 상세조회후 실행해 주세요.]]>
- </hint>
- </button>
- </group>
- <group id="group4" scroll="auto" style="left:0px; top:668px; width:927px; height:27px; ">
- <line id="line23" class="line_6" style="x1:0px; y1:0px; x2:927px; y2:0px; "/>
- <button id="button38" class="btn4_letter3" style="left:847px; top:5px; width:68px; height:22px; ">
- <caption>초기화</caption>
- <script type="javascript" ev:event="onclick">
- <![CDATA[
- fInitialize();
-
- // 데이터 입력을 위하여 임시로 막아 놓음... 박도형
- // judgridCheck();
-
- // 자동 한줄 추가 요청에 따라 추가
- //fAddRow();
- ]]>
- </script>
- </button>
- <button id="button12" class="btn6_letter2" style="left:0px; top:5px; width:56px; height:22px; ">
- <caption>출력</caption>
- </button>
- <button id="btn_save" class="btn4_letter2" style="left:789px; top:5px; width:56px; height:22px; ">
- <caption>저장</caption>
- <script type="javascript" ev:event="DOMActivate">
- <![CDATA[
-
- if (fJudgridCheck()) {
-
- // 1. 데이터 검사(그리드 말고 인스턴스를 돌아야 하지 않을까 한다.->콤보값을 갖고오지 못하는 듯함)
- var rows = grd_judgrcmt.rows;
- for(var i = 1; i<rows; i++) {
-
- var rowstatus = grd_judgrcmt.rowstatus(i);
- if (rowstatus == 1 || rowstatus == 3) {
- if(grd_judgrcmt.valueMatrix(i,grd_judgrcmt.colRef("memo")) == "") {
- messageBox("Comment를","C001");
- //model.setFocus(grd_judgrcmt.valueMatrix(i,5));
- return false;
- }
- }
- }
-
- // 2. 저장 또는 수정 또는 삭제
- var updtdata = getGridUpdateData(grd_judgrcmt);
-
- if (updtdata == "") { // 변경된 데이터가 없는경우
- messageBox("변경된 데이터가","I004"); // 변경된 데이이터가 없습니다.
- return false;
- } else {
- var rtn = messageBox("", "Q002") ;
- if (rtn != 6) return;
- model.setValue("/root/send/cmtUpdate/datalist",updtdata);
- if ( submit("TXPIB00601") ) {
- model.resetInstanceNode("/root/main/list1");
- model.resetInstanceNode("/root/main/list2");
- submit("TRPIB00601"); // submit() 성공하면 그리드의 i,u,d 상태 제거
- messageBox("정상적으로 저장되었습니다.", "I999");
- }
- model.resetInstanceNode("/root/send/cmtUpdate/datalist");
- //model.refresh();
- }
-
- } else {
- messageBox("심사자","E002");
- }
-
- ]]>
- </script>
- </button>
- </group>
- </xhtml:body>
- </xhtml:html>
|