我的中控考勤机操作类

请注意 上传图片的方法

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; }
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值