SMMNS00200.xjs 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[///////////////////////////////////////
  3. /*
  4. 전문간호 등록대상자관리 (SMMNS00200.xrw - JScript )
  5. - Version :
  6. 1) : Ver.1.00.01
  7. */
  8. var suppdeptcd = '';//메뉴그룹에 등록된 사용부서코드
  9. //초기정보조회(전문분야, 공통코드)
  10. /***********************************************************************************************************************************************************
  11. * @author : dhkim
  12. * @desc : 전문분야 코드및 명칭을 조회한다.
  13. ***********************************************************************************************************************************************************/
  14. function fSpclCareSearch(suppdeptcd){
  15. //20090205 dhkim
  16. //전문간호/BMT전문간호 로 나눠지게 되면서 사용부서에 해당하는 분야로 각각 등록됨.
  17. ds_send.clearData();
  18. dsf_makeValue(ds_send,"suppdeptcd" , "string", suppdeptcd);
  19. ds_hidden_spclcarefildflaginfo_spclcarefildflaginfolist.clearData();
  20. var oParam = {};
  21. oParam.id = "TRMNS00107";
  22. oParam.service = "spclcareapp.SpclCarePatMngt";
  23. oParam.method = "reqGetSpclCareFild";
  24. oParam.inds = "req=ds_send";
  25. oParam.outds = "ds_hidden_spclcarefildflaginfo_spclcarefildflaginfolist=spclcarefildflaginfolist";
  26. oParam.async = false;
  27. oParam.callback = "cf_TRMNS00107";
  28. tranf_submit(oParam);
  29. if(arErrorCode.pop("TRMNS00107") < 0){
  30. sysf_messageBox('전문분야기준자료 조회를 실패하였습니다.', 'E999');
  31. }
  32. }
  33. /***********************************************************************************************************************************************************
  34. * @author : dhkim
  35. * @desc : 전문간호겸업부서 정보
  36. ***********************************************************************************************************************************************************/
  37. function fSpclSideJobSearch(){
  38. //20090128 dhkim
  39. //간호에 등록된 전문간호겸업부서 정보를 임시노드에 조회해 온다.
  40. //간호 테이블에 등록된 조회정보
  41. //전문분야코드 : 022, 전문간호팀코드 : 023, 전문간호겸업부서코드 : 024
  42. ds_send.clearData();
  43. dsf_makeValue(ds_send,"cdgrupid" , "string", '024');
  44. ds_hidden_spclsideinfo_spclsidelist.clearData();
  45. var oParam = {};
  46. oParam.id = "TRMNS00110";
  47. oParam.service = "spclcareapp.SpclCarePatMngt";
  48. oParam.method = "reqGetNursDeptInfo";
  49. oParam.inds = "req=ds_send";
  50. oParam.outds = "ds_hidden_spclsideinfo_spclsidelist=spclsidelist";
  51. oParam.async = false;
  52. oParam.callback = "cf_TRMNS00110";
  53. tranf_submit(oParam);
  54. if(arErrorCode.pop("TRMNS00110") < 0){
  55. sysf_messageBox('간호에 등록된 전문분야겸업부서정보 조회를 실패하였습니다.', 'E999');
  56. return false;
  57. }
  58. }
  59. // emr.mnwmcode
  60. // cdgrupid 022, 023, 024
  61. // 022 : 전문분야리스트 (grupdetldesc : R <- 의뢰데이터구분)
  62. // 023 : 전문간호팀코드
  63. // 024 : 전문간호겸업부서 (상처/장요루)
  64. /**
  65. * 화면 초기화
  66. */
  67. function fInit(){
  68. //20090205 dhkim
  69. //전문간호/BMT전문간호 로 나눠지게 되면서 사용부서에 해당하는 분야로 각각 등록됨.
  70. suppdeptcd = lf_aezfSetSuppDeptcd();//메뉴그룹에 등록된 사용부서코드
  71. fSpclCareSearch(suppdeptcd); //전문분야를 조회한다.
  72. fSpclSideJobSearch(); //전문분야 겸업 부서를 조회한다.
  73. grp_biz.cmb_spcl.index = 0; //전문분야의 콤보 제일 첫번째로 선택된 상태
  74. }
  75. /**
  76. * @group :
  77. * @ver : 2007.05.16
  78. * @by : 정경화
  79. * @---------------------------------------------------
  80. * @type : function
  81. * @access : public
  82. * @desc : 조회일자 Setting
  83. * @param :
  84. * @return :
  85. * @---------------------------------------------------
  86. */
  87. function select_Date(){
  88. grp_biz.grp_sea.ipt_Fromdd.value = utlf_getCurrentDate();
  89. grp_biz.grp_sea.ipt_Enddd.value = utlf_getCurrentDate();
  90. }
  91. /**
  92. * @group :
  93. * @ver : 2007.06.15
  94. * @by : 정경화
  95. * @---------------------------------------------------
  96. * @type : function
  97. * @access : public
  98. * @desc : 전문간호 환자리스트를 조회한다.
  99. * @param :
  100. * @return :
  101. * @---------------------------------------------------
  102. */
  103. function select_educpatlist(){
  104. var endyn = ds_cond.getColumn(0, "endyn");
  105. var fromdd = ds_cond.getColumn(0, "fromdd");
  106. var todd = ds_cond.getColumn(0, "todd");
  107. if( utlf_isNull(fromdd) ){
  108. fromdd = utlf_getCurrentDate();
  109. }
  110. if( utlf_isNull(todd) ){
  111. todd = utlf_getCurrentDate();
  112. }
  113. //20090128 전문분야중 겸업인 부서를 찾는다.
  114. var spcl = ds_cond.getColumn(0, "spcl");
  115. spcl = fMakeSpclSideQuery(spcl);
  116. ds_main_eduinfo_edupatlist.clearData();
  117. ds_send.clearData();
  118. dsf_makeValue(ds_send,"spcl" , "string", spcl);
  119. dsf_makeValue(ds_send,"fromdd" , "string", fromdd);
  120. dsf_makeValue(ds_send,"todd" , "string", todd);
  121. dsf_makeValue(ds_send,"endyn" , "string", endyn);
  122. var oParam = {};
  123. oParam.id = "TRMNS00201";
  124. oParam.service = "spclcareapp.SpclCarePatMngt";
  125. oParam.method = "reqGetEducPatListInfo";
  126. oParam.inds = "req=ds_send";
  127. oParam.outds = "ds_main_eduinfo_edupatlist=edupatlist";
  128. oParam.async = false;
  129. oParam.callback = "cf_TRMNS00201";
  130. tranf_submit(oParam);
  131. if(arErrorCode.pop("TRMNS00201") < 0){
  132. sysf_messageBox('등록대상자 환자조회를 실패하였습니다.', 'E999');
  133. return false;
  134. }
  135. }
  136. /**
  137. * @group :
  138. * @ver : 2007.06.16
  139. * @by : 정경화
  140. * @---------------------------------------------------
  141. * @type : function
  142. * @access : public
  143. * @desc : 조회구분별 GridSetting
  144. * @param :
  145. * @return :
  146. * @---------------------------------------------------
  147. */
  148. function gridSetting(){
  149. var TitleLeft = 275;
  150. var TitleTop = 185;
  151. var TitleHeight = 515;
  152. // 환자등록 및 조회 Clear
  153. //clearGroup(grp_pat,0);
  154. // 조회구분에 따른 GridSetting
  155. caption4.text = "등록환자 리스트";
  156. grp_edu.visible = true;
  157. grp_edufg.visible = true;
  158. //grp_edufg.attribute ( "left" ) = TitleLeft;
  159. model.removeNodeSet("/root/main/eduinfo/edupatlist");
  160. model.refresh();
  161. }
  162. /**
  163. * @group :
  164. * @ver : 2007.06.18
  165. * @by : 정경화
  166. * @---------------------------------------------------
  167. * @type : function
  168. * @access : public
  169. * @desc : 진료구분별 날짜 Setting
  170. * @param :
  171. * @return :
  172. * @---------------------------------------------------
  173. */
  174. function select_refDate(){
  175. // 6개월이전 내분비내원
  176. if (rdo_reffg.value == "1") {
  177. // 조회일자 설정
  178. model.makeValue("/root/send/ffromdd", getAddDay(getCurrentDate(), -180)); // 365일 이전 일자
  179. model.makeValue("/root/send/ftodd", getCurrentDate()); // 현재일자
  180. model.refresh();
  181. }
  182. else // 6개월이내 내분비내원
  183. if (rdo_reffg.value == "2") {
  184. // 조회일자 설정
  185. model.makeValue("/root/send/ffromdd", getCurrentDate());
  186. model.makeValue("/root/send/ftodd", getCurrentDate()); // 현재일자
  187. model.refresh();
  188. }
  189. }
  190. /**
  191. * @group :
  192. * @ver : 2007.06.19
  193. * @by : 정경화
  194. * @---------------------------------------------------
  195. * @type : function
  196. * @access : public
  197. * @desc : 전문간호 마스터 기본정보조회
  198. * @param :
  199. * @return :
  200. * @---------------------------------------------------
  201. */
  202. function select_educpat(){
  203. var niRow = ds_main_eduinfo_edupatlist.rowposition;
  204. ds_send.clearData();
  205. dsf_makeValue(ds_send,"pid" , "string", ds_main_eduinfo_edupatlist.getColumn(niRow, "pid"));
  206. dsf_makeValue(ds_send,"spcl" , "string", ds_main_eduinfo_edupatlist.getColumn(niRow, "spclcarefildflag"));
  207. dsf_makeValue(ds_send,"fromdd" , "string", ds_main_eduinfo_edupatlist.getColumn(niRow, "educfromdd"));
  208. var oParam = {};
  209. oParam.id = "TRMNS00203";
  210. oParam.service = "spclcareapp.SpclCarePatMngt";
  211. oParam.method = "reqGetEducPatInfo";
  212. oParam.inds = "req=ds_send";
  213. oParam.outds = "ds_main_edupat_edupatinfo=edupatinfo";
  214. oParam.async = false;
  215. tranf_submit(oParam);
  216. if(ds_main_edupat_edupatinfo.getColumn(0, "endyn")=="Y"){
  217. grp_biz.grp_pat.grp_end.visible = true;
  218. }else{
  219. grp_biz.grp_pat.grp_end.visible = false;
  220. }
  221. }
  222. /**
  223. * @group :
  224. * @ver : 2007.06.30
  225. * @by : 정경화
  226. * @---------------------------------------------------
  227. * @type : function
  228. * @access : public
  229. * @desc : 전문간호 참조대상관리 관리환자등록(입력/수정)
  230. * @param :
  231. * @return :
  232. * @---------------------------------------------------
  233. */
  234. function PidNewIns(){
  235. ds_send_pidins.clearData();
  236. dsf_makeValue(ds_send_pidins,"newyn" , "string", ds_main_edupat_edupatinfo.getColumn(0, "newyn"));
  237. dsf_makeValue(ds_send_pidins,"pid" , "string", ds_main_edupat_edupatinfo.getColumn(0, "pid"));
  238. var educfromdd;
  239. if( utlf_isNull(ds_main_edupat_edupatinfo.getColumn(0, "educfromdd")) ){
  240. educfromdd = utlf_getCurrentDate();
  241. }else{
  242. educfromdd = ds_main_edupat_edupatinfo.getColumn(0, "educfromdd");
  243. }
  244. dsf_makeValue(ds_send_pidins,"educfromdd" , "string", educfromdd);
  245. dsf_makeValue(ds_send_pidins,"glycoskindflag" , "string",ds_main_edupat_edupatinfo.getColumn(0, "glycoskindflag"));
  246. dsf_makeValue(ds_send_pidins,"endyn" , "string",ds_main_edupat_edupatinfo.getColumn(0, "endyn"));
  247. dsf_makeValue(ds_send_pidins,"toreason" , "string",ds_main_edupat_edupatinfo.getColumn(0, "toreason"));
  248. dsf_makeValue(ds_send_pidins,"remark" , "string",ds_main_edupat_edupatinfo.getColumn(0, "remark"));
  249. dsf_makeValue(ds_send_pidins,"telno2" , "string",ds_main_edupat_edupatinfo.getColumn(0, "telno2"));
  250. dsf_makeValue(ds_send_pidins,"spcl" , "string",ds_send.getColumn(0, "spcl"));
  251. var oParam = {};
  252. oParam.id = "TXMNS00201";
  253. oParam.service = "spclcareapp.SpclCarePatMngt";
  254. oParam.method = "reqExeSaveNewEdu";
  255. oParam.inds = "req=ds_send_pidins";
  256. oParam.outds = "";
  257. oParam.async = false;
  258. tranf_submit(oParam);
  259. }
  260. /**
  261. * @group :
  262. * @ver : 2007.04.23
  263. * @by : 하재륜
  264. * @---------------------------------------------------
  265. * @type : function
  266. * @access : public
  267. * @desc : 화면 로드시
  268. * @param :
  269. * @return : 입력한날짜 + 날자
  270. * @---------------------------------------------------
  271. */
  272. function getAddDay(inputday,addend){
  273. var backDate ="";
  274. var rt = 0;
  275. var yyyy = inputday.substring(0,4) +"";
  276. var mm = inputday.substring(4,6) +"";
  277. var dd = inputday.substring(6,8) +"";
  278. var startDate = new Date(yyyy,(eval(mm)-1),dd);
  279. startDate.setTime(startDate.getTime()+(86400000*addend));
  280. NowYear = startDate.getYear();// 년
  281. NowMonth = startDate.getMonth()+1;// 월
  282. NowDay = startDate.getDate(); // 일
  283. backDate += NowYear ; //년도
  284. if (NowMonth < 10 ) backDate += "0" + NowMonth ;
  285. else backDate += (startDate.getMonth() + 1);
  286. if (NowDay < 10 ) backDate += "0" + NowDay ;
  287. else backDate += (startDate.getDate());
  288. return backDate ;
  289. }
  290. /***********************************************************************************************************************************************************
  291. * @author : dhkim
  292. * @create : 20090128
  293. * @desc : 상처/장요루 분야의 경우 상처, 장요루 코드를 함께 조회하도록 쿼리를 만들어서 조회한다.
  294. ***********************************************************************************************************************************************************/
  295. function fMakeSpclSideQuery(spclFildCd){
  296. var nodesetCnt = ds_hidden_spclsideinfo_spclsidelist.rowcount;
  297. var deptcd = "";
  298. var qryStr = "";
  299. var sideYn = "f";
  300. var retSpclCd = '';
  301. for(var i = 0; i < nodesetCnt; i++){
  302. deptcd = ds_hidden_spclsideinfo_spclsidelist.getColumn(i, "deptcd");
  303. if(i == nodesetCnt){
  304. qryStr += deptcd;
  305. }else{
  306. qryStr += deptcd + "|";
  307. }
  308. if(spclFildCd == deptcd){
  309. sideYn = "t";
  310. break;
  311. }
  312. }
  313. if(sideYn == "t"){
  314. retSpclCd = qryStr;
  315. }else{
  316. retSpclCd = spclFildCd;
  317. }
  318. //alert(retSpclCd);
  319. return retSpclCd;
  320. }]]></Script>