// SalarySet3.cpp : implementation file // #include "stdafx.h" #include "ylgl.h" #include "SalarySet3.h" #include "MyMdi.H" #include "InputWork.h" #include "InputWork2.h" #include "InputWork3.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // SalarySet3 IDC_EDITmoney2 IMPLEMENT_DYNCREATE(SalarySet3, MyFormView) SalarySet3::SalarySet3() : MyFormView(SalarySet3::IDD) { //{{AFX_DATA_INIT(SalarySet3) m_year = atoi(g_date.Mid(0, 4)); m_month = atoi(g_date.Mid(5, 2)); m_day = atoi(g_date.Mid(8, 2)); m_bInit = 0; m_radio1 = 2; //}}AFX_DATA_INIT } SalarySet3::~SalarySet3() { } void SalarySet3::DoDataExchange(CDataExchange* pDX) { MyFormView::DoDataExchange(pDX); //{{AFX_DATA_MAP(SalarySet3) DDX_Control(pDX, IDC_LIST7, m_List4); DDX_Control(pDX, IDC_LIST4, m_List3); DDX_Control(pDX, IDC_LIST3, m_List2); DDX_Control(pDX, IDC_SPIN3, m_spinday); DDX_Control(pDX, IDC_SPIN2, m_spinmonth); DDX_Control(pDX, IDC_SPIN1, m_spinyear); DDX_Control(pDX, IDC_LIST2, m_List1); DDX_Control(pDX, IDC_STATIC1, m_static1); DDX_Text(pDX, IDC_EDITyear, m_year); DDV_MinMaxUInt(pDX, m_year, 1900, 3000); DDX_Text(pDX, IDC_EDITmonth, m_month); DDV_MinMaxUInt(pDX, m_month, 1, 12); DDX_Text(pDX, IDC_EDITday, m_day); DDV_MinMaxUInt(pDX, m_day, 1, 31); DDX_Radio(pDX, IDC_RADIO3, m_radio1); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(SalarySet3, MyFormView) //{{AFX_MSG_MAP(SalarySet3) ON_BN_CLICKED(IDC_BUTclose, OnBUTclose) ON_EN_CHANGE(IDC_EDITyear, OnChangeEDITyear) ON_EN_CHANGE(IDC_EDITmonth, OnChangeEDITmonth) ON_EN_CHANGE(IDC_EDITday, OnChangeEDITday) ON_BN_CLICKED(IDC_RADIO3, OnRadio3) ON_BN_CLICKED(IDC_RADIO4, OnRadio4) ON_BN_CLICKED(IDC_RADIO5, OnRadio5) ON_BN_CLICKED(IDC_RADIO6, OnRadio6) ON_BN_CLICKED(IDC_RADIO7, OnRadio7) ON_BN_CLICKED(IDC_RADIO8, OnRadio8) ON_BN_CLICKED(IDC_RADIO9, OnRadio9) ON_BN_CLICKED(IDC_RADIO10, OnRadio10) ON_BN_CLICKED(IDC_RADIO11, OnRadio11) ON_BN_CLICKED(IDC_RADIO12, OnRadio12) ON_BN_CLICKED(IDC_RADIO13, OnRadio13) ON_BN_CLICKED(IDC_BUTprint, OnBUTprint) ON_BN_CLICKED(IDC_BUTprint2, OnBUTprint2) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // SalarySet3 diagnostics #ifdef _DEBUG void SalarySet3::AssertValid() const { MyFormView::AssertValid(); } void SalarySet3::Dump(CDumpContext& dc) const { MyFormView::Dump(dc); } #endif //_DEBUG ///////////////////////////////////////////////////////////////////////////// // SalarySet3 message handlers void SalarySet3::OnInitialUpdate() { MyFormView::OnInitialUpdate(); m_List1.ShowWindow(SW_HIDE); m_List2.ShowWindow(SW_HIDE); m_List3.ShowWindow(SW_SHOW); m_List4.ShowWindow(SW_HIDE); // TODO: Add your specialized code here and/or call the base class CMyMdi Mdi; Mdi.SetSubView((CWnd*)GetParent(), (CWnd*)this); // Here we create the outbar control using the splitter as its parent // and setting its id to the first pane. CRect rc2; GetWindowRect(rc2); ::MoveWindow(m_hWnd, g_rc.left, g_rc.top, g_rc.Width(), g_rc.Height(), TRUE); EnumChildWindows(m_hWnd, (WNDENUMPROC)EnumChildProc, 0); GetDlgItem(IDC_BUTprint)->EnableWindow(IsHasRights2new(17)); GetDlgItem(IDC_BUTprint2)->EnableWindow(IsHasRights2new(61)); m_static1.SetFont(&g_titlefont); #ifdef CHILD_VERSION GetDlgItem(IDC_RADIO4)->SetWindowText("引导师"); #endif #ifdef CHILD_VERSION m_List1.SetHeadings("订单号,100;家长姓名,100;宝宝姓名,100;摄影师,100;日期,100;衣服套数(外景),100;衣服套数(内景),100;加挑照片,100;套系名称,100;套系价格,100;录入日期,100;录入人,100;手机,100;固定电话,100"); m_List2.SetHeadings("订单号,100;家长姓名,100;宝宝姓名,100;化妆师,100;日期,100;衣服套数(外景),100;衣服套数(内景),100;加挑照片,100;套系名称,100;套系价格,100;录入日期,100;录入人,100;手机,100;固定电话,100"); m_List3.SetHeadings("订单号,100;家长姓名,100;宝宝姓名,100;数码师,100;日期,100;完成内容,100;数量,100;套系名称,100;套系价格,100;录入日期,100;录入人,100;手机,100;固定电话,100"); m_List4.SetHeadings("订单号,100;家长姓名,100;宝宝姓名,100;门市,100;套系名称,100;套系价格,100;手机,100;固定电话,100"); #else m_List1.SetHeadings("订单号,100;男宾姓名,100;女宾姓名,100;摄影师,100;日期,100;衣服套数(外景),100;衣服套数(内景),100;加挑照片,100;套系名称,100;套系价格,100;录入日期,100;录入人,100;男宾电话,100;女宾电话,100" ); m_List2.SetHeadings("订单号,100;男宾姓名,100;女宾姓名,100;化妆师,100;日期,100;衣服套数(外景),100;衣服套数(内景),100;加挑照片,100;套系名称,100;套系价格,100;录入日期,100;录入人,100;男宾电话,100;女宾电话,100" ); m_List3.SetHeadings("订单号,100;男宾姓名,100;女宾姓名,100;数码师,100;日期,100;完成内容,100;数量,100;套系名称,100;套系价格,100;录入日期,100;录入人,100;男宾电话,100;女宾电话,100" ); m_List4.SetHeadings("订单号,100;男宾姓名,100;女宾姓名,100;门市,100;套系名称,100;套系价格,100;男宾电话,100;女宾电话,100" ); #endif m_List1.LoadColumnInfo(174); m_List2.LoadColumnInfo(175); m_List3.LoadColumnInfo(176); m_List4.LoadColumnInfo(177); m_spinyear.SetRange(1900, 3000); m_spinmonth.SetRange(1, 12); m_spinday.SetRange(1, 31); m_bInit = 1; DateChange(); } void SalarySet3::FillGrid() { int ii = 0; if (m_radio1 == 0) { m_List1.DeleteAllItems2(); m_List1.m_arLabels.SetSize(m_List1array.GetSize(), 1); int count = 0; for (ii = 0; ii < m_List1.m_arLabels.GetSize(); ii++) { m_List1.m_arLabels.ElementAt(count++).Copy(m_List1array.ElementAt(ii)); } m_List1.m_arLabels.SetSize(count, 1); ii = count; m_List1.m_LabelCount = ii; m_List1.SetItemCountEx(ii); } else if (m_radio1 == 1) { m_List2.DeleteAllItems2(); m_List2.m_arLabels.SetSize(m_List2array.GetSize(), 1); int count = 0; for (ii = 0; ii < m_List2.m_arLabels.GetSize(); ii++) { m_List2.m_arLabels.ElementAt(count++).Copy(m_List2array.ElementAt(ii)); } m_List2.m_arLabels.SetSize(count, 1); ii = count; m_List2.m_LabelCount = ii; m_List2.SetItemCountEx(ii); } else if (m_radio1 == 2) { m_List3.DeleteAllItems2(); m_List3.m_arLabels.SetSize(m_List3array.GetSize(), 1); int count = 0; for (ii = 0; ii < m_List3.m_arLabels.GetSize(); ii++) { m_List3.m_arLabels.ElementAt(count++).Copy(m_List3array.ElementAt(ii)); } m_List3.m_arLabels.SetSize(count, 1); ii = count; m_List3.m_LabelCount = ii; m_List3.SetItemCountEx(ii); } else if (m_radio1 == 3) { m_List4.DeleteAllItems2(); m_List4.m_arLabels.SetSize(m_List4array.GetSize(), 1); int count = 0; for (ii = 0; ii < m_List4.m_arLabels.GetSize(); ii++) { m_List4.m_arLabels.ElementAt(count++).Copy(m_List4array.ElementAt(ii)); } m_List4.m_arLabels.SetSize(count, 1); ii = count; m_List4.m_LabelCount = ii; m_List4.SetItemCountEx(ii); } CString str; str.Format("单数:%d", ii); SetDlgItemText(IDC_STATIC2, str); } void SalarySet3::OnBUTclose() { GetParent()->SendMessage(WM_CLOSE); } void SalarySet3::OnChangeEDITyear() { DateChange(); } void SalarySet3::OnChangeEDITmonth() { DateChange(); } void SalarySet3::OnChangeEDITday() { DateChange(); } void SalarySet3::DateChange() { if (m_bInit == 0)return; m_spinyear.EnableWindow(0); m_spinmonth.EnableWindow(0); m_spinday.EnableWindow(0); UpdateData(); int i = 0; int g_nYearposTemp = g_nYearpos; BOOL bThisYear = 0; BOOL bLastYear = 0; #if JEFF_TEST_ON // 2015开始禁用跨年数据; if (m_year >= 2014 && m_year <= atoi(g_date.Left(4)) && g_hisyeararray.GetSize()) { g_nYearpos = -1; bThisYear = 1; } else if (m_year <= 2013 && g_hisyeararray.GetSize()) { g_nYearpos = GetYearPos(m_year); bLastYear = 1; } #else if (m_year == atoi(g_date.Left(4)) && g_hisyeararray.GetSize()) bThisYear = 1; else if (m_year <= atoi(g_date.Left(4)) - 1 && g_hisyeararray.GetSize()) bLastYear = 1; g_nYearpos = GetYearPos(m_year); #endif CString sql, strdate, strdate2; strdate.Format("%04d-%02d-%02d", m_year, m_month, m_day); CRect rc; m_static1.GetWindowRect(rc); ScreenToClient(rc); InvalidateRect(rc); COleDateTime dtDay(m_year, m_month, m_day, 0, 0, 0); int nDayWeek = dtDay.GetDayOfWeek() - 1; //得到星期几,1=Sunday, 2=Monday, CString DayOfWeek[7] = { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" }; CString sdate; if (nDayWeek >= 0 && nDayWeek <= 6) sdate = DayOfWeek[nDayWeek]; else sdate = "无效日期"; CString dindanfilter = strdate; dindanfilter.Replace("-", ""); dindanfilter = ";id like '" + dindanfilter + "%'"; //m_static1.SetWindowText (strdate+"("+sdate+")员工工作"); m_static1.SetWindowText(strdate + "(" + sdate + ")计件提成"); sql.Format("datetime='" + strdate + "' and type='数码师'"); sql += dindanfilter; g_sendhead.bsql = 0; g_sendhead.code[0] = 144; g_sendhead.tabcount = 1; g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0) { g_nYearpos = g_nYearposTemp; m_spinyear.EnableWindow(1); m_spinmonth.EnableWindow(1); m_spinday.EnableWindow(1); return; } DataToArray(&m_List3array); if (bThisYear) { g_nYearpos = 0;//去年 g_sendhead.bsql = 0; g_sendhead.code[0] = 144; g_sendhead.tabcount = 1; CString sql, strdate, strdate2; strdate.Format("%04d-%02d-%02d", m_year, m_month, m_day); sql.Format("datetime='" + strdate + "' and type='数码师'"); sql += dindanfilter; g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0) { g_nYearpos = g_nYearposTemp; m_spinyear.EnableWindow(1); m_spinmonth.EnableWindow(1); m_spinday.EnableWindow(1); return; } CArrayLastYearm_List3array; DataToArray(&LastYearm_List3array); int oldsize = m_List3array.GetSize(); int newsize = LastYearm_List3array.GetSize(); m_List3array.SetSize(oldsize + LastYearm_List3array.GetSize()); for (i = oldsize; i < oldsize + LastYearm_List3array.GetSize(); i++) { m_List3array.ElementAt(i).Copy(LastYearm_List3array.ElementAt(i - oldsize)); } } else if (bLastYear) { g_nYearpos = -1;//今年 g_sendhead.bsql = 0; g_sendhead.code[0] = 144; g_sendhead.tabcount = 1; CString sql, strdate, strdate2; strdate.Format("%04d-%02d-%02d", m_year, m_month, m_day); sql.Format("datetime='" + strdate + "' and type='数码师'"); sql += dindanfilter; g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0) { g_nYearpos = g_nYearposTemp; m_spinyear.EnableWindow(1); m_spinmonth.EnableWindow(1); m_spinday.EnableWindow(1); return; } CArrayLastYearm_List3array; DataToArray(&LastYearm_List3array); int oldsize = m_List3array.GetSize(); int newsize = LastYearm_List3array.GetSize(); m_List3array.SetSize(oldsize + LastYearm_List3array.GetSize()); for (i = oldsize; i < oldsize + LastYearm_List3array.GetSize(); i++) { m_List3array.ElementAt(i).Copy(LastYearm_List3array.ElementAt(i - oldsize)); } } g_nYearpos = g_nYearposTemp; if (IsHasRights2new(31) == 0) { #ifdef LKAY_VERSION for(int i=0; i< m_List1array.GetSize (); i++) { m_List1array.ElementAt (i).SetAt (8, "***"); m_List1array.ElementAt (i).SetAt (9, "***"); m_List1array.ElementAt (i).SetAt (12, "***"); m_List1array.ElementAt (i).SetAt (13, "***"); } for( i=0; i< m_List2array.GetSize (); i++) { m_List2array.ElementAt (i).SetAt (8, "***"); m_List2array.ElementAt (i).SetAt (9, "***"); m_List2array.ElementAt (i).SetAt (12, "***"); m_List2array.ElementAt (i).SetAt (13, "***"); } for( i=0; i< m_List3array.GetSize (); i++) { m_List3array.ElementAt (i).SetAt (7, "***"); m_List3array.ElementAt (i).SetAt (8, "***"); m_List3array.ElementAt (i).SetAt (11, "***"); m_List3array.ElementAt (i).SetAt (12, "***"); } for( i=0; i< m_List4array.GetSize (); i++) { m_List4array.ElementAt (i).SetAt (4, "***"); m_List4array.ElementAt (i).SetAt (5, "***"); m_List4array.ElementAt (i).SetAt (6, "***"); m_List4array.ElementAt (i).SetAt (7, "***"); } #else for ( i = 0; i < m_List1array.GetSize(); i++) { m_List1array.ElementAt(i).SetAt(12, "***"); m_List1array.ElementAt(i).SetAt(13, "***"); } for (i = 0; i < m_List2array.GetSize(); i++) { m_List2array.ElementAt(i).SetAt(12, "***"); m_List2array.ElementAt(i).SetAt(13, "***"); } for (i = 0; i < m_List3array.GetSize(); i++) { m_List3array.ElementAt(i).SetAt(11, "***"); m_List3array.ElementAt(i).SetAt(12, "***"); } for (i = 0; i < m_List4array.GetSize(); i++) { m_List4array.ElementAt(i).SetAt(6, "***"); m_List4array.ElementAt(i).SetAt(7, "***"); } #endif } FillGrid(); m_spinyear.EnableWindow(1); m_spinmonth.EnableWindow(1); m_spinday.EnableWindow(1); } void SalarySet3::KindChange() { } void SalarySet3::OnRadio3() { UpdateData(); m_List1.ShowWindow(SW_SHOW); m_List2.ShowWindow(SW_HIDE); m_List3.ShowWindow(SW_HIDE); m_List4.ShowWindow(SW_HIDE); GetDlgItem(IDC_BUTprint)->EnableWindow(IsHasRights2new(17)); GetDlgItem(IDC_BUTprint2)->EnableWindow(IsHasRights2new(61)); FillGrid(); } void SalarySet3::OnRadio4() { UpdateData(); m_List2.ShowWindow(SW_SHOW); m_List1.ShowWindow(SW_HIDE); m_List3.ShowWindow(SW_HIDE); m_List4.ShowWindow(SW_HIDE); GetDlgItem(IDC_BUTprint)->EnableWindow(IsHasRights2new(17)); GetDlgItem(IDC_BUTprint2)->EnableWindow(IsHasRights2new(61)); FillGrid(); } void SalarySet3::OnRadio5() { UpdateData(); m_List3.ShowWindow(SW_SHOW); m_List2.ShowWindow(SW_HIDE); m_List1.ShowWindow(SW_HIDE); m_List4.ShowWindow(SW_HIDE); GetDlgItem(IDC_BUTprint)->EnableWindow(IsHasRights2new(17)); GetDlgItem(IDC_BUTprint2)->EnableWindow(IsHasRights2new(61)); FillGrid(); } void SalarySet3::OnRadio6() { UpdateData(); m_List4.ShowWindow(SW_SHOW); m_List2.ShowWindow(SW_HIDE); m_List3.ShowWindow(SW_HIDE); m_List1.ShowWindow(SW_HIDE); GetDlgItem(IDC_BUTprint)->EnableWindow(0); GetDlgItem(IDC_BUTprint2)->EnableWindow(0); FillGrid(); } void SalarySet3::OnRadio9() { UpdateData(); KindChange(); } void SalarySet3::OnRadio7() { UpdateData(); KindChange(); } void SalarySet3::OnRadio8() { UpdateData(); KindChange(); } void SalarySet3::OnRadio10() { UpdateData(); KindChange(); } void SalarySet3::OnRadio11() { UpdateData(); KindChange(); } void SalarySet3::OnRadio12() { UpdateData(); KindChange(); } void SalarySet3::OnRadio13() { UpdateData(); KindChange(); } void SalarySet3::OnBUTprint() { // TODO: Add your control notification handler code here if (m_radio1 == 3)return; if (m_radio1 == 0) { InputWork dlg; dlg.DoModal(); } else if (m_radio1 == 1) { InputWork dlg; dlg.m_mode = 1; dlg.DoModal(); } else if (m_radio1 == 2) { InputWork3 dlg; dlg.DoModal(); } DateChange(); } void SalarySet3::OnBUTprint2() // 删除按钮; { // TODO: Add your control notification handler code here UpdateData(); if (IsHasRights2new(61) == 0)return; if (m_radio1 == 3)return; CString sql; if (m_radio1 == 0) { POSITION pos; pos = m_List1.GetFirstSelectedItemPosition(); if (pos == NULL) { AfxMessageBox("请先选中您要删除的项目!", MB_ICONINFORMATION); return; } if (AfxMessageBox("确定删除吗?", MB_YESNO | MB_ICONINFORMATION) != IDYES)return; int iItem = m_List1.GetNextSelectedItem(pos); CString id = m_List1.GetItemText(iItem, 0); CString name = m_List1.GetItemText(iItem, 3); CString date = m_List1.GetItemText(iItem, 4); CString count1 = m_List1.GetItemText(iItem, 5); CString count2 = m_List1.GetItemText(iItem, 6); CString count3 = m_List1.GetItemText(iItem, 7); sql.Format("delete from mywork where [id]='%s' and [name]='%s' and [datetime]='%s' and [count1]='%s' and [count2]='%s' and [count3]='%s' and [type]='摄影师'", id, name, date, count1, count2, count3); } else if (m_radio1 == 1) { POSITION pos; pos = m_List2.GetFirstSelectedItemPosition(); if (pos == NULL) { AfxMessageBox("请先选中您要删除的项目!", MB_ICONINFORMATION); return; } if (AfxMessageBox("确定删除吗?", MB_YESNO | MB_ICONINFORMATION) != IDYES)return; int iItem = m_List2.GetNextSelectedItem(pos); CString id = m_List2.GetItemText(iItem, 0); CString name = m_List2.GetItemText(iItem, 3); CString date = m_List2.GetItemText(iItem, 4); CString count1 = m_List2.GetItemText(iItem, 5); CString count2 = m_List2.GetItemText(iItem, 6); CString count3 = m_List2.GetItemText(iItem, 7); sql.Format("delete from mywork where [id]='%s' and [name]='%s' and [datetime]='%s' and [count1]='%s' and [count2]='%s' and [count3]='%s' and [type]='化妆师'", id, name, date, count1, count2, count3); } else if (m_radio1 == 2) { POSITION pos; pos = m_List3.GetFirstSelectedItemPosition(); if (pos == NULL) { AfxMessageBox("请先选中您要删除的项目!", MB_ICONINFORMATION); return; } if (AfxMessageBox("确定删除吗?", MB_YESNO | MB_ICONINFORMATION) != IDYES)return; int iItem = m_List3.GetNextSelectedItem(pos); CString id = m_List3.GetItemText(iItem, 0); CString name = m_List3.GetItemText(iItem, 3); CString date = m_List3.GetItemText(iItem, 4); CString count1 = m_List3.GetItemText(iItem, 5); CString count2 = m_List3.GetItemText(iItem, 6); sql.Format("delete from mywork where [id]='%s' and [name]='%s' and [datetime]='%s' and [count2]='%s' and [count1]='%s' and [type]='数码师'", id, name, date, count1, count2); } #ifdef CHILD_VERSION sql.Replace("化妆", "引导"); #endif g_sendhead.bsql = 1; g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return; AfxMessageBox("删除成功!", MB_ICONINFORMATION); DateChange(); }