// DLG_TSCmd_Modify.cpp : implementation file // #include "stdafx.h" #include "smsmanager.h" #include "DLG_TSCmd_Modify.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // DLG_TSCmd_Modify dialog #include "TSCmdDlg.h" DLG_TSCmd_Modify::DLG_TSCmd_Modify(CWnd* pParent /*=NULL*/) : CDialog(DLG_TSCmd_Modify::IDD, pParent) { //{{AFX_DATA_INIT(DLG_TSCmd_Modify) m_strBZ = _T(""); m_strDSName = _T(""); m_strDSPasswd = _T(""); m_strDSQuery = _T(""); m_strDSRet = _T(""); m_strDSUser = _T(""); m_bWeek = FALSE; m_strName = _T(""); m_strOperCmd = _T(""); m_lPrice = 0; m_strRetMsgErr = _T(""); m_strRetMsgErrCmd = _T(""); m_strRetMsgOK = _T(""); m_lSendNum = 0; m_tSend = COleDateTime::GetCurrentTime(); m_bWeek_0 = FALSE; m_bWeek_1 = FALSE; m_bWeek_2 = FALSE; m_bWeek_3 = FALSE; m_bWeek_4 = FALSE; m_bWeek_5 = FALSE; m_bWeek_6 = FALSE; m_lType = -1; m_lDSType = -1; //}}AFX_DATA_INIT m_pTSCmdDlg = (CTSCmdDlg *)pParent; memset( &m_TSCmdData , 0 , sizeof(m_TSCmdData)); m_bAdd = false; m_Pos = 0; } void DLG_TSCmd_Modify::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(DLG_TSCmd_Modify) DDX_Text(pDX, IDC_TSCMD_MODIFY_BZ, m_strBZ); DDV_MaxChars(pDX, m_strBZ, 200); DDX_Text(pDX, IDC_TSCMD_MODIFY_DS_NAME, m_strDSName); DDV_MaxChars(pDX, m_strDSName, 30); DDX_Text(pDX, IDC_TSCMD_MODIFY_DS_PASSWD, m_strDSPasswd); DDV_MaxChars(pDX, m_strDSPasswd, 30); DDX_Text(pDX, IDC_TSCMD_MODIFY_DS_QUERY, m_strDSQuery); DDV_MaxChars(pDX, m_strDSQuery, 126); DDX_Text(pDX, IDC_TSCMD_MODIFY_DS_RET, m_strDSRet); DDV_MaxChars(pDX, m_strDSRet, 126); DDX_Text(pDX, IDC_TSCMD_MODIFY_DS_USER, m_strDSUser); DDV_MaxChars(pDX, m_strDSUser, 30); DDX_Check(pDX, IDC_TSCMD_MODIFY_ISWEEK, m_bWeek); DDX_Text(pDX, IDC_TSCMD_MODIFY_NAME, m_strName); DDV_MaxChars(pDX, m_strName, 28); DDX_Text(pDX, IDC_TSCMD_MODIFY_OPERCMD, m_strOperCmd); DDV_MaxChars(pDX, m_strOperCmd, 10); DDX_Text(pDX, IDC_TSCMD_MODIFY_PRICE, m_lPrice); DDV_MinMaxUInt(pDX, m_lPrice, 0, 10000); DDX_Text(pDX, IDC_TSCMD_MODIFY_RETMSG_ERR, m_strRetMsgErr); DDV_MaxChars(pDX, m_strRetMsgErr, 250); DDX_Text(pDX, IDC_TSCMD_MODIFY_RETMSG_ERRCMD, m_strRetMsgErrCmd); DDV_MaxChars(pDX, m_strRetMsgErrCmd, 250); DDX_Text(pDX, IDC_TSCMD_MODIFY_RETMSG_OK, m_strRetMsgOK); DDV_MaxChars(pDX, m_strRetMsgOK, 250); DDX_Text(pDX, IDC_TSCMD_MODIFY_SENDNUM, m_lSendNum); DDX_DateTimeCtrl(pDX, IDC_TSCMD_MODIFY_SENDTIME1, m_tSend); DDX_Check(pDX, IDC_TSCMD_MODIFY_WEEK_0, m_bWeek_0); DDX_Check(pDX, IDC_TSCMD_MODIFY_WEEK_1, m_bWeek_1); DDX_Check(pDX, IDC_TSCMD_MODIFY_WEEK_2, m_bWeek_2); DDX_Check(pDX, IDC_TSCMD_MODIFY_WEEK_3, m_bWeek_3); DDX_Check(pDX, IDC_TSCMD_MODIFY_WEEK_4, m_bWeek_4); DDX_Check(pDX, IDC_TSCMD_MODIFY_WEEK_5, m_bWeek_5); DDX_Check(pDX, IDC_TSCMD_MODIFY_WEEK_6, m_bWeek_6); DDX_CBIndex(pDX, IDC_TSCMD_MODIFY_TYPE, m_lType); DDX_CBIndex(pDX, IDC_TSCMD_MODIFY_DS_TYPE, m_lDSType); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(DLG_TSCmd_Modify, CDialog) //{{AFX_MSG_MAP(DLG_TSCmd_Modify) ON_BN_CLICKED(IDC_TSCMD_MODIFY_ISWEEK, OnTscmdModifyIsweek) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // DLG_TSCmd_Modify message handlers ANS_TSCmd_SeeData DLG_TSCmd_Modify::GetParam() { return m_TSCmdData; } BOOL DLG_TSCmd_Modify::OnInitDialog() { CDialog::OnInitDialog(); m_lType = m_TSCmdData.lType; m_strName = m_TSCmdData.szName; m_strOperCmd = m_TSCmdData.szOperCmd; m_lPrice = m_TSCmdData.lPrice; if ( m_lPrice <=0 || m_lPrice>10000 ) m_lPrice=10; m_lSendNum = m_TSCmdData.lSendNum; if ( m_lSendNum <=0 || m_lSendNum>100 ) m_lSendNum=1; m_tSend = m_TSCmdData.tDZSendTime; if ( m_tSend.GetStatus()!=0 ) m_tSend.SetDateTime(1900,1,1,0,0,0); m_bWeek = m_TSCmdData.bWeek; if ( m_TSCmdData.szWeekDay[0] == '1' ) m_bWeek_0 = true; if ( m_TSCmdData.szWeekDay[1] == '1' ) m_bWeek_1 = true; if ( m_TSCmdData.szWeekDay[2] == '1' ) m_bWeek_2 = true; if ( m_TSCmdData.szWeekDay[3] == '1' ) m_bWeek_3 = true; if ( m_TSCmdData.szWeekDay[4] == '1' ) m_bWeek_4 = true; if ( m_TSCmdData.szWeekDay[5] == '1' ) m_bWeek_5 = true; if ( m_TSCmdData.szWeekDay[6] == '1' ) m_bWeek_6 = true; m_strBZ = m_TSCmdData.szBZ; m_lDSType = m_TSCmdData.DSType; m_strDSName = m_TSCmdData.DSName; m_strDSUser = m_TSCmdData.DSUser; m_strDSPasswd = m_TSCmdData.DSPasswd; m_strDSQuery = m_TSCmdData.DSQuery; m_strDSRet = m_TSCmdData.DSRet; m_strRetMsgOK = m_TSCmdData.RetMsg_OK; m_strRetMsgErr = m_TSCmdData.RetMsg_Err; m_strRetMsgErrCmd = m_TSCmdData.RetMsg_ErrCmd; UpdateData(false); OnTscmdModifyIsweek(); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void DLG_TSCmd_Modify::SetParam(ANS_TSCmd_SeeData data, POSITION pos, BOOL bAdd) { m_TSCmdData = data; m_Pos = pos; m_bAdd = bAdd; } void DLG_TSCmd_Modify::OnTscmdModifyIsweek() { if ( !UpdateData(true) ) return ; if ( m_bWeek ) { GetDlgItem(IDC_TSCMD_MODIFY_WEEK_0)->EnableWindow(true); GetDlgItem(IDC_TSCMD_MODIFY_WEEK_1)->EnableWindow(true); GetDlgItem(IDC_TSCMD_MODIFY_WEEK_2)->EnableWindow(true); GetDlgItem(IDC_TSCMD_MODIFY_WEEK_3)->EnableWindow(true); GetDlgItem(IDC_TSCMD_MODIFY_WEEK_4)->EnableWindow(true); GetDlgItem(IDC_TSCMD_MODIFY_WEEK_5)->EnableWindow(true); GetDlgItem(IDC_TSCMD_MODIFY_WEEK_6)->EnableWindow(true); } else { GetDlgItem(IDC_TSCMD_MODIFY_WEEK_0)->EnableWindow(false); GetDlgItem(IDC_TSCMD_MODIFY_WEEK_1)->EnableWindow(false); GetDlgItem(IDC_TSCMD_MODIFY_WEEK_2)->EnableWindow(false); GetDlgItem(IDC_TSCMD_MODIFY_WEEK_3)->EnableWindow(false); GetDlgItem(IDC_TSCMD_MODIFY_WEEK_4)->EnableWindow(false); GetDlgItem(IDC_TSCMD_MODIFY_WEEK_5)->EnableWindow(false); GetDlgItem(IDC_TSCMD_MODIFY_WEEK_6)->EnableWindow(false); } } void DLG_TSCmd_Modify::OnOK() { if ( !UpdateData(true) ) return ; if ( m_strName.GetLength()<= 0 ) { MessageBox( _T("业务名称不能为空,请输入!"),_T("错误") , MB_ICONWARNING ); return ; } if ( m_pTSCmdDlg->FindSPName(m_strName,m_Pos ) ) { MessageBox( _T("业务名称已在使用,请更换另外的业务名称!") , _T("错误") , MB_ICONWARNING ); return ; } if ( m_strOperCmd.GetLength()<= 0 ) { MessageBox( _T("业务指令不能为空,请输入!"),_T("错误") , MB_ICONWARNING ); return ; } if ( m_pTSCmdDlg->FindOperCmd( m_strOperCmd,m_Pos ) ) { MessageBox( _T("业务指令已在使用,请更换另外的业务指令!") , _T("错误") , MB_ICONWARNING ); return ; } if ( m_bWeek_0 ) m_TSCmdData.szWeekDay[0] = '1'; else m_TSCmdData.szWeekDay[0] = '0'; if ( m_bWeek_1 ) m_TSCmdData.szWeekDay[1] = '1'; else m_TSCmdData.szWeekDay[1] = '0'; if ( m_bWeek_2 ) m_TSCmdData.szWeekDay[2] = '1'; else m_TSCmdData.szWeekDay[2] = '0'; if ( m_bWeek_3 ) m_TSCmdData.szWeekDay[3] = '1'; else m_TSCmdData.szWeekDay[3] = '0'; if ( m_bWeek_4 ) m_TSCmdData.szWeekDay[4] = '1'; else m_TSCmdData.szWeekDay[4] = '0'; if ( m_bWeek_5 ) m_TSCmdData.szWeekDay[5] = '1'; else m_TSCmdData.szWeekDay[5] = '0'; if ( m_bWeek_6 ) m_TSCmdData.szWeekDay[6] = '1'; else m_TSCmdData.szWeekDay[6] = '0'; if ( m_bWeek && !_tcsncmp(m_TSCmdData.szWeekDay,_T("0000000"),7) ) { MessageBox( _T("你设定了按星期发送,但没设定具体的发送星期!") , _T("错误") , MB_ICONWARNING ); return ; } if ( m_tSend.GetHour() == 0 ) { MessageBox( _T("必须设定具体的发送时间!") , _T("错误") , MB_ICONWARNING ); return ; } m_TSCmdData.lType = m_lType; _tcscpy(m_TSCmdData.szName,m_strName); _tcscpy(m_TSCmdData.szOperCmd,m_strOperCmd); _tcscpy(m_TSCmdData.szBZ,m_strBZ); m_TSCmdData.lPrice = m_lPrice; m_TSCmdData.lSendNum= m_lSendNum; m_TSCmdData.bWeek = m_bWeek; m_tSend.GetAsSystemTime(m_TSCmdData.tDZSendTime); m_TSCmdData.DSType = m_lDSType; _tcscpy(m_TSCmdData.DSName, m_strDSName); _tcscpy(m_TSCmdData.DSUser , m_strDSUser); _tcscpy(m_TSCmdData.DSPasswd , m_strDSPasswd); _tcscpy(m_TSCmdData.DSQuery , m_strDSQuery); _tcscpy(m_TSCmdData.DSRet , m_strDSRet); _tcscpy(m_TSCmdData.RetMsg_OK , m_strRetMsgOK); _tcscpy(m_TSCmdData.RetMsg_Err , m_strRetMsgErr); _tcscpy(m_TSCmdData.RetMsg_ErrCmd , m_strRetMsgErrCmd); CDialog::OnOK(); }