using System; using System.Collections.Generic; using System.Text; using System.Collections; using System.Windows.Forms; using System.IO; using System.Data; using System.Runtime.InteropServices; using System.Threading; using System.Diagnostics; using SHDocVw; using Cosmos.BaseFrame; using Cosmos.UserFrame; using Cosmos.ServiceProvider; using Cosmos.Common; using Cosmos.CommonManager; namespace Cosmos.Win { public class WinBasic { /// /// 현재 실행중인 윈도우의 상태를 보여준다. /// /// /// /// [DllImport("user32.dll")] public static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow); /// /// 선택한 윈도우를 뒤에 숨어있었으면 앞으로, 최소화상태였으면 원래상태로 되돌려놓으며 활성화시킨다. /// /// /// [DllImport("user32.dll")] public static extern bool SetForegroundWindow(IntPtr hWnd); /// /// FORM 화면 표시 /// /// /// public static string ShowForm(string[] aPara) { string sRet = UserCom.RST_ERR; try { // WEB POS 화면 호출 switch (aPara[0]) { case FormManager.FORM_WEB_POS_PLU_MGR: case FormManager.FORM_WEB_POS_SETTING: case FormManager.FORM_WEB_POS_OPTION: case FormManager.FORM_WEB_POS_REG_FLOVOR: case FormManager.FORM_WEB_POS_TABLE_MANAGEMENT: case FormManager.FORM_WEB_EMGNCY_LIST: case FormManager.FORM_WEB_LINK: case FormManager.FORM_WEB_TMPRT: case FormManager.FORM_WEB_SHOPPING_MALL: case FormManager.FORM_WEB_SEVERANCE: case FormManager.FORM_WEB_MAKE_MENUAL: case FormManager.FORM_WEB_MONTH_EVENT: case FormManager.FORM_WEB_ORDER_LIST: case FormManager.FORM_WEB_EZWELW: case FormManager.FORM_WEB_HAPPY_ORDER: case FormManager.FORM_WEB_BIZEUN: case FormManager.FORM_WEB_SCH_APPROVAL: case FormManager.FORM_WEB_MGR_BGM: // WEBPOS,WEBLINK 호출 return ShowWebPos(aPara[1], aPara[0], ""); } if (aPara[0] == FormManager.FORM_MENU_SUB) { // 메뉴(팝업) frmMenuSub fForm = (frmMenuSub)FormManager.GetForm(FormManager.FORM_MENU_SUB); if (fForm == null) { fForm = new frmMenuSub(); FormManager.AddForm(FormManager.FORM_MENU_SUB, fForm); } fForm.PosMenuKeyIn = aPara[1]; // 메뉴화면 기능키값 if (fForm.ShowDialog() == DialogResult.OK) { sRet = fForm.PosMenuKeyOut; // 메뉴선택 기능키값 } } //#15525 고객구매이력 수정 요청 start, 20180704 //VIP 여부 안내 표시 else if (aPara[0] == FormManager.FORM_VIP) { frmScreenVip fForm = (frmScreenVip)FormManager.GetForm(FormManager.FORM_VIP); if (fForm == null) { fForm = new frmScreenVip(); FormManager.AddForm(FormManager.FORM_VIP, fForm); } if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } //#15525 고객구매이력 수정 요청 end, 20180704 else if (aPara[0] == FormManager.FORM_BIZ_MAIN) { //#20181026 #17412 PAS 대왕암공원 - 매출자료조회 frmADMT 오류창 팝업 start UserLog.WriteLogFile(UserCom.LOG_IOS, System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", "frmBizMain ShowForm"); //#20181026 #17412 PAS 대왕암공원 - 매출자료조회 frmADMT 오류창 팝업 end // 메뉴(팝업) frmBizMain fForm = (frmBizMain)FormManager.GetForm(FormManager.FORM_BIZ_MAIN); if (fForm == null) { fForm = new frmBizMain(); FormManager.AddForm(FormManager.FORM_BIZ_MAIN, fForm); } fForm.PosMenuKeyIn = aPara[1]; // 메뉴화면 기능키값 if (fForm.ShowDialog() == DialogResult.OK) { //#20181026 #17412 PAS 대왕암공원 - 매출자료조회 frmADMT 오류창 팝업 start UserLog.WriteLogFile(UserCom.LOG_IOS, System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", "frmBizMain ShowDialog In : [" + fForm.PosMenuKeyIn + "] , Out : [ " + fForm.PosMenuKeyOut + "]"); //#20181026 #17412 PAS 대왕암공원 - 매출자료조회 frmADMT 오류창 팝업 end sRet = fForm.PosMenuKeyOut; // 메뉴선택 기능키값 } } else if (aPara[0] == FormManager.FORM_SAL_AGE) { // 메뉴(팝업) frmRegGuest fForm = (frmRegGuest)FormManager.GetForm(FormManager.FORM_SAL_AGE); if (fForm == null) { fForm = new frmRegGuest(); FormManager.AddForm(FormManager.FORM_SAL_AGE, fForm); } fForm.PosMenuKeyIn = aPara[1]; // 메뉴화면 기능키값 if (fForm.ShowDialog() == DialogResult.OK) { sRet = fForm.PosMenuKeyOut; // 메뉴선택 기능키값 } } else if (aPara[0] == FormManager.FORM_USER_INPUT_DATA) { // 사용자 입력화면(팝업) frmInputData fForm = (frmInputData)FormManager.GetForm(FormManager.FORM_USER_INPUT_DATA); if (fForm == null) { fForm = new frmInputData(); FormManager.AddForm(FormManager.FORM_USER_INPUT_DATA, fForm); } fForm.PosMenuKeyIn = aPara[1]; // 입력종류 fForm.PosMenuKeyOut = string.Empty; if (fForm.ShowDialog() == DialogResult.OK) { sRet = fForm.PosMenuKeyOut; // 입력값 } } //else if (aPara[0] == FormManager.FORM_ETC_SERVER_REG) //{ // frmRegServer fForm = (frmRegServer)FormManager.GetForm(FormManager.FORM_ETC_SERVER_REG); // if (fForm == null) // { // fForm = new frmRegServer(); // FormManager.AddForm(FormManager.FORM_ETC_SERVER_REG, fForm); // } // DialogResult dReturn = fForm.ShowDialog(); // sRet = (dReturn == DialogResult.OK ? UserCom.RST_OK : UserCom.RST_ERR); //} else if (aPara[0] == FormManager.FORM_SEL_SALE_PLU) { // 등록 상품 조회 화면 frmSelSalePlu fForm = (frmSelSalePlu)FormManager.GetForm(FormManager.FORM_SEL_SALE_PLU); if (fForm == null) { fForm = new frmSelSalePlu(); FormManager.AddForm(FormManager.FORM_SEL_SALE_PLU, fForm); } //#20171116 온라인 쿠폰 제품군코드,상품코드 존재 시 할인 대상이 변경되도록 추가 start, phj //20171229 요건변경(할인대상 상품 중 제일 단가가 작은제품적용, 동일 판매가 일 경우 판매코드 제일 작은 상품) start, phj //#20180502 온라인쿠폰 제품군, 상품코드 할인 적용 기능 적용 start //적용시 주석 해제 if (aPara.Length == 2) { fForm.CpnItemDcCode = aPara[1]; } //#20180502 온라인쿠폰 제품군, 상품코드 할인 적용 기능 적용 end //20171229 요건변경(할인대상 상품 중 제일 단가가 작은제품적용, 동일 판매가 일 경우 판매코드 제일 작은 상품) end, phj //#20171116 온라인 쿠폰 제품군코드,상품코드 존재 시 할인 대상이 변경되도록 추가 end, phj if (fForm.ShowDialog() == DialogResult.OK) sRet = fForm.SelectRow; } else if (aPara[0] == FormManager.FORM_SAL_ITEM_SEARCH) { frmItemSearch fForm = (frmItemSearch)FormManager.GetForm(FormManager.FORM_SAL_ITEM_SEARCH); if (fForm == null) { fForm = new frmItemSearch(); FormManager.AddForm(FormManager.FORM_SAL_ITEM_SEARCH, fForm); } if (fForm.ShowDialog() == DialogResult.OK) sRet = fForm.PosMenuKeyOut; } else if (aPara[0] == FormManager.FORM_SAL_HOLD) { frmHoldDeal fForm = (frmHoldDeal)FormManager.GetForm(FormManager.FORM_SAL_HOLD); if (fForm == null) { fForm = new frmHoldDeal(); FormManager.AddForm(FormManager.FORM_SAL_HOLD, fForm); } if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_SAL_CAL) { // 임시_PSS frmSalCalc fForm = (frmSalCalc)FormManager.GetForm(FormManager.FORM_SAL_CAL); if (fForm == null) { fForm = new frmSalCalc(); FormManager.AddForm(FormManager.FORM_SAL_CAL, fForm); } // 수정을 위한 상세값 전달 //fForm.SearchInfo = aPara[2]; if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_SAL_TAKE_IN_OUT) { frmTakeInOut fForm = (frmTakeInOut)FormManager.GetForm(FormManager.FORM_SAL_TAKE_IN_OUT); if (fForm == null) { fForm = new frmTakeInOut(); FormManager.AddForm(FormManager.FORM_SAL_TAKE_IN_OUT, fForm); } if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } //#16232 환경부 1회용컵 사용줄이기 관련 테이크인아웃 설정 start else if (aPara[0] == FormManager.FORM_SAL_TAKE_IN_OUT_PROD) { frmTakeInOutProd fForm = (frmTakeInOutProd)FormManager.GetForm(FormManager.FORM_SAL_TAKE_IN_OUT_PROD); if (fForm == null) { fForm = new frmTakeInOutProd(); FormManager.AddForm(FormManager.FORM_SAL_TAKE_IN_OUT_PROD, fForm); } if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } //#16232 환경부 1회용컵 사용줄이기 관련 테이크인아웃 설정 end //#16577 결제창 내부 봉투 추가 기능 도입 start else if (aPara[0] == FormManager.FORM_ADD_BAG) { frmAddBag fForm = (frmAddBag)FormManager.GetForm(FormManager.FORM_ADD_BAG); if (fForm == null) { fForm = new frmAddBag(); FormManager.AddForm(FormManager.FORM_ADD_BAG, fForm); } if (fForm.ShowDialog() == DialogResult.OK) { sRet = fForm.PosMenuKeyOut; // 메뉴선택 기능키값 } } //#16577 결제창 내부 봉투 추가 기능 도입 end else if (aPara[0] == FormManager.FORM_SAL_PREPAID_CUST) { frmPrepaidCust fForm = (frmPrepaidCust)FormManager.GetForm(FormManager.FORM_SAL_PREPAID_CUST); if (fForm == null) { fForm = new frmPrepaidCust(); FormManager.AddForm(FormManager.FORM_SAL_PREPAID_CUST, fForm); } if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } //else if (aPara[0] == FormManager.FORM_SAL_HP_GIFT_CHARGED) //{ // frmHPGiftReChange fForm = (frmHPGiftReChange)FormManager.GetForm(FormManager.FORM_SAL_HP_GIFT_CHARGED); // if (fForm == null) // { // fForm = new frmHPGiftReChange(); // FormManager.AddForm(FormManager.FORM_SAL_HP_GIFT_CHARGED, fForm); // } // if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; //} else if (aPara[0] == FormManager.FORM_SCH_EVT) { frmSchEvt fForm = (frmSchEvt)FormManager.GetForm(FormManager.FORM_SCH_EVT); if (fForm == null) { fForm = new frmSchEvt(); FormManager.AddForm(FormManager.FORM_SCH_EVT, fForm); } if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_REASON_CODE) { frmSelReasonCode fForm = (frmSelReasonCode)FormManager.GetForm(FormManager.FORM_REASON_CODE); if (fForm == null) { fForm = new frmSelReasonCode(); FormManager.AddForm(FormManager.FORM_REASON_CODE, fForm); } fForm.ReasonGroup = aPara[1]; // 사유 그룹코드 if (fForm.ShowDialog() == DialogResult.OK) { sRet = fForm.ReasonCode; // 선택된 사유코드 } } else if (aPara[0] == FormManager.FORM_CAMPAIGN_INFO) { frmCampaignInfo fForm = (frmCampaignInfo)FormManager.GetForm(FormManager.FORM_CAMPAIGN_INFO); if (fForm == null) { fForm = new frmCampaignInfo(); FormManager.AddForm(FormManager.FORM_CAMPAIGN_INFO, fForm); } fForm.PosMenuKeyIn = aPara[1]; if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_NOTICE_SEARCH) { frmNoticeInfo fForm = (frmNoticeInfo)FormManager.GetForm(FormManager.FORM_NOTICE_SEARCH); if (fForm == null) { fForm = new frmNoticeInfo(); FormManager.AddForm(FormManager.FORM_NOTICE_SEARCH, fForm); } fForm.PosMenuKeyIn = aPara[1]; if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } //else if (aPara[0] == FormManager.FORM_WEB_STOR_ARRV_INFO) //{ // WebLink(aPara[1]); //} //else if (aPara[0] == FormManager.FORM_WEB_STOR_ARRV_DETAIL) //{ // WebLink(aPara[1]); //} //else if (aPara[0] == FormManager.FORM_WEB_TMPRT) //{ // WebStart(aPara[1]); //} //else if (aPara[0] == FormManager.FORM_WEB_SHOPPING_MALL) //{ // WebStart(aPara[1]); //} //else if (aPara[0] == FormManager.FORM_WEB_SEVERANCE) //{ // WebStart(aPara[1]); //} //else if (aPara[0] == FormManager.FORM_WEB_MAKE_MENUAL) //{ // WebStart(aPara[1]); //} //else if (aPara[0] == FormManager.FORM_WEB_MONTH_EVENT) //{ // WebStart(aPara[1]); //} //else if (aPara[0] == FormManager.FORM_WEB_ORDER_LIST) //{ // WebStart(aPara[1]); //} //else if (aPara[0] == FormManager.FORM_WEB_EZWELW) //{ // WebStart(aPara[1]); //} //else if (aPara[0] == FormManager.FORM_WEB_HAPPY_ORDER) //{ // WebStart(aPara[1]); //} //else if (aPara[0] == FormManager.FORM_WEB_BIZEUN) //{ // WebStart(aPara[1]); //} //else if (aPara[0] == FormManager.FORM_WEB_SCH_APPROVAL) //{ // WebStart(aPara[1]); //} //else if (aPara[0] == FormManager.FORM_WEB_MGR_BGM) //{ // WebStart(aPara[1]); //} //else if (aPara[0] == FormManager.FORM_SOD_CHECK) //{ // frmWebBiz fForm = (frmWebBiz)FormManager.GetForm(FormManager.FORM_SOD_CHECK); // if (fForm == null) // { // fForm = new frmWebBiz(); // FormManager.AddForm(FormManager.FORM_SOD_CHECK, fForm); // } // // 수정을 위한 상세값 전달 // fForm.SearchInfo = aPara[1]; // if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; // //fForm.Show(); //} //else if (aPara[0] == FormManager.FORM_WEB_POS_PLU_MGR) //{ // frmWebBiz fForm = (frmWebBiz)FormManager.GetForm(FormManager.FORM_WEB_POS_PLU_MGR); // if (fForm == null) // { // fForm = new frmWebBiz(); // FormManager.AddForm(FormManager.FORM_WEB_POS_PLU_MGR, fForm); // // WEB 업무 화면을 띄워주기 위한 파라메터값 // fForm.SearchInfo = aPara[1]; // } // if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; // //fForm.Show(); //} //else if (aPara[0] == FormManager.FORM_WEB_POS_SETTING) //{ // frmWebBiz fForm = (frmWebBiz)FormManager.GetForm(FormManager.FORM_WEB_POS_SETTING); // if (fForm == null) // { // fForm = new frmWebBiz(); // FormManager.AddForm(FormManager.FORM_WEB_POS_SETTING, fForm); // // WEB 업무 화면을 띄워주기 위한 파라메터값 // fForm.SearchInfo = aPara[1]; // } // if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; // //fForm.Show(); //} //else if (aPara[0] == FormManager.FORM_WEB_POS_OPTION) //{ // frmWebBiz fForm = (frmWebBiz)FormManager.GetForm(FormManager.FORM_WEB_POS_OPTION); // if (fForm == null) // { // fForm = new frmWebBiz(); // FormManager.AddForm(FormManager.FORM_WEB_POS_OPTION, fForm); // // WEB 업무 화면을 띄워주기 위한 파라메터값 // fForm.SearchInfo = aPara[1]; // } // if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; // //fForm.Show(); //} //else if (aPara[0] == FormManager.FORM_WEB_POS_REG_FLOVOR) //{ // frmWebBiz fForm = (frmWebBiz)FormManager.GetForm(FormManager.FORM_WEB_POS_REG_FLOVOR); // if (fForm == null) // { // fForm = new frmWebBiz(); // FormManager.AddForm(FormManager.FORM_WEB_POS_REG_FLOVOR, fForm); // // WEB 업무 화면을 띄워주기 위한 파라메터값 // fForm.SearchInfo = aPara[1]; // } // if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; // //fForm.SearchInfo = aPara[1]; // //fForm.Show(); //} //else if (aPara[0] == FormManager.FORM_WEB_POS_TABLE_MANAGEMENT) //{ // frmWebBiz fForm = (frmWebBiz)FormManager.GetForm(FormManager.FORM_WEB_POS_TABLE_MANAGEMENT); // if (fForm == null) // { // fForm = new frmWebBiz(); // FormManager.AddForm(FormManager.FORM_WEB_POS_TABLE_MANAGEMENT, fForm); // // WEB 업무 화면을 띄워주기 위한 파라메터값 // fForm.SearchInfo = aPara[1]; // } // //fForm.Show(); // fForm.SearchInfo = aPara[1]; // if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; // //fForm.SearchInfo = aPara[1]; // //fForm.Show(); //} //else if (aPara[0] == FormManager.FORM_WEB_EMGNCY_LIST) //{ // frmWebBiz fForm = (frmWebBiz)FormManager.GetForm(FormManager.FORM_WEB_EMGNCY_LIST); // if (fForm == null) // { // fForm = new frmWebBiz(); // FormManager.AddForm(FormManager.FORM_WEB_EMGNCY_LIST, fForm); // // WEB 업무 화면을 띄워주기 위한 파라메터값 // fForm.SearchInfo = aPara[1]; // } // if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; // //fForm.Show(); //} //else if (aPara[0] == FormManager.FORM_WEB_LINK) //{ // frmWebBiz fForm = (frmWebBiz)FormManager.GetForm(FormManager.FORM_WEB_LINK); // if (fForm == null) // { // fForm = new frmWebBiz(); // FormManager.AddForm(FormManager.FORM_WEB_LINK, fForm); // // WEB 업무 화면을 띄워주기 위한 파라메터값 // fForm.SearchInfo = aPara[1]; // } // fForm.SearchInfo = aPara[1]; // if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; // //fForm.Show(); //} else if (aPara[0] == FormManager.FORM_SCH_RETURN_COMPAY) { frmSchReturnCompany fForm = (frmSchReturnCompany)FormManager.GetForm(FormManager.FORM_SCH_RETURN_COMPAY); if (fForm == null) { fForm = new frmSchReturnCompany(); FormManager.AddForm(FormManager.FORM_SCH_RETURN_COMPAY, fForm); } if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_TRANLOG_DOWNLOAD) { frmSvr2Tran fForm = (frmSvr2Tran)FormManager.GetForm(FormManager.FORM_TRANLOG_DOWNLOAD); if (fForm == null) { fForm = new frmSvr2Tran(); FormManager.AddForm(FormManager.FORM_TRANLOG_DOWNLOAD, fForm); } if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_PGM_DOWNLOAD) { frmPGMDownLoad fForm = (frmPGMDownLoad)FormManager.GetForm(FormManager.FORM_PGM_DOWNLOAD); if (fForm == null) { fForm = new frmPGMDownLoad(); FormManager.AddForm(FormManager.FORM_PGM_DOWNLOAD, fForm); } fForm.PosMenuKeyIn = aPara[1]; fForm.ManualMode = aPara[2]; if (fForm.ShowDialog() == DialogResult.OK) { sRet = UserCom.RST_ERR; } else { sRet = UserCom.RST_OK; } } else if (aPara[0] == FormManager.FORM_SCH_SHIPEMNT) { frmSchShipment fForm = (frmSchShipment)FormManager.GetForm(FormManager.FORM_SCH_SHIPEMNT); if (fForm == null) { fForm = new frmSchShipment(); FormManager.AddForm(FormManager.FORM_SCH_SHIPEMNT, fForm); } if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_WEB_STOR_ARRV_INFO) { frmSchStorArrvInfo fForm = (frmSchStorArrvInfo)FormManager.GetForm(FormManager.FORM_WEB_STOR_ARRV_INFO); if (fForm == null) { fForm = new frmSchStorArrvInfo(); FormManager.AddForm(FormManager.FORM_WEB_STOR_ARRV_INFO, fForm); } if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } //else if (aPara[0] == FormManager.FORM_CASHIER_INPUT) //{ // // 판매원(캐셔) 등록 화면 // frmRegCashier fFormCsh = (frmRegCashier)FormManager.GetForm(FormManager.FORM_CASHIER_INPUT); // if (fFormCsh == null) // { // fFormCsh = new frmRegCashier(); // FormManager.AddForm(FormManager.FORM_CASHIER_INPUT, fFormCsh); // } // if (aPara.Length == 1) // { // fFormCsh.Mode = "0"; // if (fFormCsh.ShowDialog() != DialogResult.OK) return sRet; // sRet = fFormCsh.CashierNo + "|" + fFormCsh.CashierName; // } // else // { // fFormCsh.Mode = "1"; // if (fFormCsh.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; // } //} else if (aPara[0] == FormManager.FORM_SCH_HPLATE) { // 해피포인트 추후 적립 조회 frmSchHpLate fFormCsh = (frmSchHpLate)FormManager.GetForm(FormManager.FORM_SCH_HPLATE); if (fFormCsh == null) { fFormCsh = new frmSchHpLate(); FormManager.AddForm(FormManager.FORM_SCH_HPLATE, fFormCsh); } if (fFormCsh.ShowDialog() != DialogResult.OK) return sRet; //sRet = fFormCsh.CashierNo + "|" + fFormCsh.CashierName; } else if (aPara[0] == FormManager.FORM_SCH_KTCH_ORDER) { // 주방주문내역조회 frmSchKtchOrder fFormCsh = (frmSchKtchOrder)FormManager.GetForm(FormManager.FORM_SCH_KTCH_ORDER); if (fFormCsh == null) { fFormCsh = new frmSchKtchOrder(); FormManager.AddForm(FormManager.FORM_SCH_KTCH_ORDER, fFormCsh); } if (fFormCsh.ShowDialog() != DialogResult.OK) return sRet; //sRet = fFormCsh.CashierNo + "|" + fFormCsh.CashierName; } else if (aPara[0] == FormManager.FORM_PROGRAM_START) { //프로그램 시작 화면 frmSaleOpen fForm = (frmSaleOpen)FormManager.GetForm(FormManager.FORM_PROGRAM_START); if (fForm == null) { fForm = new frmSaleOpen(); FormManager.AddForm(FormManager.FORM_PROGRAM_START, fForm); } fForm.MstDownOp = aPara[1]; fForm.PeripheralChk = aPara[2]; if (aPara.Length >= 4) fForm.ManualMode = aPara[3]; else fForm.ManualMode = "A"; if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_EXE_VACCINE) { sRet = UserCom.RST_ERR; // 백신 실행 sRet = VaccineExe(); if (sRet == UserCom.RST_ERR) { WinManager.ErrorMessage(MessageManager.GetErrorMessage(POS_MESSAGE.ERROR.MSG_0650)); } } else if (aPara[0] == FormManager.FORM_BARCODE_PRINT) { // 스캐너 입력을 위한 메세지 박스 frmLabelBarcodePrint fForm = (frmLabelBarcodePrint)FormManager.GetForm(FormManager.FORM_BARCODE_PRINT); if (fForm == null) { fForm = new frmLabelBarcodePrint(); FormManager.AddForm(FormManager.FORM_BARCODE_PRINT, fForm); } if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_SIGNPAD_UPDATE) { // 서명패드 업데이트 frmSignPadUpdate fForm = (frmSignPadUpdate)FormManager.GetForm(FormManager.FORM_SIGNPAD_UPDATE); if (fForm == null) { fForm = new frmSignPadUpdate(); FormManager.AddForm(FormManager.FORM_SIGNPAD_UPDATE, fForm); } if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_ETC_CHECK_EMP) // 출퇴근 등록 { frmEmpCommute fForm = (frmEmpCommute)FormManager.GetForm(FormManager.FORM_ETC_CHECK_EMP); if (fForm == null) { fForm = new frmEmpCommute(); FormManager.AddForm(FormManager.FORM_BARCODE_PRINT, fForm); } if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_SCH_POS_LOG) // POS LOG 조회 { frmSchPosLog fForm = (frmSchPosLog)FormManager.GetForm(FormManager.FORM_SCH_POS_LOG); if (fForm == null) { fForm = new frmSchPosLog(); FormManager.AddForm(FormManager.FORM_SCH_POS_LOG, fForm); } if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_LOG_ON) { // 로그온 및 판매원 등록 처리 frmLogOnCashier fForm = (frmLogOnCashier)FormManager.GetForm(FormManager.FORM_LOG_ON); if (fForm == null) { fForm = new frmLogOnCashier(); FormManager.AddForm(FormManager.FORM_LOG_ON, fForm); } fForm.PosMenuKey = aPara[1]; if (fForm.ShowDialog() == DialogResult.OK) sRet = fForm.CashierInfo; } else if (aPara[0] == FormManager.FORM_REMB_ORDER_PRINT) { // 기념일배송 주문정보 출력 frmRembOrderPrint fForm = (frmRembOrderPrint)FormManager.GetForm(FormManager.FORM_REMB_ORDER_PRINT); if (fForm == null) { fForm = new frmRembOrderPrint(); FormManager.AddForm(FormManager.FORM_REMB_ORDER_PRINT, fForm); } //fForm.PosMenuKey = aPara[1]; if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_ETC_EXCHANGE_REG) { // 환율등록 frmExchageRate fForm = (frmExchageRate)FormManager.GetForm(FormManager.FORM_ETC_EXCHANGE_REG); if (fForm == null) { fForm = new frmExchageRate(); FormManager.AddForm(FormManager.FORM_ETC_EXCHANGE_REG, fForm); } fForm.SetPosMenuKey = aPara[1]; if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_CALENDAR) { // 달력 frmCalendar fForm = (frmCalendar)FormManager.GetForm(FormManager.FORM_CALENDAR); if (fForm == null) { fForm = new frmCalendar(); FormManager.AddForm(FormManager.FORM_CALENDAR, fForm); } sRet = ""; fForm.TopMost = true; if (fForm.ShowDialog() == DialogResult.OK) sRet = fForm.ChoiceDate; } else if (aPara[0] == FormManager.FORM_HAPPY_BUZZ) { // 메뉴(팝업) frmHappyBuzz fForm = (frmHappyBuzz)FormManager.GetForm(FormManager.FORM_HAPPY_BUZZ); if (fForm == null) { fForm = new frmHappyBuzz(); FormManager.AddForm(FormManager.FORM_HAPPY_BUZZ, fForm); } fForm.PosMenuKeyIn = aPara[1]; // 메뉴화면 기능키값 fForm.CardNoIn = CmUtil.MidH(aPara[2], 0, 16); // 카드번호 if (fForm.ShowDialog() == DialogResult.OK) { sRet = fForm.PosMenuKeyOut; // 메뉴선택 기능키값 } } else if (aPara[0] == FormManager.FORM_DISCOUNT_LIST) { // 할인내역리스트 조회 frmDiscountList fForm = (frmDiscountList)FormManager.GetForm(FormManager.FORM_DISCOUNT_LIST); if (fForm == null) { fForm = new frmDiscountList(); FormManager.AddForm(FormManager.FORM_DISCOUNT_LIST, fForm); } fForm.ShowDialog(); } else if (aPara[0] == FormManager.FORM_SAL_FOREIGNERS_RESPONSE) { // 외국인 응대 (영어/일본어/중국어) 팝업창 frmForeignersResponse fForm = (frmForeignersResponse)FormManager.GetForm(FormManager.FORM_SAL_FOREIGNERS_RESPONSE); if (fForm == null) { fForm = new frmForeignersResponse(); FormManager.AddForm(FormManager.FORM_SAL_FOREIGNERS_RESPONSE, fForm); } fForm.ForeignersInfo = aPara[1]; if (fForm.ShowDialog() == DialogResult.OK) sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_POPUP_COM) { frmPopupCom fForm = (frmPopupCom)FormManager.GetForm(FormManager.FORM_POPUP_COM); if (fForm == null) { fForm = new frmPopupCom(); FormManager.AddForm(FormManager.FORM_POPUP_COM, fForm); } fForm.BizComCode = aPara[1]; fForm.BizMsg1 = aPara[2]; fForm.BizMsg2 = aPara[3]; fForm.BizMsg3 = aPara[4]; fForm.SetOnLine = aPara[5] == "T" ? true : false; fForm.SetCountDown = CmUtil.IntParse(aPara[6]); fForm.SetYesMsg = aPara[7]; fForm.SetTitle = aPara[8]; if (fForm.ShowDialog() != DialogResult.No) { sRet = UserCom.RST_OK; } } else if (aPara[0] == FormManager.FORM_SAL_EMERGENCY_NOTICE) { frmCountdownMessageBox fForm = (frmCountdownMessageBox)FormManager.GetForm(FormManager.FORM_SAL_EMERGENCY_NOTICE); if (fForm == null) { fForm = new frmCountdownMessageBox(); FormManager.AddForm(FormManager.FORM_SAL_EMERGENCY_NOTICE, fForm); } fForm.PosMessageType = aPara[1]; fForm.PosMessageTitle = aPara[2]; fForm.PosMessageStr = aPara[3]; if (fForm.ShowDialog() != DialogResult.No) { sRet = UserCom.RST_OK; } } else if (aPara[0] == FormManager.FORM_MENUAL_ORDER_KPS) { // 주방프린터 수동출력 (장치선택) frmMenualOrderKps f = (frmMenualOrderKps)FormManager.GetForm(FormManager.FORM_MENUAL_ORDER_KPS); if (f == null) { f = new frmMenualOrderKps(); FormManager.AddForm(FormManager.FORM_MENUAL_ORDER_KPS, f); } f.HappyOrderList = null; f.ShowDialog(); sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_MENUAL_ORDER_ITEM) { // 주방프린터 수동출력 (메뉴선택) frmMenualOrderItem f = (frmMenualOrderItem)FormManager.GetForm(FormManager.FORM_MENUAL_ORDER_ITEM); if (f == null) { f = new frmMenualOrderItem(); FormManager.AddForm(FormManager.FORM_MENUAL_ORDER_ITEM, f); } f.HappyOrderList = null; f.ShowDialog(); sRet = UserCom.RST_OK; } else if (aPara[0] == FormManager.FORM_CHOICE_BOX) { // 할인/통합결제 선택 frmChoiceBox fForm = (frmChoiceBox)FormManager.GetForm(FormManager.FORM_CHOICE_BOX); if (fForm == null) { fForm = new frmChoiceBox(); FormManager.AddForm(FormManager.FORM_CHOICE_BOX, fForm); } fForm.TitleText = aPara[1]; fForm.MessageText = aPara[2]; fForm.ChoiceButtonText01 = aPara[3]; fForm.ChoiceButtonText02 = aPara[4]; fForm.SetLocation(CmUtil.IntParse(aPara[5]), CmUtil.IntParse(aPara[6])); fForm.ExitBtnUse = aPara[7]; if (fForm.ShowDialog() == DialogResult.OK) { sRet = fForm.ChoiceButtonNo; } } else if (aPara[0] == FormManager.FORM_KPS_CHECK) { frmCheckKtchPrinter fFrom = (frmCheckKtchPrinter)FormManager.GetForm(FormManager.FORM_KPS_CHECK); if (fFrom == null) { fFrom = new frmCheckKtchPrinter(); FormManager.AddForm(FormManager.FORM_KPS_CHECK, fFrom); } FormManager.ShowForm(FormManager.FORM_KPS_CHECK); } else if (aPara[0] == FormManager.FORM_ETC_SELECT_BTN) { frmSelectBtnMsgCom fFrom = (frmSelectBtnMsgCom)FormManager.GetForm(FormManager.FORM_ETC_SELECT_BTN); if (fFrom == null) { fFrom = new frmSelectBtnMsgCom(); FormManager.AddForm(FormManager.FORM_ETC_SELECT_BTN, fFrom); } fFrom.SetPosMenuKey = aPara[1]; fFrom.SetPosMsg = aPara[2]; if (fFrom.ShowDialog() == DialogResult.OK) { sRet = fFrom.PosMenuKeyOut; } } else if (aPara[0] == FormManager.FORM_SALEPLU_LIST) { // 상품내역리스트 조회 frmSalePluList fForm = (frmSalePluList)FormManager.GetForm(FormManager.FORM_SALEPLU_LIST); if (fForm == null) { fForm = new frmSalePluList(); FormManager.AddForm(FormManager.FORM_SALEPLU_LIST, fForm); } fForm.ShowDialog(); } else if (aPara[0] == FormManager.FORM_BRITHDAY_CANDLE) { // 생일초계산 frmBirthdayCandle fForm = (frmBirthdayCandle)FormManager.GetForm(FormManager.FORM_BRITHDAY_CANDLE); if (fForm == null) { fForm = new frmBirthdayCandle(); FormManager.AddForm(FormManager.FORM_BRITHDAY_CANDLE, fForm); } fForm.ShowDialog(); } } catch (Exception ex) { WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message); } return sRet; } ///// ///// 웹브라우저 띄우기 ///// ///// ///// //private static string WebStart(string sFuncKey) //{ // string sRet = UserCom.RST_ERR; // try // { // IDataServiceUs m_cWebBiz = null; // 웹업무 서비스 // SManager sManager = new SManager(); // 이 객체를 통해 업무 Service 호출 // m_cWebBiz = (IDataServiceUs)sManager.InitServiceInstance(ServiceLists.BSV_BASIC.DLL, ServiceLists.BSV_BASIC.WEB_BIZ); // string sUrl = string.Empty; // sUrl = (string)m_cWebBiz.GetData(new string[] { sFuncKey }); // if (sUrl != UserCom.ERROR && sUrl != null) // { // System.Diagnostics.Process.Start("iexplore.exe", sUrl); // sRet = UserCom.RST_OK; // return sRet; // } // return sRet; // } // catch (Exception ex) // { // WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name, // System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message); // } // return sRet; //} /// /// 기능키별 해당 캐셔의 사용 권한 체크 /// /// public static bool CheckMenuKeyAuth(string sMenuKey) { try { PosStatus m_cPosStatus = (PosStatus)((StateServer)StateServer.GetInstance()).POS; string sMngAuth = PosMstManager.GetMstPicAuth(m_cPosStatus.Base.CashierNo + sMenuKey); switch(sMngAuth) { case PosConst.MNG_AUTH_DIV.NON_PERMISSION: //#20171107 통제관리 start, phj //기존 /* WinManager.ErrorMessage(MessageManager.GetErrorMessage(POS_MESSAGE.ERROR.MSG_0308), MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0505), false); return false; */ //#20171107 통제관리 start, phj - 20171113 //변경 //if (WinBasic.ShowForm(new string[] { FormManager.FORM_LOG_ON, PosKey.MENU_KEY.AUTHORITY_CNTL }) == UserCom.RST_ERR) return false; //break; //수정 string sRtn_Pwd = string.Empty; sRtn_Pwd = m_cPosStatus.Base.CashierRtnPwd; if (sRtn_Pwd == "") { WinManager.ErrorMessage(MessageManager.GetErrorMessage(POS_MESSAGE.ERROR.MSG_0308), MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0505), false); return false; } else { if (WinBasic.ShowForm(new string[] { FormManager.FORM_LOG_ON, PosKey.MENU_KEY.AUTHORITY_CNTL }) == UserCom.RST_ERR) return false; break; } //#20171107 통제관리 end, phj - 20171113 //#20171107 통제관리 end, phj case PosConst.MNG_AUTH_DIV.PERMISSION: break; case PosConst.MNG_AUTH_DIV.SUPERVISOR: if (WinBasic.ShowForm(new string[] { FormManager.FORM_LOG_ON, PosKey.MENU_KEY.REGISTER_ADMIN }) == UserCom.RST_ERR) return false; //sRet = WinBasic.ShowForm(new string[] { FormManager.FORM_CASHIER_INPUT, "Supervisor" }); //if (sRet != UserCom.RST_OK) //{ // return UserCom.RST_ERR; //} break; } return true; } catch (Exception ex) { WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message); return false; } } [DllImport("Ole32.dll", SetLastError = true)] private static extern void CoFreeUnusedLibraries(); /// /// 웹 화면 표시 /// /// /// public static string ShowWebPos(string sFuncKey) { return ShowWebPos(sFuncKey, "", "", false); } public static string ShowWebPos(string sFuncKey, string sParam) { return ShowWebPos(sFuncKey, "", sParam, false); } //#20170918 기념일 배송 출력 start #region 기념일 배송 출력을 위한 PBILL.EXE 기동 및 중지 public static string PBillDemonRun(bool bRun) { string sRet = UserCom.RST_ERR; Process[] arPgm = null; Process[] arPgm2 = null; PosStatus m_cPosStatus = (PosStatus)((StateServer)StateServer.GetInstance()).POS; try { if (bRun == true) { // PBILL 데몬 조회 arPgm = Process.GetProcessesByName("PBILL"); foreach (Process pPgm in arPgm) { // 현재 PBILL 구동 중이면 나감. return UserCom.RST_OK; } // 구포스 EXE 경로에 있으면 그곳에 것 실행. // 없으면 차세대 BIN 폴더 안에 것 실행. //#20180511 기념일배송시 구포스 PBILL 실행되는 증상 수정 start //기존 주석 처리 if ((File.Exists("C:\\SPCPOS\\EXE\\PBILL.exe") == true) && ((m_cPosStatus.Base.CmpCd == "PCKR"))) { // PBILL 데몬 실행 ProcessStartInfo startInfo = new ProcessStartInfo("C:\\SPCPOS\\EXE\\PBILL.exe"); startInfo.WindowStyle = ProcessWindowStyle.Hidden; startInfo.CreateNoWindow = false; Process.Start(startInfo); } else if ((File.Exists("C:\\SLPOS\\EXE\\PBILL.exe") == true) && ((m_cPosStatus.Base.CmpCd == "SLKR"))) { // PBILL 데몬 실행 ProcessStartInfo startInfo = new ProcessStartInfo("C:\\SLPOS\\EXE\\PBILL.exe"); startInfo.WindowStyle = ProcessWindowStyle.Hidden; startInfo.CreateNoWindow = false; Process.Start(startInfo); } else { ProcessStartInfo startInfo = new ProcessStartInfo(Directory.GetCurrentDirectory().ToString() + @"\PBILL.exe"); startInfo.WindowStyle = ProcessWindowStyle.Hidden; startInfo.CreateNoWindow = false; Process.Start(startInfo); } //변경 /* ProcessStartInfo startInfo = new ProcessStartInfo(Directory.GetCurrentDirectory().ToString() + @"\PBILL.exe"); startInfo.WindowStyle = ProcessWindowStyle.Hidden; startInfo.CreateNoWindow = false; Process.Start(startInfo); */ //#20180511 기념일배송시 구포스 PBILL 실행되는 증상 수정 end } else { // PBILL 종료 시 // WBP 실행 중이면 종료하지 않고 // 구포스 EXE 폴더에 PBILL 파일이 존재하지 않으면 // 종료한다. //#20180511 기념일배송시 구포스 PBILL 실행되는 증상 수정 start //기존 주석 처리 arPgm2 = Process.GetProcessesByName("WBP"); foreach (Process pPgm in arPgm2) { return UserCom.RST_OK; } //#20180511 기념일배송시 구포스 PBILL 실행되는 증상 수정 end /* if ((File.Exists("C:\\SPCPOS\\EXE\\PBILL.exe") == true) && ((m_cPosStatus.Base.CmpCd == "PCKR"))) { return UserCom.RST_OK; } else if ((File.Exists("C:\\SLPOS\\EXE\\PBILL.exe") == true) && ((m_cPosStatus.Base.CmpCd == "SLKR"))) { return UserCom.RST_OK; } */ // PBILL 데몬 종료 arPgm = Process.GetProcessesByName("PBILL"); foreach (Process pPgm in arPgm) { pPgm.Kill(); } } return UserCom.RST_OK; } catch (Exception ex) { WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message); } return sRet; } #endregion //#20170918 기념일 배송 출력 end /// /// 웹 화면 표시 /// /// 기능키 /// 빚은몰Encoded여부 /// public static string ShowWebPos(string sFuncKey, bool bIsBizeunEncoded) { return ShowWebPos(sFuncKey, "", "", bIsBizeunEncoded); } public static string ShowWebPos(string sFuncKey, string sFormKey, string sParam, bool bIsBizeunEncoded = false) { string sRet = UserCom.RST_ERR; try { //#20170918 기념일 배송 출력 start //파리, 삼립만 가능하도록 수정 if ((sFuncKey== "00176") || (sFuncKey== "00111")) { PBillDemonRun(true); } //#20170918 기념일 배송 출력 end SManager sManager = new SManager(); // 이 객체를 통해 업무 Service 호출 PosStatus m_cPosStatus = (PosStatus)((StateServer)StateServer.GetInstance()).POS; IDataServiceUs cWebBiz = (IDataServiceUs)sManager.InitServiceInstance(ServiceLists.BSV_BASIC.DLL, ServiceLists.BSV_BASIC.WEB_POS); // 링크구분(1) + 메뉴명(30) + 메뉴ID(100) + 파라미터(100) + 캡션(50) string sUrl = ""; if (bIsBizeunEncoded == false) sUrl = (string)cWebBiz.GetData(new string[] { sFuncKey }); else sUrl = (string)cWebBiz.GetData(new string[] { sFuncKey, "1" }); if (sUrl == null || sUrl == "") return sRet; if (sUrl.StartsWith("1") == true) // 1: WEB POS, 2:WEB LINK, 4: 전용프로그램 { Process[] arPosPgm = Process.GetProcessesByName("WebPos"); foreach (Process pPosPgm in arPosPgm) { UserLog.WriteLogFile(UserCom.ERROR, System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", "WebPos.Exe Kill"); pPosPgm.Kill(); Thread.Sleep(1000); } // 메뉴키(0),메뉴명(1),URL(2),메뉴ID(3),파라메터(4),폰트(5),브랜드구분(6),브랜드코드(7),캐셔번호(8),브라우져키(9) string sPara = "\"" + sFuncKey + "|" + CmUtil.MidH(sUrl, 1, 30).Trim() + "|" + CmUtil.MidH(sUrl, 31, 100).Trim() + "|" + CmUtil.MidH(sUrl, 131, 100).Trim() + "|" + sParam + "|" + m_cPosStatus.Base.FONT + "|" + m_cPosStatus.Mst.CorpDiv + "|" + m_cPosStatus.Base.BrandCd + "|" + m_cPosStatus.Base.CashierNo + "|" + m_cPosStatus.Mst.BrowserKey + "\""; string sFilePath = BaseCom.NxBinPath + "WebPos.exe"; if (CmUtil.Exists(sFilePath) == true) { CmUtil.ExecuteProcess(sFilePath, sPara); Thread.Sleep(1000); //CmUtil.ExecuteWaitProcess(sFilePath, sPara); sRet = UserCom.RST_OK; } //CoFreeUnusedLibraries(); //System.Threading.Thread.Sleep(500); //// WEBPOS 모달리스 화면으로 로딩 //frmWebBiz2 fForm = new frmWebBiz2(); //fForm.PosMenuKey = sFuncKey; //fForm.PosMenuName = CmUtil.MidH(sUrl, 1, 30).Trim(); //fForm.PosWebMenuURL = CmUtil.MidH(sUrl, 31, 100).Trim(); //fForm.PosWebMenuId = CmUtil.MidH(sUrl, 131, 100).Trim(); //fForm.PosWebParam = sParam; //fForm.ShowDialog(); //sRet = UserCom.RST_OK; } else if (sUrl.StartsWith("2") == true) // 1: WEB POS, 2:WEB LINK, 4: 전용프로그램 { bool bActive = false; // 기존에 띄워져 있는 브라우저를 활성화 여부 확인 string sCaption = CmUtil.MidH(sUrl, 231, 50).Trim(); if (sCaption != null && sCaption != "") { SHDocVw.ShellWindowsClass shWindowsInfo = new SHDocVw.ShellWindowsClass(); foreach (SHDocVw.InternetExplorer ielnst in shWindowsInfo) { if (ielnst.Name.Contains("Internet Explorer")) { string url = ielnst.LocationURL; //mshtml.HTMLDocument doc = (HTMLDocument)ielnst.Document; if (url.Contains(sCaption)) { int val = ielnst.HWND; IntPtr handle = new IntPtr(val); // 3 -> 최대화 ShowWindowAsync(handle, 3); bActive = SetForegroundWindow(handle); } } } } // 활성화 시키지 못했을 경우 새로 띄워준다. if (bActive != true) { System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo("IExplore.exe"); startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Maximized; startInfo.Arguments = CmUtil.MidH(sUrl, 31, 100).Trim() + CmUtil.MidH(sUrl, 131, 100).Trim(); System.Diagnostics.Process.Start(startInfo); } sRet = UserCom.RST_OK; } else if (sUrl.StartsWith("4") == true) // 1: WEB POS, 2:WEB LINK, 4: 전용프로그램 { if (CmUtil.FindProcess("nexacro") == true) { CmUtil.SetForceFocus("nexacro"); } else { System.Diagnostics.ProcessStartInfo startInfo = null; if (File.Exists(@"C:\Program Files\nexacro\14\nexacro.exe") == true) startInfo = new System.Diagnostics.ProcessStartInfo(@"C:\Program Files\nexacro\14\nexacro.exe"); else if (File.Exists(@"C:\Program Files (x86)\nexacro\14\nexacro.exe") == true) startInfo = new System.Diagnostics.ProcessStartInfo(@"C:\Program Files (x86)\nexacro\14\nexacro.exe"); if (startInfo == null) { WinManager.ErrorMessage("FILE NOT FIND NEXACRO.EXE"); return UserCom.RST_ERR; } startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Maximized; // 브라우저 키값 설정 //PosStatus m_cPosStatus = (PosStatus)((StateServer)StateServer.GetInstance()).POS; string sBrowerKey = m_cPosStatus.Mst.BrowserKey; //if (m_cPosStatus.Base.CmpCd == ItemConst.COMPANY_CODE.BRKR) sBrowerKey += m_cPosStatus.Base.BrandCd; if (m_cPosStatus.Mst.CorpDiv == ItemConst.CORP_DIV.BR) sBrowerKey += m_cPosStatus.Base.BrandCd; // "C:\Program Files (x86)\nexacro\14\nexacro.exe" -K 'SPCPosPb' -S 'http://10.0.40.99:7001/spcwps/start.json' -V 'gv_posUsrId=Z1BodGWrqF4z1EX5x5oOkw==' //#20171016 스퀘어 점포일 때 실점포 코드로 넘기기 start, phj //기존 /* startInfo.Arguments = " -K '" + sBrowerKey + "' -S '" + CmUtil.MidH(sUrl, 31, 100).Trim() + "' -V 'gv_posUsrId=" + UserLog.UserAES.StaticKeyEncrypt(m_cPosStatus.Base.CashierNo) + "'"; */ //변경 if (m_cPosStatus.Mst.ComplexShopType == "2") { //스퀘어일경우, 실점포코드 + 000으로 수정함. //000인 경우는, 000을 제외하고 다른 아이디로 로그인 시 //실점포에는 그 다른 아이디가 없을 수 도 있기 때문에. string Real_CashierNo = string.Empty; Real_CashierNo = m_cPosStatus.Base.SubShopNo.Trim() + "000"; startInfo.Arguments = " -K '" + sBrowerKey + "' -S '" + CmUtil.MidH(sUrl, 31, 100).Trim() + "' -V 'gv_posUsrId=" + UserLog.UserAES.StaticKeyEncrypt(Real_CashierNo.Trim()) + "'"; } else { startInfo.Arguments = " -K '" + sBrowerKey + "' -S '" + CmUtil.MidH(sUrl, 31, 100).Trim() + "' -V 'gv_posUsrId=" + UserLog.UserAES.StaticKeyEncrypt(m_cPosStatus.Base.CashierNo) + "'"; } //#20171016 스퀘어 점포일 때 실점포 코드로 넘기기 end, phj System.Diagnostics.Process.Start(startInfo); } sRet = UserCom.RST_OK; } return sRet; } catch (Exception ex) { WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message); //#20170918 기념일 배송 출력 start //파리, 삼립만 가능하도록 수정 if ((sFuncKey == "00176") || (sFuncKey == "00111")) { PBillDemonRun(false); } //#20170918 기념일 배송 출력 end } return sRet; } /// /// 백신실행 /// /// public static string VaccineExe() { string sVaccineExeNm = null; string sRet = UserCom.RST_ERR; try { SManager sManager = new SManager(); // 이 객체를 통해 업무 Service 호출 IDataCommonUs m_cDataCommon = (IDataCommonUs)sManager.InitServiceInstance(ServiceLists.ASV_DATA_PROCESS.DLL, ServiceLists.ASV_DATA_PROCESS.DATA_COMMON); // POS 공통함수 인터페이스 DataTable dtData = new DataTable(); dtData = m_cDataCommon.SeletCommonCode(PosConst.COMMON_CODE_GROUP.Z0026, ""); if (dtData != null && dtData.Rows.Count != 0) { sVaccineExeNm = dtData.Rows[0].ToString(); } if (sVaccineExeNm != null && sVaccineExeNm != "") { System.Diagnostics.Process.Start(BaseCom.NxBinPath + PosConst.VACCINE_EXE_INFO); sRet = UserCom.RST_OK; return sRet; } return sRet; } catch (Exception ex) { WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message); } return sRet; } public const string ClientPOSVersion = "1.0.0.35"; //##2017.10.19 : 33 > 34 // 중국 샤오청쉬 위쳇페이, 기프트 카드 추가됨 } }