?? newsaudit.cpp
字號:
// NewsAudit.cpp: implementation of the CNewsAudit class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "NewsAudit.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CNewsAudit::CNewsAudit()
{
}
CNewsAudit::~CNewsAudit()
{
}
int CNewsAudit::GetUID()
{
return UID;
}
int CNewsAudit::GetNewsID()
{
return NewsID;
}
CString CNewsAudit::GetState()
{
return State;
}
int CNewsAudit::GetAuditUserID()
{
return AuditUserID;
}
CString CNewsAudit::GetAuditDesc()
{
return AuditDesc;
}
CString CNewsAudit::GetAuditTime()
{
return AuditTime;
}
CString CNewsAudit::GetIsDelete()
{
return IsDelete;
}
void CNewsAudit::SetUID(int iUID)
{
UID=iUID;
}
void CNewsAudit::SetNewsID(int iNewsID)
{
NewsID=iNewsID;
}
void CNewsAudit::SetState(CString cState)
{
State=cState;
}
void CNewsAudit::SetAuditUserID(int iAuditUserID)
{
AuditUserID=iAuditUserID;
}
void CNewsAudit::SetAuditDesc(CString cAuditDesc)
{
AuditDesc=cAuditDesc;
}
void CNewsAudit::SetAuditTime(CString cAuditTime)
{
AuditTime=cAuditTime;
}
void CNewsAudit::SetIsDelete(CString cIsDelete)
{
IsDelete=cIsDelete;
}
void CNewsAudit::ShowList(CListCtrl& listctrl)
{
int i=0;
LV_ITEM lvitem;
lvitem.mask=LVIF_TEXT | LVIF_IMAGE | LVIF_STATE;
lvitem.state=0;
lvitem.stateMask=0;
CString strUID,strNewsID,strState,strAuditUserID,strAuditDesc,strAuditTime,strIsDelete;
//設置SELECT語句
vSQL = "SELECT * FROM NewsAudit ";
//執行SELETE語句
m_pRecordset = GetRecordSet(vSQL);
while(!m_pRecordset->adoEOF)
{
lvitem.iItem=i;
lvitem.iSubItem=0;
strUID=(LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("UID");
lvitem.pszText=(LPTSTR)(LPCTSTR)strUID;
listctrl.InsertItem(&lvitem);
strNewsID =(LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("NewsID");
listctrl.SetItemText(i,1,strNewsID);
strState =(LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("State");
listctrl.SetItemText(i,2,strState);
strAuditUserID =(LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("AuditUserID");
listctrl.SetItemText(i,3,strAuditUserID);
strAuditDesc =(LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("AuditDesc");
listctrl.SetItemText(i,4,strAuditDesc);
strAuditTime =(LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("AuditTime");
listctrl.SetItemText(i,5,strAuditTime);
strIsDelete =(LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("IsDelete");
listctrl.SetItemText(i,6,strIsDelete);
i++;
m_pRecordset->MoveNext();
}
}
//PASS
void CNewsAudit::sql_insert(int iNewsID,CString cState,int iAuditUserID,CString cAuditDesc,CString cAuditTime,CString cIsDelete)
{
//設置INSERT語句
CString strNewsID,strAuditUserID;
strNewsID.Format("%d", iNewsID);
strAuditUserID.Format("%d", iAuditUserID);
vSQL = "INSERT INTO NewsAudit VALUES(" + strNewsID + ",'" +cState + "'," + strAuditUserID + ",'" + cAuditDesc + "','" + cAuditTime + "', '" + cIsDelete +"' )";
//執行INSERT語句
ExecuteSQL(vSQL);
}
void CNewsAudit::sql_update(int iUID,int iNewsID,CString cState,int iAuditUserID,CString cAuditDesc,CString cAuditTime,CString cIsDelete)
{
//設置UPDATE語句
CString strUID,strNewsID,strAuditUserID;
strUID.Format("%d", iUID);
strNewsID.Format("%d", iNewsID);
strAuditUserID.Format("%d", iAuditUserID);
vSQL = "UPDATE NewsAudit SET NewsID= " + strNewsID + ",State='" +cState + "',AuditUserID= " + strAuditUserID + ",AuditDesc='" + cAuditDesc + "',AuditTime= '" + cAuditTime + "',IsDelete= '" + cIsDelete +"' WHERE UID ="+strUID;
//執行UPDATE語句
}
void CNewsAudit::sql_delete(int iUID)
{
//設置DELETE語句
CString strUID;
strUID.Format("%d", iUID);
vSQL = "UPDATE NewsAudit SET IsDelete= '1' WHERE UID ="+strUID;
//執行DELETE語句
ExecuteSQL(vSQL);
}
//pass
//根據編號讀取所有字段值
void CNewsAudit::GetData(int iUID)
{
//設置SELECT語句
CString strUID;
strUID.Format("%d",iUID);
vSQL = "SELECT * FROM NewsAudit WHERE UID=" + strUID;
//執行SELETE語句
m_pRecordset = GetRecordSet(vSQL);
//返回各列的值
if (m_pRecordset->adoEOF)
CNewsAudit();
else
{
NewsID = atoi((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("NewsID"));
State = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("State");
AuditUserID = atoi((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("AuditUserID"));
AuditDesc = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("AuditDesc");
AuditTime = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("AuditTime");
IsDelete = (LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("IsDelete");
}
}
int CNewsAudit::getUIDByNewsID(int newsID)
{
//設置SELECT語句
CString strNewsID;
strNewsID.Format("%d",newsID);
vSQL = "SELECT UID FROM NewsAudit WHERE NewsID="+strNewsID;
//執行SELETE語句
m_pRecordset = GetRecordSet(vSQL);
UID = atoi((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("UID"));
return UID;
}
int CNewsAudit::getUIDByUserID(int userID)
{
//設置SELECT語句
_bstr_t vSQL;
CString struserID;
struserID.Format("%d",userID);
vSQL = "SELECT UID FROM NewsAudit WHERE AuditUserID="+struserID;
//執行SELETE語句
m_pRecordset = GetRecordSet(vSQL);
UID = atoi((LPCTSTR)(_bstr_t)m_pRecordset->GetCollect("AuditUserID"));
return UID;
}
//pass
int CNewsAudit::GetAllNewsByUserID(CUIntArray& allNewsItem,int iUserID,CString strSQL)
{
//設置SELECT語句
CString strUserID;
strUserID.Format("%d",iUserID);
vSQL = "SELECT NewsID FROM NewsAudit WHERE AuditUserID= "+strUserID + strSQL;
vSQL = vSQL + "AND IsDelete=0 AND State = 1 ";
//執行SELETE語句
m_pRecordset = GetRecordSet(vSQL);
int i=0;
while(!m_pRecordset->adoEOF)
{
i++;
allNewsItem.Add(atoi((_bstr_t)m_pRecordset->GetCollect("NewsID")));
m_pRecordset->MoveNext();
}
return i;
}
CString CNewsAudit::GetDesc(int iNewsID,int iRoleID)
{
CString Desc = "";
CString strNewsID,strRoleID;
strNewsID.Format("%d",iNewsID);
strRoleID.Format("%d",iRoleID);
vSQL = "SELECT AuditDesc FROM NewsAudit,Users WHERE AuditUserID = Users.UID AND RoleID ="+strRoleID+ " AND NewsID = "+ strNewsID;
//執行SELETE語句
m_pRecordset = GetRecordSet(vSQL);
if (m_pRecordset->adoEOF)
CNewsAudit();
else
{
_variant_t varDesc = m_pRecordset->GetCollect("AuditDesc");
if(varDesc.vt != VT_NULL)
{
Desc = (LPCSTR)(_bstr_t)varDesc;
}
}
return Desc;
}
void CNewsAudit::EdtAudit(long newsID,long userID,CString strDesc,long& iFlg,CString& cMessage)
{
try
{
m_pCommand.CreateInstance(__uuidof(Command));
m_pCommand->ActiveConnection=m_pConnection;
m_pCommand->CommandType=adCmdStoredProc;
m_pCommand->CommandText=_bstr_t("edt_Audit");
_variant_t vvar1,vvar2,vvar3,vvar4,vvar5;
vvar1=_variant_t(newsID);
vvar2=_variant_t(userID);
vvar3=_variant_t(_bstr_t(strDesc));
vvar4=_variant_t(iFlg);
vvar5=_variant_t(_bstr_t(cMessage));
_ParameterPtr mp_var1,mp_var2,mp_var3,mp_var4,mp_var5;
mp_var1.CreateInstance(__uuidof(Parameter));
mp_var2.CreateInstance(__uuidof(Parameter));
mp_var3.CreateInstance(__uuidof(Parameter));
mp_var4.CreateInstance(__uuidof(Parameter));
mp_var5.CreateInstance(__uuidof(Parameter));
mp_var1=m_pCommand->CreateParameter
(
_bstr_t("var1"),
adBigInt,
adParamInput,
5,
vvar1
);
m_pCommand->Parameters->Append(mp_var1);
mp_var2=m_pCommand->CreateParameter
(
_bstr_t("var2"),
adBigInt,
adParamInput,
5,
vvar2
);
m_pCommand->Parameters->Append(mp_var2);
mp_var3=m_pCommand->CreateParameter
(
_bstr_t("var3"),
adVarChar,
adParamInput,
200,
vvar3
);
m_pCommand->Parameters->Append(mp_var3);
mp_var4=m_pCommand->CreateParameter
(
_bstr_t("var4"),
adBigInt,
adParamOutput,
5,
vvar4
);
m_pCommand->Parameters->Append(mp_var4);
mp_var5=m_pCommand->CreateParameter
(
_bstr_t("var5"),
adVarChar,
adParamOutput,
200,
vvar5
);
m_pCommand->Parameters->Append(mp_var5);
_variant_t vNull;
vNull.vt=VT_ERROR;
vNull.scode=DISP_E_PARAMNOTFOUND;
m_pCommand->Execute(&vNull,&vNull,adCmdStoredProc);
iFlg=mp_var4->Value;
cMessage=mp_var5->Value.bstrVal;
}
catch(_com_error &error)
{
AfxMessageBox(error.ErrorMessage(),MB_OK,0);
AfxMessageBox(error.Description(),MB_OK,0);
AfxMessageBox("ADO錯誤!",MB_OK,0);
}
}
BOOL CNewsAudit::GetNewNews(CUIntArray& allNewsItem,int UserID)
{
CString strUID;
strUID.Format("%d",UserID);
vSQL = "SELECT NewsID FROM NewsAudit WHERE IsDelete =0 AND IsNew =1 AND AuditUserID = "+strUID;
//執行SELETE語句
m_pRecordset = GetRecordSet(vSQL);
if (m_pRecordset->adoEOF)
{
return false;
}
else
{
while(!m_pRecordset->adoEOF)
{
allNewsItem.Add(atoi((_bstr_t)m_pRecordset->GetCollect("NewsID")));
m_pRecordset->MoveNext();
}
}
return true;
}
void CNewsAudit::ReadNews(int NewsID,int UserID)
{
CString strUserID,strNewsID;
strUserID.Format("%d", UserID);
strNewsID.Format("%d", NewsID);
vSQL = "UPDATE NewsAudit SET IsNew=0 WHERE IsDelete = 0 AND AuditUserID = "+ strUserID +" AND NewsID = "+strNewsID;
//執行INSERT語句
ExecuteSQL(vSQL);
}
void CNewsAudit::ShowNewNews(long NewsID,CString& cMessage)
{
try
{
m_pCommand.CreateInstance(__uuidof(Command));
m_pCommand->ActiveConnection=m_pConnection;
m_pCommand->CommandType=adCmdStoredProc;
m_pCommand->CommandText=_bstr_t("Show_NewAuditNews");
_variant_t vvar1,vvar2;
vvar1=_variant_t(NewsID);
vvar2=_variant_t(_bstr_t(cMessage));
_ParameterPtr mp_var1,mp_var2;
mp_var1.CreateInstance(__uuidof(Parameter));
mp_var2.CreateInstance(__uuidof(Parameter));
mp_var1=m_pCommand->CreateParameter
(
_bstr_t("var1"),
adBigInt,
adParamInput,
5,
vvar1
);
m_pCommand->Parameters->Append(mp_var1);
mp_var2=m_pCommand->CreateParameter
(
_bstr_t("var2"),
adVarChar,
adParamOutput,
200,
vvar2
);
m_pCommand->Parameters->Append(mp_var2);
_variant_t vNull;
vNull.vt=VT_ERROR;
vNull.scode=DISP_E_PARAMNOTFOUND;
m_pCommand->Execute(&vNull,&vNull,adCmdStoredProc);
cMessage=mp_var2->Value.bstrVal;
}
catch(_com_error &error)
{
AfxMessageBox(error.ErrorMessage(),MB_OK,0);
AfxMessageBox(error.Description(),MB_OK,0);
AfxMessageBox("ADO錯誤!",MB_OK,0);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -