// ModifyDinDan.cpp : implementation file // #include "stdafx.h" #include "LYFZIPManage.h" #include "ModifyDinDan.h" #include "MyMdi.H" #include "ClientDlg.h" #include "SetStyle.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif extern float m_WidthScale; extern float m_HeightScale; BOOL CALLBACK EnumChildProc2(HWND hwnd,LPARAM lParam) { CRect rtCtrl,rtWnd; if(hwnd) { ::GetWindowRect(hwnd,&rtCtrl); ::GetWindowRect(GetParent(hwnd),&rtWnd); rtCtrl.OffsetRect(-rtWnd.left,-rtWnd.top-10); float temp; temp= (float)rtCtrl.left*m_WidthScale; rtCtrl.left = (int)temp; temp= (float)rtCtrl.top*m_HeightScale; rtCtrl.top = (int)temp; temp = (float)rtCtrl.right*m_WidthScale; rtCtrl.right = (int)temp; temp =(float)rtCtrl.bottom*m_HeightScale; rtCtrl.bottom =(int)temp; ::MoveWindow(hwnd,rtCtrl.left,rtCtrl.top,rtCtrl.Width(),rtCtrl.Height(),TRUE); return TRUE; } else { return FALSE; } } ////////////////////////////////////////////////////////////IDC_STATIC1///////////////// ModifyDinDan::ModifyDinDan(CWnd* pParent /*=NULL*/) : CDialog(ModifyDinDan::IDD) { //{{AFX_DATA_INIT(ModifyDinDan) m_taoxijiage = _T(""); m_zs = _T(""); m_discount = _T(""); m_money1 = _T(""); m_money2 = _T(""); m_money3 = _T(""); m_name1 = _T(""); m_name2 = _T(""); m_payed1 = _T(""); m_payed2 = _T(""); m_payed3 = _T(""); m_payed4 = _T(""); m_payed5 = _T(""); m_time1 = _T(""); m_time2 = _T(""); m_time3 = _T(""); m_bz = _T(""); m_clothescount = _T(""); m_clothescount2 = _T(""); m_outside = _T(""); m_outside2 = _T(""); m_style = _T(""); m_waiter6 = g_user.name ; m_id = _T(""); m_time4 = _T(""); m_time5 = _T(""); m_choosephotomoney = _T(""); m_takephotomoney = _T(""); //}}AFX_DATA_INIT } void ModifyDinDan::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(ModifyDinDan) DDX_Control(pDX, IDC_COMBOwaiter7, m_combowaiter7); DDX_Control(pDX, IDC_COMBOwaiter5, m_combowaiter5); DDX_Control(pDX, IDC_COMBOwaiter4, m_combowaiter4); DDX_Control(pDX, IDC_COMBOwaiter3, m_combowaiter3); DDX_Control(pDX, IDC_COMBOwaiter2, m_combowaiter2); DDX_Control(pDX, IDC_COMBOwaiter1, m_combowaiter1); DDX_Control(pDX, IDC_COMBOstatus5, m_combostatus5); DDX_Control(pDX, IDC_COMBOstatus6, m_combostatus6); DDX_Control(pDX, IDC_COMBOstatus4, m_combostatus4); DDX_Control(pDX, IDC_COMBOstatus3, m_combostatus3); DDX_Control(pDX, IDC_COMBOstatus2, m_combostatus2); DDX_Control(pDX, IDC_COMBOstatus1, m_combostatus1); DDX_Control(pDX, IDC_EDITtime8, m_datectrl5); DDX_Control(pDX, IDC_EDITtime7, m_datectrl4); DDX_Control(pDX, IDC_EDITtime3, m_datectrl2); DDX_Control(pDX, IDC_EDITtime2, m_datectrl1); DDX_Control(pDX, IDC_EDITpayed1, m_edit2); DDX_Control(pDX, IDC_EDITdiscount, m_edit1); DDX_Control(pDX, IDC_COMBObm, m_combobm); DDX_Control(pDX, IDC_COMBOrenyuan, m_comborenyuan); DDX_Control(pDX, IDC_LIST1, m_List1); DDX_Control(pDX, IDC_COMBOtaoxiname, m_combotaoxiname); DDX_Text(pDX, IDC_EDITtaoxijiage, m_taoxijiage); DDX_Text(pDX, IDC_EDITzs, m_zs); DDX_Text(pDX, IDC_EDITdiscount, m_discount); DDX_Text(pDX, IDC_EDITmoney1, m_money1); DDX_Text(pDX, IDC_EDITmoney2, m_money2); DDX_Text(pDX, IDC_EDITmoney3, m_money3); DDX_Text(pDX, IDC_EDITname1, m_name1); DDX_Text(pDX, IDC_EDITname2, m_name2); DDX_Text(pDX, IDC_EDITpayed1, m_payed1); DDX_Text(pDX, IDC_EDITpayed2, m_payed2); DDX_Text(pDX, IDC_EDITpayed3, m_payed3); DDX_Text(pDX, IDC_EDITpayed4, m_payed4); DDX_Text(pDX, IDC_EDITpayed5, m_payed5); DDX_Text(pDX, IDC_EDITtime1, m_time1); DDX_Text(pDX, IDC_EDITtime2, m_time2); DDX_Text(pDX, IDC_EDITtime3, m_time3); DDX_Text(pDX, IDC_EDITbz, m_bz); DDX_Text(pDX, IDC_EDITOclothescount, m_clothescount); DDX_Text(pDX, IDC_EDITOclothescount2, m_clothescount2); DDX_Text(pDX, IDC_EDITOoutside, m_outside); DDX_Text(pDX, IDC_EDITOoutside2, m_outside2); DDX_Text(pDX, IDC_EDITwaiter6, m_waiter6); DDX_Text(pDX, IDC_EDITid3, m_id); DDX_Text(pDX, IDC_EDITtime7, m_time4); DDX_Text(pDX, IDC_EDITtime8, m_time5); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(ModifyDinDan, CDialog) //{{AFX_MSG_MAP(ModifyDinDan) ON_BN_CLICKED(IDC_BUTsave, OnBUTsave) ON_BN_CLICKED(IDC_BUTclose, OnBUTclose) ON_CBN_SELCHANGE(IDC_COMBOtaoxiname, OnSelchangeCOMBOtaoxiname) ON_WM_TIMER() ON_EN_CHANGE(IDC_EDITtaoxijiage, OnChangeEDITtaoxijiage) ON_EN_CHANGE(IDC_EDITdiscount, OnChangeEDITdiscount) ON_EN_CHANGE(IDC_EDITpayed1, OnChangeEDITpayed1) ON_CBN_DROPDOWN(IDC_COMBObm, OnDropdownCOMBObm) ON_CBN_DROPDOWN(IDC_COMBOrenyuan, OnDropdownCOMBOrenyuan) ON_CBN_SELCHANGE(IDC_COMBObm, OnSelchangeCOMBObm) ON_BN_CLICKED(IDC_BUTclient, OnBUTclient) ON_BN_CLICKED(IDC_BUTWaiter, OnBUTWaiter) ON_BN_CLICKED(IDC_BUTTON1, OnButton1) ON_BN_CLICKED(IDC_BUTprint, OnBUTprint) ON_BN_CLICKED(IDC_BUTstyle, OnBUTstyle) ON_BN_CLICKED(IDC_BUTspbox2, OnBUTspbox2) ON_BN_CLICKED(IDC_BUTdel3, OnBUTdel3) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // ModifyDinDan diagnostics #ifdef _DEBUG void ModifyDinDan::AssertValid() const { CDialog::AssertValid(); } void ModifyDinDan::Dump(CDumpContext& dc) const { CDialog::Dump(dc); } #endif //_DEBUG ///////////////////////////////////////////////////////////////////////////// // ModifyDinDan message handlers void ModifyDinDan::OnSelchangeCOMBOtaoxiname() { // TODO: Add your control notification handler code here /* UpdateData(); int pos=m_combotaoxiname.GetCurSel (); if(pos==-1)return; CString taoxiname; m_combotaoxiname.GetLBText (pos, taoxiname); pos=-1; for(int i=0; imessage==WM_LBUTTONDBLCLK) { {//list1 CPoint pt; CRect rc,rc2; ::GetCursorPos (&pt); m_List1.GetWindowRect (rc2); if(rc2.PtInRect (pt)==0) goto ll; pt.x-=rc2.left ; pt.y-=rc2.top ; int iItem=m_List1.GetItemCount ()-1; if(iItem<0) { m_List1.GetHeaderCtrl()->GetItemRect (0, rc); int hei=rc.Height (); rc.top +=hei; rc.bottom +=hei; if(rc.PtInRect (pt)) { m_List1.InsertItem(m_List1.GetItemCount (), ""); m_List1Bakarray.SetSize(m_List1.GetItemCount ()); int pos=m_List1.GetItemCount ()-1; m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); } m_List1.GetHeaderCtrl()->GetItemRect (1, rc); rc.top +=hei; rc.bottom +=hei; if(rc.PtInRect (pt)) { m_List1.InsertItem(m_List1.GetItemCount (), ""); m_List1Bakarray.SetSize(m_List1.GetItemCount ()); int pos=m_List1.GetItemCount ()-1; m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); } } else { m_List1.GetSubItemRect( iItem, 0, LVIR_BOUNDS, rc); int hei=rc.Height (); rc.top +=hei; rc.bottom +=hei; if(rc.PtInRect (pt)) { if(m_List1.GetItemText (iItem, 0).IsEmpty ()&&m_List1.GetItemText (iItem, 1).IsEmpty ()) goto ll; m_List1.InsertItem(m_List1.GetItemCount (), ""); m_List1Bakarray.SetSize(m_List1.GetItemCount ()); int pos=m_List1.GetItemCount ()-1; m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); } POSITION pos; pos=m_List1.GetFirstSelectedItemPosition(); if(pos) { iItem=m_List1.GetNextSelectedItem(pos); if(m_List1Bakarray.ElementAt (iItem).ElementAt (8).IsEmpty ()==0) { AfxMessageBox("此物品已选片, 不能修改!", MB_ICONSTOP); return 1; } if(m_List1Bakarray.ElementAt (iItem).ElementAt (2)!="" || m_List1Bakarray.ElementAt (iItem).ElementAt (3)!="") { AfxMessageBox("此物品已制作, 不能修改!", MB_ICONSTOP); return 1; } if(m_List1Bakarray.ElementAt (iItem).ElementAt (4)!="未完成" && m_List1Bakarray.ElementAt (iItem).ElementAt (4)!="") { AfxMessageBox("此物品已制作, 不能修改!", MB_ICONSTOP); return 1; } if(m_List1Bakarray.ElementAt (iItem).ElementAt (5)!="未取" && m_List1Bakarray.ElementAt (iItem).ElementAt (5)!="") { AfxMessageBox("此物品已制作, 不能修改!", MB_ICONSTOP); return 1; } } } } } ll: if(pMsg->message==WM_LBUTTONDOWN) { {//list1 CPoint pt; CRect rc,rc2; ::GetCursorPos (&pt); m_List1.GetWindowRect (rc2); if(rc2.PtInRect (pt)==0) goto nn; SetTimer(1, 300, NULL); } } nn: return CDialog::PreTranslateMessage(pMsg); } void ModifyDinDan::SetSPName1() { for(int i=0; iProcessChatMessageRequest2(sql);if(g_bSendOK==0)return; CArraysparray; sparray.SetSize(m_List1.GetItemCount ()); int realcount=0; for(int i=0; iProcessChatMessageRequest2(pData2, length); g_nSendCode=0; delete []pData2; if(g_bSendOK==0)return; AfxMessageBox("保存成功!", MB_ICONINFORMATION); } void ModifyDinDan::OnBUTclose() { // TODO: Add your control notification handler code here CDialog::OnCancel (); } void ModifyDinDan::OnChangeEDITtaoxijiage() { // 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. UpdateData(); CString str; float list3money=0; m_money1.Format ("%f", list3money+atof(m_taoxijiage)-atof(m_discount)+atof(m_payed4)); m_money2.Format ("%f", atof(m_payed5)); m_money3.Format ("%f", atof(m_money1)-atof(m_money2)); ConvertToPrice(m_money1); ConvertToPrice(m_money2); ConvertToPrice(m_money3); UpdateData(false); // TODO: Add your control notification handler code here } void ModifyDinDan::OnChangeEDITdiscount() { // 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. OnChangeEDITtaoxijiage(); // TODO: Add your control notification handler code here } void ModifyDinDan::OnChangeEDITpayed1() { // 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. OnChangeEDITtaoxijiage(); // TODO: Add your control notification handler code here } void ModifyDinDan::OnDropdownCOMBObm() { // TODO: Add your control notification handler code here if(m_combobm.GetCount ()<2) { g_sendhead.bsql=0; g_sendhead.code[0]=3; g_sendhead.tabcount=1; g_pMainWnd->ProcessChatMessageRequest2(3);if(g_bSendOK==0)return; DataToArray(&g_List1array); for(int ii=0; iiPrintDinDan(m_id); } void ModifyDinDan::OnBUTstyle() { // TODO: Add your control notification handler code here SetStyle dlg; dlg.m_style=m_style; if(dlg.DoModal ()==IDOK) m_style=dlg.m_style; } void ModifyDinDan::OnBUTspbox2() { // TODO: Add your control notification handler code here SPBox dlg; if(dlg.DoModal ()!=IDOK)return; int pos=m_List1.GetItemCount (); CString str; if(pos) { if(m_List1.GetItemText (pos-1, 1).IsEmpty ()&&m_List1.GetItemText (pos-1, 2).IsEmpty ()) { pos--; m_List1.SetItemText(pos,1, dlg.m_spid); m_List1.SetItemText(pos,2, GetSPNameFromId(dlg.m_spid)); } else { m_List1.InsertItem(pos, ""); m_List1.SetItemText(pos,1, dlg.m_spid); m_List1.SetItemText(pos,2, GetSPNameFromId(dlg.m_spid)); m_List1Bakarray.SetSize(m_List1.GetItemCount ()); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); } } else { m_List1.InsertItem(pos, ""); m_List1.SetItemText(pos,1, dlg.m_spid); m_List1.SetItemText(pos,2, GetSPNameFromId(dlg.m_spid)); m_List1Bakarray.SetSize(m_List1.GetItemCount ()); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); m_List1Bakarray.ElementAt (pos).Add (""); } } void ModifyDinDan::OnBUTdel3() { // TODO: Add your control notification handler code here POSITION pos; pos=m_List1.GetFirstSelectedItemPosition(); if(pos==NULL) { AfxMessageBox("请先选中您要删除的项目!", MB_ICONINFORMATION); return; } int iItem=m_List1.GetNextSelectedItem(pos); if(m_List1Bakarray.ElementAt (iItem).ElementAt (8).IsEmpty ()==0) { AfxMessageBox("此物品已选片, 不能删除!", MB_ICONSTOP); return; } if(m_List1Bakarray.ElementAt (iItem).ElementAt (2)!="" || m_List1Bakarray.ElementAt (iItem).ElementAt (3)!="") { AfxMessageBox("此物品已制作, 不能删除!", MB_ICONSTOP); return; } if(m_List1Bakarray.ElementAt (iItem).ElementAt (4)!="未完成" && m_List1Bakarray.ElementAt (iItem).ElementAt (4)!="") { AfxMessageBox("此物品已制作, 不能删除!", MB_ICONSTOP); return; } if(m_List1Bakarray.ElementAt (iItem).ElementAt (5)!="未取" && m_List1Bakarray.ElementAt (iItem).ElementAt (5)!="") { AfxMessageBox("此物品已制作, 不能删除!", MB_ICONSTOP); return; } m_List1.DeleteItem (iItem); m_List1Bakarray.RemoveAt(iItem); int count=m_List1.GetItemCount (); if(count==0)return; if(iItem==count) iItem=0; m_List1.SetItemState (iItem, LVIS_SELECTED, LVIS_SELECTED); } BOOL ModifyDinDan::OnInitDialog() { CDialog::OnInitDialog(); // TODO: Add extra initialization here CRect rc2; GetWindowRect(rc2); ::MoveWindow(m_hWnd,g_rc.left,g_rc.top,g_rc.Width(),g_rc.Height(),TRUE); EnumChildWindows(m_hWnd,(WNDENUMPROC)EnumChildProc2,0); GetDlgItem(IDC_BUTsave)->EnableWindow(IsHasRights2new(1)); GetDlgItem(IDC_BUTclient)->EnableWindow(IsHasRights2new(1)); m_combotaoxiname.GetWindowRect (rc2); ScreenToClient(rc2); rc2.bottom +=200; m_combotaoxiname.MoveWindow (rc2); m_combobm.GetWindowRect (rc2); ScreenToClient(rc2); rc2.bottom +=200; m_combobm.MoveWindow (rc2); m_comborenyuan.GetWindowRect (rc2); ScreenToClient(rc2); rc2.bottom +=200; m_comborenyuan.MoveWindow (rc2); m_combowaiter1.GetWindowRect (rc2); ScreenToClient(rc2); rc2.bottom +=400; m_combowaiter1.MoveWindow (rc2); m_combowaiter2.GetWindowRect (rc2); ScreenToClient(rc2); rc2.bottom +=400; m_combowaiter2.MoveWindow (rc2); m_combowaiter3.GetWindowRect (rc2); ScreenToClient(rc2); rc2.bottom +=400; m_combowaiter3.MoveWindow (rc2); m_combowaiter4.GetWindowRect (rc2); ScreenToClient(rc2); rc2.bottom +=400; m_combowaiter4.MoveWindow (rc2); m_combowaiter5.GetWindowRect (rc2); ScreenToClient(rc2); rc2.bottom +=400; m_combowaiter5.MoveWindow (rc2); m_combowaiter7.GetWindowRect (rc2); ScreenToClient(rc2); rc2.bottom +=400; m_combowaiter7.MoveWindow (rc2); m_combostatus1.GetWindowRect (rc2); ScreenToClient(rc2); rc2.bottom +=200; m_combostatus1.MoveWindow (rc2); m_combostatus2.GetWindowRect (rc2); ScreenToClient(rc2); rc2.bottom +=200; m_combostatus2.MoveWindow (rc2); m_combostatus3.GetWindowRect (rc2); ScreenToClient(rc2); rc2.bottom +=200; m_combostatus3.MoveWindow (rc2); m_combostatus4.GetWindowRect (rc2); ScreenToClient(rc2); rc2.bottom +=200; m_combostatus4.MoveWindow (rc2); m_combostatus5.GetWindowRect (rc2); ScreenToClient(rc2); rc2.bottom +=200; m_combostatus5.MoveWindow (rc2); m_combostatus6.GetWindowRect (rc2); ScreenToClient(rc2); rc2.bottom +=200; m_combostatus6.MoveWindow (rc2); m_combostatus1.AddString ("未拍"); m_combostatus1.AddString ("拍照中"); m_combostatus1.AddString ("OK"); m_combostatus2.AddString ("未选"); m_combostatus2.AddString ("OK"); m_combostatus3.AddString ("未取"); m_combostatus3.AddString ("OK"); m_combostatus4.AddString ("未修"); m_combostatus4.AddString ("修片中"); m_combostatus4.AddString ("OK"); m_combostatus5.AddString ("未设计"); m_combostatus5.AddString ("设计中"); m_combostatus5.AddString ("OK"); m_combostatus6.AddString ("未修"); m_combostatus6.AddString ("修片中"); m_combostatus6.AddString ("OK"); m_List1.InitStyle(); m_List1.InsertColumn(0,_T("autuid"),LVCFMT_LEFT,0); m_List1.InsertColumn(1,_T("编号"),LVCFMT_LEFT,55); m_List1.InsertColumn(2,_T("商品名称"),LVCFMT_LEFT,280); m_List1.InsertColumn(3,_T("数量"),LVCFMT_LEFT,55); CString id=m_id; g_sendhead.bsql=0; CString filter="id='"+id+"';id='"+id+"' and kind<>'4' and kind<>'5';;;;"; g_sendhead.code[0]=11; g_sendhead.code[1]=56; g_sendhead.code[2]=6; g_sendhead.code[3]=7; g_sendhead.code[4]=10; g_sendhead.code[5]=4; g_sendhead.tabcount=6; g_pMainWnd->ProcessChatMessageRequest2(filter);if(g_bSendOK==0)return 1; DataToArray(&g_List1array, &m_List1Bakarray,&m_List1array, &m_List2array, &m_List3array, &m_sparray); for(int i=0; i