SmsManager/DLG_Corp_FP_Modify.cpp

331 lines
10 KiB
C++
Raw Normal View History

2025-01-14 10:46:18 +08:00
// 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("<EFBFBD><EFBFBD>˾<EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>%s\r\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD>%s\r\n<EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>ˣ<EFBFBD>%s\r\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>%s\r\n<EFBFBD><EFBFBD><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;
}
}
}