请注意 上传图片的方法
public class ZhongkongCamGets
{
public bool bIsConnected = false;
public zkemkeeper.CZKEMClass axCZKEM1 = new zkemkeeper.CZKEMClass();
private int iMachineNumber = 1;
private MZhongkongInfo ZhongkongModel;
public ZhongkongCamGets(MZhongkongInfo ThisZHongkong)
{
ZhongkongModel = ThisZHongkong;
iMachineNumber = ThisZHongkong.MNo;
bIsConnected = axCZKEM1.Connect_Net(ThisZHongkong.IPAdd, 4370);
}
/// <summary>
///删除单独考勤号所有数据
/// </summary>
/// <param name="UserId"></param>
/// <returns></returns>
public ResultMsg SSR_DeleteCleanAllInfs()
{
ResultMsg Msg = new ResultMsg();
if (bIsConnected)
{
int ErrCode = -1;
int iDataFlag = 5;
if (axCZKEM1.ClearData(iMachineNumber, iDataFlag))
{
Msg.Success = true;
axCZKEM1.RefreshData(iMachineNumber);//the data in the device should be refreshed
}
else
{
Msg.Success = false;
axCZKEM1.GetLastError(ref ErrCode);
Msg.ErrMsg = "数据处理失败!错误码是:" + ErrCode.ToString();
}
}
else
{
Msg.Success = false;
Msg.ErrMsg = "未连接考勤机";
}
return Msg;
}
/// <summary>
///删除单独考勤号所有数据
/// </summary>
/// <param name="UserId"></param>
/// <returns></returns>
public ResultMsg SSR_DeleteEnrollDataAllInfo(int UserId)
{
ResultMsg Msg = new ResultMsg();
if (bIsConnected)
{
int ErrCode = -1;
if (axCZKEM1.SSR_DeleteEnrollData(iMachineNumber, UserId.ToString(), 0))
{
Msg.Success = true;
axCZKEM1.RefreshData(iMachineNumber);
}
else
{
Msg.Success = false;
axCZKEM1.GetLastError(ref ErrCode);
Msg.ErrMsg = "数据处理失败!错误码是:" + ErrCode.ToString();
}
}
else
{
Msg.Success = false;
Msg.ErrMsg = "未连接考勤机";
}
return Msg;
}
/// <summary>
/// 删除当前考情号码的面部信息
/// </summary>
/// <param name="UserId"></param>
/// <returns></returns>
public ResultMsg SSR_DeleteEnrollDataFaceInfo(int UserId)
{
ResultMsg Msg = new ResultMsg();
if (bIsConnected)
{
int ErrCode = -1;
if (axCZKEM1.DelUserFace(iMachineNumber, UserId.ToString(), 50))
{
axCZKEM1.RefreshData(iMachineNumber);
Msg.Success = true;
Msg.ErrMsg = "数据处理完成";
}
else
{
Msg.Success = false;
axCZKEM1.GetLastError(ref ErrCode);
Msg.ErrMsg = "数据处理失败!错误码是:" + ErrCode.ToString();
}
}
else
{
Msg.Success = false;
Msg.ErrMsg = "未连接考勤机";
}
return Msg;
}
/// <summary>
///批量上传人员数据
/// </summary>
/// <param name="UserId"></param>
/// <returns></returns>
public ResultMsg SSR_SetUserInfo(List<StaffInfo> UserList)
{
if (!Directory.Exists(GModel.ImageUpDownSavePath))
{
Directory.CreateDirectory(GModel.ImageUpDownSavePath);
}
ResultMsg Msg = new ResultMsg();
if (bIsConnected)
{
int ErrCode = -1;
int IndexThis = 0;
OPCommon.FrmPrograss showFrm = new OPCommon.FrmPrograss();
showFrm.Show();
showFrm.CountAll = UserList.Count;
foreach (StaffInfo oneInf in UserList)
{
showFrm.ValueSet = IndexThis;
string PathUpload = $"{GModel.ImageUpDownSavePath}verify_biophoto_9_{oneInf.id}.jpg";
//if (!File.Exists(PathUpload))
//{
string ThisPICImage = GModel.ImageCamSavePath + "\\" + oneInf.PicFileName;
if (File.Exists(ThisPICImage))
{
OPCommon.FileOP.CopyFileNoUsed(ThisPICImage, PathUpload);
}
//}
if (axCZKEM1.SSR_SetUserInfo(iMachineNumber, oneInf.id.ToString(), oneInf.name, "", 0, true))
{
if (File.Exists(PathUpload))//如果文件存在则上传数据
{
if (axCZKEM1.SendUserFacePhoto(iMachineNumber, PathUpload))
{
new DAL.DALStaffInfo().UpdateIsUpdateZhongkong(oneInf.id, true);
Msg.Success = true;
}
else
{
Msg.ReturnInt++;
axCZKEM1.GetLastError(ref ErrCode);
Msg.ErrMsg = $"{oneInf.name}面部信息上传出错!错误码是:{ ErrCode.ToString()}\n";
LogWrite.WriteLog(Msg.ErrMsg);
}
}
LogWrite.WriteLog($"{oneInf.name}信息上传完成!");
axCZKEM1.RefreshData(iMachineNumber);//the data in the device should be refreshed
}
else
{
Msg.Success = false;
Msg.ReturnInt++;
axCZKEM1.GetLastError(ref ErrCode);
Msg.ErrMsg = $"{oneInf.name}上传信息出错!错误码是:{ ErrCode.ToString()}\n";
LogWrite.WriteLog(Msg.ErrMsg);
}
IndexThis++;
}
showFrm.Close();
}
else
{
Msg.Success = false;
Msg.ErrMsg = "未连接考勤机";
}
return Msg;
}
/// <summary>
///批量上传人员图片
/// </summary>
/// <param name="UserId"></param>
/// <returns></returns>
public ResultMsg SSR_SetUserInfoPhotos(List<StaffInfo> UserList)
{
ResultMsg Msg = new ResultMsg();
if (bIsConnected)
{
int ErrCode = -1;
int IndexThis = 0;
OPCommon.FrmPrograss showFrm = new OPCommon.FrmPrograss();
showFrm.Show();
showFrm.CountAll = UserList.Count;
foreach (StaffInfo oneInf in UserList)
{
showFrm.ValueSet = IndexThis;
string ThisPICImage = GModel.ImageCamSavePath + "\\" + oneInf.PicFileName;
if (axCZKEM1.SSR_SetUserInfo(iMachineNumber, oneInf.id.ToString(), oneInf.name, "", 0, true))
{
if (File.Exists(ThisPICImage))//如果文件存在则上传数据
{
if (axCZKEM1.SendFile(iMachineNumber, ThisPICImage))
{
new DAL.DALStaffInfo().UpdateIsUpdateZhongkong(oneInf.id, true);
}
else
{
Msg.ReturnInt++;
axCZKEM1.GetLastError(ref ErrCode);
Msg.ErrMsg = $"{oneInf.name}面部信息上传出错!错误码是:{ ErrCode.ToString()}\n";
}
}
axCZKEM1.RefreshData(iMachineNumber);//the data in the device should be refreshed
}
else
{
Msg.Success = false;
Msg.ReturnInt++;
axCZKEM1.GetLastError(ref ErrCode);
Msg.ErrMsg = $"{oneInf.name}上传信息出错!错误码是:{ ErrCode.ToString()}\n";
}
IndexThis++;
}
showFrm.Close();
}
else
{
Msg.Success = false;
Msg.ErrMsg = "未连接考勤机";
}
return Msg;
}
}
public class ZhongkongUsers
{
/// <summary>
/// 用户号
/// </summary>
public int dwEnrollNumber { get; set; }
/// <summary>
/// 用户姓名
/// </summary>
public string Name { get; set; }
public string Password { get; set; }
public int Privilege { get; set; }
public bool Enabled { get; set; }
}