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

📄 dlginputstoreback2.cpp

📁 主要功能 企业仓库管理系统由基本信息管理模块、入库管理模块、库存管理模块、查询管理模块等几部分组成。 &#61553 基本信息管理模块 该模块主要包括操作员管理、商品信息管理、库存信息管理、供
💻 CPP
📖 第 1 页 / 共 2 页
字号:
	return false;
}

void CDlgInputStoreBack2::DoEditKeyDown(UINT nChar, UINT CtrlID)
{
	if ((nChar ==34)&&(CtrlID ==IDC_PROVIDERNAME))
	{
		CRect rect,rect1;
		listbox.GetWindowRect(rect1);
		providername.GetWindowRect(rect);
		ScreenToClient(rect);
		ScreenToClient(rect1);
		listbox.MoveWindow(rect.left,rect.bottom+2,rect.right-rect.left,rect1.bottom-rect1.top);	
		listbox.ShowWindow(SW_SHOW);
		SetWindowPos(&listbox.wndTopMost,rect.left,rect.bottom+2,rect.right-rect.left,rect1.bottom-rect1.top,SWP_SHOWWINDOW);
		listbox.SetSel(0);
		listbox.SetFocus();
	}
}

void CDlgInputStoreBack2::EditChage()
{
	CString str;
	list.edit.GetWindowText(str);
		CString sql = "";
		switch (list.col)
		{
		case 1 : 
			{
				if (!str.IsEmpty())
					sql.Format("select * from tb_merchandiseinfo where id like '%s%%' or shortname like '%s%%' ",str,str);
				break;
			}
		case 2 : 
			{
				if (!str.IsEmpty())
					sql.Format("select * from tb_merchandiseinfo where name like '%s%%' or shortname like '%s%%'",str,str);
				break;
			}
		case 3:
			{
				CString c_price,c_num,c_rebate,c_money;
				float f_price,f_num,f_rebate,f_money;
				c_price = str;
				c_num = list.GetItemText(list.row,4);
				c_rebate = list.GetItemText(list.row,5);
				if (c_price.IsEmpty()||c_num.IsEmpty()||c_rebate.IsEmpty())
				{
					//如果单价\数量\折扣为空,金额将为空
					list.SetItemText(list.row,6,""); 
				}
				else
				{
					f_price = atof(c_price);
					f_num = atof(c_num);
					f_rebate = atof(c_rebate);
					f_money = f_price*f_num*f_rebate;
					c_money.Format("%10.2f",f_money);
					list.SetItemText(list.row,6,c_money);
				}
				str.Format("%10.2f",CalculateMoney());
				str.TrimLeft();
				totalmoney.SetWindowText(str);
				break;
			}

		case 4:
			{
				CString c_price,c_num,c_rebate,c_money;
				float f_price,f_num,f_rebate,f_money;
				c_price = list.GetItemText(list.row,3);
				c_num = str;
				c_rebate = list.GetItemText(list.row,5);
				if (c_price.IsEmpty()||c_num.IsEmpty()||c_rebate.IsEmpty())
				{
					//如果单价\数量\折扣为空,金额将为空
					list.SetItemText(list.row,6,""); 
				}
				else
				{
					f_price = atof(c_price);
					f_num = atof(c_num);
					f_rebate = atof(c_rebate);
					f_money = f_price*f_num*f_rebate;
					c_money.Format("%10.2f",f_money);
					list.SetItemText(list.row,6,c_money);
				}
				str.Format("%10.2f",CalculateMoney());
				str.TrimLeft();
				totalmoney.SetWindowText(str);
				break;
			}
		case 5:
			{
				CString c_price,c_num,c_rebate,c_money;
				float f_price,f_num,f_rebate,f_money;
				c_price = list.GetItemText(list.row,3);
				c_num = list.GetItemText(list.row,4);
				c_rebate = str;
				if (c_price.IsEmpty()||c_num.IsEmpty()||c_rebate.IsEmpty())
				{
					//如果单价\数量\折扣为空,金额将为空
					list.SetItemText(list.row,6,""); 
				}
				else
				{
					f_price = atof(c_price);
					f_num = atof(c_num);
					f_rebate = atof(c_rebate);
					f_money = f_price*f_num*f_rebate;
					c_money.Format("%10.2f",f_money);
					list.SetItemText(list.row,6,c_money);
				}
				str.Format("%10.2f",CalculateMoney());
				str.TrimLeft();
				totalmoney.SetWindowText(str);
				break;
			}
		default:
			break;
		}
		if (! sql.IsEmpty())
		{
			m_pRs->raw_Close();
			m_pRs->Open((_bstr_t)sql,m_pCon.GetInterfacePtr(),adOpenKeyset,adLockOptimistic,adCmdText);
			if (m_pRs->RecordCount>0)
			{
				listinfo.DeleteAllItems();
				int i=0;
				while(! m_pRs->adoEOF)
				{
					listinfo.InsertItem(100,"");
					for (int m = 0;m<5;m++)
					listinfo.SetItemText(i,m,(TCHAR*)(_bstr_t)m_pRs->GetFields()->GetItem((long)m)->Value);
					m_pRs->MoveNext();
					i +=1;
				}
				ShowListInfo();
			}
			else
				listinfo.ShowWindow(SW_HIDE);
		}
		else
			listinfo.ShowWindow(SW_HIDE);
}

