| | |
| | | private readonly ISys_MenuService _menuService; |
| | | private readonly IRepository<Dt_FaceRecognition> _faceServer; |
| | | private readonly IRepository<Dt_Loginhsy> _LoginhsyServer; |
| | | public Sys_UserService(IRepository<Dt_Loginhsy> LoginhsyServer,IRepository<Dt_FaceRecognition> faceServer, IRepository<Sys_User> repository, IUnitOfWorkManage unitOfWorkManage, ICacheService cacheService, ISys_MenuService menuService) : base(repository) |
| | | private readonly IRepository<Dt_Maintenance> _MainServer; |
| | | public Sys_UserService(IRepository<Dt_Loginhsy> LoginhsyServer,IRepository<Dt_FaceRecognition> faceServer, IRepository<Sys_User> repository, IUnitOfWorkManage unitOfWorkManage, ICacheService cacheService, ISys_MenuService menuService, IRepository<Dt_Maintenance> MainServer) : base(repository) |
| | | { |
| | | _faceServer = faceServer; |
| | | _LoginhsyServer = LoginhsyServer; |
| | | _unitOfWorkManage = unitOfWorkManage; |
| | | _cacheService = cacheService; |
| | | _menuService = menuService; |
| | | _MainServer = MainServer; |
| | | |
| | | } |
| | | |
| | |
| | | { |
| | | return new WebResponseContent { Status = false, Message = "账号重复,请重新录入" }; |
| | | } |
| | | var face = _faceServer.QueryData().Select(x => x.GroupID).FirstOrDefault(); |
| | | var baiduResult = BaiDuFaceHelper.AddUser(new BDUserInfo |
| | | { |
| | | ImgPath = addUserDTO.path, |
| | | user_id = addUserDTO.username, |
| | | group_id = face // 这里应该填百度人脸库分组 |
| | | // group_id = baiduResult.result.log_id |
| | | }); |
| | | |
| | | //人脸识别先注释掉后期开启 |
| | | //var face = _faceServer.QueryData().Select(x => x.GroupID).FirstOrDefault(); |
| | | //var baiduResult = BaiDuFaceHelper.AddUser(new BDUserInfo |
| | | //{ |
| | | // ImgPath = addUserDTO.path, |
| | | // user_id = addUserDTO.username, |
| | | // group_id = face // 这里应该填百度人脸库分组 |
| | | // // group_id = baiduResult.result.log_id |
| | | //}); |
| | | |
| | | |
| | | // 判断百度返回是否成功 |
| | | if (baiduResult == null || baiduResult.error_code != 0) |
| | | { |
| | | return new WebResponseContent { Status = false, Data = "人脸注册失败:" + baiduResult.error_msg }; |
| | | //// 判断百度返回是否成功 |
| | | //if (baiduResult == null || baiduResult.error_code != 0) |
| | | //{ |
| | | // return new WebResponseContent { Status = false, Data = "人脸注册失败:" + baiduResult.error_msg }; |
| | | |
| | | |
| | | } |
| | | //} |
| | | |
| | | // 创建用户数据 |
| | | var sys = new Sys_User |
| | |
| | | UserName = addUserDTO.username, |
| | | UserTrueName = addUserDTO.usertruename, |
| | | HeadImageUrl = addUserDTO.path, |
| | | Log_id = baiduResult.log_id, |
| | | Face_token = baiduResult.result.face_token, |
| | | //Log_id = baiduResult.log_id, |
| | | //Face_token = baiduResult.result.face_token, |
| | | PhoneNo = addUserDTO.phoneno, |
| | | Role_Id = addUserDTO.roleid, |
| | | IsLeader=addUserDTO.IsLeader, |
| | | RoleName = addUserDTO.rolename, |
| | | Enable = addUserDTO.enable, |
| | | UserPwd = "j79rYYvCz4vdhcboB1Ausg==", |
| | | //Userteam=addUserDTO.userteam, |
| | | Dept_Id=addUserDTO.dept_Id, |
| | | //CardNumber=addUserDTO.carnuber, |
| | | CreateDate = DateTime.Now |
| | | }; |
| | | BaseDal.AddData(sys); |
| | | |
| | | //创建Dt_Maintenance表中的数据 |
| | | var Main = new Dt_Maintenance |
| | | { |
| | | UserAccount = addUserDTO.username, |
| | | Roleid = addUserDTO.roleid, |
| | | IsLeader=addUserDTO.IsLeader,//是否是组长 |
| | | }; |
| | | _MainServer.AddData(Main); |
| | | |
| | | return new WebResponseContent { Status = true, Data = sys }; |
| | | } |
| | | catch (Exception ex) |
| | |
| | | // 1. 查询用户 |
| | | var userList = BaseDal.QueryData(); |
| | | var sys = userList.FirstOrDefault(x => x.User_Id == addUserDTO.id); |
| | | //查找Dt_MaintenanceTeam中的数据 |
| | | var team = _MainServer.QueryData(x => x.UserAccount == sys.UserName).FirstOrDefault(); |
| | | if (sys == null) |
| | | { |
| | | return new WebResponseContent { Status = false, Message = "没找到该用户" }; |
| | |
| | | sys.PhoneNo = addUserDTO.phoneno; |
| | | sys.Role_Id = addUserDTO.roleid; |
| | | sys.RoleName = addUserDTO.rolename; |
| | | //sys.CardNumber = addUserDTO.carnuber; |
| | | //sys.Userteam = addUserDTO.userteam; |
| | | sys.Dept_Id = addUserDTO.dept_Id; |
| | | sys.Enable = addUserDTO.enable; |
| | | sys.IsLeader = addUserDTO.IsLeader;//更新用户表的是否是组长 |
| | | //如果人脸识别添加了这里就注释掉 |
| | | sys.HeadImageUrl = addUserDTO.path; |
| | | |
| | | // 4. 查询人脸库分组 ID |
| | | var faceGroupID = _faceServer.QueryData().Select(x => x.GroupID).FirstOrDefault(); |
| | | |
| | | // 5. 判断是否需要更新人脸信息 |
| | | if (!string.Equals(sys.HeadImageUrl,addUserDTO.path)) // 有新图片才处理人脸注册 |
| | | { |
| | | var baiduResult = BaiDuFaceHelper.AddUser(new BDUserInfo |
| | | { |
| | | ImgPath = addUserDTO.path, |
| | | user_id = sys.UserName, |
| | | group_id = faceGroupID |
| | | }); |
| | | //if (!string.Equals(sys.HeadImageUrl,addUserDTO.path)) // 有新图片才处理人脸注册 |
| | | //{ |
| | | // var baiduResult = BaiDuFaceHelper.AddUser(new BDUserInfo |
| | | // { |
| | | // ImgPath = addUserDTO.path, |
| | | // user_id = sys.UserName, |
| | | // group_id = faceGroupID |
| | | // }); |
| | | |
| | | // 6. 判断百度 API 是否成功 |
| | | if (baiduResult == null || baiduResult.error_code != 0) |
| | | { |
| | | return new WebResponseContent { Status = false, Message = "人脸更新失败:" + baiduResult.error_msg }; |
| | | } |
| | | // // 6. 判断百度 API 是否成功 |
| | | // if (baiduResult == null || baiduResult.error_code != 0) |
| | | // { |
| | | // return new WebResponseContent { Status = false, Message = "人脸更新失败:" + baiduResult.error_msg }; |
| | | // } |
| | | |
| | | // 7. 更新人脸相关字段 |
| | | sys.Log_id = baiduResult.log_id; |
| | | sys.HeadImageUrl = addUserDTO.path; |
| | | sys.Face_token = baiduResult.result.face_token; |
| | | } |
| | | // // 7. 更新人脸相关字段 |
| | | // sys.Log_id = baiduResult.log_id; |
| | | // sys.HeadImageUrl = addUserDTO.path; |
| | | // sys.Face_token = baiduResult.result.face_token; |
| | | //} |
| | | |
| | | // 8. 更新数据库 |
| | | BaseDal.UpdateData(sys); |
| | | //更新Dt_Maintenance表中的数据和user表中修改的一样 |
| | | team.UserAccount = addUserDTO.username;//账号 |
| | | team.Roleid = addUserDTO.roleid;//更新权限 |
| | | team.IsLeader = addUserDTO.IsLeader; |
| | | _MainServer.UpdateData(team); |
| | | |
| | | return new WebResponseContent { Status = true, Data = sys }; |
| | | } |
| | |
| | | { |
| | | |
| | | // 2. 查询人脸库分组 ID |
| | | var faceGroupID = _faceServer.QueryData().Select(x => x.GroupID).FirstOrDefault(); |
| | | //var faceGroupID = _faceServer.QueryData().Select(x => x.GroupID).FirstOrDefault(); |
| | | |
| | | WIDESEAWCS_Common.DeleteUserImg deleteUserImg = new WIDESEAWCS_Common.DeleteUserImg(); |
| | | deleteUserImg.group_id = faceGroupID; |
| | | deleteUserImg.user_id = account; |
| | | //WIDESEAWCS_Common.DeleteUserImg deleteUserImg = new WIDESEAWCS_Common.DeleteUserImg(); |
| | | //deleteUserImg.group_id = faceGroupID; |
| | | //deleteUserImg.user_id = account; |
| | | |
| | | string apiResult = BaiDuFaceHelper.DeleteUser(deleteUserImg);//只要给token和log_id |
| | | //string apiResult = BaiDuFaceHelper.DeleteUser(deleteUserImg);//只要给token和log_id |
| | | |
| | | // 2. 解析返回结果,判断删除是否成功 |
| | | dynamic resultObj = JsonConvert.DeserializeObject(apiResult); |
| | | if (resultObj.error_code == 0) |
| | | { |
| | | //// 2. 解析返回结果,判断删除是否成功 |
| | | //dynamic resultObj = JsonConvert.DeserializeObject(apiResult); |
| | | //if (resultObj.error_code == 0) |
| | | //{ |
| | | // 百度删除成功后,删除数据库中的用户 |
| | | var user = BaseDal.QueryData(x => x.UserName == account); |
| | | if (user != null) |
| | |
| | | BaseDal.DeleteData(user); |
| | | } |
| | | return WebResponseContent.Instance.OK("用户删除成功"); |
| | | } |
| | | else |
| | | { |
| | | return WebResponseContent.Instance.Error("百度 API 删除失败:" + resultObj.error_msg); |
| | | } |
| | | //} |
| | | //else |
| | | //{ |
| | | // return WebResponseContent.Instance.Error("百度 API 删除失败:" + resultObj.error_msg); |
| | | //} |
| | | } |
| | | catch (Exception ex) |
| | | { |