// DLG_Corp_Oper_Change_Mms.cpp : implementation file // #include "stdafx.h" #include "smsmanager.h" #include "DLG_Corp_Oper_Change_Mms.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // DLG_Corp_Oper_Change_Mms dialog #include "MainFrm.h" #include "UserDlg.h" DLG_Corp_Oper_Change_Mms::DLG_Corp_Oper_Change_Mms(CWnd* pParent /*=NULL*/) : CDialog(DLG_Corp_Oper_Change_Mms::IDD, pParent) { //{{AFX_DATA_INIT(DLG_Corp_Oper_Change_Mms) m_strBZ = _T(""); m_strCorpID = _T(""); m_strCorpName = _T(""); m_strOperName = _T(""); m_lBGL = 0; m_lDayMaxSend = 0; m_lMaxSize = 0; m_strPriceOne = _T(""); m_bSendType_CMCC = FALSE; m_bSendType_Phs = FALSE; m_bSendType_Telcom = FALSE; m_bSendType_Unicom = FALSE; m_bSH = FALSE; m_bSY = FALSE; m_lTD_CMCC = -1; m_lTD_Phs = -1; m_lTD_Telcom = -1; m_lTD_Unicom = -1; m_strUpMms = _T(""); m_bOutAll = FALSE; //}}AFX_DATA_INIT m_pUserDlg = (CUserDlg *)pParent; m_lChangeType = 0; memset(&m_mmsPro , 0 , sizeof(m_mmsPro)); memset(&m_CorpData,0 ,sizeof(m_CorpData)); m_lMmsSmUsed = 0; } void DLG_Corp_Oper_Change_Mms::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(DLG_Corp_Oper_Change_Mms) DDX_Text(pDX, IDC_CORP_OPER_OPEN_BZ, m_strBZ); DDV_MaxChars(pDX, m_strBZ, 120); DDX_Text(pDX, IDC_CORP_OPER_OPEN_CORPID, m_strCorpID); DDX_Text(pDX, IDC_CORP_OPER_OPEN_CORPNAME, m_strCorpName); DDX_Text(pDX, IDC_CORP_OPER_OPEN_OPERNAME, m_strOperName); DDV_MaxChars(pDX, m_strOperName, 30); DDX_Text(pDX, IDC_CORP_MODIFY_MMS_BGL, m_lBGL); DDV_MinMaxLong(pDX, m_lBGL, 0, 100); DDX_Text(pDX, IDC_CORP_MODIFY_MMS_DAYMAXSEND, m_lDayMaxSend); DDX_Text(pDX, IDC_CORP_MODIFY_MMS_MAXSIZE, m_lMaxSize); DDX_Text(pDX, IDC_CORP_MODIFY_MMS_PRICEONE, m_strPriceOne); DDX_Check(pDX, IDC_CORP_MODIFY_MMS_SENDTYPE_CMCC, m_bSendType_CMCC); DDX_Check(pDX, IDC_CORP_MODIFY_MMS_SENDTYPE_PHS, m_bSendType_Phs); DDX_Check(pDX, IDC_CORP_MODIFY_MMS_SENDTYPE_TELCOM, m_bSendType_Telcom); DDX_Check(pDX, IDC_CORP_MODIFY_MMS_SENDTYPE_UNICOM, m_bSendType_Unicom); DDX_Check(pDX, IDC_CORP_MODIFY_MMS_SH, m_bSH); DDX_Check(pDX, IDC_CORP_MODIFY_MMS_SY, m_bSY); DDX_CBIndex(pDX, IDC_CORP_MODIFY_MMS_TD_CMCC, m_lTD_CMCC); DDX_CBIndex(pDX, IDC_CORP_MODIFY_MMS_TD_PHS, m_lTD_Phs); DDX_CBIndex(pDX, IDC_CORP_MODIFY_MMS_TD_TELCOM, m_lTD_Telcom); DDX_CBIndex(pDX, IDC_CORP_MODIFY_MMS_TD_UNICOM, m_lTD_Unicom); DDX_Text(pDX, IDC_CORP_MODIFY_MMS_UPMMS, m_strUpMms); DDV_MaxChars(pDX, m_strUpMms, 60); DDX_Check(pDX, IDC_CORP_MODIFY_TD_OUTALL, m_bOutAll); //}}AFX_DATA_MAP DDX_Text(pDX, IDC_CORP_MODIFY_MMS_MMSSMUSED, m_lMmsSmUsed); } BEGIN_MESSAGE_MAP(DLG_Corp_Oper_Change_Mms, CDialog) //{{AFX_MSG_MAP(DLG_Corp_Oper_Change_Mms) //}}AFX_MSG_MAP ON_BN_CLICKED(IDOK, &DLG_Corp_Oper_Change_Mms::OnBnClickedOk) END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // DLG_Corp_Oper_Change_Mms message handlers void DLG_Corp_Oper_Change_Mms::SetParam(ANS_Corp_SeeData pData,ANS_MmsPro mmsPro, long lType) { m_CorpData = pData; m_mmsPro = mmsPro; m_lChangeType = lType; } ANS_MmsPro DLG_Corp_Oper_Change_Mms::GetParam() { return m_mmsPro; } BOOL DLG_Corp_Oper_Change_Mms::OnInitDialog() { CDialog::OnInitDialog(); m_tt.Create(this); m_tt.Activate(true); m_tt.SendMessage(TTM_SETMAXTIPWIDTH,0,300); #ifdef SMSCENTER_ONE CString strGmcc=_T("自动选择->全网:021299070181\r\n") \ _T("第二通道->全网:021299070181\r\n") \ _T("第六通道->全网:0532\r\n") \ _T("第七通道->全网:025\r\n") \ _T("第八通道->全网:025\r\n\r\n"); CString strUnic=_T("自动选择->省网:无;全网:106550201188\r\n") \ _T("第一通道->省网:无;全网:106550201188\r\n") \ _T("第二通道->未启用\r\n") \ _T("第三通道->省网:无;全网:799950288\r\n") \ _T("第四通道->省网:无;全网:1065505706588\r\n") \ _T("第五通道->省网:无;全网:106551688964\r\n"); CString strPhs =_T("自动选择->省网:11870201003;全网:未启用\r\n") \ _T("第一通道->省网:11870201003;全网:未启用\r\n") \ _T("第二通道->省网:11870201003;全网:996995399\r\n") \ _T("第三通道->省网:11870201003;全网:9895600988\r\n") \ _T("第四通道->省网:11870201003;全网:021299070181\r\n"); CString strTelcom =_T("自动选择->省网:无;全网:1065902001668\r\n") \ _T("第一通道->省网:无;全网:1065902001668\r\n"); #endif #ifdef SMSCENTER_TWO CString strGmcc=_T("自动选择->省网:无;全网:106571005000069\r\n") \ _T("第一通道->省网:无;全网:106571005000069\r\n") \ _T("第二通道->未启用\r\n") \ _T("第三通道->未启用\r\n"); CString strUnic=_T("自动选择->省网:无;全网:106550201181\r\n") \ _T("第一通道->省网:无;全网:106550201181\r\n") \ _T("第二通道->未启用\r\n") \ _T("第三通道->未启用\r\n"); CString strPhs =_T("自动选择->未启用\r\n") \ _T("第一通道->未启用\r\n") \ _T("第二通道->未启用\r\n"); CString strTelcom =_T("自动选择->省网:无;全网:1065902001668\r\n") \ _T("第一通道->省网:无;全网:1065902001668\r\n"); #endif /* m_tt.AddTool( GetDlgItem(IDC_CORP_MODIFY_MMS_TD_CMCC), strGmcc); m_tt.AddTool( GetDlgItem(IDC_CORP_MODIFY_MMS_TD_UNICOM), strUnic); m_tt.AddTool( GetDlgItem(IDC_CORP_MODIFY_MMS_TD_PHS), strPhs); m_tt.AddTool( GetDlgItem(IDC_CORP_MODIFY_MMS_TD_TELCOM), strTelcom); */ m_strCorpID.Format(_T("%d"), m_mmsPro.mmsPro.lCorpID ); m_strCorpName = m_CorpData.szCorpName; TCHAR szBuf[32]={0}; _tcscpy(szBuf , m_mmsPro.mmsPro.szTD); _tcscat(szBuf , _T("0000000000000000") ); this->m_lTD_CMCC = szBuf[0]-'0'; this->m_lTD_Unicom = szBuf[1]-'0'; this->m_lTD_Phs = szBuf[2]-'0'; this->m_lTD_Telcom = szBuf[3]-'0'; m_bOutAll = m_mmsPro.mmsPro.bMmsOutAll; _tcscpy(szBuf , m_mmsPro.mmsPro.szSendType); _tcscat(szBuf , _T("0000000000000000") ); this->m_bSendType_CMCC = szBuf[0]=='2'?false:true; this->m_bSendType_Unicom = szBuf[1]=='2'?false:true; this->m_bSendType_Phs = szBuf[2]=='2'?false:true; this->m_bSendType_Telcom = szBuf[3]=='2'?false:true; m_strPriceOne.Format( _T("%.4f") , m_mmsPro.mmsPro.fMmsPriceOne ); m_lDayMaxSend = m_mmsPro.mmsPro.lMmsDayMaxSend; m_lMaxSize = m_mmsPro.mmsPro.lMmsMaxSize; m_lBGL = m_mmsPro.mmsPro.lMmsReportPer; m_bSY = m_mmsPro.mmsPro.bMmsSY; m_bSH = m_mmsPro.mmsPro.bMmsSH; m_strUpMms = m_mmsPro.mmsPro.szUpMms; m_lMmsSmUsed = m_mmsPro.mmsPro.lMmsSmUsed; switch(m_lChangeType) { case 500: //改单价 ((CEdit*)GetDlgItem(IDC_CORP_MODIFY_MMS_PRICEONE))->SetReadOnly(false); break; case 501: //附件大小 ((CEdit*)GetDlgItem(IDC_CORP_MODIFY_MMS_MAXSIZE))->SetReadOnly(false); break; case 502: //状态报告率 ((CEdit*)GetDlgItem(IDC_CORP_MODIFY_MMS_BGL))->SetReadOnly(false); break; case 503: //通道 GetDlgItem(IDC_CORP_MODIFY_TD_OUTALL)->EnableWindow(true); GetDlgItem(IDC_CORP_MODIFY_MMS_TD_CMCC)->EnableWindow(true); GetDlgItem(IDC_CORP_MODIFY_MMS_TD_UNICOM)->EnableWindow(true); GetDlgItem(IDC_CORP_MODIFY_MMS_TD_PHS)->EnableWindow(true); GetDlgItem(IDC_CORP_MODIFY_MMS_TD_TELCOM)->EnableWindow(true); break; case 504: //日最大发送 ((CEdit*)GetDlgItem(IDC_CORP_MODIFY_MMS_DAYMAXSEND))->SetReadOnly(false); break; case 505: //深夜 GetDlgItem(IDC_CORP_MODIFY_MMS_SY)->EnableWindow(true); break; case 506: //审核 GetDlgItem(IDC_CORP_MODIFY_MMS_SH)->EnableWindow(true); break; case 507: //UpMms ((CEdit*)GetDlgItem(IDC_CORP_MODIFY_MMS_UPMMS))->SetReadOnly(false); break; case 508: //发送权限 GetDlgItem(IDC_CORP_MODIFY_MMS_SENDTYPE_CMCC)->EnableWindow(true); GetDlgItem(IDC_CORP_MODIFY_MMS_SENDTYPE_UNICOM)->EnableWindow(true); GetDlgItem(IDC_CORP_MODIFY_MMS_SENDTYPE_PHS)->EnableWindow(true); GetDlgItem(IDC_CORP_MODIFY_MMS_SENDTYPE_TELCOM)->EnableWindow(true); break; case 509: //彩信阀值 ((CEdit*)GetDlgItem(IDC_CORP_MODIFY_MMS_MMSSMUSED))->SetReadOnly(false); break; case 510: //一键开通视频短信 m_lMaxSize = 2000; //彩信容量 m_lDayMaxSend = 20000; //日最大发送量20000条 //所有发送通道为2通道 this->m_lTD_CMCC = 2; this->m_lTD_Unicom =2; this->m_lTD_Phs = 0; this->m_lTD_Telcom = 2; m_bOutAll = true; //允许全网 //所有通道权限打开 this->m_bSendType_CMCC =true; this->m_bSendType_Unicom = true; this->m_bSendType_Phs = true; this->m_bSendType_Telcom = true; case 511: //更改所有安全设置 ((CEdit*)GetDlgItem(IDC_CORP_MODIFY_MMS_MAXSIZE))->SetReadOnly(false); GetDlgItem(IDC_CORP_MODIFY_TD_OUTALL)->EnableWindow(true); GetDlgItem(IDC_CORP_MODIFY_MMS_TD_CMCC)->EnableWindow(true); GetDlgItem(IDC_CORP_MODIFY_MMS_TD_UNICOM)->EnableWindow(true); GetDlgItem(IDC_CORP_MODIFY_MMS_TD_PHS)->EnableWindow(true); GetDlgItem(IDC_CORP_MODIFY_MMS_TD_TELCOM)->EnableWindow(true); GetDlgItem(IDC_CORP_MODIFY_MMS_SENDTYPE_CMCC)->EnableWindow(true); GetDlgItem(IDC_CORP_MODIFY_MMS_SENDTYPE_UNICOM)->EnableWindow(true); GetDlgItem(IDC_CORP_MODIFY_MMS_SENDTYPE_PHS)->EnableWindow(true); GetDlgItem(IDC_CORP_MODIFY_MMS_SENDTYPE_TELCOM)->EnableWindow(true); ((CEdit*)GetDlgItem(IDC_CORP_MODIFY_MMS_DAYMAXSEND))->SetReadOnly(false); GetDlgItem(IDC_CORP_MODIFY_MMS_SY)->EnableWindow(true); GetDlgItem(IDC_CORP_MODIFY_MMS_SH)->EnableWindow(true); ((CEdit*)GetDlgItem(IDC_CORP_MODIFY_MMS_MMSSMUSED))->SetReadOnly(false); break; } if ( m_pUserDlg->m_pMainFrame->GetUserPurview(PURVIEW_MANAGER_ADD,false) ) //有管理员权限 { GetDlgItem(IDC_CORP_MODIFY_MMS_BGL)->ShowWindow(SW_SHOW); GetDlgItem(IDC_CORP_MODIFY_MMS_BGL_S)->ShowWindow(SW_SHOW); } //置登录名 m_strOperName = m_pUserDlg->m_pMainFrame->m_Setup.szUser; UpdateData(false); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } BOOL DLG_Corp_Oper_Change_Mms::PreTranslateMessage(MSG* pMsg) { m_tt.RelayEvent(pMsg); return CDialog::PreTranslateMessage(pMsg); } void DLG_Corp_Oper_Change_Mms::OnBnClickedOk() { if ( !UpdateData(true) ) return ; CString str; #ifdef SMSMANAGER_KF if ( m_strOperName.GetLength()<2 ) { MessageBox( _T("请输入操作员姓名") , _T("错误") , MB_ICONWARNING ); GetDlgItem(IDC_CORP_OPER_OPEN_OPERNAME)->SetFocus(); return ; } #endif /* if ( m_lChangeType==503 ) //改通道 { TCHAR szBuf[32]={0}; _tcscpy(szBuf , m_CorpData.szSMSTD); _tcscat(szBuf , _T("0000000000000000") ); long lOldTD = szBuf[0]-'0'; //判断是否能改 if (lOldTD!=m_lTD_Cmcc && //通道变更了 !( lOldTD==6 || lOldTD==17 || lOldTD == 27 || lOldTD==3 || lOldTD==14 || lOldTD == 24) && //旧通道不是严管通道 ( m_lTD_Cmcc==6 || m_lTD_Cmcc==17 || m_lTD_Cmcc == 27 || m_lTD_Cmcc==3 || m_lTD_Cmcc==14 || m_lTD_Cmcc == 24) )//新通道为严管通道 { if ( this->m_pUserDlg->m_pMainFrame->GetUserPurview(PURVIEW_CORP_SEE,false) ) { str.Format( _T("%d即将改成优质通道,此通道为严格控制,必须有特殊批准才能转!\r\n请确认已收到申请单并且得到批准?") , m_CorpData.lCorpID); int iRet = MessageBox( str , _T("严重注意") , MB_ICONWARNING |MB_YESNO|MB_DEFBUTTON2 ); if ( iRet != IDYES ) { return ; } } else { MessageBox( _T("目前此通道属于严格控制,暂不能更改,请换其它通道!") , _T("警告") , MB_ICONWARNING ); return ; } } } */ if ( m_lChangeType==500 ) { double lPriceOne = _tstof(m_strPriceOne); if ( lPriceOne<=0.05f ) { MessageBox( _T("彩信单价有误,请检查!") , _T("错误") , MB_ICONWARNING ); GetDlgItem( IDC_CORP_MODIFY_MMS_PRICEONE )->SetFocus(); return ; } if ( lPriceOne>0.50f ) { int iRet = MessageBox( _T("彩信单价可能有误,请确认!") , _T("提示") , MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 ); if ( iRet != IDYES ) { GetDlgItem( IDC_CORP_MODIFY_MMS_PRICEONE )->SetFocus(); return ; } } m_mmsPro.mmsPro.fMmsPriceOne = lPriceOne; } //获取短信通道 memset(m_CorpData.szSMSTD,0,sizeof(m_mmsPro.mmsPro.szTD)); m_mmsPro.mmsPro.szTD[0] = '0'+m_lTD_CMCC; m_mmsPro.mmsPro.szTD[1] = '0'+m_lTD_Unicom; m_mmsPro.mmsPro.szTD[2] = '0'+m_lTD_Phs; m_mmsPro.mmsPro.szTD[3] = '0'+m_lTD_Telcom; m_mmsPro.mmsPro.szTD[4] = 0; m_mmsPro.mmsPro.bMmsOutAll = m_bOutAll; //发送权限 m_mmsPro.mmsPro.szSendType[0] = m_bSendType_CMCC?'1':'2'; m_mmsPro.mmsPro.szSendType[1] = m_bSendType_Unicom?'1':'2'; m_mmsPro.mmsPro.szSendType[2] = m_bSendType_Phs?'1':'2'; m_mmsPro.mmsPro.szSendType[3] = m_bSendType_Telcom?'1':'2'; m_mmsPro.mmsPro.szSendType[4] = 0; m_mmsPro.mmsPro.lMmsDayMaxSend = m_lDayMaxSend; m_lDayMaxSend = m_mmsPro.mmsPro.lMmsDayMaxSend; m_mmsPro.mmsPro.lMmsMaxSize = m_lMaxSize; m_mmsPro.mmsPro.lMmsReportPer = m_lBGL; m_mmsPro.mmsPro.bMmsSY = m_bSY; m_mmsPro.mmsPro.bMmsSH = m_bSH; _tcscpy(m_mmsPro.mmsPro.szUpMms , m_strUpMms ); m_mmsPro.mmsPro.lMmsSmUsed = m_lMmsSmUsed; CDialog::OnOK(); }