593 lines
25 KiB
C#
593 lines
25 KiB
C#
using System;
|
||
using System.Text;
|
||
using System.Drawing;
|
||
using System.Windows.Forms;
|
||
using System.Collections;
|
||
using System.Data;
|
||
|
||
using Cosmos.Win;
|
||
using Cosmos.BaseFrame;
|
||
using Cosmos.UserFrame;
|
||
using Cosmos.ServiceProvider;
|
||
using Cosmos.Common;
|
||
using Cosmos.CommonManager;
|
||
|
||
//#20181015 결제창 엑박 관련 이미지 미사용 처리 start
|
||
using System.Drawing.Drawing2D;
|
||
//#20181015 결제창 엑박 관련 이미지 미사용 처리 end
|
||
|
||
/*-----------------------------------------------------------------------------------------------*/
|
||
// 설 명 : 결제 팝업 백그라운드 화면
|
||
// 작 성 자 :
|
||
// 변경 이력 :
|
||
/*-----------------------------------------------------------------------------------------------*/
|
||
namespace Cosmos.Win
|
||
{
|
||
public partial class frm_PayMainBack : Form
|
||
{
|
||
|
||
#region 변수 선언
|
||
private PosStatus m_cPosStatus = new PosStatus(); //기본정보 참조
|
||
private StateServer StateObject = (StateServer)StateServer.GetInstance(); //StateObject : StateServer Object(객체)
|
||
|
||
private SManager sManager = new SManager(); // 이 객체를 통해 업무 Service 호출
|
||
private IDataCommonUs m_cDataCommon = null; // POS 공통함수 인터페이스
|
||
|
||
private ArrayList m_alMotDtl = new ArrayList(); // 결제 수단 정보 MOT 배열
|
||
private int iMaxPage; // 결제 수단 정보 MOT 최대 페이지 수
|
||
private int iNowPage; // 결제 수단 정보 MOT 현재 페이지
|
||
private readonly string MotbtnName = "BtnMotPay"; // 결제 수단 기본 버튼명
|
||
|
||
private string m_sFuncKey = ""; // 결제 수단 기능키
|
||
|
||
#endregion 변수 선언
|
||
|
||
#region 생성자 & 소멸자 & 폼초기화
|
||
public frm_PayMainBack()
|
||
{
|
||
InitializeComponent();
|
||
|
||
base.SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.AllPaintingInWmPaint | ControlStyles.ResizeRedraw, true);
|
||
//this.UpdateStyles();
|
||
|
||
//#20181015 결제창 엑박 관련 이미지 미사용 처리 start
|
||
this.picBack.Paint += new System.Windows.Forms.PaintEventHandler(this.picBack_Gradient);
|
||
//#20181015 결제창 엑박 관련 이미지 미사용 처리 end
|
||
}
|
||
|
||
//#20181015 결제창 엑박 관련 이미지 미사용 처리 start
|
||
#region picBack Paint 이벤트
|
||
private void picBack_Gradient(object sender, PaintEventArgs e)
|
||
{
|
||
try
|
||
{
|
||
//picBack 그라데이션 처리
|
||
#region picBack 그라데이션 처리
|
||
Color startColor = Color.FromArgb(138, 147, 165);
|
||
Color middleColor1 = Color.FromArgb(138, 147, 165);
|
||
Color middleColor2 = Color.FromArgb(33, 44, 56);
|
||
Color endColor = Color.FromArgb(33, 44, 56);
|
||
|
||
LinearGradientBrush br = new LinearGradientBrush(this.picBack.ClientRectangle,
|
||
System.Drawing.Color.FromArgb(255, 255, 255),
|
||
System.Drawing.Color.Black,
|
||
0,
|
||
false);
|
||
|
||
ColorBlend cb = new ColorBlend();
|
||
//그라데이션 시작 위치 설정
|
||
cb.Positions = new[] { 0, 1 / 10f, 1 / 2f, 1 };
|
||
//그라데이션 시작 위치별 색상 설정
|
||
cb.Colors = new[] { startColor, middleColor1, middleColor2, endColor };
|
||
//그라데이션 처리 회전 각도
|
||
br.RotateTransform(90);
|
||
br.InterpolationColors = cb;
|
||
|
||
e.Graphics.FillRectangle(br, this.picBack.ClientRectangle);
|
||
#endregion picBack 그라데이션 처리
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
||
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
||
}
|
||
}
|
||
#endregion picBack Paint 이벤트
|
||
//#20181015 결제창 엑박 관련 이미지 미사용 처리 end
|
||
|
||
protected void InitPayMainBack(PosStatus cPosStatus, IDataCommonUs cDataCommon, string sPosMenuKey, string sPAY_STEP, string sSeqNo)
|
||
{
|
||
m_cPosStatus = cPosStatus;
|
||
m_cDataCommon = cDataCommon;
|
||
|
||
picMotPayImg.Parent = pnlCardMot;
|
||
|
||
m_sFuncKey = sPosMenuKey;
|
||
|
||
//#20181015 결제창 엑박 관련 이미지 미사용 처리 start
|
||
//변경
|
||
//picBack.BackColor = Color.FromArgb(138, 147, 165);
|
||
//#20181015 결제창 엑박 관련 이미지 미사용 처리 end
|
||
|
||
btnExit.Image = ImageManager.GetImage(BaseCom.NxImgPath, ImageManager.BTN_CLOSE);
|
||
if (btnExit.Image != null) btnExit.Text = "";
|
||
|
||
string m_sEnterThemeColor = m_cPosStatus.ScnMst.ThemeColor;
|
||
|
||
////승인 종류 버튼 테마색상 적용!
|
||
if (string.IsNullOrEmpty(m_sEnterThemeColor) == false)
|
||
{
|
||
if (m_sEnterThemeColor.Length == 9)
|
||
padInPut.ThemeColor = m_sEnterThemeColor;
|
||
}
|
||
padInPut.ClearBtnText = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_0817);
|
||
padInPut.SearchBtnText = MessageManager.GetLabelMessage(POS_MESSAGE.LABEL.MSG_1018);
|
||
|
||
SetRichBoxMotMsg(rtbMotMain, PosConst.MOT_MSG_TYPE.DSP_SCN_MSG, sPosMenuKey, sSeqNo);
|
||
|
||
//#15606 제휴서비스 결제 프로세스 개선 start
|
||
//기능키를 넘겨 해당 기능키의 mot만 가져오도록 처리
|
||
//기존
|
||
//LoadMotPayHdr(m_cPosStatus.Sale.SaleMainPayStep);
|
||
//변경
|
||
LoadMotPayHdr(m_cPosStatus.Sale.SaleMainPayStep, sPosMenuKey);
|
||
//#15606 제휴서비스 결제 프로세스 개선 end
|
||
|
||
//LoadMotPayHdr(sPAY_STEP);
|
||
}
|
||
#endregion
|
||
|
||
#region 결제 MOT 처리
|
||
/// <summary>
|
||
/// 결제 MOT 초기화
|
||
/// </summary>
|
||
private void SetMotPayInit()
|
||
{
|
||
try
|
||
{
|
||
foreach (Control control in pnlCardMot.Controls)
|
||
{
|
||
if (control is UI.CsmButton)
|
||
{
|
||
if (control.Text != "∧" && control.Text != " ∨")
|
||
{
|
||
control.Text = "";
|
||
control.Tag = "";
|
||
control.Visible = true;
|
||
}
|
||
}
|
||
}
|
||
|
||
rtbMotPayTxt.Text = "";
|
||
picMotPayImg.Image = null;
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
||
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
||
}
|
||
}
|
||
/// <summary>
|
||
/// 결제 MOT 헤더 로드
|
||
/// </summary>
|
||
/// <param name="iStep"></param>
|
||
//#15606 제휴서비스 결제 프로세스 개선 start
|
||
//기능키를 넘겨 해당 기능키의 mot만 가져오도록 처리
|
||
//기존
|
||
//protected void LoadMotPayHdr(string sStep)
|
||
//변경
|
||
protected void LoadMotPayHdr(string sStep, string sPosMenuKey)
|
||
//#15606 제휴서비스 결제 프로세스 개선 end
|
||
{
|
||
//헤더 로드
|
||
m_alMotDtl.Clear();
|
||
|
||
int iPage = 1;
|
||
int iSeq = 1;
|
||
|
||
SetMotPayInit();
|
||
|
||
//#15606 제휴서비스 결제 프로세스 개선 start
|
||
//기능키를 넘겨 해당 기능키의 mot만 가져오도록 처리
|
||
//기존
|
||
//DataTable dt = m_cDataCommon.SelectMOT(PosMst.MST_MOT_MSG.TABLE_NAME, sStep, "", "");
|
||
//변경
|
||
DataTable dt = m_cDataCommon.SelectMOT(PosMst.MST_MOT_MSG.TABLE_NAME, sStep, sPosMenuKey, "");
|
||
//#15606 제휴서비스 결제 프로세스 개선 end
|
||
|
||
if (dt == null || dt.Rows.Count <= 0) return;
|
||
|
||
//배열 담기
|
||
foreach (DataRow dr in dt.Rows)
|
||
{
|
||
if (iSeq == 6)
|
||
{
|
||
iPage += 1;
|
||
iSeq = 1;
|
||
}
|
||
|
||
// 페이지 번호, 버튼명, 명, 태그 값
|
||
m_alMotDtl.Add(new string[] { iPage.ToString(), string.Format("{0}{1:00}",MotbtnName,iSeq), CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.MOT_NM)
|
||
,string.Format("{0}^{1}^{2}^{3}",CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.MSG_TYPE),CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.CNNT_ID)
|
||
,CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.SEQ_NO),CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.IMG_NM))
|
||
,CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.CNNT_ID)
|
||
});
|
||
|
||
//// 페이지 번호, 버튼명, 명, 태그 값
|
||
//m_alMotDtl.Add(new string[] { iPage.ToString(), string.Format("{0}{1:00}",MotbtnName,iSeq), CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.MOT_NM),
|
||
// CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.MSG_TYPE) + CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.CNNT_ID) + CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.IMG_NM)});
|
||
|
||
iSeq += 1;
|
||
}
|
||
|
||
// 보여주기
|
||
iNowPage = 1;
|
||
iMaxPage = iPage;
|
||
|
||
SetBtnMotPay();
|
||
|
||
//#15606 제휴서비스 결제 프로세스 개선 start
|
||
//1:1 매칭인 경우에만 해당 mot 활성화
|
||
//기존
|
||
/*
|
||
//2016-10-25 조성완과장 요청으로 신용카드 일때 선택 안함!
|
||
if (m_sFuncKey != PosKey.MENU_KEY.CREDIT_CARD)
|
||
{
|
||
if (dt.Rows.Count > 0) FindFuncMot(); //BtnMotPay_Click(BtnMotPay01, null);
|
||
}
|
||
*/
|
||
//변경
|
||
if (dt.Rows.Count == 1) FindFuncMot();
|
||
//#15606 제휴서비스 결제 프로세스 개선 end
|
||
|
||
}
|
||
|
||
private void FindFuncMot()
|
||
{
|
||
try
|
||
{
|
||
if (m_alMotDtl == null || iMaxPage == 0) return;
|
||
|
||
foreach (string[] atmp in m_alMotDtl)
|
||
{
|
||
if (atmp[4] == m_sFuncKey)
|
||
{
|
||
|
||
BtnMotPay01.Text = atmp[2].ToString();
|
||
BtnMotPay01.Tag = atmp[3].ToString();
|
||
|
||
iNowPage = CmUtil.IntParse(atmp[0]);
|
||
|
||
string sTmp;
|
||
|
||
sTmp = BtnMotPay01.Tag.ToString();
|
||
|
||
string[] aParam = sTmp.Split(new string[] { "^" }, StringSplitOptions.None);
|
||
|
||
string sCnntId = aParam[0];
|
||
string sMsgFlg = aParam[1];
|
||
string sSeqNo = aParam[2];
|
||
string sImgPath = aParam[3];
|
||
|
||
picMotPayImg.Image = ImageManager.GetImage(BaseCom.NxCDPPath + PosConst.MST_IMG_PATH.CDP_COM, sImgPath.Trim());
|
||
|
||
SetRichBoxMotMsg(rtbMotPayTxt, sCnntId, sMsgFlg, sSeqNo);
|
||
|
||
BtnMotPay02.Visible = false;
|
||
BtnMotPay03.Visible = false;
|
||
BtnMotPay04.Visible = false;
|
||
BtnMotPay05.Visible = false;
|
||
|
||
BtnMotPayUp.Enabled = true;
|
||
BtnMotPayDown.Enabled = true;
|
||
|
||
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);
|
||
}
|
||
}
|
||
|
||
|
||
/// <summary>
|
||
/// 결제 MOT 버튼 셋팅
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
public bool SetBtnMotPay()
|
||
{
|
||
try
|
||
{
|
||
SetMotPayInit();
|
||
|
||
if (m_alMotDtl == null || iMaxPage == 0) return false;
|
||
|
||
int iStrtNum = 1;
|
||
foreach (string[] atmp in m_alMotDtl)
|
||
{
|
||
if (atmp[0] == iNowPage.ToString())
|
||
{
|
||
Cosmos.UI.CsmButton btnCtl = (Cosmos.UI.CsmButton)pnlCardMot.Controls[atmp[1]];
|
||
|
||
if (btnCtl != null)
|
||
{
|
||
btnCtl.Text = atmp[2];
|
||
btnCtl.Tag = atmp[3];
|
||
}
|
||
}
|
||
iStrtNum += 1;
|
||
}
|
||
|
||
if (iNowPage == 1)
|
||
{
|
||
BtnMotPayUp.Enabled = false;
|
||
}
|
||
else
|
||
{
|
||
BtnMotPayUp.Enabled = true;
|
||
}
|
||
|
||
if (iMaxPage == iNowPage)
|
||
{
|
||
BtnMotPayDown.Enabled = false;
|
||
}
|
||
else
|
||
{
|
||
BtnMotPayDown.Enabled = true;
|
||
}
|
||
|
||
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>
|
||
/// 결제 MOT 버튼 클릭
|
||
/// </summary>
|
||
/// <param name="sender"></param>
|
||
/// <param name="e"></param>
|
||
private void BtnMotPay_Click(object sender, EventArgs e)
|
||
{
|
||
try
|
||
{
|
||
if (((UI.CsmButton)sender).Text == "") return;
|
||
|
||
if (BtnMotPay02.Visible == false)
|
||
{
|
||
SetBtnMotPay();
|
||
}
|
||
else
|
||
{
|
||
|
||
if (((UI.CsmButton)sender) == BtnMotPayUp)
|
||
{
|
||
if (iNowPage == 1) return;
|
||
iNowPage -= 1;
|
||
SetBtnMotPay();
|
||
}
|
||
else if (((UI.CsmButton)sender) == BtnMotPayDown)
|
||
{
|
||
if (iNowPage == iMaxPage) return;
|
||
iNowPage += 1;
|
||
SetBtnMotPay();
|
||
}
|
||
else
|
||
{
|
||
string sTmp;
|
||
|
||
BtnMotPay01.Text = ((UI.CsmButton)sender).Text;
|
||
BtnMotPay01.Tag = ((UI.CsmButton)sender).Tag;
|
||
|
||
|
||
sTmp = BtnMotPay01.Tag.ToString();
|
||
|
||
|
||
string[] aParam = sTmp.Split(new string[] { "^" }, StringSplitOptions.None);
|
||
|
||
string sCnntId = aParam[0];
|
||
string sMsgFlg = aParam[1];
|
||
string sSeqNo = aParam[2];
|
||
string sImgPath = aParam[3];
|
||
|
||
picMotPayImg.Image = ImageManager.GetImage(BaseCom.NxCDPPath + PosConst.MST_IMG_PATH.CDP_COM, sImgPath.Trim());
|
||
|
||
SetRichBoxMotMsg(rtbMotPayTxt, sCnntId, sMsgFlg, sSeqNo);
|
||
|
||
|
||
//sTmp = BtnMotPay01.Tag.ToString();
|
||
|
||
//picMotPayImg.Image = ImageManager.GetImage(BaseCom.NxCDPPath + PosConst.MST_IMG_PATH.CDP_COM, CmUtil.MidH(sTmp, 5, 50).Trim());
|
||
|
||
//SetRichBoxMotMsg(rtbMotPayTxt, CmUtil.MidH(sTmp, 0, 1), CmUtil.MidH(sTmp, 1, 4));
|
||
|
||
BtnMotPay02.Visible = false;
|
||
BtnMotPay03.Visible = false;
|
||
BtnMotPay04.Visible = false;
|
||
BtnMotPay05.Visible = false;
|
||
|
||
BtnMotPayUp.Enabled = true;
|
||
BtnMotPayDown.Enabled = true;
|
||
}
|
||
}
|
||
|
||
try
|
||
{
|
||
padInPut.ActiveControl.Focus();
|
||
}
|
||
catch { }
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
||
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
#region 리치박스 MOT 텍스트 설정
|
||
/// <summary>
|
||
/// 리치박스 MOT 텍스트 설정
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
protected bool SetRichBoxMotMsg(RichTextBox rtbMot, string sMsgTp, string sMsgFlag, string sSeqNo)
|
||
{
|
||
try
|
||
{
|
||
rtbMot.Text = "";
|
||
DataTable dtHead = m_cDataCommon.SelectMOT(PosMst.MST_MOT_MSG.TABLE_NAME, sMsgTp, sMsgFlag, sSeqNo);
|
||
if (dtHead != null && dtHead.Rows.Count > 0)
|
||
{
|
||
//#13753 POS MOT음성 기능 추가 개발요청 start,phj
|
||
//기존
|
||
/*
|
||
// 음성 사용 유무(0:미사용, 1:사용)
|
||
if (PosMstManager.GetPosOption(POS_OPTION.OPT309) != "0")
|
||
{
|
||
DataRow dr = dtHead.Rows[0];
|
||
if (CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.SOUND_FILE_DIV) == "01") // 00(없음), 01(WAVE), 02(TTS)
|
||
{
|
||
string sFilePath = BaseCom.NxCDPPath + PosConst.MST_IMG_PATH.CDP_COM + CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.SOUND_FILE_NM);
|
||
CmUtil.PlaySound(sFilePath);
|
||
}
|
||
else if (CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.SOUND_FILE_DIV) == "02") // 00(없음), 01(WAVE), 02(TTS)
|
||
{
|
||
CmUtil.SpeakByTTSEngine(m_cPosStatus.Base.Country, CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.TTS_DSCRP), 150);
|
||
}
|
||
}
|
||
*/
|
||
|
||
//변경
|
||
// PCKR인 경우에는 직영만 음성파일 재생하도록 함!
|
||
// PCKR이 아닌 경우에는 직영가맹 조건에 추가안함!
|
||
|
||
//#20180214 마스터 수신 시 포스에서 설정한 MOT 값 변경안되도록 수정 start,phj
|
||
// 기존
|
||
/*
|
||
if (((m_cPosStatus.Mst.CntryDiv == ItemConst.CNTRY_DIV.KR && m_cPosStatus.Mst.CorpDiv == ItemConst.CORP_DIV.PC) == false) || //PCKR이 아니거나
|
||
(((m_cPosStatus.Mst.CntryDiv == ItemConst.CNTRY_DIV.KR && m_cPosStatus.Mst.CorpDiv == ItemConst.CORP_DIV.PC) == true) && m_cPosStatus.Mst.DrtFrcsDiv == "10")) //PCKR이고 직영일 때!
|
||
{
|
||
*/
|
||
//#20180214 마스터 수신 시 포스에서 설정한 MOT 값 변경안되도록 수정 end,phj
|
||
|
||
//#13753 POS MOT음성 기능 추가 개발요청 - 20180222 음성MOT 옵션처리 start,phj
|
||
if (((m_cPosStatus.Mst.CntryDiv == ItemConst.CNTRY_DIV.KR && m_cPosStatus.Mst.CorpDiv == ItemConst.CORP_DIV.PC) == false) || //PCKR이 아니거나
|
||
(((m_cPosStatus.Mst.CntryDiv == ItemConst.CNTRY_DIV.KR && m_cPosStatus.Mst.CorpDiv == ItemConst.CORP_DIV.PC) == true) &&
|
||
PosMstManager.GetPosOption(POS_OPTION.OPT331) == "1")) //PCKR이고 MOT옵션 사용 일 때!
|
||
{
|
||
//#13753 POS MOT음성 기능 추가 개발요청 - 20180222 음성MOT 옵션처리 end,phj
|
||
|
||
// 음성 사용 유무(0:미사용, 1:사용)
|
||
if (PosMstManager.GetPosOption(POS_OPTION.OPT309) != "0")
|
||
{
|
||
DataRow dr = dtHead.Rows[0];
|
||
if (CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.SOUND_FILE_DIV) == "01") // 00(없음), 01(WAVE), 02(TTS)
|
||
{
|
||
string sFilePath = BaseCom.NxCDPPath + PosConst.MST_IMG_PATH.CDP_COM + CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.SOUND_FILE_NM);
|
||
CmUtil.PlaySound(sFilePath);
|
||
}
|
||
else if (CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.SOUND_FILE_DIV) == "02") // 00(없음), 01(WAVE), 02(TTS)
|
||
{
|
||
CmUtil.SpeakByTTSEngine(m_cPosStatus.Base.Country, CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG.DATA.TTS_DSCRP), 150);
|
||
}
|
||
}
|
||
}
|
||
//#13753 POS MOT음성 기능 추가 개발요청 end,phj
|
||
}
|
||
DataTable dtDetl = m_cDataCommon.SelectMOT(PosMst.MST_MOT_MSG_DTL.TABLE_NAME, sMsgTp, sMsgFlag, sSeqNo);
|
||
if (dtDetl == null || dtDetl.Rows.Count <= 0) return false;
|
||
|
||
int iStrtNum = 0;
|
||
foreach (DataRow dr in dtDetl.Rows)
|
||
{
|
||
string tmpStr = CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG_DTL.DATA.MSG);
|
||
|
||
//rtbMot.AppendText(tmpStr.Trim());
|
||
//rtbMot.Select(iStrtNum, tmpStr.Trim().Length);
|
||
|
||
rtbMot.AppendText(tmpStr);
|
||
rtbMot.Select(iStrtNum, tmpStr.Length);
|
||
|
||
rtbMot.SelectionColor = CmUtil.GetColorToString(CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG_DTL.DATA.FONT_COLOR)); // 백 컬러
|
||
|
||
int iFontSize = CmUtil.GetDataRowInt(dr, PosMst.MST_MOT_MSG_DTL.DATA.FONT_SIZE);
|
||
|
||
if (iFontSize <= 0)
|
||
iFontSize = 1;
|
||
|
||
rtbMot.SelectionFont = new Font(m_cPosStatus.Base.FONT, iFontSize);
|
||
|
||
if (CmUtil.GetDataRowStr(dr, PosMst.MST_MOT_MSG_DTL.DATA.NEW_LINE_YN) == "1")
|
||
{
|
||
rtbMot.AppendText("\n");
|
||
iStrtNum += 1;
|
||
}
|
||
|
||
//iStrtNum += tmpStr.Trim().Length; // +1;
|
||
iStrtNum += tmpStr.Length; // +1;
|
||
}
|
||
|
||
rtbMot.Select(0, 0);
|
||
rtbMot.Refresh();
|
||
|
||
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;
|
||
}
|
||
}
|
||
#endregion
|
||
|
||
private void rtbMotMain_Enter(object sender, EventArgs e)
|
||
{
|
||
padInPut.SetActiveFocus();
|
||
}
|
||
|
||
private void rtbMotPayTxt_Enter(object sender, EventArgs e)
|
||
{
|
||
padInPut.SetActiveFocus();
|
||
}
|
||
|
||
//#15606 제휴서비스 결제 프로세스 개선 start
|
||
//제휴통합 창에서 상단 제휴사 선택시 mot및 음성mot 재설정
|
||
|
||
#region 제휴통합 MOT 설정
|
||
/// <summary>
|
||
/// 제휴통합 MOT 설정
|
||
/// </summary>
|
||
public void SetMotMobileUnity(string sPosMenuKey, string sPAY_STEP)
|
||
{
|
||
try
|
||
{
|
||
m_sFuncKey = sPosMenuKey;
|
||
|
||
SetRichBoxMotMsg(rtbMotMain, PosConst.MOT_MSG_TYPE.DSP_SCN_MSG, sPosMenuKey, "");
|
||
|
||
LoadMotPayHdr(m_cPosStatus.Sale.SaleMainPayStep, sPosMenuKey);
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
WinManager.ExceptionMessage(System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
||
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name + "." + System.Reflection.MethodBase.GetCurrentMethod().Name + "()", ex.Message);
|
||
}
|
||
}
|
||
#endregion 제휴통합 MOT 설정
|
||
|
||
//#15606 제휴서비스 결제 프로세스 개선 end
|
||
}
|
||
}
|