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

📄 spilldisrepair.cpp

📁 码头手持机项目,用于统计集装箱,轮船的情况,手持机采用S3C2440处理器,数据传输采用2.4G无线,上位机用VC编写
💻 CPP
字号:
// SpillDisrepair.cpp : implementation file
//

#include "stdafx.h"
#include "CTSClient.h"
#include "SpillDisrepair.h"

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

extern SOCKET clientSocket;
extern CString workDate;
extern CString workOrders;
/////////////////////////////////////////////////////////////////////////////
extern BOOL socketconnect;
/////////////////////////////////////////////////////////////////////////////
extern char recvbuf2[3072];

/////////////////////////////////////////////////////////////////////////////
// SpillDisrepair dialog


SpillDisrepair::SpillDisrepair(CWnd* pParent /*=NULL*/)
: CDialog(SpillDisrepair::IDD, pParent)
{
	//{{AFX_DATA_INIT(SpillDisrepair)
	m_containerNo = _T("");
	m_sealNo = _T("");
	m_tareWeight = _T("");
	m_cargoWeight = _T("");

	objectId = _T("");
	tallyListObjId = _T("");
    tallyListItemObjId = _T("");
	propertyObjId = _T("");

	sizeAndTypeObjId = _T("");
	containerStatus = _T("");

	modify = false;

	sizeAndTypeInitValue = _T("");
	containerStatusInitValue = _T("");
	//}}AFX_DATA_INIT
}


void SpillDisrepair::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(SpillDisrepair)
	DDX_Control(pDX, IDC_COMBO2, m_sizeAndType);
	DDX_Control(pDX, IDC_COMBO3, m_containerStatus);
	DDX_Control(pDX, IDC_COMBO1, m_damageCodeULSD);
	DDX_Text(pDX, IDC_EDIT1, m_containerNo);
	DDX_Text(pDX, IDC_EDIT2, m_sealNo);
	DDX_Text(pDX, IDC_EDIT4, m_tareWeight);
	DDX_Text(pDX, IDC_EDIT6, m_cargoWeight);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(SpillDisrepair, CDialog)
//{{AFX_MSG_MAP(SpillDisrepair)
ON_WM_CANCELMODE()
ON_BN_CLICKED(IDC_BUTTON3, OnCancel)
ON_BN_CLICKED(IDC_BUTTON2, OnSave)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// SpillDisrepair message handlers

BOOL SpillDisrepair::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	UpdateData(true);
	
	m_damageCodeULSD.SetCurSel(0);
	
    if (sizeAndTypeInitValue == _T("10")){
		m_sizeAndType.SetCurSel(0);
	}else if (sizeAndTypeInitValue == _T("20")){
		m_sizeAndType.SetCurSel(1);
	}else if (sizeAndTypeInitValue == _T("40")){
		m_sizeAndType.SetCurSel(2);
	}else if (sizeAndTypeInitValue == _T("45")){
		m_sizeAndType.SetCurSel(3);
	}
	
	if (containerStatusInitValue == _T("E")){
		m_containerStatus.SetCurSel(0);
	}else if (containerStatusInitValue == _T("F")){
		m_containerStatus.SetCurSel(1);
	}
	
	UpdateData(false);
	
	return TRUE;  // return TRUE unless you set the focus to a control
	// EXCEPTION: OCX Property Pages should return FALSE
}

void SpillDisrepair::OnCancelMode() 
{
	CDialog::OnCancelMode();
	
	// TODO: Add your message handler code here
	
}

void SpillDisrepair::OnCancel() 
{
	// TODO: Add your control notification handler code here
	modify = false;
	CDialog::OnCancel();
}

