📄 dlgzcxs_shhy.cpp
字号:
// DlgZCXS_SHHY.cpp : implementation file
//
#include "stdafx.h"
#include "falcon_jxc.h"
#include "DlgZCXS_SHHY.h"
#include "FALCON_JXCView.h"
#include "message.h"
#include "dlgspmx.h"
#include "Chbmxg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDlgZCXS_SHHY dialog
CDlgZCXS_SHHY::CDlgZCXS_SHHY(CWnd* pParent /*=NULL*/)
: CDialog(CDlgZCXS_SHHY::IDD, pParent)
{
//{{AFX_DATA_INIT(CDlgZCXS_SHHY)
m_sAnzhuangren = _T("");
m_sShangwuxiawu = _T("");
m_iDelXuhao = 0;
m_sDianhua = _T("");
m_sKehuxingming = _T("");
m_sLouceng = _T("");
m_fQita = 0.0f;
m_sRiqi = _T("");
m_sShijian = _T("");
m_sXiangxidizhi = _T("");
m_sYingyeyuan = _T("");
m_fYunfei = 0.0f;
m_fXiaoji = 0.0f;
m_fHeji = 0.0f;
m_strShoukuandanhao = _T("");
//}}AFX_DATA_INIT
m_nRowNum = 1;
m_iSelectRow = 0;
m_bSave = FALSE;
//Andrew--------------------------------------------------
m_pView = NULL;
}
CDlgZCXS_SHHY::CDlgZCXS_SHHY(CFALCON_JXCView * pView)
{
m_sAnzhuangren = _T("");
m_sShangwuxiawu = _T("");
m_iDelXuhao = 0;
m_sDianhua = _T("");
m_sKehuxingming = _T("");
m_sLouceng = _T("");
m_fQita = 0.0f;
m_sRiqi = _T("");
m_sShijian = _T("");
m_sXiangxidizhi = _T("");
m_sYingyeyuan = _T("");
m_fYunfei = 0.0f;
m_fXiaoji = 0.0f;
m_fHeji = 0.0f;
m_strShoukuandanhao = _T("");
m_nRowNum = 1;
m_iSelectRow = 0;
m_bSave = FALSE;
m_pView = pView;
}
BOOL CDlgZCXS_SHHY::Create()
{
return CDialog::Create(CDlgZCXS_SHHY::IDD);
}
//----------------------------------------------------------
void CDlgZCXS_SHHY::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDlgZCXS_SHHY)
DDX_Control(pDX, IDC_HEJI, m_ctrHeji);
DDX_Control(pDX, IDC_COMBO1, m_ctrShijian);
DDX_Text(pDX, IDC_ANZHUANGREN, m_sAnzhuangren);
DDX_CBString(pDX, IDC_COMBO1, m_sShangwuxiawu);
DDX_Text(pDX, IDC_DELXUHAO2, m_iDelXuhao);
DDX_Text(pDX, IDC_DIANHUA, m_sDianhua);
DDX_Text(pDX, IDC_KEHUXINGMING, m_sKehuxingming);
DDX_Text(pDX, IDC_LOUCENG, m_sLouceng);
DDX_Control(pDX, IDC_MSFLEXGRID1, m_ctrMSFlexGrid);
DDX_Text(pDX, IDC_QITA, m_fQita);
DDX_Text(pDX, IDC_RIQI, m_sRiqi);
DDX_Text(pDX, IDC_SHIJIAN, m_sShijian);
DDX_Text(pDX, IDC_XIANGXIDIZHI, m_sXiangxidizhi);
DDX_Text(pDX, IDC_YINGYEYUAN, m_sYingyeyuan);
DDX_Text(pDX, IDC_YUNFEI, m_fYunfei);
DDX_Text(pDX, IDC_XIAOJI, m_fXiaoji);
DDX_Text(pDX, IDC_HEJI, m_fHeji);
DDX_Text(pDX, IDC_SHOUKUANDANHAO, m_strShoukuandanhao);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDlgZCXS_SHHY, CDialog)
//{{AFX_MSG_MAP(CDlgZCXS_SHHY)
ON_BN_CLICKED(IDC_ADD, OnAdd)
ON_EN_CHANGE(IDC_YUNFEI, OnChangeYunfei)
ON_BN_CLICKED(IDC_DEL, OnDel)
ON_BN_CLICKED(IDC_QUEDING, OnQueding)
ON_BN_CLICKED(IDC_TUICHU, OnTuichu)
ON_BN_CLICKED(IDC_CHAXUN, OnChaxun)
ON_BN_CLICKED(IDC_XIUGAI, OnXiugai)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDlgZCXS_SHHY message handlers
BOOL CDlgZCXS_SHHY::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
CFALCON_JXCDoc* pDoc= m_pView->GetDocument();
m_ctrMSFlexGrid.SetTextArray(0,"序号");
m_ctrMSFlexGrid.SetTextArray(1,"编码");
m_ctrMSFlexGrid.SetTextArray(2,"名称");
m_ctrMSFlexGrid.SetTextArray(3,"规格");
m_ctrMSFlexGrid.SetTextArray(4,"单位");
m_ctrMSFlexGrid.SetTextArray(5,"数量");
m_ctrMSFlexGrid.SetTextArray(6,"原价");
m_ctrMSFlexGrid.SetTextArray(7,"优惠价");
m_ctrMSFlexGrid.SetTextArray(8,"折扣率");
m_ctrMSFlexGrid.SetTextArray(9,"金额");
m_ctrMSFlexGrid.SetTextArray(10,"备注");
CString str;
CTime time=CTime::GetCurrentTime();
int yy,mm,dd;
yy=time.GetYear();
mm=time.GetMonth();
dd=time.GetDay();
str.Format("%d-%d-%d",yy,mm,dd);
m_sRiqi = str;
m_ctrShijian.AddString("上");
m_ctrShijian.AddString("下");
m_ctrShijian.SetCurSel(0);
UpdateData(FALSE);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CDlgZCXS_SHHY::OnAdd()
{
// TODO: Add your control notification handler code here
// UpdateData();
// CDlgSPMX dlg;
// if(dlg.DoModal() == IDOK)
// {
// m_nRowNum++;
// if(m_nRowNum > 5) return;
// CString str,strYuanjia;
// m_ctrMSFlexGrid.SetTextMatrix(m_nRowNum-1,1,dlg.m_sBianma);
// m_ctrMSFlexGrid.SetTextMatrix(m_nRowNum-1,2,dlg.m_sName);
// m_ctrMSFlexGrid.SetTextMatrix(m_nRowNum-1,3,dlg.m_sGuige);
// m_ctrMSFlexGrid.SetTextMatrix(m_nRowNum-1,4,dlg.m_sDanwei);
// str.Format("%d",dlg.m_iShuliang);
// m_ctrMSFlexGrid.SetTextMatrix(m_nRowNum-1,5,str);
// strYuanjia.Format("%.2f",dlg.m_fJiage);
// m_ctrMSFlexGrid.SetTextMatrix(m_nRowNum-1,6,strYuanjia);
// str.Format("%.2f",dlg.m_fZhekoujia);
// m_ctrMSFlexGrid.SetTextMatrix(m_nRowNum-1,7,str);
//
// m_fZhekoulv = dlg.m_fZhekoujia/dlg.m_fJiage;
// str.Format("%.2f",m_fZhekoulv);
// m_ctrMSFlexGrid.SetTextMatrix(m_nRowNum-1,8,str);
//
// str.Format("%.2f",dlg.m_iShuliang*dlg.m_fZhekoujia);
// m_ctrMSFlexGrid.SetTextMatrix(m_nRowNum-1,9,str);
// m_ctrMSFlexGrid.SetTextMatrix(m_nRowNum-1,10,dlg.m_sBeizhu);
//
// m_fXiaoji += (float)atof(str);
// m_fHeji = m_fXiaoji + m_fYunfei;
// UpdateData(FALSE);
// }
}
void CDlgZCXS_SHHY::OnChangeYunfei()
{
// TODO: If this is a RICHEDIT control, the control will not
// send this notification unless you override the CDialog::OnInitDialog()
// function and call CRichEditCtrl().SetEventMask()
// with the ENM_CHANGE flag ORed into the mask.
// TODO: Add your control notification handler code here
UpdateData();
m_fHeji = m_fXiaoji + m_fYunfei;
CString str;
str.Format("%.2f",m_fHeji);
m_ctrHeji.SetWindowText(str);
// UpdateData(FALSE);
}
void CDlgZCXS_SHHY::OnDel()
{
// TODO: Add your control notification handler code here
/* UpdateData();
m_ctrMSFlexGrid.RemoveItem(m_iDelXuhao);
m_nRowNum--;
m_ctrMSFlexGrid.SetRows(5);
CString str;
for(int i = 1; i < 5; i++)
{
str.Format("%d",i);
m_ctrMSFlexGrid.SetTextMatrix(i,0,str);
}
m_ctrMSFlexGrid.Refresh();
*/
// UpdateData();
// CString str;
//
// if (m_iSelectRow >0)
// {
// str.Format("是否删除第%d条记录?",m_iSelectRow);
// if(AfxMessageBox(str,MB_YESNO) == IDYES)
// {
// m_fXiaoji -= (float)atof(m_ctrMSFlexGrid.GetTextMatrix(m_iSelectRow,9));
// m_fHeji = m_fXiaoji + m_fYunfei;
// UpdateData(FALSE);
//
// m_ctrMSFlexGrid.RemoveItem(m_iSelectRow);
// m_nRowNum--;
// m_ctrMSFlexGrid.SetRows(5);
// for(int i = 1; i < 5; i++)
// {
// str.Format("%d",i);
// m_ctrMSFlexGrid.SetTextMatrix(i,0,str);
// }
// m_ctrMSFlexGrid.Refresh();
// }
// }
// else
// {
// AfxMessageBox("请选择要删除的记录!");
// return;
// }
}
void CDlgZCXS_SHHY::OnQueding()
{
// TODO: Add your control notification handler code here
CFALCON_JXCDoc* pDoc= m_pView->GetDocument();
UpdateData();
if (m_ctrMSFlexGrid.GetTextMatrix(1,1) == "")
{
AfxMessageBox("无货品可送!");
return;
}
if(pDoc->ConnectToServer())
{
pDoc->SendMsg("",13111);
}
else
return;
a:
if(pDoc->m_b23111)
{
m_strHybh=pDoc->m_pMsg->ShortMessage;
pDoc->m_b23111 = FALSE;
}
else
{
pDoc->ProcessReadMessage();
goto a;
}
CString strInsert,str;
int iTemp = atoi(m_strHybh);
iTemp++;
m_strHybh.Format("%d",iTemp);
strInsert = m_strHybh;
strInsert+=CHARFLAG;
strInsert+=m_sKehuxingming;
strInsert+=CHARFLAG;
strInsert+=m_sDianhua;
strInsert+=CHARFLAG;
strInsert+=m_sLouceng;
strInsert+=CHARFLAG;
strInsert+=m_sXiangxidizhi;
strInsert+=CHARFLAG;
strInsert+=m_sRiqi;
strInsert+=CHARFLAG;
int Index = m_ctrShijian.GetCurSel();
if(Index != CB_ERR)
{
m_ctrShijian.GetLBText(Index,m_sShangwuxiawu);
}
strInsert+=m_sShangwuxiawu;
strInsert+=CHARFLAG;
strInsert+=m_sShijian;
strInsert+=CHARFLAG;
for(int i=1;i<5;i++)
{
for(int j=0;j<11;j++)
{
strInsert+=m_ctrMSFlexGrid.GetTextMatrix(i,j);
strInsert+=CHARFLAG;
}
}
str.Format("%.2f",m_fXiaoji);
strInsert+=str;
strInsert+=CHARFLAG;
str.Format("%.2f",m_fYunfei);
strInsert+=str;
strInsert+=CHARFLAG;
str.Format("%.2f",m_fHeji);
strInsert+=str;
strInsert+=CHARFLAG;
str.Format("%.2f",m_fQita);
strInsert+=str;
strInsert+=CHARFLAG;
strInsert+="";
strInsert+=CHARFLAG;
strInsert+="";
strInsert+=CHARFLAG;
strInsert+="";//开始时间
strInsert+=CHARFLAG;
strInsert+="";//结束时间
strInsert+=CHARFLAG;
strInsert+=m_sAnzhuangren;
strInsert+=CHARFLAG;
strInsert+=m_sYingyeyuan;
strInsert+=CHARFLAG;
if(pDoc->ConnectToServer())
{
pDoc->SendMsg(strInsert,1311);//发送存储"送货单"请求
}
else
return;
/*/////////////////////
添加打印函数
*/////////////////////
b: if (pDoc->m_b2311)
{
pDoc->m_b2311 = FALSE;
m_bSave = TRUE;
OnZcxsShhyStat();
SendMessage(WM_COMMAND,ID_FILE_PRINT);
for(i=1;i<5;i++)
{
for(int j=0;j<11;j++)
{
m_ctrMSFlexGrid.SetTextMatrix(i,j,"");
}
}
m_sKehuxingming = "";
m_sDianhua = "";
m_sLouceng = "";
m_sXiangxidizhi = "";
m_strShoukuandanhao = "";
m_fXiaoji=0;
m_fYunfei=0;
m_fHeji=0;
m_fQita=0;
m_sAnzhuangren = "";
m_sYingyeyuan = "";
UpdateData(FALSE);
}
else
{
pDoc->ProcessReadMessage();
goto b;
}
}
void CDlgZCXS_SHHY::OnZcxsShhyStat()
{
m_pView->m_CMSFlexGrid = &m_ctrMSFlexGrid;
m_pView->m_iRows = 0;
for (int i=1; i<5; i++)
{
if (m_ctrMSFlexGrid.GetTextMatrix(i,0) != "")
{
m_pView->m_iRows++;
}
else
{
break;
}
}
if (m_pView->m_strPrtArray.GetSize() != 0)
{
m_pView->m_strPrtArray.RemoveAll();
}
CString str;
m_pView->m_strPrtArray.SetSize(14);
m_pView->m_strPrtArray.SetAt(0,m_strHybh);
m_pView->m_strPrtArray.SetAt(1,m_sKehuxingming);
m_pView->m_strPrtArray.SetAt(2,m_sDianhua);
m_pView->m_strPrtArray.SetAt(3,m_sLouceng);
m_pView->m_strPrtArray.SetAt(4,m_sXiangxidizhi);
m_pView->m_strPrtArray.SetAt(5,m_sRiqi);
m_pView->m_strPrtArray.SetAt(6,m_sShangwuxiawu);
m_pView->m_strPrtArray.SetAt(7,m_sShijian);
str.Format("%.2f",m_fXiaoji);
m_pView->m_strPrtArray.SetAt(8,str);
str.Format("%.2f",m_fYunfei);
m_pView->m_strPrtArray.SetAt(9,str);
str.Format("%.2f",m_fHeji);
m_pView->m_strPrtArray.SetAt(10,str);
str.Format("%.2f",m_fQita);
m_pView->m_strPrtArray.SetAt(11,str);
m_pView->m_strPrtArray.SetAt(12,m_sYingyeyuan);
m_pView->m_strPrtArray.SetAt(13,m_sAnzhuangren);
}
BEGIN_EVENTSINK_MAP(CDlgZCXS_SHHY, CDialog)
//{{AFX_EVENTSINK_MAP(CDlgZCXS_SHHY)
ON_EVENT(CDlgZCXS_SHHY, IDC_MSFLEXGRID1, -600 /* Click */, OnClickMsflexgrid1, VTS_NONE)
//}}AFX_EVENTSINK_MAP
END_EVENTSINK_MAP()
void CDlgZCXS_SHHY::OnClickMsflexgrid1()
{
// TODO: Add your control notification handler code here
m_iSelectRow = m_ctrMSFlexGrid.GetRow();
}
void CDlgZCXS_SHHY::OnOK()
{
//Dummy OnOk function!
}
void CDlgZCXS_SHHY::OnCancel()
{
//Dummy OnCancel function!
}
void CDlgZCXS_SHHY::OnTuichu()
{
// TODO: Add your control notification handler code here
if (m_bSave == FALSE && AfxMessageBox("尚未出单!是否退出?", MB_YESNO | MB_ICONQUESTION) == IDNO)
{
return;
}
else
{
m_pView->m_iPrtItem = -1;
DestroyWindow();
}
}
void CDlgZCXS_SHHY::OnChaxun()
{
// TODO: Add your control notification handler code here
UpdateData();
CFALCON_JXCDoc* pDoc = m_pView->GetDocument();
if(m_strShoukuandanhao == "")
{
AfxMessageBox("请输入收款单号!");
return;
}
CString strRequest;
strRequest = m_strShoukuandanhao;
if(pDoc->ConnectToServer())
{
pDoc->SendMsg(strRequest,1312);//发送查询"收款凭证"请求
}
else
return;
a:
if(pDoc->m_b2312)
{
if(pDoc->m_pMsg->ShortMessage != "")
{
CString str;
m_nRowNum = pDoc->m_StrArray.GetSize()/13 +1;
m_sKehuxingming = pDoc->m_StrArray[0];
m_fXiaoji = (float)atof(pDoc->m_StrArray[11]);
m_sYingyeyuan = pDoc->m_StrArray[12];
m_fHeji = m_fXiaoji;
for(int i = 1; i < m_nRowNum; i++)
{
str.Format("%d",i);
m_ctrMSFlexGrid.SetTextMatrix(i,0,str);
for (int j=1; j<11; j++)
{
str = pDoc->m_StrArray[(i-1)*13+j];
m_ctrMSFlexGrid.SetTextMatrix(i,j,str);
}
}
UpdateData(FALSE);
}
else
{
AfxMessageBox("未查到相符记录!");
}
pDoc->m_b2312 = FALSE;
}
else
{
pDoc->ProcessReadMessage();
goto a;
}
}
void CDlgZCXS_SHHY::OnXiugai()
{
// TODO: Add your control notification handler code here
UpdateData();
CString str;
if (m_iSelectRow >0 && m_ctrMSFlexGrid.GetTextMatrix(m_iSelectRow,0) != "")
{
str.Format("是否修改第%d条记录的出货点(备注)?",m_iSelectRow);
if(AfxMessageBox(str,MB_YESNO) == IDYES)
{
CChbmxg dlg;
dlg.m_nXuhao = m_iSelectRow;
if (dlg.DoModal() == IDOK)
{
str = dlg.m_strChuhuobumen;
m_ctrMSFlexGrid.SetTextMatrix(m_iSelectRow,10,str);
m_ctrMSFlexGrid.Refresh();
}
}
UpdateData(FALSE);
}
m_iSelectRow=0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -