123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252 |
- /**
- * 파 일 명 : SMADT01102.JS
- * 설 명 : 원외처방전 출력 팝업(약력조회용)
- * 작 성 자 : 노동우
- * 기본 로직은 SMADT01101.JS를 기반으루 구현.
- * 원외처방출력에 필요한 로직만 남겨두고 기타 다른 기능들은 삭제.
- */
-
- var gTimer;
- var gTimer1;
- var chk_cnt = 0;
- /**
- * 초기화
- */
- function fInit() {
- // 날짜 초기화
- var curDate = new Date();
- model.setValue("/root/hidden/prcpsrch/drugdd", getCurrentDate());
-
-
- //원외 체크 초기화
- model.setValue("/root/hidden/prcpsrch/hosoutyn", "Y");
- fChkHosout_YN();
-
- //진료과 Combo 조회
- //model.setValue("/root/send/deptinfo/deptflag", "D");
-
- // 20100122_laboru
- model.setValue("/root/hidden/prcpsrch/drugno", model.getValue("/root/temp/drugno"));
- model.setValue("/root/hidden/prcpsrch/drugdd", model.getValue("/root/temp/prcpdd"));
-
- // 20100310_laboru_출고부서 조회, 설정
- /* submit("TRADT01106");
- var dutplceinstcd = getUserInfo("dutplceinstcd");
- if(dutplceinstcd == "017" || dutplceinstcd == "012" || dutplceinstcd == "011") {
- combo1.select(1);
- } else {
- combo1.select(0);
- }
- chk_cnt ++;
- model.makeValue("/root/temp/stocdeptcd", model.getValue("/root/hidden/prcpsrch/stocdeptcd"));
- combo1.refresh();*/
-
- // 20101124_laboru_경북대병원_마약/향정 외래 환자 원외 처방전 출력 여부 조회(R002)
- submit("TRADT01108");
-
- model.refresh();
-
- if(model.getValue("/root/hidden/popupinfo/drugno") != ""){
- model.setValue("/root/hidden/prcpsrch/drugdd",
- model.getValue("/root/hidden/popupinfo/drugdd"));
- model.setValue("/root/hidden/prcpsrch/drugno",
- model.getValue("/root/hidden/popupinfo/drugno"));
- var drugno = model.getValue("/root/hidden/popupinfo/drugno");
- if((drugno > 10000 && drugno < 60001) || drugno >= 70000 ){
- model.makeValue("/root/hidden/prcpsrch/lblyn","");
- model.makeValue("/root/hidden/prcpsrch/lblflag","");
- model.makeValue("/root/hidden/prcpsrch/hosinyn","");
- model.makeValue("/root/hidden/prcpsrch/hosinmpsflag","");
- }else{
- model.setValue("/root/hidden/prcpsrch/hosoutyn","");
- model.makeValue("/root/hidden/prcpsrch/hosoutmpsflag","");
- }
- model.refresh();
- }
- }
- /**
- * 원외 변경시 처리
- */
- function fChkHosout_YN() {
- var chk = model.getValue("/root/hidden/prcpsrch/hosoutyn");
-
-
- if(chk == "Y"){
- model.makeValue("/root/hidden/prcpsrch/hosoutmpsflag", "1|2");
- } else {
- model.makeValue("/root/hidden/prcpsrch/hosoutmpsflag", "");
- }
- model.refresh();
- }
- /**
- * 처방전/라벨 출력
- */
- function fPrcpMPSPrint() {
-
- var chk_drugno = model.getValue("/root/hidden/prcpsrch/drugno");
-
-
-
- if( chk_drugno == ""){
- //자동출력 또는 미출력 처방 출력은 <원내>처방과 응급실원외처방만 출력한다.
- model.copyNode("/root/send/paramsrch","/root/hidden/prcpsrch");
- model.setValue("/root/send/paramsrch/autoprcp", "Y");
- submit("TRADT01101");
-
-
-
- //원외 처방전 출력
- if (model.getValue("/root/hidden/prcpsrch/hosoutyn") == "Y" && model.getValue("/root/hidden/prcpsrch/autooutprntyn") == "Y") {
- fHosOutMPSPrint();
- }
-
-
- } else {
- //원외 처방
- if(isNaN(chk_drugno)){
- messageBox("투약번호를 숫자로","C001");
- model.setValue("/root/hidden/prcpsrch/drugno", "");
- model.setFocus("input14");
- model.refresh();
- return;
- }
- chk_drugno = parseInt(chk_drugno, 10);
-
-
- if (model.getValue("/root/hidden/prcpsrch/hosoutyn") == "Y" ) {
- if(fChkDrugNo("Y")){
- model.setValue("/root/hidden/prcpsrch/prntflag", "Y");
- model.copyNode("/root/send/paramsrch","/root/hidden/prcpsrch");
- submit("TRADT01101");
-
- var chkret = 0;
- if(model.getValue("/root/main/paramdata/param/drugchkstat") == "NC") {
- chkret = messageBox("조제보류된 처방입니다. 출력", "Q004");
-
- if(chkret != 6) {
- return;
- }
- }
-
- var prntdt = model.getValue("/root/main/paramdata/param[1]/prntdt");
- if( prntdt !="" && prntdt != "-" && model.getValue("/root/hidden/prcpsrch/reprintyn") == "") {
- var prntdata = prntdt.substring(0,4) + "년" + prntdt.substring(4,6) + "월" + prntdt.substring(6,8) + "일" +
- prntdt.substring(8,10) + ":" + prntdt.substring(10,12) + ":" + prntdt.substring(12,14);
- result = messageBox(prntdata + "에 출력한 처방입니다. 원외처방전 재출력을","Q003");
-
- if(result == 6) {
- model.setValue("/root/hidden/prcpsrch/reprintyn","Y");
- }
-
- } else {
- result = 6;
- }
-
-
-
- if(result == 6) {
- //원외 처방전 출력
- fHosOutMPSPrint();
- }
- }
- }
-
- }
- }
- /**
- * 원외 처방전 출력
- */
- function fHosOutMPSPrint() {
- // 20101124_laboru_경북대병원_마약/향정 외래 환자 원외 처방전 출력 여부 조회(R002)
- var mdrugflag = model.getValue("/root/init/mdrugflags/mdrugflags/r002");
-
- for(var i = grd_param.fixedRows; i < grd_param.rows; i++){
- /*model.copyNode("/root/send/prcpsrch","/root/main/paramdata/param["+i+"]");
-
- //model.makeValue("/root/send/prcpsrch/hosoutmpsflag", model.getValue("/root/hidden/prcpsrch/hosoutmpsflag"));
- model.makeValue("/root/send/prcpsrch/prntflag", model.getValue("/root/hidden/prcpsrch/prntflag"));
- model.makeValue("/root/send/prcpsrch/autoprntyn", model.getValue("/root/hidden/prcpsrch/autoprntyn"));
- submit("TRADT01102");
-
- model.makeValue("/root/main/prcpdata/patinfo/hosoutmpsflagnm", "(약국제출용)");
- exeReportPreview("RFADT01101", "XMLSTR", "", "", "true","","","","","true");
-
- model.makeValue("/root/main/prcpdata/patinfo/hosoutmpsflagnm", "(본인보관용)");
- exeReportPreview("RFADT01101", "XMLSTR", "", "", "true","","","","","true");
- */
-
- var sParam = "";
- //2009-05-07 트레이 번호 추가 printerno
- //sParam = "drugdd▦drugno▦pid▦orddd▦cretno▦orddeptcd▦prcpgenrflag▦hosoutmpsflag▦reprintyn▩";
- sParam = "drugdd▦drugno▦pid▦orddd▦cretno▦orddeptcd▦prcpgenrflag▦hosoutmpsflag▦reprintyn▦prntflag▦printerno▩";
- sParam += model.getValue("/root/main/paramdata/param["+i+"]/drugdd")+"▦"+
- model.getValue("/root/main/paramdata/param["+i+"]/drugno")+"▦"+
- model.getValue("/root/main/paramdata/param["+i+"]/pid")+"▦"+
- model.getValue("/root/main/paramdata/param["+i+"]/orddd")+"▦"+
- model.getValue("/root/main/paramdata/param["+i+"]/cretno")+"▦"+
- model.getValue("/root/main/paramdata/param["+i+"]/orddeptcd")+"▦"+
- model.getValue("/root/main/paramdata/param["+i+"]/prcpgenrflag")+"▦"+
- model.getValue("/root/hidden/prcpsrch/hosoutmpsflag")+"▦"+
- model.getValue("/root/hidden/prcpsrch/reprintyn")+"▦"+
- "Y"+"▦"+
- model.getValue("/root/hidden/prcpsrch/stocdeptcd")+"▦"+ // 20100310_laboru_시행부서 Y 로 박히는 것 수정.
- model.getValue("/root/hidden/prcpsrch/printer")+"▦"+
- mdrugflag+
- "▦" +
- "▦" +
- "▦" +
- "▦" +
- "▦" +
- "▦" + model.getValue("/root/hidden/prcpsrch/digcdskipyn") +
- "▩"; // 20101124_laboru_경북대병원_마약/향정 외래 환자 원외 처방전 출력 여부 조회(R002)
- //model.getValue("/root/hidden/prcpsrch/printer")+"▦"+
- //model.getValue("/root/hidden/prcpsrch/stocdeptcd")+"▩"; // 20100310_laboru_시행부서 Y 로 박히는 것 수정.
-
- //messageBox ( model.getValue("/root/hidden/prcpsrch/printer"),"Q003") ;
- //messageBox("fPrcpMPSPrint-->"+ sParam,"Q003") ;
-
- model.setAttribute("params", sParam);
- modal("SPADT61100",0,200,200,"","");
- model.setAttribute("params", "");
- }
- }
- /**
- * 투약번호 체크
- */
- function fChkDrugNo(flag) {
- var drugno = model.getValue("/root/hidden/prcpsrch/drugno");
- var chk_in = model.getValue("/root/hidden/prcpsrch/hosinyn");
- var chk_out = model.getValue("/root/hidden/prcpsrch/hosoutyn");
- if(drugno != ""){
- drugno = parseInt(drugno, 10);
- if(flag == "Y"){
- // 20100127_laboru_투약번호 8만번대 추가(임상원외 출력위해서)
- if((drugno >= 10001 && drugno < 20001) || (drugno >= 80001 && drugno < 100000) ){
-
- } else {
- messageBox("원외 투약번호를", "C001");
- return false;
- }
- } else if(flag == "O"){
- if( (drugno > 10000 && drugno < 60001) || drugno >= 70000 ) {
- // messageBox("원내 투약번호를", "C001");
- return false;
- }
- }
- }
- return true;
- }
|