void SpillDisrepair::OnSave() 
{
	// TODO: Add your control notification handler code here
	
	/////////////////////////////////////////////////////////////////////////////////////
    if (!socketconnect)
    {
		MessageBox(_T("与服务器连接中断,请检查网络后重新登录该系统!"),_T("出错提示"));
		return;
    }
	/////////////////////////////////////////////////////////////////////////////////////
	
	modify = true;
	UpdateData(true);
	
	int selectIndex = 0;
	CString selectText = _T("");
	int retint=0;
	int iSize;
	char* pszMultiByte;
	CString ULSDSQL = _T("");	
	
	selectIndex = m_damageCodeULSD.GetCurSel();
	m_damageCodeULSD.GetLBText(selectIndex,selectText);
	
    if (selectText == _T("溢卸集装箱")){
		propertyObjId = "{17AFE800-FAFC-441D-AAEB-909F7C26E65B}";
		ULSDSQL = _T("");	
		ULSDSQL = "insert into tallyexceptioninfo values('"+objectId+"','"+tallyListItemObjId+"','"+propertyObjId+"','','','','','','','','','')";
        ULSDSQL="   "+ULSDSQL+'\0';
		
		iSize = WideCharToMultiByte(CP_ACP, 0, ULSDSQL, -1, NULL, 0, NULL, NULL);
		pszMultiByte = (char*)malloc((iSize+1)*sizeof(char));
		WideCharToMultiByte(CP_ACP, 0, ULSDSQL, -1, pszMultiByte, iSize, NULL, NULL);
		*pszMultiByte=1;
		pszMultiByte++;
		*pszMultiByte=iSize/256;
		pszMultiByte++;
		*pszMultiByte=iSize%256;
		pszMultiByte=pszMultiByte-2;
		
		send(clientSocket,pszMultiByte,iSize,0);
		free(pszMultiByte);
		delete pszMultiByte;
		retint=recv(clientSocket,recvbuf2,sizeof(recvbuf2), 0);

		if (recvbuf2[0]==8 && retint==1)
		{
			MessageBox(_T("网络传输出错,请重新点击按钮再试一次!!!"),_T("提示"));
			return;
		}
		
		int sizeAndTypeIndex = 0;
		CString sizeAndTypeText = "";	
		sizeAndTypeIndex = m_sizeAndType.GetCurSel();
		m_sizeAndType.GetLBText(sizeAndTypeIndex,sizeAndTypeText);
		
		if (sizeAndTypeText == _T("10")){
			sizeAndTypeObjId = "{59CBD921-5DF6-4C7B-9A17-C2A7E2DE1111}";
		}
		
		if (sizeAndTypeText == _T("20")){
			sizeAndTypeObjId = "{D70E12D5-C974-4E53-AB92-81EB0E916B1B}";
		}
		
		if (sizeAndTypeText == _T("40")){
			sizeAndTypeObjId = "{3B070961-AE83-4CDE-94F8-F617DCD9677E}" ;
		}
		
		if (sizeAndTypeText == _T("45")){
			sizeAndTypeObjId = "{59CBD921-5DF6-4C7B-9A17-C2A7E2DE2222}";
		}
		
		int containerStatusIndex = 0;
		CString containerStatusText = "";
		
		containerStatusIndex = m_containerStatus.GetCurSel();
		m_containerStatus.GetLBText(containerStatusIndex,containerStatusText);
		
		if (containerStatusText == _T("E")){
			containerStatus = _T("E");
		}
		
		if (containerStatusText == _T("F")){
			containerStatus = _T("F");
		}
		
		ULSDSQL = _T("");
		ULSDSQL = "insert into tallylistitem values('"+objectId+"','"+tallyListObjId+"','','','','"+m_containerNo+"','','"+sizeAndTypeObjId+"','"+containerStatus+"','"+m_sealNo+"','','"+m_cargoWeight+"','"+m_tareWeight+"','','','','','','1','','1','"+workDate+"','"+workOrders+"','')";
		ULSDSQL="   "+ULSDSQL+'\0';
		
		iSize = WideCharToMultiByte(CP_ACP, 0, ULSDSQL, -1, NULL, 0, NULL, NULL);
		pszMultiByte = (char*)malloc((iSize+1)*sizeof(char));
		WideCharToMultiByte(CP_ACP, 0, ULSDSQL, -1, pszMultiByte, iSize, NULL, NULL);
		*pszMultiByte=1;
		pszMultiByte++;
		*pszMultiByte=iSize/256;
		pszMultiByte++;
		*pszMultiByte=iSize%256;
		pszMultiByte=pszMultiByte-2;
		
		send(clientSocket,pszMultiByte,iSize,0);
		free(pszMultiByte);
		delete pszMultiByte;
		
		retint=recv(clientSocket,recvbuf2,sizeof(recvbuf2), 0);
		if (recvbuf2[0]==8 && retint==1)
		{
			MessageBox(_T("网络传输出错,请重新点击按钮再试一次!!!"),_T("提示"));
			return;
		}
		//if (recvBuf[0]==3)
		//{
		//	MessageBox(_T("该条记录已经成功保存!"));
		//}
	}
	
	if (selectText == _T("短卸集装箱")){
		propertyObjId = "{18AFE800-FAFC-441D-AAEB-909F7C26E65B}";
		ULSDSQL = _T("");
		ULSDSQL = "insert into tallyexceptioninfo values('"+objectId+"','"+tallyListItemObjId+"','"+propertyObjId+"','','','','','','','','','')";	
		ULSDSQL="   "+ULSDSQL+'\0';
		
		iSize = WideCharToMultiByte(CP_ACP, 0, ULSDSQL, -1, NULL, 0, NULL, NULL);
		pszMultiByte = (char*)malloc((iSize+1)*sizeof(char));
		WideCharToMultiByte(CP_ACP, 0, ULSDSQL, -1, pszMultiByte, iSize, NULL, NULL);
		*pszMultiByte=1;
		pszMultiByte++;
		*pszMultiByte=iSize/256;
		pszMultiByte++;
		*pszMultiByte=iSize%256;
		pszMultiByte=pszMultiByte-2;
		
		send(clientSocket,pszMultiByte,iSize,0);
		free(pszMultiByte);
		delete pszMultiByte;
		
		retint=recv(clientSocket,recvbuf2,sizeof(recvbuf2), 0);
		if (recvbuf2[0]==8 && retint==1)
		{
			MessageBox(_T("网络传输出错,请重新点击按钮再试一次!!!"),_T("提示"));
			return;
		}
		
		//CString ULUCOSQL;
		//ULUCOSQL = "update tallylistitem set checkedFlag = '1',workDate = '"+workDate+"',workOrders = '"+workOrders+"'  where objectId = '"+tallyListItemObjId+"'";
		//ULUCOSQL="   "+ULUCOSQL+'\0';
		
		//int iSize;
		//char* pszMultiByte;
		//iSize = WideCharToMultiByte(CP_ACP, 0, ULUCOSQL, -1, NULL, 0, NULL, NULL);
		//pszMultiByte = (char*)malloc((iSize+1)*sizeof(char));
		//WideCharToMultiByte(CP_ACP, 0, ULUCOSQL, -1, pszMultiByte, iSize, NULL, NULL);
		//*pszMultiByte=1;
		//pszMultiByte++;
		//*pszMultiByte=iSize/256;
		//pszMultiByte++;
		//*pszMultiByte=iSize%256;
		//pszMultiByte=pszMultiByte-2;
		//send(clientSocket,pszMultiByte,iSize,0);
		//free(pszMultiByte);
		//delete pszMultiByte;
		
		//retint=recv(clientSocket,recvBuf,sizeof(recvBuf),0);
		//if (recvBuf[0]==3)
		//{
		//	MessageBox(_T("该条记录已经成功保存!"));
		//}
	}		
	
	CDialog::OnCancel();
}

⌨️ 快捷键说明

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