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

📄 ruku.cpp

📁 面向软件工程的Visual C++网络程序开发
💻 CPP
字号:
// Ruku.cpp : implementation file
//

#include "stdafx.h"
#include "falcon_jxc.h"
#include "Ruku.h"
#include "Huopinmingxi.h"
#include "mainfrm.h"
#include "FALCON_JXCView.h"
#include "message.h"

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

/////////////////////////////////////////////////////////////////////////////
// CRuku dialog


CRuku::CRuku(CWnd* pParent /*=NULL*/)
	: CDialog(CRuku::IDD, pParent)
{
	//{{AFX_DATA_INIT(CRuku)
	m_strRukuzhidanren = _T("");
	m_strRukuzhidanriqi = _T("");
	//}}AFX_DATA_INIT
	m_strCode = _T("");
	m_iRow = 1;
	m_iDelRow = 0;
	m_bSave = FALSE;
}


void CRuku::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CRuku)
	DDX_Control(pDX, IDC_MSFLEXGRID1, m_CMSFlexGrid);
	DDX_Text(pDX, IDC_RUKUZHIDANREN, m_strRukuzhidanren);
	DDX_Text(pDX, IDC_RUKUZHIDANRIQI, m_strRukuzhidanriqi);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CRuku, CDialog)
	//{{AFX_MSG_MAP(CRuku)
	ON_BN_CLICKED(IDC_TIANJIA, OnTianjia)
	ON_BN_CLICKED(IDC_BIAODANSHUCHU, OnBiaodanshuchu)
	ON_BN_CLICKED(IDC_SHANCHU, OnShanchu)
	ON_BN_CLICKED(IDC_TUICHU, OnTuichu)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CRuku message handlers
BOOL CRuku::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here

	m_CMSFlexGrid.SetCols(12);
	m_CMSFlexGrid.SetRows(m_iRow);
	m_CMSFlexGrid.SetTextMatrix(0,0,"序号");
	m_CMSFlexGrid.SetTextMatrix(0,1,"编码");
 	m_CMSFlexGrid.SetTextMatrix(0,2,"名称");	
	m_CMSFlexGrid.SetTextMatrix(0,3,"单位");	
	m_CMSFlexGrid.SetTextMatrix(0,4,"规格");	
	m_CMSFlexGrid.SetTextMatrix(0,5,"型号");	
	m_CMSFlexGrid.SetTextMatrix(0,6,"数量");	
	m_CMSFlexGrid.SetTextMatrix(0,7,"进价");
	m_CMSFlexGrid.SetTextMatrix(0,8,"售价");
	m_CMSFlexGrid.SetTextMatrix(0,9,"供货商");		
	m_CMSFlexGrid.SetTextMatrix(0,10,"生产厂商");		
	m_CMSFlexGrid.SetTextMatrix(0,11,"备注");
	
	CMainFrame* pwnd=(CMainFrame*)AfxGetApp()->m_pMainWnd;
	CFALCON_JXCView* pView=(CFALCON_JXCView*)pwnd->GetActiveView();
	CFALCON_JXCDoc* pDoc=	pView->GetDocument();


	CTime time=CTime::GetCurrentTime();
	int yy,mm,dd;
	CString str;	
	yy=time.GetYear();
	mm=time.GetMonth();
	dd=time.GetDay();
	str.Format("%d-%d-%d",yy,mm,dd);
	m_strRukuzhidanriqi = str;
	UpdateData(FALSE);
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CRuku::OnTianjia() 
{
	// TODO: Add your control notification handler code here
	UpdateData();
	CString strTemp;
	CHuopinmingxi RukuMingxiDlg;

	if (RukuMingxiDlg.DoModal() == IDOK)
	{	
		m_iRow++;
		m_CMSFlexGrid.SetRows(m_iRow);
		strTemp.Format("%d",m_iRow-1);
		m_CMSFlexGrid.SetTextMatrix(m_iRow-1,0,strTemp);
		m_CMSFlexGrid.SetTextMatrix(m_iRow-1,1,RukuMingxiDlg.m_strBianma);
		m_CMSFlexGrid.SetTextMatrix(m_iRow-1,2,RukuMingxiDlg.m_strMingcheng);
		m_CMSFlexGrid.SetTextMatrix(m_iRow-1,3,RukuMingxiDlg.m_strDanwei);
		m_CMSFlexGrid.SetTextMatrix(m_iRow-1,4,RukuMingxiDlg.m_strGuige);
		m_CMSFlexGrid.SetTextMatrix(m_iRow-1,5,RukuMingxiDlg.m_strXinghao);
		strTemp.Format("%d",RukuMingxiDlg.m_nShuliang);
		m_CMSFlexGrid.SetTextMatrix(m_iRow-1,6,strTemp);
		strTemp.Format("%.2f",RukuMingxiDlg.m_fJinjia);
		m_CMSFlexGrid.SetTextMatrix(m_iRow-1,7,strTemp);
		strTemp.Format("%.2f",RukuMingxiDlg.m_fShoujia);
		m_CMSFlexGrid.SetTextMatrix(m_iRow-1,8,strTemp);
		m_CMSFlexGrid.SetTextMatrix(m_iRow-1,9,RukuMingxiDlg.m_strGonghuoshang);
		m_CMSFlexGrid.SetTextMatrix(m_iRow-1,10,RukuMingxiDlg.m_strShengchanchangshang);
		m_CMSFlexGrid.SetTextMatrix(m_iRow-1,11,RukuMingxiDlg.m_strBeizhu);

		UpdateData(FALSE);
	}
}

