SmsManager/DLG_Corp_FP_Modify.cpp
2025-01-14 10:46:18 +08:00

331 lines
10 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// DLG_Corp_FP_Modify.cpp : implementation file
//
#include "stdafx.h"
#include "smsmanager.h"
#include "DLG_Corp_FP_Modify.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// DLG_Corp_FP_Modify dialog
#include "DLG_Corp_FP.h"
DLG_Corp_FP_Modify::DLG_Corp_FP_Modify(CWnd* pParent /*=NULL*/)
: CDialog(DLG_Corp_FP_Modify::IDD, pParent)
, m_strCreate(_T(""))
, m_strPostEmail(_T(""))
{
//{{AFX_DATA_INIT(DLG_Corp_FP_Modify)
//}}AFX_DATA_INIT
m_pLXRDlg = (DLG_Corp_FP *)pParent;
memset( &m_FP,0,sizeof(m_FP));
m_Pos = 0;
m_strCorpName = _T("");
m_strPostName = _T("");
m_strCorpAddress = _T("");
m_strCorpTel = _T("");
m_strCorpBank = _T("");
m_strCorpBankNo = _T("");
m_strCorpTaxID = _T("");
m_lFPType = 0;
m_strPostAddress = _T("");
m_strPostCode = _T("");
m_strPostMobile = _T("");
m_strPostTel = _T("");
m_strBZ = _T("");
}
void DLG_Corp_FP_Modify::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(DLG_Corp_FP_Modify)
//}}AFX_DATA_MAP
DDX_Text(pDX, IDC_CORP_FPMODIFY_CORPNAME, m_strCorpName);
DDV_MaxChars(pDX, m_strCorpName, 60);
DDX_Text(pDX, IDC_CORP_FPMODIFY_POSTNAME, m_strPostName);
DDV_MaxChars(pDX, m_strPostName, 15);
DDX_Text(pDX, IDC_CORP_FPRMODIFY_CORPADDRESS, m_strCorpAddress);
DDV_MaxChars(pDX, m_strCorpAddress, 63);
DDX_Text(pDX, IDC_CORP_FPRMODIFY_CORPATEL, m_strCorpTel);
DDV_MaxChars(pDX, m_strCorpTel, 31);
DDX_Text(pDX, IDC_CORP_FPRMODIFY_CORPBANK, m_strCorpBank);
DDV_MaxChars(pDX, m_strCorpBank, 31);
DDX_Text(pDX, IDC_CORP_FPRMODIFY_CORPBANKNO, m_strCorpBankNo);
DDV_MaxChars(pDX, m_strCorpBankNo, 31);
DDX_Text(pDX, IDC_CORP_FPRMODIFY_CORPTAXID, m_strCorpTaxID);
DDV_MaxChars(pDX, m_strCorpTaxID, 23);
DDX_Check(pDX, IDC_CORP_FPRMODIFY_DEFAULTFP, m_bDefaultFP);
DDX_CBIndex(pDX, IDC_CORP_FPRMODIFY_FPTYPE, m_lFPType);
DDX_Text(pDX, IDC_CORP_FPRMODIFY_POSTADDRESS, m_strPostAddress);
DDV_MaxChars(pDX, m_strPostAddress, 63);
DDX_Text(pDX, IDC_CORP_FPRMODIFY_POSTCODE, m_strPostCode);
DDV_MaxChars(pDX, m_strPostCode, 15);
DDX_Text(pDX, IDC_CORP_FPRMODIFY_POSTMOBILE, m_strPostMobile);
DDV_MaxChars(pDX, m_strPostMobile, 31);
DDX_Text(pDX, IDC_CORP_FPRMODIFY_POSTTEL, m_strPostTel);
DDV_MaxChars(pDX, m_strPostTel, 31);
DDX_Text(pDX, IDC_CORP_LXRMODIFY_BZ, m_strBZ);
DDV_MaxChars(pDX, m_strBZ, 200);
DDX_Text(pDX, IDC_CORP_FPRMODIFY_CREATE, m_strCreate);
DDX_Text(pDX, IDC_CORP_FPMODIFY_EMAIL, m_strPostEmail);
DDV_MaxChars(pDX, m_strPostEmail, 60);
}
BEGIN_MESSAGE_MAP(DLG_Corp_FP_Modify, CDialog)
//{{AFX_MSG_MAP(DLG_Corp_FP_Modify)
//}}AFX_MSG_MAP
ON_BN_CLICKED(IDOK, &DLG_Corp_FP_Modify::OnBnClickedOk)
ON_BN_CLICKED(IDC_CORP_FPMODIFY_PRINT, &DLG_Corp_FP_Modify::OnBnClickedCorpFpmodifyPrint)
ON_BN_CLICKED(IDC_CORP_FPMODIFY_PRINTPREVIEW, &DLG_Corp_FP_Modify::OnBnClickedCorpFpmodifyPrintpreview)
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// DLG_Corp_FP_Modify message handlers
void DLG_Corp_FP_Modify::SetParam(ANS_Corp_FPData LXR , POSITION pos)
{
m_FP = LXR;
m_Pos = pos;
}
ANS_Corp_FPData DLG_Corp_FP_Modify::GetParam()
{
return m_FP;
}
BOOL DLG_Corp_FP_Modify::OnInitDialog()
{
CDialog::OnInitDialog();
m_bDefaultFP = m_FP.bDefaultFP;
m_lFPType = m_FP.lFPType;
m_strCorpName = m_FP.szCorpName; //̧ͷ
m_strCorpTaxID = m_FP.szCorpTaxID; //<2F><>˰<EFBFBD><CBB0>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>
m_strCorpAddress= m_FP.szCorpAddress; //<2F><>ַ
m_strCorpTel = m_FP.szCorpTel; //<2F>
m_strCorpBank = m_FP.szCorpBank; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
m_strCorpBankNo = m_FP.szCorpBankNo; //<2F><><EFBFBD><EFBFBD><EFBFBD>ʺ<EFBFBD>
m_strPostName = m_FP.szPostName; //<2F>ռ<EFBFBD><D5BC><EFBFBD>
m_strPostEmail = m_FP.szPostEmail; //<2F><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>
m_strPostAddress= m_FP.szPostAddress; //<2F>ռ<EFBFBD><D5BC><EFBFBD>ַ
m_strPostCode = m_FP.szPostCode; //<2F>ռ<EFBFBD><D5BC>ʱ<EFBFBD>
m_strPostMobile = m_FP.szPostMobile; //<2F>ռ<EFBFBD><D5BC>ֻ<EFBFBD>
m_strPostTel = m_FP.szPostTel; //<2F>ռ<EFBFBD><D5BC>
m_strBZ = m_FP.szBZ; //<2F><>ע
m_strCreate.Format( _T("%s %04d.%02d.%02d %02d:%02d:%02d") , m_FP.szCreateUser,m_FP.tCreateTime.wYear,m_FP.tCreateTime.wMonth,m_FP.tCreateTime.wDay,m_FP.tCreateTime.wHour,m_FP.tCreateTime.wMinute,m_FP.tCreateTime.wSecond );
this->UpdateData(false);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void DLG_Corp_FP_Modify::OnBnClickedOk()
{
UpdateData(true);
if (m_strCorpName.GetLength() <= 0)
{
MessageBox(_T("û<EFBFBD><EFBFBD>¼<EFBFBD>뷢Ʊ̧ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!"), _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"), MB_ICONWARNING);
GetDlgItem(IDC_CORP_FPMODIFY_CORPNAME)->SetFocus();
return;
}
m_FP.bDefaultFP = m_bDefaultFP;
m_FP.lFPType = m_lFPType;
_tcscpy(m_FP.szCorpName, m_strCorpName); //̧ͷ
_tcscpy(m_FP.szCorpTaxID, m_strCorpTaxID); //<2F><>˰<EFBFBD><CBB0>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>
_tcscpy(m_FP.szCorpAddress, m_strCorpAddress); //<2F><>ַ
_tcscpy(m_FP.szCorpTel, m_strCorpTel); //<2F>
_tcscpy(m_FP.szCorpBank, m_strCorpBank); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
_tcscpy(m_FP.szCorpBankNo, m_strCorpBankNo); //<2F><><EFBFBD><EFBFBD><EFBFBD>ʺ<EFBFBD>
_tcscpy(m_FP.szPostName, m_strPostName); //<2F>ռ<EFBFBD><D5BC><EFBFBD>
_tcscpy(m_FP.szPostEmail, m_strPostEmail); //<2F><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>
_tcscpy(m_FP.szPostAddress, m_strPostAddress); //<2F>ռ<EFBFBD><D5BC><EFBFBD>ַ
_tcscpy(m_FP.szPostCode, m_strPostCode); //<2F>ռ<EFBFBD><D5BC>ʱ<EFBFBD>
_tcscpy(m_FP.szPostMobile, m_strPostMobile); //<2F>ռ<EFBFBD><D5BC>ֻ<EFBFBD>
_tcscpy(m_FP.szPostTel, m_strPostTel); //<2F>ռ<EFBFBD><D5BC>
_tcscpy(m_FP.szBZ, m_strBZ); //<2F><>ע
CDialog::OnOK();
}
void DLG_Corp_FP_Modify::OnBnClickedCorpFpmodifyPrint()
{
if (!UpdateData(true))
return;
try
{
//<2F><>ӡ
CPrnFrame * PrnFrame = new CPrnFrame(On_Print2, On_BeginPrint2, OnPreparePrinting2, this, this, true);
}
catch (...)
{
AfxMessageBox(_T("print error"));
}
}
void DLG_Corp_FP_Modify::OnBnClickedCorpFpmodifyPrintpreview()
{
if (!UpdateData(true))
return;
try
{
//Ԥ<><D4A4>
CPrnFrame * PrnFrame = new CPrnFrame(On_Print2, On_BeginPrint2, OnPreparePrinting2, this, this, false);
PrnFrame->ShowWindow(SW_SHOW);
PrnFrame->UpdateWindow();
//<2F><>ӡ
//CPrnFrame * PrnFrame = new CPrnFrame(On_Print2,On_BeginPrint2,this,this,true);
}
catch (...)
{
AfxMessageBox(_T("print error"));
}
}
void DLG_Corp_FP_Modify::On_Print2(CDC *pDC, CPrintInfo *pInfo, void *pVoid)
{
DLG_Corp_FP_Modify * pDlg = (DLG_Corp_FP_Modify *)pVoid;
CFont font, fontb, fontm, fontm2, *oldfont;
CPoint point;
int nWidth = pDC->GetDeviceCaps(HORZRES);
int nHeight = pDC->GetDeviceCaps(VERTRES);
int xLogPixPerInch = pDC->GetDeviceCaps(LOGPIXELSX);
int yLogPixPerInch = pDC->GetDeviceCaps(LOGPIXELSY);
float xmm = ((float)xLogPixPerInch / 24.5f);
float ymm = ((float)yLogPixPerInch / 24.5f);
font.CreateFont(-MulDiv(12, -pDC->GetDeviceCaps(LOGPIXELSY), 72),
0, 0, 0, FW_NORMAL, 0, 0, 0, GB2312_CHARSET,
OUT_STROKE_PRECIS, CLIP_STROKE_PRECIS, DRAFT_QUALITY,
VARIABLE_PITCH | FF_SWISS, _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
fontm.CreateFont(-MulDiv(16, -pDC->GetDeviceCaps(LOGPIXELSY), 72),
0, 0, 0, FW_NORMAL, 0, 0, 0, GB2312_CHARSET,
OUT_STROKE_PRECIS, CLIP_STROKE_PRECIS, DRAFT_QUALITY,
VARIABLE_PITCH | FF_SWISS, _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
fontm2.CreateFont(-MulDiv(14, -pDC->GetDeviceCaps(LOGPIXELSY), 72),
0, 0, 0, FW_NORMAL, 0, 0, 0, GB2312_CHARSET,
OUT_STROKE_PRECIS, CLIP_STROKE_PRECIS, DRAFT_QUALITY,
VARIABLE_PITCH | FF_SWISS, _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
fontb.CreateFont(-MulDiv(24, -pDC->GetDeviceCaps(LOGPIXELSY), 72),
0, 0, 0, FW_NORMAL, 0, 0, 0, GB2312_CHARSET,
OUT_STROKE_PRECIS, CLIP_STROKE_PRECIS, DRAFT_QUALITY,
VARIABLE_PITCH | FF_SWISS, _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
float fLeft = 11.0f;
float fTop = 7.0f;
long x = 0, y = 0, w = 0, h = 0;
long x2 = 0, y2 = 0, w2 = 0, h2 = 0;
CString str;
/*
oldfont=pDC->SelectObject(&fontm2);
//<2F><>ӡ<EFBFBD><D3A1><EFBFBD>ݵ<EFBFBD>
x=(long)(((float)(85.0f))*xmm+0.5f);
y=(long)(((float)(55.0f))*ymm+0.5f);
w=(long)(((float)(120.0f))*xmm+0.5f);
h=(long)(((float)(55.0f))*ymm+0.5f);
str.Format(_T("<22><>˾<EFBFBD><CBBE><EFBFBD>ƣ<EFBFBD>%s\r\n<><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7>%s\r\n<><6E><EFBFBD>ռ<EFBFBD><D5BC>ˣ<EFBFBD>%s\r\n<><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E7BBB0>%s\r\n<><6E><EFBFBD><EFBFBD><EFBFBD>ʱࣺ%s\r\n"),
pDlg->m_strCorpName,pDlg->m_strAddress,pDlg->m_strLXR,pDlg->m_strTelNum,pDlg->m_strPostCode );
pDC->DrawText(str,&pDlg->MakeRect(x,y,w,h),DT_LEFT|DT_VCENTER);
*/
oldfont = pDC->SelectObject(&font);
//<2F><>ӡ<EFBFBD><D3A1><EFBFBD>ݵ<EFBFBD>
x = (long)(((float)(104.0f))*xmm + 0.5f);
y = (long)(((float)(23.0f))*ymm + 0.5f);
w = (long)(((float)(80.0f))*xmm + 0.5f);
h = (long)(((float)(5.0f))*ymm + 0.5f);
pDC->DrawText(pDlg->m_strPostName, &pDlg->MakeRect(x, y, w, h), DT_LEFT | DT_TOP);
x = (long)(((float)(101.0f))*xmm + 0.5f);
y = (long)(((float)(29.0f))*ymm + 0.5f);
w = (long)(((float)(80.0f))*xmm + 0.5f);
h = (long)(((float)(5.0f))*ymm + 0.5f);
pDC->DrawText(pDlg->m_strCorpName, &pDlg->MakeRect(x, y, w, h), DT_LEFT | DT_TOP);
x = (long)(((float)(90.0f))*xmm + 0.5f);
y = (long)(((float)(34.0f))*ymm + 0.5f);
w = (long)(((float)(90.0f))*xmm + 0.5f);
h = (long)(((float)(25.0f))*ymm + 0.5f);
pDC->DrawText(CString(_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")) + pDlg->m_strPostAddress, &pDlg->MakeRect(x, y, w, h), DT_LEFT | DT_TOP | DT_EDITCONTROL | DT_WORDBREAK);
x = (long)(((float)(112.0f))*xmm + 0.5f);
y = (long)(((float)(48.0f))*ymm + 0.5f);
w = (long)(((float)(42.0f))*xmm + 0.5f);
h = (long)(((float)(20.0f))*ymm + 0.5f);
pDC->DrawText(pDlg->m_strPostMobile+CString(_T(" "))+pDlg->m_strPostTel, &pDlg->MakeRect(x, y, w, h), DT_LEFT | DT_TOP | DT_TOP | DT_EDITCONTROL | DT_WORDBREAK);
x = (long)(((float)(168.0f))*xmm + 0.5f);
y = (long)(((float)(48.0f))*ymm + 0.5f);
w = (long)(((float)(20.0f))*xmm + 0.5f);
h = (long)(((float)(20.0f))*ymm + 0.5f);
pDC->DrawText(pDlg->m_strPostCode, &pDlg->MakeRect(x, y, w, h), DT_LEFT | DT_TOP | DT_TOP | DT_EDITCONTROL | DT_WORDBREAK);
pDC->SelectObject(oldfont);
font.DeleteObject();
fontb.DeleteObject();
}
void DLG_Corp_FP_Modify::On_BeginPrint2(CDC *pDC, CPrintInfo *pInfo, void *pVoid)
{
// pInfo->SetMaxPage(1); //ֻ<><D6BB>
}
RECT DLG_Corp_FP_Modify::MakeRect(long x, long y, long w, long h)
{
RECT rect = { x,y,x + w,y + h };
return rect;
}
void DLG_Corp_FP_Modify::OnPreparePrinting2(CPrintInfo *pInfo)
{
pInfo->SetMaxPage(1); //ֻ<><D6BB>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
CWinApp* pApp = AfxGetApp();
pApp->GetPrinterDeviceDefaults(&pInfo->m_pPD->m_pd);
if (pInfo)
{
LPDEVMODE lpDevmode = pInfo->m_pPD->GetDevMode();
if (lpDevmode)
{
//lpDevmode->dmOrientation = DMORIENT_LANDSCAPE;
lpDevmode->dmOrientation = DMORIENT_PORTRAIT;
}
}
}