1099 lines
66 KiB
C#
1099 lines
66 KiB
C#
|
using System;
|
|||
|
using System.Collections;
|
|||
|
using System.Data;
|
|||
|
using System.Windows.Forms;
|
|||
|
|
|||
|
using Cosmos.BaseFrame;
|
|||
|
using Cosmos.UserFrame;
|
|||
|
using Cosmos.Common;
|
|||
|
using Cosmos.CommonManager;
|
|||
|
|
|||
|
/*-----------------------------------------------------------------------------------------------*/
|
|||
|
// 설 명 : 영수증 출력 처리(영업개시,영업종료,로그온,로그오프...)
|
|||
|
// 작 성 자 :
|
|||
|
// 변경 이력 :
|
|||
|
/*-----------------------------------------------------------------------------------------------*/
|
|||
|
namespace Cosmos.Service
|
|||
|
{
|
|||
|
class PosReceiptOpenClose : PosReceiptBase, IServiceUs
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// 거래영수증 출력 처리
|
|||
|
/// </summary>
|
|||
|
/// <param name="aParam"></param>
|
|||
|
/// <returns></returns>
|
|||
|
public string Execute(string[] aParam)
|
|||
|
{
|
|||
|
return UserCom.RST_ERR;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 데이터 획득
|
|||
|
/// </summary>
|
|||
|
/// <param name="aParam"></param>
|
|||
|
/// <returns></returns>
|
|||
|
public string GetData(string[] aParam)
|
|||
|
{
|
|||
|
return "";
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 영수증 출력
|
|||
|
/// </summary>
|
|||
|
public string ExecutePrint(string[] aParam)
|
|||
|
{
|
|||
|
string sRet = UserCom.RST_ERR;
|
|||
|
|
|||
|
try
|
|||
|
{
|
|||
|
switch (m_cTrnStatus.Head.TradeKind)
|
|||
|
{
|
|||
|
case ItemConst.TRAN_KIND.LOG.LOGIN:
|
|||
|
return UserCom.RST_OK;
|
|||
|
case ItemConst.TRAN_KIND.STATEMENT.CLOSING_MONEY:
|
|||
|
return UserCom.RST_OK;
|
|||
|
case ItemConst.TRAN_KIND.STATEMENT.MIDDLE_ADJUSTMENT:
|
|||
|
case ItemConst.TRAN_KIND.STATEMENT.ADJUSTMENT:
|
|||
|
// 정산지
|
|||
|
sRet = AccADMTReceipt(m_cTrnStatus.Head.TradeKind, aParam [1]);
|
|||
|
break;
|
|||
|
//case ItemConst.TRAN_KIND.STATEMENT.RESERVE_FUND:
|
|||
|
// return UserCom.RST_OK;
|
|||
|
}
|
|||
|
|
|||
|
if (m_cTrnStatus.Head.TradeKind == ItemConst.TRAN_KIND.STATEMENT.MIDDLE_ADJUSTMENT || m_cTrnStatus.Head.TradeKind == ItemConst.TRAN_KIND.STATEMENT.ADJUSTMENT)
|
|||
|
{
|
|||
|
// 정산지 출력여부 확인
|
|||
|
if (PosMstManager.GetPosOption(POS_OPTION.OPT421) == "1")
|
|||
|
{
|
|||
|
if (WinManager.QuestionMessage(MessageManager.GetErrorMessage(POS_MESSAGE.ERROR.MSG_0464)) != true)
|
|||
|
{
|
|||
|
return sRet; ;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// 영수증 출력 처리
|
|||
|
if (PrintExecute(true, true, false) == true) sRet = UserCom.RST_OK;
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|||
|
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
|||
|
}
|
|||
|
return sRet;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 영업 개시/종료, 로그ON/OFF, 입출금 출력데이터 생성
|
|||
|
/// </summary>
|
|||
|
public string MakeOpenClose(string[] aParam)
|
|||
|
{
|
|||
|
string sRet = UserCom.RST_ERR;
|
|||
|
|
|||
|
try
|
|||
|
{
|
|||
|
PrintBufClear(); // 영수증 출력버퍼 초기화
|
|||
|
|
|||
|
|
|||
|
switch (m_cTrnStatus.Head.TradeKind)
|
|||
|
{
|
|||
|
case ItemConst.TRAN_KIND.LOG.LOGIN:
|
|||
|
// 로그온
|
|||
|
sRet = CashierLogOn();
|
|||
|
break;
|
|||
|
case ItemConst.TRAN_KIND.STATEMENT.CLOSING_MONEY:
|
|||
|
case ItemConst.TRAN_KIND.STATEMENT.MIDDLE_ADJUSTMENT:
|
|||
|
case ItemConst.TRAN_KIND.STATEMENT.ADJUSTMENT:
|
|||
|
// 정산지
|
|||
|
//sRet = AccADMTReceipt(m_cTrnStatus.Head.TradeKind);
|
|||
|
sRet = UserCom.RST_OK;
|
|||
|
break;
|
|||
|
case ItemConst.TRAN_KIND.STATEMENT.RESERVE_FUND:
|
|||
|
// 준비금
|
|||
|
sRet = AccRemoneyReceipt(m_cTrnStatus.Head.TradeKind);
|
|||
|
break;
|
|||
|
case ItemConst.TRAN_KIND.STATEMENT.ETC_STATEMENT:
|
|||
|
// 기타입출금
|
|||
|
sRet = AccEtcReceipt(aParam[0], aParam[1]);
|
|||
|
break;
|
|||
|
}
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|||
|
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
|||
|
}
|
|||
|
return sRet;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 로그온 영수증 데이터 생성
|
|||
|
/// </summary>
|
|||
|
private string CashierLogOn()
|
|||
|
{
|
|||
|
string sRet = UserCom.RST_ERR;
|
|||
|
|
|||
|
try
|
|||
|
{
|
|||
|
int nSign = m_cTrnStatus.Head.TradeDiv == ItemConst.TRAN_DIV.REFUND ? -1 : 1;
|
|||
|
SetTopPosPrintData(PosConst.PRT_ITEM.REC, true, true, false, true); // 영수증 상단영역 출력
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_JNL, "LOG IN : " + m_cTrnStatus.Head.CashierId);
|
|||
|
SetBtmPosPrintData(PosConst.PRT_ITEM.REC, false,false, true, false, false); // 영수증 하단영역 출력
|
|||
|
sRet = UserCom.RST_OK;
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|||
|
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
|||
|
}
|
|||
|
return sRet;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 준비금 입금 영수증 데이터 생성
|
|||
|
/// </summary>
|
|||
|
private string AccRemoneyReceipt(string sTradeKind)
|
|||
|
{
|
|||
|
string sRet = UserCom.RST_ERR;
|
|||
|
double nSumAmount = 0;
|
|||
|
string sTitleName = "";
|
|||
|
string sCancelMsg = "";
|
|||
|
|
|||
|
try
|
|||
|
{
|
|||
|
int nSign = m_cTrnStatus.Head.TradeDiv == ItemConst.TRAN_DIV.REFUND ? -1 : 1;
|
|||
|
|
|||
|
sCancelMsg = "";
|
|||
|
if (m_cTrnStatus.Head.TradeDiv == ItemConst.TRAN_DIV.REFUND)
|
|||
|
{
|
|||
|
sCancelMsg = "-" + MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0010);
|
|||
|
}
|
|||
|
|
|||
|
if (sTradeKind == ItemConst.TRAN_KIND.STATEMENT.RESERVE_FUND)
|
|||
|
sTitleName = "[ " + MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0085) + " ]";
|
|||
|
else if (sTradeKind == ItemConst.TRAN_KIND.STATEMENT.MIDDLE_ADJUSTMENT)
|
|||
|
sTitleName = "[ " + MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0088) + " ]";
|
|||
|
else if (sTradeKind == ItemConst.TRAN_KIND.STATEMENT.CLOSING_MONEY)
|
|||
|
sTitleName = "[ " + MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0503) + " ]";
|
|||
|
else if (sTradeKind == ItemConst.TRAN_KIND.STATEMENT.ADJUSTMENT)
|
|||
|
sTitleName = "[ " + MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0503) + " ]" + sCancelMsg;
|
|||
|
|
|||
|
SetTopPosPrintData(PosConst.PRT_ITEM.REC, true, true, false, true, sTitleName); // 영수증 상단영역 출력
|
|||
|
|
|||
|
string sTitle1 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0500);
|
|||
|
string sTitle2 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0017);
|
|||
|
string sTitle3 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0019);
|
|||
|
string sTitle4 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0501);
|
|||
|
|
|||
|
// 준비금 입금 내역
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F300, sTitle1, sTitle2, sTitle3);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
ArrayList aSaleDpstWthdr = (ArrayList)StateObject.GetItemObject(Column.SALE_DPST_WTHDR.ITEM);
|
|||
|
for (int iRow = 0; iRow < aSaleDpstWthdr.Count; iRow++)
|
|||
|
{
|
|||
|
Column.SALE_DPST_WTHDR.DATA cDpstWthdr = (Column.SALE_DPST_WTHDR.DATA)aSaleDpstWthdr[iRow];
|
|||
|
if (PosMstManager.GetPosOption(POS_OPTION.OPT012) != "0")
|
|||
|
{
|
|||
|
if (cDpstWthdr.DPST_WTHDR_CD == "ZZ") continue;
|
|||
|
}
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F300, cDpstWthdr.DPST_WTHDR_NM, m_cPosStatus.Global.NumericToQuantity(cDpstWthdr.DPST_WTHDR_QTY * nSign),
|
|||
|
m_cPosStatus.Global.NumericTOCurrency(cDpstWthdr.DPST_WTHDR_AMT * nSign));
|
|||
|
|
|||
|
if (CmUtil.DoubleParse(cDpstWthdr.DPST_WTHDR_CD.ToString()) < 30) nSumAmount += (cDpstWthdr.DPST_WTHDR_AMT * nSign); // 합계 (외화 제외)
|
|||
|
|
|||
|
//// 준비금 합계 출력 전 한줄을 띄워주기 위한 if 문
|
|||
|
//if (iRow == aSaleDpstWthdr.Count - 2 && sTradeKind == ItemConst.TRAN_KIND.STATEMENT.RESERVE_FUND)
|
|||
|
//{
|
|||
|
// AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, " ");
|
|||
|
//}
|
|||
|
}
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, " ");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F300, sTitle4, "", m_cPosStatus.Global.NumericTOCurrency(nSumAmount));
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
|
|||
|
SetBtmPosPrintData(PosConst.PRT_ITEM.REC, false, false, true, false, false); // 영수증 하단영역 출력
|
|||
|
|
|||
|
SetEndPosPrintData(PosConst.PRT_ITEM.REC); // 영수증 출력 완료
|
|||
|
|
|||
|
sRet = UserCom.RST_OK;
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|||
|
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
|||
|
}
|
|||
|
return sRet;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 간이영수증 데이터 생성
|
|||
|
/// </summary>
|
|||
|
public string MakePosEtcReceipt(DataTable pEtcReceipt)
|
|||
|
{
|
|||
|
string sRet = UserCom.RST_ERR;
|
|||
|
|
|||
|
try
|
|||
|
{
|
|||
|
PrintBufClear(); // 영수증 출력버퍼 초기화
|
|||
|
|
|||
|
// POS 영수증 출력
|
|||
|
SetTopPosPrintData(PosConst.PRT_ITEM.REC, true, true, false, true); // 영수증 상단영역 출력
|
|||
|
SetPosSaleEtcRecepit(PosConst.PRT_ITEM.REC, pEtcReceipt); // 간이영수증 입력/합계 영역 출력
|
|||
|
SetBtmPosPrintData(PosConst.PRT_ITEM.REC, true, false, false, false, false, 0); // 영수증 하단영역 출력
|
|||
|
SetEndPosPrintData(PosConst.PRT_ITEM.REC);
|
|||
|
|
|||
|
sRet = UserCom.RST_OK;
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|||
|
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
|||
|
}
|
|||
|
return sRet;
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 간이영수증 입력 영역 출력
|
|||
|
/// </summary>
|
|||
|
/// <param name="sPrtID"></param>
|
|||
|
/// <returns></returns>
|
|||
|
private bool SetPosSaleEtcRecepit(string sPrtID, DataTable pEtcReceipt)
|
|||
|
{
|
|||
|
try
|
|||
|
{
|
|||
|
string sTitle1 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0500);
|
|||
|
string sTitle2 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0019);
|
|||
|
|
|||
|
AddPrintData(sPrtID, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
AddPrintData(sPrtID, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F200, sTitle1, sTitle2);
|
|||
|
AddPrintData(sPrtID, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
// 상품 출력
|
|||
|
if (pEtcReceipt != null)
|
|||
|
{
|
|||
|
//int i = 1;
|
|||
|
foreach (DataRow dr in pEtcReceipt.Rows)
|
|||
|
{
|
|||
|
AddPrintData(sPrtID, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F200, dr["PLU"].ToString(), m_cPosStatus.Global.NumericTOCurrency(CmUtil.DoubleParse(dr["AMOUNT"].ToString())));
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
AddPrintData(sPrtID, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
// 합계/결제 부분
|
|||
|
// 총매출액
|
|||
|
AddPrintData(sPrtID, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F201,
|
|||
|
MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0007), m_cPosStatus.Global.NumericTOCurrency(m_cTrnStatus.Head.NetSaleAmt));
|
|||
|
|
|||
|
// 세금항목(면세,과세,부가세)
|
|||
|
AddPrintData(sPrtID, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F201,
|
|||
|
MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0006), m_cPosStatus.Global.NumericTOCurrency(m_cTrnStatus.Head.TotVatAmt));
|
|||
|
AddPrintData(sPrtID, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "=");
|
|||
|
|
|||
|
// 영수금액(총매출,상품할인,순매출)
|
|||
|
AddPrintData(sPrtID, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F201,
|
|||
|
MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0018), m_cPosStatus.Global.NumericTOCurrency(m_cTrnStatus.Head.TotSaleAmt));
|
|||
|
AddPrintData(sPrtID, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "=");
|
|||
|
|
|||
|
return true;
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|||
|
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
|||
|
}
|
|||
|
return false;
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 고객 불편 사항 출력
|
|||
|
/// </summary>
|
|||
|
/// <returns></returns>
|
|||
|
public string MakePosClaimReceipt()
|
|||
|
{
|
|||
|
string sRet = UserCom.RST_ERR;
|
|||
|
|
|||
|
try
|
|||
|
{
|
|||
|
PrintBufClear(); // 영수증 출력버퍼 초기화
|
|||
|
|
|||
|
// POS 영수증 출력
|
|||
|
SetTopPosPrintData(PosConst.PRT_ITEM.REC, true, true, false, true); // 영수증 상단영역 출력
|
|||
|
SetPosClaimReceipt();
|
|||
|
SetBtmPosPrintData(PosConst.PRT_ITEM.REC, false, false, true, false, false); // 영수증 하단영역 출력
|
|||
|
SetEndPosPrintData(PosConst.PRT_ITEM.REC);
|
|||
|
sRet = UserCom.RST_OK;
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|||
|
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
|||
|
}
|
|||
|
return sRet;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 고객 불편 사항 입력 부분
|
|||
|
/// </summary>
|
|||
|
/// <returns></returns>
|
|||
|
private bool SetPosClaimReceipt()
|
|||
|
{
|
|||
|
try
|
|||
|
{
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F103, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0019));
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
ArrayList aClaimInfo = (ArrayList)StateObject.GetItemObject(Column.IQ_STORECLAIM_MSG_REQ.ITEM);
|
|||
|
//for (int iRow = 0; iRow < aClaimInfo.Count; iRow++)
|
|||
|
//{
|
|||
|
//Column.IQ_STORECLAIM_MSG_REQ.DATA cClaimInfo = (Column.IQ_STORECLAIM_MSG_REQ.DATA)aClaimInfo[iRow];
|
|||
|
Column.IQ_STORECLAIM_MSG_REQ.DATA cClaimInfo = (Column.IQ_STORECLAIM_MSG_REQ.DATA)aClaimInfo[0];
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F203, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0020), cClaimInfo.SALE_DT);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F101, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0021));
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F203, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0022) + " : ", cClaimInfo.CUST_NM);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F203, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0023) + " : ", cClaimInfo.CUST_SEX);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F203, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0024) + " : ", cClaimInfo.CUST_TEL);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F101, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0025));
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F203, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0026) + " : ", cClaimInfo.ITEM_SNM);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F203, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0027) + " : ", cClaimInfo.BUY_DT);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F203, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0028) + " : ", cClaimInfo.LOT_NO);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F101, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0029));
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F203, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0030) + " : ", cClaimInfo.CLAIM_PRC_GB);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F203, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0031) + " : ", cClaimInfo.CLAIM_PRC_COST);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F203, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0032) + " : ", cClaimInfo.CLAIM_PRC_MEMO);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
//}
|
|||
|
|
|||
|
return true;
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|||
|
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
|||
|
}
|
|||
|
return false;
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 해피포인트(인카드쿠폰) 내역 출력 데이터 생성
|
|||
|
/// </summary>
|
|||
|
/// <returns></returns>
|
|||
|
public string MakeInCardCpnReceipt(Column.TR_ETC.DATA cEtcItem, DataTable dtCpnList)
|
|||
|
{
|
|||
|
string sRet = UserCom.RST_ERR;
|
|||
|
try
|
|||
|
{
|
|||
|
PrintBufClear(); // 영수증 출력버퍼 초기화
|
|||
|
|
|||
|
SetTopPosPrintData(PosConst.PRT_ITEM.REC, true, true, false, false); // 영수증 상단영역 출력
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_BLD, PosConst.PRT_FMT.F103, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0071));
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR);
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F101
|
|||
|
, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0075) + " : " + m_cPosStatus.Global.DateToCulture(DateTime.Now.ToString("yyyyMMdd")));
|
|||
|
// 카드번호
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F202
|
|||
|
, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0043), cEtcItem.OCCUR_ENTRY_01);
|
|||
|
// 잔여포인트
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F202
|
|||
|
, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0050), m_cPosStatus.Global.NumericTOCurrency(cEtcItem.AMT_ENTRY_03));
|
|||
|
// 가용포인트
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F202
|
|||
|
, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0074), m_cPosStatus.Global.NumericTOCurrency(cEtcItem.AMT_ENTRY_04));
|
|||
|
if (cEtcItem.HP_EXT_POINT > 0)
|
|||
|
{
|
|||
|
// 소멸예정포인트
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F202
|
|||
|
, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0017), m_cPosStatus.Global.NumericTOCurrency(cEtcItem.HP_EXT_POINT));
|
|||
|
}
|
|||
|
|
|||
|
// 인카드 쿠폰 내역 출력
|
|||
|
if ( dtCpnList != null && dtCpnList.Rows.Count > 0)
|
|||
|
{
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F200,
|
|||
|
MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0076), MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0057));
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
foreach (DataRow dr in dtCpnList.Rows)
|
|||
|
{
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F200
|
|||
|
, CmUtil.GetDataRowStr(dr, "COUPON_NM"), m_cPosStatus.Global.DateToCulture(CmUtil.GetDataRowStr(dr, "END_DT")));
|
|||
|
}
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.REC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
}
|
|||
|
|
|||
|
SetBtmPosPrintData(PosConst.PRT_ITEM.REC, false, false, false, false, false); // 영수증 하단영역 출력
|
|||
|
SetEndPosPrintData(PosConst.PRT_ITEM.REC); // 영수증 컷팅
|
|||
|
sRet = UserCom.RST_OK;
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|||
|
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
|||
|
}
|
|||
|
return sRet;
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 행사 주문 취합 내역 조회 데이터 생성
|
|||
|
/// </summary>
|
|||
|
/// <returns></returns>
|
|||
|
public string MakePosSearchEvent(string sPrintData)
|
|||
|
{
|
|||
|
string sRet = UserCom.RST_ERR;
|
|||
|
|
|||
|
try
|
|||
|
{
|
|||
|
PrintBufClear(); // 영수증 출력버퍼 초기화
|
|||
|
|
|||
|
string sRecvData = string.Empty;
|
|||
|
int iDataLen = 0;
|
|||
|
|
|||
|
|
|||
|
while (iDataLen <= sPrintData.Length)
|
|||
|
{
|
|||
|
//if (iDataLen == 0)
|
|||
|
//{
|
|||
|
sRecvData += CmUtil.MidH(sPrintData, iDataLen, 40) + Convert.ToChar(13).ToString() + Convert.ToChar(10).ToString();
|
|||
|
iDataLen += 40;
|
|||
|
//}
|
|||
|
//else
|
|||
|
//{
|
|||
|
// sRecvData += CmUtil.MidH(sPrtData, iDataLen + 4, 42) + Convert.ToChar(13).ToString() + Convert.ToChar(10).ToString();
|
|||
|
// iDataLen += 46;
|
|||
|
//}
|
|||
|
//iDataLen += 42;
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// POS 영수증 출력
|
|||
|
//SetTopPosPrintData(PosConst.PRT_ITEM.REC, true, true, false, true); // 영수증 상단영역 출력
|
|||
|
//sRet = SetPosSearchEvent();
|
|||
|
//SetBtmPosPrintData(PosConst.PRT_ITEM.REC, false, false, true, false, false); // 영수증 하단영역 출력
|
|||
|
//sRet = UserCom.RST_OK;
|
|||
|
|
|||
|
AddPrintData("", sRecvData);
|
|||
|
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|||
|
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
|||
|
}
|
|||
|
return sRet;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 행사 주문 취합 내역 조회 데이터 생성
|
|||
|
/// </summary>
|
|||
|
/// <returns></returns>
|
|||
|
private string SetPosSearchEvent()
|
|||
|
{
|
|||
|
try
|
|||
|
{
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F103, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0019));
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
ArrayList aClaimInfo = (ArrayList)StateObject.GetItemObject(Column.IQ_STORECLAIM_MSG_REQ.ITEM);
|
|||
|
//for (int iRow = 0; iRow < aClaimInfo.Count; iRow++)
|
|||
|
//{
|
|||
|
//Column.IQ_STORECLAIM_MSG_REQ.DATA cClaimInfo = (Column.IQ_STORECLAIM_MSG_REQ.DATA)aClaimInfo[iRow];
|
|||
|
Column.IQ_STORECLAIM_MSG_REQ.DATA cClaimInfo = (Column.IQ_STORECLAIM_MSG_REQ.DATA)aClaimInfo[0];
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F301, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0020), " ", cClaimInfo.SALE_DT);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F101, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0021));
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F301, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0022), " : ", cClaimInfo.CUST_NM);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F301, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0023), " : ", cClaimInfo.CUST_SEX);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F301, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0024), " : ", cClaimInfo.CUST_TEL);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F101, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0025));
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F301, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0026), " : ", cClaimInfo.ITEM_SNM);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F301, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0027), " : ", cClaimInfo.BUY_DT);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F301, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0028), " : ", cClaimInfo.LOT_NO);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F101, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0029));
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F301, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0030), " : ", cClaimInfo.CLAIM_PRC_GB);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F301, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0031), " : ", cClaimInfo.CLAIM_PRC_COST);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F301, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0032), " : ", cClaimInfo.CLAIM_PRC_MEMO);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
//}
|
|||
|
|
|||
|
return "";
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|||
|
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
|||
|
}
|
|||
|
return "";
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 정산지 출력 데이터 생성
|
|||
|
/// </summary>
|
|||
|
/// <param name="sTradeKind"></param>
|
|||
|
/// <returns></returns>
|
|||
|
private string AccADMTReceipt(string sTradeKind, string sSimplePrint)
|
|||
|
{
|
|||
|
//#13559 PB 노은휴먼시아_마감에 간편출력체크하지않은 마감건도 동일하게 출력되는 증상에 대해 원인 및 확인 요청 start, phj
|
|||
|
UserLog.WriteLogFile(UserCom.LOG_IOS, System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|||
|
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", "[AccADMTReceipt] Kind : " + sTradeKind + " , " + "Simple print :" + sSimplePrint);
|
|||
|
//#13559 PB 노은휴먼시아_마감에 간편출력체크하지않은 마감건도 동일하게 출력되는 증상에 대해 원인 및 확인 요청 end, phj
|
|||
|
|
|||
|
IAccADMT m_cAccADMT = null;
|
|||
|
bool bSubTitlePrint = false;
|
|||
|
string sRet = UserCom.RST_ERR;
|
|||
|
m_cAccADMT = (IAccADMT)sManager.InitServiceInstance(ServiceLists.BSV_OPEN_CLOSE.DLL, ServiceLists.BSV_OPEN_CLOSE.ACC_ADMT);
|
|||
|
|
|||
|
try
|
|||
|
{
|
|||
|
///PrintBufClear(); // 영수증 출력버퍼 초기화
|
|||
|
|
|||
|
if (m_cTrnStatus.Head.TradeDiv == ItemConst.TRAN_DIV.REFUND) return UserCom.RST_OK;
|
|||
|
|
|||
|
string sTitleMsg = "";
|
|||
|
if (sTradeKind == ItemConst.TRAN_KIND.STATEMENT.MIDDLE_ADJUSTMENT)
|
|||
|
{
|
|||
|
sTitleMsg = string.Format(MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0484), "1");
|
|||
|
|
|||
|
// 중간정산 횟수 조회
|
|||
|
DataTable dtData = m_cAccADMT.GetADMTCount(new string[] { "" });
|
|||
|
if (dtData != null && dtData.Rows.Count != 0)
|
|||
|
{
|
|||
|
foreach (DataRow dr in dtData.Rows)
|
|||
|
{
|
|||
|
sTitleMsg = string.Format(MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0484), m_cPosStatus.Global.NumericTOCurrency(CmUtil.DoubleParse(dr["QTY"].ToString())));
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
else if (sTradeKind == ItemConst.TRAN_KIND.STATEMENT.ADJUSTMENT) sTitleMsg = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0089);
|
|||
|
|
|||
|
// SUB 타이틀 출력
|
|||
|
string sTitle1 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0500);
|
|||
|
string sTitle2 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0017);
|
|||
|
string sTitle3 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0019);
|
|||
|
|
|||
|
DataTable dtMemu = null;
|
|||
|
|
|||
|
//dtMemu = m_cAccADMT.GetData_ADMTPrint(new string[] { sTradeKind, sSimplePrint });
|
|||
|
IDataSearch m_cDataSearch = (IDataSearch)sManager.InitServiceInstance(ServiceLists.BSV_ADMIN.DLL, ServiceLists.BSV_ADMIN.DATASEARCH);
|
|||
|
sRet = m_cDataSearch.MakeAccADMTCheck(m_cPosStatus.Base.SaleDate, ref dtMemu, sSimplePrint);
|
|||
|
// 메뉴정보 설정
|
|||
|
if (dtMemu != null && dtMemu.Rows.Count > 0)
|
|||
|
{
|
|||
|
int nSign = m_cTrnStatus.Head.TradeDiv == ItemConst.TRAN_DIV.REFUND ? -1 : 1;
|
|||
|
|
|||
|
// 영수증 상단영역 출력
|
|||
|
SetTopPosPrintData(PosConst.PRT_ITEM.ETC, true, true, false, true);
|
|||
|
|
|||
|
// 영업일자 출력(2017.05.26)
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F101
|
|||
|
, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0081) + " : " + m_cPosStatus.Global.DateToCulture(m_cPosStatus.Base.SaleDate));
|
|||
|
//AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, "");
|
|||
|
|
|||
|
// 정산 수량이 없는 경우 그룹별 '내용없음' 표시로 변경 20170830 goblin6
|
|||
|
int[] aDataPrint = new int[10];
|
|||
|
string sPrevCd = "";
|
|||
|
foreach (DataRow dr in dtMemu.Rows)
|
|||
|
{
|
|||
|
if (sPrevCd == "" || sPrevCd != CmUtil.LeftH(CmUtil.GetDataRowStr(dr, "SEQ_NO"), 1))
|
|||
|
{
|
|||
|
sPrevCd = CmUtil.LeftH(CmUtil.GetDataRowStr(dr, "SEQ_NO"), 1);
|
|||
|
}
|
|||
|
aDataPrint[CmUtil.IntParse(sPrevCd)] += CmUtil.GetDataRowInt(dr, "QTY");
|
|||
|
}
|
|||
|
// 정산 수량이 없는 경우 그룹별 '내용없음' 표시로 변경 20170830 goblin6
|
|||
|
|
|||
|
foreach (DataRow dr in dtMemu.Rows)
|
|||
|
{
|
|||
|
string sSeq = CmUtil.GetDataRowStr(dr, "SEQ_NO"); // 정산지 수량이 있는 경우만 출력 추가 20170830 goblin6
|
|||
|
string sTitle = CmUtil.GetDataRowStr(dr, "MSG"); // 명칭
|
|||
|
string sQty = m_cPosStatus.Global.NumericTOCurrency(CmUtil.GetDataRowDouble(dr, "QTY")); // 수량
|
|||
|
string sAmt = m_cPosStatus.Global.NumericTOCurrency(CmUtil.GetDataRowDouble(dr, "AMT")); // 금액
|
|||
|
string sSortDiv = CmUtil.GetDataRowStr(dr, "SORT_DIV"); // 정렬
|
|||
|
string sSizeDiv = CmUtil.GetDataRowStr(dr, "SIZE_DIV"); // 크기
|
|||
|
string sBillTag = CmUtil.GetDataRowStr(dr, "BILL_TYPE_TAG"); // 출력 타입
|
|||
|
//string sBoldYn = CmUtil.GetDataRowStr(dr, "BOLD_YN"); // 진하게
|
|||
|
|
|||
|
// 정렬
|
|||
|
if (sSortDiv == "1") sSortDiv = PosConst.PRT_FMT.F102;
|
|||
|
else if (sSortDiv == "2") sSortDiv = PosConst.PRT_FMT.F103;
|
|||
|
else if (sSortDiv == "3") sSortDiv = PosConst.PRT_FMT.F101;
|
|||
|
|
|||
|
// 크기
|
|||
|
if (sSizeDiv == "1") sSizeDiv = PosConst.PRT_HDR.PRT_NOR;
|
|||
|
else if (sSizeDiv == "2") sSizeDiv = PosConst.PRT_HDR.PRT_HOR;
|
|||
|
else if (sSizeDiv == "3") sSizeDiv = PosConst.PRT_HDR.PRT_VER;
|
|||
|
else if (sSizeDiv == "4") sSizeDiv = PosConst.PRT_HDR.PRT_BIG;
|
|||
|
else sSizeDiv = PosConst.PRT_HDR.PRT_NOR;
|
|||
|
//if (sBoldYn == "1") sSizeDiv = PosConst.PRT_HDR.PRT_BLD;
|
|||
|
|
|||
|
// 출력 정의
|
|||
|
switch (sBillTag.Trim().ToUpper())
|
|||
|
{
|
|||
|
case "<LINE>":
|
|||
|
// '-' 라인 추가
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, sSizeDiv, PosConst.PRT_FMT.F100, "-");
|
|||
|
break;
|
|||
|
case "<CUT>":
|
|||
|
// 영수증 커팅
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_CUT, "");
|
|||
|
break;
|
|||
|
case "<CODE>":
|
|||
|
// 정산 데이터 출력
|
|||
|
if (bSubTitlePrint != true)
|
|||
|
{
|
|||
|
// 타이틀
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
//AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, " ");
|
|||
|
//AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_VER, PosConst.PRT_FMT.F103, sTitleMsg);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_BLD, PosConst.PRT_FMT.F103, sTitleMsg);
|
|||
|
|
|||
|
// sub 타이틀
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F301, sTitle1, sTitle2, sTitle3);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
bSubTitlePrint = true;
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// 정산 수량이 없는 경우 그룹별 '내용없음' 표시로 변경 20170830 goblin6
|
|||
|
if ((CmUtil.IntParse(sSeq) >= 2100 && CmUtil.IntParse(sSeq) < 6100
|
|||
|
|| CmUtil.IntParse(sSeq) >= 8701 && CmUtil.IntParse(sSeq) <= 8704)
|
|||
|
&& CmUtil.IntParse(sSeq) != 3800 && CmUtil.IntParse(sSeq) != 3801
|
|||
|
&& CmUtil.IntParse(sSeq) != 4300 && CmUtil.IntParse(sSeq) != 4301
|
|||
|
)
|
|||
|
|
|||
|
{
|
|||
|
if (CmUtil.IntParse(sQty) > 0)
|
|||
|
{
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, sSizeDiv, PosConst.PRT_FMT.F301, sTitle, sQty, sAmt);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
sPrevCd = CmUtil.LeftH(CmUtil.GetDataRowStr(dr, "SEQ_NO"), 1);
|
|||
|
if (aDataPrint[CmUtil.IntParse(sPrevCd)] == 0)
|
|||
|
{
|
|||
|
aDataPrint[CmUtil.IntParse(sPrevCd)] = 1;
|
|||
|
sTitle = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0570);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, sSizeDiv, PosConst.PRT_FMT.F103, sTitle, "", "");
|
|||
|
//AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, " ");
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
//#13509 마감지 '마감입금' 항목 정렬 수정 요청 start
|
|||
|
//기존
|
|||
|
|
|||
|
//#13863 PB 동해평릉 - 마감지 정렬 방식 개선요청 start, phj
|
|||
|
//기존
|
|||
|
//AddPrintData(PosConst.PRT_ITEM.ETC, sSizeDiv, PosConst.PRT_FMT.F300, sTitle, sQty, sAmt);
|
|||
|
//변경
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, sSizeDiv, PosConst.PRT_FMT.F301, sTitle, sQty, sAmt);
|
|||
|
//#13863 PB 동해평릉 - 마감지 정렬 방식 개선요청 end, phj
|
|||
|
|
|||
|
//변경
|
|||
|
/*
|
|||
|
if (sSortDiv == PosConst.PRT_FMT.F102)
|
|||
|
{
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, sSizeDiv, PosConst.PRT_FMT.F300, sTitle, sQty, sAmt);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, sSizeDiv, PosConst.PRT_FMT.F301, sTitle, sQty, sAmt);
|
|||
|
}
|
|||
|
*/
|
|||
|
//#13509 마감지 '마감입금' 항목 정렬 수정 요청 end
|
|||
|
}
|
|||
|
// 정산 수량이 없는 경우 그룹별 '내용없음' 표시로 변경 20170830 goblin6
|
|||
|
|
|||
|
break;
|
|||
|
case "<ITEM>":
|
|||
|
case "<CLASS>":
|
|||
|
case "<TENDER>":
|
|||
|
case "<CASHREFUND>": // 현금반품 내역 추가 20170830 goblin6
|
|||
|
// 상품별/분류별/결제별 집계
|
|||
|
DataTable dtMemu2 = m_cAccADMT.SelectiTemClass(new string[] { sBillTag.Trim().ToUpper() });
|
|||
|
if (dtMemu2 != null && dtMemu2.Rows.Count > 0)
|
|||
|
{
|
|||
|
string sTitile = "";
|
|||
|
if (sBillTag.Trim().ToUpper() == "<ITEM>")
|
|||
|
sTitile = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0601);
|
|||
|
else if (sBillTag.Trim().ToUpper() == "<CLASS>")
|
|||
|
// #20170915 분류별 정산 내역 추가 start, phj
|
|||
|
//기존
|
|||
|
//sTitile = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0602);
|
|||
|
//변경
|
|||
|
sTitile = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_1033);
|
|||
|
// #20170915 분류별 정산 내역 추가 end, phj
|
|||
|
else if (sBillTag.Trim().ToUpper() == "<TENDER>")
|
|||
|
sTitile = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0603);
|
|||
|
else if (sBillTag.Trim().ToUpper() == "<CASHREFUND>")
|
|||
|
sTitile = MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0207); // 현금반품 내역 추가 20170830 goblin6
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_VER, PosConst.PRT_FMT.F103, sTitile);
|
|||
|
|
|||
|
if (sBillTag.Trim().ToUpper() == "<CASHREFUND>") // 현금반품 내역 추가 20170830 goblin6
|
|||
|
{
|
|||
|
sTitle1 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0346);
|
|||
|
sTitle2 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0446);
|
|||
|
sTitle3 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0019);
|
|||
|
}
|
|||
|
// #20170915 분류별 정산 내역 추가 start, phj
|
|||
|
else if (sBillTag.Trim().ToUpper() == "<CLASS>")
|
|||
|
{
|
|||
|
// 분류, 수량, 금액
|
|||
|
sTitle1 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_1032);
|
|||
|
sTitle2 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0017);
|
|||
|
sTitle3 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0019);
|
|||
|
}
|
|||
|
// #20170915 분류별 정산 내역 추가 end, phj
|
|||
|
else
|
|||
|
{
|
|||
|
sTitle1 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0500);
|
|||
|
sTitle2 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0017);
|
|||
|
sTitle3 = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0019);
|
|||
|
}
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
if (sBillTag.Trim().ToUpper() == "<CASHREFUND>") // 현금반품 내역 추가 20170830 goblin6
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F303, sTitle1, sTitle2, sTitle3);
|
|||
|
else
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F301, sTitle1, sTitle2, sTitle3);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
// #20170915 분류별 정산 내역 추가 start, phj
|
|||
|
double dtotNetAmt = 0;
|
|||
|
if (sBillTag.Trim().ToUpper() == "<CLASS>")
|
|||
|
{
|
|||
|
// 총시재매출
|
|||
|
foreach (DataRow dr1 in dtMemu2.Rows)
|
|||
|
{
|
|||
|
// 2 - 합계row
|
|||
|
if (CmUtil.GetDataRowStr(dr1, "LEVEL_GB").ToString() == "2")
|
|||
|
{
|
|||
|
dtotNetAmt = CmUtil.GetDataRowDouble(dr1, "BILL_AMT");
|
|||
|
break;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
// #20170915 분류별 정산 내역 추가 end, phj
|
|||
|
|
|||
|
foreach (DataRow dr2 in dtMemu2.Rows)
|
|||
|
{
|
|||
|
string sSubTitle = ""; // 현금반품 내역 추가 20170830 goblin6
|
|||
|
string sSubQty = "";
|
|||
|
string sSubAmt = "";
|
|||
|
// #20170915 분류별 정산 내역 추가 start, phj
|
|||
|
string sSubPercent = "";
|
|||
|
// #20170915 분류별 정산 내역 추가 end, phj
|
|||
|
|
|||
|
if (sBillTag.Trim().ToUpper() == "<CASHREFUND>") // 현금반품 내역 추가 20170830 goblin6
|
|||
|
{
|
|||
|
sSubTitle = CmUtil.GetDataRowStr(dr2, "ITEM_NM").ToString(); // 명칭
|
|||
|
sSubQty = CmUtil.GetDataRowStr(dr2, "SALE_QTY").ToString(); // 시간
|
|||
|
sSubAmt = m_cPosStatus.Global.NumericTOCurrency(CmUtil.GetDataRowDouble(dr2, "SALE_AMT")); // 금액
|
|||
|
}
|
|||
|
// #20170915 분류별 정산 내역 추가 start
|
|||
|
else if (sBillTag.Trim().ToUpper() == "<CLASS>")
|
|||
|
{
|
|||
|
sSubTitle = CmUtil.GetDataRowStr(dr2, "ITEM_NM").ToString(); // 명칭
|
|||
|
sSubQty = m_cPosStatus.Global.NumericTOCurrency(CmUtil.GetDataRowDouble(dr2, "SALE_QTY")); // 수량
|
|||
|
sSubAmt = m_cPosStatus.Global.NumericTOCurrency(CmUtil.GetDataRowDouble(dr2, "BILL_AMT")); // 금액
|
|||
|
sSubPercent = (CmUtil.MathRounds(((Convert.ToDouble(sSubAmt) * 100) / dtotNetAmt), PosConst.MATH_ROUND.ROUND, 0)).ToString(); // 퍼센트
|
|||
|
}
|
|||
|
// #20170915 분류별 정산 내역 추가 end
|
|||
|
else
|
|||
|
{
|
|||
|
sSubTitle = CmUtil.GetDataRowStr(dr2, "ITEM_NM").ToString(); // 명칭
|
|||
|
sSubQty = m_cPosStatus.Global.NumericTOCurrency(CmUtil.GetDataRowDouble(dr2, "SALE_QTY")); // 수량
|
|||
|
sSubAmt = m_cPosStatus.Global.NumericTOCurrency(CmUtil.GetDataRowDouble(dr2, "SALE_AMT")); // 금액
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
if (sSubTitle.Trim() == "#SUM#")
|
|||
|
{
|
|||
|
sSubTitle = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0501);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
if (sBillTag.Trim().ToUpper() == "<CASHREFUND>") // 현금반품 내역 추가 20170830 goblin6
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F303, sSubTitle, sSubQty, sSubAmt);
|
|||
|
// #20170915 분류별 정산 내역 추가 start, phj
|
|||
|
else if (sBillTag.Trim().ToUpper() == "<CLASS>")
|
|||
|
{
|
|||
|
// 분류명 , 백분율
|
|||
|
sSubTitle = CmUtil.RPadH(sSubTitle, 20) + CmUtil.LPadH(sSubPercent.ToString(), 3);
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F301, sSubTitle, sSubQty, sSubAmt);
|
|||
|
}
|
|||
|
// #20170915 분류별 정산 내역 추가 end, phj
|
|||
|
else
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F301, sSubTitle, sSubQty, sSubAmt);
|
|||
|
}
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
//AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, " ");
|
|||
|
}
|
|||
|
|
|||
|
break;
|
|||
|
default:
|
|||
|
// 입력된 문구 출력
|
|||
|
if (bSubTitlePrint != true)
|
|||
|
{
|
|||
|
// 타이틀
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_VER, PosConst.PRT_FMT.F103, sTitleMsg);
|
|||
|
//AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, " ");
|
|||
|
|
|||
|
//bSubTitlePrint = true;
|
|||
|
}
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
//if (bSubTitlePrint == true) AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, " ");
|
|||
|
if (bSubTitlePrint != true)
|
|||
|
{
|
|||
|
bSubTitlePrint = true;
|
|||
|
}
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, sSizeDiv, sSortDiv, sBillTag);
|
|||
|
|
|||
|
// sub 타이틀
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F301, sTitle1, sTitle2, sTitle3);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
break;
|
|||
|
}
|
|||
|
|
|||
|
Application.DoEvents();
|
|||
|
}
|
|||
|
|
|||
|
// 영수증 하단영역 출력
|
|||
|
SetBtmPosPrintData(PosConst.PRT_ITEM.ETC, false, false, false, false, false);
|
|||
|
}
|
|||
|
|
|||
|
SetEndPosPrintData(PosConst.PRT_ITEM.ETC); // 영수증 출력 완료
|
|||
|
|
|||
|
sRet = UserCom.RST_OK;
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|||
|
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
|||
|
}
|
|||
|
return sRet;
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 기타입출금 데이터 생성
|
|||
|
/// </summary>
|
|||
|
public string AccEtcReceipt(string sFromDate, string sToDate)
|
|||
|
{
|
|||
|
string sRet = UserCom.RST_ERR;
|
|||
|
double nInSumAmount = 0;
|
|||
|
double nOutSumAmount = 0;
|
|||
|
//string sTitleName = "";
|
|||
|
string sDpstWthdrCdFlag = "";
|
|||
|
|
|||
|
try
|
|||
|
{
|
|||
|
PrintBufClear(); // 영수증 출력버퍼 초기화
|
|||
|
|
|||
|
// POS 영수증 출력
|
|||
|
SetTopPosPrintData(PosConst.PRT_ITEM.REC, true, true, false, true); // 영수증 상단영역 출력
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F103, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0111));
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F101, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0075) + " : "
|
|||
|
+ sFromDate + " " + MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0075) + " " + sToDate);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F402, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0113), MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0114)
|
|||
|
, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0115), MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0091));
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
ArrayList aSaleDpstWthdr = (ArrayList)StateObject.GetItemObject(Column.SALE_DPST_WTHDR.ITEM);
|
|||
|
for (int iRow = 0; iRow < aSaleDpstWthdr.Count; iRow++)
|
|||
|
{
|
|||
|
Column.SALE_DPST_WTHDR.DATA cDpstWthdr = (Column.SALE_DPST_WTHDR.DATA)aSaleDpstWthdr[iRow];
|
|||
|
|
|||
|
if (cDpstWthdr.DPST_WTHDR_CD == "01")
|
|||
|
{
|
|||
|
nInSumAmount += cDpstWthdr.DPST_WTHDR_AMT; // 입금합계
|
|||
|
cDpstWthdr.DPST_WTHDR_CD = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0486);
|
|||
|
}
|
|||
|
else if (cDpstWthdr.DPST_WTHDR_CD == "02")
|
|||
|
{
|
|||
|
nOutSumAmount += cDpstWthdr.DPST_WTHDR_AMT; // 출금합계
|
|||
|
cDpstWthdr.DPST_WTHDR_CD = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0524);
|
|||
|
}
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F402, cDpstWthdr.SALE_DT, cDpstWthdr.DPST_WTHDR_CD,
|
|||
|
cDpstWthdr.DPST_WTHDR_NM, m_cPosStatus.Global.NumericTOCurrency(cDpstWthdr.DPST_WTHDR_AMT));
|
|||
|
|
|||
|
if (cDpstWthdr.ETC_REASON != "")
|
|||
|
{
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F101, "- " +cDpstWthdr.ETC_REASON);
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F201, "** " + MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0116) + " **", m_cPosStatus.Global.NumericTOCurrency(CmUtil.DoubleParse(nInSumAmount.ToString())));
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F201, "** " + MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0117) + " **", m_cPosStatus.Global.NumericTOCurrency(CmUtil.DoubleParse(nOutSumAmount.ToString())));
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F101, "-");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F103, "** " + MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0118) + " : " + System.DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss") + " **");
|
|||
|
|
|||
|
SetEndPosPrintData(PosConst.PRT_ITEM.ETC); // 영수증 출력 완료
|
|||
|
|
|||
|
sRet = UserCom.RST_OK;
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|||
|
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
|||
|
}
|
|||
|
return sRet;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 준비점검 공지사항 데이터 생성
|
|||
|
/// </summary>
|
|||
|
public string PrepStorNoticeReceipt(DataTable dtData)
|
|||
|
{
|
|||
|
string sRet = UserCom.RST_ERR;
|
|||
|
double nInSumAmount = 0;
|
|||
|
double nOutSumAmount = 0;
|
|||
|
//string sTitleName = "";
|
|||
|
string sDpstWthdrCdFlag = "";
|
|||
|
|
|||
|
int nCnt = 0;
|
|||
|
|
|||
|
try
|
|||
|
{
|
|||
|
PrintBufClear(); // 영수증 출력버퍼 초기화
|
|||
|
|
|||
|
// POS 영수증 출력
|
|||
|
//SetTopPosPrintData(PosConst.PRT_ITEM.REC, true, true, false, true); // 영수증 상단영역 출력
|
|||
|
//SetBtmPosPrintData(PosConst.PRT_ITEM.REC, false, false, true, false, false); // 영수증 하단영역 출력
|
|||
|
|
|||
|
//AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F103, "준비점검 공지사항");
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F101, "영업일자 : " + m_cPosStatus.Base.SaleDate);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
//ArrayList aSaleDpstWthdr = (ArrayList)StateObject.GetItemObject(Column.SALE_DPST_WTHDR.ITEM);
|
|||
|
for (int iRow = 0; iRow < dtData.Rows.Count; iRow++)
|
|||
|
{
|
|||
|
//AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F402, cDpstWthdr.SALE_DT, cDpstWthdr.DPST_WTHDR_CD,
|
|||
|
// cDpstWthdr.DPST_WTHDR_NM, m_cPosStatus.Global.NumericTOCurrency(cDpstWthdr.DPST_WTHDR_AMT));
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F101, "[ " + CmUtil.GetDataRowStr(dtData.Rows[iRow], PosMst.MST_SALESORG_INSPCT_GRP.DATA.INSPCT_ENTRY_L_CLSS_NM) + " ] ");
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F101, CmUtil.GetDataRowStr(dtData.Rows[iRow], PosMst.MST_SALESORG_INSPCT_DTL.DATA.INSPCT_ENTRY_NM));
|
|||
|
nCnt = CmUtil.GetDataRowInt(dtData.Rows[iRow], PosMst.MST_SALESORG_INSPCT_DTL.DATA.SEL_ENTRY_CNT);
|
|||
|
|
|||
|
for (int iRow2 = 0; iRow2 < nCnt; iRow2++)
|
|||
|
{
|
|||
|
string sCellIndex = Convert.ToString(iRow2 + 1);
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F101, CmUtil.GetDataRowStr(dtData.Rows[iRow], "SEL_ENTRY_" + sCellIndex));
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F103, "** 출력시간 : " + System.DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss") + " **");
|
|||
|
|
|||
|
// 영수증 컷팅
|
|||
|
SetEndPosPrintData(PosConst.PRT_ITEM.ETC);
|
|||
|
|
|||
|
sRet = UserCom.RST_OK;
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|||
|
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
|||
|
}
|
|||
|
return sRet;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 준비금 등록내역 출력 데이터 생성
|
|||
|
/// </summary>
|
|||
|
/// <param name="dtData">등록내역 데이터</param>
|
|||
|
/// <param name="sFromDate">영업일자</param>
|
|||
|
/// <returns></returns>
|
|||
|
public string AccRemoneyListReceipt(DataTable dtData, string sFromDate)
|
|||
|
{
|
|||
|
string sRet = UserCom.RST_ERR;
|
|||
|
int nCnt = 0;
|
|||
|
|
|||
|
try
|
|||
|
{
|
|||
|
PrintBufClear(); // 영수증 출력버퍼 초기화
|
|||
|
|
|||
|
SetTopPosPrintData(PosConst.PRT_ITEM.REC, true, true, false, true); // 영수증 상단영역 출력
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F103, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0080));
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F101, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0081) + " : " + sFromDate);
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F403, MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0082),
|
|||
|
MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0011), MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0083), MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0084));
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
for (int iRow = 0; iRow < dtData.Rows.Count; iRow++)
|
|||
|
{
|
|||
|
//nCnt = CmUtil.GetDataRowInt(dtData.Rows[iRow], PosMst.MST_SALESORG_INSPCT.DATA.SEL_ENTRY_CNT);
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F403, CmUtil.GetDataRowStr(dtData.Rows[iRow], PosAcc.ACC_REMONEY_SEARCH.DATA.NO), CmUtil.GetDataRowStr(dtData.Rows[iRow], PosAcc.ACC_REMONEY_SEARCH.DATA.CASHIER_NM),
|
|||
|
CmUtil.GetDataRowStr(dtData.Rows[iRow], PosAcc.ACC_REMONEY_SEARCH.DATA.TOTSALE_AMT), CmUtil.GetDataRowStr(dtData.Rows[iRow], PosAcc.ACC_REMONEY_SEARCH.DATA.PAY_TIME));
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F100, "-");
|
|||
|
|
|||
|
AddPrintData(PosConst.PRT_ITEM.ETC, PosConst.PRT_HDR.PRT_NOR, PosConst.PRT_FMT.F103, "** " + MessageManager.GetPrintMessage(POS_MESSAGE.PRINT.MSG_0085) + " : " + System.DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss") + " **");
|
|||
|
|
|||
|
// 영수증 컷팅
|
|||
|
SetEndPosPrintData(PosConst.PRT_ITEM.ETC);
|
|||
|
|
|||
|
sRet = UserCom.RST_OK;
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|||
|
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
|||
|
}
|
|||
|
return sRet;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|