spc-kiosk-pb/Library/Common/InterfaceLists.cs

5357 lines
192 KiB
C#
Raw Normal View History

2019-06-16 05:12:09 +00:00
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Text;
using System;
using System.Drawing;
/*-----------------------------------------------------------------------------------------------*/
// 설 명 : 인터페이스 선언
// 작 성 자 :
// 변경 이력 :
/*-----------------------------------------------------------------------------------------------*/
namespace Cosmos.Common
{
#region
/// <summary>
/// 서비스 기본 인터페이스
/// </summary>
public interface IServiceUs
{
/// <summary>
/// 서비스 실행
/// </summary>
string Execute(string[] aParam);
}
#endregion
#region
/// <summary>
/// 정산지 및 점검지 생성
/// </summary>
public interface IMakeAccADMT
{
/// <summary>
/// 정산지 및 점검지 생성
/// </summary>
/// <param name="sKind"></param>
/// <param name="sSaleDate"></param>
/// <param name="dtReturn"></param>
/// <param name="sSimplePrint"></param>
/// <returns></returns>
string SaveAccADMT(string sKind, string sSaleDate, ref DataTable dtReturn, string sSimplePrint);
}
#endregion
#region
/// <summary>
/// 데이터서비스 인터페이스
/// </summary>
public interface IDataServiceUs
{
/// <summary>
/// 서비스 실행
/// </summary>
string Execute(string[] aParam);
/// <summary>
/// 데이터 획득
/// </summary>
object GetData(string[] aParam);
/// <summary>
/// 데이터 설정
/// </summary>
string SetData(object oParam);
}
#endregion
#region
/// <summary>
/// 테이블서비스 인터페이스
/// </summary>
public interface ITableUs
{
bool DBConnection();
string SelectTable(string[] aParam, out DataTable dtData);
void SetTableInfo(DataRow drData, ref Column.MST_TABLE.TABLE_DATA cTable);
string SelectTableOrderItem(string[] aParam, out DataTable dtData);
string SelectFloor(string[] aParam, out DataTable dtData);
string SelectTableSaleInfo(out DataTable dtData);
string UpdateTableCompletePayment(string[] aParam);
string UpdateTableUse(string pFloorCd, string pTableNo, string pPosNo, string pUseFlag, string pFirstOrderTm, int pCustCount, double pOrderAmount, bool groupCheck = false);
string SelectMenuOrder();
string CompleteMenuOrder();
string SelectStoreNotice(string[] aParam, out DataTable dtData);
string RegisterStoreNotice(string sTitle, string sContents);
string DeleteStoreNotice(string[] aParam);
//string UpdateTableJoin(string sFloorCd, string sTableNo, string sTableJoinFloorCd, string sTableJoinTableNo);
string CompleteSaleOrder();
//string UpdateTableJoinClear(string sFloorCd, string sTableNo);
string UpdateTableAdd(string sFromFloorCd, string sFromTableNo, string sToFloorCd, string sToTableNo);
string UpdateTableMove(string sFromFloorCd, string sFromTableNo, string sToFloorCd, string sToTableNo);
string UpdateMenuItemMove();
string UpdateKtchOrderMessage(string sMsgId, int iItemRow, string sMsg1, string sMsg2, string sMsg3);
string SelectFloorAndTableName(string sFloorCd, string sTableNo, out DataTable dtData);
/// <summary>
/// 좌석메모 조회
/// </summary>
/// <param name="sFloorCd"></param>
/// <param name="sTableNo"></param>
/// <param name="dtData"></param>
/// <returns></returns>
string SelectKtchOrderMessage(string sFloorCd, string sTableNo, out DataTable dtData);
/// <summary>
/// 테이블 주문상품의 주방장치코드 갯수 가져오기
/// </summary>
/// <param name="orderFlag">주문상태 (0:주문중, 1:주문완료, 2:주문수정)</param>
/// <param name="floorCd"></param>
/// <param name="tableNo"></param>
/// <param name="itemCode">서브매장코드 + 상품코드</param>
/// <returns></returns>
int GetKtchDiveceCount(string orderFlag, string floorCd, string tableNo, string itemCode = "");
/// <summary>
/// 테이블그룹처리 (다중선택)
/// </summary>
/// <param name="selectedTables"></param>
/// <returns></returns>
string UpdateTableGroup(string selectedTables);
/// <summary>
/// 데이블그룹해제 (전체해제)
/// </summary>
/// <param name="opGroupFloorCd"></param>
/// <param name="opGroupTableNo"></param>
/// <returns></returns>
string UpdateTableGroupClear(string opGroupFloorCd, string opGroupTableNo);
/// <summary>
/// 층 마스터 데이터베이스 저장 (local)
/// </summary>
/// <param name="lstMstFloor"></param>
/// <returns></returns>
string FloorMasterSave(List<Column.MST_FLOOR.FLOOR_DATA> lstMstFloor);
/// <summary>
/// 테이블 마스터 데이터베이스 저장 (local)
/// </summary>
/// <param name="lstMstTable"></param>
/// <returns></returns>
string TableMasterSave(List<Column.MST_TABLE.TABLE_DATA> lstMstTable);
/// <summary>
/// 층/테이블 마스터 데이터베이스 저장 (local)
/// </summary>
/// <param name="lstMstFloor"></param>
/// <param name="lstMstTable"></param>
/// <returns></returns>
string TableMasterSave(List<Column.MST_FLOOR.FLOOR_DATA> lstMstFloor, List<Column.MST_TABLE.TABLE_DATA> lstMstTable);
/// <summary>
/// 층/테이블 마스터 백업 (to server)
/// </summary>
/// <returns></returns>
string TableMasterBackup(List<Column.MST_FLOOR.FLOOR_DATA> lstMstFloor, List<Column.MST_TABLE.TABLE_DATA> lstMstTable);
/// <summary>
/// 층/테이블 마스터 복원 (from server)
/// </summary>
/// <returns></returns>
string TableMasterRestore();
/// <summary>
/// 연습모드 테이블 생성
/// </summary>
/// <param name="checkExist">존재체크여부</param>
/// <returns></returns>
bool CreateTrainingTable(bool checkExist = true);
/// <summary>
/// 테이블주문내역 건수
/// </summary>
/// <param name="floorCd"></param>
/// <param name="tableNo"></param>
/// <returns></returns>
int GetOrderDataCount(string floorCd = "", string tableNo = "");
/// <summary>
/// 주문번호 자동 채번 (후불POS 전용)
/// </summary>
/// <returns></returns>
string GetOrderNoForDb();
/// <summary>
/// 주문차수 채번 (후불POS 전용)
/// </summary>
/// <param name="floorCd"></param>
/// <param name="tableNo"></param>
/// <returns></returns>
string GetOrderSeq(string floorCd, string tableNo);
}
#endregion
#region
/// <summary>
/// 예약서비스 인터페이스
/// </summary>
public interface IReservationUs
{
/// <summary>
/// 예약 데이터 조회
/// </summary>
/// <param name="aPara">예약정보</param>
/// <param name="dtData">조회결과</param>
/// <returns></returns>
string SelectData(string[] aPara, out DataTable dtData);
/// <summary>
/// 예약등록
/// </summary>
/// <param name="reserveDate"></param>
/// <param name="reserveTime"></param>
/// <param name="cashierNm"></param>
/// <param name="custTelNo"></param>
/// <param name="alarmYN"></param>
/// <param name="alarmTM"></param>
/// <returns></returns>
string InsertData(string reserveDate, string reserveTime, string cashierNm, string custTelNo, string note, string alarmYN, string alarmTM);
/// <summary>
/// 예약수정
/// </summary>
/// <param name="reserveNo"></param>
/// <param name="reserveDate"></param>
/// <param name="reserveTime"></param>
/// <param name="cashierNm"></param>
/// <param name="custTelNo"></param>
/// <param name="note"></param>
/// <param name="alarmYN"></param>
/// <param name="alarmTM"></param>
/// <returns></returns>
string UpdateData(string reserveNo, string reserveDate, string reserveTime, string cashierNm, string custTelNo, string note, string alarmYN, string alarmTM);
/// <summary>
/// 알람확인
/// </summary>
/// <param name="reserveNo"></param>
/// <returns></returns>
string UpdateAlarmComfrim(string reserveNo);
}
#endregion
#region
/// <summary>
/// 결제서비스 기본 인터페이스
/// </summary>
public interface IPaymentUs
{
/// <summary>
/// 결제 조회
/// </summary>
string SearchPayment(string[] aParam, ref string[] aRet);
/// <summary>
/// 결제 정보 획득
/// </summary>
object GetPayment(string[] aParam);
/// <summary>
/// 결제 등록
/// </summary>
string SetPayment(string[] aParam);
/// <summary>
/// 결제 취소
/// </summary>
string CancelPayment(string[] aParam);
/// <summary>
/// 결제 반품(자동반품)
/// </summary>
string RefundPayment(string[] aParam);
/// <summary>
/// 결제 수기 등록(임의등록)
/// </summary>
string SetMenualPayment(string[] aParam);
}
#endregion
#region
/// <summary>
/// 결제서비스 확장 인터페이스
/// </summary>
public interface IPaymentExpUs
{
/// <summary>
/// 결제 조회
/// </summary>
string SearchPayment(string[] aParam, ref string[] aRet);
/// <summary>
/// 결제 정보 획득
/// </summary>
object GetPayment(string[] aParam);
/// <summary>
/// 결제 등록
/// </summary>
string SetPayment(string[] aParam);
/// <summary>
/// 결제 취소
/// </summary>
string CancelPayment(string[] aParam);
/// <summary>
/// 결제 반품(자동반품)
/// </summary>
string RefundPayment(string[] aParam);
/// <summary>
/// 결제 수기 등록(임의등록)
/// </summary>
string SetMenualPayment(string[] aParam);
/// <summary>
/// 결제 확정(거래완료시 확정)
/// </summary>
string CompletePayment(string[] aParam);
/// <summary>
/// 제휴(기타)결제 등록
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
string SetCoopPayment(string[] aParam);
/// <summary>
/// 스마일페이 해피포인트 등록
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
string SetSmilePayment(string[] aParam);
/// <summary>
/// IC모드 해피포인트 등록
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
string SetCoopPaymentIC(string[] aParam);
//#20180329, 해피기프트(신) 자동적립 수정 Start, lsr
/// <summary>
/// 해피기프트(신) 해피포인트 등록
/// </summary>
/// <returns></returns>
string SetHPGiftPayment();
//#20180329, 해피기프트(신) 자동적립 수정 End, lsr
}
#endregion
#region
/// <summary>
/// 판매 등록 인터페이스
/// </summary>
public interface ISalePluItemUs
{
/// <summary>
/// 세트 메뉴 할인 마스터 로딩 처리
/// </summary>
void LoadSetMenuDisMaster();
/*
/// <summary>
/// 2019-04-11 - 1997fx11 : 상품 등록 처리
/// </summary>
/// <param name="_basketItem"></param>
/// <returns></returns>
string SetItemCode(object _basketItem);
*/
/// <summary>
/// 상품 등록 처리
/// </summary>
/// <param name="sSelRow">선택행</param>
/// <param name="sInPutTypeCode">(0:수입력, 1:메뉴, 2:스켄) + (메뉴코드,스캔코드)</param>
/// <param name="sInPutData">입력데이터</param>
/// <returns></returns>
string SetItemCode(string sSelRow, string sInPutTypeCode, string sInPutData);
/// <summary>
/// 상품 등록 처리
/// </summary>
/// <param name="sSelRow">선택행</param>
/// <param name="sInPutType">(0:수입력, 1:메뉴, 2:스켄, 3:플레이버</param>
/// <param name="sSubStoreNo">서브점포코드</param>
/// <param name="sItemCode">메뉴코드</param>
/// <param name="sScanCode">스캔코드</param>
/// <param name="sInPutData">입력데이터(수량)</param>
/// <returns></returns>
string SetItemCode(string sSelRow, string sInPutType, string sSubStoreNo, string sItemCode, string sScanCode, string sInPutData);
///// <summary>
///// 상품 마스터 조회
///// </summary>
///// <param name="sSubStoreNo"></param>
///// <param name="sItemCode"></param>
///// <param name="sScanCode"></param>
///// <returns></returns>
//DataTable SearchItemCode(string sSubStoreNo, string sItemCode, string sScanCode);
/// <summary>
/// 상품 지정 취소 처리
/// </summary>
/// <param name="sSelRow"></param>
/// <returns></returns>
string SetCancelItem(string sSelRow);
/// <summary>
/// 메뉴키 마스터 조회
/// </summary>
/// <param name="sMstName"></param>
/// <returns></returns>
DataTable SearchMenuMaster(string sMstName);
/// <summary>
/// 메뉴 구성 마스터 조회
/// </summary>
/// <param name="sMstName"></param>
/// <returns></returns>
DataTable SearchMenuMaster(string sMstName, string sPara1, string sPara2);
/// <summary>
/// 상품 수량 변경 처리
/// </summary>
/// <param name="sSelRow"></param>
/// <param name="sNewQty"></param>
/// <returns></returns>
string SetQtyChangeItem(string sSelRow, string sNewQty);
/// <summary>
/// 단품 할인 적용
/// </summary>
/// <param name="sSelRow"></param>
/// <param name="sDcType"></param>
/// <param name="sVaule"></param>
/// <returns></returns>
string SetDcItem(string sSelRow, string sDcType, string sDcCod, string sVaule);
/// <summary>
/// 단품 No Tax
/// </summary>
/// <param name="sSelRow"></param>
/// <returns></returns>
string SetNoTaxItem(string sSelRow);
/// <summary>
/// 상품 판매가 재계산
/// </summary>
string ItemAmountExeccute(bool bEvtExec, bool bTaxExec);
/// <summary>
/// 세트메뉴 구성상품 변경
/// </summary>
/// <param name="sSelRow"></param>
/// <param name="sMenuCode"></param>
/// <param name="sMenuName"></param>
/// <param name="sMenuPrc"></param>
/// <returns></returns>
string SetSetMenuItemChange(string sSelRow, string sMenuCode, string sMenuName, string sMenuPrc);
/// <summary>
/// 상품 부가메뉴 => 부가메뉴 변경
/// </summary>
/// <param name="sSelRow"></param>
/// <param name="sMenuCode"></param>
/// <param name="sMenuKeyDiv"></param>
/// <returns></returns>
string SetSubMenuItemChange(string sSelRow, string sMenuCode, string sMenuKeyDiv);
/// <summary>
/// 상품 부가메뉴 => 부가메뉴구분(속성) 등록
/// </summary>
/// <param name="sMemoCode"></param>
/// <param name="sMemoName"></param>
/// <returns></returns>
string SetSubMenuMemoItem(string sMemoCode, string sMemoName, string sInPutData);
/// <summary>
/// 상품 부가메뉴 => 부가메뉴구분(속성) 변경
/// </summary>
/// <param name="sMemoCode"></param>
/// <param name="sMemoName"></param>
/// <returns></returns>
string SetSubMenuMemoItemChange(string sSelRow, string sMemoCode, string sMemoName);
/// <summary>
/// 상품마스터 이미지명 업데이터
/// </summary>
/// <returns></returns>
void UpdateMstItemImageName();
/// <summary>
/// 상품아이템 할인 전체 취소
/// </summary>
/// <returns></returns>
//#20170920 보류 처리시 임의할인 내역 유지 되도록 수정 start
//기존
//bool ItemDcAllClear(bool bCampaignClear, bool bEtcCodeClear = false);
//변경
bool ItemDcAllClear(bool bCampaignClear, bool bEtcCodeClear = false, bool bNorDcClear = true);
//#20170920 보류 처리시 임의할인 내역 유지 되도록 수정 end
//#Rhee, 20180130 단품 할인 전체 취소 추가 Start
/// <summary>
/// 단품 할인 적용 전체 취소
/// </summary>
/// <param name="sDcDiv"></param>
/// <param name="sDcType"></param>
/// <returns></returns>
string SetDcCancelItem(string sDcDiv, string sDcType);
//#Rhee, 20180130 단품 할인 전체 취소 추가 End
//#Rhee, 20180212 전체상품 No Tax 추가 Start
/// <summary>
/// 전체상품 No Tax
/// </summary>
/// <returns></returns>
string SetAllNoTaxItem();
//#Rhee, 20180212 전체상품 No Tax 추가 End
}
#endregion
#region
/// <summary>
/// 거래해더 데이터 관리
/// </summary>
public interface IDataProcessUs
{
/// <summary>
/// 거래(TRAN) 합계금액 재계산 처리
/// </summary>
void UpdateTranAmount();
/// <summary>
/// 상품행별 영수 금액 재계산 처리
/// </summary>
void UpdatePluItemAmount(Column.TR_PLU.DATA cPluItem);
/// <summary>
/// 거래(TRAN) 상품 합계금액 재계산 처리
/// </summary>
void UpdatePluAmount();
void UpdatePluAmount(bool bTaxExec);
/// <summary>
/// 거래(TRAN) 결제 합계금액 재계산 처리
/// </summary>
void UpdatePayAmount();
/// <summary>
/// 모든 거래데이터 삭제
/// </summary>
bool DeleteTranItem();
/// <summary>
/// 거래 완료 후 처리
/// </summary>
bool TranComplete();
/// <summary>
/// 거래해더 초기화
/// </summary>
bool InitTranHeader();
/// <summary>
/// 트란해더 필수정보 재설정
/// </summary>
void SetTranBaseToHead();
/// <summary>
/// 거래 번호 증가
/// </summary>
/// <param name="bMsgSeq">전문순번증가여부</param>
/// <param name="bRegNo">등록번호증가여부</param>
/// <param name="bTradeNo">거래번호증가여부</param>
/// <returns></returns>
bool SetMsgNoInc(bool bMsgSeq, bool bRegNo, bool bTradeNo);
bool SetMsgNoInc(bool bMsgSeq, bool bRegNo, bool bTradeNo, string sTranKind);
/// <summary>
/// 현금 영수증 금액 계산
/// </summary>
/// <returns></returns>
double GetCashAmt();
/// <summary>
/// 할인 금액 획득
/// </summary>
/// <param name="bPosDc"></param>
/// <param name="bCpi"></param>
/// <param name="bCoop"></param>
/// <param name="bPoint"></param>
/// <param name="bCpn"></param>
/// <param name="bEmp"></param>
/// <param name="bSet"></param>
/// <param name="bEtc"></param>
/// <param name="bExcep"></param>
/// <returns></returns>
double GetPluDiscountAmount(bool bPosDc, bool bCpi, bool bCoop, bool bPoint, bool bCpn, bool bEmp, bool bSet, bool bEtc, bool bExcep, int iRow);
/// <summary>
/// 할인, 적립 대상 금액 획득
/// </summary>
/// <param name="sMenuKey"></param>
/// <returns></returns>
double GetPluTagetAmount(string sMenuKey);
double GetPluTagetAmount(string sMenuKey, bool bAddSave);
/// <summary>
/// 해당 상품이 할인 적립 가능한지 체크
/// </summary>
/// <param name="sMenuKey"></param>
/// <returns>true:가능, false:불가</returns>
bool CheckPluDiscountAble(string sMenuKey, Column.TR_PLU.DATA cPluItem);
/// <summary>
/// 상품 부가세 계산 처리
/// </summary>
/// <returns></returns>
bool ItemVatProc();
/// <summary>
/// 문자열의 숫자(Int)로 변환
/// </summary>
/// <param name="sValue"></param>
/// <returns></returns>
int IntParse(string sValue);
/// <summary>
/// 문자열의 숫자(Long)로 변환
/// </summary>
/// <param name="sValue"></param>
/// <returns></returns>
long LongParse(string sValue);
/// <summary>
/// 문자열의 숫자(Double)로 변환
/// </summary>
/// <param name="sValue"></param>
/// <returns></returns>
double DoubleParse(string sValue);
/// <summary>
/// 전체 금액 대비 결제 금액 부가세 구하기
/// </summary>
/// <param name="dPayAmt"></param>
/// <returns></returns>
double GetPaymentAmtVAT(double dPayAmt);
}
#endregion
#region
/// <summary>
/// 공통함수 인터페이스
/// </summary>
public interface IDataCommonUs
{
//#20181016 메모리 사용량 로그남기기 start
/// <summary>
/// 메모리 사용량 체크하여 로그남기기
/// </summary>
void MemoryCheckLog();
//#20181016 메모리 사용량 로그남기기 end
//#20180821 해피포인트 고객이름 마스킹 start
//해피포인트 고객이름 마스킹
string NameMasking(string sName);
//#20180821 해피포인트 고객이름 마스킹 end
/// <summary>
/// 상품 마스터 조회
/// </summary>
/// <param name="sSubStoreNo"></param>
/// <param name="sItemCode"></param>
/// <param name="sScanCode"></param>
/// <param name="TimeStampBarCodeYn"></param>
/// <returns></returns>
//#20171018 상품등록 유통기한 체크하기 start, phj
//기존
//DataTable SearchItemCode(string sSubStoreNo, string sItemCode, string sScanCode);
//변경
DataTable SearchItemCode(string sSubStoreNo, string sItemCode, string sScanCode, bool TimeStampBarCodeYn = false);
//#20171018 상품등록 유통기한 체크하기 end, phj
/// <summary>
/// 2019-05-08 - 1997fx11 : NHS 부가옵션을 조회
/// </summary>
/// <param name="sSubStoreNo"></param>
/// <param name="sSubItemCode"></param>
/// <returns></returns>
DataTable SearchNHSOption(string sSubStoreNo, string sSubItemCode);
/// <summary>
/// 상품 마스터 조회(상품코드로 조회)
/// </summary>
/// <param name="sSubStoreNo">서브점포</param>
/// <param name="sItemCode">상품코드</param>
/// <returns></returns>
DataTable SeletItemMstToItemCode(string sSubStoreNo, string sItemCode);
//#15945 해피오더 자동주문 상세기능 start
/// <summary>
/// 해피오더자동출하상품체크
/// </summary>
DataTable AutomaticShipmentItemCheck(string sSubStoreNo, string sItemCode);
//#15945 해피오더 자동주문 상세기능 end
/// <summary>
/// 상품 마스터 조회(스캔코드로 조회)
/// </summary>
/// <param name="sSubStoreNo">서브점포</param>
/// <param name="sScanCode">스캔코드</param>
/// <returns></returns>
DataTable SeletItemMstToScanCode(string sSubStoreNo, string sScanCode);
DataTable SeletItemMstNmToScanCode(string sSubStoreNo, string sScanCode);
/// <summary>
/// 상품 마스터 조회(선불카드 금액으로 상품 검색)
/// </summary>
/// <param name="sSubStoreNo"></param>
/// <param name="nSaleAmt"></param>
/// <returns></returns>
DataTable SeletItemMst_PrePaidCard_Sale(string sSubStoreNo, double nSaleAmt);
/// <summary>
/// 기능키 그룹 조회
/// </summary>
/// <param name="sFuncGroupID">기능그룹ID</param>
/// <returns></returns>
DataTable SeletFuncKeyGroup(string sFuncGroupID);
/// <summary>
/// 기능키 조회
/// </summary>
/// <param name="sFuncID"></param>
/// <returns></returns>
DataTable SeletFuncKey(string sFuncID);
//#15169 임직원 해피App 바코드리딩 시 자동할인적용 개선요청 start
/// <summary>
/// 기능키 배치 여부 조회
/// </summary>
/// <param name="sFuncID"></param>
/// <returns></returns>
DataTable SeletFuncKeyGroupArr(string sFuncID);
//#15169 임직원 해피App 바코드리딩 시 자동할인적용 개선요청 end
/// <summary>
/// 공통코드 조회
/// </summary>
/// <param name="sCommCodeGroup">공통그룹코드(PosCont.COMMON_CODE_GROUP)</param>
/// <param name="sCommCode">공통코드</param>
/// <returns></returns>
DataTable SeletCommonCode(string sCommCodeGroup, string sCommCode);
/// <summary>
/// 상품부가세율 구하기
/// </summary>
/// <param name="sTaxRateCode"></param>
/// <returns></returns>
double ItemTaxRate(string sTaxRateCode);
/// <summary>
/// MOT 마스터 조회
/// </summary>
/// <param name="sTableName"></param>
/// <param name="sMsgType"></param>
/// <param name="sCnntID"></param>
/// <param name="iSeqNo"></param>
/// <returns></returns>
DataTable SelectMOT(string sTableName, string sMsgType, string sCnntID, string sSeqNo);
/// <summary>
/// 서브 매장 마스터 조회
/// </summary>
/// <param name="sTableName"></param>
/// <returns></returns>
DataTable SelectSubStr(string sTableName);
/// <summary>
/// 카드 승인 헤더 IRT 전문 생성(카드,OCB포인트,콘 공용사용)
/// </summary>
/// <param name="sMsgID"></param>
/// <param name="nIRTBodyLen"></param>
/// <param name="sCmpApprID">업체정보</param>
/// <param name="aApprID">단말기번호</param>
/// <returns></returns>
string MakeCreditCardHeader(string sMsgID, long nIRTBodyLen, string sCmpApprID, string aApprID);
/// <summary>
/// SPC VAN 전문 공통 전문 송/수신
/// </summary>
/// <param name="sSendItem"></param>
/// <param name="sRecvItem"></param>
/// <param name="bShowMsg"></param>
/// <returns></returns>
//#20180418 고객 구매이력 정보 표시 및 해피쿠폰 발송 start, 20180503
//해피쿠폰 발송시 승인 메시지 변경 '포인트 조회중입니다.' -> '쿠폰 발송중입니다.'
//기존
/*
string ExecuteCardIrt(string sTradId, string sSendItem, ref string sRecvItem, bool bShowMsg, string sAuthInfo);
string ExecuteCardIrt(string sTradID, string sSendItem, ref string sRecvItem, bool bShowMsg, string sChipData, string sSingData, string sLastRecvData, string sAuthInfo);
*/
//변경
string ExecuteCardIrt(string sTradId, string sSendItem, ref string sRecvItem, bool bShowMsg, string sAuthInfo, string sPAY_WAY_CD = "", string sPAY_DTL_CD_01 = "");
string ExecuteCardIrt(string sTradID, string sSendItem, ref string sRecvItem, bool bShowMsg, string sChipData, string sSingData, string sLastRecvData, string sAuthInfo, string sPAY_WAY_CD = "", string sPAY_DTL_CD_01 = "");
//#20180418 고객 구매이력 정보 표시 및 해피쿠폰 발송 end, 20180503
/// <summary>
/// 기능키 유효성 검사
/// </summary>
/// <param name="sFuncKey"></param>
/// <returns></returns>
bool FunctionKeyValidity(string sFuncKey);
/// <summary>
/// 기능키 서브 메뉴 처리
/// </summary>
/// <param name="sFuncKey"></param>
/// <returns></returns>
bool FunctionKeySubMenuLoad(string sFuncKey);
/// <summary>
/// 쿠폰할인 기능키 조회
/// </summary>
/// <param name="sPay_Dc_Grp_Type"></param>
/// <param name="sPay_Dc_Cd"></param>
/// <returns></returns>
DataTable SeletCouponDCFuncKey(string sPay_Dc_Grp_Type, string sPay_Dc_Cd);
/// <summary>
/// 환율 조회
/// </summary>
/// <param name="sFuncID"></param>
/// <returns></returns>
DataTable SelectForeign();
/// <summary>
/// 환율 단위 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <returns></returns>
DataTable SelectExchangeRate(string sSaleDate);
/// <summary>
/// 환율 차수 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <returns></returns>
DataTable SelectExchangeRateChasu(string sSaleDate);
/// <summary>
/// 환율등록
/// </summary>
/// <param name="sFuncID"></param>
/// <returns></returns>
DataTable SaveExchangeRate(string[] aRet);
/// <summary>
/// 식권 기능키 조회
/// </summary>
/// <param name="sPay_Dc_Grp_Type"></param>
/// <param name="sPay_Dc_Cd"></param>
/// <returns></returns>
DataTable SeletMealTicketFuncKey(string sPay_Dc_Grp_Type, string sPay_Dc_Cd);
/// <summary>
/// 선불카드 판매 기능키 조회
/// </summary>
/// <param name="sPay_Dc_Grp_Type"></param>
/// <param name="sPay_Dc_Cd"></param>
/// <returns></returns>
DataTable SeletSalePreCardFuncKey(double nAmount);
/// <summary>
/// 상품권 기능키 조회
/// </summary>
/// <param name="sPay_Dc_Grp_Type"></param>
/// <param name="sPay_Dc_Cd"></param>
/// <returns></returns>
DataTable SeletGiftFuncKey(string sPay_Dc_Grp_Type, string sPay_Dc_Cd);
//#15533 상품권(승인) 시 PREFIX 리딩을 통한 승인기능도입 요청 start
/// <summary>
/// 상품권 권종 조회
/// </summary>
/// <param name="sGiftCd"></param>
/// <returns></returns>
DataTable SeletGiftCd(string sGiftCd);
//#15533 상품권(승인) 시 PREFIX 리딩을 통한 승인기능도입 요청 end
/// <summary>
/// 마스터 결제할인 Prefix 정보 조회
/// </summary>
/// <param name="sPrefixNo"></param>
/// <returns></returns>
DataTable SeletPrefixToPayTypeInfo(string sPrefixNo);
/// <summary>
/// 마스터 기간제휴사 결제할인 마스터 조회
/// </summary>
/// <param name="sPayDcGrpType"></param>
/// <param name="sPayDcCd"></param>
/// <param name="sCmpGradeCd"></param>
/// <returns></returns>
//#14231 KT 웰컴기프트 카드 기능 개발, PHJ START
//기존
//DataTable SeletTermCoopCmpPayDc(string sPayDcGrpType, string sPayDcCd, string sCmpGradeCd);
//변경
DataTable SeletTermCoopCmpPayDc(string sPayDcGrpType, string sPayDcCd, string sCmpGradeCd, string sDcApplyTrgt = "");
//#14231 KT 웰컴기프트 카드 기능 개발, PHJ END
//#14231 KT 웰컴기프트 카드 기능 개발, PHJ START
/// <summary>
/// 웰컴 기프트 버튼 활성화 여부
/// </summary>
//#14618 KT 더블할인 개발요청 start,phj
//기존
//bool WelcomGiftBtnYN(string sPosMenuKey, double nDestAmt, out string ProductCode);
//변경
bool WelcomGiftBtnYN(string sType, string sPosMenuKey, double nDestAmt, out string ProductCode);
//#14618 KT 더블할인 개발요청 end,phj
//#14231 KT 웰컴기프트 카드 기능 개발, PHJ END
/// <summary>
/// 마스터 기간제휴사 할인상품 마스터 조회
/// </summary>
/// <param name="sPayDcGrpType"></param>
/// <param name="sPayDcCd"></param>
/// <param name="sCmpGradeCd"></param>
/// <returns></returns>
DataTable SeletTermCoopCmpDcItem(string sPayDcGrpType, string sPayDcCd, string sCmpGradeCd);
/// <summary>
/// 제휴사 결제 할인 금액 계산
/// </summary>
/// <param name="sPAY_WAY_CD"></param>
/// <param name="sPAY_DTL_CD_01"></param>
/// <param name="sCmpGradeCd"></param>
/// <param name="nSaleAmt"></param>
/// <returns></returns>
double ExecTermCoopCmpPayDc(string sPAY_WAY_CD, string sPAY_DTL_CD_01, string sCmpGradeCd, double nSaleAmt);
/// <summary>
/// 프로덕트 ID로 상품 조회
/// </summary>
/// <param name="sProductID"></param>
/// <returns></returns>
DataTable SeletProductIDToItemCD(string sProductID);
/// <summary>
/// POS IRT 전문 송/수신(점포서버 송수신: 제이슨 이용)
/// </summary>
string ExecutePosIrt(string sMsgType, string sSvrIP, int nSvrPort, int nTimeout, Hashtable htSendData, ref Hashtable htRecvData);
string ExecutePosIrt(string sMsgType, string sSvrIP, int nSvrPort, int nTimeout, Hashtable htSendData, ref Hashtable htRecvData, bool VisibleMode);
//2017-06-02 dkshin 해피앱 추후적립
string ExecutePosHPAPPIrt(string sMsgType, string sSvrIP, int nSvrPort, int nTimeout, Hashtable htSendData, ref Hashtable htRecvData);
/// <summary>
/// POS IRT 전문 송/수신 - 외부 Van
/// </summary>
string ExecuteExIrt(string sSvrIP, int nSvrPort, int nTimeout, string sSendData, ref string sRecvData, int nRecvDataLen, string sAckData);
/// <summary>
/// POS IRT 전문 송/수신 - 외부 Van
/// </summary>
string ExecuteExIrt(string sSvrIP, int nSvrPort, int nTimeout, string sSendData, ref string sRecvData, int nRecvDataLen, string sAckData, bool bErrorSkip);
/// <summary>
/// POS IRT 전문 송/수신 - 외부 Van (전문 길이 위치 지정)
/// </summary>
string ExecuteLenIrt(string sSvrIP, int nSvrPort, int nTimeout, string sSendData, ref string sRecvData, int nRecvDataLen, int nRecvDataStartPosition);
/// <summary>
/// POS IRT 전문 송/수신 - 외부 Van (전문 길이 위치 지정)
/// </summary>
string ExecuteLenIrt(string sSvrIP, int nSvrPort, int nTimeout, string sSendData, ref string sRecvData, bool bFullSize, int nRecvDataLen, int nRecvDataStartPosition);
/// <summary>
/// POS IRT 전문 송/수신 - 외부 VAN (Byte 통신)
/// </summary>
string ExecuteByteIrt(string sSvrIP, int nSvrPort, int nTimeout, byte[] bSendData, ref byte[] bRecvData, int nRecvDataLen);
/// <summary>
/// POS TCP 전문 송/수신 기타 (Byte 통신)
/// </summary>
int ExecuteTcpClientIrt(string sFuncName, string sSvrIP, int nSvrPort, int nTimeout, byte[] bytSendData, ref byte[] bytRecvData, int nRecvDataLen);
/// <summary>
/// 결제수단코드 획득
/// </summary>
/// <param name="sPosMenuKey"></param>
/// <returns></returns>
string GetMenuKeyToPayWayCd(string sPosMenuKey);
/// <summary>
/// 결제세부코드 획득
/// </summary>
/// <param name="sPosMenuKey"></param>
/// <returns></returns>
string GetMenuKeyToPayDtlCd(string sPosMenuKey);
/// <summary>
/// 결제수단코드로 POS메뉴키 획득
/// </summary>
/// <param name="sPayWayCd"></param>
/// <param name="sPayDtlCd"></param>
/// <returns></returns>
string GetPayCdToMenuKey(string sPayWayCd, string sPayDtlCd);
/// <summary>
/// 결제할인 마스터에서 결제할인 중복 가능여부 체크
/// </summary>
/// <param name="sPosMenuKey"></param>
/// <returns></returns>
bool PayDcDuplicationCheck(string sPosMenuKey);
/// <summary>
/// 결제할인 마스터에서 결제할인 중복 가능여부 체크
/// </summary>
/// <returns></returns>
bool PayDcDuplicationCheck(string sPayWayCd, string sPayDtlCd, bool bShowMsg);
/// <summary>
/// 제휴사(통신사) VIP증정 대상 상품 체크
/// </summary>
/// <param name="sPAY_WAY_CD"></param>
/// <param name="sPAY_DTL_CD_01"></param>
/// <param name="sCmpGradeCd"></param>
/// <returns></returns>
double SrarchTermCoopCmpDcItem(string sPAY_WAY_CD, string sPAY_DTL_CD_01, string sCmpGradeCd);
double SrarchTermCoopCmpDcItem(string sPAY_WAY_CD, string sPAY_DTL_CD_01, string sCmpGradeCd, ref int nSelRow);
/// <summary>
/// 입출금 계정 디테일 마스터
/// </summary>
/// <param name="sDpstWthdrType">입출금유형</param>
/// <param name="sAccCd">계정코드</param>
/// <returns></returns>
DataTable SeletMstDpstWthdrAccDtl(string sDpstWthdrType, string sAccCd);
/// <summary>
/// 웹링크 마스터
/// </summary>
/// <param name="sDiv"></param>
/// <returns></returns>
DataTable SeletMstWebLinkMst(string sDiv);
/// <summary>
/// 공통 승인 로그 DB 저장
/// </summary>
/// <param name="결제정보"></param>
/// <param name="([0]결제수단, [1]결제상세코드, [2]전문구분, [3]요청구분, [4]카드번호, [5]결제금액, [6]승인번호, [7]승인일자, [8]승인시간, [9]응답상태값, [10]응답메시지, [11]전문, [12]입력구분, [13]추후적립여부, [14]적립구분, [15] skt할인상품코드)"></param>
string SetSaleApprLog(string sTradeDiv, string[] aParm);
/// <summary>
/// 스캔 바코드 상품 조회
/// </summary>
/// <param name="sScanCode">스캔코드</param>
/// <returns></returns>
string SeletItemMstToBarCode(string sSubStoreNo, string sScanCode, ref string sRetItemCd, ref string sRetScanCode, ref string sShtcutItemNm);
//#20171018 상품등록 유통기한 체크하기 start, phj
/// <summary>
/// 타임스탬프바코드 체크
/// </summary>
/// <param name="sSubStoreNo">점포코드</param>
/// <param name="sScanCode">스캔코드</param>
/// <param name="sRetItemCd">스탬프바코드의제품코드</param>
/// <returns></returns>
string TimeStampBarCodeCheck(string sSubStoreNo, string sScanCode, ref string sRetItemCd);
//#20171018 상품등록 유통기한 체크하기 end, phj
/// <summary>
/// 중간입금/마감입금 거래 조회
/// </summary>
/// <param name="sKind"></param>
/// <returns></returns>
DataTable SelectADMTList(string sKind);
/// <summary>
/// 중간입금/마감입금 내역 조회
/// </summary>
/// <param name="sTradeNo"></param>
/// <returns></returns>
DataTable SelectDPSTList(string sTradeNo);
/// <summary>
/// 중간입금/마감입금 원거래 취소 조회
/// </summary>
/// <param name="sTradeNo"></param>
/// <returns></returns>
DataTable SelectDPSTRefund(string sTradeNo);
/// <summary>
/// 서버전송 데이터 저장
/// </summary>
/// <param name="sFuncCode"></param>
/// <param name="aParam"></param>
void SaveServerRequestTransactionData(string sFuncCode, string[] aParam);
/// <summary>
/// 기타 공지 처리 프로세스
/// </summary>
/// <param name="sMsgType"></param>
/// <param name="aInParam"></param>
/// <param name="aOutParam"></param>
/// <returns></returns>
bool GetEtcNoticeProcess(string sMsgType, ref string[] aOutParam);
/// <summary>
/// 기타 공지 업데이트
/// </summary>
/// <param name="sMsgDiv"></param>
/// <param name="sSeq"></param>
void UpdateEtcNoticeProcess(string sMsgDiv, DataRow dr);
/// <summary>
/// 주변장치 상태 관리
/// </summary>
Color GS_DeviceStatus();
/// <summary>
/// 주문 대기 번호 자동 채번
/// </summary>
/// <returns></returns>
string GetWaitNoForDb();
/// <summary>
/// BR 팝업 업무 조회 셋팅
/// </summary>
void SetBrPopUpBizMst();
/// <summary>
/// BR 팝업 업무 조회
/// </summary>
/// <returns></returns>
DataTable GetBrPopUpBizMst();
/// <summary>
/// 디비 업데이트
/// </summary>
/// <param name="dr"></param>
/// <returns></returns>
bool BrPopupUpdate(DataRow dr);
/// <summary>
/// MSR 카드번호 첫자리와 끝자리 체크하여 문자인 경우 스페이스로 치환
/// </summary>
/// <param name="sCardNo"></param>
/// <param name="sValidDate"></param>
/// <param name="sInputType"></param>
/// <returns></returns>
//#20171024 START, PHJ
//기존
//string MSR_CardNoCheck(string sCardNo, string sValidDate, ref string sInputType);
//변경
string MSR_CardNoCheck(string sCardNo, string sValidDate, ref string sInputType, string sPayWayCd = "", string sPayDtlCd = "");
//#20171024 END, PHJ
/// <summary>
/// 거래번호 증가 체크
/// </summary>
/// <param name="sTranKind"></param>
/// <returns></returns>
bool TradeNoAddCheck(string sTranKind);
/// <summary>
/// 카드사 코드 조회
/// </summary>
/// <param name="sCardDiv"></param>
/// <returns></returns>
DataTable SeletCardCmp(string sCardDiv);
/// <summary>
/// 부가메뉴명 조회(TR로 로드시)
/// </summary>
/// <param name="sSubStoreNo"></param>
/// <param name="sItemCode"></param>
/// <returns></returns>
DataTable SeletSubPrcMenu(string sSubStoreNo, string sItemCode);
//#20170704 중국 단말기 승인 카드사 조회 start
/// <summary>
/// 카드사 매입사 조회
/// </summary>
/// <param name="sCardDiv"></param>
/// <param name="sBankNo"></param>
/// <returns></returns>
DataTable SeletCardCmpNm(string sCardDiv, string sBankNo);
//#20170704 중국 단말기 승인 카드사 조회 end
//#Rhee,20170830 중국 단말기 승인 카드사 조회2 start
/// <summary>
/// 카드사 매입사 조회
/// </summary>
/// <param name="sCardDiv"></param>
/// <param name="sBankNo"></param>
/// <param name="sCardType"></param>
/// <returns></returns>
DataTable SeletCardCmpNm(string sCardDiv, string sBankNo, string sCardType);
//#Rhee,20170830 중국 단말기 승인 카드사 조회2 end
//#20170810 중국 선불카드 MST_ITEM 생성 start
/// <summary>
/// 선불카드 MST_ITEM 생성
/// </summary>
/// Rhee, 2017/08/10
void PrecardSaveToMstItem();
//#20170810 중국 선불카드 MST_ITEM 생성 end
//#20170906 T페이 고도화 작업 phj, start
//DataTable TpayPrefixCheck(string sCardNo);
//#20170906 T페이 고도화 작업 phj, end
//#20171120 유통기한 바코드 인식률 start, phj
/// <summary>
/// 유통기한 바코드 인식률
/// </summary>
void BarCodeSuccessRate(string sBarcodeNo, string sSuccessYN);
//#20171120 유통기한 바코드 인식률 end, phj
//#20171116 온라인 쿠폰 제품군코드,상품코드 존재 시 할인 대상이 변경되도록 추가 start, phj
//기존
//#20180502 온라인쿠폰 제품군, 상품코드 할인 적용 기능 적용 start
/*
//적용시주석
/// <summary>
/// 해피쿠폰 할인 대상 유무 체크
/// </summary>
//int CpnItemDCTargetCheck(string CpnItemDcCode, ref DataTable CpnItemDt);
int CpnItemDCTargetCheck(string CpnItemDcCode);
*/
//#20180502 온라인쿠폰 제품군, 상품코드 할인 적용 기능 적용 end
//변경
/// <summary>
/// 해피쿠폰 제품군의 상품 리스트 가져오기
/// </summary>
DataTable CpnItemDCTargetList(string CpnItemDcCode);
//#20171116 온라인 쿠폰 제품군코드,상품코드 존재 시 할인 대상이 변경되도록 추가 end, phj
//#13341 신용카드 할부 개월 수 제한 기능 적용 start, phj
string MstCmmSearch(string pGrpCode = "", string pCode = "");
//#13341 신용카드 할부 개월 수 제한 기능 적용 end, phj
//#20180322 휴게소pos매출연동 start,phj
/// <summary>
/// 도로공사 매출 연동 - JSON 파일 저장
/// </summary>
/// <param name="sType">저장형태</param>
/// <param name="sFilePath">저장 경로</param>
/// <param name="htData">데이터</param>
/// <returns></returns>
//string SaveRoadJson(string sType, string sFilePath, string sData);
/// <summary>
/// Hashtable to JsonString
/// </summary>
/// <param name="htData"></param>
/// <param name="sJsonData"></param>
/// <returns></returns>
string HashToJsonString(Hashtable htData, ref string sJsonData);
//#20180322 휴게소pos매출연동 end,phj
//#20180418 고객 구매이력 정보 표시 및 해피쿠폰 발송 start, 20180528
//쿠폰 발송 횟수 제한 기능
string CpnSendCntSearch();
//#20180418 고객 구매이력 정보 표시 및 해피쿠폰 발송 end, 20180528
//#16577 결제창 내부 봉투 추가 기능 도입 start, 20180920
#region (T0042)
DataTable ChkAddBagMstCmm();
#endregion (T0042)
//#16577 결제창 내부 봉투 추가 기능 도입 end, 20180920
// 01.NHS_SCREEN
DataTable Select_NHS_SCREEN(string sScreenCD = null);
// 02.NHS_SCREEN_CONTENTS
DataTable Select_NHS_SCREEN_CONTENTS(string sScreenCD, string sFrameCD = null, string sLayerCD = null, string sContentsID = null);
// 03.NHS_SCREEN_LAYER
DataTable Select_NHS_SCREEN_LAYER(string sScreenCD, string sFrameCD = null, string sLayerCD = null);
DataTable Select_NHS_SCREEN_LAYER_GROUPBY_FRAMECD(string sScreenCD, string sFrameCD = null);
/*
// 04.NHS_STOR_PRD_CATE
DataTable Select_NHS_STOR_PRD_CATE(string sPrdCateUpCD = null, string sPrdCateCD = null);
*/
// 05.NHS_STOR_PRD_KEY
DataTable Select_NHS_STOR_PRD_KEY(string sItemCD = null, string sBarcode = null, string sPrdCateCD = null, string sTouchKeyCD = null);
// 06.NHS_UI_TEMPLATE
DataTable Select_NHS_UI_TEMPLATE(string sTemplCD = null);
// 07.NHS_CPI_CONTENTS
DataTable Select_NHS_CPI_CONTENTS(string sCpiCD = null);
/*
// 08.NHS_CUST_BUY_HIST
DataTable Select_NHS_CUST_BUY_HIST(string sHPCCustCD = null, string sItemCD = null);
*/
// 09.NHS_LANG_MSG
DataTable Select_NHS_LANG_MSG(string sLanguageGubunCD = null, string sLanguageMessageCD = null, string sLanguageCD = null);
// 10.NHS_LAYOUT
DataTable Select_NHS_LAYOUT(string sLayoutCD = null);
/*
// 11.NHS_PRD_CATE_L
DataTable Select_NHS_PRD_CATE_L(string sProductCategoryCD = null, string sProductCategoryUpCD = null);
*/
/*
// 12.NHS_PRD_CATE_M
DataTable Select_NHS_PRD_CATE_M(string sProductCategoryCD = null, string sProductCategoryUpCD = null);
*/
// 13.NHS_PRD_MST
DataTable Select_NHS_PRD_MST(string sBarCD = null, string sItemCD = null);
// 14.NHS_OPTN_MST
DataTable Select_NHS_OPTN_MST(string sItemOptionGroupCD = null, string sItemOptionCD = null);
// 15.NHS_PRD_OPTN_GRP
DataTable Select_NHS_PRD_OPTN_GRP(string sItemOptionGroupCD = null);
// 16.NHS_PRD_OPTN
DataTable Select_NHS_PRD_OPTN(string sItemCD = null, string sItemOptionGroupCD = null);
// 17.NHS_PRD_CATE
DataTable Select_NHS_PRD_CATE(string sProductCategoryUpCD = null, string sProductCategoryCD = null);
// 18.NHS_STOR_PRD_TAG
DataTable Select_NHS_STOR_PRD_TAG(string sItemCD = null, string sTagKind = null);
/// <summary>
/// 2019-03-19 - 1997fx11 : 구매고객 이력 호출
/// </summary>
/// <param name="sUpdateDT"></param>
/// <param name="sHPCCustCD"></param>
/// <param name="sItemCD"></param>
/// <returns></returns>
string[] Select_NHS_CUST_BUY_HIST(string sUpdateDT, string sHpcCustCD, string sItemCD = null);
/// <summary>
/// 2019-03-20 - 1997fx11 : 상품(아이템) 변경 처리
/// </summary>
/// <param name="sUpdateDT"></param>
/// <param name="sItemCD"></param>
/// <returns></returns>
int Get_NEW_PRODUCT_BY_IRT(string sUpdateDT = null, string sItemCD = null);
/// <summary>
/// 2019-03-21 - 1997fx11 : 상품(아이템) 변경 처리
/// </summary>
/// <returns></returns>
int Send_SYSTEM_INFO();
/// <summary>
/// 2019-04-26 - 1997fx11 : 자동 마감/개업
/// </summary>
void SetSaleEndOpen();
/// <summary>
/// 2019-05-29 - 1997fx11 : 알림톡 전송
/// </summary>
/// <param name="sPhoneNo"></param>
/// <param name="korItemName"></param>
/// <param name="itemCount"></param>
/// <returns></returns>
int Send_NoticeTalk(string sPhoneNo, string korItemName, string itemCount);
/// <summary>
/// Kiosk 에서 사용가능한 결재수단 사용여부를 조회 : 2019-06-10 - 1997fx11
/// </summary>
/// <param name="bUseYN"></param>
/// <returns></returns>
DataTable Select_NHS_FUNC_INFO(bool bUseYN = false);
}
#endregion
#region
/// <summary>
/// 거래완료 처리 인터페이스
/// </summary>
public interface ISaleCompleteUs
{
//#17142 [해피오더]POS로그인 시 영수증프린터로 장부재고 자동 출력 start
string BookInventoryPrint(string aParam);
//#17142 [해피오더]POS로그인 시 영수증프린터로 장부재고 자동 출력 end
//#20171017 전자영수증 발행 start, phj
/// <summary>
/// 해피앱 전자영수증 발행 여부 체크 (적립 또는 사용 내역 존재 시 체크됨)
/// </summary>
int CheckElectronic_Receipt();
//#20171017 전자영수증 발행 end, phj
//#20170918 기념일 배송 출력 start
/// <summary>
/// 기념일 배송 출력
/// </summary>
string ExecuteAnniversary(string aParam);
//#20170918 기념일 배송 출력 end
/// <summary>
/// 서비스 실행
/// </summary>
string Execute(string[] aParam);
/// <summary>
/// 거래완료 처리(영업개시,영업종료,로그온,로그오프...)
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
string OpenCloseExecute(string[] aParam);
/// <summary>
/// 거래완료 처리(판매)
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
string PosSaleExecute(string[] aParam);
/// <summary>
/// 간이영수증 완료 처리
/// </summary>
/// <returns></returns>
string PosEtcReceiptExecute(object oParam);
/// <summary>
/// 고객 불편 사항 출력
/// </summary>
/// <returns></returns>
string PosClaimReceiptExecute();
/// <summary>
/// 직전 영수증 재출력
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
string PosSaleLastRePrint(string[] aParam);
/// <summary>
/// 영수증 재출력
/// </summary>
/// <param name="sPrtData"></param>
/// <returns></returns>
bool PosSaleRePrint(string sPrtData);
/// <summary>
/// 영수증 재출력
/// </summary>
/// <param name="sPrtData"></param>
/// <param name="bTitle"></param>
/// <returns></returns>
bool PosSaleRePrint(string sPrtData, bool bTitle);
/// <summary>
/// 영수증 출력
/// </summary>
/// <param name="sPrtData"></param>
/// <returns></returns>
bool PosRembOrderPrint(string sPrtData);
/// <summary>
/// 영수증 출력(해피오더 주문서)
/// </summary>
/// <param name="aPrtData"></param>
/// <param name="bHPOAutoPrintYN"> 로그인 시 한번 True: 자동출력, False: 자동미출력</param>
/// <param name="sPrtGubun"> M:당월누계건 , D:당일픽업건</param>
/// <returns></returns>
//#16366 해피오더 당월누적주문내역 + 당일 해피오더주문 상세내역 자동 출력기능 start
//기존
//bool PosPrint(string[] aPrtData);
//변경
bool PosPrint(string[] aPrtData, bool bHPOAutoPrintYN, string sPrtGubun);
//#16366 해피오더 당월누적주문내역 + 당일 해피오더주문 상세내역 자동 출력기능 end
//17.08.22 dkshin SS 해피오더
/// <summary>
/// 영수증 출력(해피오더 KDS 전송 실패 시 사용)
/// </summary>
/// <param name="aPrtData"></param>
/// <returns></returns>
bool HappyOrderKDSPrint(ArrayList aPrtData);
/// <summary>
/// 해피포인트(인카드쿠폰) 내역 출력
/// </summary>
/// <param name="oEctItem"></param>
/// <param name="oParam"></param>
/// <returns></returns>
string ExecuteInCardCpnReceipt(object oEctItem, object oParam);
/// <summary>
/// 행사주문취합내역
/// </summary>
/// <param name="oParam"></param>
/// <returns></returns>
string PosSearchEventExecute(string sPrintData);
/// <summary>
/// 당일 거래 복구
/// </summary>
/// <returns></returns>
string TranDataRestore(string[] aParam);
/// <summary>
/// 더치페이 영수증 건출력
/// </summary>
/// <param name="aParam"></param>
string DutchPayReceiptPrint(string[] aParam);
/// <summary>
/// 지정취소 데이터 저장 처리
/// </summary>
/// <returns></returns>
string ItemCancelExecute(string[] aParam);
/// <summary>
/// 정산지 내역 출력
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
string ExecuteADMTReceipt(string[] aParam);
/// <summary>
/// 기타입출금 조회 내역 출력 처리
/// </summary>
/// <returns></returns>
string AccEtcListReceipt(string sFromDate, string sToDate);
/// <summary>
/// 준비점검 공지사항 출력
/// </summary>
/// <returns></returns>
string PrepStoreReceipt(DataTable dtData);
/// <summary>
/// 준비금 등록 내역 출력
/// </summary>
/// <returns></returns>
string AccRemoneyListReceipt(DataTable dtData, string sFromDate);
/// <summary>
/// 돈통오픈
/// </summary>
/// <returns></returns>
string OpenManualCashdrawer();
/// <summary>
/// 기타 로그 헤더 저장
/// </summary>
/// <param name="sTradeKind"></param>
/// <param name="bErrShow"></param>
/// <param name="sOrgSaleDt"></param>
/// <param name="sOrgPosNo"></param>
/// <param name="sOrgTradeNo"></param>
/// <returns></returns>
string EtcLogTrSave(string sTradeKind, bool bErrShow, string sOrgSaleDt, string sOrgPosNo, string sOrgTradeNo);
/// <summary>
/// 원거래에 해피포인트 추후적립 내역 출력정보 ADD
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <returns></returns>
string AddHappyPointAfterSave(string sSaleDate, string sPosNo, string sTradeNo);
//#해피앱 추후적립 start, sskim
/// <summary>
/// 원거래에 해피포인트 추후적립 내역 출력정보 ADD
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <returns></returns>
string AddHappyPointHpAppAfterSave(string sSaleDate, string sPosNo, string sTradeNo);
//#해피앱 추후적립 end, sskim
/// <summary>
/// 화면에 표시된는 영수증 출력 데이터 생성
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <returns></returns>
string GetDisplayPrintData(string sSaleDate, string sPosNo, string sTradeNo);
/// <summary>
/// 보류 거래 저장
/// </summary>
/// <param name="sHoldStat"></param>
/// <param name="sOrgRegNo"></param>
/// <param name="dQty"></param>
/// <param name="dSaleAmt"></param>
void EtcHoldLogSvae(string sHoldStat, string sOrgRegNo, double dQty, double dSaleAmt);
/// <summary>
/// 주문내역서 출력
/// </summary>
/// <returns></returns>
string ExecuteOrderBillReceipt();
//17.05.18 dkshin 쇼킹박스 추가
/// <summary>
/// 쇼킹박스처리
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
string PosShockingBoxExecute();
//17.05.18 dkshin 쇼킹박스 추가
/// <summary>
/// 쇼킹박스조회
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
string PosShockingBoxSearch(string aParam);
// Add, 2017.09.04, 근무시간 확인서 출력
/// <summary>
/// 근무시간 확인서 출력
/// </summary>
/// <param name="empNo">직원코드</param>
/// <param name="empNm">직원성명</param>
/// <param name="strTime">출근일시 (yyyyMMddHHmmss)</param>
/// <param name="endTime">퇴근일시 (yyyyMMddHHmmss)</param>
/// <returns></returns>
string ExecuteWorkTimeReceipt(string empNo, string empNm, string strTime, string endTime);
//#20171227, 예약증 양식 출력 Start
/// <summary>
/// 예약증 양식 출력
/// </summary>
/// <returns></returns>
string ExecuteReservationForm();
//#20171227, 예약증 양식 출력 End
// grayber@20180112 전자영수증 주문(대기)번호표 출력 start - 거래완료 처리 인터페이스 추가
/// <summary>
/// 대기번호표 출력
/// </summary>
/// <returns></returns>
//grayber@20180226 대기번호표 조건 변경 start - 파라매터 추가
/// string ExcuteElectroBillOrderNoReceipt();
string ExcuteElectroBillOrderNoReceipt(bool bForce);
//grayber@20180226 대기번호표 조건 변경 end
// grayber@20180112 전자영수증 주문(대기)번호표 출력 end
}
#endregion
#region
/// <summary>
/// 고객 클레임 처리 인터페이스
/// </summary>
public interface ICustomerService
{
/// <summary>
/// 고객 클레임 SEQ
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
DataTable GetClaimSeq();
/// <summary>
/// 고객 클레임 처리 조회
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
DataTable SearchCustomerList(string sSearchDate);
/// <summary>
/// 고객 클레임 상세 조회
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
DataTable SearchCustomerDetail(string sSaleDate, string sSeq);
/// <summary>
/// 고객 클레임 저장
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
string SetCustomerClaim(string sClaimData);
/// <summary>
/// 고객 클레임 출력
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
string CustomerClaimPrt(string sClaimData);
}
#endregion
#region
/// <summary>
/// 판매화면 처리 인터페이스
/// </summary>
public interface IFormSaleMainUs
{
/// <summary>
/// 판매화면 초기화
/// </summary>
/// <param name="bChgTradeDiv">상품등록시작</param>
/// <param name="bChgSaleFlow">판매흐름변경</param>
void DisplayInit(bool bChgSaleDoing, bool bChgSaleFlow);
/// <summary>
/// 상품등록 정보 화면 표시
/// </summary>
/// <param name="nFocus">(0:LastItem, 1::OldFocus)</param>
void DisplayItem(int nFocus, bool bDispChange);
/// <summary>
/// 부가메뉴 초기화 및 부가메뉴 마스터 로딩
/// </summary>
/// <param name="sSubStoreCode"></param>
/// <param name="sItemCode"></param>
/// <returns></returns>
bool LoadSubMenuDisplay(string sSubStoreCode, string sItemCode);
// <summary>
/// 세트메뉴 상품 화면 표시
/// </summary>
/// <param name="sGroupCode"></param>
/// <param name="sGroupName"></param>
/// <returns></returns>
bool LoadSetMenuDisplay(string sGroupCode, string sGroupName);
bool LoadSetMenuDisplay(string sGroupCode, string sGroupName, bool bSellGift);
/// <summary>
/// 플레이버 초기화 및 플레이버 마스터 로딩
/// </summary>
/// <returns></returns>
bool LoadFlavourMaster(string sSubStoreCode);
/// <summary>
/// 결제등록 정보 화면 표시
/// </summary>
void DisplayPayment();
/// <summary>
/// 판매,결제 모드 변경
/// </summary>
/// <param name="bSaleMode">true:판매모드, false:결제모드</param>
void ChangeSalePayMode(bool bSaleMode);
void ChangeShowPayBtn(bool bShowPayBtn);
/// <summary>
/// 판매화면 종료 처리
/// </summary>
void SaleMainExit();
/// <summary>
/// 상품Grid의 현재 선택된 Row 반환
/// </summary>
/// <returns></returns>
int GetSelectedIndexOnSaleItemGrid();
/// <summary>
/// 반품 처리
/// </summary>
/// <param name="iRow"></param>
/// <returns></returns>
string ReturnPay(int iRow);
/// <summary>
/// 상단 MOT 호출 처리
/// </summary>
/// <param name="sFuncCode"></param>
void SetTopMot(string sFuncCode);
}
#endregion
#region
/// <summary>
/// 해피오더 상품 취득
/// </summary>
public interface IFormHappyOrderMainUs
{
/// <summary>
/// 해피오더 상품 취득
/// </summary>
ArrayList HappyOrderItem { get; }
//#15746 해피오더 '쇼킹박스' 관련 POS 시스템 개발 요청 start
void Receive_BarCodeInfo(Hashtable htBarCodeInfo);
//#15746 해피오더 '쇼킹박스' 관련 POS 시스템 개발 요청 end
}
#endregion
#region
/// <summary>
/// 프로그램 시작 화면 처리 인터페이스
/// </summary>
public interface IFormSaleOpenUs
{
void SetPanelShowFlag(bool bShow);
void InitProgressbar();
void SaleOpenProgress(string sMstId, int nProgress);
void SetLabelMsg(string sMsg);
void SetProgressbarStyle(System.Windows.Forms.ProgressBarStyle pbStyle);
void ProgressProgressBar(int iStep);
}
#endregion
#region
/// <summary>
/// 메뉴이동 화면 처리 인터페이스
/// </summary>
public interface IFormTableItemMoveUs
{
string FirstSelectedFloorCd { get; set; }
string FirstSelectedTableNo { get; set; }
string SecondSelectedFloorCd { get; set; }
string SecondSelectedTableNo { get; set; }
DataTable LeftGrid { get; }
DataTable RightGrid { get; }
}
#endregion
#region
/// <summary>
/// 주방프린터 메시지구분
/// </summary>
public interface IFormKtchMsgUs
{
/// <summary>
/// 메시지구분
/// (PosConst.KPS_ORD_MSG_ID, 0:거래중지, 1:상품메모, 2:좌석메모, 3:테이블합석, 4:테이블이동, 5:상품이동, 9:FireKey)
/// </summary>
string MsgId { get; set; }
int ItemRow { get; set; }
string FloorCd { get; set; }
string TableNo { get; set; }
}
#endregion
#region
/// <summary>
/// 캠페인
/// </summary>
public interface ICampaignUs
{
/// <summary>
/// 캠페인 조건 마스터 로드
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
bool LoadCampaignCondition(string[] aParam);
/// <summary>
/// 캠페인 상품 등록 및 실행
/// </summary>
/// <param name="bExecCampign">캠페인실행여부</param>
/// <returns></returns>
double RegisterCampaignPlu(bool bExecCampign);
/// <summary>
/// 상품 캠페인 및 해피포인트 캠페인 할인 계산 처리
/// </summary>
/// <param name="sPayKeySeqNo">키값(취소시사용 "":상품캠페인, 그외 HP캠페인</param>
/// <param name="bPluAllClear">상품캠페인일때전체취소후재계산여부(true:전체쉬소, false:사은품제외)</param>
/// <param name="sPosOpInputDiv">사은품캠페인("":상품만, 그외:사은품캠페인계산)</param>
/// <param name="sCardNo">카드번호</param>
/// <param name="sTrgtCustType">고객구분(앱여부):N:일반고객, Y:앱고객</param>
/// <param name="sCustID">고객ID</param>
/// <param name="sCustLvlCd">고객등급코드</param>
/// <returns></returns>
double ExecuteCampaignPluHappyPoint(string sPayKeySeqNo, bool bPluAllClear, string sPosOpInputDiv, string sCardNo = "", string sTrgtCustType = "", string sCustID = "", string sCustLvlCd = "");
/// <summary>
/// 캠페인 조건의 행사상품 합계금액 및 행사금액 초기화
/// </summary>
/// <returns></returns>
void ClearCampaignAmt();
/// <summary>
/// 해피포인트 결제 캠페인 할인 계산 처리
/// </summary>
/// <param name="sPayKey">키값(취소시사용)</param>
/// <param name="sCardNo">카드번호</param>
/// <param name="nPayAmt">지불금액</param>
/// <param name="nExpPoint">소멸예정포인트</param>
/// <param name="sCustID">고객번호</param>
/// <returns></returns>
double ExecuteCampaignHappyUse(string sPayKey, string sCardNo, double nPayAmt, double nExpPoint, string sCustID);
/// <summary>
/// 결제 캠페인 할인 계산 처리
/// </summary>
/// <param name="sPayKey">키값(취소시사용)</param>
/// <param name="sCardNo">카드번호</param>
/// <param name="sPaymentDiv">지불구분(01:신용카드, 02:캐시비, 03:티머니, 04:스마일페이)</param>
/// <param name="nPayAmt">지불금액</param>
/// <returns></returns>
//#14538 스마일페이 캠페인 확인창 중복 팝업 확인요청 start,phj
//기존
//double ExecuteCampaignPayment(string sPayKey, string sCardNo, string sPaymentDiv, double nPayAmt);
//변경
double ExecuteCampaignPayment(string sPayKey, string sCardNo, string sPaymentDiv, double nPayAmt, bool bPopupYN = true);
//#14538 스마일페이 캠페인 확인창 중복 팝업 확인요청 end,phj
//#17169 스마일페이 변경요청 건 start, 20181113
//기존소스
/*
//#17169 스마일페이 변경요청 건 start
/// <summary>
/// 스마일페이 프로모션코드
/// </summary>
void GetSmilepayPromotionCode(out string SmilepayCampaingCode, out string SmilepayPromotionCode);
/// <summary>
/// 스마일캐시 적립대상금액
/// </summary>
double GetSmileCashTargetAmt(string pCampainCode);
//#17169 스마일페이 변경요청 건 end
*/
//변경소스
/// <summary>
/// 적용된 캠페인 있는지 체크
/// sSmilepayPromotionCode 스마일페이로모션코드
/// dSmileCashTargetAmt 스마일캐시금액
/// bApplyCampaign 적용된캠페인유무
/// </summary>
void GetSmailePayCampaignCheck(double pSmilepayPayAmt, out string pSmilepayPromotionCode, out double pSmileCashTargetAmt, out bool pApplyCampaign);
//#17169 스마일페이 변경요청 건 end, 20181113
/// <summary>
/// 결제 캠페인 할인 취소 처리
/// </summary>
/// <param name="sPayKeySeqNo"></param>
/// <param name="sPosOpInputDiv"></param>
/// <returns></returns>
bool CancelCampaignPayment(string sPayKeySeqNo, string sPosOpInputDiv);
/// <summary>
/// 결제 캠페인 확정처리(결제아이템 생성)
/// </summary>
/// <param name="sPayKeySeqNo">키값(취소시사용)</param>
/// <returns></returns>
bool CompleteCampaignPayment(string sPayKeySeqNo);
/// <summary>
/// 해피포인트 적립캠페인 계산 처리
/// </summary>
/// <param name="cEtcItemHP"></param>
void ExecuteCampaignHappyPointSave(string sPayKey, Column.TR_ETC.DATA cEtcItemHP);
/// <summary>
/// 해피포인트 스템프 캠페인 상품정보 획득 처리
/// </summary>
string GetCampaignHappyStampInfo();
/// <summary>
/// 해피포인트 스템프 캠페인 응답 설정 처리
/// </summary>
/// <param name="sHP_CAMPAIGN_INFO"></param>
/// <param name="sStmapCntInfo"></param>
/// <returns></returns>
void SetCampaignHappyStampInfo(string sHP_CAMPAIGN_INFO, string sStmapCntInfo, string sCustID);
/// <summary>
/// 고객화면 캠페인 컨텐츠 표시
/// </summary>
/// <param name="sPaymentDiv">지불구분(01:신용카드, 02:캐시비, 03:티머니, 98:해피포인트적립, 99:해피포인트결제)</param>
void CustDisplayCampaign(string sPaymentDiv);
/// <summary>
/// 영수 캠페인 계산 처리
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
double ExecuteCampaignPrint(string[] aParam);
/// <summary>
/// 캠페인 출력데이터 획득
/// </summary>
ArrayList GetCampaignPrintData(string[] aParam); // 본영수증
ArrayList GetCampaignPrintDataAddBill(string[] aParam); // 별도영수증
//grayber@20171214 캠페인 리펀드 쿠폰 start
ArrayList GetRefundCampaignPrintData(string[] aParam); // 캠페인리펀드 추가
//grayber@20171214 캠페인 리펀드 쿠폰 end
/// <summary>
/// 캠페인 조건에서 캠페인명 획득
/// </summary>
/// <param name="sCpiCode">캠페인코드</param>
/// <param name="nNameDiv">명종류(0:캠페인명, 1:영수증명, 2:수량제한명)</param>
/// <returns></returns>
string GetCampaignName(string sCpiCode, int nNameDiv);
}
#endregion
#region
/// <summary>
/// 고객용 화면
/// </summary>
public interface ICustDisplayUs
{
/// <summary>
/// 고객용 화면 시작
/// </summary>
void StartCustDisplay();
/// <summary>
/// 고객용 화면 멈춤
/// </summary>
void StopCustDisplay();
/// <summary>
/// 고객용 화면 종료
/// </summary>
void CloseCustDisplay();
/// <summary>
/// 상품등록 내역 초기화
/// </summary>
void ClearSaleItemList();
/// <summary>
/// 상품등록 내역 화면 표시
/// </summary>
void DisplaySaleItemList(bool bPlu, bool bPay, int nSelRow);
/// <summary>
/// 거래완료 내역 화면 표시
/// </summary>
void SaleCompleteDisplay(double nChangeAmt);
/// <summary>
/// 외화 내역 화면 표시
/// </summary>
void DisplayForeignCashList(string sForeignInfo);
/// <summary>
/// 캠페인 컨텐츠 표시
/// </summary>
void DisplayCampaign(string sFileDiv, string sFileName);
/// <summary>
/// 화면 보호기 시작
/// </summary>
bool ScreenSaverDisplay();
/// <summary>
/// 상품등록 내역 포커스 처리
/// </summary>
void DisplaySaleItemSelect(int nSelRow);
}
#endregion
#region FTP interface
/// <summary>
/// FTP 관련 interface
/// </summary>
public interface INetworkFTP
{
/// <summary>
///
/// </summary>
/// <param name="sServer"></param>
/// <param name="sUserId"></param>
/// <param name="sPassword"></param>
/// <param name="iTimeOutSeconds"></param>
/// <param name="iPort"></param>
/// <returns></returns>
int Connect(string sServer, string sUserId, string sPassword, int iTimeOutSeconds, int iPort);
/// <summary>
///
/// </summary>
/// <param name="sSvrDirectory"></param>
/// <param name="sLocalDirectory"></param>
/// <param name="sFileNm"></param>
/// <returns></returns>
int Download(string sSvrDirectory, string sLocalDirectory, string sFileNm, string sFtpMode);
int Download(string sSvrDirectory, string sLocalDirectory, string sFileNm, ref string sMsg, string sFtpMode);
/// <summary>
///
/// </summary>
/// <param name="sSvrDirectory"></param>
/// <param name="sLocalDirectory"></param>
/// <param name="sFileNm"></param>
/// <returns></returns>
int Upload(string sSvrDirectory, string sLocalDirectory, string sFileNm);
/// <summary>
///
/// </summary>
void Disconnect();
}
#endregion
#region IRT interface
/// <summary>
/// IRT 관련 interface
/// </summary>
public interface INetworkIRT
{
/// <summary>
/// IRT String으로 Send/Recv
/// </summary>
/// <param name="sIP"></param>
/// <param name="iPort"></param>
/// <param name="iTimeOut"></param>
/// <param name="sComm"></param>
/// <param name="sRecvData"></param>
/// <returns></returns>
int IRTSendReceive(string sIP, int iPort, int iTimeOut, string sComm, ref string sRecvData);
/// <summary>
/// IRT Byte로 Send/Recv
/// </summary>
/// <param name="sIP"></param>
/// <param name="iPort"></param>
/// <param name="iTimeOut"></param>
/// <param name="comm"></param>
/// <param name="sRecvData"></param>
/// <returns></returns>
int IRTSendReceive(string sIP, int iPort, int iTimeOut, byte[] comm, ref byte[] sRecvData);
/// <summary>
/// IRT String로의 Send/Recv - 외부 Van
/// </summary>
/// <param name="sIP"></param>
/// <param name="iPort"></param>
/// <param name="iTimeOut"></param>
/// <param name="sComm"></param>
/// <param name="sRecvData"></param>
/// <param name="nRecvDataLen"></param>
/// <param name="sAckData"></param>
/// <returns></returns>
int IRTSendReceiveEx(string sIP, int iPort, int iTimeOut, string sSendData, ref string sRecvData, int nRecvDataLen, string sAckData);
/// <summary>
/// IRT String로의 Send/Recv - 외부 Van, 에러 무시
/// </summary>
/// <param name="sIP"></param>
/// <param name="iPort"></param>
/// <param name="iTimeOut"></param>
/// <param name="sSendData"></param>
/// <param name="sRecvData"></param>
/// <param name="nRecvDataLen"></param>
/// <param name="sAckData"></param>
/// <param name="bErrorSkip"></param>
/// <returns></returns>
int IRTSendReceiveEx(string sIP, int iPort, int iTimeOut, string sSendData, ref string sRecvData, int nRecvDataLen, string sAckData, bool bErrorSkip);
/// <summary>
/// IRT Byte로 Send/Recv - 외부 Van
/// </summary>
/// <param name="sIP"></param>
/// <param name="iPort"></param>
/// <param name="iTimeOut"></param>
/// <param name="comm"></param>
/// <param name="sRecvData"></param>
/// <param name="nRecvDataLen"></param>
/// <param name="sAckData"></param>
/// <returns></returns>
int IRTSendReceiveEx(string sIP, int iPort, int iTimeOut, byte[] bSendData, ref byte[] bRecvData, int nRecvDataLen, byte[] sAckData);
/// <summary>
/// IRT Byte로 Send/Recv - 외부 Van (전문길이 위치지정)
/// </summary>
/// <param name="sIP"></param>
/// <param name="iPort"></param>
/// <param name="iTimeOut"></param>
/// <param name="sSendData"></param>
/// <param name="sRecvData"></param>
/// <param name="bFullSize"></param>
/// <param name="nRecvDataLen"></param>
/// <param name="nRecvDataStartPosition"></param>
/// <returns></returns>
int IRTSendReceiveLen(string sIP, int iPort, int iTimeOut, string sSendData, ref string sRecvData, bool bFullSize, int nRecvDataLen, int nRecvDataStartPosition);
/// <summary>
/// IRT Byte로 Send/Recv - 외부 Van (전문길이 위치지정)
/// </summary>
/// <param name="sIP"></param>
/// <param name="iPort"></param>
/// <param name="iTimeOut"></param>
/// <param name="bSendData"></param>
/// <param name="bRecvData"></param>
/// <param name="nRecvDataStartLen"></param>
/// <param name="nRecvDataEndLen"></param>
/// <returns></returns>
int IRTSendReceiveLen(string sIP, int iPort, int iTimeOut, byte[] bSendData, ref byte[] bRecvData, int nRecvDataLen, int nRecvDataStartPosition);
/// <summary>
/// IRT Byte로의 Send/Recv - 외부 Van (Bypass Byte)
/// </summary>
/// <param name="sIP"></param>
/// <param name="iPort"></param>
/// <param name="iTimeOut"></param>
/// <param name="bSendData"></param>
/// <param name="bRecvData"></param>
/// <param name="nRecvDataLen"></param>
/// <returns></returns>
int ByPassSendReceiveData(string sIP, int iPort, int iTimeOut, byte[] bSendData, ref byte[] bRecvData, int nRecvDataLen);
}
#endregion
#region Tran/// Send interface
/// <summary>
/// Tran/저널/서명/전자영수증 Send 관련 interface
/// </summary>
public interface INetworkTranSend
{
/// <summary>
/// Tran/저널/서명/전자영수증 Send 실행
/// </summary>
/// <returns></returns>
void StartTranSend();
/// <summary>
/// Tran/저널/서명/전자영수증 Send 중지
/// </summary>
/// <returns></returns>
void StopTranSend();
/// <summary>
/// 한국공항공사 매출 저장
/// </summary>
/// <param name="sSendType"></param>
/// <param name="sCmpCd"></param>
/// <param name="sSaleDt"></param>
/// <param name="sStorCd"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <param name="cHeader"></param>
/// <param name="alItems"></param>
/// <returns></returns>
//string SaveDataToDb(string sSendType, string sCmpCd, string sSaleDt, string sStorCd, string sPosNo, string sTradeNo, Column.KACReceiptHeader cHeader, ArrayList alItems, Column.KACCalcData cCalcData);
}
#endregion
#region IWatcher
/// <summary>
/// IWatcher
/// </summary>
public interface IWatcher
{
void Start();
void Stop();
}
#endregion
#region IWatcherBack
/// <summary>
/// IWatcherBack
/// </summary>
public interface IWatcherBack
{
void Start();
void Stop();
bool PGMReBootCheck();
}
#endregion
#region
/// <summary>
/// 거래 외부 인터페이스
/// </summary>
public interface lTranInterfaceOutside
{
void Start();
void Stop();
}
#endregion
#region Measuring interface
/// <summary>
/// Measuring 관련 interface
/// </summary>
public interface IMeasuring
{
void StartMeasuring();
void StopMeasuring();
void SetPrintMode(PosConst.MEASURING_AGENT_PRINT_MODE sMode);
void SetHappyOrderData(string[] sData);
}
#endregion
#region interface
/// <summary>
/// 주방프린터 출력 관련 interface
/// </summary>
public interface IKPSMain
{
void StartKPS();
void StopKPS();
bool KPSLanStatusCheck(string sKpsIp, string sKpsPort);
}
#endregion
#region JSON interface
/// <summary>
/// JSON 관련 interface
/// </summary>
public interface INetworkJSON
{
/// <summary>
///
/// </summary>
/// <param name="sIP"></param>
/// <param name="iPort"></param>
/// <param name="iTimeOut"></param>
/// <param name="htComm"></param>
/// <param name="htRecvData"></param>
/// <returns></returns>
int IRTSendReceive(string sIP, int iPort, int iTimeOut, string sCommData, Hashtable htData, ref Hashtable htRecvData);
/// <summary>
/// 마스터 전송을 위한 IRT 요청
/// </summary>
/// <param name="sIp"></param>
/// <param name="iPort"></param>
/// <param name="iTimeOut"></param>
/// <param name="sCommData"></param>
/// <param name="htData"></param>
/// <param name="sbRecvData"></param>
/// <returns></returns>
int MstIRTSendReceive(string sIp, int iPort, int iTimeOut, string sCommData, Hashtable htData, ref StringBuilder sbRecvData);
/// <summary>
/// 2019-03-20 - 1997fx11 : Kiosk관련 전송을 위한 IRT 요청
/// </summary>
/// <param name="sIp"></param>
/// <param name="iPort"></param>
/// <param name="iTimeOut"></param>
/// <param name="sCommData"></param>
/// <param name="htData"></param>
/// <param name="sbRecvData"></param>
/// <returns></returns>
int CmsIRTSendReceive(string sIp, int iPort, int iTimeOut, string sCommData, Hashtable htData, ref StringBuilder sbRecvData, ref string sUpDate);
/// <summary>
/// 디지털메뉴보드 I/F용
/// </summary>
/// <param name="sIP"></param>
/// <param name="iPort"></param>
/// <param name="iTimeOut"></param>
/// <param name="sCommData"></param>
/// <param name="htData"></param>
/// <param name="sRecvedData"></param>
/// <returns></returns>
int DmbIRTSendReceive(string sIP, int iPort, int iTimeOut, string sCommData, Hashtable htData, ref string sRecvedData);
/// <summary>
/// 중국 - 알리페이/위챗페이 승인 데몬과 통신
/// </summary>
/// <param name="sIP"></param>
/// <param name="iPort"></param>
/// <param name="iTimeOut"></param>
/// <param name="htData"></param>
/// <param name="htRecvData"></param>
/// <returns></returns>
int ChinaIRTSendReceive(string sIP, int iPort, int iTimeOut, string sData, ref Hashtable htRecvData);
//#20180322 휴게소pos매출연동 start,phj
/// <summary>
/// JSON 파일 생성
/// </summary>
/// <param name="sType">자료 형태</param>
/// <param name="sFile">경로 + 파일</param>
/// <param name="htData">자료</param>
/// <returns>string</returns>
string SaveJsonFile(string sType, string sFile, string sJsonData);
/// <summary>
/// HashTable To JsonString
/// </summary>
/// <param name="htData"></param>
/// <param name="sJsonData"></param>
/// <returns></returns>
string HashToJsonString(Hashtable htData, ref string sJsonData);
//#20180322 휴게소pos매출연동 end,phj
/// <summary>
/// 2019-05-29 - 1997fx11 : 알림톡 전송
/// </summary>
/// <param name="htData"></param>
/// <returns></returns>
//int Send_NoticeTalk(string sIp, int iPort, int iTimeOut, string sCommData, Hashtable htData, ref string sUpDate, ref StringBuilder sbRecvData);
}
#endregion
#region HTTP interface
/// <summary>
/// HTTP 통신 관련 interface
/// </summary>
public interface INetworkHttp
{
/// <summary>
/// Http GET 방식 요청 - Json 데이터 응답
/// </summary>
/// <param name="sUrl"></param>
/// <param name="sWorkType"></param>
/// <param name="sReqData"></param>
/// <param name="sRespJsonData"></param>
/// <returns></returns>
int HttpJsonGET_SendReceive(string sUrl, string sWorkType, string sReqData, ref string sRespJsonData);
/// <summary>
/// Http POST 방식 Json 데이터 요청 - Json 데이터 응답
/// </summary>
/// <param name="sUrl"></param>
/// <param name="sWorkType"></param>
/// <param name="htReqData"></param>
/// <param name="htRspData"></param>
/// <param name="sRespJsonData"></param>
/// <returns></returns>
int HttpJsonPOST_SendReceive(string sUrl, string sWorkType, Hashtable htReqData, ref Hashtable htRspData, ref string sRespJsonData);
/// <summary>
/// Http GET 방식 요청 - 응답
/// </summary>
/// <param name="sUrl"></param>
/// <param name="sWorkType"></param>
/// <param name="sReqData"></param>
/// <param name="sRespData"></param>
/// <returns></returns>
int HttpGET_SendReceive(string sUrl, string sWorkType, string sReqData, string sEncodingFlag, ref string sRespData);
/// <summary>
/// 해피버즈 http 통신
/// </summary>
/// <param name="sUrl"></param>
/// <param name="sWorkType"></param>
/// <param name="htReqData"></param>
/// <param name="htRspData"></param>
/// <param name="sRespJsonData"></param>
/// <returns></returns>
int HttpJsonPOST_SendReceiveForBuzz(string sUrl, string sWorkType, Hashtable htReqData, ref Hashtable htRspData);
/// <summary>
/// 관공서 방문 알림 통신
/// </summary>
/// <param name="sUrl"></param>
/// <param name="sWorkType"></param>
/// <param name="htReqData"></param>
/// <param name="htRspData"></param>
/// <param name="sRespJsonData"></param>
/// <returns></returns>
int HttpPOST_SendReceiveForGoverVisit(string sUrl, string sWorkType, Hashtable htReqData, ref Hashtable htRspData);
// #20170616, 해피앱 스탬프 Start
/// <summary>
/// 해피앱 스탬프 http 통신
/// </summary>
/// <param name="sUrl"></param>
/// <param name="htReqData"></param>
/// <param name="htRspData"></param>
/// <returns></returns>
int HttpJsonPOST_SendReceiveForStamp(string sUrl, Hashtable htReqData, ref Hashtable htRspData);
// #20170616, 해피앱 스탬프 End
//#20170911.001, Http post 통신 추가 start;girak.kim;
/// <summary>
/// Http Post 로 통신(content type 을 파라메타로 설정)
/// </summary>
/// <param name="sUrl">연동 서버 url</param>
/// <param name="sContentType">전송 content type</param>
/// <param name="sReqString">전송 문자열</param>
/// <param name="sRespData">응답 문자열</param>
/// <param name="nConnecLimit">접속수</param>
/// <returns></returns>
int HttpPOST_SendReceive(string sUrl, string sContentType, string sReqString, ref string sRespData);
}
#endregion
#region SPCN interface
/// <summary>
/// SPCN 관련 interface
/// </summary>
public interface INetworkVanSPCN
{
/// <summary>
/// SPCN 승인 공통 함수
/// </summary>
/// <param name="sSendData"></param>
/// <returns></returns>
//int RequestApproval(string sSendData, string sICData, string sSignData, string sOilData, string sAuthInfo, ref string sRecvData);
}
#endregion
#region
/// <summary>
/// 마스터 기본 인터페이스
/// </summary>
public interface IMasterUs
{
///// <summary>
///// 다중행 조회
///// </summary>
//ArrayList LoadMaster(string[] aParam);
///// <summary>
///// 단일행 조회
///// </summary>
//string SearchMaster(string[] aParam);
///// <summary>
///// 명 조회
///// </summary>
//string SearchName(string[] aParam);
/// <summary>
/// SELECT
/// </summary>
DataTable Select(string[] aParam);
/// <summary>
/// INSERT
/// </summary>
int Insert(string[] aParam);
/// <summary>
/// Update
/// </summary>
int Update(string[] aParam);
/// <summary>
/// Delete
/// </summary>
int Delete(string[] aParam);
}
#endregion
#region SQL interface
/// <summary>
/// SQL 관련 interface
/// </summary>
public interface IDatabaseSQL
{
/// <summary>
/// SQL Transction 시작
/// </summary>
/// <returns>Tran Saction 성공여부</returns>
bool Begin();
/// <summary>
/// SQL Transaction 실행
/// </summary>
/// <returns>SQL Transaction 실행 성공 여부</returns>
bool Commit();
/// <summary>
/// SQL Transction 실행취소
/// </summary>
/// <returns>Tran Saction 실행취소 성공여부</returns>
bool Rollback();
/// <summary>
/// SQL Transction 종료
/// </summary>
/// <returns>Tran Saction 종료 성공여부</returns>
void Close();
/// <summary>
/// SQL DataTable를 이용한 Select
/// <para>return -> 1:OK, -1:Connection 정보 에러, -2:SQL 에러, -3:기타 에러, 0:Select 결과 없음</para>
/// </summary>
/// <param name="pQuery"></param>
/// <param name="pDtReturn"></param>
/// <returns></returns>
int DBSelect(string pQuery, out DataTable pDtReturn);
/// <summary>
/// SQL DataTable를 이용한 UPDATE/DELETE
/// <para>return -> 1:OK, -1:Connection 에러, -2:SQL 에러, -3:기타 에러</para>
/// </summary>
/// <param name="pQuery">SQL 실행 명령 문장</param>
/// <returns></returns>
int DBExecuteNonQuery(string pQuery);
int DBExecuteNonQuery(string[] pQuery);
int DBExecuteNonQuery(string[] pQuery, bool bStandAlone);
/// <summary>
/// Database Connection String
/// </summary>
/// <param name="pDataSource"></param>
/// <param name="pInitialCatalog"></param>
/// <param name="pUID"></param>
/// <param name="pPassword"></param>
bool SetDBConnectionString(string pDataSource, string pInitialCatalog, string pUID, string pPassword);
}
#endregion
#region Oracle interface
/// <summary>
/// Oracle 관련 interface
/// </summary>
public interface IDatabaseOracle
{
/// <summary>
/// <para>return -> 1:OK, -1:Connection 정보 에러, -2:Oracle 에러, -3:기타 에러, 0:Select 결과 없음</para>
/// </summary>
/// <param name="pQuery"></param>
/// <param name="pDtReturn"></param>
/// <returns></returns>
int DBSelect(string pQuery, out DataTable pDtReturn);
/// <summary>
/// Database Connection String
/// </summary>
/// <param name="pUID"></param>
/// <param name="pPWD"></param>
/// <param name="pDataSource"></param>
/// <returns></returns>
bool SetDBConnectionString(string pUID, string pPWD, string pDataSource);
/// <summary>
/// <para>return -> 1:OK, -1:Connection 에러, -2:SQL 에러, -3:기타 에러, 0:Select 결과 없음</para>
/// </summary>
/// <param name="strCommand">Oracle Query 실행 명령 문장</param>
/// <returns></returns>
int DBExecuteNonQuery(string[] pQuery);
}
#endregion
#region Device Interface
/// <summary>
/// Device 기본 Interface
/// </summary>
public interface IDevice
{
/// <summary>
/// 디바이스 Open시 처리함수
/// </summary>
/// <param name="sDeviceType">장비종류(ex- "Msr","PosPrinter","Scanner"...)</param>
/// <param name="sLogicalName">레지스트리 항목(ex- "DefaultMsr","DefaultPosPrinter","DefaultScanner"...)</param>
/// <returns></returns>
bool OpenDevice(string sDeviceType, string sLogicalName);
/// <summary>
/// 디바이스 Close시 처리함수</para>
/// </summary>
/// <returns></returns>
bool CloseDevice();
}
#endregion
#region
/// <summary>
/// 서버 체크 관련 인터페이스
/// </summary>
public interface ICheckOverUs
{
/// <summary>
/// 해피오더 주문 상태별 건수 조회
/// </summary>
/// <param name="sRespData"></param>
/// <returns></returns>
///grayber@20180306 해피오더 주문가능 상태 추가 start - 인터페이스 HashTable 인자 추가
/// 기존
///string SelectHappyOrderCountByOrderStatus(Hashtable[] htOrderStatus);
/// 변경
string SelectHappyOrderCountByOrderStatus(Hashtable[] htOrderStatus, ref Hashtable htRspData);
//grayber@20180306 해피오더 주문가능 상태 추가 end
/// <summary>
/// 빚은몰 주문 건수 조회
/// </summary>
/// <param name="sRespData"></param>
/// <returns></returns>
string SelectBizeunOrderCount(string sRespData);
/// <summary>
/// 이지웰 주문 건수 조회
/// </summary>
/// <param name="sRespData"></param>
/// <returns></returns>
string SelectEzwelOrderCount(string sRespData);
/// <summary>
/// 온도정보 Http 통신
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
string SelectStoreTempInfo(string sRespData);
}
#endregion
#region PosPrinter
/// <summary>
/// PosPrinter 출력 관련 인터페이스
/// </summary>
public interface IPosPrinterUs : IDevice
{
/// <summary>
/// 프린터 출력
/// </summary>
/// <param name="pPrintData">출력할 데이터 Line 단위 배열</param>
/// <returns></returns>
bool ReceiptPrinter(string[] pPrintData);
/// <summary>
/// 프린터 출력(해피스테이션용
/// </summary>
/// <param name="pPrintData">출력할 데이터 Line 단위 배열</param>
/// <param name="kiosk">해피스테이션만 사용</param>
/// <returns></returns>
bool ReceiptPrinter(string[] pPrintData, bool kiosk);
/// <summary>
/// 이미지 Set
/// </summary>
/// <param name=""></param>
/// <returns></returns>
bool SetLogoBmp();
/// <summary>
/// 돈통 Open
/// </summary>
void OpenCashDrawer();
/// <summary>
/// 프린터 상태체크
/// </summary>
/// <returns></returns>
bool CheckPrinter();
/// <summary>
/// 프린터 초기화
/// </summary>
void ResetDevice();
/// <summary>
/// OPOS사용 디바이스 Open시 처리함수
/// </summary>
/// <param name="sDeviceType">장비종류(ex- "Msr","PosPrinter","Scanner"...)</param>
/// <param name="sLogicalName">레지스트리 항목(ex- "DefaultMsr","DefaultPosPrinter","DefaultScanner"...)</param>
/// <returns></returns>
bool OpenDeviceByOPOS(string sDeviceType, string sLogicalName);
/// <summary>
/// RS232사용 디바이스 Open시 처리함수
/// </summary>
/// <param name="sSerialPort">SerialPort 번호</param>
/// <param name="lBaudrate">Baudrate</param>
/// <returns></returns>
bool OpenDeviceByRS232(string sSerialPort, long lBaudrate);
/// <summary>
/// Printer Daemon 시작
/// </summary>
void StartPrinterDaemon();
/// <summary>
/// Printer Daemon 종료
/// </summary>
void StopPrinterDaemon();
/// <summary>
/// Printer Buffer에 출력 데이터 추가
/// </summary>
/// <param name="arData"></param>
void AddToPrinterBuffer(byte[] arData);
}
#endregion
#region CAT
/// <summary>
/// CAT 단말기 관련 인터페이스
/// </summary>
public interface ICatTerminalUs
{
/// <summary>
/// 단말기에 저장된 미전송 내역을 받아오는 함수
/// </summary>
/// <param name="sRecvData"></param>
/// <returns></returns>
int SPCNSecuCatRemain(ref string sRecvData);
/// <summary>
/// 승인/취소 요청
/// </summary>
/// <param name="sSendData"></param>
/// <param name="sRecvData"></param>
/// <returns></returns>
int SPCNSecuCatApprove(string sSendData, ref string sRecvData);
/// <summary>
/// 상태체크
/// </summary>
/// <param name="sSendData"></param>
/// <param name="sRecvData"></param>
/// <returns></returns>
int SPCNSecuCatInfo(string sSendData, ref string sRecvData);
/// <summary>
/// 연결확인(가동시 체크)
/// </summary>
bool SPCNSecuCatStatus();
///// <summary>
///// 디바이스 OPEN시 처리함수
///// </summary>
///// <param name="sPortNo">PORT Number</param>
///// <param name="lBaudrate">Baudrate</param>
///// <param name="lTimeOut">Timeout</param>
///// <param name="bIsSync">true:동기, false:비동기</param>
///// <returns></returns>
//bool OpenDevice(string sPortNo, long lBaudRate, long lTimeOut, bool bIsSync);
///// <summary>
///// 디바이스 CLOSE시 처리함수
///// </summary>
///// <returns></returns>
//bool CloseDevice();
///// <summary>
///// 단말기 연결 상태 및 정보 확인
///// </summary>
//string GetCATInfo();
///// <summary>
///// 단말기 거래 종료 및 초기화
///// </summary>
//void InitCAT();
///// <summary>
///// OCX 실행중 수신된 마지막 데이터 반환
///// </summary>
///// <returns></returns>
//string GetLastData();
///// <summary>
///// 신용 승인 요청
///// </summary>
///// <param name="sCardType"></param>
///// <param name="sInstallment"></param>
///// <param name="iAmount"></param>
///// <param name="iService"></param>
///// <param name="iTax"></param>
///// <param name="sItemCd"></param>
///// <param name="sReserve"></param>
///// <param name="sPrintDiv"></param>
///// <returns></returns>
//string ApproveCard(string sCardType, string sInstallment, int iAmount, int iService, int iTax, string sItemCd, string sReserve, string sPrintDiv);
///// <summary>
///// 신용 취소 요청
///// </summary>
///// <param name="sCardType"></param>
///// <param name="sInstallment"></param>
///// <param name="iAmount"></param>
///// <param name="iService"></param>
///// <param name="iTax"></param>
///// <param name="sApproveNo"></param>
///// <param name="sApproveDate"></param>
///// <param name="sItemCd"></param>
///// <param name="sReserve"></param>
///// <param name="sPrintDiv"></param>
///// <returns></returns>
//string CancelCard(string sCardType, string sInstallment, int iAmount, int iService, int iTax, string sApproveNo, string sApproveDate, string sItemCd, string sReserve, string sPrintDiv);
///// <summary>
///// 현금영수증 승인 요청
///// </summary>
///// <param name="sReceiptType"></param>
///// <param name="iAmount"></param>
///// <param name="iService"></param>
///// <param name="iTax"></param>
///// <param name="sItemCd"></param>
///// <param name="sReserve"></param>
///// <param name="sPrintDiv"></param>
///// <returns></returns>
//string ApproveCash(string sReceiptType, int iAmount, int iService, int iTax, string sItemCd, string sReserve, string sPrintDiv);
///// <summary>
///// 현금영수증 승인취소 요청
///// </summary>
///// <param name="sReceiptType"></param>
///// <param name="iAmount"></param>
///// <param name="iService"></param>
///// <param name="iTax"></param>
///// <param name="sApproveNo"></param>
///// <param name="sApproveDate"></param>
///// <param name="sItemCd"></param>
///// <param name="sReserve"></param>
///// <param name="sPrintDiv"></param>
///// <returns></returns>
//string CancelCash(string sReceiptType, int iAmount, int iService, int iTax, string sApproveNo, string sApproveDate, string sItemCd, string sReserve, string sPrintDiv);
///// <summary>
///// 포인트 승인 요청
///// </summary>
///// <param name="sPointType"></param>
///// <param name="iAmount"></param>
///// <param name="iService"></param>
///// <param name="iTax"></param>
///// <param name="sPaymentDiv"></param>
///// <param name="sItemCd"></param>
///// <param name="sReserve"></param>
///// <param name="sPrintDiv"></param>
///// <returns></returns>
//string ApprovePoint(string sPointType, int iAmount, int iService, int iTax, string sPaymentDiv, string sItemCd, string sReserve, string sPrintDiv);
///// <summary>
///// 포인트 취소 요청
///// </summary>
///// <param name="sPointType"></param>
///// <param name="iAmount"></param>
///// <param name="iService"></param>
///// <param name="iTax"></param>
///// <param name="sApproveNo"></param>
///// <param name="sApproveDate"></param>
///// <param name="sPaymentDiv"></param>
///// <param name="sItemCd"></param>
///// <param name="sReserve"></param>
///// <param name="sPrintDiv"></param>
///// <returns></returns>
//string CancelPoint(string sPointType, int iAmount, int iService, int iTax, string sApproveNo, string sApproveDate, string sPaymentDiv, string sItemCd, string sReserve, string sPrintDiv);
}
#endregion
#region
/// <summary>
/// 사인패드 관련 인터페이스
/// </summary>
public interface ISignPadUs
{
/// <summary>
/// [사인패드] 전자서명 요청
/// </summary>
/// <param name="iAmount"></param>
/// <param name="sSignDataPath"></param>
/// <param name="sSignDataName"></param>
/// <param name="sSignData"></param>
/// <returns></returns>
bool GetSign_SignPad(int iAmount, string sSignDataPath, string sSignDataName, ref string sSignData);
/// <summary>
/// [사인패드] 전자서명 요청 Ex
/// </summary>
/// <param name="sMsg1"></param>
/// <param name="sMsg2"></param>
/// <param name="sMsg3"></param>
/// <param name="sMsg4"></param>
/// <param name="sSignDataPath"></param>
/// <param name="sSignDataName"></param>
/// <param name="sSignData"></param>
/// <returns></returns>
bool GetSign_SignPadEx(string sMsg1, string sMsg2, string sMsg3, string sMsg4, string sSignDataPath, string sSignDataName, ref string sSignData);
/// <summary>
/// [사인패드] 전자서명 요청 터치패드(키오스크,테블릿용)
/// </summary>
/// <param name="sSignDataPath"></param>
/// <param name="sSignDataName"></param>
/// <param name="sSignData"></param>
/// <returns></returns>
bool GetSign_SignPadForTouchpad(string sSignDataPath, string sSignDataName, ref string sSignData);
/// <summary>
/// [사인패드] 비밀번호 요청
/// </summary>
/// <param name="sMaskedCardNo"></param>
/// <param name="sEncryptedPwd"></param>
/// <returns></returns>
bool GetPin_SignPad(string sMaskedCardNo, ref string sEncryptedPwd);
/// <summary>
/// [사인패드] 사용자정보 요청 함수
/// </summary>
/// <param name="bMaskingEnable"></param>
/// <param name="sDisplayMsg"></param>
/// <param name="sReceivedData"></param>
/// <returns></returns>
bool GetMsg_SignPad(bool bMaskingEnable, string sDisplayMsg, ref string sReceivedData);
/// <summary>
/// 은련카드 비밀번호 사용자 입력 처리
/// </summary>
/// <param name="sMaskedCardNo"></param>
/// <param name="sEncryptedPwd"></param>
/// <returns></returns>
bool GetKioskPin(string sMaskedCardNo, ref string sEncryptedPwd);
/// <summary>
/// 비밀번호 입력 처리(해피포인트)
/// </summary>
/// <param name="sEncryptedPwd"></param>
/// <returns></returns>
bool GetKioskMsg(ref string sEncryptedPwd);
/// <summary>
/// [사인패드] 사용자정보 요청 함수
/// </summary>
/// <param name="bMaskingEnable"></param>
/// <param name="sDisplayMsg"></param>
/// <param name="sReceivedData"></param>
/// <param name="iMaxLengh"></param>
/// <returns></returns>
bool GetMsg_SignPad(bool bMaskingEnable, string sDisplayMsg, ref string sReceivedData, int iMaxLengh);
/// <summary>
/// T-Money 운영정보 다운로드
/// </summary>
/// <param name="sTerminalNo"></param>
/// <param name="sBizNm"></param>
/// <param name="sSeqNo"></param>
/// <param name="sCardType"></param>
/// <param name="sDownType"></param>
/// <returns></returns>
string TMoneyDownload(string sTerminalNo, string sBizNm, string sSeqNo, string sCardType, string sDownType, ref byte[] rep_array);
/// <summary>
/// T-Money 개시
/// </summary>
/// <param name="sTerminalNo"></param>
/// <param name="sBizNm"></param>
/// <param name="sSeqNo"></param>
/// <param name="sCardType"></param>
/// <returns></returns>
string TMoneyOpen(string sTerminalNo, string sBizNm, string sSeqNo, string sCardType);
/// <summary>
/// T-Money 잔액조회
/// </summary>
/// <param name="sCardType"></param>
/// <param name="sRet"></param>
/// <returns></returns>
int TMoneyInfo(string sCardType, ref string sRet);
int TMoneyInfo(string sCardType, ref string sRet, string sBeep);
/// <summary>
/// T-Money 지불거래
/// </summary>
/// <param name="sTID"></param>
/// <param name="sCardType"></param>
/// <param name="sAmount"></param>
/// <param name="sMsg1"></param>
/// <param name="sMsg2"></param>
/// <param name="sMsg3"></param>
/// <param name="sResultMsg"></param>
/// <returns></returns>
int TMoneyApprove(string sTID, string sCardType, string sAmount, string sMsg1, string sMsg2, string sMsg3, ref string sResultMsg);
/// <summary>
/// T-Money 지불 재거래
/// </summary>
/// <param name="sTID"></param>
/// <param name="sCardType"></param>
/// <param name="sAmount"></param>
/// <param name="sMsg1"></param>
/// <param name="sMsg2"></param>
/// <param name="sMsg3"></param>
/// <param name="sResultMsg"></param>
/// <returns></returns>
int TMoneyApproveRe(string sTID, string sCardType, string sAmount, string sMsg1, string sMsg2, string sMsg3, ref string sResultMsg);
/// <summary>
/// T-Money 승인내역 Upload
/// </summary>
/// <param name="sTID"></param>
/// <param name="sbizName"></param>
/// <param name="sDocSeq"></param>
/// <param name="sTradeNo"></param>
/// <param name="sOrgAmount"></param>
/// <param name="sOrgDateTime"></param>
/// <param name="sOrgTradeNo"></param>
/// <param name="sRfData"></param>
/// <param name="sResultMsg"></param>
/// <returns></returns>
int TMoneyUploadTran(string sTID, string sbizName, string sDocSeq, string sTradeNo, string sOrgAmount, string sOrgDateTime, string sOrgTradeNo, string sRfData, ref string sResultMsg);
/// <summary>
/// T-Money 직전취소
/// </summary>
/// <param name="sTID"></param>
/// <param name="sCardType"></param>
/// <param name="sMsg1"></param>
/// <param name="sMsg2"></param>
/// <param name="sMsg3"></param>
/// <param name="sOrgAmount"></param>
/// <param name="sOrgDateTime"></param>
/// <param name="sOrgTradeNo"></param>
/// <param name="sResultMsg"></param>
/// <returns></returns>
int TMoneyApproveCancel(string sTID, string sCardType, string sMsg1, string sMsg2, string sMsg3, string sOrgAmount, string sOrgDateTime, string sOrgTradeNo, ref string sResultMsg);
/// <summary>
/// T-Money 현금반품
/// </summary>
/// <param name="sTID"></param>
/// <param name="sCardType"></param>
/// <param name="sMsg1"></param>
/// <param name="sMsg2"></param>
/// <param name="sMsg3"></param>
/// <param name="sTradeNo"></param>
/// <param name="sOrgAmount"></param>
/// <param name="sOrgDateTime"></param>
/// <param name="sOrgTradeNo"></param>
/// <param name="sResultMsg"></param>
/// <returns></returns>
int TMoneyCashVoid(string sTID, string sCardType, string sMsg1, string sMsg2, string sMsg3, string sTradeNo, string sOrgAmount, string sOrgDateTime, string sOrgTradeNo, ref string sResultMsg);
/// <summary>
/// T-Money 반품충전
/// </summary>
/// <param name="sTID"></param>
/// <param name="sbizName"></param>
/// <param name="sDocSeq"></param>
/// <param name="sCardType"></param>
/// <param name="sMsg1"></param>
/// <param name="sMsg2"></param>
/// <param name="sMsg3"></param>
/// <param name="sTradeNo"></param>
/// <param name="sOrgAmount"></param>
/// <param name="sOrgDateTime"></param>
/// <param name="sOrgTradeNo"></param>
/// <param name="sResultMsg"></param>
/// <returns></returns>
int TMoneyVoidCharge(string sTID, string sbizName, string sDocSeq, string sCardType, string sMsg1, string sMsg2, string sMsg3, string sTradeNo, string sOrgAmount, string sOrgDateTime, string sOrgTradeNo, ref string sResultMsg);
/// <summary>
/// 서명패드 업데이트(펌웨어)
/// </summary>
/// <returns></returns>
bool SetFirmware_SignPad_Update(int nCreateCode, string sDatePath);
/// <summary>
/// 서명패드 업데이트(동영상)
/// </summary>
/// <returns></returns>
bool SetAvi_SignPad_Update(int nCreateCode, string sDatePath);
/// <summary>
/// 서명패드 업데이트(이미지)
/// </summary>
/// <returns></returns>
bool SetImage_SignPad_Update(int nCreateCode, int nIndex, string sDatePath);
/// <summary>
/// 서명패드 업데이트(결과코드 리턴)
/// </summary>
/// <returns></returns>
bool SignPad_Update_Return(int nCreateCode, IntPtr nhwnd, int nMessage);
/// <summary>
/// 서명패드 업데이트(결과코드 리턴)
/// </summary>
/// <returns></returns>
bool SignPad_Update_Progress_Return(int nCreateCode, IntPtr nhwnd, int nMessage);
/// <summary>
/// 서명패드 업데이트 파일 코드(각 함수에 다 넣어 줌)
/// </summary>
/// <returns></returns>
int SignPad_Create_UpdateCode();
/// <summary>
/// 서명패드 업데이트 완료 후 시작
/// </summary>
/// <returns></returns>
bool SignPad_Start(int nCreateCode, string sSignPort);
/// <summary>
/// 서명패드 업데이트 자원해제
/// </summary>
/// <returns></returns>
int SignPad_Update_Destroy(int nCreateCode);
/// <summary>
/// 서명패드 업데이트 취소
/// </summary>
/// <returns></returns>
int SignPad_Update_Stop(int nCreateCode);
/// <summary>
/// 서명패드 업데이트 파일초기화
/// </summary>
/// <returns></returns>
int SignPad_Update_FileClear(int nCreateCode);
/// <summary>
/// 싸인패드 정보 확인[(O) 응답메시지 (모델명(10) + 펌웨어버젼(20) + App버젼(30) + RF버젼(30) + 시리얼번호(30) + POS연동타입(1)]
/// </summary>
/// <param name="sRsltMsg"></param>
/// <returns></returns>
bool GetSignPadInfo(ref string sRsltMsg);
/// <summary>
/// BitMap -> SignData 변환
/// </summary>
/// <param name="sSignDataPath"></param>
/// <param name="sSignData"></param>
/// <returns></returns>
bool GetSign_BmpToData(string sSignDataPath, ref string sSignData);
/// <summary>
/// PosDevice.INI --> SpcnPosCfg.ini
/// </summary>
void UpdateIniConfig();
}
#endregion
#region IC
/// <summary>
/// IC 리더기 관련 인터페이스
/// </summary>
public interface IICReaderUs
{
/// <summary>
/// 등록제 정보 설정
/// </summary>
/// <param name="sDeviceType"></param>
/// <returns></returns>
StringBuilder SetAuthInfoString(string sDeviceType);
/// <summary>
/// 상태 확인 요청
/// </summary>
/// <returns></returns>
string[] GetStatus_ICReader(string sDeviceType);
/// <summary>
/// 카드번호 암호화 요청
/// </summary>
/// <param name="sPlainCardNo"></param>
/// <param name="sEncGB"></param>
/// <returns></returns>
//#20170913 현금영수증, 포인트카드 마스킹 미적용 start
//암호화 할 항목 구분
//기존
//string GetEncryptedCardNo(string sPlainCardNo);
//변경
string GetEncryptedCardNo(string sPlainCardNo, string sEncGB = "1");
//#20170913 현금영수증, 포인트카드 마스킹 미적용 end
/// <summary>
/// 초기화 요청
/// </summary>
/// <returns></returns>
bool Init_ICReader(string sDeviceType);
/// <summary>
/// 시간설정 요청
/// </summary>
/// <returns></returns>
bool SetTime_ICReader(string sDeviceType);
/// <summary>
/// 상호인증 요청
/// </summary>
/// <param name="sDeviceType"></param>
/// <param name="sTerminerID"></param>
/// <returns></returns>
string KeyDownload_ICReader(string sDeviceType, string sTerminerID);
/// <summary>
/// 무결성 검사 요청
/// </summary>
/// <param name="sDeviceType"></param>
/// <param name="sRsltTime"></param>
/// <returns></returns>
string IntegrityCheck_ICReader(string sDeviceType, ref string sRsltTime);
/// <summary>
/// 카드 정보 요청
/// </summary>
/// <param name="iTranType"></param>
/// <param name="iAmount"></param>
/// <param name="sRsltMsg"></param>
/// <returns></returns>
bool GetCardInfo_ICReader(int iTranType, int iAmount, ref string sRsltMsg);
bool GetCardInfo_ICReader(int iTranType, int iAmount, ref string sRsltMsg, bool bMask);
/// <summary>
/// 발급사 인증 요청
/// </summary>
/// <param name="sIcChipData"></param>
/// <param name="sRsltMsg"></param>
/// <returns></returns>
bool CardIssuer_ICReader(string sIcChipData, ref string sRsltMsg);
/// <summary>
/// 승인 요청
/// </summary>
/// <param name="sInputMsg"></param>
/// <param name="sSignData"></param>
/// <param name="sIcData"></param>
/// <param name="sOilData"></param>
/// <param name="sRecvData"></param>
/// <returns></returns>
int SpcnCommPos(string sInputMsg, string sSignData, string sIcData, string sOilData, string m_sAuthInfo, ref string sRecvData);
/// <summary>
/// 망취소 요청
/// </summary>
/// <param name="sReqMsg"></param>
/// <param name="sResMsg"></param>
/// <param name="sRecvData"></param>
/// <returns></returns>
int SpcnCommPosForNetCancel(string sReqMsg, string sResMsg, ref string sRecvData);
/// <summary>
/// SpcnPos.dll 이 사용하는 SpcnPosCfg.ini 파일 update
/// </summary>
void UpdateIniConfig(string sSvrIP, string sPort);
/// <summary>
/// RF 카드 정보 요청
/// </summary>
/// <param name="sSamType"></param>
/// <param name="sAmount"></param>
/// <param name="sMsg1"></param>
/// <param name="sMsg2"></param>
/// <param name="sMsg3"></param>
/// <param name="sRsltMsg"></param>
/// <returns></returns>
bool GetRfCreditCardInfo(string sSamType, string sAmount, string sMsg1, string sMsg2, string sMsg3, ref string sRsltMsg);
//20171013 dkshin 해피기프트(신) IC/RF 충전 및 승인
/// <summary>
/// RF 코나머니카드 정보 요청
/// </summary>
/// <param name="sSamType"></param>
/// <param name="sAmount"></param>
/// <param name="sMsg1"></param>
/// <param name="sMsg2"></param>
/// <param name="sMsg3"></param>
/// <param name="sRsltMsg"></param>
/// <returns></returns>
bool GetRfEtcCardInfo(string sSamType, string sAmount, string sMsg1, string sMsg2, string sMsg3, ref string sRsltMsg);
/// <summary>
/// SPC 사원 카드 정보 읽기
/// </summary>
/// <param name="sRsltMsg"></param>
/// <returns></returns>
bool GetSpcEmpCardInfo(ref string sRsltMsg);
/// <summary>
/// 선불카드 조회
/// </summary>
/// <returns></returns>
bool RfPrepaidCardInfo(ref string sRsltMsg);
/// <summary>
/// IC 콜백 요청
/// </summary>
/// <param name="delegateReader"></param>
/// <returns></returns>
bool RegIcCallback(PosOLEDevice.DelegateIcReader delegateReader);
/// <summary>
/// IC 콜백 해지
/// </summary>
/// <returns></returns>
bool UnRegIcCallback();
/// <summary>
/// IC 콜백 설정
/// </summary>
/// <returns></returns>
bool IcReaderSettingDevice(bool bEnable);
/// <summary>
/// IC Reader 초기화
/// </summary>
void InitializeDevice();
/// <summary>
/// IC리더기 펌웨어 업데이트 요청
/// </summary>
/// <param name="checkfwtout"></param>
/// <param name="downfwtout"></param>
/// <param name="nPort"></param>
/// <param name="DllCheck"></param>
/// <param name="sMsg"></param>
/// <returns></returns>
bool SetDE_DownloadFW(int checkfwtout, int downfwtout, int nPort, byte[] DllCheck, ref string sMsg);
//#20171016 IC리더기 펌웨어 업데이트 Start, srlee
/// <summary>
/// IC 리더기 펌웨어 업데이트_NEW
/// </summary>
/// <param name="nPort"></param>
/// <param name="nBaud"></param>
/// <param name="filepath"></param>
/// <param name="callBackFunc"></param>
/// <returns></returns>
int SetDE_FWDOWN(int nPort, int nBaud, byte[] filepath, IntPtr callBackFunc);
//#20171016 IC리더기 펌웨어 업데이트 End, srlee
/// <summary>
/// IC 콜백 요청(CARD INFO)
/// </summary>
/// <param name="delegateIcReader"></param>
/// <returns></returns>
bool RegIcCallbackCardInfo(string sTmrId, int nCardAmt, PosOLEDevice.CallbackIc delegateIcReader);
/// <summary>
/// 카드 배출 요청
/// </summary>
bool Exhaust_ICCard();
/// <summary>
/// IC 콜백 해지(CARD INFO)
/// </summary>
/// <returns></returns>
bool UnRegIcCallbackCardInfo();
///// <summary>
///// 디바이스 OPEN
///// </summary>
///// <param name="sPort"></param>
///// <param name="lBaudRate"></param>
///// <returns></returns>
//bool OpenDevice(string sPort, long lBaudRate);
///// <summary>
///// 디바이스 CLOSE
///// </summary>
///// <returns></returns>
//bool CloseDevice();
///// <summary>
///// IC리더기 초기화
///// </summary>
//void InitICReader();
///// <summary>
///// IC리더기 무결성검사(비동기)
///// </summary>
//void IntegrityCheck_AsyncReq();
///// <summary>
///// IC리더기 무결성검사(동기)
///// </summary>
///// <returns></returns>
//string IntegrityCheck_SyncReq();
///// <summary>
///// IC리더기 상태확인(비동기)
///// </summary>
//void MSRInfo_AsyncReq();
///// <summary>
///// IC리더기 상태확인(동기)
///// </summary>
///// <returns></returns>
//string MSRInfo_SyncReq();
///// <summary>
///// IC리더기 상호인증(비동기)
///// </summary>
//void AuthInfo_AsyncReq();
///// <summary>
///// IC리더기 상호인증(동기)
///// </summary>
///// <returns></returns>
//string AuthInfo_SyncReq();
///// <summary>
///// IC리더기 암호화키 다운로드 시작(비동기)
///// </summary>
///// <param name="sRnd">K3 전문 응답 값 중 S_RND 값</param>
///// <param name="sHash">K3 전문 응답 값 중 HASH 값</param>
///// <param name="sSign">K3 전문 응답 값 중 SIGN 값</param>
//void KeyDownloadStart_AsyncReq(string sRnd, string sHash, string sSign);
///// <summary>
///// IC리더기 암호화키 다운로드 시작(동기)
///// </summary>
///// <param name="sRnd">K3 전문 응답 값 중 S_RND 값</param>
///// <param name="sHash">K3 전문 응답 값 중 HASH 값</param>
///// <param name="sSign">K3 전문 응답 값 중 SIGN 값</param>
///// <returns></returns>
//string KeyDownloadStart_SyncReq(string sRnd, string sHash, string sSign);
///// <summary>
///// IC리더기 암호화키 다운로드 완료(비동기)
///// </summary>
///// <param name="sData">K5 전문 응답 값 중 암호화 데이터 값</param>
//void KeyDownloadFinish_AsyncReq(string sData);
///// <summary>
///// IC리더기 암호화키 다운로드 완료(동기)
///// </summary>
///// <param name="sData">K5 전문 응답 값 중 암호화 데이터 값</param>
///// <returns></returns>
//string KeyDownloadFinish_SyncReq(string sData);
///// <summary>
///// 카드번호 암호화 요청(비동기)
///// </summary>
///// <param name="sCardNo"></param>
///// <returns></returns>
//void CardEncryption_AsyncReq(string sCardNo);
///// <summary>
///// 카드번호 암호화 요청(동기)
///// </summary>
///// <param name="sCardNo"></param>
///// <returns></returns>
//string CardEncryption_SyncReq(string sCardNo);
//#20171024 START, PHJ
string PAY_WAY_CD { set; }
string PAY_DTL_CD { set; }
//#20171024 END, PHJ
}
#endregion
#region
/// <summary>
/// 통합동글 관련 인터페이스
/// </summary>
public interface IUniDongleUs
{
/*
/// <summary>
/// 디바이스 OPEN시 처리함수
/// </summary>
/// <param name="sBaudRate">BaudRate</param>
/// <param name="sPortNo">Com Port No</param>
/// <returns></returns>
bool OpenDevice(string sBaudRate, string sPortNo);
/// <summary>
/// 디바이스 Close시 처리함수
/// </summary>
/// <returns></returns>
bool CloseDevice();
bool CloseDevice(bool bDeviceInit);
/// <summary>
/// 전자서명 요청
/// </summary>
/// <param name="sSaleDate">영업일자</param>
/// <param name="sStoreNo">점포번호</param>
/// <param name="sPosNo">POS번호</param>
/// <param name="sTranNo">거래번호</param>
/// <param name="sCardName">카드사명</param>
/// <param name="sAmount">결제금액</param>
/// <returns></returns>
string RunSignPad(string sSaleDate, string sStoreNo, string sPosNo, string sTranNo, string sCardName, string sAmount);
/// <summary>
/// 전자서명 초기화
/// </summary>
void ClearSignData();
/// <summary>
/// 전자서명 종료
/// </summary>
void EndSign();
/// <summary>
/// 전자서명 저장
/// </summary>
/// <returns>SignData</returns>
string SaveSign();
/// <summary>
/// 고객식별번호 입력 요청
/// </summary>
void GetCustomerNo();
/// <summary>
/// 암호화되지 않은 핀패드 입력 요청
/// </summary>
/// <param name="sCardNo">카드번호</param>
void RunPinPadNormal(string sCardNo);
/// <summary>
/// 암호화된 핀패드 입력 요청
/// </summary>
/// <param name="sCardNo">카드번호</param>
void RunPinPadEncrypt(string sCardNo);
/// <summary>
/// 사원카드 인증 요청
/// </summary>
/// <param name="sSeqNo">SeqNo</param>
/// <param name="sTerminalNo">TerminalNo</param>
void GetIDCard(string sSeqNo, string sTerminalNo);
/// <summary>
/// 동글 요청
/// </summary>
/// <param name="sSeqNo">SeqNo</param>
/// <param name="sTerminalNo">TerminalNo</param>
void RunDongle(string sSeqNo, string sTerminalNo);
/// <summary>
/// 현금IC카드 요청
/// </summary>
/// <param name="sSeqNo">SeqNo</param>
/// <param name="sTerminalNo">TerminalNo</param>
/// <param name="sCashAmount">결제금액</param>
/// <param name="sTranType">TranType</param>
void RunCashICCard(string sSeqNo, string sTerminalNo, string sCashAmount, string sTranType);
/// <summary>
/// NFC신용카드 요청
/// </summary>
/// <param name="sSeqNo">SeqNo</param>
/// <param name="sTerminalNo">TerminalNo</param>
void RunNFCCredit(string sSeqNo, string sTerminalNo);
/// <summary>
/// NFC 멤버십 요청
/// </summary>
/// <param name="sSeqNo">SeqNo</param>
/// <param name="sTerminalNo">TerminalNo</param>
void RunNFCMembership(string sSeqNo, string sTerminalNo);
/// <summary>
/// NFC신용카드 + 멤버십
/// </summary>
/// <param name="sSeqNo">SeqNo</param>
/// <param name="sTerminalNo">TerminalNo</param>
void RunNFCCreditMembership(string sSeqNo, string sTerminalNo);
/// <summary>
/// NFC 취소
/// </summary>
void RunNFCCancle();
/// <summary>
/// 선불 + 멤버십
/// </summary>
/// <param name="sSeqNo">SeqNo</param>
/// <param name="sTerminalNo">TerminalNo</param>
void RunBCCard(string sSeqNo, string sTerminalNo);
/// <summary>
/// DCC 통화 선택
/// </summary>
/// <param name="sSeqNo">거래일련번호(7Byte)</param>
/// <param name="sCurCd">현지통화코드(3Byte)</param>
/// <param name="sCurAmt">현지 통화금액(10Byte)</param>
/// <param name="sTranCurCd">(원화) 통화코드(3Byte)</param>
/// <param name="sTranCurAmt">(원화) 통화금액(10Byte)</param>
/// <param name="sInvertedRate">환율정보(38Byte)</param>
/// <returns></returns>
bool RunDCCCredit(string sSeqNo, string sCurCd, string sCurAmt, string sTranCurCd, string sTranCurAmt, string sInvertedRate);
/// <summary>
/// DCC 통화 선택취소
/// </summary>
/// <returns></returns>
bool RunDccCancel();
/// <summary>
/// 동글이 LOGON, 장비 설치 후 한번 만 실행
/// </summary>
/// <param name="sTerminalNo"></param>
/// <returns></returns>
bool DongleLogOn(string sTerminalNo);
/// <summary>
/// Dongle 펌웨어 업데이트
/// </summary>
/// <param name="bVisible">업데이트관련 에러메세지 팝업창 출력 여부</param>
/// <returns></returns>
bool DongleFirmwareUpdate(bool bVisible);
*/
}
#endregion
#region T-PAY BLE Dongle
/// <summary>
/// T-PAY BLE Dongle
/// </summary>
public interface ITPaygleUs
{
/// <summary>
/// 체크인 고객리스트 수신
/// </summary>
/// <param name="phoneList">고객리스트(JSON Format)</param>
/// <returns>체크인된고객수</returns>
int GetConnectList(out string phoneList);
/// <summary>
/// 체크인 고객리스트 수신
/// </summary>
/// <param name="phoneList">Column.TPAY_CONNECT_INFO Class</param>
/// <returns></returns>
int GetConnectList(out Column.TPAY_CONNECT_INFO phoneList);
/// <summary>
/// 선택된 XPT 단말기(스마트폰)에 BLE BOT 발급 요청
/// </summary>
/// <param name="xpt">결제키 발급대상 단말기 식별코드</param>
/// <param name="posID">요청POS식별번호</param>
/// <param name="deviceType">장비구분(001:안드로이드, 002:iOS)</param>
/// <returns></returns>
bool ReqPosProvide(string xpt, string posID, string deviceType, out string errMsg);
/// <summary>
/// BLE OTB 수신
/// </summary>
/// <param name="result">성공:OTB, 실패:오류메시지</param>
/// <returns></returns>
bool GetOTB(out string result);
/// <summary>
/// 수신된 비밀번호를 40Byte 해시코드로 변환
/// </summary>
/// <param name="password"></param>
/// <returns></returns>
string GetHashPassword(string password);
/// <summary>
/// 설치된 Paygle 상태를 체크하고 펌웨어를 업데이트
/// </summary>
/// <returns></returns>
bool CheckPaygle();
//#20170906 T페이 고도화 작업 phj, start
int ClassifyOTBCheck(string pOTB);
//#20170906 T페이 고도화 작업 phj, end
//#20170906 T페이 고도화 작업 phj, start
string ClassifyOTBCheckMsg(string pOTB);
//#20170906 T페이 고도화 작업 phj, end
}
#endregion
#region Scale
/// <summary>
/// Scale 관련 인터페이스
/// </summary>
public interface IScaleUs
{
/// <summary>
/// 유선저울 OPEN 처리 함수
/// </summary>
/// <param name="sSerialPort"></param>
/// <param name="lBaudrate"></param>
/// <returns></returns>
bool OpenDevice(string sSerialPort, long lBaudrate);
/// <summary>
/// 유선저울 CLOSE 처리 함수
/// </summary>
/// <returns></returns>
bool CloseDevice();
/// <summary>
/// 유선저울 0점 조정
/// </summary>
void ScaleCalibration();
/// <summary>
/// 유선저울 무게 측정
/// </summary>
void ScaleWeigh();
}
#endregion
#region
/// <summary>
/// 무선저울 관련 인터페이스
/// </summary>
public interface IWirelessScaleUs
{
/// <summary>
/// 무선저울 OPEN 처리 함수
/// </summary>
/// <param name="sSerialPort"></param>
/// <param name="lBaudrate"></param>
/// <returns></returns>
bool OpenDevice(string sSerialPort, long lBaudrate);
/// <summary>
/// 무선저울 CLOSE 처리 함수
/// </summary>
/// <returns></returns>
bool CloseDevice();
}
#endregion
#region
/// <summary>
/// 라벨프린터 관련 인터페이스
/// </summary>
public interface ILabelPrinterUs
{
/// <summary>
/// 라벨프린터 OPEN 처리 함수
/// </summary>
/// <param name="sSerialPort"></param>
/// <param name="lBaudrate"></param>
/// <returns></returns>
bool OpenDevice(string sSerialPort, long lBaudrate);
/// <summary>
/// 라벨프린터 CLOSE 처리 함수
/// </summary>
/// <returns></returns>
bool CloseDevice();
/// <summary>
/// 일반 제품정보 라벨 프린터 출력 함수
/// </summary>
/// <param name="sProductNm_Ko">제품명(한글) ex)"파인트"</param>
/// <param name="sProductNm_En">제품명(영문) ex)"Pint"</param>
/// <param name="sWeight">중량 ex)"340g"</param>
/// <param name="sStoreNm">점포명 ex)"양재사옥점"</param>
void PrintProductWeightInfo(string sProductNm_Ko, string sProductNm_En, string sWeight, string sStoreNm);
/// <summary>
/// 02O(해피오더) 제품정보 라벨 프린터 출력 함수
/// </summary>
/// <param name="sProductNm">제품명 ex)"패밀리"</param>
/// <param name="sOrderNo">주문번호 ex)"123456"</param>
/// <param name="sWeight">중량 ex)"990g"</param>
/// <param name="sContent_1">ex) "플레이버1/플레이버2/플레이버3"</param>
/// <param name="sContent_2">ex) "플레이버4/플레이버5/플레이버6"</param>
/// <param name="sStoreNm">점포명 ex)"양재사옥"</param>
/// <param name="sOrderYmdhms">주문시간 ex)"2016-06-23 14:00:00"</param>
/// <param name="sPackingYmdhms">포장시간 ex)"2016-06-23 14:20:00"</param>
void PrintO2OProductInfo(string sProductNm, string sOrderNo, string sWeight, string sContent_1, string sContent_2, string sStoreNm, string sOrderYmdhms, string sPackingYmdhms);
/// <summary>
/// 바코드 출력 라벨 프린터 출력 함수
/// </summary>
/// <param name="sProductNm_Ko">제품명(한글) ex)"파인트"</param>
/// <param name="sBarcode_Data">바코드 ex)"zxcgfdsgfhgsf"</param>
/// <param name="sStoreNm">점포명 ex)"양재사옥점"</param>
void PrintProductBarCodeInfo(string sProductNm_Ko, string sBarcode_Data, string sStoreNm);
}
#endregion
#region Cashdrawer
/// <summary>
/// Cashdrawer 관련 인터페이스
/// </summary>
public interface ICashdrawerUs : IDevice
{
/// <summary>
/// 돈통 개방
/// </summary>
void OpenCashDrawer();
}
#endregion
#region Msr
/// <summary>
/// Msr 제어 관련 인터페이스
/// </summary>
public interface IMsrUs : IDevice
{
/// <summary>
/// 장비의 Event 발생 Enable 상태 설정
/// <para>True:사용가능, False:사용불가능</para>
/// </summary>
bool DeviceEnabled { get; set; }
}
#endregion
#region Scanner
/// <summary>
/// Scanner 제어 관련 인터페이스
/// </summary>
public interface IScannerUs : IDevice
{
/// <summary>
/// 장비의 Event 발생 Enable 상태 설정
/// <para>True:사용가능, False:사용불가능</para>
/// </summary>
bool DeviceEnabled { get; set; }
}
#endregion
#region LineDisplay
/// <summary>
/// LineDisplay
/// </summary>
public interface ILineDisplayUs
{
/// <summary>
/// 유선저울 OPEN 처리 함수
/// </summary>
/// <param name="sSerialPort"></param>
/// <param name="lBaudrate"></param>
/// <returns></returns>
bool OpenDevice(string sSerialPort, long lBaudrate);
/// <summary>
/// 유선저울 CLOSE 처리 함수
/// </summary>
/// <returns></returns>
bool CloseDevice();
/// <summary>
/// LineDisplay에 출력
/// </summary>
/// <param name="sLine1"></param>
/// <param name="sLine2"></param>
/// <param name="sLine3"></param>
/// <returns></returns>
bool DisplayText(int iAmt, string sMsg);
/// <summary>
/// LineDisplay 초기화
/// </summary>
/// <returns></returns>
bool DisplayClear();
}
#endregion
#region PSS
// 수정필요 PSS
//public interface IPosReceipt
//{
// //저장 저장...
// string Execute(string[] aParam);
// string GetData(string[] aParam);
// string ExecutePrint(string[] aParam);
// string MakePosSaleReceipt(string[] aParam);
// bool MakePosClaimReceipt();
// string MakePosEtcReceipt(DataTable pEtcReceipt);
//}
#endregion
#region
/// <summary>
/// 판매 기본
/// </summary>
public interface ISaleBasic
{
}
#endregion
#region
/// <summary>
/// 보류 거래
/// </summary>
public interface IHoldDeal
{
/// <summary>
/// 보류 거래 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <returns></returns>
DataTable SearchHoldDealList(string sSaleDate);
/// <summary>
/// 보류 거래 영수증 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <returns></returns>
DataTable SearchHoldDealPrint(string sSaleDate, string sPosNo, string sTradeNo);
/// <summary>
/// 보류 거래 상태 변경(삭제, 불러오기)
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <param name="sStats"></param>
/// <returns></returns>
int UpdateHoldDeal(string sSaleDate, string sPosNo, string sTradeNo, string sStats, double dQty, double dSaleAmt);
/// <summary>
/// 보류 영수증 출력
/// </summary>
/// <param name="sPrtData"></param>
/// <returns></returns>
bool PrintHoldDeal(string sPrtData);
/// <summary>
/// 보류 매출 불러오기
/// </summary>
/// <param name="drTrItem"></param>
/// <returns></returns>
bool LoadLocalTranPlu(string sSaleDate, string sPosNo, string sTradeNo);
//#15746 해피오더 '쇼킹박스' 관련 POS 시스템 개발 요청 start
//기존
/*
//17.05.18 dkshin 쇼킹박스 추가
/// <summary>
/// 쇼킹박스 거래 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <returns></returns>
DataTable SearchShockingBoxDealList(string sInPutData);
*/
//변경
// sInPutData : sale_dt + reg_no
// sTradeKind : 99 :쇼킹박스, 60 : 랜덤박스
// sTradeStat : 0: 거래상태조회 , 1: 거래상태미조회
DataTable SearchShockingBoxDealList(string sInPutData, string sTradeKind, string sTradeStat);
//#15746 해피오더 '쇼킹박스' 관련 POS 시스템 개발 요청 end
//17.05.18 dkshin 쇼킹박스 추가
/// <summary>
/// 쇼킹박스 거래 상태 변경
/// </summary>
/// <returns></returns>
int UpdateShockingBOX();
//17.05.18 dkshin 쇼킹박스 추가
/// <summary>
/// 쇼킹박스 거래 상태 변경
/// </summary>
/// <returns></returns>
DataTable SearchShockingBoxPayCompleteList(string sSaleDate, string sTradeNo);
//17.05.18 dkshin 쇼킹박스 추가
/// <summary>
/// 쇼킹박스 거래 상태 변경
/// </summary>
/// <returns></returns>
int UpdateShockingBOXPayComplete(string sSaleDate, string sPosNo, string sTradeNo);
}
#endregion
#region
/// <summary>
/// 예약매출
/// </summary>
public interface ISaleReserved
{
/// <summary>
/// 예약 거래 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sTradType"></param>
/// <param name="sCondition"></param>
/// <param name="sOnOffLine"></param>
/// <returns></returns>
DataTable SearchReservedFinshList(string sSaleDate, string sTradType, string sCondition, string sOnOffLine);
/// <summary>
/// 예약 거래 영수증 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <returns></returns>
DataTable SearchReservedFinshPrint(string sSaleDate, string sPosNo, string sTradeNo);
/// <summary>
/// 예약 영수증 출력
/// </summary>
/// <param name="sPrtData"></param>
/// <returns></returns>
bool PrintReservedFinsh(string sPrtData);
/// <summary>
/// 예약 거래 로드(로컬)
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <param name="bRetrun"></param>
/// <returns></returns>
bool LoadLocalTran(string sSaleDate, string sPosNo, string sTradeNo, bool bRetrun);
/// <summary>
/// 예약 거래 로드(서버)
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <param name="bRetrun"></param>
/// <returns></returns>
string SearchServerTran(string sSaleDate, string sPosNo, string sTradeNo, bool bRetrun);
//#Rhee, 20180117 픽업 진행 추가 start
/// <summary>
/// 예약거래 픽업
/// </summary>
/// <param name="sCmpCd"></param>
/// <param name="sStorCd"></param>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <param name="sSendYn"></param>
/// <returns></returns>
string PickupReservedCom(string sCmpCd, string sStorCd, string sSaleDate, string sPosNo, string sTradeNo, string sSendYn);
//#Rhee, 20180117 픽업 진행 추가 end
}
#endregion
#region
/// <summary>
/// 판매 영수증 출력
/// </summary>
public interface ISaleReceipt
{
/// <summary>
/// 영수증 출력
/// </summary>
/// <param name="sPrtData"></param>
/// <returns></returns>
bool PrintSaleReceipt(string sPrtData);
/// <summary>
/// 거래조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="TradeType"></param>
/// <returns></returns>
DataTable SearchSaleReceiptList(string sSaleDate, string sPosNo, string sTradeNo, string sPayTime, string sTradeType);
///// <summary>
///// 매출불러오기
///// </summary>
///// <param name="sSaleDate"></param>
///// <param name="sPosNo"></param>
///// <param name="sTradeNo"></param>
///// <returns></returns>
//string SetTrItem(string sSaleDate, string sPosNo, string sTradeNo);
/// <summary>
/// 거래반품
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <returns></returns>
bool ReturnSaleReceipt(string sSaleDate, string sPosNo, string sTradeNo);
/// <summary>
/// 거래 영수증 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <returns></returns>
DataTable SearchPritSaleReceiptDetail(string sSaleDate, string sPosNo, string sTradeNo);
/// <summary>
/// 프린터 출력
/// </summary>
/// <param name="sPrtData"></param>
/// <returns></returns>
bool PrintReceipt(string sPrtData);
}
#endregion
#region ///
/// <summary>
/// 해피기프트 조회/충전/취소/환불
/// </summary>
public interface IHpGift
{
/// <summary>
/// 해피기프트 거래 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <returns></returns>
DataTable HpGiftSearchList(string sSaleDate, string sTradeType);
/// <summary>
/// 해피기프트 잔액 조회
/// </summary>
/// <param name="sCardNo"></param>
/// <param name="dChargeAmt"></param>
/// <returns></returns>
double HpGiftSearchRemainAmt(string sCardNo);
/// <summary>
/// 해피기프트 충전
/// </summary>
/// <param name="sCardNo"></param>
/// <param name="dChargeAmt"></param>
/// <returns></returns>
bool HpGiftChargeAppy(string sCardNo, double dChargeAmt);
/// <summary>
/// 해피 기프트 취소
/// </summary>
/// <param name="sCardNo"></param>
/// <param name="dRetrunChargeAmt"></param>
/// <returns></returns>
bool HpGiftCancelChargeAppy(string sCardNo, double dRetrunChargeAmt);
/// <summary>
/// 해피 기프트 환불
/// </summary>
/// <param name="sCardNo"></param>
/// <param name="dRetrunChargeAmt"></param>
/// <returns></returns>
bool HpGiftReturnChargeAppy(string sCardNo, double dRetrunChargeAmt);
/// <summary>
/// 영수증 조회 출력
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sRegNo"></param>
/// <returns></returns>
bool HpGiftSearchPrint(string sSaleDate, string sPosNo, string sRegNo);
}
#endregion
#region
/// <summary>
/// 반품 처리
/// </summary>
public interface ISaleRefundUs
{
/// <summary>
/// 영수증 반품 대상 거래 데이터 리스트 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <param name="sPayTime"></param>
/// <param name="sTradeType"></param>
/// <returns></returns>
DataTable SearchSaleReceiptList(string sSaleDate, string sPosNo, string sTradeNo, string sPayTime, string sTradeType);
/// <summary>
/// 거래 영수증 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <returns></returns>
string SearchPrintSaleReceiptDetail(string sSaleDate, string sPosNo, string sTradeNo);
/// <summary>
/// 영수증 반품 대상 로컬 거래 데이터 로딩
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <returns></returns>
bool LoadLocalTran(string sSaleDate, string sPosNo, string sTradeNo);
/// <summary>
/// 영수증 반품 대상 거래 데이터 서버 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <param name="SaleTime"></param>
/// <returns></returns>
string SearchServerTran(string sSaleDate, string sPosNo, string sTradeNo, string SaleTime);
/// <summary>
/// 상품불러오기를 위한 거래 데이터 상품 정보 만 로딩
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <returns></returns>
bool LoadLocalTranPlu(string sSaleDate, string sPosNo, string sTradeNo);
/// <summary>
/// 영수증 반품 가능 여부 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <returns></returns>
bool ChekcRefundTran(string sSaleDate, string sPosNo, string sTradeNo);
//#해피앱 추후적립 start, sskim
/// <summary>
/// 해피앱 추후적립 데이터 서버 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <param name="sVisibleMode"></param>
/// <returns></returns>
string SearchServerHpAppSave(string sSaleDate, string sPosNo, string sTradeNo, bool sVisibleMode);
//#해피앱 추후적립 end, sskim
//2017-06-02 dkshin 해피앱 추후적립
bool SearchTrHpAppAfterSaveYN(string sSaleDate, string sPosNo, string sTradeNo);
//2017-06-02 dkshin 해피앱 추후적립
bool Refund_HPAPP_After_Update_Tran(string sSaleDate, string sPosNo, string sTradeNo);
}
#endregion
#region
/// <summary>
/// 해피포인트 사후적립 처리
/// </summary>
public interface IHpAfterSaveUs
{
/// <summary>
/// 사후적립 대상 거래 데이터 리스트 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <param name="sTradeType"></param>
/// <returns></returns>
DataTable SearchSaleReceiptList(string sSaleDate, string sPosNo, string sTradeNo, string sPayTime, string sTradeType);
/// <summary>
/// 거래 영수증 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <returns></returns>
string SearchPrintSaleReceiptDetail(string sSaleDate, string sPosNo, string sTradeNo);
/// <summary>
/// 사후적립 대상 로컬 거래 데이터 로딩
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <returns></returns>
bool LoadLocalTran(string sSaleDate, string sPosNo, string sTradeNo);
/// <summary>
/// 사후적립 대상 거래 데이터 서버 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <param name="sPayTime"></param>
/// <returns></returns>
string SearchServerTran(string sSaleDate, string sPosNo, string sTradeNo, string sPayTime);
/// <summary>
/// 영수증 추후적립 가능 여부 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <returns></returns>
bool ChekcAfterSaveTran(string sSaleDate, string sPosNo, string sTradeNo);
//2017-06-02 dkshin 해피앱 추후적립
/// <summary>
/// 해피앱 추후적립 상태 변경
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <returns></returns>
bool HPAPP_After_Update_Tran(string sSaleDate, string sPosNo, string sTradeNo);
}
#endregion
#region
/// <summary>
/// 아워홈 관련 인터페이스
/// </summary>
public interface IOurHome
{
/// <summary>
/// 고객정보 조회
/// </summary>
/// <param name="sStoreCD"></param>
/// <param name="sRFNo"></param>
/// <param name="sRFType"></param>
/// <returns></returns>
string Rf_EmpInfo(string sStoreCD, string sRFNo, string sRFType);
/// <summary>
/// 결제
/// </summary>
/// <param name="sStoreCD"></param>
/// <param name="sTranData"></param>
/// <param name="sRfType"></param>
/// <returns></returns>
string Rf_TransData(string sStoreCD, string sTranData, string sRfType);
}
#endregion
#region VAN
/// <summary>
/// VAN 기본모듈 처리 처리
/// </summary>
public interface IVanCommonUs
{
/// <summary>
/// 키 다운로드 요청
/// </summary>
/// <returns></returns>
string KeyDownLoad(string[] aParam);
/// <summary>
/// 룰파일 다운로드 요청
/// </summary>
/// <returns></returns>
string RuleFileDownLoad(string[] aParam);
}
#endregion
#region
/// <summary>
/// 마스터 다운로드 처리
/// </summary>
public interface IMasterDownUs
{
/// <summary>
/// 다운로드 처리
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
string Execute(object[] aParam);
object GetData(string[] aParam);
/// <summary>
/// 긴급 적용 마스터 리스트 조회
/// </summary>
/// <returns></returns>
DataTable SelectEmergencyMasterList();
/// <summary>
/// 긴급 적용 구분자 초기화
/// </summary>
/// <returns></returns>
int UpdateEmergencyMasterList();
/// <summary>
/// 마스터 다운로드 취소Flag
/// </summary>
bool IsAborted { get; set; }
}
#endregion
#region
/// <summary>
/// 해피오더 조회 처리
/// </summary>
public interface IHappyOrderList
{
/// <summary>
/// 주방상품 처리
/// </summary>
/// <param name="sTradeDiv"></param>
/// <param name="alHappyOrderItem"></param>
void KPSItemProc(string sTradeDiv, ArrayList alHappyOrderItem);
/// <summary>
/// 영수증 출력데이터 생성
/// </summary>
/// <param name="sPrtHead"></param>
/// <param name="sPrtFmt"></param>
/// <param name="sData"></param>
void AddPrintData(string sPrtHead, string sPrtFmt, string sData);
/// <summary>
/// 영수증 출력데이터 생성
/// </summary>
/// <param name="sPrtHead"></param>
/// <param name="sPrtFmt"></param>
/// <param name="sData1"></param>
/// <param name="sData2"></param>
void AddPrintData(string sPrtHead, string sPrtFmt, string sData1, string sData2);
/// <summary>
/// 영수증 버퍼 초기화
/// </summary>
void PrintBufClear();
/// <summary>
/// 영수증 버퍼 반환
/// </summary>
/// <returns></returns>
ArrayList GetPrintBufferData();
/// <summary>
/// 해피오더 내역조회 데이터 파싱 처리
/// </summary>
/// <param name="htData"></param>
/// <returns></returns>
Column.TR_HPORD.HPORD_HEADER ParseHappyOrderList(Hashtable htData);
/// <summary>
/// 해피오더 상세내역 조회
/// </summary>
/// <param name="sOrderNum"></param>
/// <param name="sUrl"></param>
/// <param name="cHappyOrderItem"></param>
/// <param name="htOrderLists"></param>
void GetHappyOrderListDetail(string sOrderNum, string sUrl, ref ArrayList cHappyOrderItem, ref Hashtable[] htOrderLists);
/// <summary>
/// 해피오더 오늘 픽업/배달 주문서출력 건 조회
/// </summary>
/// <returns></returns>
DataTable GetTodayHappyOrder();
/// <summary>
/// 해피오더 데이터 삭제
/// </summary>
/// <param name="sOrderNum"></param>
/// <returns></returns>
int DeleteHappyOrderData(string sOrderNum, string sOrderDt);
//17.08.22 dkshin SS 해피오더
/// <summary>
/// 해피오더 데이터 삭제
/// </summary>
/// <param name="sOrderNum"></param>
/// <returns></returns>
int DeleteSSHappyOrderData(string sOrderNum, string sOrderDt);
//17.08.22 dkshin SS 해피오더
/// <summary>
/// 해피오더 데이터 삭제
/// </summary>
/// <param name="sOrderNum"></param>
/// <returns></returns>
int DeleteSSHappyOrderMSG(string sOrderNum);
/// <summary>
/// 해피오더 데이터 조회
/// </summary>
/// <param name="sOrderNum">주문번호</param>
/// <param name="sOrderDt">주문일자</param>
/// <returns></returns>
DataTable GetHappyOrderData(string sOrderNum, string sOrderDt);
/// <summary>
/// 해피오더 데이터 갱신
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
int UpdateHappyOrderData(string[] aParam);
/// <summary>
/// 해피오더 데이터 저장
/// </summary>
/// <param name="header"></param>
/// <returns></returns>
int SaveHappyOrderData(Column.TR_HPORD.HPORD_HEADER header);
string ParseNutritionMsg(Hashtable[] htNutritionMsgs);
/// <summary>
/// 해피오더 전문 처리
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
Hashtable[] SendReceiveForHappyOrder(object[] aParam, ref Hashtable htResponse, ref int iReturn);
/// <summary>
/// 해피오더 Json 데이터 파싱
/// </summary>
/// <param name="sJsonString"></param>
/// <returns></returns>
Hashtable[] ParseJsonString(string sJsonString);
/// <summary>
/// 해피오더 주문서 출력
/// </summary>
/// <returns></returns>
//#16366 해피오더 당월누적주문내역 + 당일 해피오더주문 상세내역 자동 출력기능 start
//기존
//bool PrintOrderSheet();
//변경
bool PrintOrderSheet(string sPrtGubun, bool bHPOAutoPrintYN);
//#16366 해피오더 당월누적주문내역 + 당일 해피오더주문 상세내역 자동 출력기능 end
//#15746 해피오더 '쇼킹박스' 관련 POS 시스템 개발 요청 start
//기존
/*
/// <summary>
/// Tran 생성
/// </summary>
/// <param name="cHeader"></param>
/// <param name="aItem"></param>
/// <returns></returns>
string MakeTranItem(Column.TR_HPORD.HPORD_HEADER cHeader, ArrayList aItem);
*/
//변경
string MakeTranItem(Column.TR_HPORD.HPORD_HEADER cHeader, ArrayList aItem, Hashtable htReadingBarCodeInfo);
//#15746 해피오더 '쇼킹박스' 관련 POS 시스템 개발 요청 end
//#20171215, 해피오더 주문리스트 조회 시 해피오더 테이블 데이터 삭제 후 저장하도록 수정 Start
/// <summary>
/// 해피오더 데이터 전체 삭제
/// </summary>
/// <returns></returns>
int DeleteHappyOrderAllData();
//#20171215, 해피오더 주문리스트 조회 시 해피오더 테이블 데이터 삭제 후 저장하도록 수정 End
//grayber@20180202 [BR]해피오더 고객정보 추가 + 원산지 표기 start - 파라메터 변경
//grayber20180201 해피오더 고객정보 추가 + 원산지 표기 #13780 start
/// <summary>
/// 해피오더 영양정보 리스트 조회
/// </summary>
/// <param name="sOrderNum">주문번호</param>
/// <param name="sUrl">해피오더 URL</param>
/// <param name="cHappyOrderItem">출력영양정보리스트</param>
/// <param name="htOrderNutritionLists">수신영양정보데이터</param>
//void GetHappyOrderNurtitionListDetail(string sOrderNum, string sUrl, ref ArrayList cHappyNurtitionOrderItem, ref Hashtable[] htOrderNutritionLists);
//grayber20180201 해피오더 고객정보 추가 + 원산지 표기 #13780 end
//grayber20180201 해피오더 고객정보 추가 + 원산지 표기 #13780 start
/// <summary>
/// 해피오더 영양정보 리스트 조회
/// </summary>
/// <param name="sOrderNum">주문번호</param>
/// <param name="sUrl">해피오더 URL</param>
/// <param name="sOrderDt">주문일자</param>
void GetHappyOrderNurtitionListDetail(string sOrderNum, string sUrl, string sOrderDt);
//grayber20180201 해피오더 고객정보 추가 + 원산지 표기 #13780 end
//grayber@20180202 [BR]해피오더 고객정보 추가 + 원산지 표기 end
//#15945 해피오더 자동주문 상세기능 start
void HappyOrder_AutomaticShipmentLog(Column.TR_HPORD.HPORD_HEADER HPORD_HEADER, string HPORD_TOBESTATUS, string HPORD_CLOUDRES);
//#15945 해피오더 자동주문 상세기능 end
//#17143 [해피오더]자동 주문 처리 개선 start
//기존
//#15945 해피오더 자동주문 상세기능 start
/// <summary>
/// 해피오더 자동출하 제품 여부 체크
/// HappyOrderItem: 주문상세
/// HappyOrderStatus: 주문상태
/// DivYN: true - 자동출하 주문 건, false - 일반 주문 건
/// </summary>
//bool HappyOrder_AutomaticShipmentItemCheck(ArrayList HappyOrderItem, string HappyOrderStatus, out bool DivYN);
//#15945 해피오더 자동주문 상세기능 end
//변경
bool HappyOrder_AutomaticShipmentItemCheck(ArrayList HappyOrderItem, string HappyOrderStatus, string OrderData, string PickupData, out bool AutomaticShipment);
//#17143 [해피오더]자동 주문 처리 개선 end
//#16366 해피오더 당월누적주문내역 + 당일 해피오더주문 상세내역 자동 출력기능 start
// 당월누계건
bool HappyOrderToMonthPrint(bool bHPOAutoPrintYN);
// 당일픽업건
bool HappyOrderTodayPrint(bool bHPOAutoPrintYN);
//#16366 해피오더 당월누적주문내역 + 당일 해피오더주문 상세내역 자동 출력기능 end
}
#endregion
#region
/// <summary>
/// 점착정보 조회 처리
/// </summary>
public interface IStorArrvList
{
/// <summary>
/// 점착정보
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
string SendReceiveForStorArrInfo(object[] aParam, ref DataTable htResponse, ref int iReturn);
/// <summary>
/// 점착정보 배송URL
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
object GetData(string[] aParam);
}
#endregion
#region
/// <summary>
/// 당일 거래 서버 조회
/// </summary>
public interface ISvr2Tran
{
/// <summary>
/// 최종 거래번호, 등록번호 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sLastTradeNo"></param>
/// <param name="sLastRegNo"></param>
/// <returns></returns>
string SearchLastTranNo(string sSaleDate, string sPosNo, ref string sLastTradeNo, ref string sLastRegNo);
/// <summary>
/// 결락 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTranDiv"></param>
/// <param name="sLastTradeNo"></param>
/// <param name="sMissTranNo"></param>
/// <returns></returns>
string SearchMissTran(string sSaleDate, string sPosNo, string sTranDiv, string sLastTradeNo, ref string sMissTranNo);
/// <summary>
/// 결락 거래번호 재전송 설정
/// </summary>
/// <param name="sTranDiv"></param>
/// <param name="sCmpCD"></param>
/// <param name="sStorCD"></param>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <returns></returns>
string SetMissTran(string sTranDiv, string sCmpCD, string sStorCD, string sSaleDate, string sPosNo, string sTradeNo);
/// <summary>
/// 영수증 반품 대상 거래 데이터 서버 조회
/// </summary>
/// <param name="sSaleDate"></param>
/// <param name="sPosNo"></param>
/// <param name="sTradeNo"></param>
/// <param name="SaleTime"></param>
/// <returns></returns>
string SearchServerTran(string sSaleDate, string sPosNo, string sTradeNo, string SaleTime);
/// <summary>
/// 서버 시간 조회
/// </summary>
/// <returns></returns>
string ServerSysDateTime();
/// <summary>
/// 프로그램 업데이트 목록 조회
/// </summary>
/// <param name="sKind"></param>
/// <param name="sDownDiv"></param>
/// <param name="aRecvData"></param>
/// <param name="htRecvData"></param>
/// <returns></returns>
string PGMUpdate(string sKind, string sDownDiv, ref string[] aRecvData, ref Hashtable htRecvData);
/// <summary>
/// 파일 변경 완료 요청
/// </summary>
/// <param name="sKind"></param>
/// <param name="sAppType"></param>
/// <param name="sFileName"></param>
/// <param name="sFileSeq"></param>
/// <param name="sFileVer"></param>
/// <param name="sDownDiv"></param>
/// <param name="sDeployDate"></param>
/// <param name="sDeployDT"></param>
/// <returns></returns>
string PGMUpdate_Complete(string sKind, string sAppType, string sFileName, string sFileSeq, string sFileVer, string sDownDiv, string sDeployDate, string sDeployDT);
/// <summary>
/// 프로그램 이력 관리
/// </summary>
/// <param name="sKind"></param>
/// <param name="sFileSeq"></param>
/// <param name="sFileVer"></param>
/// <param name="sFileNm"></param>
/// <param name="sApplyDate"></param>
/// <param name="sApplyTime"></param>
/// <param name="sApplyType"></param>
/// <param name="sDeployDate"></param>
/// <param name="sDeployTime"></param>
/// <param name="sFTP_IP"></param>
/// <param name="sFTP_Port"></param>
/// <param name="sFTP_ID"></param>
/// <param name="sFTP_Pwd"></param>
/// <param name="sFTP_FILEPATH"></param>
/// <param name="sDOWN_DIV"></param>
/// <param name="sDeployDT"></param>
/// <param name="sUseYn"></param>
/// <returns></returns>
string PGMUpdate_History_Isert(string sKind, string sFileSeq, string sFileVer, string sFileNm, string sApplyDate, string sApplyTime, string sApplyType, string sDeployDate, string sDeployTime, string sFTP_IP, string sFTP_Port, string sFTP_ID, string sFTP_Pwd, string sFTP_FILEPATH, string sDOWN_DIV, string sDeployDT, string sUseYn);
//#20180418 고객 구매이력 정보 표시 및 해피쿠폰 발송 start
/// <summary>
/// 고객 구매이력 정보
/// </summary>
/// <param name="sHppMembNo"></param>
/// <param name="sGetData"></param>
/// <returns></returns>
//#20180524 구매이력조회 단골여부 전문추가 start,phj
//기존
//string ServerBuyHist(string sHppMembNo, ref string sGetData);
//변경
//#20180418 고객 구매이력 정보 표시 및 해피쿠폰 발송 start, 20180528
//쿠폰 발송 횟수 제한 기능
//기존
//string ServerBuyHist(string sHppMembNo, string sRegularYN, ref string sGetData);
//변경
string ServerBuyHist(string sHppMembNo, string sRegularYN, string sCpnSendCnt, ref string sGetData);
//#20180418 고객 구매이력 정보 표시 및 해피쿠폰 발송 end, 20180528
//#20180524 구매이력조회 단골여부 전문추가 end,phj
//#20180418 고객 구매이력 정보 표시 및 해피쿠폰 발송 end
//#20180605 해피오더 개선 start
//즉시주문, 예약주문 알림
/// <summary>
/// 해피오더 당일 픽업 건수 조회
/// </summary>
/// <returns></returns>
int HappyOrderCntChk(string sSaleDate = "");
//#20180605 해피오더 개선 end
}
#endregion
#region /
/// <summary>
/// 마감/중간마감
/// </summary>
public interface IAccADMT
{
/// <summary>
/// 서비스 실행
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
string Execute(string[] aParam);
///// <summary>
///// 데이터 획득
///// </summary>
///// <param name="aParam"></param>
///// <returns></returns>
//DataTable GetData(string[] aParam);
/// <summary>
/// 저장
/// </summary>
/// <param name="aParam"></param>
/// <param name="oParam"></param>
/// <returns></returns>
string SetData(string[] aParam, object oParam, string sSimplePrint);
/// <summary>
/// 정산 출력 데이터 조회
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
DataTable GetData_ADMTPrint(string[] aParam);
/// <summary>
/// 상품별/분류별 판매 이력 조회
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
DataTable SelectiTemClass(string[] aParam);
/// <summary>
/// 입금취소
/// </summary>
/// <param name="aParam"></param>
/// <param name="oParam"></param>
/// <returns></returns>
string SetRefund(string[] aParam, object oParam);
/// <summary>
/// 정산취소
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
string RefundADMTData(string[] aParam);
/// <summary>
/// 중간/마감입금 조회
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
DataTable GetData_PayList(string[] aParam);
/// <summary>
/// 중간/마감입금 점검지 조회
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
DataTable GetData_PayCheckList(string[] aParam);
/// <summary>
/// 중간정산 횟수 조회
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
DataTable GetADMTCount(string[] aParam);
/// <summary>
/// 과부족 조회
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
DataTable GetOverAmtSelect(string[] aParam);
/// <summary>
/// 업무마감 최종 거래번호 조회
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
DataTable GetMax_ADMT_TradeNo(string[] aParam);
}
#endregion
#region ICalDataIF
/// <summary>
/// ICalDataIF
/// </summary>
public interface ICalDataIF
{
string Execute(string[] aParam);
}
#endregion
#region
/// <summary>
/// 기타 입출금 인터페이스
/// </summary>
public interface IAccEtc
{
/// <summary>
/// 데이터 획득
/// </summary>
object GetData(string[] aParam);
/// <summary>
/// 데이터 설정
/// </summary>
string SetData(object oParam);
/// <summary>
/// 기타 입출금 내역 출력
/// </summary>
string AccEtcListPrt(object oParam, string sFromDate, string sToDate);
}
#endregion
#region
/// <summary>
/// 준비금 인터페이스
/// </summary>
public interface IAccRemoney
{
/// <summary>
/// 데이터 획득
/// </summary>
object GetData(string[] aParam);
/// <summary>
/// 데이터 설정
/// </summary>
string SetData(object oParam);
/// <summary>
/// 기타 입출금 내역 출력
/// </summary>
string AccRemoneyListPrt(object oParam, string sFromDate);
}
#endregion
#region
/// <summary>
/// 자료 조회
/// </summary>
public interface IDataSearch
{
/// <summary>
/// 조회 대상 그룹 조회
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
DataTable SelectGroupList(string[] aParam);
/// <summary>
/// Host 조회 실행
/// </summary>
/// <param name="sIRTType"></param>
/// <param name="sPosNo"></param>
/// <param name="sStartDate"></param>
/// <param name="sEndDate"></param>
/// <param name="sChasu"></param>
/// <param name="siTemGroup"></param>
/// <param name="aRet"></param>
/// <returns></returns>
string ExecuteHostIrt(string sIRTType, string sPosNo, string sStartDate, string sEndDate, string sChasu, string siTemGroup, ref string[] aRet);
/// <summary>
/// 영수증 프린터 출력
/// </summary>
/// <param name="alPrintData"></param>
/// <returns></returns>
bool PosDataPrint(ArrayList alPrintData);
/// <summary>
/// POS번호 조회
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
DataTable SelectPosNo(string[] aParam);
/// <summary>
/// 조회일 판매이력이 있는 담당자 조회
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
DataTable SelectTranCashier(string[] aParam);
/// <summary>
/// 담당자별 상품 판매 이력 조회
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
DataTable SelectCashier_iTem(string[] aParam);
/// <summary>
/// 점검지 생성
/// </summary>
/// <param name="sSaleDate"></param>
/// <returns></returns>
string MakeAccADMTCheck(string sSaleDate, ref DataTable dtReturn, string sSimplePrint);
///// <summary>
///// 정산 점검지 조회
///// </summary>
///// <param name="aParam"></param>
///// <returns></returns>
//DataTable SelectAccADMTCheck(string[] aParam);
/// <summary>
/// 영업공지사항 조회
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
DataTable SelectBusiNotice(string[] aParam);
// Rhee, 2017.10.18 00077점포 매출 Text파일 다운로드 기능(매30분) Start
/// <summary>
/// 00077점포 매출 Text파일 다운로드
/// </summary>
DataTable SelectPayAmtFilePut(string sStoreCd, string sDate);
// Rhee, 2017.10.18 00077점포 매출 Text파일 다운로드 기능(매30분) End
}
#endregion
#region
/// <summary>
/// 무결성 관리
/// </summary>
public interface IIntegrity
{
/// <summary>
/// 무결성 로그 조회
/// </summary>
/// <param name="aParam"></param>
/// <returns></returns>
DataTable SelectIntegrityLog(string[] aParam);
}
#endregion
#region
/// <summary>
/// 주변장치 업데이트
/// </summary>
public interface IDeviceUpdate
{
/// <summary>
/// 서명패드 업데이트 파일 다운로드 FTP 정보 조회
/// </summary>
/// <returns></returns>
string FtpInfoIRT(string sTargetFileNm, string sTargetLocalDate, ref Hashtable m_hFTPRecvData);
/// <summary>
/// 서명패드 업데이트 건수
/// POS의 법인별_서명패드 모델에 대한 건수만 체크한다.
/// </summary>
/// <returns></returns>
int SignPadUpdateCnt(ref string sImgFileNm, ref string sAviFileNm, ref string sFirmFileNm);
/// <summary>
/// 서명패드 모델 체크 및 INI 파일 변경
/// </summary>
/// <returns></returns>
string SignPadModelCheck();
/// <summary>
/// 서명패드 업데이트 상세 파일 명
/// </summary>
/// <returns></returns>
string SignPadUpdateFilesNm();
/// <summary>
/// 서명패드 업데이트 압축파일
/// </summary>
/// <param name="sZipFiles"></param>
/// <returns></returns>
string SignPadModelFileGrp(ref string sZipFiles);
/// <summary>
/// 서명패드 업데이트 서버 확인
/// </summary>
/// <param name="dtFtpDataTable"></param>
/// <returns></returns>
string SignPadUpdateServerCheck(ref DataTable dtFtpDataTable);
}
//#20171016 IC리더기 펌웨어 업데이트 Start, srlee
/// <summary>
/// IC리더기 업데이트_NEW
/// </summary>
public interface IICReaderUpdate
{
/// <summary>
/// IC리더기 펌웨어 업데이트 건수
/// </summary>
/// <param name="sFilePath"></param>
/// <param name="sFirmFileNm"></param>
/// <returns></returns>
int ICReaderUpdateCnt(string sFilePath, ref string sFirmFileNm);
/// <summary>
/// IC리더기 모델 체크
/// </summary>
/// <returns></returns>
bool ICReaderModelCheck();
/// <summary>
/// IC리더기 펌웨어 업데이트 건수
/// </summary>
/// <param name="nErrCode"></param>
/// <returns></returns>
string ICReaderResultCode(int nErrCode);
}
//#20171016 IC리더기 펌웨어 업데이트 End, srlee
#endregion
#region
/// <summary>
/// 점포점검 확인
/// </summary>
public interface IStoreCheck
{
/// <summary>
/// 점포점검 스케줄 확인
/// </summary>
/// <returns></returns>
DataTable StoreCheckSchedule(string sPosStatus, string sType);
/// <summary>
/// 체크항목
/// </summary>
/// <param name="sINSPCT_ENTRY"></param>
/// <returns></returns>
DataTable StoreNoticeDTL(string sInspctEntryGrpCd);
/// <summary>
/// 점포점검 저장
/// </summary>
/// <param name="sInsertUpdate">저장/업데이트 구분</param>
/// <param name="dtData1">점검 항목 점포</param>
/// <param name="dtData2">점검 항목 상세</param>
/// <returns></returns>
string StoreCheckSave(string sInsertUpdate, DataTable dtData1, DataTable dtData2);
/// <summary>
/// 점포점검 등록 여부 IRT
/// </summary>
/// <returns></returns>
string StoreCheckSaveIrt(string InspctEntryGrpCd, string sCheckDate);
/// <summary>
/// 점포점검 등록 여부 Local
/// </summary>
/// <param name="sSaleDate">영업일자</param>
/// <param name="sStoreCheckCd">점검 항목 그룹 코드</param>
/// <returns></returns>
bool StoreSaveCheckLoacl(string sSaleDate, string sStoreCheckCd);
}
#endregion
#region
/// <summary>
/// 해피버즈
/// </summary>
public interface IHappyBuzz
{
/// <summary>
/// 해피버즈 등록
/// </summary>
/// <param name="aParam"></param>
/// <param name="aOutParam"></param>
/// <returns></returns>
int SetHappyBuzz(string[] aParam, ref string[] aOutParam);
/// <summary>
/// 해피버즈 취소
/// </summary>
/// <param name="aParam"></param>
/// <param name="aOutParam"></param>
/// <returns></returns>
int CanHappyBuzz(string[] aParam, ref string[] aOutParam);
}
#endregion
#region
/// <summary>
/// 점포장비점검 확인
/// </summary>
public interface IStoreEquipCheck
{
/// <summary>
/// 일일점검리스트 일자별 상태 조회
/// </summary>
/// <returns></returns>
string SearchStoreEquipCheckList(string sSearchFlag, string sDateFrom, string sDateTo);
/// <summary>
/// 일일점검리스트 점포 점검 항목
/// </summary>
/// <returns></returns>
DataTable SearchStoreEquipCheckInfo();
/// <summary>
/// 점포점검 저장 (Insert/Update)
/// </summary>
/// <param name="sInsertUpdate">저장/업데이트 구분</param>
/// <param name="dtData1">점검 항목 점포</param>
/// <param name="dtData2">점검 항목 상세</param>
/// <returns></returns>
string StoreCheckSave(DataTable dtData1, DataTable dtData2);
}
#endregion
#region OCB
/// <summary>
/// OCB 직통신
/// </summary>
public interface IOCBDirect
{
/// <summary>
/// OCB 직통신
/// </summary>
/// <param name="sTradeDiv"></param>
/// <param name="sPayWayCD"></param>
/// <param name="sPayWayDtlCD"></param>
/// <param name="sTranType"></param>
/// <param name="sCardNo"></param>
/// <param name="sCardPwd"></param>
/// <param name="sPayAmt"></param>
/// <param name="sApprDt"></param>
/// <param name="sApprNo"></param>
/// <param name="sUniqueID"></param>
/// <param name="sResMsg"></param>
/// <param name="aIrtRspDTL"></param>
/// <returns></returns>
string OCB_Direct_Point(string sTradeDiv, string sPayWayCD, string sPayWayDtlCD, string sTranType, string sCardNo, string sCardPwd, string sPayAmt, string sApprDt, string sApprNo, string sUniqueID, ref string sResMsg, ref string[] aIrtRspDTL);
}
#endregion
// #20170616, 해피앱 스탬프 Start
#region
/// <summary>
/// 해피앱 스탬프
/// </summary>
public interface IHappyAppStamp
{
/// <summary>
/// 해피앱 스탬프 등록/취소
/// </summary>
/// <returns></returns>
void SetHappyAppStamp();
/// <summary>
/// 해피앱 스탬프 가능 여부 확인
/// </summary>
/// <returns></returns>
string CheckHappyAppStamp();
}
#endregion
// #20170616, 해피앱 스탬프 End
//#20171227 인천공항 포스연동 start, phj
#region
/// <summary>
/// 인천공항 포스연동 인터페이스
/// </summary>
public interface IAirPortTran
{
/// <summary>
/// ** 결제마감
/// </summary>
string IncheonAireportClose(string sMenuKey, string sCloseGb);
/// <summary>
/// ** 반품하기
/// </summary>
int i_return_Data(string pSaleDate, string pOld_bill, string pNew_BillNo, string pSaleTY, string pResultTY);
/// <summary>
/// 인천공항 폼에서 요청
/// </summary>
string PayRequestClick();
/// <summary>
/// 인천공항 폼에서 조회
/// </summary>
string PaySearchClick();
/// <summary>
/// 인천공항 폼에서 닫기
/// </summary>
string CloseClick();
//#20180123 인천공항 포스 경우 대기번호 입력창 닫을 때 인천공항 상태 체크하도록 수정 start,phj
//대기번호 입력화면에서 인천공항 상태체크
string IncheonAirportCheck();
//#20180123 인천공항 포스 경우 대기번호 입력창 닫을 때 인천공항 상태 체크하도록 수정 end,phj
}
#endregion
//#20171227 인천공항 포스연동 end, phj
//#20180406 로컬, 서버에 저널데이터 없는 경우 재생성 start
#region
/// <summary>
/// 저널데이터 재생성
/// </summary>
public interface IPosReceipt
{
/// <summary>
/// 판매 영수증 데이터 생성
/// </summary>
/// <returns></returns>
string MakePosSaleReceipt(string[] aParam);
/// <summary>
/// 저널데이타 저장
/// </summary>
/// <returns></returns>
string SaveJnlExecute(string[] aParam);
}
#endregion
//#20180406 로컬, 서버에 저널데이터 없는 경우 재생성 end
//#20180413 웰컴카드 신규기능 추가 start,phj
#region /
/// <summary>
/// 웰컴카드 발급/할인 함수 모음
/// </summary>
public interface IWelcomeCard
{
/// <summary>
/// 해피앱 고객등록 체크
/// </summary>
bool ClientRegisterCheck(string sType, string[] sParam, ref string sHP_CustNumer, ref string sHP_WelcomeCard);
/// <summary>
/// 프리픽스 체크
/// </summary>
string WelcomeCard_PrefixCheck(string pCardNo);
/// <summary>
/// 웰컴카드 할인
/// </summary>
string SetWccDCPayment(string[] sParam, ref string[] sRevParam);
/// <summary>
/// 웰컴카드 전송조립
/// </summary>
string WelcomeCard_SendDataMake(string sTradeDiv, string[] sParam, ref string[] sRevParam);
}
#endregion
//#20180413 웰컴카드 신규기능 추가 end,phj
public interface IPaymentBase
{
}
}