SMCVQ01400_그룹부서VOC처리현황.xrw 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * Name : SMCVQ01400_부서VOC처리현황(그룹별)
  4. * Summary : 부서 VOC 처리사항 조회(그룹별)
  5. * Programmer : Roger Kim
  6. * Date Written : 2007.01.23
  7. * History :
  8. * Remark :
  9. -->
  10. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  11. <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">
  12. <xhtml:head>
  13. <xhtml:title>부서 VOC 처리현황(그룹별)</xhtml:title>
  14. <model id="model1">
  15. <instance id="instance1">
  16. <root xmlns="">
  17. <main>
  18. <list>
  19. <voclist>
  20. <acptseq/>
  21. <replreqdd/>
  22. <acpttype/>
  23. <deptnm/>
  24. <empnm/>
  25. <deptprcsstat/>
  26. <innraprvreqdd/>
  27. <innraprvdd/>
  28. <acpttitl/>
  29. <acptkindlrg/>
  30. <rgstseq/>
  31. <acptdd/>
  32. <deptprcsstatcd/>
  33. <prcsstatcd/>
  34. <aprvreqflag/>
  35. </voclist>
  36. </list>
  37. </main>
  38. <send>
  39. <data>
  40. <srchacptdd1/>
  41. <srchacptdd2/>
  42. <srchacpttypecd/>
  43. <srchprcsstatcd/>
  44. <srchdeptcd/>
  45. <srchempnm/>
  46. </data>
  47. <key>
  48. <sndacptdd/>
  49. <sndacptseq/>
  50. <sndrgstseq/>
  51. </key>
  52. <param>
  53. <grpdeptcd/>
  54. </param>
  55. </send>
  56. <init>
  57. <C0001list>
  58. <C0001>
  59. <cdid/>
  60. <cdnm>전체</cdnm>
  61. </C0001>
  62. </C0001list>
  63. <param>
  64. <grpdeptcd>
  65. <subdeptcd/>
  66. <subdeptnm/>
  67. </grpdeptcd>
  68. </param>
  69. </init>
  70. </root>
  71. </instance>
  72. <script type="javascript" ev:event="xforms-ready">
  73. <![CDATA[
  74. model.removeNodeset("/root/main/list");
  75. var reSrchAcptDD1 = model.getValue("/root/send/data/srchacptdd1")
  76. // 메뉴 파라미터 받아 사용, Default : BB
  77. var paramDeptcd = model.getValue("/root/properties/menu/menuparam")
  78. if ( paramDeptcd == "" ){
  79. model.makeValue("/root/properties/menu/menuparam", "BB");
  80. model.setValue("/root/send/data/srchdeptcd", "BB");
  81. }
  82. model.setValue("/root/send/param/grpdeptcd", paramDeptcd);
  83. model.setValue("/root/send/data/srchdeptcd", paramDeptcd);
  84. submit("TRCVQ01402");
  85. // 처음 검색 팝업을 띄울 때에는 기본 정보를 안 보여주고, 한번 검색 한 이후에는 최종선택한 정보를 기본적으로 가져옴..
  86. if ( reSrchAcptDD1 == "" || reSrchAcptDD1 == null ){
  87. model.setValue("/root/send/data/srchacptdd1",getCurrentDate().toDate().getAddDate(-91,"D").getDateFormat());
  88. model.setValue("/root/send/data/srchacptdd2",getCurrentDate());
  89. }
  90. initGridStyle("grd_voclist");
  91. submit("TRCVQ01401");
  92. setRowStyle("grd_voclist" , "2" , "접수" , "deptprcsstat", "");
  93. //model.SetFocus("grd_voclist");
  94. zbcfGetCodeList( new Array("C0001"), new Array("/root/init/C0001list"), true );
  95. fCheckAuth();
  96. model.refresh();
  97. ]]>
  98. </script>
  99. <script type="javascript" ev:event="xforms-model-construct-done">
  100. <![CDATA[
  101. grd_voclist.mergeCol(0) = false;
  102. grd_voclist.mergeCol(3) = false;
  103. grd_voclist.mergeCol(4) = false;
  104. grd_voclist.mergeCol(5) = false;
  105. grd_voclist.mergeCol(6) = false;
  106. grd_voclist.mergeCol(7) = false;
  107. grd_voclist.mergeCol(8) = false;
  108. grd_voclist.mergeCol(9) = false;
  109. grd_voclist.mergeCol(10) = false;
  110. grd_voclist.mergeCol(11) = false;
  111. ]]>
  112. </script>
  113. <script type="javascript">
  114. <![CDATA[
  115. function fCheckAuth() {
  116. // 권한체크
  117. if (!checkAuth("r")) {
  118. btnicon_search1.disabled = true;
  119. btn_search.disabled = true;
  120. btn_list.disabled = true;
  121. }
  122. if (!checkAuth("x")) {
  123. }
  124. if (!checkAuth("p")) {
  125. btn_excsave.disabled = true;
  126. }
  127. }
  128. ]]>
  129. </script>
  130. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
  131. <submission id="TRCVQ01401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/data" resultref="/root/main/list"/>
  132. <submission id="TRCVQ01402" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/param" resultref="/root/init/param"/>
  133. </model>
  134. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  135. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  136. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  137. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  138. </xhtml:head>
  139. <xhtml:body style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  140. <group id="grp_tle" style="left:0px; top:0px; width:1195px; height:13px; ">
  141. <caption id="caption1" class="tit_1" style="left:0px; top:0px; width:190px; height:14px; ">부서 VOC 처리현황(그룹별)</caption>
  142. </group>
  143. <group id="grp_johe" style="left:225px; top:23px; width:970px; height:59px; vertical-align:top; ">
  144. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" style="left:0px; top:0px; width:970px; height:59px; "/>
  145. <caption id="caption2" class="search_name" style="left:15px; top:9px; width:87px; height:17px; ">접수일자 :</caption>
  146. <input id="ipt_SrchAcptDD1" ref="/root/send/data/srchacptdd1" class="input_s_essential" inputtype="date" style="left:105px; top:8px; width:120px; height:19px; "/>
  147. <caption id="caption3" class="search_no_b" style="left:230px; top:9px; width:12px; height:17px; ">~</caption>
  148. <input id="ipt_SrchAcptDD2" ref="/root/send/data/srchacptdd2" class="input_s_essential" inputtype="date" style="left:245px; top:8px; width:120px; height:19px; "/>
  149. <caption id="caption4" class="search_name" style="left:394px; top:9px; width:87px; height:17px; ">접수구분 :</caption>
  150. <select1 id="cmb_SrchAcptTypeCd" ref="/root/send/data/srchacpttypecd" class="combo_search" appearance="minimal" style="left:483px; top:8px; width:130px; height:19px; ">
  151. <choices>
  152. <itemset nodeset="/root/init/C0001list/C0001">
  153. <label ref="cdnm"/>
  154. <value ref="cdid"/>
  155. </itemset>
  156. </choices>
  157. </select1>
  158. <caption id="caption5" class="search_name" style="left:640px; top:9px; width:87px; height:17px; ">진행상태 :</caption>
  159. <select1 id="cmb_SrchPrcsStatCd" ref="/root/send/data/srchprcsstatcd" class="combo_search" appearance="minimal" style="left:730px; top:8px; width:130px; height:19px; ">
  160. <choices>
  161. <item>
  162. <label>전체</label>
  163. <value/>
  164. </item>
  165. <item>
  166. <label>접수</label>
  167. <value>A</value>
  168. </item>
  169. <item>
  170. <label>처리중</label>
  171. <value>B</value>
  172. </item>
  173. <item>
  174. <label>결재요청</label>
  175. <value>C</value>
  176. </item>
  177. <item>
  178. <label>회신완료</label>
  179. <value>D</value>
  180. </item>
  181. <item>
  182. <label>모든 부서 열람</label>
  183. <value>Z</value>
  184. </item>
  185. <item>
  186. <label>자체처리 알림</label>
  187. <value>X</value>
  188. </item>
  189. </choices>
  190. </select1>
  191. <caption id="caption6" class="search_name" style="left:15px; top:33px; width:112px; height:17px; ">해당부서 :</caption>
  192. <select1 id="cmb_srchdeptcd" ref="/root/send/data/srchdeptcd" class="combo_search" appearance="minimal" style="left:105px; top:32px; width:150px; height:19px; ">
  193. <choices>
  194. <itemset nodeset="/root/init/param/grpdeptcd">
  195. <label ref="subdeptnm"/>
  196. <value ref="subdeptcd"/>
  197. </itemset>
  198. </choices>
  199. </select1>
  200. <line id="line1" class="line_4" style="x1:883px; y1:7px; x2:883px; y2:53px; "/>
  201. <button id="btn_search" class="btn1_letter2" style="left:898px; top:17px; width:56px; height:22px; ">
  202. <caption>조회</caption>
  203. <script type="javascript" ev:event="DOMActivate">
  204. <![CDATA[
  205. if (isRequiredControls("ipt_SrchAcptDD1", "ipt_SrchAcptDD2") ){
  206. model.removeNodeset("/root/main/list/voclist");
  207. initGridStyle("grd_voclist");
  208. submit("TRCVQ01401");
  209. setRowStyle("grd_voclist" , "2" , "접수" , "deptprcsstat", "");
  210. //model.SetFocus("grd_voclist");
  211. }
  212. ]]>
  213. </script>
  214. </button>
  215. <input id="input1" ref="/root/send/data/srchempnm" class="input_search" style="left:483px; top:32px; width:130px; height:19px; ">
  216. <script type="javascript" ev:event="onkeyup">
  217. <![CDATA[
  218. inputEnterKey("btn_search", "DOMActivate");
  219. ]]>
  220. </script>
  221. </input>
  222. <caption id="caption7" class="search_name" style="left:394px; top:33px; width:87px; height:17px; ">해당직원 :</caption>
  223. </group>
  224. <group id="grp_customer" style="left:225px; top:82px; width:970px; height:669px; ">
  225. <caption id="caption9" class="tit_2" style="left:5px; top:10px; width:165px; height:14px; ">부서 VOC 처리 목록</caption>
  226. <button id="btn_excsave" class="btn2_letter4" visibility="visible" style="left:903px; top:5px; width:64px; height:19px; ">
  227. <caption>엑셀저장</caption>
  228. <script type="javascript" ev:event="DOMActivate">
  229. <![CDATA[
  230. var fileName = window.fileDialog("save", ",", false, "VOC접수목록엑셀", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  231. if (fileName != "")
  232. {
  233. grd_voclist.saveExcel(fileName);
  234. }
  235. ]]>
  236. </script>
  237. </button>
  238. <line id="line2" class="line_1" style="x1:0px; y1:25px; x2:970px; y2:25px; "/>
  239. <datagrid id="grd_voclist" nodeset="/root/main/list/voclist" allowselection="false" caption="접수번호^접수일자^접수구분^담당부서^담당자^진행상태^결재요청일^부서장결재^제목^접수유형^등록순서^접수일자^부서진행상태코드^진행상태코드^승인요청" colsep="^" colwidth="70, 80, 80, 80, 75, 80, 75, 75, 255, 75, 0, 0, 0, 0, 0" dataheight="23" defaultrows="0" extendlastcol="scroll" mergecells="byrestriccol" mergecellsfixedrows="bycolrec" rowheader="reverseseq" rowheight="23" rowsep="|" style="left:0px; top:30px; width:970px; height:639px; ">
  240. <col class="text_center" ref="acptseq"/>
  241. <col class="text_center" ref="replreqdd" format="yyyy-mm-dd"/>
  242. <col class="text_center" ref="acpttype"/>
  243. <col ref="deptnm"/>
  244. <col class="text_center" ref="empnm"/>
  245. <col class="text_center" ref="deptprcsstat"/>
  246. <col class="text_center" ref="innraprvreqdd" format="yyyy-mm-dd"/>
  247. <col class="text_center" ref="innraprvdd" format="yyyy-mm-dd"/>
  248. <col ref="acpttitl"/>
  249. <col class="text_center" ref="acptkindlrg"/>
  250. <col ref="rgstseq" visibility="hidden"/>
  251. <col ref="acptdd" visibility="hidden"/>
  252. <col ref="deptprcsstatcd" visibility="hidden"/>
  253. <col ref="prcsstatcd" visibility="hidden"/>
  254. <col ref="aprvreqflag" visibility="hidden"/>
  255. <script type="javascript" ev:event="ondblclick">
  256. <![CDATA[
  257. var row = grd_voclist.row;
  258. var receive_acptdd = grd_voclist.valueMatrix(row, grd_voclist.colRef("acptdd"));
  259. var receive_acptseq = grd_voclist.valueMatrix(row, grd_voclist.colRef("acptseq"));
  260. var receive_rgstseq = grd_voclist.valueMatrix(row, grd_voclist.colRef("rgstseq"));
  261. var receive_aprvreqflag = grd_voclist.valueMatrix(row, grd_voclist.colRef("aprvreqflag"));
  262. var receive_deptprcsstat = grd_voclist.valueMatrix(row, grd_voclist.colRef("deptprcsstatcd"));
  263. if ((grd_voclist.row > 0) && grd_voclist.isCell(event.target)){
  264. model.setValue("/root/send/key/sndacptdd", receive_acptdd);
  265. model.setValue("/root/send/key/sndacptseq", receive_acptseq);
  266. model.setValue("/root/send/key/sndrgstseq", receive_rgstseq);
  267. if (receive_aprvreqflag == "2") { // 모든부서열람 Z
  268. navigate("SMCVQ01500", "", "", "", "SMCVQ01500", "/root/send", "/root/main/temp");
  269. } else if (receive_aprvreqflag == "1") { // 자체처리알림 X
  270. navigate("SMCVQ01600", "", "", "", "SMCVQ01600", "/root/send", "/root/main/temp");
  271. } else {
  272. if (receive_deptprcsstat == "A") {
  273. navigate("SMCVQ01700", "", "", "", "SMCVQ01700", "/root/send", "/root/main/temp");
  274. } else if (receive_deptprcsstat == "B") {
  275. navigate("SMCVQ01900", "", "", "", "SMCVQ01900", "/root/send", "/root/main/temp");
  276. } else if (receive_deptprcsstat == "C") {
  277. var rtn = messageBox("부서장 결재를 기다리고 있는 중입니다. ","Q003");
  278. if(rtn == 6){
  279. navigate("SMCVQ02000", "", "", "", "SMCVQ02000", "/root/send", "/root/main/temp");
  280. } else {
  281. }
  282. } else if (receive_deptprcsstat == "D") {
  283. navigate("SMCVQ02100", "", "", "", "SMCVQ02100", "/root/send", "/root/main/temp");
  284. }
  285. }
  286. } else {
  287. }
  288. ]]>
  289. </script>
  290. </datagrid>
  291. </group>
  292. <group id="grp_btn" scroll="auto" style="left:225px; top:751px; width:970px; height:27px; ">
  293. <caption id="caption20" class="hand" style="left:100px; top:7px; width:722px; height:17px; ">부서 VOC 처리현황(그룹별)에서는 하위 부서에 들어온 처리요청 및 공개열람/자체처리 내역을 보실 수 있습니다.</caption>
  294. <button id="btn_list" class="btn4_letter5" style="left:878px; top:5px; width:92px; height:22px; ">
  295. <caption>정보 보기</caption>
  296. <script type="javascript" ev:event="DOMActivate">
  297. <![CDATA[
  298. var row = grd_voclist.row;
  299. var receive_acptdd = grd_voclist.valueMatrix(row, grd_voclist.colRef("acptdd"));
  300. var receive_acptseq = grd_voclist.valueMatrix(row, grd_voclist.colRef("acptseq"));
  301. var receive_rgstseq = grd_voclist.valueMatrix(row, grd_voclist.colRef("rgstseq"));
  302. var receive_aprvreqflag = grd_voclist.valueMatrix(row, grd_voclist.colRef("aprvreqflag"));
  303. var receive_deptprcsstat = grd_voclist.valueMatrix(row, grd_voclist.colRef("deptprcsstatcd"));
  304. if ((grd_voclist.row > 0) && grd_voclist.isCell(event.target)){
  305. model.setValue("/root/send/key/sndacptdd", receive_acptdd);
  306. model.setValue("/root/send/key/sndacptseq", receive_acptseq);
  307. model.setValue("/root/send/key/sndrgstseq", receive_rgstseq);
  308. if (receive_aprvreqflag == "2") { // 모든부서열람 Z
  309. navigate("SMCVQ01500", "", "", "", "SMCVQ01500", "/root/send", "/root/main/temp");
  310. } else if (receive_aprvreqflag == "1") { // 자체처리알림 X
  311. navigate("SMCVQ01600", "", "", "", "SMCVQ01600", "/root/send", "/root/main/temp");
  312. } else {
  313. if (receive_deptprcsstat == "A") {
  314. navigate("SMCVQ01700", "", "", "", "SMCVQ01700", "/root/send", "/root/main/temp");
  315. } else if (receive_deptprcsstat == "B") {
  316. navigate("SMCVQ01900", "", "", "", "SMCVQ01900", "/root/send", "/root/main/temp");
  317. } else if (receive_deptprcsstat == "C") {
  318. var rtn = messageBox("부서장 결재를 기다리고 있는 중입니다. ","Q003");
  319. if(rtn == 6){
  320. navigate("SMCVQ02000", "", "", "", "SMCVQ02000", "/root/send", "/root/main/temp");
  321. } else {
  322. }
  323. } else if (receive_deptprcsstat == "D") {
  324. navigate("SMCVQ02100", "", "", "", "SMCVQ02100", "/root/send", "/root/main/temp");
  325. }
  326. }
  327. } else {
  328. messageBox("조회하신 후 목록을 ","C002");
  329. model.SetFocus("grd_voclist");
  330. }
  331. ]]>
  332. </script>
  333. </button>
  334. </group>
  335. <import id="import1" overflow="hidden" instancetype="merge" src="./SSCVO00100_LeftTree.xrw" style="left:0px; top:23px; width:215px; height:744px; "/>
  336. <shape id="rndrctlgnd" class="roundrect_legend" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:24px; top:505px; width:167px; height:224px; background-color:#f2f6ff; border-color:#c8c0fd; "/>
  337. <caption id="caption50" class="hand" style="left:35px; top:530px; width:144px; height:30px; ">부서 처리 프로세스</caption>
  338. <caption id="caption51" style="left:54px; top:560px; width:120px; height:21px; font-weight:bold; vertical-align:top; line-spacing:7; ">
  339. <![CDATA[(1) 접수]]>
  340. <hint>
  341. <![CDATA[
  342. 부서 담당자가 "접수"된 VOC를 선택하여 그 내용을 읽고 『부서 접수 확인』
  343. 버튼을 눌러 해당 VOC 처리를 시작했음을 알리면【처리중】상태가 된다.
  344. ]]>
  345. </hint>
  346. </caption>
  347. <caption id="caption52" style="left:54px; top:580px; width:120px; height:21px; font-weight:bold; vertical-align:top; line-spacing:7; ">
  348. <![CDATA[(2) 처리중]]>
  349. <hint>
  350. <![CDATA[
  351. 부서 담당자는 "처리중"인 VOC에 대해 민원이 제기된 내용 확인, 고객과의 연락, 민원 처리 등 실제
  352. 업무 처리를 진행하고 그 결과 내용을 저장한다. 진행상태는 여전히【처리중】상태가 되어 있다.
  353. ]]>
  354. </hint>
  355. </caption>
  356. <caption id="caption53" style="left:54px; top:600px; width:120px; height:20px; font-weight:bold; vertical-align:top; line-spacing:7; ">
  357. <![CDATA[(3) 결재요청]]>
  358. <hint>
  359. <![CDATA[
  360. 부서 담당자는 업무 처리 결과 내용의 입력 완료 후 부서장 결재 요청 버튼을
  361. 눌러 부서장에게 결재를 요청한다. 진행상태는【결재요청】상태가 된다.
  362. ]]>
  363. </hint>
  364. </caption>
  365. <caption id="caption54" style="left:54px; top:620px; width:120px; height:20px; font-weight:bold; vertical-align:top; line-spacing:7; ">
  366. <![CDATA[(4) 회신완료]]>
  367. <hint>
  368. <![CDATA[
  369. 부서장은 담당자가 결재 요청한 VOC에 대하여 그 내용을 확인, 판단하여
  370. 부서장 의견을 적어 결재 처리를 하면서 민원 담당자에게 회신하게 되면
  371. 진행상태는【회신완료】상태가 되어 부서에서의 업무가 종료하게 된다.
  372. ]]>
  373. </hint>
  374. </caption>
  375. <caption id="caption56" style="left:54px; top:644px; width:125px; height:20px; vertical-align:top; line-spacing:7; ">
  376. <![CDATA[ * 공개열람내용 확인]]>
  377. <hint>
  378. <![CDATA[
  379. 부서 담당자 및 부서내 직원은 진행상태를 "모든 부서 열람"으로
  380. 검색하여 다른 부서의 공개된 VOC 접수 내용을 볼 수 있다.
  381. ]]>
  382. </hint>
  383. </caption>
  384. <caption id="caption57" style="left:54px; top:662px; width:120px; height:21px; vertical-align:top; line-spacing:7; ">
  385. <![CDATA[ * 자체처리 알림]]>
  386. <hint>
  387. <![CDATA[
  388. 민원 담당자가 이미 자체적으로 처리하였지만 부서 담당자도 민원 내용을
  389. 알 필요가 있는 경우 자체처리 알림을 통해 VOC 접수 내용을 볼 수 있다.
  390. ]]>
  391. </hint>
  392. </caption>
  393. <caption id="caption58" style="left:54px; top:680px; width:120px; height:20px; vertical-align:top; line-spacing:7; ">
  394. <![CDATA[ * 부서통계]]>
  395. <hint>
  396. <![CDATA[
  397. 부서 담당자는 "기간별 VOC 현황" "직원별 VOC 현황" 메뉴에서
  398. 자신의 부서에 대하여 조회일자를 지정하여 그 현황을 확인할 수 있다.
  399. ]]>
  400. </hint>
  401. </caption>
  402. </xhtml:body>
  403. </xhtml:html>