⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 infodlg.cpp

📁 车行管理系统
💻 CPP
字号:
// InfoDlg.cpp : implementation file
//

#include "stdafx.h"
#include "pro.h"
#include "InfoDlg.h"
#include "resysset.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CInfoDlg dialog


CInfoDlg::CInfoDlg(CWnd* pParent /*=NULL*/)
: CDialog(CInfoDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CInfoDlg)
	m_ps = _T("");
	m_cx = _T("");
	m_monn = _T("");
	m_timein = 0;
	m_timeout = 0;
	m_check = FALSE;
	m_prent = 0.0;
	m_sui = 0.0;
	m_value = 0.0;
	m_einval = 0.0;
	//}}AFX_DATA_INIT
}


void CInfoDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CInfoDlg)
	DDX_Control(pDX, IDC_INVAL, m_einvalc);
	DDX_Control(pDX, IDC_BUTTON4, m_del);
	DDX_Control(pDX, IDC_VALUE, m_valuec);
	DDX_Control(pDX, IDC_BUTTON1, m_bc);
	DDX_Control(pDX, IDC_PRENT, m_prentc);
	DDX_Control(pDX, IDC_SUI, m_suic);
	DDX_Control(pDX, IDC_TIMEOUT, m_timeoutc);
	DDX_Control(pDX, IDC_TIMEIN, m_timeinc);
	DDX_Control(pDX, IDC_PS, m_psc);
	DDX_Control(pDX, IDC_EDIT_MONN, m_monnc);
	DDX_Control(pDX, IDC_COMBO_CX, m_cxc);
	DDX_Text(pDX, IDC_PS, m_ps);
	DDX_CBString(pDX, IDC_COMBO_CX, m_cx);
	DDX_Text(pDX, IDC_EDIT_MONN, m_monn);
	DDX_DateTimeCtrl(pDX, IDC_TIMEIN, m_timein);
	DDX_DateTimeCtrl(pDX, IDC_TIMEOUT, m_timeout);
	DDX_Check(pDX, IDC_CHECK1, m_check);
	DDX_Text(pDX, IDC_PRENT, m_prent);
	DDX_Text(pDX, IDC_SUI, m_sui);
	DDX_Text(pDX, IDC_VALUE, m_value);
	DDX_Text(pDX, IDC_INVAL, m_einval);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CInfoDlg, CDialog)
//{{AFX_MSG_MAP(CInfoDlg)
ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
ON_BN_CLICKED(IDC_CHECK1, OnCheck1)
ON_BN_CLICKED(IDC_BUTTON4, OnButton4)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CInfoDlg message handlers

BOOL CInfoDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	m_db.Open ();
	if(m_db.IsOpen ())
	{
		
		
		m_db.Requery();
		
		if(!m_db.IsBOF ())m_db.MoveFirst ();
		bool found=FALSE;
		while(!m_db.IsEOF ())
		{
			if(m_db.m_ID==sid)
			{
				found=TRUE;
				break;
			}
			else m_db.MoveNext ();
		}
		if(found)
		{
			//UpdateData();
			m_timeinc.EnableWindow(FALSE);
			m_cxc.EnableWindow (FALSE);
			m_monnc.EnableWindow (FALSE);
			m_valuec.EnableWindow (FALSE);
			m_prentc.EnableWindow (FALSE);
			m_suic.EnableWindow (FALSE);
			m_timeoutc.EnableWindow (FALSE);
			m_psc.EnableWindow (FALSE);
			m_einvalc.EnableWindow (FALSE);
			m_check=FALSE;
			m_del.EnableWindow (FALSE);
			
			/////////////////////
			int index=0;
			KRecSet k_db;
			k_db.Open ();
			
			if(!k_db.IsBOF ())k_db.MoveFirst();
			while(!k_db.IsEOF ())
			{
				
				
				m_cxc.InsertString (index++,k_db.m_column1 );
				k_db.MoveNext();
				
			}
			k_db.Close ();
			////////////////
			
			
			if(m_db.m_salled ==1)
			{
				//MessageBox("已出售");
				//	OnOK ();
			}
			m_cx=m_db.m_column1;
			m_monn=m_db.m_column2;
			if(m_db.m_salled )m_timeout=m_db.m_column3;
			else m_timeoutc.ShowWindow(SW_HIDE);
			m_timein=m_db.m_column7;
			m_value=m_db.m_column4;
			m_prent=m_db.m_column5;
			m_sui=m_db.m_column6;
			m_einval=m_db.m_invalm ;
			if(m_db.m_column8.GetLength ())m_ps=m_db.m_column8;
			//m_value=m_db.m_column4;
			
			
			UpdateData(FALSE);
			
		}
		else
		{
			MessageBox("!!!记录未找到!");
			OnOK();
			return FALSE;
		}
	}
	else
	{
		MessageBox("数据库打开错误!");
		OnOK();
		return FALSE;
	}
	// TODO: Add extra initialization here
	
	return TRUE;  // return TRUE unless you set the focus to a control
	// EXCEPTION: OCX Property Pages should return FALSE
}

