234 lines
5.6 KiB
C++
234 lines
5.6 KiB
C++
// DLG_Corp_BZ.cpp : implementation file
|
|
//
|
|
|
|
#include "stdafx.h"
|
|
#include "smsmanager.h"
|
|
#include "DLG_Corp_BZ.h"
|
|
|
|
#ifdef _DEBUG
|
|
#define new DEBUG_NEW
|
|
#undef THIS_FILE
|
|
static char THIS_FILE[] = __FILE__;
|
|
#endif
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// DLG_Corp_BZ dialog
|
|
|
|
|
|
DLG_Corp_BZ::DLG_Corp_BZ(CWnd* pParent /*=NULL*/)
|
|
: CDialog(DLG_Corp_BZ::IDD, pParent)
|
|
{
|
|
//{{AFX_DATA_INIT(DLG_Corp_BZ)
|
|
m_strBZ = _T("");
|
|
//}}AFX_DATA_INIT
|
|
|
|
m_pSee = NULL;
|
|
m_pSeeData = NULL;
|
|
m_pMemberData = NULL;
|
|
|
|
m_lLXRSel = 0;
|
|
m_bSendSms = false;
|
|
}
|
|
|
|
|
|
void DLG_Corp_BZ::DoDataExchange(CDataExchange* pDX)
|
|
{
|
|
CDialog::DoDataExchange(pDX);
|
|
//{{AFX_DATA_MAP(DLG_Corp_BZ)
|
|
DDX_Control(pDX, IDC_CORP_BZ_SENDSMS, m_B_SendSms);
|
|
DDX_Control(pDX, IDC_CORP_BZ_LXR, m_L_LXRID);
|
|
DDX_Control(pDX, IDC_CORP_BZ_BZ2, m_E_Msg2);
|
|
DDX_Control(pDX, IDC_CORP_BZ_BZ, m_E_Msg);
|
|
DDX_Control(pDX, IDC_CORP_BZ_LIST, m_wndList);
|
|
DDX_Text(pDX, IDC_CORP_BZ_BZ, m_strBZ);
|
|
DDV_MaxChars(pDX, m_strBZ, 250);
|
|
//}}AFX_DATA_MAP
|
|
}
|
|
|
|
|
|
BEGIN_MESSAGE_MAP(DLG_Corp_BZ, CDialog)
|
|
//{{AFX_MSG_MAP(DLG_Corp_BZ)
|
|
ON_NOTIFY(NM_DBLCLK, IDC_CORP_BZ_LIST, OnDblclkCorpBzList)
|
|
ON_NOTIFY(NM_CLICK, IDC_CORP_BZ_LIST, OnClickCorpBzList)
|
|
//}}AFX_MSG_MAP
|
|
END_MESSAGE_MAP()
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// DLG_Corp_BZ message handlers
|
|
|
|
BOOL DLG_Corp_BZ::OnInitDialog()
|
|
{
|
|
CDialog::OnInitDialog();
|
|
|
|
|
|
//初始化List
|
|
m_Image.Create(16,16,ILC_COLOR16|ILC_MASK,5,5);
|
|
m_Image.Add(AfxGetApp()->LoadIcon(IDI_L_CORP) );
|
|
m_wndList.SubClassWindow2();
|
|
m_wndList.SetHeadings(_T("序号,60; 日期,120;创建人,80; 部门,70; 类型,70; 内容,520;"));
|
|
m_wndList.SetGridLines(true);
|
|
m_wndList.SetImageList(&m_Image,LVSIL_SMALL);
|
|
|
|
//初始化联系人
|
|
if ( m_lBZType==1 )
|
|
{
|
|
GetDlgItem(IDC_CORP_BZ_LXR)->ShowWindow(SW_SHOW);
|
|
GetDlgItem(IDC_CORP_BZ_LXR_S)->ShowWindow(SW_SHOW);
|
|
|
|
//添加会员
|
|
CString str;
|
|
for ( int i=0 ; i<m_pSee->lMemberCount ; i++ )
|
|
{
|
|
str.Format( _T("%s,%s,%s[%s,%s]") , m_pMemberData[i].szName,m_pMemberData[i].szMobile,m_pMemberData[i].szTel,m_pMemberData[i].szNickName,m_pMemberData[i].szSex );
|
|
|
|
int iItem = m_L_LXRID.AddString(str );
|
|
m_L_LXRID.SetItemData(iItem , m_pMemberData[i].lLXRID );
|
|
}
|
|
if (m_pSee->lMemberCount>0 )
|
|
m_L_LXRID.SetCurSel(0);
|
|
|
|
#ifdef MANAGER_VER_HF
|
|
GetDlgItem(IDC_CORP_BZ_SENDSMS)->ShowWindow(SW_SHOW);
|
|
m_B_SendSms.SetCheck(false);
|
|
#endif
|
|
}
|
|
|
|
CString strTemp;
|
|
for ( int i=0 ; i< m_pSee->lCount ; i++ )
|
|
{
|
|
strTemp.Format( _T("%d") , i+1 );
|
|
m_wndList.InsertItem( i , strTemp , 0 );
|
|
m_wndList.SetItemData( i , i);
|
|
|
|
long iTemp=1;
|
|
strTemp.Format( _T("%04d.%02d.%02d") , m_pSeeData[i].tCreateTime.wYear,m_pSeeData[i].tCreateTime.wMonth,m_pSeeData[i].tCreateTime.wDay );
|
|
m_wndList.SetItemText( i , iTemp++ , strTemp);
|
|
m_wndList.SetItemText( i , iTemp++ , m_pSeeData[i].szCreateUser);
|
|
switch( m_pSeeData[i].lBZType )
|
|
{
|
|
case 2:
|
|
m_wndList.SetItemText( i , iTemp++ , _T("客服") );
|
|
break;
|
|
default:
|
|
m_wndList.SetItemText( i , iTemp++ , _T("业务") );
|
|
break;
|
|
}
|
|
switch( m_pSeeData[i].lNRType )
|
|
{
|
|
case 1:
|
|
m_wndList.SetItemText( i , iTemp++ , _T("回访") );
|
|
break;
|
|
default:
|
|
m_wndList.SetItemText( i , iTemp++ , _T("备注") );
|
|
break;
|
|
}
|
|
m_wndList.SetItemText( i , iTemp++ , m_pSeeData[i].szBZ );
|
|
|
|
}
|
|
|
|
if ( m_lBZType==1 )
|
|
{
|
|
strTemp.Format( _T("回访管理 - %s") , m_pSee->szName );
|
|
GetDlgItem(IDC_CORP_BZ_S5)->SetWindowText( _T("新增回访") );
|
|
GetDlgItem(IDOK)->SetWindowText( _T("添加回访") );
|
|
|
|
m_strBZ = _T("回访目的:\r\n\r\n\r\n") \
|
|
_T("回访结果:\r\n");
|
|
}
|
|
else
|
|
{
|
|
strTemp.Format( _T("备注管理 - %s") , m_pSee->szName );
|
|
}
|
|
this->SetWindowText(strTemp);
|
|
|
|
UpdateData(false);
|
|
|
|
if (m_strTip.GetLength() > 0)
|
|
{
|
|
GetDlgItem(IDC_CORP_BZ_S5)->SetWindowText(m_strTip);
|
|
}
|
|
|
|
return TRUE; // return TRUE unless you set the focus to a control
|
|
// EXCEPTION: OCX Property Pages should return FALSE
|
|
}
|
|
|
|
void DLG_Corp_BZ::SetParam(ANS_Corp_BZ_See *pSee, ANS_Corp_BZ_Data *pSeeData,long lBZType , ANS_Corp_MemberData * pMemberData, CString strTip)
|
|
{
|
|
m_pSee = pSee;
|
|
m_pSeeData= pSeeData;
|
|
m_pMemberData = pMemberData;
|
|
|
|
m_lBZType = lBZType;
|
|
|
|
m_strTip = strTip;
|
|
}
|
|
|
|
void DLG_Corp_BZ::OnOK()
|
|
{
|
|
if ( !UpdateData(true))
|
|
return ;
|
|
|
|
m_lLXRSel = m_L_LXRID.GetCurSel();
|
|
#ifdef MANAGER_VER_HF
|
|
m_bSendSms = m_B_SendSms.GetCheck();
|
|
if ( m_bSendSms && m_lLXRSel>=0 && m_lLXRSel<m_pSee->lMemberCount)
|
|
{
|
|
if ( !isMobileNum(m_pMemberData[m_lLXRSel].szMobile) )
|
|
{
|
|
MessageBox(_T("你选择了发送满意度调查短信,但回访人的手机号码不正确!") , _T("错误") , MB_ICONWARNING );
|
|
return ;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
m_bSendSms = false;
|
|
}
|
|
#endif
|
|
long lBZLen=10;
|
|
if ( m_lBZType == 1 )
|
|
lBZLen=40;
|
|
if (m_strBZ.GetLength()<lBZLen )
|
|
{
|
|
MessageBox( _T("没输入内容或内容过短,请检查!" ) , _T("错误") , MB_ICONWARNING | MB_OK );
|
|
GetDlgItem(IDC_CORP_BZ_BZ)->SetFocus();
|
|
return ;
|
|
}
|
|
|
|
if (m_lLXRSel >= 0 && m_lLXRSel < m_pSee->lMemberCount)
|
|
{
|
|
CString strLXRName = m_pMemberData[m_lLXRSel].szName;
|
|
m_strBZ = m_strBZ + CString(_T("\r\n\r\n回访联系人:"))+strLXRName;
|
|
|
|
UpdateData(false);
|
|
}
|
|
|
|
CDialog::OnOK();
|
|
}
|
|
|
|
void DLG_Corp_BZ::OnDblclkCorpBzList(NMHDR* pNMHDR, LRESULT* pResult)
|
|
{
|
|
*pResult = 0;
|
|
|
|
|
|
long lItem = m_wndList.GetFirstSelectedItem();
|
|
if ( lItem<0 )
|
|
return ;
|
|
|
|
long lIndex = m_wndList.GetItemData(lItem);
|
|
if ( lIndex>=0 && lIndex<m_pSee->lCount )
|
|
m_E_Msg2.SetWindowText( m_pSeeData[lIndex].szBZ );
|
|
}
|
|
|
|
void DLG_Corp_BZ::OnClickCorpBzList(NMHDR* pNMHDR, LRESULT* pResult)
|
|
{
|
|
*pResult = 0;
|
|
|
|
long lItem = m_wndList.GetFirstSelectedItem();
|
|
if ( lItem<0 )
|
|
return ;
|
|
|
|
long lIndex = m_wndList.GetItemData(lItem);
|
|
if ( lIndex>=0 && lIndex<m_pSee->lCount )
|
|
m_E_Msg2.SetWindowText( m_pSeeData[lIndex].szBZ );
|
|
}
|