void CRuku::OnBiaodanshuchu() 
{
	// TODO: Add your control notification handler code here
	UpdateData();
	if (m_CMSFlexGrid.GetTextMatrix(1,1) == "")
	{
		return;
	}
	CMainFrame* pwnd=(CMainFrame*)AfxGetApp()->m_pMainWnd;
	CFALCON_JXCView* pView=(CFALCON_JXCView*)pwnd->GetActiveView();
	CFALCON_JXCDoc* pDoc=	pView->GetDocument();
	if(pDoc->ConnectToServer())
	{

		pDoc->SendMsg("",1211);
	}
	else
		return;
a:
	if(pDoc->m_b2211)
	{
	   m_strRkdbh=pDoc->m_pMsg->ShortMessage;
	   pDoc->m_b2211 = FALSE;
	}
	else
	{
		pDoc->ProcessReadMessage();
		goto a;
	}
	
	CString strTemp = m_strRkdbh;
	int iRow = m_CMSFlexGrid.GetRows()-1;
	int iTemp = atoi(strTemp) + 1;

	strTemp.Format("%d",iRow);
	m_strCode = strTemp;
	m_strCode += CHARFLAG;
	m_strCode += "15";		//编号+11项明细+制单日期+制单人+状态
	m_strCode += CHARFLAG;

	strTemp.Format("%d",iTemp);
	for (int i=0; i<iRow; i++)
	{
		m_strCode += strTemp;
		m_strCode += CHARFLAG;
		for (int j=1; j<12; j++)
		{
			m_strCode += m_CMSFlexGrid.GetTextMatrix(i+1,j);
			m_strCode += CHARFLAG;
		}
		m_strCode += m_strRukuzhidanriqi;
		m_strCode += CHARFLAG;
		m_strCode += m_strRukuzhidanren;
		m_strCode += CHARFLAG;
		m_strCode += "未验收";
		m_strCode += CHARFLAG;
	}
	
	if(pDoc->ConnectToServer())
	{

		pDoc->SendMsg(m_strCode,1210);//发送存储"入库单"请求
		m_CMSFlexGrid.SetRows(2);
		for (int j=0; j<12;j++)
		{
			m_CMSFlexGrid.SetTextMatrix(1,j,"");
		}
		m_CMSFlexGrid.Refresh();
	}
	else
		return;

	/*/////////////////////
	添加打印函数
	*/////////////////////

	m_bSave = TRUE;
//	//OnOK();
}



void CRuku::OnShanchu() 
{
	// TODO: Add your control notification handler code here
	UpdateData();
	CString str;

	if (m_iDelRow >0)
	{	
		str.Format("是否删除第%d条记录?",m_iDelRow);
		if(AfxMessageBox(str,MB_YESNO) == IDYES)
		{
			if(m_iRow > 2)
			{
				m_CMSFlexGrid.RemoveItem(m_iDelRow);
				m_iRow--;
				m_CMSFlexGrid.SetRows(m_iRow);
				for(int i = 1; i < m_iRow; i++)
				{
					str.Format("%d",i);
					m_CMSFlexGrid.SetTextMatrix(i,0,str);
				}
				m_CMSFlexGrid.Refresh();
			}
			else
			{
				m_iRow--;
				m_CMSFlexGrid.SetRows(m_iRow);

			}
		}
	}
	else 
	{
		AfxMessageBox("请选择要删除的记录!");
		return;
	}
	m_iDelRow=0;
}

BEGIN_EVENTSINK_MAP(CRuku, CDialog)
    //{{AFX_EVENTSINK_MAP(CRuku)
	ON_EVENT(CRuku, IDC_MSFLEXGRID1, -600 /* Click */, OnClickMsflexgrid1, VTS_NONE)
	//}}AFX_EVENTSINK_MAP
END_EVENTSINK_MAP()

void CRuku::OnClickMsflexgrid1() 
{
	// TODO: Add your control notification handler code here
	m_iDelRow = m_CMSFlexGrid.GetRow();
}

void CRuku::OnTuichu() 
{
	// TODO: Add your control notification handler code here
	if (m_bSave == FALSE && AfxMessageBox("尚未出单!是否退出?", MB_YESNO | MB_ICONQUESTION) == IDNO)
	{
		return;
	}
	else
	{
		CDialog::OnOK();

	}	
}

void CRuku::OnOK() 
{
	//Dummy OnOk function!
}

void CRuku::OnCancel() 
{
	//Dummy OnCancel function!
}

⌨️ 快捷键说明

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