void CInfoDlg::OnButton1() 
{
	// TODO: Add your control notification handler code here
	UpdateData();
	if(!m_check)
	{
		OnOK();
		return;
	}
	if(m_timein<0||m_timeout<0||m_timein>m_timeout)
	{
		if(m_db.m_salled )
		{
			MessageBox("时间设置错误.");
			return;
		}
	}
	
	if(m_value==0&&m_db.m_salled ==1)
	{
		MessageBox("该车已出售,售价不能为0\n请重设.","警告");
		m_valuec.SetFocus ();
		return;
	}
	if(m_einval==0)
	{
		MessageBox("入库不能为0");
		m_einvalc.SetFocus ();
		return;
	}
	if(m_cx.GetLength ()==0)
	{
		MessageBox("车型有错\n请重设.","警告");
		m_cxc.SetFocus ();
		return;
	}
	if(m_monn.GetLength ()==0)
	{
		
		
		
		MessageBox("发动机号有错\n请重设.","警告");
		m_monnc.SetFocus ();
		return;
	}
	
	if(m_monn!=m_db.m_column2)
	{
		MRecSet mdb;
		mdb.Open ();
		if(mdb.IsOpen ())
		{
			mdb.Requery();
			if(!mdb.IsBOF ())mdb.MoveFirst ();
			do
			{
				if(mdb.m_column2==m_monn)
				{
					MessageBox("该发动机号已登记.");
					m_monn="";
					UpdateData(FALSE);
					m_monnc.SetFocus ();
					return;
				}
				if(!mdb.IsEOF ())mdb.MoveNext ();
			}while(!mdb.IsEOF() );
		}
		mdb.Close ();
		
	}
	
	m_db.Edit ();
	
	m_db.m_column1=m_cx;
	m_db.m_column2=m_monn;
	if(m_db.m_salled)
	{
		
		m_db.m_column3=m_timeout;
		m_db.m_column4=m_value;
		m_db.m_column5=m_prent;
		m_db.m_column6=m_sui;
	}
	
	
		  m_db.m_column7=m_timein ;
		  //m_db.m_salled=0;
		  m_db.m_column8=m_ps ;
		  m_db.m_invalm =m_einval;
		  SYSTEMTIME stime;
		  GetLocalTime(&stime);
		  m_db.m_edittime =stime;
		  m_db.Update ();
		  m_db.Requery();
		  OnOK();
		  return;
		  
		  
		  // UpdateData();
}

void CInfoDlg::OnCheck1() 
{
	// TODO: Add your control notification handler code here
	if(!m_check)
	{
		m_timeinc.EnableWindow();
		m_cxc.EnableWindow ();
		m_monnc.EnableWindow ();
		if(m_db.m_salled )
		{
			m_valuec.EnableWindow ();
			m_prentc.EnableWindow ();
			m_suic.EnableWindow ();
			m_timeoutc.EnableWindow ();
		}
		m_psc.EnableWindow ();
		m_del.EnableWindow ();
		m_einvalc.EnableWindow ();
		m_bc.SetWindowText ("保存");
	}
	else
	{
		m_timeinc.EnableWindow(FALSE);
		m_cxc.EnableWindow (FALSE);
		m_monnc.EnableWindow (FALSE);
		m_valuec.EnableWindow (FALSE);
		m_prentc.EnableWindow (FALSE);
		m_suic.EnableWindow (FALSE);
		m_timeoutc.EnableWindow (FALSE);
		m_psc.EnableWindow (FALSE);
		m_del.EnableWindow (FALSE);
		m_einvalc.EnableWindow (FALSE);
		m_bc.SetWindowText ("确定");
	}
	UpdateData();
	
}

void CInfoDlg::OnButton4() 
{
	// TODO: Add your control notification handler code here
	if(MessageBox("确定要删除该记录吗?","警告",MB_OKCANCEL)==IDCANCEL)return;
	if(m_db.IsOpen ())m_db.Close ();
	m_db.Open ();
	if(m_db.IsOpen ())
	{
		
		
		m_db.Requery();
		
		if(!m_db.IsBOF ())m_db.MoveFirst ();
		bool found=FALSE;
		while(!m_db.IsEOF ())
		{
			if(m_db.m_ID==sid)
			{
				found=TRUE;
				break;
			}
			else m_db.MoveNext ();
		}
		if(found)
		{
			
			CResysSet r_db;
			r_db.Open ();

			r_db.AddNew ();
			SYSTEMTIME stime;
			GetLocalTime(&stime);
			r_db.m_oid=stime .wMilliseconds+stime.wSecond  ;
			r_db.m_cx =m_db.m_column1 ;
			r_db.m_monn =m_db.m_column2;
			r_db.m_selltime  =m_db.m_column3;
			r_db.m_ovalue  =m_db.m_column4;
			r_db.m_cprent  =m_db.m_column5;
			r_db.m_csui  =m_db.m_column6;
			r_db.m_intime  =m_db.m_column7;
			r_db.m_ps =m_db.m_column8;
			r_db.m_salled =m_db.m_salled ;
			r_db.m_invalue =m_db.m_invalm ;
			r_db.m_deltime =stime;
		//	r_db.Requery();
			r_db.Update ();
			r_db.Close ();
			
			
			
			m_db.Delete ();
			m_db.Requery();
			
			OnOK();
			
			
		}
		else
		{
			MessageBox("记录未找到!");
			OnOK();
		}
	}
	else
	{
		MessageBox("数据库打开错误!");
		OnOK();
	}
	
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -