📄 cincentiveinfo.cpp
字号:
// CIncentiveInfo.cpp : implementation file
//
#include "stdafx.h"
#include "Rsglxt.h"
#include "CIncentiveInfo.h"
#include "DBaseQuery.h"
#include "ExternDLLHeader.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CCIncentiveInfo dialog
CCIncentiveInfo::CCIncentiveInfo(CWnd* pParent /*=NULL*/)
: CDialog(CCIncentiveInfo::IDD, pParent)
{
//{{AFX_DATA_INIT(CCIncentiveInfo)
//}}AFX_DATA_INIT
}
void CCIncentiveInfo::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CCIncentiveInfo)
DDX_Control(pDX, IDC_COMSTAFFDEP, m_Comstaffdep);
DDX_Control(pDX, IDC_LIST_GRID, m_Sql_Grid);
DDX_Control(pDX, IDC_EDTSTAFFNAME, m_Edtstaffname);
DDX_Control(pDX, IDC_EDTSTAFFID, m_EdtstaffID);
DDX_Control(pDX, IDC_DATETIME, m_DateInc);
DDX_Control(pDX, IDC_COMPASSDEPT, m_ComPassdept);
DDX_Control(pDX, IDC_COMDept, m_Comdept);
DDX_Control(pDX, IDC_BUTUNDO, m_undo);
DDX_Control(pDX, IDC_BUTTDELETE, m_delete);
DDX_Control(pDX, IDC_BUTSAVE, m_save);
DDX_Control(pDX, IDC_BUTEXIT, m_exit);
DDX_Control(pDX, IDC_BUTCHANGE, m_change);
DDX_Control(pDX, IDC_BUTADD, m_add);
DDX_Control(pDX, IDC_EDIT29, m_Edtremark);
DDX_Control(pDX, IDC_EDIT28, m_Edtreason);
DDX_Control(pDX, IDC_EDIT27, m_EdtpassName);
DDX_Control(pDX, IDC_EDIT25, m_EdtCFmoney);
DDX_Control(pDX, IDC_EDIT24, m_Edtmoney);
DDX_Control(pDX, IDC_DATETIMEPICKER1, m_TimeJC);
DDX_Control(pDX, IDC_COMBO5, m_ComboLevel);
DDX_Control(pDX, IDC_COMBO3, m_ComboType);
DDX_Control(pDX, IDC_EDIT22, m_EdtSname);
DDX_Control(pDX, IDC_EDIT21, m_EdtSID);
DDX_Control(pDX, IDC_EDIT20, m_EdtJCitem);
DDX_Control(pDX, IDC_EDIT1, m_EdtJCID);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CCIncentiveInfo, CDialog)
//{{AFX_MSG_MAP(CCIncentiveInfo)
ON_BN_CLICKED(IDC_BUTEXIT, OnButexit)
ON_BN_CLICKED(IDC_BUTCHANGE, OnButchange)
ON_BN_CLICKED(IDC_BUTADD, OnButadd)
ON_BN_CLICKED(IDC_BUTUNDO, OnButundo)
ON_BN_CLICKED(IDC_BUTTDELETE, OnButtdelete)
ON_BN_CLICKED(IDC_BUTSAVE, OnButsave)
ON_WM_PAINT()
ON_WM_CTLCOLOR()
ON_BN_CLICKED(IDC_BTNSEL, OnBtnsel)
ON_NOTIFY(NM_DBLCLK, IDC_LIST_GRID, OnDblclkListGrid)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CCIncentiveInfo message handlers
void CCIncentiveInfo::OnButexit() //退出对话框编辑081005 XLW
{
// TODO: Add your control notification handler code here
this->OnCancel();
}
void CCIncentiveInfo::OnButchange() //修改信息
{
// TODO: Add your control notification handler code here
AddOrChange=2;
this->ButtonEnabled(true);
m_EdtSID.SetFocus();
}
void CCIncentiveInfo::OnButadd() //增加新的信息
{
// TODO: Add your control notification handler code here
AddOrChange=1;
this->ButtonEnabled(true);
this->ClearEdit();
CString NewID=ado.AutoNumber("IncentiveInfo","Incentive_ID","JC",3);//JC-奖惩编号头字母,采用时间日期型
m_EdtJCID.SetWindowText(NewID);
m_EdtSID.SetFocus();
}
void CCIncentiveInfo::OnButundo()//撤消该编辑操作081005XLW
{
// TODO: Add your control notification handler code here
if(MessageBox("确定要撤消操作吗?","系统提示",MB_OKCANCEL|MB_ICONQUESTION)!=1)
return;
this->ButtonEnabled(false);
this->ClearEdit();
this->DisPlayInfo(m_sID);
this->m_add.SetFocus();
}
void CCIncentiveInfo::OnButtdelete() //删除该条信息
{
// TODO: Add your control notification handler code here
if(MessageBox("确定要删除此条记录吗?","系统提示",MB_OKCANCEL|MB_ICONQUESTION)!=1)
return;
CString sSQL;
sSQL.Format("DELETE FROM IncentiveInfo WHERE Incentive_ID='%s'",m_sID);
RxRecordset Drst;
Drst.Open(sSQL,adCmdText);
this->OnCancel();
}
void CCIncentiveInfo::OnButsave() //保存该条信息
{
// TODO: Add your control notification handler code here
if(MessageBox("确定要保存记录吗?","系统提示",MB_OKCANCEL|MB_ICONQUESTION)!=1)
return;
CString JCID,JCitem,Datetime,Dateyear,Datemonth,SID,Sname,reason,remark,money,CFmoney,dept,Clevel,Ctype,passDept,passName,timeJC;
m_EdtJCID.GetWindowText(JCID);
m_EdtJCitem.GetWindowText(JCitem);
m_EdtSID.GetWindowText(SID);
m_EdtSname.GetWindowText(Sname);
m_Comdept.GetWindowText(dept);
m_ComPassdept.GetWindowText(passDept);
m_EdtpassName.GetWindowText(passName);
m_Edtreason.GetWindowText(reason);
m_Edtmoney.GetWindowText(money);
m_EdtCFmoney.GetWindowText(CFmoney);
m_Edtremark.GetWindowText(remark);
///////////////////
CTime time,Itime;
m_TimeJC.GetTime(time);
m_DateInc.GetTime(Itime);
timeJC=CTimeToCString(time);
Datetime=CTimeToCString(Itime);
Dateyear=Datetime.Mid(0,4);
Datemonth=Datetime.Mid(5,2);
if(Datemonth.Find("-")>=0)
Datemonth=Datetime.Mid(5,1);
/////////////////////
m_ComboLevel.GetWindowText(Clevel);
m_ComboType.GetWindowText(Ctype);
if(SID.IsEmpty())
{
MessageBox("员工编号不能为空,请输入员工编号。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtSID.SetFocus();
return;
}
if(JCitem.IsEmpty())
{
MessageBox("奖惩项目不能为空,请输入奖惩项目。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtJCitem.SetFocus();
return;
}else if(JCitem.GetLength()>30)
{
MessageBox("奖惩项目输入的字数不能过长,请重新输入奖惩项目。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtJCitem.SetFocus();
return;
}
if(Sname.IsEmpty())
{
MessageBox("员工姓名不能为空,请输入员工姓名。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtSname.SetFocus();
return;
}
if(dept.IsEmpty())
{
MessageBox("员工部门不能为空,请输入员工部门。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_Comdept.SetFocus();
return;
}
if(Ctype.IsEmpty())
{
MessageBox("奖惩类型不能为空,请重新输入奖惩类型。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_ComboType.SetFocus();
return;
}
else if(Ctype!="奖励"&&Ctype!="处罚")
{
MessageBox("奖惩类型输入无效,请重新输入奖惩类型。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_ComboType.SetFocus();
return;
}
if(Clevel.IsEmpty())
{
MessageBox("奖惩级别不能为空,请重新输入奖惩级别。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_ComboLevel.SetFocus();
return;
}
else if(Clevel!="1级"&&Clevel!="2级"&&Clevel!="3级"&&Clevel!="4级")
{
MessageBox("奖惩级别输入无效,请重新输入奖惩级别。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_ComboLevel.SetFocus();
return;
}
if(passDept.IsEmpty())
{
MessageBox("批准部门不能为空,请输入批准部门。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_Comdept.SetFocus();
return;
}
if(passName.IsEmpty())
{
MessageBox("批准人不能为空,请输入批准人姓名。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtpassName.SetFocus();
return;
}
if(reason.IsEmpty())
{
MessageBox("奖惩原因不能为空,请输入奖惩原因。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_Edtreason.SetFocus();
return;
}else if(reason.GetLength()>30)
{
MessageBox("奖惩原因输入的字数不能过长,请重新输入奖惩原因。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_Edtreason.SetFocus();
return;
}
if(money.IsEmpty())
{
money="0";
}else if(money.GetLength()>8)
{
MessageBox("奖励金额输入的字数不能过长,请重新输入。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_Edtmoney.SetFocus();
return;
}
if(CFmoney.IsEmpty())
{
CFmoney="0";
}else if(CFmoney.GetLength()>8)//10000000为最大值,超过了则提示错误
{
MessageBox("处罚金额输入的字数不能过长,请重新输入。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_EdtCFmoney.SetFocus();
return;
}
m_Edtremark.GetWindowText(remark);
if(remark.GetLength()>50)
{
MessageBox("输入备注的字数不能过长,请重新输入。","系统提示",MB_OKCANCEL|MB_ICONQUESTION!=1);
m_Edtremark.SetFocus();
return;
}
RxRecordset namest,IDst,tst,manst;
CString namesql,IDsql,text1,text2,dutytext,mansql,man;
namesql.Format("SELECT * FROM StaffInfo WHERE Staff_name='%s'",Sname);
IDsql.Format("SELECT * FROM StaffInfo WHERE Staff_ID='%s'",SID);
mansql.Format("SELECT * FROM StaffInfo WHERE Dep='%s' and Duty!='职员'",passDept);
namest.Open(namesql,adCmdText);
IDst.Open(IDsql,adCmdText);
manst.Open(mansql,adCmdText);
if(IDst.GetRecordCount()<1)
{
MessageBox("您输入的用户编号不存在!请重新输入!","系统提示",MB_OK|MB_ICONSTOP);
m_EdtSID.SetWindowText("");
m_EdtSID.SetFocus();
return;
}
if(namest.GetRecordCount()<1)
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -