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

📄 unloadclass.cpp

📁 码头手持机项目,用于统计集装箱,轮船的情况,手持机采用S3C2440处理器,数据传输采用2.4G无线,上位机用VC编写
💻 CPP
📖 第 1 页 / 共 2 页
字号:
		CString LLCSSQL = _T("");	
		
		LLCSSQL = "select objectId from tallylistitem where checkedFlag = '1' and objectId = '"+tallyListItemObjectId+"'";
		LLCSSQL="   "+LLCSSQL+'\0';
		
		int iSize = 0;
		char* pszMultiByte;
		iSize = WideCharToMultiByte(CP_ACP, 0, LLCSSQL, -1, NULL, 0, NULL, NULL);
		pszMultiByte = (char*)malloc((iSize+1)*sizeof(char));
		WideCharToMultiByte(CP_ACP, 0, LLCSSQL, -1, pszMultiByte, iSize, NULL, NULL);
		*pszMultiByte=3;
		pszMultiByte++;
		*pszMultiByte=iSize/256;
		pszMultiByte++;
		*pszMultiByte=iSize%256;
		pszMultiByte=pszMultiByte-2;
		int i = 0,j = 0;
		int retint = 0;
		int totalnum = 0;
		
		int itemcount = m_list_unload.GetItemCount();
		for (j=0;j<itemcount;j++)
			m_list_unload.DeleteItem(itemcount-1-j);
		int mint=send(clientSocket,pszMultiByte,iSize,0);
		free(pszMultiByte);
		delete pszMultiByte;
		
		int temp1 = 0,temp2 = 0,actint = 0;
		retint=recv(clientSocket,recvbuf2,sizeof(recvbuf2),0);
		if (recvbuf2[0]==8 && retint==1)
		{
			MessageBox(_T("网络传输出错,请重新点击按钮再试一次!!!"),_T("提示"));
			return;
		}
		if (recvbuf2[0]==27)
		{
			UnloadOperationDetail unloadOperationDetailDlg;
			unloadOperationDetailDlg.m_containerNo = containerNo;
			unloadOperationDetailDlg.m_sealNo = sealNo;
			unloadOperationDetailDlg.DoModal();
			if (unloadOperationDetailDlg.modify == true){
				UnloadOperation();		
			}		
		}else{
			int j=0;
			int itemcount = m_list_unload.GetItemCount();
			for (j=0;j<itemcount;j++)
				m_list_unload.DeleteItem(0);
			m_containerNo = _T("");
			m_deliveryPortNameC= _T("");
			m_dischargePortNameC= _T("");
			m_containerSize = _T("");
			m_containerStatus = _T("");
			m_containerType = _T("");
			m_cargoWeight = _T("");
			
			MessageBox(_T("该箱号已经理货,请查询其他箱号!!!"),_T("提示"));
		}
		/////////////////////////////////////////////////////////////////////////////
	}
	
	GetDlgItem(IDC_EDIT2)->SetFocus();
	UpdateData(false);
}

void UnloadClass::OnClickList1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	int iPos=m_list_unload.GetSelectionMark();
	m_deliveryPortNameC=m_list_unload.GetItemText(iPos,0);
	tallyListItemObjectId=m_list_unload.GetItemText(iPos,1);
	tallyListObjId=m_list_unload.GetItemText(iPos,2);
	containerNo=m_list_unload.GetItemText(iPos,3);
	containerSize=m_list_unload.GetItemText(iPos,4) + m_list_unload.GetItemText(iPos,9);
	m_containerSize=m_list_unload.GetItemText(iPos,4);
	containerStatus=m_list_unload.GetItemText(iPos,5);
	m_containerStatus=m_list_unload.GetItemText(iPos,5);
	m_cargoWeight=m_list_unload.GetItemText(iPos,6);
	m_dischargePortNameC=m_list_unload.GetItemText(iPos,7);
	sealNo=m_list_unload.GetItemText(iPos,8);
	m_containerType=m_list_unload.GetItemText(iPos,9);
	
	UpdateData(FALSE);
	
	*pResult = 0;
}

void UnloadClass::OnBegindragList1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	HD_NOTIFY * phdn = (HD_NOTIFY *) pNMHDR;
	// TODO: Add your control notification handler code here
	
	*pResult = 0;
}

void UnloadClass::OnDisrepairRecord() 
{
	// TODO: Add your control notification handler code here
	/////////////////////////////////////////////////////////////////////////////////////
    if (!socketconnect)
    {
		MessageBox(_T("与服务器连接中断,请检查网络后重新登录该系统!"),_T("出错提示"));
		return;
    }
	/////////////////////////////////////////////////////////////////////////////////////
	int sPos=m_list_unload.GetSelectionMark();
    if(sPos==-1){
		MessageBox(_T("请先选择一条记录!!!"),_T("出错提示"));
	}else{
		DisrepairRecord disrepairRecordDlg;
        disrepairRecordDlg.objectId = newGUID();
		disrepairRecordDlg.tallyListItemObjId = tallyListItemObjectId;
        disrepairRecordDlg.m_containerNo = containerNo;
        disrepairRecordDlg.m_sealNo = sealNo;
		disrepairRecordDlg.DoModal();
		if (disrepairRecordDlg.modify == true){
			int j=0;
			int itemcount = m_list_unload.GetItemCount();
			for (j=0;j<itemcount;j++)
				m_list_unload.DeleteItem(0);
			m_containerNo = _T("");
			m_deliveryPortNameC= _T("");
			m_dischargePortNameC= _T("");
			m_containerSize = _T("");
			m_containerStatus = _T("");
			m_containerType = _T("");
			m_cargoWeight = _T("");
		}
	}
	
	GetDlgItem(IDC_EDIT2)->SetFocus();
	UpdateData(FALSE);
}

void UnloadClass::OnModifyContainerNo() 
{
	// TODO: Add your control notification handler code here
	/////////////////////////////////////////////////////////////////////////////////////
    if (!socketconnect)
    {
		MessageBox(_T("与服务器连接中断,请检查网络后重新登录该系统!"),_T("出错提示"));
		return;
    }
	/////////////////////////////////////////////////////////////////////////////////////
	int sPos=m_list_unload.GetSelectionMark();
    if(sPos==-1){
		MessageBox(_T("请先选择一条记录!!!"),_T("出错提示"));
	}
    else
	{
		ModifyContainerNo modifyContainerNoDlg;
		modifyContainerNoDlg.m_objectId = tallyListItemObjectId;
		modifyContainerNoDlg.m_containerNo = containerNo;
		modifyContainerNoDlg.m_sealNo = sealNo;
		modifyContainerNoDlg.sizeAndTypeInitValue = containerSize;
		modifyContainerNoDlg.containerStatusInitValue = containerStatus;
        modifyContainerNoDlg.oldContainerNo = containerNo;
		modifyContainerNoDlg.oldSealNo = sealNo;
		modifyContainerNoDlg.oldContainerStatus = containerStatus;
		modifyContainerNoDlg.objectId = newGUID();
		modifyContainerNoDlg.DoModal();
		if (modifyContainerNoDlg.modify == true){
			int j;
			int itemcount = m_list_unload.GetItemCount();
			for (j=0;j<itemcount;j++)
				m_list_unload.DeleteItem(0);
			m_containerNo = _T("");
			m_deliveryPortNameC= _T("");
			m_dischargePortNameC= _T("");
			m_containerSize = _T("");
			m_containerStatus = _T("");
			m_containerType = _T("");
			m_cargoWeight = _T("");
		}
	}
	
	GetDlgItem(IDC_EDIT2)->SetFocus();
	UpdateData(FALSE);
}

