175 lines
3.4 KiB
C++
175 lines
3.4 KiB
C++
#include "stdafx.h"
|
|
#include "DGKDDlg.h"
|
|
#include "EarThwormDef.h"
|
|
|
|
|
|
IMPLEMENT_DYNAMIC(CDGKDDlg, CDialog)
|
|
|
|
CDGKDDlg::CDGKDDlg(CWnd *pParent /*=NULL*/)
|
|
: CDialog(CDGKDDlg::IDD, pParent)
|
|
, m_dSizeAdd(5.0)
|
|
, m_dT(6.0)
|
|
, m_dTL(100)
|
|
, m_bHasCase(TRUE)
|
|
, m_bHasNozz(FALSE)
|
|
, m_bExt(FALSE)
|
|
, m_dExt1(0)
|
|
, m_dExt2(0)
|
|
, m_sPipeType(_T("A型刚性防水套管"))
|
|
, m_sNo(_T("H-001"))
|
|
, m_sForUse(_T(""))
|
|
{
|
|
GET_CACHE(CDGKDDlg, %s%s%s%d%d%d%f%f%f%f%f
|
|
, &m_sPipeType
|
|
, &m_sNo
|
|
, &m_sForUse
|
|
, &m_bHasCase
|
|
, &m_bHasNozz
|
|
, &m_bExt
|
|
, &m_dT
|
|
, &m_dTL
|
|
, &m_dSizeAdd
|
|
, &m_dExt1
|
|
, &m_dExt2 );
|
|
|
|
}
|
|
|
|
CDGKDDlg::~CDGKDDlg()
|
|
{
|
|
}
|
|
|
|
void CDGKDDlg::DoDataExchange(CDataExchange* pDX)
|
|
{
|
|
CDialog::DoDataExchange(pDX);
|
|
DDX_Text(pDX, IDC_EDIT1, m_dSizeAdd);
|
|
DDX_Check(pDX,IDC_CHECK1,m_bHasNozz);
|
|
DDX_Check(pDX, IDC_CHECK6, m_bHasCase);
|
|
DDX_Text(pDX, IDC_EDIT5, m_dT);
|
|
DDX_Text(pDX, IDC_EDIT9, m_dTL);
|
|
DDX_Check(pDX, IDC_CHECK7, m_bExt);
|
|
DDX_Text(pDX, IDC_EDIT10, m_dExt1);
|
|
DDX_Text(pDX, IDC_EDIT11, m_dExt2);
|
|
DDX_Control(pDX, IDC_EDIT10, m_wndExtEx1);
|
|
DDX_Control(pDX, IDC_EDIT11, m_wndEditExt2);
|
|
|
|
DDX_Control(pDX, IDC_COMBO1, m_wndComboMaters);
|
|
DDX_CBString(pDX, IDC_COMBO3, m_sPipeType);
|
|
DDX_Text(pDX, IDC_EDIT6, m_sForUse);
|
|
DDX_Control(pDX, IDC_COMBO3, m_wndPipeComboType);
|
|
}
|
|
|
|
BEGIN_MESSAGE_MAP(CDGKDDlg, CDialog)
|
|
ON_BN_CLICKED(IDOK, &CDGKDDlg::OnBnClickedOk)
|
|
ON_BN_CLICKED(IDC_CHECK7, &CDGKDDlg::OnBnClickedCheck7)
|
|
END_MESSAGE_MAP()
|
|
|
|
void CDGKDDlg::GetData(BatHoleCasing& data)
|
|
{
|
|
data.m_dSizeAdd = m_dSizeAdd;
|
|
data.m_bHasCase = m_bHasCase;
|
|
data.m_bHasNozz = m_bHasNozz;
|
|
data.m_dT = m_dT;
|
|
data.m_dTL = m_dTL;
|
|
data.m_bExt = m_bExt;
|
|
if (m_bExt)
|
|
{
|
|
data.m_dExt1 = m_dExt1;
|
|
data.m_dExt2 = m_dExt2;
|
|
}
|
|
else
|
|
{
|
|
data.m_dExt1 = 0.;
|
|
data.m_dExt2 = 0.;
|
|
}
|
|
_tcscpy(data.m_sPipeType,m_sPipeType);
|
|
_tcscpy(data.m_sForUse, m_sForUse);
|
|
|
|
}
|
|
|
|
BOOL CDGKDDlg::OnInitDialog()
|
|
{
|
|
CDialog::OnInitDialog();
|
|
|
|
UpdateData(FALSE);
|
|
|
|
CString path = FilePath::GetSysDir() + Plumbing_DB;
|
|
if (!m_dbSQLite.InitADOServer(path))
|
|
{
|
|
AfxMessageBox(CString(_T("数据库初始化失败,请检查 sys")) + Plumbing_DB + _T("文件是否存在."));
|
|
return FALSE;
|
|
}
|
|
|
|
InitMaterial();
|
|
|
|
int nSel = m_wndPipeComboType.FindString(0,m_sPipeType);
|
|
if (nSel == -1)
|
|
{
|
|
nSel = 0;
|
|
}
|
|
m_wndPipeComboType.SetCurSel(nSel);
|
|
|
|
m_wndExtEx1.EnableWindow(m_bExt);
|
|
m_wndEditExt2.EnableWindow(m_bExt);
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
void CDGKDDlg::InitMaterial()
|
|
{
|
|
//材质
|
|
CStringArray arVals;
|
|
CString sSQL = _T("select [材质] from AecMaterial where [类型]='管道'");
|
|
m_dbSQLite.GetSelData(sSQL,arVals);
|
|
|
|
int nSel = 0;
|
|
m_wndComboMaters.ResetContent();
|
|
for (int i = 0;i < arVals.GetSize();i++)
|
|
{
|
|
m_wndComboMaters.InsertString(i,arVals.GetAt(i));
|
|
|
|
if (m_sMertial.CompareNoCase(arVals.GetAt(i)) == 0)
|
|
{
|
|
nSel = i;
|
|
}
|
|
}
|
|
m_wndComboMaters.SetCurSel(nSel);
|
|
}
|
|
|
|
void CDGKDDlg::OnBnClickedOk()
|
|
{
|
|
UpdateData();
|
|
|
|
if (m_bHasCase)
|
|
{
|
|
// 不检查套管长度了, 长度会自适应墙板的厚度
|
|
//if (m_dTL < 1.e-2)
|
|
//{
|
|
// AfxMessageBox(_T("请检查套管的长度是否合理!"));
|
|
// return;
|
|
//}
|
|
}
|
|
|
|
SET_CACHE(CDGKDDlg, %s%s%s%d%d%d%f%f%f%f%f
|
|
, m_sPipeType
|
|
, m_sNo
|
|
, m_sForUse
|
|
, m_bHasCase
|
|
, m_bHasNozz
|
|
, m_bExt
|
|
, m_dT
|
|
, m_dTL
|
|
, m_dSizeAdd
|
|
, m_dExt1
|
|
, m_dExt2 );
|
|
|
|
|
|
OnOK();
|
|
}
|
|
|
|
void CDGKDDlg::OnBnClickedCheck7()
|
|
{
|
|
UpdateData();
|
|
m_wndExtEx1.EnableWindow(m_bExt);
|
|
m_wndEditExt2.EnableWindow(m_bExt);
|
|
}
|