SMRPV07700_평가메인.xrw 47 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  3. <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">
  4. <xhtml:head>
  5. <xhtml:title>평가메인화면</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <valujobsche>
  11. <valujobschelist/>
  12. </valujobsche>
  13. <rpvdqana>
  14. <rpvdqanalist/>
  15. </rpvdqana>
  16. <rpvdalet>
  17. <rpvdaletlist/>
  18. </rpvdalet>
  19. <list>
  20. <scrfileinfo>
  21. <fileinfolist/>
  22. </scrfileinfo>
  23. </list>
  24. <smsdata>
  25. <bizabbr/>
  26. <replytelno/>
  27. <rsrvyn/>
  28. <rsrvdate/>
  29. <rsrvtime/>
  30. <msgcnts/>
  31. <recvrlist>
  32. <chk/>
  33. <recvrnm/>
  34. <recvrtelno/>
  35. </recvrlist>
  36. </smsdata>
  37. <maildata>
  38. <fromaddress/>
  39. <fromname/>
  40. <toaddress/>
  41. <ccaddress/>
  42. <subject/>
  43. <msg/>
  44. <attach>
  45. <file/>
  46. <filename/>
  47. <filesize/>
  48. </attach>
  49. </maildata>
  50. <rpvdaletitem>
  51. <detlcnts/>
  52. <cnts/>
  53. </rpvdaletitem>
  54. <fileinfo>
  55. <fileinfolist/>
  56. </fileinfo>
  57. </main>
  58. <send>
  59. <emplno/>
  60. <seqno/>
  61. <wrtedd/>
  62. <fileflag/>
  63. <save>
  64. <rpvdqanalist/>
  65. <rpvdaletlist/>
  66. </save>
  67. <valujobsche>
  68. <emplno/>
  69. <appdd/>
  70. <tretyn/>
  71. <valuyy/>
  72. </valujobsche>
  73. <fileupload>
  74. <file/>
  75. </fileupload>
  76. <updqrycnt>
  77. <emplno/>
  78. <seqno/>
  79. <wrtedd/>
  80. <qrycnt/>
  81. </updqrycnt>
  82. <fileinfo>
  83. <valuyy/>
  84. <instcd/>
  85. <deptcd/>
  86. <emplno/>
  87. <goalflag/>
  88. <fstscndhfyyflag/>
  89. <valuclscd/>
  90. <valumdlcd/>
  91. <valuclsdetlcd/>
  92. <publbaseflag/>
  93. <idxcd/>
  94. <seqno/>
  95. <tableflag/>
  96. <wrtedd/>
  97. <fileflag/>
  98. </fileinfo>
  99. <save2>
  100. <fileinfolist/>
  101. </save2>
  102. </send>
  103. <init>
  104. </init>
  105. <hidden/>
  106. <temp>
  107. <trgtemplno/>
  108. </temp>
  109. <source>
  110. <emplnodata/>
  111. </source>
  112. </root>
  113. </instance>
  114. <script type="javascript" ev:event="xforms-ready">
  115. <![CDATA[
  116. fInitialize();
  117. ]]>
  118. </script>
  119. <submission id="TRRPV07701" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/valujobsche" resultref="/root/main/valujobsche"/>
  120. <submission id="TXRPV07701" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/valujobsche" resultref="/root/hidden/temp"/>
  121. <submission id="TRRPV07702" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" resultref="/root/main/rpvdqana/rpvdqanalist"/>
  122. <submission id="TXRPV07702" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" resultref="/root/temp"/>
  123. <submission id="TRRPV07703" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/valujobsche" resultref="/root/main/rpvdalet/rpvdaletlist"/>
  124. <submission id="TXRPV07704" mediatype="multipart/form-data" method="form-data-post" ref="/root/send" resultref="/root/temp"/>
  125. <script type="javascript" ev:event="xforms-model-destruct">
  126. <![CDATA[
  127. if (getGridUpdateData(grd_rpvdqanalist) != "" || getGridUpdateData(grd_rpvdaletlist) != "") {
  128. var save_val = messageBox("변경된 자료가 존재 합니다. ", "Q002");
  129. if (save_val == "6") {
  130. btn_save.dispatch("DOMActivate");
  131. }
  132. }
  133. ]]>
  134. </script>
  135. <submission id="TXRPV07703" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save/rpvdaletlist" resultref="/root/temp"/>
  136. <submission id="TXRPV07705" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/updqrycnt" resultref="/root/temp"/>
  137. <submission id="TRRPV05705" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/fileinfo" resultref="/root/main/fileinfo"/>
  138. <submission id="TXRPV05704" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save2" resultref="/root/hidden/temp"/>
  139. <submission id="TRRPV05704" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main"/>
  140. <submission id="TRRPV05801" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/source" resultref="/root/source/emplnodata"/>
  141. </model>
  142. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  143. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  144. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  145. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  146. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  147. <script type="javascript" src="../../../mis/valuationmngtweb/js/RPV001.js"/>
  148. <script type="javascript" src="../../../com/shortmsgweb/js/ZMS001.js"/>
  149. <script type="javascript" src="../../../com/emailsenderweb/js/ZME001.js"/>
  150. <script type="javascript">
  151. <![CDATA[
  152. function fCheckProgram()
  153. {
  154. var fProgramID = grd_valujobschelist.valueMatrix(grd_valujobschelist.row, grd_valujobschelist.colRef("program"));
  155. var fEmplno = "";
  156. var fEmplnm = "";
  157. if( "SMRPV05900" == fProgramID || "SMRPV06300" == fProgramID || "SMRPV06400" == fProgramID ||
  158. "SMRPV06500" == fProgramID || "SMRPV07200" == fProgramID || "SMRPV04300" == fProgramID || "SMRPV03600" == fProgramID ||
  159. "SMRPV07400" == fProgramID || "SMRPV07500" == fProgramID || "SMRPV01900" == fProgramID)
  160. {
  161. fEmplno = grd_valujobschelist.valueMatrix(grd_valujobschelist.row, grd_valujobschelist.colRef("deliveemplno"))
  162. fEmplnm = grd_valujobschelist.valueMatrix(grd_valujobschelist.row, grd_valujobschelist.colRef("deliveemplnm"))
  163. }else
  164. {
  165. fEmplno = grd_valujobschelist.valueMatrix(grd_valujobschelist.row, grd_valujobschelist.colRef("trgtemplno"));
  166. fEmplnm = grd_valujobschelist.valueMatrix(grd_valujobschelist.row, grd_valujobschelist.colRef("trgtemplnm"));
  167. }
  168. model.makeValue("/root/source/valuyy", grd_valujobschelist.valueMatrix(grd_valujobschelist.row, grd_valujobschelist.colRef("valuyy")));
  169. model.makeValue("/root/source/emplno", fEmplno);
  170. submit("TRRPV05801");
  171. model.makeValue("/root/source/bizgoalkpi/valuempllist/trgtemplno", fEmplno);
  172. model.makeValue("/root/source/bizgoalkpi/valuempllist/trgtemplnm", fEmplnm);
  173. model.makeValue("/root/source/bizgoalkpi/valuempllist/fromdd", grd_valujobschelist.valueMatrix(grd_valujobschelist.row, grd_valujobschelist.colRef("fromdd")));
  174. modal(grd_valujobschelist.valueMatrix(grd_valujobschelist.row, grd_valujobschelist.colRef("program")), "", "", "", "", "/root/source/bizgoalkpi/valuempllist" , "/root/target");
  175. }
  176. function fInitialize()
  177. {
  178. /* Grid 초기화 */
  179. misfGridInit(grd_valujobschelist);
  180. misfGridInit(grd_rpvdqanalist);
  181. misfGridInit(grd_rpvdaletlist);
  182. misfGridInit(grd_filelist);
  183. grd_rpvdqanalist.fixedcellcheckbox(0, 1) = true;
  184. grd_valujobschelist.fixedcellcheckbox(0, 1) = true;
  185. grd_rpvdaletlist.fixedcellcheckbox(0, 1) = true;
  186. /* Submit의 ref에 참조 될 Node들은 꼭 Instance에 생성 해야 함.*/
  187. /* Grid의 Mater, Detail관계 설정
  188. misfMsterDetailSet(관계설정할 Grid, Mater가 될 Grid, submit ID, 저장여부) */
  189. misfMsterDetailSet(grd_valujobschelist,null, "TRRPV07701" ,"N");
  190. misfMsterDetailSet(grd_rpvdqanalist, null, "TRRPV07702" ,"Y");
  191. misfMsterDetailSet(grd_rpvdaletlist, null, "TRRPV07703" ,"Y");
  192. var curdate = getCurrentDate();
  193. model.setValue(ipt_appdd.attribute("ref") , curdate);
  194. model.setValue(ipt_valuyy.attribute("ref") , curdate.substr(0, 4));
  195. rpvfComboValuCdList(curdate.substr(0,4) , "TRETFLAG,PROGRAM", "cmb_tretflag,grd_valujobschelist.program");
  196. addComboItem( "cmb_tretflag", "[-- 전체 --]", "%", "above");
  197. model.setValue("/root/send/valujobsche/emplno", getUserInfo("userid"));
  198. submit("TXRPV07701");
  199. btn_search.dispatch("DOMActivate");
  200. }
  201. function fExeBizPlnFileUpload(pGrid)
  202. {
  203. var maxsize = upd_uploadfile.attribute("filesize");
  204. files = window.fileDialog("open", "|", false);
  205. if (files.length <= 0 ) return;
  206. model.setValue(ipt_uploadfile.attribute("ref"),files);
  207. // if (!checkFileSize(upd_uploadfile))
  208. // {
  209. // model.setValue(ipt_uploadfile.attribute("ref"),"");
  210. // messageBox("파일 크기가 최대치("+maxsize+"Byte)를", "E003");
  211. // }
  212. ipt_uploadfile.refresh();
  213. model.setValue("/root/send/emplno", pGrid.valueMatrix(pGrid.row, pGrid.colRef("emplno")));
  214. model.setValue("/root/send/seqno", pGrid.valueMatrix(pGrid.row, pGrid.colRef("seqno")));
  215. model.setValue("/root/send/wrtedd", pGrid.valueMatrix(pGrid.row, pGrid.colRef("wrtedd")));
  216. if(btn_qna.selected == true) {
  217. model.setValue("/root/send/fileflag", "2");
  218. }
  219. else if (btn_cmt.selected == true ) {
  220. model.setValue("/root/send/fileflag", "1");
  221. }
  222. submit("TXRPV07704");
  223. }
  224. function fGetBizFileDownload(pGrid)
  225. {
  226. misfGridInit(grd_fileinfo);
  227. misfGridIUD(grd_fileinfo, "A");
  228. grd_fileinfo.refresh();
  229. model.setValue(grd_fileinfo.nodeset + "[" + (grd_fileinfo.fixedRows)+ "]/valuyy", getCurrentDate());
  230. model.setValue(grd_fileinfo.nodeset + "[" + (grd_fileinfo.fixedRows)+ "]/emplno", pGrid.valueMatrix(pGrid.row, pGrid.colRef("emplno")));
  231. model.setValue(grd_fileinfo.nodeset + "[" + (grd_fileinfo.fixedRows)+ "]/seqno", pGrid.valueMatrix(pGrid.row, pGrid.colRef("seqno")));
  232. model.setValue(grd_fileinfo.nodeset + "[" + (grd_fileinfo.fixedRows)+ "]/wrtedd", pGrid.valueMatrix(pGrid.row, pGrid.colRef("wrtedd")));
  233. model.setValue(grd_fileinfo.nodeset + "[" + (grd_fileinfo.fixedRows)+ "]/tableflag", "3"); // 인사평가 첨부화일을 읽어들일 테이블 설정.임의적으로 3로 설정하면 인사평가첨보화일내역 테이블을 조회.
  234. if(btn_qna.selected == true) {
  235. model.setValue(grd_fileinfo.nodeset + "[" + (grd_fileinfo.fixedRows)+ "]/fileflag", "2");
  236. }
  237. else if (btn_cmt.selected == true ) {
  238. model.setValue(grd_fileinfo.nodeset + "[" + (grd_fileinfo.fixedRows)+ "]/fileflag", "1");
  239. }
  240. //alert( grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row, grd_rpvdaletlist.colRef("seqno")) );
  241. rpvfOpenPopUpList("28",grd_fileinfo,"","emplno","valuyy,emplno,seqno,wrtedd,tableflag,fileflag","valuyy,emplno,seqno,wrtedd,tableflag,fileflag","");
  242. }
  243. function fSendMsg()
  244. {
  245. misfGridInit(grd_msg);
  246. var fPhone = '';
  247. var sPhone = '';
  248. model.setValue("/root/main/smsdata/bizabbr", "mis");
  249. model.setValue("/root/main/smsdata/replytelno", "112");
  250. model.setValue("/root/main/smsdata/rsrvyn", "0");
  251. model.setValue("/root/main/smsdata/rsrvdate", getCurrentDate());
  252. model.setValue("/root/main/smsdata/rsrvtime", getCurrentTime().substr(0,4));
  253. model.setValue("/root/main/smsdata/msgcnts", "");
  254. if (btn_sche.selected == true) {
  255. if (grd_valujobschelist.rows - grd_valujobschelist.fixedRows > 0) {
  256. model.setValue("/root/main/smsdata/replytelno", grd_valujobschelist.valueMatrix(grd_valujobschelist.fixedRows, grd_valujobschelist.colRef("phone")));
  257. }
  258. for(var i = grd_valujobschelist.fixedRows; i < grd_valujobschelist.rows; i++ )
  259. {
  260. if(grd_valujobschelist.valueMatrix(i, grd_valujobschelist.colRef("chk")) == "true")
  261. {
  262. if(grd_valujobschelist.valueMatrix(i, grd_valujobschelist.colRef("trgtphone")) != '')
  263. {
  264. misfGridIUD(grd_msg, "A");
  265. fPhone = grd_valujobschelist.valueMatrix(i, grd_valujobschelist.colRef("trgtphone")).split("-");
  266. sPhone = '';
  267. for(var p = 0; p < fPhone.length; p++ )
  268. {
  269. sPhone += fPhone[p];
  270. }
  271. grd_msg.valueMatrix(grd_msg.row, grd_msg.colRef("chk")) = 'Y';
  272. grd_msg.valueMatrix(grd_msg.row, grd_msg.colRef("recvrnm")) = grd_valujobschelist.valueMatrix(i, grd_valujobschelist.colRef("trgtemplnm"));
  273. grd_msg.valueMatrix(grd_msg.row, grd_msg.colRef("recvrtelno")) = sPhone;
  274. }
  275. }
  276. }
  277. }
  278. else if (btn_qna.selected == true ) {
  279. if (grd_rpvdqanalist.rows - grd_rpvdqanalist.fixedRows > 0) {
  280. model.setValue("/root/main/smsdata/replytelno", grd_rpvdqanalist.valueMatrix(grd_rpvdqanalist.fixedRows, grd_rpvdqanalist.colRef("trgtphone")));
  281. }
  282. for(var i = grd_rpvdqanalist.fixedRows; i < grd_rpvdqanalist.rows; i++ )
  283. {
  284. if(grd_rpvdqanalist.valueMatrix(i, grd_rpvdqanalist.colRef("chk")) == "true")
  285. {
  286. if(grd_rpvdqanalist.valueMatrix(i, grd_rpvdqanalist.colRef("phone")) != '')
  287. {
  288. misfGridIUD(grd_msg, "A");
  289. fPhone = grd_rpvdqanalist.valueMatrix(i, grd_rpvdqanalist.colRef("phone")).split("-");
  290. sPhone = '';
  291. for(var p = 0; p < fPhone.length; p++ )
  292. {
  293. sPhone += fPhone[p];
  294. }
  295. grd_msg.valueMatrix(grd_msg.row, grd_msg.colRef("chk")) = 'Y';
  296. grd_msg.valueMatrix(grd_msg.row, grd_msg.colRef("recvrnm")) = grd_rpvdqanalist.valueMatrix(i, grd_rpvdqanalist.colRef("emplnm"));
  297. grd_msg.valueMatrix(grd_msg.row, grd_msg.colRef("recvrtelno")) = sPhone;
  298. }
  299. }
  300. }
  301. }
  302. else if (btn_cmt.selected == true ) {
  303. if (grd_rpvdaletlist.rows - grd_rpvdaletlist.fixedRows > 0) {
  304. model.setValue("/root/main/smsdata/replytelno", grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.fixedRows, grd_rpvdaletlist.colRef("trgtphone")));
  305. }
  306. for(var i = grd_rpvdaletlist.fixedRows; i < grd_rpvdaletlist.rows; i++ )
  307. {
  308. if(grd_rpvdaletlist.valueMatrix(i, grd_rpvdaletlist.colRef("chk")) == "true")
  309. {
  310. if(grd_rpvdaletlist.valueMatrix(i, grd_rpvdaletlist.colRef("phone")) != '')
  311. {
  312. misfGridIUD(grd_msg, "A");
  313. fPhone = grd_rpvdaletlist.valueMatrix(i, grd_rpvdaletlist.colRef("phone")).split("-");
  314. sPhone = '';
  315. for(var p = 0; p < fPhone.length; p++ )
  316. {
  317. sPhone += fPhone[p];
  318. }
  319. grd_msg.valueMatrix(grd_msg.row, grd_msg.colRef("chk")) = 'Y';
  320. grd_msg.valueMatrix(grd_msg.row, grd_msg.colRef("recvrnm")) = grd_rpvdaletlist.valueMatrix(i, grd_rpvdaletlist.colRef("emplnm"));
  321. grd_msg.valueMatrix(grd_msg.row, grd_msg.colRef("recvrtelno")) = sPhone;
  322. }
  323. }
  324. }
  325. }
  326. zmsfOpenSMS("/root/main/smsdata");
  327. }
  328. function fSendEmail()
  329. {
  330. var fEmail = '';
  331. if(btn_sche.selected == true)
  332. {
  333. //model.setValue("/root/main/maildata/fromaddress", grd_valujobschelist.valueMatrix(grd_valujobschelist.fixedRows, grd_valujobschelist.colRef("trgtemail")));
  334. model.setValue("/root/main/maildata/fromaddress", grd_valujobschelist.valueMatrix(grd_valujobschelist.fixedRows, grd_valujobschelist.colRef("email")).getTrim()); // 보내는 사람의 E-mail 주소
  335. }else if(btn_qna.selected == true)
  336. {
  337. model.setValue("/root/main/maildata/fromaddress", grd_rpvdqanalist.valueMatrix(grd_rpvdqanalist.fixedRows, grd_rpvdqanalist.colRef("tretemail")).getTrim()) ; // 보내는 사람의 E-mail 주소
  338. }else if(btn_cmt.selected == true )
  339. {
  340. model.setValue("/root/main/maildata/fromaddress",grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.fixedRows, grd_rpvdaletlist.colRef("trgtemail")).getTrim()); // 보내는 사람의 E-mail 주소
  341. }
  342. model.setValue("/root/main/maildata/fromname", getUserInfo("usernm")); // 보내는 사람명
  343. if (btn_sche.selected == true) {
  344. for(var i = grd_valujobschelist.fixedRows; i < grd_valujobschelist.rows; i++ )
  345. {
  346. if(grd_valujobschelist.valueMatrix(i, grd_valujobschelist.colRef("chk")) == "true")
  347. {
  348. if(grd_valujobschelist.valueMatrix(i, grd_valujobschelist.colRef("trgtemail")).getTrim() != '')
  349. {
  350. if(fEmail.length >0)
  351. {
  352. fEmail += ';';
  353. }
  354. fEmail += grd_valujobschelist.valueMatrix(i, grd_valujobschelist.colRef("trgtemail")).getTrim();
  355. }
  356. }
  357. }
  358. }
  359. else if (btn_qna.selected == true ) {
  360. for(var i = grd_rpvdqanalist.fixedRows; i < grd_rpvdqanalist.rows; i++ )
  361. {
  362. if(grd_rpvdqanalist.valueMatrix(i, grd_rpvdqanalist.colRef("chk")) == "true")
  363. {
  364. if(grd_rpvdqanalist.valueMatrix(i, grd_rpvdqanalist.colRef("email")).getTrim() != '')
  365. {
  366. if(fEmail.length >0)
  367. {
  368. fEmail += ';';
  369. }
  370. fEmail += grd_rpvdqanalist.valueMatrix(i, grd_rpvdqanalist.colRef("email")).getTrim();
  371. }
  372. }
  373. }
  374. }
  375. else if (btn_cmt.selected == true ) {
  376. for(var i = grd_rpvdaletlist.fixedRows; i < grd_rpvdaletlist.rows; i++ )
  377. {
  378. if(grd_rpvdaletlist.valueMatrix(i, grd_rpvdaletlist.colRef("chk")) == "true")
  379. {
  380. if(grd_rpvdaletlist.valueMatrix(i, grd_rpvdaletlist.colRef("email")).getTrim() != '')
  381. {
  382. if(fEmail.length >0)
  383. {
  384. fEmail += ';';
  385. }
  386. fEmail += grd_rpvdaletlist.valueMatrix(i, grd_rpvdaletlist.colRef("email")).getTrim();
  387. }
  388. }
  389. }
  390. }
  391. model.setValue("/root/main/maildata/toaddress", fEmail); // 받는이 이메일 주소 여러명일때 구분자 ';'
  392. model.setValue("/root/main/maildata/ccaddress", ''); // 참조인 이메일 주소
  393. model.setValue("/root/main/maildata/subject", ''); // 제목
  394. model.setValue("/root/main/maildata/msg", ''); // 전송메세지
  395. //zmefOpenMail("/root/main/maildata");
  396. rpvfOpenMail(10, 10, "/root/main/maildata");
  397. }
  398. ]]>
  399. </script>
  400. </xhtml:head>
  401. <xhtml:body style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  402. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  403. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">평가메인화면</caption>
  404. </group>
  405. <group id="group2" scroll="auto" style="left:0px; top:38; width:1195px; height:744; ">
  406. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" ellipsewidth="20" ellipseheight="20" style="left:0; top:10; width:1195; height:35px; "/>
  407. <line id="line13" class="line_4" style="x1:1110px; y1:16px; x2:1110px; y2:38px; "/>
  408. <button id="btn_search" class="btn1_letter2" style="left:1125px; top:16px; width:56px; height:22px; ">
  409. <caption>조회</caption>
  410. <script type="javascript" ev:event="DOMActivate">
  411. <![CDATA[
  412. if ( !isRequiredControls("ipt_appdd" ) ) {
  413. return false;
  414. }
  415. model.setValue("/root/main/rpvdaletitem/detlcnts","");
  416. model.setValue("/root/main/rpvdaletitem/cnts","");
  417. misfMsterDetailRetrieve();
  418. var instcd = getUserInfo("dutplceinstcd");
  419. var emplno = getUserInfo("userid");
  420. rpvfGetUserAuth(instcd,emplno);
  421. if(DUTY_VALU_YN =='Y'){
  422. for(var i = grd_rpvdqanalist.fixedRows; i < grd_rpvdqanalist.rows; i++)
  423. {
  424. grd_rpvdqanalist.isReadOnly(i, grd_rpvdqanalist.colRef("tretcnts")) = false;
  425. grd_rpvdqanalist.isReadOnly(i, grd_rpvdqanalist.colRef("up")) = false;
  426. }
  427. for(var i = grd_rpvdaletlist.fixedRows; i < grd_rpvdaletlist.rows; i++)
  428. {
  429. grd_rpvdaletlist.isReadOnly(i, grd_rpvdaletlist.colRef("up")) = false;
  430. grd_rpvdaletlist.isReadOnly(i, grd_rpvdaletlist.colRef("cnts")) = false;
  431. ipt_cnts.disabled = false;
  432. txt_detlcnts.disabled = false;
  433. // var detlcnts=grd_rpvdaletlist.valueMatrix(i,grd_rpvdaletlist.colRef("detlcnts"));
  434. // model.setValue("/root/main/rpvdaletitem/detlcnts",detlcnts);
  435. }
  436. }else{
  437. for(var i = grd_rpvdqanalist.fixedRows; i < grd_rpvdqanalist.rows; i++)
  438. {
  439. grd_rpvdqanalist.isReadOnly(i, grd_rpvdqanalist.colRef("tretcnts")) = true;
  440. grd_rpvdqanalist.isReadOnly(i, grd_rpvdqanalist.colRef("up")) = true;
  441. }
  442. for(var i = grd_rpvdaletlist.fixedRows; i < grd_rpvdaletlist.rows; i++)
  443. {
  444. grd_rpvdaletlist.isReadOnly(i, grd_rpvdaletlist.colRef("up")) = true;
  445. grd_rpvdaletlist.isReadOnly(i, grd_rpvdaletlist.colRef("cnts")) = true;
  446. ipt_cnts.disabled = true;
  447. txt_detlcnts.disabled = true;
  448. // var detlcnts=grd_rpvdaletlist.valueMatrix(i,grd_rpvdaletlist.colRef("detlcnts"));
  449. // model.setValue("/root/main/rpvdaletitem/detlcnts",detlcnts);
  450. }
  451. }
  452. // 인사팀이 아니면 답변을 할 수 없도록 설정.
  453. // if(getUserInfo("posdeptcd") != '4020500000'){
  454. // for(var i = grd_rpvdqanalist.fixedRows; i < grd_rpvdqanalist.rows; i++)
  455. // {
  456. // grd_rpvdqanalist.isReadOnly(i, grd_rpvdqanalist.colRef("tretcnts")) = true;
  457. // grd_rpvdqanalist.isReadOnly(i, grd_rpvdqanalist.colRef("up")) = true;
  458. //
  459. //
  460. // }
  461. //
  462. // for(var i = grd_rpvdaletlist.fixedRows; i < grd_rpvdaletlist.rows; i++)
  463. // {
  464. // grd_rpvdaletlist.isReadOnly(i, grd_rpvdaletlist.colRef("up")) = true;
  465. // grd_rpvdaletlist.isReadOnly(i, grd_rpvdaletlist.colRef("cnts")) = true;
  466. // var detlcnts=grd_rpvdaletlist.valueMatrix(i,grd_rpvdaletlist.colRef("detlcnts"));
  467. // model.setValue("/root/main/rpvdaletitem/detlcnts",detlcnts);
  468. // }
  469. // }
  470. ]]>
  471. </script>
  472. </button>
  473. <caption id="cap_appdd" class="search_name" style="left:260px; top:19px; width:100px; height:17px; vertical-align:middle; ">기준일자 :</caption>
  474. <input id="ipt_appdd" ref="/root/send/valujobsche/appdd" class="input_s_essential" inputtype="date" format="yyyy-mm-dd" style="left:348px; top:18px; width:125px; height:19px; "/>
  475. <switch id="switch1" style="left:0px; top:73px; width:1194px; height:667px; ">
  476. <case id="case1" selected="true">
  477. <datagrid id="grd_valujobschelist" nodeset="/root/main/valujobsche/valujobschelist" caption="^기간^기간^대상자^내용^전달자^프로그램^프로그램^처리여부^사원번호^적용일자^일련번호^대상자사원번호^전달자사원번호^처리자핸드폰|^시작일^종료일^대상자^내용^전달자^프로그램^프로그램^처리여부^사원번호^적용일자^일련번호^대상자사원번호^전달자사원번호^처리자핸드폰" colsep="^" colwidth="24, 95, 100, 121, 458, 92, 207, 17, 35, 77, 63, 42, 80, 96, 48, 100, 100, 100" dataheight="25" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" style="left:0px; top:0px; width:1190px; height:660px; ">
  478. <col ref="chk" type="checkbox"/>
  479. <col disabled="true" ref="fromdd" type="inputdate"/>
  480. <col disabled="true" ref="todd" type="inputdate"/>
  481. <col ref="trgtemplnm"/>
  482. <col ref="cnts"/>
  483. <col ref="deliveemplnm"/>
  484. <col disabled="true" ref="program" type="combo">
  485. <choices>
  486. <itemset>
  487. <label/>
  488. <value/>
  489. </itemset>
  490. </choices>
  491. </col>
  492. <col ref="start" type="inputbutton"/>
  493. <col checkvalue="Y,N" disabled="true" ref="tretyn" type="checkbox"/>
  494. <col ref="emplno" visibility="hidden"/>
  495. <col ref="appdd" visibility="hidden"/>
  496. <col ref="seqno" visibility="hidden"/>
  497. <col ref="trgtemplno" visibility="hidden"/>
  498. <col ref="deliveemplno" visibility="hidden"/>
  499. <col ref="trgtphone" visibility="hidden"/>
  500. <col ref="phone" visibility="hidden"/>
  501. <col ref="email" visibility="hidden"/>
  502. <col ref="trgtemail" visibility="hidden"/>
  503. <col ref="valuyy" visibility="hidden"/>
  504. <script type="javascript" ev:event="onbuttonclick">
  505. <![CDATA[
  506. //프로그램 팝업.
  507. if( grd_valujobschelist.col == grd_valujobschelist.colRef("start") )
  508. {
  509. if(grd_valujobschelist.valueMatrix(grd_valujobschelist.row, grd_valujobschelist.colRef("program")) != "")
  510. {
  511. //프로그램 ID 선별 하여 넘겨질 사용자 구분(대상자인지 전달자인지...구분.)
  512. fCheckProgram();
  513. }
  514. }
  515. ]]>
  516. </script>
  517. </datagrid>
  518. </case>
  519. <case id="case2">
  520. <datagrid id="grd_rpvdqanalist" nodeset="/root/main/rpvdqana/rpvdqanalist" autoresize="true" caption="^작성일자^의뢰자^의뢰자^의뢰자^의뢰자^의뢰자^질문^답변^등록^조회수정^답변자^답변자^답변자^답변일자^처리자핸드폰|^작성일자^기관^부서^직책^사번^성명^질문^답변^등록^조회수정^기관^부서^성명^답변일자^처리자핸드폰" colsep="^" colwidth="20, 71, 78, 69, 67, 59, 57, 253, 237, 33, 35, 73, 71, 66, 84, 50, 100, 100, 100, 100, 100, 100, 100" ellipsis="true" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" tooltip="true" style="left:0px; top:0px; width:1190px; height:660px; ">
  521. <col ref="chk" type="checkbox"/>
  522. <col ref="wrtedd" format="yyyy-mm-dd" _key="true" style="text-align:center; "/>
  523. <col ref="instnm"/>
  524. <col ref="deptnm"/>
  525. <col ref="jobrespnm" visibility="hidden"/>
  526. <col ref="emplno" visibility="hidden" _key="true" style="text-align:center; "/>
  527. <col ref="emplnm" style="text-align:center; "/>
  528. <col ref="cnts" type="input" _key="true" style="text-align:left; "/>
  529. <col ref="tretcnts" type="input" style="text-align:left; "/>
  530. <col ref="up" type="inputbutton"/>
  531. <col ref="down" type="inputbutton"/>
  532. <col ref="tretinstnm" style="text-align:center; "/>
  533. <col ref="tretdeptnm"/>
  534. <col ref="tretemplnm" style="text-align:center; "/>
  535. <col disabled="true" ref="answerdd" type="inputdate"/>
  536. <col ref="trgtphone" visibility="hidden"/>
  537. <col ref="seqno" visibility="hidden"/>
  538. <col ref="tretyn" visibility="hidden"/>
  539. <col ref="tretflag" visibility="hidden"/>
  540. <col ref="phone" visibility="hidden"/>
  541. <col ref="email" visibility="hidden"/>
  542. <col ref="tretemail" visibility="hidden"/>
  543. <col ref="tretemplno" visibility="hidden"/>
  544. <script type="javascript" ev:event="xforms-value-changed">
  545. <![CDATA[
  546. if(grd_rpvdqanalist.colRef("tretcnts") == grd_rpvdqanalist.col)
  547. {
  548. grd_rpvdqanalist.valueMatrix(grd_rpvdqanalist.row, grd_rpvdqanalist.colRef("tretemplno")) = getUserInfo("userid");
  549. grd_rpvdqanalist.valueMatrix(grd_rpvdqanalist.row, grd_rpvdqanalist.colRef("tretemplnm")) = getUserInfo("usernm");
  550. }
  551. ]]>
  552. </script>
  553. <script type="javascript" ev:event="onbuttonclick">
  554. <![CDATA[
  555. if( grd_rpvdqanalist.colRef("up") == grd_rpvdqanalist.col)
  556. {
  557. fExeBizPlnFileUpload(grd_rpvdqanalist);
  558. }else if( grd_rpvdqanalist.colRef("down") == grd_rpvdqanalist.col)
  559. {
  560. fGetBizFileDownload(grd_rpvdqanalist);
  561. }
  562. ]]>
  563. </script>
  564. </datagrid>
  565. <datagrid id="grd_msg" nodeset="/root/main/smsdata/recvrlist" visibility="hidden" caption="체크여부^이름^전화번호" colsep="^" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:230px; top:125px; width:310px; height:125px; ">
  566. <col ref="chk"/>
  567. <col ref="recvrnm"/>
  568. <col ref="recvrtelno"/>
  569. </datagrid>
  570. </case>
  571. <case id="case3">
  572. <datagrid id="grd_rpvdaletlist" nodeset="/root/main/rpvdalet/rpvdaletlist" caption="^작성일자^작성자^작성자^작성자^제목^상세내용^등록^조회&#xA;수정^조회수^처리자핸드폰|^작성일자^기관^부서^성명^제목^상세내용^등록^조회&#xA;수정^조회수^처리자핸드폰" colsep="^" colwidth="25, 68, 114, 95, 62, 204, 82, 102, 44, 57, 48, 100, 100, 100, 100, 100" ellipsis="true" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" tooltip="true" style="left:0px; top:0px; width:830px; height:660px; ">
  573. <col ref="chk" type="checkbox"/>
  574. <col ref="wrtedd" format="yyyy-mm-dd" _key="true"/>
  575. <col ref="instnm"/>
  576. <col ref="deptnm"/>
  577. <col ref="emplnm"/>
  578. <col ref="cnts" type="input"/>
  579. <col ref="detlcnts"/>
  580. <col ref="up" type="inputbutton"/>
  581. <col ref="down" type="inputbutton"/>
  582. <col ref="qrycnt" format="#,###" style="text-align:right; vertical-align:middle; "/>
  583. <col ref="trgtphone" visibility="hidden"/>
  584. <col ref="seqno" visibility="hidden"/>
  585. <col ref="phone" visibility="hidden"/>
  586. <col ref="email" visibility="hidden"/>
  587. <col ref="trgtemail" visibility="hidden"/>
  588. <col ref="emplno" visibility="hidden"/>
  589. <script type="javascript" ev:event="onbuttonclick">
  590. <![CDATA[
  591. if( grd_rpvdaletlist.colRef("up") == grd_rpvdaletlist.col)
  592. { var seqno = grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row,grd_rpvdaletlist.colRef("seqno"));
  593. if(seqno ==""){
  594. messageBox("저장후 파일을","C001");
  595. return;
  596. }
  597. fExeBizPlnFileUpload(grd_rpvdaletlist);
  598. }else if( grd_rpvdaletlist.colRef("down") == grd_rpvdaletlist.col)
  599. {
  600. fGetBizFileDownload(grd_rpvdaletlist);
  601. }
  602. ]]>
  603. </script>
  604. <script type="javascript" ev:event="ondblclick">
  605. <![CDATA[
  606. var detlcnts = grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row,grd_rpvdaletlist.colRef("detlcnts"));
  607. var cnts = grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row,grd_rpvdaletlist.colRef("cnts"));
  608. model.setValue("/root/main/rpvdaletitem/detlcnts",detlcnts);
  609. model.setValue("/root/main/rpvdaletitem/cnts",cnts);
  610. if(DUTY_VALU_YN !='Y'){
  611. var qrycnt = parseInt(grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row,grd_rpvdaletlist.colRef("qrycnt"))) + 1;
  612. grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row,grd_rpvdaletlist.colRef("qrycnt")) = qrycnt;
  613. model.setValue("/root/send/updqrycnt/emplno", grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row,grd_rpvdaletlist.colRef("emplno")));
  614. model.setValue("/root/send/updqrycnt/seqno" , grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row,grd_rpvdaletlist.colRef("seqno")));
  615. model.setValue("/root/send/updqrycnt/wrtedd" , grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row,grd_rpvdaletlist.colRef("wrtedd")));
  616. model.setValue("/root/send/updqrycnt/qrycnt" , parseInt(grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row,grd_rpvdaletlist.colRef("qrycnt"))));
  617. submit("TXRPV07705");
  618. }
  619. model.setValue("/root/send/fileinfo/valuyy", getCurrentDate());
  620. model.setValue("/root/send/fileinfo/emplno", grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row, grd_rpvdaletlist.colRef("emplno")));
  621. model.setValue("/root/send/fileinfo/seqno", grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row, grd_rpvdaletlist.colRef("seqno")));
  622. model.setValue("/root/send/fileinfo/wrtedd", grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row, grd_rpvdaletlist.colRef("wrtedd")));
  623. model.setValue("/root/send/fileinfo/tableflag", "3"); // 인사평가 첨부화일을 읽어들일 테이블 설정.임의적으로 3로 설정하면 인사평가첨보화일내역 테이블을 조회.
  624. model.setValue("/root/send/fileinfo/fileflag", "1");
  625. submit("TRRPV05705");
  626. grd_rpvdaletlist.attribute("width") = "500px";
  627. caption12.attribute("left") = "510px";
  628. line4.attribute("x1") = "510px";
  629. caption3.attribute("left") = "510px";
  630. ipt_cnts.attribute("left") = "586px";
  631. ipt_cnts.attribute("width") = "600px";
  632. txt_detlcnts.attribute("left") = "510px";
  633. txt_detlcnts.attribute("width") = "675px";
  634. grd_filelist.attribute("left") = "510px";
  635. grd_filelist.attribute("width") = "675px";
  636. //caption3.attribute("width") = "610px";
  637. //alert(grd_rpvdaletlist.attribute("width"));
  638. //width:830px
  639. model.refresh();
  640. ]]>
  641. </script>
  642. <script type="javascript" ev:event="xforms-value-changed">
  643. <![CDATA[
  644. if(grd_rpvdaletlist.col == grd_rpvdaletlist.colRef("cnts"))
  645. {
  646. var cnts = grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row,grd_rpvdaletlist.colRef("cnts"));
  647. model.setValue("/root/main/rpvdaletitem/cnts",cnts);
  648. model.refresh();
  649. }
  650. ]]>
  651. </script>
  652. </datagrid>
  653. <datagrid id="grd_fileinfo" nodeset="/root/main/list/scrfileinfo/fileinfolist" visibility="hidden" caption="emplno^seqno^wrtedd^fileseqno" colsep="^" colwidth="195, 836, 100, 100, 100, 100, 100" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:95px; top:275px; width:310px; height:55px; ">
  654. <col ref="emplno"/>
  655. <col ref="seqno"/>
  656. <col ref="wrtedd"/>
  657. <col ref="tableflag"/>
  658. <col ref="valuyy"/>
  659. <col ref="fileflag"/>
  660. </datagrid>
  661. <caption id="caption12" class="tit_2" style="left:835px; top:10px; width:95px; height:13px; ">상세내용</caption>
  662. <textarea id="txt_detlcnts" ref="/root/main/rpvdaletitem/detlcnts" imemode="hangul" maxlength="660" style="left:835px; top:62px; width:352px; height:350px; ">
  663. <script type="javascript" ev:event="xforms-value-changed">
  664. <![CDATA[
  665. btn_update.dispatch("DOMActivate");
  666. ]]>
  667. </script>
  668. </textarea>
  669. <line id="line4" class="line_1" style="x1:835px; y1:27px; x2:1190px; y2:27px; "/>
  670. <caption id="caption3" class="cell_1" style="left:835px; top:35px; width:74px; height:23px; text-align:center; ">제 목</caption>
  671. <input id="ipt_cnts" ref="/root/main/rpvdaletitem/cnts" class="input_default" style="left:910px; top:36px; width:275px; height:19px; ">
  672. <script type="javascript" ev:event="xforms-value-changed">
  673. <![CDATA[
  674. btn_update.dispatch("DOMActivate");
  675. ]]>
  676. </script>
  677. </input>
  678. <datagrid id="grd_filelist" nodeset="/root/main/fileinfo/fileinfolist" caption="기관^부서^직책^성명^파일이름^파일크기^파일타입^다운로드수" colsep="^" colwidth="125, 115, 60, 63, 156, 67, 67, 72, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" dataheight="23" defaultrows="0" ellipsis="true" extendlastcol="scroll" mergecellsfixedrows="never" rowheader="update" rowheight="23" rowsep="|" tooltip="true" style="left:835px; top:415px; width:352px; height:245px; ">
  679. <col ref="instnm"/>
  680. <col ref="deptnm"/>
  681. <col ref="jobrespnm"/>
  682. <col ref="emplnm"/>
  683. <col ref="filenm"/>
  684. <col ref="filesize" style="text-align:right; "/>
  685. <col ref="filetype"/>
  686. <col ref="qrycnt" style="text-align:center; "/>
  687. <col ref="valuyy" visibility="hidden"/>
  688. <col ref="instcd" visibility="hidden"/>
  689. <col ref="deptcd" visibility="hidden"/>
  690. <col ref="goalflag" visibility="hidden"/>
  691. <col ref="seqno" visibility="hidden"/>
  692. <col ref="emplno" visibility="hidden"/>
  693. <col ref="wrtedd" visibility="hidden"/>
  694. <col ref="fileseqno" visibility="hidden"/>
  695. <col ref="filepath" visibility="hidden"/>
  696. <col ref="tableflag" visibility="hidden"/>
  697. <col ref="fstscndhfyyflag" visibility="hidden"/>
  698. <col ref="valuclscd" visibility="hidden"/>
  699. <col ref="valumdlcd" visibility="hidden"/>
  700. <col ref="valuclsdetlcd" visibility="hidden"/>
  701. <col ref="publbaseflag" visibility="hidden"/>
  702. <col ref="idxcd" visibility="hidden"/>
  703. <col ref="seqno2" visibility="hidden"/>
  704. <col ref="wrtedd" visibility="hidden"/>
  705. <col ref="fileflag" visibility="hidden"/>
  706. <script type="javascript" ev:event="ondblclick">
  707. <![CDATA[
  708. var idx = grd_filelist.row;
  709. var filepath = model.getValue("/root/main/fileinfo/fileinfolist["+idx+"]/filepath");
  710. var filenm = model.getValue("/root/main/fileinfo/fileinfolist["+idx+"]/filenm");
  711. var localfile = window.fileDialog("save","|",false,filenm,"","All Files(*.*)|*.*");
  712. if (localfile != "") {
  713. var qrycnt=grd_filelist.valueMatrix(idx,grd_filelist.colRef("qrycnt"));
  714. cnt = parseInt(qrycnt)+1;
  715. model.setValue("/root/main/fileinfo/fileinfolist["+idx+"]/qrycnt",cnt);
  716. grd_filelist.addStatus(idx,"update");
  717. model.setValue("/root/send/save2/fileinfolist", grd_filelist.getUpdateData());
  718. submit("TXRPV05704");
  719. grd_filelist.clearStatus();
  720. model.download(getActionURL("TRRPV05704")+"&filepath="+filepath,localfile);
  721. var rtn = messageBox("파일을", "Q004");
  722. if( rtn == 6 ) {
  723. window.exec(localfile);
  724. }
  725. }
  726. ]]>
  727. </script>
  728. </datagrid>
  729. </case>
  730. </switch>
  731. <button id="btn_qna" class="btn_sw" group="tab" style="left:92px; top:50px; width:128px; height:22px; ">
  732. <caption>
  733. <![CDATA[인사평가Q&A]]>
  734. </caption>
  735. <script type="javascript" ev:event="DOMActivate">
  736. <![CDATA[
  737. model.toggle("case2");
  738. btn_addgrdincustlist.disabled = false;
  739. btn_delgrdincustlist.disabled = false;
  740. btn_clear.attribute("visibility")="hidden";
  741. btn_adjtsize.attribute("visibility")="hidden";
  742. ]]>
  743. </script>
  744. </button>
  745. <button id="btn_sche" class="btn_sw" group="tab" selected="true" style="left:1px; top:50px; width:90px; height:22px; ">
  746. <caption>나의할일</caption>
  747. <script type="javascript" ev:event="DOMActivate">
  748. <![CDATA[
  749. model.toggle("case1");
  750. btn_addgrdincustlist.disabled = true;
  751. btn_delgrdincustlist.disabled = true;
  752. btn_clear.attribute("visibility")="hidden";
  753. btn_adjtsize.attribute("visibility")="hidden";
  754. ]]>
  755. </script>
  756. </button>
  757. <button id="btn_cmt" class="btn_sw" group="tab" style="left:221px; top:50px; width:128px; height:22px; ">
  758. <caption>공지사항</caption>
  759. <script type="javascript" ev:event="DOMActivate">
  760. <![CDATA[
  761. model.toggle("case3");
  762. btn_clear.visible="visible";
  763. btn_adjtsize.visible="visible";
  764. if(DUTY_VALU_YN =='Y'){
  765. btn_addgrdincustlist.disabled = false;
  766. btn_delgrdincustlist.disabled = false;
  767. btn_clear.disabled = false;
  768. }
  769. else {
  770. btn_addgrdincustlist.disabled = true;
  771. btn_delgrdincustlist.disabled = true;
  772. btn_clear.disabled = true;
  773. }
  774. /*if(getUserInfo("posdeptcd") != '4020500000'){
  775. btn_addgrdincustlist.disabled = true;
  776. btn_delgrdincustlist.disabled = true;
  777. }*/
  778. ]]>
  779. </script>
  780. </button>
  781. <select1 id="cmb_tretflag" ref="/root/send/valujobsche/tretyn" class="combo_s_essential" appearance="minimal" style="left:595px; top:18px; width:125px; height:19px; ">
  782. <choices>
  783. <itemset nodeset="/root/init/fstscndhfyyflag">
  784. <label ref="cdnm"/>
  785. <value ref="code"/>
  786. </itemset>
  787. </choices>
  788. </select1>
  789. <caption id="cap_fstscndhfyyflag" class="search_name" style="left:512px; top:19px; width:85px; height:17px; vertical-align:middle; ">처리구분:</caption>
  790. <button id="btn_delgrdincustlist" class="btn2_letter3" disabled="true" style="left:1136px; top:50px; width:53px; height:19px; ">
  791. <caption>행삭제</caption>
  792. <script type="javascript" ev:event="DOMActivate">
  793. <![CDATA[
  794. if(btn_sche.selected == true)
  795. {
  796. }else if(btn_qna.selected == true)
  797. {
  798. misfGridIUD(grd_rpvdqanalist, "D");
  799. }else if(btn_cmt.selected == true )
  800. {
  801. misfGridIUD(grd_rpvdaletlist, "D");
  802. model.resetInstanceNode("/root/main/rpvdaletitem");
  803. model.refresh();
  804. }
  805. ]]>
  806. </script>
  807. </button>
  808. <button id="btn_addgrdincustlist" class="btn2_letter3" disabled="true" style="left:1081px; top:50px; width:53px; height:19px; ">
  809. <caption>행추가</caption>
  810. <script type="javascript" ev:event="DOMActivate">
  811. <![CDATA[
  812. var instcd = getUserInfo("dutplceinstcd");
  813. var emplno = getUserInfo("userid");
  814. rpvfGetUserAuth(instcd,emplno);
  815. if(btn_sche.selected == true)
  816. {
  817. }else if(btn_qna.selected == true)
  818. {
  819. misfGridIUD(grd_rpvdqanalist, "A");
  820. grd_rpvdqanalist.valueMatrix(grd_rpvdqanalist.row, grd_rpvdqanalist.colRef("wrtedd")) = getCurrentDate();
  821. grd_rpvdqanalist.valueMatrix(grd_rpvdqanalist.row, grd_rpvdqanalist.colRef("emplno")) = getUserInfo("userid");
  822. grd_rpvdqanalist.valueMatrix(grd_rpvdqanalist.row, grd_rpvdqanalist.colRef("emplnm")) = getUserInfo("usernm");
  823. grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row,grd_rpvdaletlist.colRef("qrycnt")) = 0;
  824. if(DUTY_VALU_YN =='Y'){
  825. for(var i = grd_rpvdqanalist.fixedRows; i < grd_rpvdqanalist.rows; i++)
  826. {
  827. grd_rpvdqanalist.isReadOnly(i, grd_rpvdqanalist.colRef("tretcnts")) = false;
  828. grd_rpvdqanalist.isReadOnly(i, grd_rpvdqanalist.colRef("up")) = false;
  829. }
  830. }
  831. else {
  832. for(var i = grd_rpvdqanalist.fixedRows; i < grd_rpvdqanalist.rows; i++)
  833. {
  834. grd_rpvdqanalist.isReadOnly(i, grd_rpvdqanalist.colRef("tretcnts")) = true;
  835. grd_rpvdqanalist.isReadOnly(i, grd_rpvdqanalist.colRef("up")) = true;
  836. }
  837. }
  838. //grd_rpvdqanalist.isReadOnly(grd_rpvdqanalist.row, grd_rpvdqanalist.colRef("tretcnts")) = true;
  839. }else if(btn_cmt.selected == true )
  840. {
  841. model.resetInstanceNode("/root/main/rpvdaletitem");
  842. misfGridIUD(grd_rpvdaletlist, "A");
  843. grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row, grd_rpvdaletlist.colRef("wrtedd")) = getCurrentDate();
  844. grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row, grd_rpvdaletlist.colRef("emplno")) = getUserInfo("userid");
  845. grd_rpvdaletlist.valueMatrix(grd_rpvdaletlist.row, grd_rpvdaletlist.colRef("emplnm")) = getUserInfo("usernm");
  846. if(DUTY_VALU_YN =='Y'){
  847. for(var i = grd_rpvdaletlist.fixedRows; i < grd_rpvdaletlist.rows; i++)
  848. {
  849. grd_rpvdaletlist.isReadOnly(i, grd_rpvdaletlist.colRef("up")) = false;
  850. grd_rpvdaletlist.isReadOnly(i, grd_rpvdaletlist.colRef("cnts")) = false;
  851. }
  852. }
  853. else {
  854. for(var i = grd_rpvdaletlist.fixedRows; i < grd_rpvdaletlist.rows; i++)
  855. {
  856. grd_rpvdaletlist.isReadOnly(i, grd_rpvdaletlist.colRef("up")) = true;
  857. grd_rpvdaletlist.isReadOnly(i, grd_rpvdaletlist.colRef("cnts")) = true;
  858. }
  859. }
  860. }
  861. ]]>
  862. </script>
  863. </button>
  864. <line id="line2" class="line_8" style="x1:355px; y1:71px; x2:1192px; y2:71px; "/>
  865. <upload id="upd_uploadfile" nodeset="/root/send/fileupload/file" ext="zip" filecount="5" filesize="1048576" validate="true" style="left:377px; top:50px; width:25px; height:20px; "/>
  866. <input id="ipt_uploadfile" ref="/root/send/fileupload/file" visibility="hidden" style="left:400px; top:50px; width:105px; height:19px; "/>
  867. <button id="btn_msg" class="btn5_letter4" style="left:1015px; top:50px; width:64px; height:19px; ">
  868. <caption>문자전송</caption>
  869. <script type="javascript" ev:event="DOMActivate">
  870. <![CDATA[
  871. fSendMsg();
  872. ]]>
  873. </script>
  874. </button>
  875. <button id="btn_email" class="btn5_letter3" style="left:960px; top:50px; width:53px; height:19px; ">
  876. <caption>E-mail</caption>
  877. <script type="javascript" ev:event="DOMActivate">
  878. <![CDATA[
  879. fSendEmail();
  880. ]]>
  881. </script>
  882. </button>
  883. <button id="btn_update" class="btn2_letter2" navindex="13" visibility="hidden" style="left:1045px; top:79px; width:42px; height:19px; ">
  884. <caption>입력</caption>
  885. <script type="javascript" ev:event="DOMActivate">
  886. <![CDATA[
  887. // if(txt_detlcnts.value=="")
  888. // {
  889. // messageBox("상세내용을 ","C001");
  890. // return;
  891. // }
  892. var cur_row = grd_rpvdaletlist.row; // 행 번호 가져오기
  893. var status = grd_rpvdaletlist.rowStatus(cur_row);
  894. if(status =='0' || status =='3')//조회
  895. {
  896. grd_rpvdaletlist.addStatus(cur_row,"update");
  897. }
  898. var detlcnts = model.getValue("/root/main/rpvdaletitem/detlcnts");
  899. var cnts = model.getValue("/root/main/rpvdaletitem/cnts");
  900. model.setValue("/root/main/rpvdalet/rpvdaletlist["+(cur_row-1)+"]/detlcnts",detlcnts);
  901. model.setValue("/root/main/rpvdalet/rpvdaletlist["+(cur_row-1)+"]/cnts",cnts);
  902. //model.resetInstanceNode("/root/main/rpvdaletitem");
  903. model.refresh();
  904. ]]>
  905. </script>
  906. </button>
  907. <button id="btn_clear" class="btn2_letter3" navindex="14" visibility="hidden" style="left:1135px; top:79px; width:53px; height:19px; ">
  908. <caption>지우기</caption>
  909. <script type="javascript" ev:event="DOMActivate">
  910. <![CDATA[
  911. model.resetInstanceNode("/root/main/rpvdaletitem");
  912. model.refresh();
  913. ]]>
  914. </script>
  915. </button>
  916. <button id="btn_adjtsize" class="btn2_letter2" navindex="13" visibility="hidden" style="left:1090px; top:79px; width:42px; height:19px; ">
  917. <caption>
  918. <![CDATA[ >>]]>
  919. </caption>
  920. <script type="javascript" ev:event="DOMActivate">
  921. <![CDATA[
  922. grd_rpvdaletlist.attribute("width") = "830px";
  923. caption12.attribute("left") = "835px";
  924. line4.attribute("x1") = "835px";
  925. caption3.attribute("left") = "835px";
  926. ipt_cnts.attribute("left") = "910px";
  927. ipt_cnts.attribute("width") = "275px";
  928. txt_detlcnts.attribute("left") = "835px";
  929. txt_detlcnts.attribute("width") = "352px";
  930. grd_filelist.attribute("left") = "835px";
  931. grd_filelist.attribute("width") = "352px";
  932. ]]>
  933. </script>
  934. </button>
  935. <caption id="cap_valuyy" class="search_name" style="left:15px; top:19px; width:100px; height:17px; vertical-align:middle; ">평가년도 :</caption>
  936. <input id="ipt_valuyy" ref="/root/send/valujobsche/valuyy" class="input_s_essential" inputtype="date" format="yyyy" style="left:100; top:18; width:125px; height:19px; ">
  937. <script type="javascript" ev:event="xforms-value-changed">
  938. <![CDATA[
  939. submit("TXRPV07701");
  940. btn_search.dispatch("DOMActivate");
  941. ]]>
  942. </script>
  943. </input>
  944. </group>
  945. <group id="grp_btn" scroll="auto" style="left:0px; top:12px; width:1195px; height:27px; ">
  946. <button id="btn_save" class="btn4_letter2" style="left:1065px; top:3px; width:56px; height:22px; ">
  947. <caption>저장</caption>
  948. <script type="javascript" ev:event="DOMActivate">
  949. <![CDATA[
  950. // if(!checkKeyColumn("grd_ablity")) return;
  951. // misfSave("TXRPV03801");
  952. if(!checkKeyColumn("grd_rpvdqanalist")) return;
  953. if(!checkKeyColumn("grd_rpvdaletlist")) return;
  954. var curdate = getCurrentDate();
  955. for (var i = grd_rpvdqanalist.fixedRows; i < grd_rpvdqanalist.rows; i++) {
  956. if (grd_rpvdqanalist.valueMatrix(i, grd_rpvdqanalist.colRef("answerdd")) == "" && grd_rpvdqanalist.valueMatrix(i, grd_rpvdqanalist.colRef("tretcnts")) != "" ) {
  957. grd_rpvdqanalist.valueMatrix(i, grd_rpvdqanalist.colRef("answerdd")) = curdate;
  958. }
  959. }
  960. misfSave("TXRPV07702");
  961. // misfSave("TXRPV07703");
  962. btn_search.dispatch("DOMActivate");
  963. // if(btn_qna.selected == true)
  964. // {
  965. // if(!checkKeyColumn("grd_rpvdqanalist")) return;
  966. // misfSave("TXRPV07702");
  967. // }else if(btn_cmt.selected == true)
  968. // {
  969. // if(!checkKeyColumn("grd_rpvdaletlist")) return;
  970. // misfSave("TXRPV07703");
  971. // }
  972. ]]>
  973. </script>
  974. </button>
  975. <line id="line11" class="line_6" style="x1:0; y1:25; x2:1195; y2:25; "/>
  976. <button id="btn_init" class="btn4_letter3" style="left:1124px; top:3px; width:68px; height:22px; ">
  977. <caption>초기화</caption>
  978. <script type="javascript" ev:event="DOMActivate">
  979. <![CDATA[
  980. window.reload() ;
  981. ]]>
  982. </script>
  983. </button>
  984. </group>
  985. </xhtml:body>
  986. </xhtml:html>