123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487 |
- /*
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- 협진회의록 ( SPMMO04100_협진회의록.xrw - JScript )
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- */
- var sCNSTCONF_PATH = "/root/main/cnstconf/cnstconf";
- var sCNSTCONFINFO_PATH = "/root/main/cnstconfinfo/cnstconfinfo";
- var sDIAGCDLIST_PATH = "/root/main/diaginfo/diagcdlist";
- var sSTAGECDLIST_PATH = "/root/main/cnststageinfo/cnststageinfo";
- /**
- * @desc : 화면 초기화
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fInitialize_SPMMO04100(){
-
- zbcfGetCodeList(new Array("M0445"),
- new Array("/root/init/M0445"));
- var status = opener.javascript.getParameter("SPMMO04100_status");
- var patinfo = opener.javascript.getParameter("SPMMO04100_patinfo");
- var confinfo = opener.javascript.getParameter("SPMMO04100_confinfo");
- var ioflag = opener.javascript.getParameter("SPMMO04100_ioflag");
- //SPMMO04100_patinfo
- //pid 등록번호
- //hngnm 환자명
- //sa 성별
- //orddeptcd 진료과코드
- //orddrid 진료의ID
- //orddd 진료일, 입원일(orddd, indd)
- //roomcd 병실
- var patinfoarr = patinfo.split("▦");
- //SPMMO04100_confinfo
- //genrdd 발생일자
- //genrno 발생번호
- //confrecno 회의록번호
- var confinfoarr = confinfo.split("▦");
- model.setValue(sCNSTCONF_PATH + "/pid" , patinfoarr[0]);
- model.setValue(sCNSTCONF_PATH + "/hngnm" , patinfoarr[1]);
- model.setValue(sCNSTCONF_PATH + "/sa" , patinfoarr[2]);
- model.setValue(sCNSTCONF_PATH + "/roomcd" , patinfoarr[6]);
- model.setValue(sCNSTCONF_PATH + "/conftitl" , patinfoarr[7]);
- mmbfGetDeptCodeComboList("/root/send/reqdata", "/root/init/orddept" , "A"); //부서코드 콤보
- model.setValue(sCNSTCONF_PATH + "/orddeptcd" , patinfoarr[3]);
- // mmbfGetUserComboList("/root/send/reqdata" , "/root/init/userlist", patinfoarr[3], "0330"); //사용자콤보 조회
- model.setValue(sCNSTCONF_PATH + "/orddrnm" , patinfoarr[4]);
- model.setValue(sCNSTCONF_PATH + "/genrdd" , confinfoarr[0]);
- model.setValue(sCNSTCONF_PATH + "/genrno" , confinfoarr[1]);
- model.setValue(sCNSTCONF_PATH + "/confrecno", confinfoarr[2]);
- model.makeValue(sCNSTCONF_PATH + "/confdt" , confinfoarr[3]);
-
- if(status == "i"){ //신규등록
- model.setValue(sCNSTCONF_PATH + "/confdd", getCurrentDate());
- model.setValue(sCNSTCONF_PATH + "/conftm", getCurrentTime().substr(0, 4));
- model.setValue(sCNSTCONF_PATH + "/writnm", getUserInfo("usernm")); //작성자 설정
- model.setValue(sCNSTCONF_PATH + "/writid", getUserInfo("userid"));
-
- model.removenode("/root/main/cnstconf/cnstconf/smokhist1");
- model.removenode("/root/main/cnstconf/cnstconf/smokhist2");
- model.removenode("/root/main/cnstconf/cnstconf/smokyear1");
-
- //환자의 전진단검사,
- //등록번호와 진료과, 외래입원구분을 기준으로 환자의 진단을 조회한다.
- //환자진단정보 tbl 저장된 가장 최근 진단을 조회
- //alert(patinfoarr[5]);
- if (ioflag != "") {
- fReqGetPatRectDiag(patinfoarr[0], patinfoarr[3], ioflag, patinfoarr[5]);
-
- fGetLastStageInfo() // Stage 설정
- }
- }else if(status == "u"){ //수정
- fReqCnstConfRecInfo(confinfoarr[0], confinfoarr[1], confinfoarr[2], confinfoarr[3], confinfoarr[4], confinfoarr[5]);
- }
- model.setValue(sCNSTCONF_PATH + "/status" , status);
-
- model.makeValue(sCNSTCONF_PATH + "/conf" , "Y");
- model.makeValue(sCNSTCONF_PATH + "/rslt" , "Y");
- model.refresh();
- }
- /**
- * @desc : 협진 회의록 저장
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fReqExeSaveCnstConfRecInfo(){
- inputEnterKey("button2", "DOMActivate"); // 흡연량을 계산하는 로직 추가 : 2008.11.14 김영학
- model.refresh();
- var status = model.getValue(sCNSTCONF_PATH + "/status");
- if(status == "u"){
- model.setValue(sCNSTCONFINFO_PATH + "/status", "u"); //변경된 사항 여부에 관계없이 status값이 달라, 동일하게 맞춰줌
- if(compareNodeVal(sCNSTCONF_PATH, sCNSTCONFINFO_PATH)==false){ //기존 회의록 수정의 경우, 변경된 사항이 없는 경우
- messageBox("변경된 사항이", "I004");
- return;
- }
- }
- // 흡연력에 따른 흡연량의 값을 따로가기 위해서 인스턴스를 따로 배정하였으나 저장은 같은 컬럼에 되도록 인스턴스 수정 : 2008.11.14 김영학
- var smokyn = model.getValue(sCNSTCONF_PATH + "/smokyn");
- if (smokyn == "1") {
- var smokday = model.getValue(sCNSTCONF_PATH + "/smokday1");
- var smokyear = model.getValue(sCNSTCONF_PATH + "/smokyear1");
- var smokhist = model.getValue(sCNSTCONF_PATH + "/smokhist1");
- } else if (smokyn== "2") {
- var smokday = model.getValue(sCNSTCONF_PATH + "/smokday2");
- var smokyear = model.getValue(sCNSTCONF_PATH + "/smokyear2");
- var smokhist = model.getValue(sCNSTCONF_PATH + "/smokhist2");
- }
- model.setValue(sCNSTCONF_PATH + "/smokday", smokday);
- model.setValue(sCNSTCONF_PATH + "/smokyear", smokyear);
- model.setValue(sCNSTCONF_PATH + "/smokhist", smokhist);
- // 흡연력에 따른 흡연량의 값을 따로가기 위해서 인스턴스를 따로 배정하였으나 저장은 같은 컬럼에 되도록 인스턴스 수정
- var conftitl = model.getValue(sCNSTCONF_PATH + "/conftitl");
- var confplce = model.getValue(sCNSTCONF_PATH + "/confplce");
- var smokhist = model.getValue(sCNSTCONF_PATH + "/smokyn");
- var orgdiagcd = model.getValue(sCNSTCONF_PATH + "/orgdiagcd");
- var ecogscale = model.getValue(sCNSTCONF_PATH + "/ecogscale");
- if(conftitl.length < 1){
- messageBox("회의 제목을", "C001");
- model.setFocus("ipt_titl");
- return;
- }
- if(confplce.length < 1){
- messageBox("회의 장소를", "C001");
- model.setFocus("ipt_confplce");
- return;
- }
- /* ECOG , 병기, 흡연력은 필수 아님. Check 안해도 저장되어야 함 : 2009. 02. 06 김영학 (변경요청번호 : 894)
- if(smokyn.length < 1){
- messageBox("흡연력을", "C001");
- return;
- }
- */
- if(orgdiagcd.length < 1){
- messageBox("진단을", "C001");
- model.setFocus("ipt_diagnm");
- return;
- }
- /* ECOG , 병기, 흡연력은 필수 아님. Check 안해도 저장되어야 함 : 2009. 02. 06 김영학 (변경요청번호 : 894)
- if(ecogscale < 1){
- messageBox("ECOG를", "C001");
- return;
- }
- */
- model.copyNode("/root/send/savedata", sCNSTCONF_PATH);
- if(submit("TXMMO04110")){
- var status = model.getValue(sCNSTCONF_PATH + "/status");
- if(status == "i"){
- messageBox("회의록 저장이", "I001");
- }else{
- messageBox("회의록 수정이", "I001");
- }
- model.close();
- }
- }
- /**
- * @desc : 협진 회의록 조회
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fReqCnstConfRecInfo(genrdd , genrno, confrecno, confdt, pid, state){
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/genrdd" ,genrdd);
- model.makeValue("/root/send/reqdata/genrno" ,genrno);
- model.makeValue("/root/send/reqdata/confrecno",confrecno);
- model.makeValue("/root/send/reqdata/confdt" ,confdt);
- model.makeValue("/root/send/reqdata/state" ,state);
- model.makeValue("/root/send/reqdata/pid" ,model.getValue(sCNSTCONF_PATH + "/pid"));
- if(submit("TRMMO04110")){
- var nodelist = model.instance1.selectNodes(sCNSTCONFINFO_PATH);
- // smokyn(흡연력)의 경우에 따라 흡연량의 값을 셋팅해주는 로직 추가 : 2008.11.14 김영학
- var smokyn = model.getValue(sCNSTCONFINFO_PATH + "/smokyn");
- if (smokyn =="1") {
- var smokday = model.makeValue(sCNSTCONFINFO_PATH + "/smokday1", model.getValue(sCNSTCONFINFO_PATH + "/smokday"));
- var smokyear = model.makeValue(sCNSTCONFINFO_PATH + "/smokyear1", model.getValue(sCNSTCONFINFO_PATH + "/smokyear"));
- var smokhist = model.makeValue(sCNSTCONFINFO_PATH + "/smokhist1", model.getValue(sCNSTCONFINFO_PATH + "/smokhist"));
- } else if (smokyn =="2") {
- var smokday = model.makeValue(sCNSTCONFINFO_PATH + "/smokday2", model.getValue(sCNSTCONFINFO_PATH + "/smokday"));
- var smokyear = model.makeValue(sCNSTCONFINFO_PATH + "/smokyear2", model.getValue(sCNSTCONFINFO_PATH + "/smokyear"));
- var smokhist = model.makeValue(sCNSTCONFINFO_PATH + "/smokhist2", model.getValue(sCNSTCONFINFO_PATH + "/smokhist"));
- }
- //smokyn(흡연력)의 경우에 따라 흡연량의 값을 셋팅해주는 로직 추가 : 2008.11.14 김영학
- if(nodelist.length > 0){
- model.copyNode(sCNSTCONF_PATH, sCNSTCONFINFO_PATH);
- }
- }
-
- model.refresh();
- }
- /**
- * @desc : 진단용어 코드 조회
- * @ : 진단용어 코드로 검색
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fReqGetDiagTermASCode(diagcd){
- if(diagcd.length < 2){
- messageBox("검색어를 두 글자 이상", "C001");
- return;
- }
- setParameter("SPMMO00800_cond1", 1);
- setParameter("SPMMO00800_cond2", 4);
- setParameter("SPMMO00800_cond3", "E");
- setParameter("SPMMO00800_cond4", getCurrentDate());
- setParameter("SPMMO00800_cond5", diagcd);
- modal("SPMMO00800");
- var useyn = getParameter("SPMMO00800_rtn_useyn");
- if(useyn == "Y"){
- var rtnparam = getParameter("SPMMO00800_rtn");
- rtnparam = rtnparam.split("▩");
- var diaginfo = rtnparam[1];
- diaginfo = diaginfo.split("▦");
- model.setValue(sCNSTCONF_PATH + "/diagcd" , diaginfo[1]);
- model.setValue(sCNSTCONF_PATH + "/orgdiagcd", diaginfo[9]);
- model.setValue(sCNSTCONF_PATH + "/diagnm" , diaginfo[2]);
- }
- model.refresh();
- }
- /**
- * @desc : 진단용어 코드 조회
- * @ : 진단명으로 검색
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fReqGetDiagTermAsNm(diagnm){
- if(diagnm.length < 2){
- messageBox("검색어를 두 글자 이상", "C001");
- return;
- }
- setParameter("SPMMO00800_cond1", 2);
- setParameter("SPMMO00800_cond2", 4);
- setParameter("SPMMO00800_cond3", fIsHangul(diagnm));
- setParameter("SPMMO00800_cond4", getCurrentDate());
- setParameter("SPMMO00800_cond5", diagnm);
- modal("SPMMO00800");
- var useyn = getParameter("SPMMO00800_rtn_useyn");
- if(useyn == "Y"){
- var rtnparam = getParameter("SPMMO00800_rtn");
- rtnparam = rtnparam.split("▩");
- var diaginfo = rtnparam[1];
- diaginfo = diaginfo.split("▦");
- model.setValue(sCNSTCONF_PATH + "/diagcd" , diaginfo[1]);
- model.setValue(sCNSTCONF_PATH + "/orgdiagcd", diaginfo[9]);
- model.setValue(sCNSTCONF_PATH + "/diagnm" , diaginfo[2]);
- }
- model.refresh();
- }
- /**
- * @desc : 환자의 최근진단 검색
- * : 환자진단정보의 가장 최근 진단 검색
- * : 기준일은 현재로 설정
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fReqGetPatRectDiag(pid, orddeptcd, ioflag, orddd){
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/pid" , pid);
- model.makeValue("/root/send/reqdata/orddeptcd" , orddeptcd);
- model.makeValue("/root/send/reqdata/orddd" , orddd);
- model.makeValue("/root/send/reqdata/ioflag" , ioflag);
- model.makeValue("/root/send/reqdata/diagkindcdflag", "M"); //주진단만 처리
- if(submit("TRMMO00114")){
- var nodelist = model.instance1.selectNodes(sDIAGCDLIST_PATH);
- if(nodelist.length > 0){
- var diagcd = model.getValue(sDIAGCDLIST_PATH + "/icd10cd");
- var orgdiagcd = model.getValue(sDIAGCDLIST_PATH + "/diagcd");
- var diagnm = model.getValue(sDIAGCDLIST_PATH + "/diagengnm");
-
- model.setValue(sCNSTCONF_PATH + "/diagcd" , diagcd);
- model.setValue(sCNSTCONF_PATH + "/orgdiagcd", orgdiagcd);
- model.setValue(sCNSTCONF_PATH + "/diagnm" , diagnm);
- }
- }
- model.refresh();
- }
-
- /**
- * @desc : 이전 버튼 클릭시 이전협진회의록을 보여줌
- * @
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
- function fGetPrevCnstConfRecInfo() {
- var confrecno = model.getValue("/root/main/cnstconf/cnstconf/confrecno");
-
- if (confrecno == 1 || confrecno == 0) {
- messageBox("이전 협진회의록이", "E014" );
- } else {
- confrecno --;
- model.setValue("/root/main/cnstconf/cnstconf/confrecno" ,confrecno );
- var confinfo = opener.javascript.getParameter("SPMMO04100_confinfo");
- var confinfoarr = confinfo.split("▦");
- model.setValue(sCNSTCONF_PATH + "/genrdd" , confinfoarr[0]);
- model.setValue(sCNSTCONF_PATH + "/genrno" , confinfoarr[1]);
- fReqCnstConfRecInfo(confinfoarr[0], confinfoarr[1], confrecno);
- model.refresh();
- }
- }
- /**
- * @desc : 이후 버튼 클릭시 이후 협진회의록을 보여줌
- * @
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
- function fGetNextCnstConfRecInfo() {
- model.removenode("/root/send/reqdata/")
- model.copyNode("/root/send/req/genrno", "/root/main/cnstconf/cnstconf/genrno");
- model.copyNode("/root/send/req/genrdd", "/root/main/cnstconf/cnstconf/genrdd");
- submit("TRMMO04111");
- var maxconfrecno = model.getValue("/root/hidden/maxcnst/maxcnst/maxconfrecno");
- var confrecno = model.getValue("/root/main/cnstconf/cnstconf/confrecno");
- if (confrecno >= Number(maxconfrecno)-1) {
- messageBox("이후 협진회의록이", "E014" );
- } else {
- confrecno ++;
- model.setValue("/root/main/cnstconf/cnstconf/confrecno" ,confrecno );
- var confinfo = opener.javascript.getParameter("SPMMO04100_confinfo");
- var confinfoarr = confinfo.split("▦");
- model.setValue(sCNSTCONF_PATH + "/genrdd" , confinfoarr[0]);
- model.setValue(sCNSTCONF_PATH + "/genrno" , confinfoarr[1]);
- fReqCnstConfRecInfo(confinfoarr[0], confinfoarr[1], confrecno);
- model.refresh();
- }
- }
- /**
- * @desc : 최근 버튼 클릭시 이후 협진회의록을 보여줌
- * @
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
- function fGetLastCnstConfRecInfo() {
- model.removeNodeset("/root/send/reqdata");
- var pid = opener.javascript.getParameter("SPMMO04100_pid");
-
- //model.makeValue("/root/send/reqdata/pid" , model.getValue("/root/main/cnstconf/cnstconf/pid"));
- model.makeValue("/root/send/reqdata/pid" , pid);
-
-
- btn_prev.visible = true;
- btn_next.visible = true;
-
- btn_save.disabled = true;
- ipt_pid.disabled = true;
- ipt_hngnm.disabled = true;
- ipt_sa.disabled = true;
- input3.disabled = true;
- cmb_cnstorddeptcd.disabled = true;
- cmb_cnstorddrid.disabled = true;
- ipt_diagcd.disabled = true;
- ipt_diagnm.disabled = true;
- input4.disabled = true;
- input5.disabled = true;
- input7.disabled = true;
- input8.disabled = true;
- radio1.disabled = true;
- radio2.disabled = true;
- ipt_titl.disabled = true;
- ipt_confdd.disabled = true;
- ipt_conftm.disabled = true;
- ipt_confplce.disabled = true;
- input1.disabled = true;
- output1.disabled = true;
- group1.disabled = true;
- group2.disabled = true;
- ipt_confcnts.attribute("editable") = false;
- ipt_rsltcnts.attribute("editable") = false;
- submit("TRMMO04112");
- model.copyNode("/root/main/cnstconf/cnstconf","/root/main/cnstconfinfo/cnstconfinfo");
- model.removenode("/root/main/cnstconfinfo/cnstconfinfo");
- var smokyn = model.getValue(sCNSTCONF_PATH + "/smokyn");
- if (smokyn =="1") {
- var smokday = model.makeValue(sCNSTCONF_PATH + "/smokday1", model.getValue(sCNSTCONF_PATH + "/smokday"));
- var smokyear = model.makeValue(sCNSTCONF_PATH + "/smokyear1", model.getValue(sCNSTCONF_PATH + "/smokyear"));
- var smokhist = model.makeValue(sCNSTCONF_PATH + "/smokhist1", model.getValue(sCNSTCONF_PATH + "/smokhist"));
- } else if (smokyn =="2") {
- var smokday = model.makeValue(sCNSTCONF_PATH + "/smokday2", model.getValue(sCNSTCONF_PATH + "/smokday"));
- var smokyear = model.makeValue(sCNSTCONF_PATH + "/smokyear2", model.getValue(sCNSTCONF_PATH + "/smokyear"));
- var smokhist = model.makeValue(sCNSTCONF_PATH + "/smokhist2", model.getValue(sCNSTCONF_PATH + "/smokhist"));
- }
- model.refresh();
-
- }
- /**
- * @desc : 최근 Stage를 조회하여 값을 보여줌
- * @
- * @param :
- * @return :
- * @author : 김영학
- * @---------------------------------------------------
- */
- function fGetLastStageInfo() {
- if(submit("TRMMO04113")){
- var nodelist = model.instance1.selectNodes(sSTAGECDLIST_PATH);
- if(nodelist.length > 0){
- /*
- var pid = model.getValue(sSTAGECDLIST_PATH + "/pid");
- var hngnm = model.getValue(sSTAGECDLIST_PATH + "/hngnm");
- var sa = model.getValue(sSTAGECDLIST_PATH + "/sa");
- var roomcd = model.getValue(sSTAGECDLIST_PATH + "/roomcd");
- var orddrid = model.getValue(sSTAGECDLIST_PATH + "/orddrid");
- var orddrnm = model.getValue(sSTAGECDLIST_PATH + "/orddrnm");
- */
- var stagecd = model.getValue(sSTAGECDLIST_PATH + "/stagecd");
- var tnmcd1 = model.getValue(sSTAGECDLIST_PATH + "/tnmcd1");
- var tnmcd2 = model.getValue(sSTAGECDLIST_PATH + "/tnmcd2");
- var tnmcd3 = model.getValue(sSTAGECDLIST_PATH + "/tnmcd3");
- /*
- model.setValue(sCNSTCONF_PATH + "/pid" , pid);
- model.setValue(sCNSTCONF_PATH + "/hngnm" , hngnm);
- model.setValue(sCNSTCONF_PATH + "/sa" , sa);
- model.setValue(sCNSTCONF_PATH + "/roomcd" , roomcd);
- model.setValue(sCNSTCONF_PATH + "/orddrid" , orddrid);
- model.setValue(sCNSTCONF_PATH + "/orddrnm" , orddrnm);
- */
- model.setValue(sCNSTCONF_PATH + "/stagecd" , stagecd);
- model.setValue(sCNSTCONF_PATH + "/tnmcd1" , tnmcd1);
- model.setValue(sCNSTCONF_PATH + "/tnmcd2" , tnmcd2);
- model.setValue(sCNSTCONF_PATH + "/tnmcd3" , tnmcd3);
- }
- }
- }
|