Example #1
0
void Utils::ModifyStaff(CString staff_name, CString staff_sex, CString staff_duty, CString staff_tel, CListCtrl* list, CString no, int nSel)
{
	MYSQL mysql;
	MYSQL_RES *result = NULL;
	SQLUtils* sqlutils = new SQLUtils("localhost","root","root","work_database",3306);

	mysql_init(&mysql);

	string serverName = sqlutils->getServerName();
	string userName = sqlutils->getUserName();
	string password = sqlutils->getPassword();
	string databaseName = sqlutils->getDatabaseName();
	int port = sqlutils->getPort();
	if (mysql_real_connect(&mysql,serverName.c_str(),userName.c_str(),password.c_str(),databaseName.c_str(),port,NULL,0))
	{
		mysql_set_character_set(&mysql, "gbk");
		string sql = "update t_staff set staff_name=";
		sql.append(1,'\'').append(staff_name).append(1,'\'').append(",").append("staff_sex=").append(1,'\'').append(staff_sex).append(1,'\'').append(",")
			.append("staff_duty=").append(1,'\'').append(staff_duty).append(1,'\'').append(",").append("staff_tel=").append(1,'\'').append(staff_tel).append(1,'\'')
			.append(" where staff_no=").append(1,'\'').append(no).append(1,'\'');
		mysql_query(&mysql,sql.c_str());
		mysql_close(&mysql);
		list->SetItemText(nSel,1,staff_name);
		list->SetItemText(nSel,2,staff_sex);
		list->SetItemText(nSel,3,staff_duty);
		list->SetItemText(nSel,4,staff_tel);
		AfxMessageBox("修改信息成功");
		return;
	}
	else{
		AfxMessageBox("系统出错");
	}
}
Example #2
0
void Utils::SaveFeatureFlag(CString staff_no)
{
	MYSQL mysql;
	MYSQL_RES *result = NULL;
	SQLUtils* sqlutils = new SQLUtils("localhost","root","root","work_database",3306);

	mysql_init(&mysql);

	string serverName = sqlutils->getServerName();
	string userName = sqlutils->getUserName();
	string password = sqlutils->getPassword();
	string databaseName = sqlutils->getDatabaseName();
	int port = sqlutils->getPort();
	if (mysql_real_connect(&mysql,serverName.c_str(),userName.c_str(),password.c_str(),databaseName.c_str(),port,NULL,0))
	{
		mysql_set_character_set(&mysql, "gbk");
		string str = "update t_staff set feature_flag=";
		string sql = "";
		int feature_flag = 1;
		ostringstream oss;
		oss << str << feature_flag;
		sql += oss.str();
		sql.append(" where staff_no = ").append(1,'\'').append(staff_no).append(1,'\'');
		mysql_query(&mysql,sql.c_str());
		mysql_close(&mysql);
	}
	else{
		AfxMessageBox("系统出错");
		return;
	}
}
Example #3
0
void Utils::SaveLogInfo(CString staff_no,CString staff_name,CString recognizeResult)
{
	//获取当前时间
	CString strTime;
	CTime m_time;
	m_time = CTime::GetCurrentTime();
	strTime = m_time.Format("%Y/%m/%d-%H:%M");

	MYSQL mysql;
	SQLUtils* sqlutils = new SQLUtils("localhost","root","root","work_database",3306);

	mysql_init(&mysql);
	
	MYSQL_RES *result = NULL;
	string serverName = sqlutils->getServerName();
	string userName = sqlutils->getUserName();
	string password = sqlutils->getPassword();
	string databaseName = sqlutils->getDatabaseName();
	int port = sqlutils->getPort();
	if (mysql_real_connect(&mysql,serverName.c_str(),userName.c_str(),password.c_str(),databaseName.c_str(),port,NULL,0))
	{
		mysql_set_character_set(&mysql, "gbk");
		string sql = "insert into t_log (staff_no, staff_name, result, time) values(";
		sql.append(1,'\'').append(staff_no).append(1,'\'').append(",").append(1,'\'').append(staff_name).append(1,'\'')
			.append(",").append(1,'\'').append(recognizeResult).append(1,'\'').append(",").append(1,'\'').append(strTime).append(1,'\'').append(")");
		if (0 == mysql_query(&mysql,sql.c_str()))
		{
			mysql_close(&mysql);
		}	
	}
	else{
		AfxMessageBox("系统出错");
		return;
	}
}
Example #4
0
void Utils::SaveFacePath(CString staff_no, CString face_path)
{
	MYSQL mysql;
	MYSQL_RES *result = NULL;
	SQLUtils* sqlutils = new SQLUtils("localhost","root","root","work_database",3306);

	mysql_init(&mysql);

	string serverName = sqlutils->getServerName();
	string userName = sqlutils->getUserName();
	string password = sqlutils->getPassword();
	string databaseName = sqlutils->getDatabaseName();
	int port = sqlutils->getPort();
	if (mysql_real_connect(&mysql,serverName.c_str(),userName.c_str(),password.c_str(),databaseName.c_str(),port,NULL,0))
	{
		mysql_set_character_set(&mysql, "gbk");
		string sql = "insert into t_face (staff_no, face_path) values(";
		sql.append(1,'\'').append(staff_no).append(1,'\'').append(",").append(1,'\'').append(face_path).append(1,'\'').append(")");
		mysql_query(&mysql,sql.c_str());
		mysql_close(&mysql);
	}
	else{
		AfxMessageBox("系统出错");
		return;
	}
}
Example #5
0
Staff Utils::GetStaffByStaffNo(CString staff_no)
{
	Staff staff;
	staff.setNo(staff_no);

	MYSQL mysql;
	MYSQL_RES *result = NULL;
	SQLUtils* sqlutils = new SQLUtils("localhost","root","root","work_database",3306);
	mysql_init(&mysql);

	string serverName = sqlutils->getServerName();
	string userName = sqlutils->getUserName();
	string password = sqlutils->getPassword();
	string databaseName = sqlutils->getDatabaseName();
	int port = sqlutils->getPort();
	if (mysql_real_connect(&mysql,serverName.c_str(),userName.c_str(),password.c_str(),databaseName.c_str(),port,NULL,0))
	{
		mysql_set_character_set(&mysql, "gbk");
		string sql = "select staff_name, staff_sex, staff_duty, staff_tel from t_staff where staff_no = ";
		sql.append(1,'\'').append(staff_no).append(1,'\'');

		mysql_query(&mysql,sql.c_str());

		result = mysql_store_result(&mysql);
		int fieldcount = mysql_num_fields(result);
		MYSQL_ROW row = NULL;
		row = mysql_fetch_row(result);
		while(NULL != row)
		{
			for(int i=0; i<fieldcount; i++)
			{
				switch(i){
				case 0:
					staff.setName(row[i]);
					break;
				case 1:
					staff.setSex(row[i]);
					break;
				case 2:
					staff.setDuty(row[i]);
					break;
				case 3:
					staff.setTel(row[i]);
				}
			}
			row = mysql_fetch_row(result);
		}
		mysql_close(&mysql);
		return staff;
	}
	else{
		AfxMessageBox("系统出错");
	}
	return Staff();
}
Example #6
0
vector<Face> Utils::GetAllFaces()
{
	MYSQL mysql;
	MYSQL_RES *result = NULL;
	SQLUtils* sqlutils = new SQLUtils("localhost","root","root","work_database",3306);
	Face face;
	vector<Face> faces;
	mysql_init(&mysql);

	string serverName = sqlutils->getServerName();
	string userName = sqlutils->getUserName();
	string password = sqlutils->getPassword();
	string databaseName = sqlutils->getDatabaseName();
	int port = sqlutils->getPort();
	if (mysql_real_connect(&mysql,serverName.c_str(),userName.c_str(),password.c_str(),databaseName.c_str(),port,NULL,0))
	{
		mysql_set_character_set(&mysql, "gbk");
		string sql = "select face_id, staff_no, face_path from t_face";
		mysql_query(&mysql,sql.c_str());

		result = mysql_store_result(&mysql);
		int fieldcount = mysql_num_fields(result);
		MYSQL_ROW row = NULL;
		row = mysql_fetch_row(result);
		while(NULL != row)
		{
			for(int i=0; i<fieldcount; i++)
			{
				switch(i){
				case 0:
					face.SetFaceId(atoi(row[i]));
					break;
				case 1:
					face.SetStaffNo(row[i]);
					break;
				case 2:
					face.SetFacePath(row[i]);
					break;
				}
			}
			faces.push_back(face);
			row = mysql_fetch_row(result);
		}
		mysql_close(&mysql);
		return faces;
	}
	else{
		AfxMessageBox("系统出错");
		return vector<Face>();
	}

}
Example #7
0
void Utils::DeleteStaffByNo(CString staff_no)
{
	MYSQL mysql;
	MYSQL_RES *result = NULL;
	SQLUtils* sqlutils = new SQLUtils("localhost","root","root","work_database",3306);

	mysql_init(&mysql);

	string serverName = sqlutils->getServerName();
	string userName = sqlutils->getUserName();
	string password = sqlutils->getPassword();
	string databaseName = sqlutils->getDatabaseName();
	int port = sqlutils->getPort();
	if (mysql_real_connect(&mysql,serverName.c_str(),userName.c_str(),password.c_str(),databaseName.c_str(),port,NULL,0))
	{
		mysql_set_character_set(&mysql, "gbk");
		string sql = "delete from t_staff where staff_no=";
		sql.append(1,'\'').append(staff_no).append(1,'\'');
		mysql_query(&mysql,sql.c_str());
		
		//删除目录
		string str = "select face_path from t_face where staff_no = ";
		str.append(1,'\'').append(staff_no).append(1,'\'');
		mysql_query(&mysql,str.c_str());
		result = mysql_store_result(&mysql);
		//  int fieldcount = mysql_num_fields(result);
		MYSQL_ROW row = NULL;
		row = mysql_fetch_row(result);
		Utils utils;
		if(row==NULL)
		{
			//AfxMessageBox("请先登记");  //如果为空什么也不做
		}else{
			utils.DeletePath(row[0]);
		}
		if(result!=NULL) 
			mysql_free_result(result);//释放结果资源 

		//删除数据表数据
		string m_SQL = "delete from t_face where staff_no=";
		m_SQL.append(1,'\'').append(staff_no).append(1,'\'');
		mysql_query(&mysql,m_SQL.c_str());

		mysql_close(&mysql);
		return;
	}else{
		AfxMessageBox("系统出错");
	}
}
Example #8
0
void CAddDlg::OnBnClickedAdd()
{
	CString name, no, sex, duty, tel;
	GetDlgItemText(IDC_NAME_EDIT,name);
	GetDlgItemText(IDC_NO_EDIT,no);
	GetDlgItemText(IDC_SEX_COMBO,sex);
	GetDlgItemText(IDC_DUTY_EDIT,duty);
	GetDlgItemText(IDC_TEL_EDIT,tel);

	if (name.IsEmpty() || no.IsEmpty())
	{
		MessageBox("姓名和编号不能为空");
		return;
	}

	MYSQL mysql;
	MYSQL_RES *result = NULL;
	SQLUtils* sqlutils = new SQLUtils("localhost","root","root","work_database",3306);

	mysql_init(&mysql);

	string serverName = sqlutils->getServerName();
	string userName = sqlutils->getUserName();
	string password = sqlutils->getPassword();
	string databaseName = sqlutils->getDatabaseName();
	int port = sqlutils->getPort();
	if (mysql_real_connect(&mysql,serverName.c_str(),userName.c_str(),password.c_str(),databaseName.c_str(),port,NULL,0))
	{
		if (!checkNo(mysql,sqlutils,no) && !checkTel(mysql,sqlutils,tel))
		{
			string sql = "insert into t_staff (staff_name,staff_no,staff_sex,staff_duty,staff_tel) values(";
			sql.append(1,'\'').append(name).append(1,'\'').append(",").append(1,'\'').append(no).append(1,'\'').append(",")
				.append(1,'\'').append(sex).append(1,'\'').append(",").append(1,'\'').append(duty).append(1,'\'')
				.append(",").append(1,'\'').append(tel).append(1,'\'').append(")");
			mysql_query(&mysql,sql.c_str());
			mysql_close(&mysql);
			MessageBox("添加信息成功");
			return;
		}else if(checkNo(mysql,sqlutils,no)){
			MessageBox("此员工编号已存在");
		}else if (checkTel(mysql,sqlutils,tel)){
			MessageBox("此员工电话已存在");
		}
		return;
	}
	else{
		MessageBox("系统出错");
	}
}
Example #9
0
CString Utils::GetStaffNoByFaceId(int face_id)
{
	CString staff_no;
	MYSQL mysql;
	MYSQL_RES *result = NULL;
	SQLUtils* sqlutils = new SQLUtils("localhost","root","root","work_database",3306);
	mysql_init(&mysql);

	string serverName = sqlutils->getServerName();
	string userName = sqlutils->getUserName();
	string password = sqlutils->getPassword();
	string databaseName = sqlutils->getDatabaseName();
	int port = sqlutils->getPort();
	if (mysql_real_connect(&mysql,serverName.c_str(),userName.c_str(),password.c_str(),databaseName.c_str(),port,NULL,0))
	{
		mysql_set_character_set(&mysql, "gbk");
		string str = "select staff_no from t_face where face_id = ";
		ostringstream m_sql;
		m_sql << str <<face_id;
		string sql;
		sql += m_sql.str();

		mysql_query(&mysql,sql.c_str());

		result = mysql_store_result(&mysql);
		int fieldcount = mysql_num_fields(result);
		MYSQL_ROW row = NULL;
		row = mysql_fetch_row(result);
		while(NULL != row)
		{
			for(int i=0; i<fieldcount; i++)
			{
				staff_no = row[i];
			}
			row = mysql_fetch_row(result);
		}
		mysql_close(&mysql);
		return staff_no;
	}
	else{
		AfxMessageBox("系统出错");
	}
	return CString();
}
Example #10
0
void Utils::AddStaff(CString name, CString no, CString sex, CString duty, CString tel, CListCtrl* list, int nCount)
{
	MYSQL mysql;
	MYSQL_RES *result = NULL;
	SQLUtils* sqlutils = new SQLUtils("localhost","root","root","work_database",3306);

	mysql_init(&mysql);

	string serverName = sqlutils->getServerName();
	string userName = sqlutils->getUserName();
	string password = sqlutils->getPassword();
	string databaseName = sqlutils->getDatabaseName();
	int port = sqlutils->getPort();
	if (mysql_real_connect(&mysql,serverName.c_str(),userName.c_str(),password.c_str(),databaseName.c_str(),port,NULL,0))
	{
		mysql_set_character_set(&mysql, "gbk");
		if (!CheckNo(mysql,sqlutils,no) && !CheckTel(mysql,sqlutils,tel))
		{
			string sql = "insert into t_staff (staff_name,staff_no,staff_sex,staff_duty,staff_tel) values(";
			sql.append(1,'\'').append(name).append(1,'\'').append(",").append(1,'\'').append(no).append(1,'\'').append(",")
				.append(1,'\'').append(sex).append(1,'\'').append(",").append(1,'\'').append(duty).append(1,'\'')
				.append(",").append(1,'\'').append(tel).append(1,'\'').append(")");
			mysql_query(&mysql,sql.c_str());
			mysql_close(&mysql);
			list->InsertItem(nCount,no);
			list->SetItemText(nCount,1,name);
			list->SetItemText(nCount,2,sex);
			list->SetItemText(nCount,3,duty);
			list->SetItemText(nCount,4,tel);
			AfxMessageBox("添加信息成功");
			return;
		}else if(CheckNo(mysql,sqlutils,no)){
			AfxMessageBox("此员工编号已存在");
		}else if (CheckTel(mysql,sqlutils,tel)){
			AfxMessageBox("此员工电话已存在");
		}
		return;
	}else{
		AfxMessageBox("系统出错");
	}
}