void UnloadClass::OnSpillDisrepair() 
{
	// TODO: Add your control notification handler code here
	/////////////////////////////////////////////////////////////////////////////////////
    if (!socketconnect)
    {
		MessageBox(_T("与服务器连接中断,请检查网络后重新登录该系统!"),_T("出错提示"));
		return;
    }
	/////////////////////////////////////////////////////////////////////////////////////
	int sPos=m_list_unload.GetSelectionMark();
    if(sPos==-1){
		MessageBox(_T("请先选择一条记录!!!"),_T("出错提示"));
	}
    else
	{
		SpillDisrepair spillDisrepairDlg;
		spillDisrepairDlg.objectId = newGUID();
        spillDisrepairDlg.tallyListObjId = tallyListObjId;
		spillDisrepairDlg.tallyListItemObjId = tallyListItemObjectId;
		spillDisrepairDlg.m_containerNo = containerNo;
		spillDisrepairDlg.m_sealNo = sealNo;
		spillDisrepairDlg.sizeAndTypeInitValue = m_containerSize;
		spillDisrepairDlg.containerStatusInitValue = containerStatus;
		spillDisrepairDlg.DoModal();
		if (spillDisrepairDlg.modify == true){
			int j=0;
			int itemcount = m_list_unload.GetItemCount();
			for (j=0;j<itemcount;j++)
				m_list_unload.DeleteItem(0);
			m_containerNo = _T("");
			m_deliveryPortNameC= _T("");
			m_dischargePortNameC= _T("");
			m_containerSize = _T("");
			m_containerStatus = _T("");
			m_containerType = _T("");
			m_cargoWeight = _T("");
		}
	}
	
	GetDlgItem(IDC_EDIT2)->SetFocus();
	UpdateData(FALSE);
}

void UnloadClass::OnApplyCheck() 
{
	// TODO: Add your control notification handler code here
	/////////////////////////////////////////////////////////////////////////////////////
    if (!socketconnect)
    {
		MessageBox(_T("与服务器连接中断,请检查网络后重新登录该系统!"),_T("出错提示"));
		return;
    }
	/////////////////////////////////////////////////////////////////////////////////////
	int sPos=m_list_unload.GetSelectionMark();
    if(sPos==-1){
		MessageBox(_T("请先选择一条记录!!!"),_T("出错提示"));
	}
    else
	{
		ApplyCheck applyCheckDlg;
        applyCheckDlg.objectId = newGUID();
		applyCheckDlg.tallyListItemObjId = tallyListItemObjectId;
		applyCheckDlg.propertyObjId = "{17AFE800-FAFC-441D-AAEB-909F7C26E65m}";
        applyCheckDlg.m_containerNo = containerNo;
		applyCheckDlg.m_sealNo = sealNo;
		//applyCheckDlg.m_originalSealCondition = sealNo;
		applyCheckDlg.DoModal();
		if (applyCheckDlg.modify == true){
			int j;
			int itemcount = m_list_unload.GetItemCount();
			for (j=0;j<itemcount;j++)
				m_list_unload.DeleteItem(0);
			m_containerNo = _T("");
			m_deliveryPortNameC= _T("");
			m_dischargePortNameC= _T("");
			m_containerSize = _T("");
			m_containerStatus = _T("");
			m_containerType = _T("");
			m_cargoWeight = _T("");
		}
	}
	
	GetDlgItem(IDC_EDIT2)->SetFocus();
	UpdateData(FALSE);
}

void UnloadClass::UnloadOperation()
{
	int j=0;
	int retint=0;
	int itemcount = m_list_unload.GetItemCount();
	for (j=0;j<itemcount;j++)
		m_list_unload.DeleteItem(0);
	UpdateData(true);
	
	CString ULUCOSQL = _T("");	
	ULUCOSQL = "update tallylistitem set checkedFlag = '1',workDate = '"+workDate+"',workOrders = '"+workOrders+"'  where objectId = '"+tallyListItemObjectId+"'";
	ULUCOSQL="   "+ULUCOSQL+'\0';
	
	int iSize=0;
	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,recvbuf2,sizeof(recvbuf2),0);
    if (recvbuf2[0]==8 && retint==1)
	{
		MessageBox(_T("网络传输出错,请重新点击按钮再试一次!!!"),_T("提示"));
		return;
	}
	m_containerNo = _T("");
	m_deliveryPortNameC= _T("");
	m_dischargePortNameC= _T("");
	m_containerSize = _T("");
	m_containerStatus = _T("");
	m_containerType = _T("");
	m_cargoWeight = _T("");
	
	UpdateData(false);
}

void UnloadClass::OnUnloadArriveCheckNoQuery() 
{
	// TODO: Add your control notification handler code here
	/////////////////////////////////////////////////////////////////////////////////////
    if (!socketconnect)
    {
		MessageBox(_T("与服务器连接中断,请检查网络后重新登录该系统!"),_T("出错提示"));
		return;
    }
	/////////////////////////////////////////////////////////////////////////////////////
	UnloadArriveCheckNoQuery unloadarriveCheckNoQueryDlg;
	unloadarriveCheckNoQueryDlg.DoModal();
	if (unloadarriveCheckNoQueryDlg.modify == true){
		////////////////////////////////////////////////////////////
        int j=0;
		int itemcount = m_list_unload.GetItemCount();
		for (j=0;j<itemcount;j++)
			m_list_unload.DeleteItem(0);
		m_containerNo = _T("");
		m_deliveryPortNameC= _T("");
		m_dischargePortNameC= _T("");
		m_containerSize = _T("");
		m_containerStatus = _T("");
		m_containerType = _T("");
		m_cargoWeight = _T("");
		////////////////////////////////////////////////////////////
        arriveCheckNo = unloadarriveCheckNoQueryDlg.arriveCheckNo;
        m_shipName = unloadarriveCheckNoQueryDlg.shipNameC;
		m_unload_voyageNo = unloadarriveCheckNoQueryDlg.voyageNo;
		objectId = unloadarriveCheckNoQueryDlg.objectId;
	}
	
	GetDlgItem(IDC_EDIT2)->SetFocus();
	UpdateData(false);
	/////////////////////////////////////////////////////////////////////////////////////
}

void UnloadClass::OnButton7() 
{
	// TODO: Add your control notification handler code here
	/////////////////////////////////////////////////////////////////////////////////////
    if (!socketconnect)
    {
		MessageBox(_T("与服务器连接中断,请检查网络后重新登录该系统!"),_T("出错提示"));
		return;
    }
	/////////////////////////////////////////////////////////////////////////////////////
	int sPos=m_list_unload.GetSelectionMark();
    if(sPos==-1){
		MessageBox(_T("请先选择一条记录!!!"),_T("出错提示"));
	}
    else
	{
		UnloadModifySealNo modifySealNoDlg;
		modifySealNoDlg.m_objectId = tallyListItemObjectId;
		modifySealNoDlg.m_containerNo = containerNo;
		modifySealNoDlg.m_sealNo = sealNo;
		modifySealNoDlg.sizeAndTypeInitValue = containerSize;
		modifySealNoDlg.containerStatusInitValue = containerStatus;
		modifySealNoDlg.oldContainerNo = containerNo;
		modifySealNoDlg.oldSealNo = sealNo;
		modifySealNoDlg.oldContainerStatus = containerStatus;
		modifySealNoDlg.objectId = newGUID();
		modifySealNoDlg.DoModal();
		if (modifySealNoDlg.modify == true){
			int j;
			int itemcount = m_list_unload.GetItemCount();
			for (j=0;j<itemcount;j++)
				m_list_unload.DeleteItem(0);
			m_containerNo = _T("");
			m_deliveryPortNameC= _T("");
			m_dischargePortNameC= _T("");
			m_containerSize = _T("");
			m_containerStatus = _T("");
			m_containerType = _T("");
			m_cargoWeight = _T("");
		}
	}
	
	GetDlgItem(IDC_EDIT2)->SetFocus();
	UpdateData(FALSE);
}

⌨️ 快捷键说明

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