From 9250e3e48760f91fbefef03331fc7b14b4b1be18 Mon Sep 17 00:00:00 2001
From: yanjinhui <3306209981@qq.com>
Date: 星期六, 07 六月 2025 13:09:59 +0800
Subject: [PATCH] 修改数字大屏接口
---
project/后台管理/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_UserService.cs | 275 +++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 218 insertions(+), 57 deletions(-)
diff --git "a/project/\345\220\216\345\217\260\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_UserService.cs" "b/project/\345\220\216\345\217\260\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_UserService.cs"
index 580ee29..2fa196a 100644
--- "a/project/\345\220\216\345\217\260\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_UserService.cs"
+++ "b/project/\345\220\216\345\217\260\347\256\241\347\220\206/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_UserService.cs"
@@ -15,6 +15,7 @@
using Newtonsoft.Json;
using WIDESEAWCS_Common;
using FaceAI;
+using WIDESEAWCS_DTO.Telescopic;
namespace WIDESEAWCS_SystemServices
{
@@ -25,14 +26,19 @@
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;
+ private readonly IRepository<Sys_Role> _RoleServer;
+ private readonly IRepository<Dt_AuthorizationRecord> _AuthorizatRecServer;
+ public Sys_UserService(IRepository<Dt_AuthorizationRecord> AuthorizatRecServer ,IRepository<Sys_Role> RoleServer,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;
+ _RoleServer = RoleServer;
+ _AuthorizatRecServer=AuthorizatRecServer;
}
@@ -520,23 +526,25 @@
{
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
@@ -544,16 +552,31 @@
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,
+ Unit = addUserDTO.userunit,
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)
@@ -563,6 +586,7 @@
}
}
+
/// <summary>
@@ -577,13 +601,15 @@
// 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 = "娌℃壘鍒拌鐢ㄦ埛" };
}
// 2. 妫�鏌ヨ处鍙锋槸鍚︿慨鏀癸紝骞跺垽鏂槸鍚﹂噸澶�//StringComparison.OrdinalIgnoreCase锛氳〃绀哄拷鐣ュぇ灏忓啓杩涜姣旇緝锛屾瘮濡� "admin" 鍜� "ADMIN" 涔熻涓烘槸鐩哥瓑鐨�
- if (!string.Equals(sys.UserName ,addUserDTO.username))
+ if (!string.Equals(sys.UserName, addUserDTO.username))
{
var existUser = userList.FirstOrDefault(a => a.UserName == addUserDTO.username);
if (existUser != null)
@@ -598,35 +624,73 @@
sys.PhoneNo = addUserDTO.phoneno;
sys.Role_Id = addUserDTO.roleid;
sys.RoleName = addUserDTO.rolename;
- sys.Enable = addUserDTO.enable;
+ //sys.CardNumber = addUserDTO.carnuber;
+ sys.Userteam = addUserDTO.userteam;
+ sys.Unit = addUserDTO.userunit;
+ 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. 鏇存柊鏁版嵁搴�
+
+ //鏇存柊Dt_Maintenance琛ㄤ腑鐨勬暟鎹拰user琛ㄤ腑淇敼鐨勪竴鏍�
+ team.UserAccount = addUserDTO.username;//璐﹀彿
+ team.Roleid = addUserDTO.roleid;//鏇存柊鏉冮檺
+ team.IsLeader = addUserDTO.IsLeader;
+
+ var existAuthority = userList.FirstOrDefault(a => a.UserName == addUserDTO.username);
+ // 鍏堢紦瀛樻棫鐨� enable 鍊�
+ var oldEnable = sys.Enable;
+
+ // 淇敼 enable
+ sys.Enable = addUserDTO.enable;
+
+ // 鐒跺悗姣旇緝鏃у�煎拰鏂板��
+ if (oldEnable != addUserDTO.enable)
+ {
+ var authority = new Dt_AuthorizationRecord
+ {
+ Account = addUserDTO.username,
+ UserName = addUserDTO.usertruename,
+ UerUnit = addUserDTO.userunit,
+ UserTeam = addUserDTO.userteam,
+ EnableTime = addUserDTO.enable == 1 ? DateTime.Now : (DateTime?)null, //鍚敤
+ DisableTime = addUserDTO.enable == 0 ? DateTime.Now : (DateTime?)null,//涓嶅惎鐢�
+ };
+
+ _AuthorizatRecServer.AddData(authority);
+ }
+
+
BaseDal.UpdateData(sys);
+ _MainServer.UpdateData(team);
return new WebResponseContent { Status = true, Data = sys };
}
@@ -650,31 +714,33 @@
try
{
- // 2. 鏌ヨ浜鸿劯搴撳垎缁� ID
- var faceGroupID = _faceServer.QueryData().Select(x => x.GroupID).FirstOrDefault();
+ //// 2. 鏌ヨ浜鸿劯搴撳垎缁� ID
+ //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);//鍙缁檛oken鍜宭og_id
+ //string apiResult = BaiDuFaceHelper.DeleteUser(deleteUserImg);//鍙缁檛oken鍜宭og_id
- // 2. 瑙f瀽杩斿洖缁撴灉锛屽垽鏂垹闄ゆ槸鍚︽垚鍔�
- dynamic resultObj = JsonConvert.DeserializeObject(apiResult);
- if (resultObj.error_code == 0)
+ //// 2. 瑙f瀽杩斿洖缁撴灉锛屽垽鏂垹闄ゆ槸鍚︽垚鍔�
+ //dynamic resultObj = JsonConvert.DeserializeObject(apiResult);
+ //if (resultObj.error_code == 0)
+ //{
+ // 鐧惧害鍒犻櫎鎴愬姛鍚庯紝鍒犻櫎鏁版嵁搴撲腑鐨勭敤鎴�
+ var user = BaseDal.QueryData(x => x.UserName == account).FirstOrDefault();
+ var main = _MainServer.QueryData(x => x.UserAccount == account).FirstOrDefault();
+ if (user != null && main != null)
{
- // 鐧惧害鍒犻櫎鎴愬姛鍚庯紝鍒犻櫎鏁版嵁搴撲腑鐨勭敤鎴�
- var user = BaseDal.QueryData(x => x.UserName == account);
- if (user != null)
- {
- BaseDal.DeleteData(user);
- }
- return WebResponseContent.Instance.OK("鐢ㄦ埛鍒犻櫎鎴愬姛");
+ BaseDal.DeleteData(user);
+ _MainServer.DeleteData(main);
}
- else
- {
- return WebResponseContent.Instance.Error("鐧惧害 API 鍒犻櫎澶辫触锛�" + resultObj.error_msg);
- }
+ return WebResponseContent.Instance.OK("鐢ㄦ埛鍒犻櫎鎴愬姛");
+ //}
+ //else
+ //{
+ // return WebResponseContent.Instance.Error("鐧惧害 API 鍒犻櫎澶辫触锛�" + resultObj.error_msg);
+ //}
}
catch (Exception ex)
{
@@ -847,5 +913,100 @@
return new WebResponseContent { Status = false, Message="澶辫触"};
}
}
+
+
+
+ /// <summary>
+ /// 琛ㄨ繛鎺ヨ鑹茶〃锛屽睍绀烘暟鎹�
+ /// </summary>
+ /// <returns></returns>
+ public WebResponseContent YShowUserList(PaginationDTO pagination)
+ {
+ try
+ {
+ int totalCount = 0;
+ var Role = _RoleServer.Db.Queryable<Sys_Role>();
+ var query = Role.InnerJoin<Sys_User>((a, b) => a.RoleId == b.Role_Id);
+
+ //鎼滅储鍏抽敭瀛�
+ if (!string.IsNullOrEmpty(pagination.searchKeyword))
+ {
+ query = query.Where((a, b) =>
+ b.UserName.Contains(pagination.searchKeyword) ||
+ b.UserTrueName.Contains(pagination.searchKeyword) ||
+ b.PhoneNo.Contains(pagination.searchKeyword) ||
+ a.RoleName.Contains(pagination.searchKeyword));
+ }
+ //鏃堕棿鏌ヨ
+ if (pagination.startDate.HasValue && pagination.endDate.HasValue)
+ {
+ query = query.Where((a, b) => b.CreateDate >= pagination.startDate.Value && b.CreateDate <= pagination.endDate.Value);
+ }
+ //鎺掑簭
+ if (!string.IsNullOrEmpty(pagination.sortField))
+ {
+ var isAcs = pagination.sortOrder?.ToLower() == "asc";
+ query = pagination.sortField.ToLower() switch
+ {
+
+
+ "CreateDate" => isAcs ? query.OrderBy((a, b) => b.CreateDate) : query.OrderByDescending((a, b) => b.CreateDate),
+
+ _ => query.OrderByDescending((a, b) => b.Creater) // 榛樿鎸夊垱寤烘椂闂撮檷搴�
+ };
+
+ }
+ else
+ {
+ query = query.OrderByDescending((a, b) => b.Creater);
+ }
+ var reslut = query.Select((a, b) => new
+ {
+ b.User_Id,
+ b.UserName,
+ b.UserTrueName,
+ b.Unit,
+ b.Userteam,
+ b.Role_Id,
+ b.IsLeader,
+ //b.RoleName,
+ b.CardNumber,
+ b.PhoneNo,
+ b.UserPwd,
+ b.DeptName,
+ b.Dept_Id,
+ b.Email,
+ b.Enable,
+ b.Gender,
+ b.HeadImageUrl,
+ b.Address,
+ b.CreateDate,
+ b.Creater,
+ a.RoleName,
+
+ }).ToPageList(pagination.pageIndex, pagination.pageSize, ref totalCount);
+
+
+ return new WebResponseContent
+ {
+ Status = true,
+ Data = new
+ {
+ totalCount = totalCount,
+ PageIndex = pagination.pageIndex,
+ PageSize = pagination.pageSize,
+ Items = reslut
+ }
+ };
+
+ }
+ catch (Exception ex)
+ {
+
+ return new WebResponseContent { Status = false, Message = ex.Message };
+ }
+ }
+
+
}
}
--
Gitblit v1.9.3