123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264 |
- /*
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- 후인증관리 SMMMO02700_후인증관리.xrw - JScript )
- - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
- */
- /*
- * @desc : 후인증관리 화면 초기화
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fInitialize_SMMMO02700(){
- zbcfGetCodeList(new Array("M0011",
- "M0003",
- "M0029"),
- new Array("/root/init/prcpstatcd",
- "/root/init/prcpkindcd",
- "/root/init/payflagcd"));
- mmbfGetDeptCodeComboList("/root/send/reqdata", "/root/init/orddept", "A");
- model.setValue("/root/main/cond/orddeptcd", getUserInfo("dutplcecd"));
- mmbfGetUserComboList("/root/send/reqdata", "/root/init/userlist", cmb_orddept.value, "0330", "", "V");
- addComboInstance("/root/init/userlist", "userid^usernm", "-^전체", "usercombo");
- model.setValue("/root/main/cond/orddrid", getUserInfo("userid"));
- model.setValue("/root/main/cond/fromdd", getNewDate().getAddDate(-60,"D").getDateFormat("YYYYMMDD") );
- model.setValue("/root/main/cond/todd" , getCurrentDate());
- var aftcert_pid = opener.javascript.getParameter("aftcert_pid");
- model.setValue("/root/main/cond/pid", aftcert_pid);
- model.removeNodeset ("/root/patinfo/patinfolist");
- model.removeNodeset ("/root/prcpsrch/prcplist");
-
- if("EMR" == getUserInfo("userid") ) {
- button3.visible = true;
- }
-
- model.refresh();
- if(cmb_orddrid.label == ""){cmb_orddrid.select(0);}
- btn_calendar.dispatch("DOMActivate");
- }
- /*
- * @desc : 후인증 환자 정보 조회
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fGetAftCertPatInfo(){
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/fromdd" , model.getValue("/root/main/cond/fromdd"));
- model.makeValue("/root/send/reqdata/todd" , model.getValue("/root/main/cond/todd"));
- model.makeValue("/root/send/reqdata/orddeptcd", model.getValue("/root/main/cond/orddeptcd"));
- model.makeValue("/root/send/reqdata/orddrid" , model.getValue("/root/main/cond/orddrid"));
- model.makeValue("/root/send/reqdata/signyn" , model.getValue("/root/main/cond/signyn"));
- model.makeValue("/root/send/reqdata/pid" , model.getValue("/root/main/cond/pid"));
- submit("TRMMO02702")
- }
- /*
- * @desc : 환자 후인증 처방 조회
- * @
- * @param : currow - selected row value
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fGetPatAftPrcpSrch(currow){
- var pid = model.getValue("/root/patinfo/patinfolist[" + currow + "]/pid");
- var orddd = model.getValue("/root/patinfo/patinfolist[" + currow + "]/orddd");
- var cretno = model.getValue("/root/patinfo/patinfolist[" + currow + "]/cretno");
- var prcpdd = model.getValue("/root/patinfo/patinfolist[" + currow + "]/prcpdd");
- var ioflag = model.getValue("/root/patinfo/patinfolist[" + currow + "]/ioflag");
- var prcpgenrflag= model.getValue("/root/patinfo/patinfolist[" + currow + "]/prcpgenrflag");
- var cert = model.getValue("/root/patinfo/patinfolist[" + currow + "]/cert");
- var orddeptcd = model.getValue("/root/main/cond/orddeptcd")
- var orddrid = model.getValue("/root/main/cond/orddrid");
- // 조회조건에서 처방일자는 제외함. 즉, 선택된 수진내역의 해당의사의 모든 후인증처방 조회.
- // var fromdd = model.getValue("/root/main/cond/fromdd");
- // var todd = model.getValue("/root/main/cond/todd");
- var pidonly = "";
- if (model.getValue("/root/main/cond/pid") == "") {
- pidonly = "N";
- } else {
- pidonly = "Y";
- }
-
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/pid" , pid);
- model.makeValue("/root/send/reqdata/orddd" , orddd);
- model.makeValue("/root/send/reqdata/cretno" , cretno);
- model.makeValue("/root/send/reqdata/orddrid" , orddrid);
- // 조회조건에서 처방일자는 제외함. 즉, 선택된 수진내역의 해당의사의 모든 후인증처방 조회.
- // model.makeValue("/root/send/reqdata/fromdd" , fromdd);
- // model.makeValue("/root/send/reqdata/todd" , todd);
- model.makeValue("/root/send/reqdata/ioflag" , ioflag);
- model.makeValue("/root/send/reqdata/prcpgenrflag" , prcpgenrflag);
- model.makeValue("/root/send/reqdata/cert" , cert);
- model.makeValue("/root/send/reqdata/orddeptcd" , orddeptcd);
- model.makeValue("/root/send/reqdata/pidonly" , pidonly);
- if(submit("TRMMO02704")){
- }
- }
- /*
- * @desc : 후인증처방저장
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fSaveAftSignPrcp(currow){
- // savedataflag : 저장자료구분 (2:처방)
- // saveflag : 저장구분 (O:외래, I:입원, E:응급, S:건진)
- // prcpflag : 처방권한구분 (코드정의서 M0035 참조) 0 ( 의사처방 )
- // inptflag : 입력구분 (코드정의서 M0034 참조) 00:처방검색 ...
- // deptcd : 부서코드 (입력자 또는 로그인한 사용자의 부서코드)
- // deptnm : 부서명 (입력자 또는 로그인한 사용자의 부서명)
- // userid : 사용자ID (입력자 또는 로그인한 사용자ID)
- // usernm : 사용자명 (입력자 또는 로그인한 사용자명)
- // signyn : 전자서명여부 (Y/N)
- model.setValue("/root/savedata/saveflaginfo/savedataflag", "2");
- model.setValue("/root/savedata/saveflaginfo/saveflag" , model.getValue("/root/patinfo/patinfolist[" + currow + "]/prcpgenrflag"));
- model.setValue("/root/savedata/saveflaginfo/prcpflag" , "0");
- model.setValue("/root/savedata/saveflaginfo/inptflag" , "00");
- model.setValue("/root/savedata/saveflaginfo/deptcd" , getUserInfo("dutplcecd"));
- model.setValue("/root/savedata/saveflaginfo/deptnm" , getUserInfo("dutplcenm"));
- model.setValue("/root/savedata/saveflaginfo/userid" , getUserInfo("userid"));
- model.setValue("/root/savedata/saveflaginfo/usernm" , getUserInfo("usernm"));
- model.setValue("/root/savedata/saveflaginfo/signyn" , "Y");
-
- model.removeNodeset("/root/send/savedata");
- var saveFlagInfoNodeList = model.instances(0).selectNodes("/root/savedata/saveflaginfo");
- model.makeValue("/root/send/savedata/cond1", getNodeListCSV(saveFlagInfoNodeList));
-
- // pid : 등록번호
- // orddd : 진료(입원)일자
- // cretno : 생성번호
- // instcd : 기관코드
- model.setValue("/root/savedata/savergstinfo/pid" , model.getValue("/root/patinfo/patinfolist[" + currow + "]/pid"));
- model.setValue("/root/savedata/savergstinfo/orddd" , model.getValue("/root/patinfo/patinfolist[" + currow + "]/orddd"));
- model.setValue("/root/savedata/savergstinfo/indd" , model.getValue("/root/patinfo/patinfolist[" + currow + "]/orddd"));
- model.setValue("/root/savedata/savergstinfo/cretno", model.getValue("/root/patinfo/patinfolist[" + currow + "]/cretno"));
- model.setValue("/root/savedata/savergstinfo/instcd", getUserInfo("dutplceinstcd"));
- var saveRgstInfo = model.instances(0).selectNodes("/root/savedata/savergstinfo");
- model.makeValue("/root/send/savedata/cond2", getNodeListCSV(saveRgstInfo));
- //20080809 마정민 수정 검색할 때 필요한 정보를 가져오도록 수정
- var srcNodeList = model.instances(0).selectNodes("/root/prcpsrch/prcplist");
- model.makeValue("/root/send/savedata/cond3", getNodeListCSV(srcNodeList));
- if(!submit("TRMMO02703", false)){
- return;
- }
- model.setValue("/root/result/saveflaginfo/signinfochk", "N"); //추가-임시 (2010.08.10 JJE)
- //저장구분정보 저장데이터
- var saveflaginfo = model.instances(0).selectNodes("/root/result/saveflaginfo");
- model.makeValue("/root/send/savedata/cond3", getNodeListCSV(saveflaginfo));
- var signinfochk = model.getValue("/root/result/saveflaginfo/signinfochk");
-
- //의사처방 저장데이터
- var saveprcpinfo = model.instances(0).selectNodes("/root/result/saveprcpinfo");
- model.makeValue("/root/send/savedata/cond4", getNodeListCSV(saveprcpinfo));
- if ( signinfochk == "N") {
- var saveSignPrcpInfo = model.instances(0).selectNodes("/root/result/signprcplist");
- model.makeValue("/root/send/savedata/cond5", getNodeListCSV(saveSignPrcpInfo));
- if(!submit("TXMMO02701", false)){
- return;
- }else{
- model.removeNodeset("/root/savedata/saveprcpInfo/saveprcpInfolist");
- }
- return;
- }
- if(model.getValue("/root/savedata/saveflaginfo/signyn") == "Y"){
- var signbfcnts = model.getValue("/root/result/signprcplist/signbfcnts");
- var setnode = "/root/result/signprcplist/signaftcnts";
- var signid = getUserInfo("userid");
- var signopt = false;
- if ( signinfochk == "Y" ) {
- //처방인증
- var v_stext = fSaveSign(signbfcnts, signid, signopt, setnode);
- }
-
- if(v_stext != "N"){
- if(isNull(v_stext)){
- return false;
- }
- var saveSignPrcpInfo = model.instances(0).selectNodes("/root/result/signprcplist");
- model.makeValue("/root/send/savedata/cond5", getNodeListCSV(saveSignPrcpInfo));
- if(!submit("TXMMO02701", false)){
- return;
- }else{
- model.removeNodeset("/root/savedata/saveprcpInfo/saveprcpInfolist");
- }
- }
- if(!isNull(model.getValue("/root/savecnt/savecnt/setrow"))){
- model.setValue("/root/patinfo/patinfolist[" + currow + "]/cert", "Y");
- }
- model.refresh();
- }
- }
- /*
- * @desc : 후인증저장 버튼 클릭시
- * : 선택된 환자의 후인증 처방 조회,
- * : 후인증 저장 및 후인증 환자 조회 처리
- * @
- * @param :
- * @return :
- * @author : 오지훈
- * @---------------------------------------------------
- */
- function fClkBtnSaveAftCert(){
- for(var i = 1; i < grd_patchosinfo.rows; i++){
- //for(var i = 1; i < 10; i++){
- var status = model.getValue("/root/patinfo/patinfolist[" + i + "]/status");
- var cert = model.getValue("/root/patinfo/patinfolist[" + i + "]/cert");
- if(status == "Y" && cert == "N"){
- fGetPatAftPrcpSrch(i); //선택된 환자의 후인증 처방 조회
- fSaveAftSignPrcp(i); //후인증 저장
- }
- }
- model.removeNodeset("/root/prcpsrch/prcplist");
- model.refresh();
-
- fGetAftCertPatInfo(); //후인증 환자 조회
- }
- /*
- * @desc : 후인증배치 버튼 클릭시
- * : 진료의, 처방적용시작일자의 후인증을 배치로 처리 한다.
- * @
- * @param :
- * @return :
- * @author : 엄영만 2014.04.15
- * @---------------------------------------------------
- */
- function fClkBtnBatchAftCert(){
- var prcpdd = model.getValue("/root/main/cond/fromdd");
- var orddrid = model.getValue("/root/main/cond/orddrid");
-
- if ( messageBox ( "후인증 배치를 실행 하시겠습니까? \n\n 대상처방일자:"+prcpdd+" 대상의사:"+orddrid,"Q") == "6" ) {
- model.removeNodeset("/root/send/reqdata");
- model.makeValue("/root/send/reqdata/fromdd" , prcpdd);
- model.makeValue("/root/send/reqdata/orddrid" , orddrid);
- submit("TXMMO02702")
- }
- }
|