SMRSC05100.js 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437
  1. /* ---------------------------------------------------------------------
  2. SMRSC05100_물품구분별 분류코드 등록.xrw (SMRSC05100.xfm - JScript )
  3. - Version :
  4. 1) : Ver.1.00.01
  5. : Create By Francis Choi
  6. : 2015.05.02
  7. ---------------------------------------------------------------------- */
  8. var xAuth = !(checkAuth("X"));
  9. var pAuth = !(checkAuth("P"));
  10. var TreePath = "/root/main/RscmgubnLists/TreeList";
  11. var WorkPath = "/root/init/WorkInit";
  12. var CompPath = "/root/init/CompareInit";
  13. // --------------------------------------------------
  14. // Tree정보 가져오기
  15. // --------------------------------------------------
  16. function fInit(initflag) {
  17. fInitialize();
  18. grp_lag.disabled = true;
  19. grp_dept.disabled = true;
  20. grp_mdl.disabled = true;
  21. grp_sml.disabled = true;
  22. grp_anct.disabled = true;
  23. // btn_save.disabled = !(checkAuth("X"));
  24. // btn_cdclssysrgst.disabled= !(checkAuth("P"));
  25. model.removenode("/root/send");
  26. model.makeValue("/root/send/goodflag","T" ); // 메시지종류
  27. model.makeValue("/root/send/treeflag","T" ); // 트리구분 T: TREE, L: LARGE
  28. model.makeValue("/root/send/emplno" ,getUserInfo("userid")); // 사원번호
  29. if(initflag=="S"){
  30. model.makeValue("/root/send/srchflag",model.getValue("/root/main/srchinfo/srchflag"));
  31. submit("TRRSC05104"); // Tree Data 정보를 가져온다.
  32. }else{
  33. if(submit("TRRSC05108")){//사용자별 물품구분 가져오기
  34. model.setValue("/root/main/srchinfo/srchflag",model.getValue("/root/tmp/hidden/usergoodflaginfo/goodflagcd[1]"));
  35. model.makeValue("/root/send/srchflag",model.getValue("/root/main/srchinfo/srchflag"));
  36. submit("TRRSC05104");
  37. }
  38. }
  39. model.refresh();
  40. }
  41. // --------------------------------------------------
  42. // Tree Click
  43. // --------------------------------------------------
  44. function fTreeClick(pIdx) {
  45. var OpCode = "";
  46. var OpDepth = "";
  47. var vDepth = "";
  48. var vGoodflag = "";
  49. var vGoodflagnm = "";
  50. var vLrgcd = "";
  51. var vLrgnm = "";
  52. var vMdlcd = "";
  53. var vMdlnm = "";
  54. var vSmlcd = "";
  55. var vSmlnm = "";
  56. var vMainmngtdeptcd = "";
  57. var vMainmngtdeptnm = "";
  58. var vWinacnt = "";
  59. var vWinacntnm = "";
  60. var vAmtacnt = "";
  61. var vAmtacntnm = "";
  62. var vFacdcnt = "";
  63. var vGoodcnt = "";
  64. var Idx = pIdx + 1;
  65. bbt_append.disabled = false;
  66. bbt_delete.disabled = false;
  67. var sDepth = model.getValue(TreePath +"["+Idx+"]/depth");
  68. // alert(sDepth);
  69. model.setValue(WorkPath + "/jobcls" , "I" );
  70. vFacdcnt = model.getValue(TreePath +"["+Idx+"]/facdcnt" );
  71. vGoodcnt = model.getValue(TreePath +"["+Idx+"]/goodcnt" );
  72. if (sDepth == "1") {
  73. vGoodflag = model.getValue(TreePath +"["+Idx+"]/codecd");
  74. vGoodflagnm = model.getValue(TreePath +"["+Idx+"]/codenm");
  75. grp_lag.disabled = true;
  76. grp_dept.disabled = true;
  77. grp_mdl.disabled = true;
  78. grp_sml.disabled = true;
  79. grp_anct.disabled = true;
  80. bbt_delete.disabled = true;
  81. }
  82. // 수정 구분
  83. model.setValue(WorkPath + "/jobcls" , "U");
  84. if (sDepth == "2") {
  85. vLrgcd = model.getValue(TreePath +"["+Idx+"]/codecd");
  86. vLrgnm = model.getValue(TreePath +"["+Idx+"]/codenm");
  87. vMainmngtdeptcd = model.getValue(TreePath +"["+Idx+"]/mainmngtdeptcd");
  88. vMainmngtdeptnm = model.getValue(TreePath +"["+Idx+"]/mainmngtdeptnm");
  89. vWinacnt = model.getValue(TreePath +"["+Idx+"]/winacnt" );
  90. vWinacntnm = model.getValue(TreePath +"["+Idx+"]/winacntnm" );
  91. vAmtacnt = model.getValue(TreePath +"["+Idx+"]/amtacnt" );
  92. vAmtacntnm = model.getValue(TreePath +"["+Idx+"]/amtacntnm" );
  93. //
  94. OpCode = model.getValue(TreePath +"["+Idx+"]/basecd");
  95. vGoodflag = model.getValue(TreePath +"[pcode='"+ OpCode+"']/codecd");
  96. vGoodflagnm = model.getValue(TreePath +"[pcode='"+ OpCode+"']/codenm");
  97. grp_lag.disabled = false;
  98. grp_dept.disabled = false;
  99. grp_mdl.disabled = true;
  100. grp_sml.disabled = true;
  101. grp_anct.disabled = false;
  102. }
  103. if (sDepth == "3") {
  104. vMdlcd = model.getValue(TreePath +"["+Idx+"]/codecd") ;
  105. vMdlnm = model.getValue(TreePath +"["+Idx+"]/codenm") ;
  106. vWinacnt = model.getValue(TreePath +"["+Idx+"]/winacnt" );
  107. vWinacntnm = model.getValue(TreePath +"["+Idx+"]/winacntnm" );
  108. vAmtacnt = model.getValue(TreePath +"["+Idx+"]/amtacnt" );
  109. vAmtacntnm = model.getValue(TreePath +"["+Idx+"]/amtacntnm" );
  110. OpCode = model.getValue(TreePath +"["+Idx+"]/basecd");
  111. vLrgcd = model.getValue(TreePath +"[pcode='"+ OpCode+"']/codecd");
  112. vLrgnm = model.getValue(TreePath +"[pcode='"+ OpCode+"']/codenm");
  113. OpCode = model.getValue(TreePath +"[pcode='"+ OpCode+"']/basecd");
  114. vGoodflag = model.getValue(TreePath +"[pcode='"+ OpCode+"']/codecd");
  115. vGoodflagnm = model.getValue(TreePath +"[pcode='"+ OpCode+"']/codenm");
  116. grp_lag.disabled = true;
  117. grp_dept.disabled = true;
  118. grp_mdl.disabled = false;
  119. grp_sml.disabled = true;
  120. grp_anct.disabled = false;
  121. }
  122. if (sDepth == "4") {
  123. vSmlcd = model.getValue(TreePath +"["+Idx+"]/codecd");
  124. vSmlnm = model.getValue(TreePath +"["+Idx+"]/codenm");
  125. vWinacnt = model.getValue(TreePath +"["+Idx+"]/winacnt" );
  126. vWinacntnm = model.getValue(TreePath +"["+Idx+"]/winacntnm" );
  127. vAmtacnt = model.getValue(TreePath +"["+Idx+"]/amtacnt" );
  128. vAmtacntnm = model.getValue(TreePath +"["+Idx+"]/amtacntnm" );
  129. OpCode = model.getValue(TreePath +"["+Idx+"]/basecd");
  130. vMdlcd = model.getValue(TreePath +"[pcode='"+ OpCode+"']/codecd");
  131. vMdlnm = model.getValue(TreePath +"[pcode='"+ OpCode+"']/codenm");
  132. OpCode = model.getValue(TreePath +"[pcode='"+ OpCode+"']/basecd");
  133. vLrgcd = model.getValue(TreePath +"[pcode='"+ OpCode+"']/codecd");
  134. vLrgnm = model.getValue(TreePath +"[pcode='"+ OpCode+"']/codenm");
  135. OpCode = model.getValue(TreePath +"[pcode='"+ OpCode+"']/basecd");
  136. vGoodflag = model.getValue(TreePath +"[pcode='"+ OpCode+"']/codecd");
  137. vGoodflagnm = model.getValue(TreePath +"[pcode='"+ OpCode+"']/codenm");
  138. grp_lag.disabled = true;
  139. grp_dept.disabled = true;
  140. grp_mdl.disabled = true;
  141. grp_sml.disabled = false;
  142. grp_anct.disabled = false;
  143. bbt_append.disabled = true;
  144. }
  145. model.setValue(WorkPath + "/depth" , sDepth );
  146. model.setValue(WorkPath + "/goodflag" , vGoodflag );
  147. model.setValue(WorkPath + "/goodflagnm" , vGoodflagnm );
  148. model.setValue(WorkPath + "/lrgcd" , vLrgcd );
  149. model.setValue(WorkPath + "/lrgnm" , vLrgnm );
  150. model.setValue(WorkPath + "/mdlcd" , vMdlcd );
  151. model.setValue(WorkPath + "/mdlnm" , vMdlnm );
  152. model.setValue(WorkPath + "/smlcd" , vSmlcd );
  153. model.setValue(WorkPath + "/smlnm" , vSmlnm );
  154. model.setValue(WorkPath + "/mainmngtdeptcd", vMainmngtdeptcd );
  155. model.setValue(WorkPath + "/mainmngtdeptnm", vMainmngtdeptnm );
  156. model.setValue(WorkPath + "/winacnt" , vWinacnt );
  157. model.setValue(WorkPath + "/winacntnm" , vWinacntnm );
  158. model.setValue(WorkPath + "/amtacnt" , vAmtacnt );
  159. model.setValue(WorkPath + "/amtacntnm" , vAmtacntnm );
  160. model.setValue(WorkPath + "/facdcnt" , vFacdcnt );
  161. model.setValue(WorkPath + "/goodcnt" , vGoodcnt );
  162. model.setValue(CompPath + "/depth" , sDepth );
  163. model.setValue(CompPath + "/goodflag" , vGoodflag );
  164. model.setValue(CompPath + "/goodflagnm" , vGoodflagnm );
  165. model.setValue(CompPath + "/lrgcd" , vLrgcd );
  166. model.setValue(CompPath + "/lrgnm" , vLrgnm );
  167. model.setValue(CompPath + "/mdlcd" , vMdlcd );
  168. model.setValue(CompPath + "/mdlnm" , vMdlnm );
  169. model.setValue(CompPath + "/smlcd" , vSmlcd );
  170. model.setValue(CompPath + "/smlnm" , vSmlnm );
  171. model.setValue(CompPath + "/mainmngtdeptcd", vMainmngtdeptcd );
  172. model.setValue(CompPath + "/mainmngtdeptnm", vMainmngtdeptnm );
  173. model.setValue(CompPath + "/winacnt" , vWinacnt );
  174. model.setValue(CompPath + "/winacntnm" , vWinacntnm );
  175. model.setValue(CompPath + "/amtacnt" , vAmtacnt );
  176. model.setValue(CompPath + "/amtacntnm" , vAmtacntnm );
  177. model.setValue(CompPath + "/facdcnt" , vFacdcnt );
  178. model.setValue(CompPath + "/goodcnt" , vGoodcnt );
  179. //if (xAuth) {
  180. // grp_lag.disabled = xAuth;
  181. // grp_dept.disabled = xAuth;
  182. // grp_mdl.disabled = xAuth;
  183. // grp_sml.disabled = xAuth;
  184. // grp_anct.disabled = xAuth;
  185. //
  186. // bbt_append.disabled = xAuth;
  187. // btn_save.disabled = xAuth;
  188. // bbt_delete.disabled = xAuth;
  189. //}
  190. //
  191. grp_disp.refresh();
  192. }
  193. // --------------------------------------------------
  194. // Append Data
  195. // --------------------------------------------------
  196. function fAppendData() {
  197. var sDepth = model.getValue(WorkPath + "/depth");
  198. if (sDepth == "") {
  199. alert("상위 분류를 선택 하십시요!! ");
  200. return;
  201. }
  202. //
  203. if (fCheckEdit() ){
  204. if (messageBox("데이터가 변경 되었습니다. ", "Q003") == "2") return;
  205. fCompare2Work();
  206. }
  207. //
  208. if (sDepth == "1") {
  209. model.setValue(WorkPath + "/depth" , "2");
  210. grp_lag.disabled = false;
  211. grp_dept.disabled = false;
  212. grp_mdl.disabled = true;
  213. grp_sml.disabled = true;
  214. grp_anct.disabled = false;
  215. }
  216. if (sDepth == "2") {
  217. model.setValue(WorkPath + "/depth" , "3");
  218. grp_lag.disabled = true;
  219. grp_dept.disabled = true;
  220. grp_mdl.disabled = false;
  221. grp_sml.disabled = true;
  222. grp_anct.disabled = false;
  223. }
  224. if (sDepth == "3") {
  225. model.setValue(WorkPath + "/depth" , "4");
  226. grp_lag.disabled = true;
  227. grp_dept.disabled = true;
  228. grp_mdl.disabled = true;
  229. grp_sml.disabled = false;
  230. grp_anct.disabled = false;
  231. bbt_append.disabled = true;
  232. }
  233. bbt_delete.disabled = true;
  234. // ipt_lrgcd.disabled = true;
  235. // ipt_mdlcd.disabled = true;
  236. // ipt_smlcd.disabled = true;
  237. model.setValue(WorkPath + "/jobcls" , "I" );
  238. model.setValue(WorkPath + "/mainmngtdeptcd", "" );
  239. model.setValue(WorkPath + "/mainmngtdeptnm", "" );
  240. model.setValue(WorkPath + "/winacnt" , "" );
  241. model.setValue(WorkPath + "/winacntnm" , "" );
  242. model.setValue(WorkPath + "/amtacnt" , "" );
  243. model.setValue(WorkPath + "/amtacntnm" , "" );
  244. grp_disp.refresh();
  245. }
  246. //
  247. // 변경여부 Check
  248. //
  249. function fCheckEdit(){
  250. var EditChk = true;
  251. if ( model.getValue(WorkPath + "/depth" ) != model.getValue(CompPath + "/depth" )) return EditChk;
  252. if ( model.getValue(WorkPath + "/goodflag" ) != model.getValue(CompPath + "/goodflag" )) return EditChk;
  253. if ( model.getValue(WorkPath + "/goodflagnm" ) != model.getValue(CompPath + "/goodflagnm" )) return EditChk;
  254. if ( model.getValue(WorkPath + "/lrgcd" ) != model.getValue(CompPath + "/lrgcd" )) return EditChk;
  255. if ( model.getValue(WorkPath + "/lrgnm" ) != model.getValue(CompPath + "/lrgnm" )) return EditChk;
  256. if ( model.getValue(WorkPath + "/mdlcd" ) != model.getValue(CompPath + "/mdlcd" )) return EditChk;
  257. if ( model.getValue(WorkPath + "/mdlnm" ) != model.getValue(CompPath + "/mdlnm" )) return EditChk;
  258. if ( model.getValue(WorkPath + "/smlcd" ) != model.getValue(CompPath + "/smlcd" )) return EditChk;
  259. if ( model.getValue(WorkPath + "/smlnm" ) != model.getValue(CompPath + "/smlnm" )) return EditChk;
  260. if ( model.getValue(WorkPath + "/mainmngtdeptcd") != model.getValue(CompPath + "/mainmngtdeptcd")) return EditChk;
  261. if ( model.getValue(WorkPath + "/mainmngtdeptnm") != model.getValue(CompPath + "/mainmngtdeptnm")) return EditChk;
  262. if ( model.getValue(WorkPath + "/winacnt" ) != model.getValue(CompPath + "/winacnt" )) return EditChk;
  263. if ( model.getValue(WorkPath + "/winacntnm" ) != model.getValue(CompPath + "/winacntnm" )) return EditChk;
  264. if ( model.getValue(WorkPath + "/amtacnt" ) != model.getValue(CompPath + "/amtacnt" )) return EditChk;
  265. if ( model.getValue(WorkPath + "/amtacntnm" ) != model.getValue(CompPath + "/amtacntnm" )) return EditChk;
  266. EditChk = false;
  267. return EditChk;
  268. }
  269. //
  270. // 변경여부 Check
  271. //
  272. function fCompare2Work(){
  273. model.setValue(WorkPath + "/depth" , model.getValue(CompPath + "/depth" ));
  274. model.setValue(WorkPath + "/goodflag" , model.getValue(CompPath + "/goodflag" ));
  275. model.setValue(WorkPath + "/goodflagnm" , model.getValue(CompPath + "/goodflagnm" ));
  276. model.setValue(WorkPath + "/lrgcd" , model.getValue(CompPath + "/lrgcd" ));
  277. model.setValue(WorkPath + "/lrgnm" , model.getValue(CompPath + "/lrgnm" ));
  278. model.setValue(WorkPath + "/mdlcd" , model.getValue(CompPath + "/mdlcd" ));
  279. model.setValue(WorkPath + "/mdlnm" , model.getValue(CompPath + "/mdlnm" ));
  280. model.setValue(WorkPath + "/smlcd" , model.getValue(CompPath + "/smlcd" ));
  281. model.setValue(WorkPath + "/smlnm" , model.getValue(CompPath + "/smlnm" ));
  282. model.setValue(WorkPath + "/mainmngtdeptcd", model.getValue(CompPath + "/mainmngtdeptcd"));
  283. model.setValue(WorkPath + "/mainmngtdeptnm", model.getValue(CompPath + "/mainmngtdeptnm"));
  284. model.setValue(WorkPath + "/winacnt" , model.getValue(CompPath + "/winacnt" ));
  285. model.setValue(WorkPath + "/winacntnm" , model.getValue(CompPath + "/winacntnm" ));
  286. model.setValue(WorkPath + "/amtacnt" , model.getValue(CompPath + "/amtacnt" ));
  287. model.setValue(WorkPath + "/amtacntnm" , model.getValue(CompPath + "/amtacntnm" ));
  288. model.setValue(WorkPath + "/facdcnt" , model.getValue(CompPath + "/facdcnt" ));
  289. model.setValue(WorkPath + "/goodcnt" , model.getValue(CompPath + "/goodcnt" ));
  290. }
  291. // --------------------------------------------------
  292. // 분류코드 저장하기
  293. // --------------------------------------------------
  294. function fDataSubmit(pCls) {
  295. var tIdx = trv_setcode.focusIndex;
  296. var wJobCls = "";
  297. model.removenode("/root/send");
  298. if (pCls == "D") {
  299. if (model.getValue(WorkPath + "/facdcnt")!="") {
  300. alert("해당분류에 등록된 장비가 있습니다. 삭제할 수 없습니다.");
  301. return;
  302. }
  303. if (model.getValue(WorkPath + "/goodcnt")!="") {
  304. alert("해당분류에 등록된 물품이 있습니다. 삭제할 수 없습니다.");
  305. return;
  306. }
  307. if (model.getValue(WorkPath + "/depth") == "1") {
  308. alert("해당분류는 삭제할 수 없습니다.");
  309. return;
  310. }
  311. //
  312. wJobCls = "D";
  313. } else {
  314. wJobCls = model.getValue(WorkPath + "/jobcls");
  315. }
  316. //
  317. model.makeValue("/root/send/status" , wJobCls ); // 작업구분
  318. model.makeValue("/root/send/depth" , model.getValue(WorkPath + "/depth" )); // 분류구분
  319. model.makeValue("/root/send/lrgcd" , model.getValue(WorkPath + "/lrgcd" )); // 대분류코드
  320. model.makeValue("/root/send/lrgnm" , model.getValue(WorkPath + "/lrgnm" )); // 대분류명
  321. model.makeValue("/root/send/mdlcd" , model.getValue(WorkPath + "/mdlcd" )); // 중분류코드
  322. model.makeValue("/root/send/mdlnm" , model.getValue(WorkPath + "/mdlnm" )); // 중분류명
  323. model.makeValue("/root/send/smlcd" , model.getValue(WorkPath + "/smlcd" )); // 소분류코드
  324. model.makeValue("/root/send/smlnm" , model.getValue(WorkPath + "/smlnm" )); // 소분류명
  325. model.makeValue("/root/send/mainmngtdeptcd" , model.getValue(WorkPath + "/mainmngtdeptcd")); // 주관부서
  326. model.makeValue("/root/send/winacnt" , model.getValue(WorkPath + "/winacnt" )); // 계정코드(입고)
  327. model.makeValue("/root/send/winacntnm" , model.getValue(WorkPath + "/winacntnm" )); // 계정명(입고)
  328. model.makeValue("/root/send/amtacnt" , model.getValue(WorkPath + "/amtacnt" )); // 계정코드(출고)
  329. model.makeValue("/root/send/amtacntnm" , model.getValue(WorkPath + "/amtacntnm" )); // 계정명(출고)
  330. model.makeValue("/root/send/goodflag" , model.getValue(WorkPath + "/goodflag" )); // 물품구분
  331. if (submit("TXRSC05102")) {
  332. messageBox("작업이 ","I001"); // 작업 처리 완료
  333. if (wJobCls !="U") {
  334. fInit("S");
  335. //trv_setcode.focusIndex = tIdx;
  336. trv_setcode.refresh();
  337. }
  338. }
  339. }
  340. // trv_base.select(i); 위치...
  341. // trv_base.rebuild();
  342. // if ( btn_trvzoom.attribute("text") == "닫힘" ) {
  343. // trv_base.expandDepth = 0;
  344. // btn_trvzoom.attribute("text") = "펼침";
  345. //
  346. // } else {
  347. // trv_base.expandDepth = -1;
  348. // btn_trvzoom.attribute("text") = "닫힘";
  349. // }
  350. /* ------------------------------------------------- */
  351. /* ------End Of List ------------------------------- */
  352. /* -------------------------------------------------- */