123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691 |
- // DlgCheckInDaily.cpp : 实现文件
- //
- #include "stdafx.h"
- #include "YLGL.h"
- #include "DlgCheckInDaily.h"
- #include "GetClientInfo.h"
- #include "ShowRemark.h"
- // CDlgCheckInDaily 对话框
- IMPLEMENT_DYNAMIC(CDlgCheckInDaily, CDialog)
- CDlgCheckInDaily::CDlgCheckInDaily(CWnd* pParent /*=NULL*/)
- : CDialog(CDlgCheckInDaily::IDD, pParent)
- , m_dt_begin_query(COleDateTime::GetCurrentTime())
- , m_dt_end_query(COleDateTime::GetCurrentTime())
- , m_staff(g_user.name)
- , m_customer(_T(""))
- , m_strWorkContent(_T(""))
- , m_strTomorrowPlay(_T(""))
- , m_strEvalulate(_T(""))
- , m_strQueryWord(_T(""))
- , m_id(_T(""))
- , m_dt_check(COleDateTime::GetCurrentTime())
- , m_dt_fill(COleDateTime::GetCurrentTime())
- {
- }
- CDlgCheckInDaily::~CDlgCheckInDaily()
- {
- }
- void CDlgCheckInDaily::DoDataExchange(CDataExchange* pDX)
- {
- CDialog::DoDataExchange(pDX);
- DDX_Control(pDX, IDC_LIST, m_list);
- DDX_Control(pDX, CBOX_DEPT, m_cbox_dept);
- DDX_Control(pDX, CBOX_STAFF, m_cbox_staff);
- DDX_DateTimeCtrl(pDX, DT_QUERY_BEGIN_TIME, m_dt_begin_query);
- DDX_DateTimeCtrl(pDX, DT_QUERY_END_TIME, m_dt_end_query);
- DDX_Text(pDX, ET_STAFF, m_staff);
- DDX_Text(pDX, ET_CUSTOMER, m_customer);
- DDX_Text(pDX, ET_WORK_CONTENT, m_strWorkContent);
- DDX_Text(pDX, ET_TOMMOROW_PLAN, m_strTomorrowPlay);
- DDX_Text(pDX, ET_EVALULATE, m_strEvalulate);
- DDX_Text(pDX, ET_QUERY_WORD, m_strQueryWord);
- DDX_DateTimeCtrl(pDX, IDC_DATETIMEPICKER1, m_dt_check);
- DDX_DateTimeCtrl(pDX, IDC_DATETIMEPICKER2, m_dt_fill);
- }
- BEGIN_MESSAGE_MAP(CDlgCheckInDaily, CDialog)
- ON_WM_SYSCOMMAND()
- ON_WM_CTLCOLOR()
- ON_BN_CLICKED(CHECK_DEPT, &CDlgCheckInDaily::OnBnClickedDept)
- ON_BN_CLICKED(CHECK_STAFF, &CDlgCheckInDaily::OnBnClickedStaff)
- ON_NOTIFY(DTN_DATETIMECHANGE, DT_QUERY_BEGIN_TIME, &CDlgCheckInDaily::OnDtnDatetimechangeQueryBeginTime)
- ON_NOTIFY(DTN_DATETIMECHANGE, DT_QUERY_END_TIME, &CDlgCheckInDaily::OnDtnDatetimechangeQueryEndTime)
- ON_CBN_SELCHANGE(CBOX_DEPT, &CDlgCheckInDaily::OnCbnSelchangeDept)
- ON_CBN_CLOSEUP(CBOX_STAFF, &CDlgCheckInDaily::OnCbnCloseupStaff)
- ON_BN_CLICKED(BTN_QUERY, &CDlgCheckInDaily::OnBnClickedQuery)
- ON_BN_CLICKED(BTN_SAVE, &CDlgCheckInDaily::OnBnClickedSave)
- ON_BN_CLICKED(BTN_RESET, &CDlgCheckInDaily::OnBnClickedReset)
- ON_BN_CLICKED(BTN_DELETE_RECORD, &CDlgCheckInDaily::OnBnClickedDeleteRecord)
- ON_NOTIFY(NM_CLICK, IDC_LIST, &CDlgCheckInDaily::OnNMClickList)
- ON_BN_CLICKED(BTN_FIND, &CDlgCheckInDaily::OnBnClickedFind)
- ON_BN_CLICKED(BTN_EVALULATE, &CDlgCheckInDaily::OnBnClickedEvalulate)
- END_MESSAGE_MAP()
- // CDlgCheckInDaily 消息处理程序
- BOOL CDlgCheckInDaily::OnInitDialog()
- {
- CDialog::OnInitDialog();
- // TODO: 在此添加额外的初始化
- CRect rcOldWnd;
- GetWindowRect(rcOldWnd);
- // 移动窗口;
- MoveWindow(&g_rc);
- CRect rcWnd;
- GetWindowRect(rcWnd);
- // 移动list;
- CRect rcList;
- m_list.GetWindowRect(rcList);
- rcList.right = rcWnd.right - 15;
- rcList.bottom = rcWnd.bottom - 15;
- ScreenToClient(rcList);
- m_list.MoveWindow(rcList);
- // 高差, 重新布局;
- INT nDValue = rcWnd.Height() - rcOldWnd.Height();
- if ( nDValue > 0 )
- {// 30 + 25;
- CRect rcCtrl;
- CWnd *pWnd = NULL;
-
- //nDValue -= 25;
- INT nValue = nDValue/3;
- pWnd = GetDlgItem(ET_WORK_CONTENT);
- pWnd->GetWindowRect(rcCtrl);
- rcCtrl.bottom += nValue;
- ScreenToClient(rcCtrl);
- pWnd->MoveWindow(rcCtrl);
- //////////////////////////////////////////////////////////////////////////
- pWnd = GetDlgItem(IDC_STATIC1);
- pWnd->GetWindowRect(rcCtrl);
- rcCtrl.top += nValue;
- rcCtrl.bottom += nValue*2;
- ScreenToClient(rcCtrl);
- pWnd->MoveWindow(rcCtrl);
- pWnd = GetDlgItem(ET_TOMMOROW_PLAN);
- pWnd->GetWindowRect(rcCtrl);
- rcCtrl.top += nValue;
- rcCtrl.bottom += nValue*2;
- ScreenToClient(rcCtrl);
- pWnd->MoveWindow(rcCtrl);
- /* pWnd = GetDlgItem(BTN_ADD_TOMORROW_PLAN);
- pWnd->GetWindowRect(rcCtrl);
- rcCtrl.top += nValue;
- rcCtrl.bottom += nValue;
- ScreenToClient(rcCtrl);
- pWnd->MoveWindow(rcCtrl);*/
- //////////////////////////////////////////////////////////////////////////
- pWnd = GetDlgItem(IDC_STATIC2);
- pWnd->GetWindowRect(rcCtrl);
- rcCtrl.top += 2*nValue;
- rcCtrl.bottom += nValue*3;
- ScreenToClient(rcCtrl);
- pWnd->MoveWindow(rcCtrl);
- pWnd = GetDlgItem(ET_EVALULATE);
- pWnd->GetWindowRect(rcCtrl);
- rcCtrl.top += 2*nValue;
- rcCtrl.bottom += 3*nValue;
- ScreenToClient(rcCtrl);
- pWnd->MoveWindow(rcCtrl);
- pWnd = GetDlgItem(BTN_EVALULATE);
- pWnd->GetWindowRect(rcCtrl);
- rcCtrl.top += 2*nValue;
- rcCtrl.bottom += 2*nValue;
- ScreenToClient(rcCtrl);
- pWnd->MoveWindow(rcCtrl);
- //////////////////////////////////////////////////////////////////////////
- pWnd = GetDlgItem(BTN_SAVE);
- pWnd->GetWindowRect(rcCtrl);
- rcCtrl.top += 3*nValue;
- rcCtrl.bottom += 3*nValue;
- ScreenToClient(rcCtrl);
- pWnd->MoveWindow(rcCtrl);
- pWnd = GetDlgItem(BTN_RESET);
- pWnd->GetWindowRect(rcCtrl);
- rcCtrl.top += 3*nValue;
- rcCtrl.bottom += 3*nValue;
- ScreenToClient(rcCtrl);
- pWnd->MoveWindow(rcCtrl);
- pWnd = GetDlgItem(BTN_DELETE_RECORD);
- pWnd->GetWindowRect(rcCtrl);
- rcCtrl.top += 3*nValue;
- rcCtrl.bottom += 3*nValue;
- ScreenToClient(rcCtrl);
- pWnd->MoveWindow(rcCtrl);
- }
- // 初始化list列头;
- m_list.SetHeadings(
- _T("id, 60"),
- _T("部门, 120"),
- _T("人员, 120"),
- _T("客户全称, 120"),
- _T("日期, 60"),
- _T("填写日期, 120"),
- _T("工作内容,60"),
- _T("明日计划,60"),
- _T("领导评定,60"),
- _T("状态,60"),
- NULL);
- // 删除记录;
- GetDlgItem(BTN_DELETE_RECORD)->EnableWindow(IsHasRights2new(49));
- // 评定;
- GetDlgItem(BTN_EVALULATE)->EnableWindow(IsHasRights2new(53));
- //((CEdit*)GetDlgItem(ET_EVALULATE))->SetReadOnly(!IsHasRights2new(53));
- ((CButton*)GetDlgItem(CHECK_DEPT))->SetCheck(FALSE);
- ((CButton*)GetDlgItem(CHECK_STAFF))->SetCheck(FALSE);
- m_cbox_dept.EnableWindow(FALSE);
- m_cbox_staff.EnableWindow(FALSE);
- // 获取部门信息,并初始cbox;
- GetDepartment();
- COleDateTimeSpan tSpan(7, 0, 0, 0);
- m_dt_begin_query -= tSpan;
- UpdateData(FALSE);
- GetCheckInDailyInfo();
- return TRUE; // return TRUE unless you set the focus to a control
- // 异常: OCX 属性页应返回 FALSE
- }
- void CDlgCheckInDaily::OnOK()
- {
- // TODO: 在此添加专用代码和/或调用基类
- FillList();
- //CDialog::OnOK();
- }
- void CDlgCheckInDaily::OnCancel()
- {
- // TODO: 在此添加专用代码和/或调用基类
- CDialog::OnCancel();
- }
- void CDlgCheckInDaily::OnSysCommand(UINT nID, LPARAM lParam)
- {
- // TODO: 在此添加消息处理程序代码和/或调用默认值
- if (nID == SC_MOVE || nID == 0xF012)
- return;
- CDialog::OnSysCommand(nID, lParam);
- }
- HBRUSH CDlgCheckInDaily::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
- {
- HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
- // TODO: 在此更改 DC 的任何属性
- switch(nCtlColor)
- {
- case CTLCOLOR_DLG:
- {
- return CreateSolidBrush(g_clr_dlg);
- }
- break;
- case CTLCOLOR_BTN:
- break;
- case CTLCOLOR_STATIC:
- {
- pDC->SetBkMode(TRANSPARENT);
- return CreateSolidBrush(g_clr_dlg);
- }
- break;
- }
- // TODO: 如果默认的不是所需画笔,则返回另一个画笔
- return hbr;
- }
- void CDlgCheckInDaily::OnBnClickedDept()
- {
- BOOL bCheck = ((CButton*)GetDlgItem(CHECK_DEPT))->GetCheck();
- if ( bCheck )
- {
- ((CButton*)GetDlgItem(CHECK_STAFF))->SetCheck(FALSE);
- m_cbox_staff.SetCurSel(-1);
- m_cbox_staff.EnableWindow(FALSE);
- m_cbox_dept.EnableWindow();
- }
- else
- {
- m_cbox_dept.SetCurSel(-1);
- FillList();
- }
- }
- void CDlgCheckInDaily::OnBnClickedStaff()
- {
- BOOL bCheck = ((CButton*)GetDlgItem(CHECK_STAFF))->GetCheck();
- if ( bCheck )
- {
- ((CButton*)GetDlgItem(CHECK_DEPT))->SetCheck(FALSE);
- m_cbox_dept.SetCurSel(-1);
- m_cbox_dept.EnableWindow(FALSE);
- m_cbox_staff.EnableWindow();
- }
- else
- {
- m_cbox_staff.SetCurSel(-1);
- FillList();
- }
- }
- void CDlgCheckInDaily::GetDepartment()
- {
- g_sendhead.bsql = 0;
- g_sendhead.code[0] = 3;
- g_sendhead.tabcount = 1;
- g_pMainWnd->ProcessChatMessageRequest2(3);
- if (g_bSendOK == 0)return;
- CArray<CStringArray, CStringArray> AryDepartment;
- DataToArray(&AryDepartment);
- // 初始化CBOX_DEPT控件;
- for (int i = 0; i < AryDepartment.GetSize(); i++ )
- {
- m_cbox_dept.AddString(DAL::Case_3_GetDepartment(AryDepartment,i));
- }
- }
- void CDlgCheckInDaily::GetCheckInDailyInfo()
- {
- UpdateData(TRUE);
- CString strSQL;
- strSQL.Format(_T("[record_date] >= '%s' and [record_date] <= '%s'"), m_dt_begin_query.Format(_T("%Y-%m-%d")), m_dt_end_query.Format(_T("%Y-%m-%d")));
- g_sendhead.bsql = 0;
- g_sendhead.code[0] = 212;
- g_sendhead.tabcount = 1;
- g_pMainWnd->ProcessChatMessageRequest2(strSQL);
- if (g_bSendOK == 0)return;
- DataToArray(&m_AryCheckInDaily);
- CStringArray AryStaff;
- int nArySize = m_AryCheckInDaily.GetSize();
- for ( int i = 0; i < g_AryStaff.GetSize(); i++)
- {
- CString staff = DAL::GetStaffName(i);
- BOOL bFind = 0;
- for (int j = 0; j < nArySize; j++)
- {
- if (m_AryCheckInDaily.ElementAt(j).ElementAt(2) == staff)
- {
- bFind = 1;
- break;
- }
- }
- if (bFind == 0)AryStaff.Add(staff);
- }
- m_AryCheckInDaily.SetSize(nArySize + AryStaff.GetSize(), 1);
- for (int i = 0; i < AryStaff.GetSize(); i++)
- {
- m_AryCheckInDaily.ElementAt(nArySize + i).Add(_T(""));
- m_AryCheckInDaily.ElementAt(nArySize + i).Add(_T(""));
- m_AryCheckInDaily.ElementAt(nArySize + i).Add(AryStaff.ElementAt(i));
- m_AryCheckInDaily.ElementAt(nArySize + i).Add(_T(""));
- m_AryCheckInDaily.ElementAt(nArySize + i).Add(_T(""));
- m_AryCheckInDaily.ElementAt(nArySize + i).Add(_T(""));
- m_AryCheckInDaily.ElementAt(nArySize + i).Add(_T(""));
- m_AryCheckInDaily.ElementAt(nArySize + i).Add(_T(""));
- m_AryCheckInDaily.ElementAt(nArySize + i).Add(_T(""));
- m_AryCheckInDaily.ElementAt(nArySize + i).Add(_T(""));
- }
- for (int i = 0; i < m_AryCheckInDaily.GetSize(); i++)
- {
- if (!m_AryCheckInDaily.ElementAt(i).ElementAt(8).IsEmpty())
- {
- if (0 == atoi(m_AryCheckInDaily.ElementAt(i).ElementAt(9)))
- m_AryCheckInDaily.ElementAt(i).SetAt(9, _T("未读"));
- else
- m_AryCheckInDaily.ElementAt(i).SetAt(9, _T("已读"));
- }
- }
- FillList();
- }
- void CDlgCheckInDaily::FillList()
- {
- CString strStaff = _T("");
- CString strDepartment = _T("");
- INT nSelectedItem = CB_ERR;
- if ( CB_ERR != (nSelectedItem = m_cbox_staff.GetCurSel()) )
- m_cbox_staff.GetLBText(nSelectedItem, strStaff);
- if ( CB_ERR != (nSelectedItem = m_cbox_dept.GetCurSel()) )
- m_cbox_dept.GetLBText(nSelectedItem, strDepartment);
- UpdateData(TRUE);
- int nIndex = 0;
- m_list.m_AryList.RemoveAll();
- m_list.DeleteAllItems();
- m_list.m_AryList.SetSize(m_AryCheckInDaily.GetSize(), 1);
- for ( int i = 0; i < m_AryCheckInDaily.GetSize(); i++ )
- {
- if ( !strStaff.IsEmpty() && strDepartment.IsEmpty() )
- {// 选择员工;
- if ( m_AryCheckInDaily.ElementAt(i).ElementAt(2) == strStaff)
- {
- if ( m_strQueryWord.IsEmpty() )
- {
- m_list.m_AryList.ElementAt(nIndex).RemoveAll();
- m_list.m_AryList.ElementAt(nIndex).Copy(m_AryCheckInDaily.ElementAt(i));
- nIndex++;
- }
- else
- {
- if (
- m_AryCheckInDaily.ElementAt(i).ElementAt(2).Find(m_strQueryWord) != -1 ||
- //m_AryCheckInDaily.ElementAt(i).ElementAt(3).Find(m_strQueryWord) != -1 ||
- //m_AryCheckInDaily.ElementAt(i).ElementAt(4).Find(m_strQueryWord) != -1 ||
- //m_AryCheckInDaily.ElementAt(i).ElementAt(5).Find(m_strQueryWord) != -1 ||
- m_AryCheckInDaily.ElementAt(i).ElementAt(6).Find(m_strQueryWord) != -1 ||
- m_AryCheckInDaily.ElementAt(i).ElementAt(7).Find(m_strQueryWord) != -1 ||
- m_AryCheckInDaily.ElementAt(i).ElementAt(8).Find(m_strQueryWord) != -1 ||
- m_AryCheckInDaily.ElementAt(i).ElementAt(9).Find(m_strQueryWord) != -1
- )
- {
- m_list.m_AryList.ElementAt(nIndex).RemoveAll();
- m_list.m_AryList.ElementAt(nIndex).Copy(m_AryCheckInDaily.ElementAt(i));
- nIndex++;
- }
- }
- }
- }
- else if ( strStaff.IsEmpty() && !strDepartment.IsEmpty() )
- {// 选择部门;
- if ( m_AryCheckInDaily.ElementAt(i).ElementAt(1) == strDepartment)
- {
- if ( m_strQueryWord.IsEmpty() )
- {
- m_list.m_AryList.ElementAt(nIndex).RemoveAll();
- m_list.m_AryList.ElementAt(nIndex).Copy(m_AryCheckInDaily.ElementAt(i));
- nIndex++;
- }
- else
- {
- if (
- m_AryCheckInDaily.ElementAt(i).ElementAt(1).Find(m_strQueryWord) != -1 ||
- m_AryCheckInDaily.ElementAt(i).ElementAt(2).Find(m_strQueryWord) != -1 ||
- //m_AryCheckInDaily.ElementAt(i).ElementAt(3).Find(m_strQueryWord) != -1 ||
- //m_AryCheckInDaily.ElementAt(i).ElementAt(4).Find(m_strQueryWord) != -1 ||
- //m_AryCheckInDaily.ElementAt(i).ElementAt(5).Find(m_strQueryWord) != -1 ||
- m_AryCheckInDaily.ElementAt(i).ElementAt(6).Find(m_strQueryWord) != -1 ||
- m_AryCheckInDaily.ElementAt(i).ElementAt(7).Find(m_strQueryWord) != -1 ||
- m_AryCheckInDaily.ElementAt(i).ElementAt(8).Find(m_strQueryWord) != -1 ||
- m_AryCheckInDaily.ElementAt(i).ElementAt(9).Find(m_strQueryWord) != -1
- )
- {
- m_list.m_AryList.ElementAt(nIndex).RemoveAll();
- m_list.m_AryList.ElementAt(nIndex).Copy(m_AryCheckInDaily.ElementAt(i));
- nIndex++;
- }
- }
- }
- }
- else
- {// 均未选;
- if (
- m_AryCheckInDaily.ElementAt(i).ElementAt(1).Find(m_strQueryWord) != -1 ||
- m_AryCheckInDaily.ElementAt(i).ElementAt(2).Find(m_strQueryWord) != -1 ||
- m_AryCheckInDaily.ElementAt(i).ElementAt(3).Find(m_strQueryWord) != -1 ||
- //m_AryCheckInDaily.ElementAt(i).ElementAt(4).Find(m_strQueryWord) != -1 ||
- //m_AryCheckInDaily.ElementAt(i).ElementAt(5).Find(m_strQueryWord) != -1 ||
- m_AryCheckInDaily.ElementAt(i).ElementAt(6).Find(m_strQueryWord) != -1 ||
- m_AryCheckInDaily.ElementAt(i).ElementAt(7).Find(m_strQueryWord) != -1 ||
- m_AryCheckInDaily.ElementAt(i).ElementAt(8).Find(m_strQueryWord) != -1 ||
- m_AryCheckInDaily.ElementAt(i).ElementAt(9).Find(m_strQueryWord) != -1
- )
- {
- m_list.m_AryList.ElementAt(nIndex).RemoveAll();
- m_list.m_AryList.ElementAt(nIndex).Copy(m_AryCheckInDaily.ElementAt(i));
- nIndex++;
- }
- }
- }
-
- m_list.m_AryList.SetSize(nIndex,1);
- m_list.m_AryList.FreeExtra();
- m_list.SetItemCountEx(nIndex);
- }
- void CDlgCheckInDaily::OnDtnDatetimechangeQueryBeginTime(NMHDR *pNMHDR, LRESULT *pResult)
- {
- LPNMDATETIMECHANGE pDTChange = reinterpret_cast<LPNMDATETIMECHANGE>(pNMHDR);
- // TODO: 在此添加控件通知处理程序代码.
- GetCheckInDailyInfo();
- *pResult = 0;
- }
- void CDlgCheckInDaily::OnDtnDatetimechangeQueryEndTime(NMHDR *pNMHDR, LRESULT *pResult)
- {
- LPNMDATETIMECHANGE pDTChange = reinterpret_cast<LPNMDATETIMECHANGE>(pNMHDR);
- // TODO: 在此添加控件通知处理程序代码
- GetCheckInDailyInfo();
- *pResult = 0;
- }
- void CDlgCheckInDaily::OnCbnSelchangeDept()
- {
- FillList();
- }
- void CDlgCheckInDaily::OnCbnCloseupStaff()
- {
- FillList();
- }
- void CDlgCheckInDaily::OnBnClickedQuery()
- {
- FillList();
- }
- void CDlgCheckInDaily::OnBnClickedSave() // 保存;
- {
- UpdateData();
- if ( m_strWorkContent.IsEmpty() || m_strTomorrowPlay.IsEmpty() || m_customer.IsEmpty() )
- {
- AfxMessageBox(_T("资料不全!"), MB_ICONINFORMATION);
- return;
- }
- if ( m_dt_fill > m_dt_check )
- {
- COleDateTimeSpan tSpan = m_dt_fill - m_dt_check;
- if (tSpan.GetDays() > 6)
- {
- AfxMessageBox(_T("只能签到近一星期!"), MB_ICONINFORMATION);
- return;
- }
- }
- else
- {
- COleDateTimeSpan tSpan = m_dt_check - m_dt_fill;
- if (tSpan.GetDays() > 2)
- {
- AfxMessageBox(_T("请不要玩穿越!"), MB_ICONINFORMATION);
- return;
- }
- }
- CString strSQL = _T("");
- if (m_id.IsEmpty())
- strSQL.Format("insert into [workerreport] ([staff],[staff_dept],[customer],[check_date],[record_date],[work_content],[tomorrow_plan])values( '%s','%s','%s','%s','%s','%s','%s')",
- m_staff, DAL::GetStaffDepartment(m_staff), m_customer, m_dt_check.Format(_T("%Y-%m-%d")), m_dt_fill.Format(_T("%Y-%m-%d")), m_strWorkContent, m_strTomorrowPlay);
- else
- strSQL.Format("update [workerreport] set [customer]='%s',[check_date]='%s',[record_date]='%s',[work_content]='%s',[tomorrow_plan]='%s' where id=%s",
- m_customer, m_dt_check.Format(_T("%Y-%m-%d")), m_dt_fill.Format(_T("%Y-%m-%d")), m_strWorkContent, m_strTomorrowPlay, m_id);
- g_sendhead.bsql = 1;
- g_pMainWnd->ProcessChatMessageRequest2(strSQL);
- if (g_bSendOK == 0)
- return;
- AfxMessageBox(_T("保存成功!"), MB_ICONINFORMATION);
- // 重新查询;
- GetCheckInDailyInfo();
- }
- void CDlgCheckInDaily::OnBnClickedReset() // 重填;
- {
- m_id = _T("");
- m_staff = g_user.name;
- m_customer = _T("");
- m_strWorkContent = _T("");
- m_strTomorrowPlay = _T("");
- m_strEvalulate = _T("");
- m_strCheckState = _T("");
- m_dt_fill = GetDateTimeByString(g_date);
- m_dt_check = GetDateTimeByString(g_date);
- UpdateData(FALSE);
- GetDlgItem(BTN_SAVE)->SetWindowText(_T("保存"));
- GetDlgItem(BTN_SAVE)->EnableWindow(TRUE);
- }
- void CDlgCheckInDaily::OnBnClickedDeleteRecord() // 删除;
- {
- POSITION pos = m_list.GetFirstSelectedItemPosition();
- if ( pos == NULL )
- {
- AfxMessageBox(_T("请先选中您要删除的记录!"), MB_ICONINFORMATION);
- return;
- }
- if (AfxMessageBox(_T("确认删除此记录吗?"), MB_YESNO | MB_ICONINFORMATION) != IDYES)
- return;
- int nSelectedItem = m_list.GetNextSelectedItem(pos);
- m_id = m_list.GetItemText(nSelectedItem, 0);
- CString strSQL = _T("");
- strSQL.Format(_T("delete from [workerreport] where [id] = %s"), m_id);
- g_sendhead.bsql = 1;
- g_pMainWnd->ProcessChatMessageRequest2(strSQL);
- if (g_bSendOK == 0)return;
- GetCheckInDailyInfo();
- }
- void CDlgCheckInDaily::OnNMClickList(NMHDR *pNMHDR, LRESULT *pResult)
- {
- LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);
- // TODO: 在此添加控件通知处理程序代码
- if ( pNMItemActivate->iItem != -1 )
- {
- m_id = m_list.m_AryList.ElementAt(pNMItemActivate->iItem).ElementAt(0);
- m_staff = m_list.m_AryList.ElementAt(pNMItemActivate->iItem).ElementAt(2);
- m_customer = m_list.m_AryList.ElementAt(pNMItemActivate->iItem).ElementAt(3);
- m_strWorkContent = m_list.m_AryList.ElementAt(pNMItemActivate->iItem).ElementAt(6);
- m_strTomorrowPlay = m_list.m_AryList.ElementAt(pNMItemActivate->iItem).ElementAt(7);
- m_strEvalulate = m_list.m_AryList.ElementAt(pNMItemActivate->iItem).ElementAt(8);
- m_strCheckState = m_list.m_AryList.ElementAt(pNMItemActivate->iItem).ElementAt(9);
- CString strDate = m_list.m_AryList.ElementAt(pNMItemActivate->iItem).ElementAt(4);
- m_dt_check.SetDate(_tstoi(strDate.Mid(0,4)), _tstoi(strDate.Mid(5,2)),_tstoi(strDate.Mid(8,2)));
- strDate = m_list.m_AryList.ElementAt(pNMItemActivate->iItem).ElementAt(5);
- m_dt_fill.SetDate(_tstoi(strDate.Mid(0,4)), _tstoi(strDate.Mid(5,2)),_tstoi(strDate.Mid(8,2)));
- UpdateData(FALSE);
- GetDlgItem(BTN_SAVE)->SetWindowText("保存更改");
- if (g_user.name != m_staff || m_list.m_AryList.ElementAt(pNMItemActivate->iItem).ElementAt(5) != g_date || m_list.m_AryList.ElementAt(pNMItemActivate->iItem).ElementAt(8) != "")
- GetDlgItem(BTN_SAVE)->EnableWindow(0);
- else
- GetDlgItem(BTN_SAVE)->EnableWindow(1);
- }
- *pResult = 0;
- }
- void CDlgCheckInDaily::OnBnClickedFind() // 查找;
- {
- UpdateData();
- GetClientInfo dlg;
- if (dlg.DoModal() == IDOK)
- {
- m_customer = dlg.m_name2;
- UpdateData(FALSE);
- }
- }
- void CDlgCheckInDaily::OnBnClickedEvalulate() // 评定;
- {
- POSITION pos = m_list.GetFirstSelectedItemPosition();
- if ( pos == NULL )
- {
- AfxMessageBox(_T("请选择项目"), MB_ICONINFORMATION);
- return;
- }
- int nSelectedItem = m_list.GetNextSelectedItem(pos);
- m_id = m_list.GetItemText(nSelectedItem, 0);
- ShowRemark dlg;
- dlg.m_remark = m_strEvalulate;
- if (dlg.DoModal() == IDOK)
- {
- CString right = g_user.name + _T("示");
- if (dlg.m_remark.GetLength() >= right.GetLength())
- {
- if (dlg.m_remark.Right(right.GetLength()) != right)
- dlg.m_remark += " " + right;
- }
- else
- dlg.m_remark += " " + right;
- m_strEvalulate = dlg.m_remark;
- CString strSQL = _T("");
- strSQL.Format(_T("update [workerreport] set [assess]='%s',[state]='0' where id=%s"), m_strEvalulate, m_id);
- g_sendhead.bsql = 1;
- g_pMainWnd->ProcessChatMessageRequest2(strSQL);
- if (g_bSendOK == 0)
- return;
- AfxMessageBox(_T("保存成功!"), MB_ICONINFORMATION);
- GetCheckInDailyInfo();
- }
- }
|