bool CDlgInputStoreBack2::InputInfoIsNull()
{
	CString c_provider,c_totalmoney,c_rebate,c_paymoney,c_factmoney;
	providername.GetWindowText(c_provider);
	totalmoney.GetWindowText(c_totalmoney);
	rebate.GetWindowText(c_rebate);
	paymoney.GetWindowText(c_paymoney);
	factmoney.GetWindowText(c_factmoney);
	if ((c_provider.IsEmpty())||(c_totalmoney.IsEmpty())||(c_rebate.IsEmpty())||(c_paymoney.IsEmpty())||(c_factmoney.IsEmpty()))
		return true;
	else
		return false;
}

void CDlgInputStoreBack2::LimitEdit()
{
	list.edit.IsNumber = false;
	//在修改商品数据,价格,折扣时只允许输入数字
	if ((list.col ==3)||(list.col ==4)||(list.col==5))
	{
		list.edit.IsNumber = true;
	}
}

void CDlgInputStoreBack2::MoveFocus()
{
	list.DisposeEdit(true);
	if (list.col <5)
	{
		list.col = list.col+1;
		CString tempID,tempname;
		tempID = list.GetItemText(list.row,1);
		tempname = list.GetItemText(list.row,2);
		list.showedit = true;
		if ((tempname.IsEmpty()==false)&&(list.col == 1))
			list.showedit =false;
		else if((tempID.IsEmpty()==false)&&(list.col == 2))
			list.showedit =false;
		list.ShowEdit();
	}
	else
	{
		AddNewRow();
	}
}

void CDlgInputStoreBack2::OnChangeRebate() 
{
	CString c_totalmoney,c_rebate,c_paymoney;
	float f_totalmoney,f_rebate,f_paymoney;
	totalmoney.GetWindowText(c_totalmoney);
	rebate.GetWindowText(c_rebate);
	if(!c_totalmoney.IsEmpty()&&!c_rebate.IsEmpty())
	{
		f_totalmoney = atof(c_totalmoney);
		f_rebate = atof(c_rebate);
		f_paymoney = f_totalmoney *f_rebate;
		c_paymoney.Format("%10.2f",f_paymoney);
		c_paymoney.TrimLeft();
		paymoney.SetWindowText(c_paymoney);
	}
	else
	{
		paymoney.SetWindowText("");
	}	
}

void CDlgInputStoreBack2::OnChangeTotalmoney() 
{
	//调用折扣改变时的事件
	OnChangeRebate();	
}

void CDlgInputStoreBack2::OnDblclkList2(NMHDR* pNMHDR, LRESULT* pResult) 
{
	int row = listinfo.GetSelectionMark();
	if (row!=-1)
	{
		CString temp;
		temp = listinfo.GetItemText(row,0);
		//设置商品编号
		list.SetItemText(list.row,1,temp);
		//设置商品名称
		list.SetItemText(list.row,2,listinfo.GetItemText(row,1));
		//设置默认价格
		list.SetItemText(list.row,3,listinfo.GetItemText(row,4));
		listinfo.ShowWindow(SW_HIDE);
	}
	//移动编辑框
	//MoveFocus();
	list.col =3;
	list.ShowEdit();
	//*pResult = 0;	
}

void CDlgInputStoreBack2::OnKillfocusListbox() 
{
	listbox.ShowWindow(SW_HIDE);	
}

void CDlgInputStoreBack2::OnKillfocusList2(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here

	*pResult = 0;
}

void CDlgInputStoreBack2::OnKillfocusListbox2() 
{
	storage.ShowWindow(SW_HIDE);	
}

void CDlgInputStoreBack2::ShowListinfo()
{
	if (listinfo.IsWindowVisible())
	{
		listinfo.SetFocus();
		listinfo.SetSelectionMark(1);
	}
}

void CDlgInputStoreBack2::ShowListInfo()
{
	CRect rect;
	list.GetSubItemRect(list.row,list.col,LVIR_BOUNDS,rect);
	listinfo.MoveWindow(rect.left,rect.bottom+1,300,150);
	listinfo.ShowWindow(SW_SHOW);
}

void CDlgInputStoreBack2::ShowStorage()
{
	if (list.col ==0)
		if (!storage.IsWindowVisible())
		{
			CRect rect;
			list.GetSubItemRect(list.row,list.col,LVIR_BOUNDS,rect);
			storage.MoveWindow(rect.left,rect.bottom,100,80,0);
			storage.ShowWindow(SW_SHOW);
			storage.SetFocus();
			storage.SetCurSel(0);
		}
}

void CDlgInputStoreBack2::OnDblclkListbox() 
{
	CString temp;
	int index = listbox.GetCurSel();
	if (index != -1)
	{
		listbox.GetText(index,temp);
		if (! temp.IsEmpty())
			providername.SetWindowText(temp);
		providername.SetFocus();
		listbox.ShowWindow(SW_HIDE);
	}	
}

void CDlgInputStoreBack2::OnDblclkListbox2() 
{
	CString temp;
	int index = storage.GetCurSel();
	if (index != -1)
	{
		storage.GetText(index,temp);
		if (! temp.IsEmpty())
			list.SetItemText(list.row,list.col,temp);
		list.SetFocus();
		storage.ShowWindow(SW_HIDE);
		list.col+=1;
		list.ShowEdit();
	}	
}

void CDlgInputStoreBack2::AddStorage()
{
	storage.SetRedraw(FALSE);
	storage.ResetContent();//删除所有的数据
	CString sql;
	sql = "select distinct storagename from tb_storageinfo";
	m_pRs->Close();
	m_pRs->Open((_bstr_t)sql,m_pCon.GetInterfacePtr(),adOpenKeyset,adLockOptimistic,adCmdText);
	while (!m_pRs->adoEOF)
	{
		storage.AddString((TCHAR *)(_bstr_t)m_pRs->GetFields()->GetItem("storagename")->Value);
		m_pRs->MoveNext();
	}
	storage.SetRedraw(TRUE);
	storage.Invalidate();
}

//退货商品在库存中是否存在
bool CDlgInputStoreBack2::MerchandiseIsExis(CString & id)
{
	CString sql;
	for (int i = 0;i<list.GetItemCount();i++)
	{
		CString c_id,c_stock;
		c_id = list.GetItemText(i,1);
		c_stock = list.GetItemText(i,0);
	    sql.Format("select * from tb_merchandisestorage where merchandiseid = '%s' and storagename = '%s'",c_id,c_stock);
		m_pRs->Close();
		m_pRs->Open((_variant_t)sql,m_pCon.GetInterfacePtr(),adOpenKeyset,adLockOptimistic,adCmdText);
		if (m_pRs->RecordCount<=0)
		{
			id = c_id;
			return false;
		}			
	}
	return true;
}

⌨️ 快捷键说明

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