string CDPTitleByType(CDPMessageType messagType) { switch (messagType) { case CDPMessageType.PayCash: return("CASH"); case CDPMessageType.PayGift: return("GIFT"); case CDPMessageType.PayCard: return("CARD"); case CDPMessageType.PayCoupon: return("COUPON"); case CDPMessageType.PayPoint: return("POINT"); case CDPMessageType.PayOnline: return("ON-LINE"); case CDPMessageType.PayOther: default: return(string.Empty); } }
/// <summary> /// CDP 메시지 /// </summary> /// <param name="payAmt"></param> /// <param name="balAmt"></param> /// <param name="messageType"></param> public void ShowCDPMessage(CDPMessageType messageType, string payAmt, string balAmt) { int CDP_LENGTH = 20; if (POSDeviceManager.LineDisplay.Status == DeviceStatus.Opened) { string msg1 = string.Empty; string msg2 = string.Empty; string sTotalAmt = string.Empty; Int64 totalAmt = 0; int nPayAmt = TypeHelper.ToInt32(payAmt); int nBalAmt = TypeHelper.ToInt32(balAmt); switch (messageType) { case CDPMessageType.ItemChanged: var row = gpItems.GetSelectedRow(); var rowData = row != null ? row.ItemData : null; if (rowData != null) { string sItemAmt = string.Format("{0:#,##0}", ((PBItemData)rowData).AmItem) != "0" ? (StateRefund ? "-" : "") + string.Format("{0:#,##0}", Math.Abs(TypeHelper.ToInt64(((PBItemData)rowData).AmItem))) : "0"; msg1 = MSG_CDP_SALE_1 + sItemAmt.PadLeft(CDP_LENGTH - MSG_CDP_SALE_1.Length, ' '); } totalAmt = TypeHelper.ToInt64(saleSummaryControl1.TotalAmt); sTotalAmt = totalAmt != 0 ? (StateRefund ? "-" : "") + string.Format("{0:#,##0}", Math.Abs(totalAmt)) : "0"; msg2 = MSG_CDP_SALE_TOTAL + sTotalAmt.PadLeft(CDP_LENGTH - MSG_CDP_SALE_TOTAL.Length, ' '); break; case CDPMessageType.TransCancel: msg1 = MSG_CDP_CANCEL; msg2 = MSG_CDP_TRANSACTION; break; case CDPMessageType.TransHold: msg1 = MSG_CDP_SUSPENSION; msg2 = MSG_CDP_TRANSACTION; break; case CDPMessageType.TransHoldRelease: msg1 = MSG_CDP_CANCEL + " " + MSG_CDP_SUSPENSION; msg2 = MSG_CDP_TRANSACTION; break; case CDPMessageType.SubTotal: totalAmt = TypeHelper.ToInt64(saleSummaryControl1.TotalAmt); sTotalAmt = totalAmt != 0 ? (StateRefund ? "-" : "") + string.Format("{0:#,##0}", Math.Abs(totalAmt)) : "0"; msg1 = MSG_CDP_SALE_TOTAL + sTotalAmt.PadLeft(CDP_LENGTH - MSG_CDP_SALE_TOTAL.Length, ' '); break; default: string sPayAmt = nPayAmt != 0 ? (StateRefund ? "-" : "") + string.Format("{0:#,##0}", Math.Abs(nPayAmt)) : "0"; string sPayPrefix = CDPTitleByType(messageType); msg1 = sPayPrefix + sPayAmt.PadLeft(CDP_LENGTH - sPayPrefix.Length, ' '); // 잔액있으면, CHANGE 표시 if (nBalAmt > 0) { sPayAmt = nBalAmt != 0 ? (StateRefund ? "-" : "") + string.Format("{0:#,##0}", Math.Abs(nBalAmt)) : "0"; sPayPrefix = MSG_CDP_SALE_CHANGE; msg2 = sPayPrefix + sPayAmt.PadLeft(CDP_LENGTH - sPayPrefix.Length, ' '); } else { Int64 recvMoney = TypeHelper.ToInt64(saleSummaryControl1.RecvMoney); if (recvMoney > 0) { sPayAmt = recvMoney != 0 ? (StateRefund ? "-" : "") + string.Format("{0:#,##0}", Math.Abs(recvMoney)) : "0"; sPayPrefix = MSG_CDP_SALE_RECEIVE; } msg2 = sPayPrefix + sPayAmt.PadLeft(CDP_LENGTH - sPayPrefix.Length, ' '); } break; } POSDeviceManager.LineDisplay.DisplayText(msg1, msg2); } }