using AutoMapper; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using WIDESEA_Core; using WIDESEA_Core.BaseServices; using WIDESEA_Core.Const; using WIDESEA_Core.Helper; using WIDESEA_DTO; using WIDESEA_DTO.Basic; using WIDESEA_DTO.ERP; using WIDESEA_IBasicRepository; using WIDESEA_IBasicService; using WIDESEA_ISystemRepository; using WIDESEA_Model.Models; namespace WIDESEA_BasicService { public class UserInfoService : ServiceBase, IUserInfoService { private readonly ISys_UserRepository _userRepository; private readonly IMapper _mapper; public UserInfoService(IUserInfoRepository BaseDal, ISys_UserRepository userRepository,IMapper mapper) : base(BaseDal) { _userRepository = userRepository; _mapper = mapper; } public IUserInfoRepository Repository => BaseDal; /// /// 接收二期员工信息 /// /// /// public WebResponseContent ReceiveStaff(ERPUserInfoDTO eRPUserInfoDTO) { WebResponseContent content = new WebResponseContent(); try { if (eRPUserInfoDTO == null) { return content.Error("员工信息不能传入为空"); } List OlduserInfos = BaseDal.QueryData(); if (eRPUserInfoDTO.OperateType == 1) { //判断重复插入 Dt_UserInfo? userInfoOld = OlduserInfos.FirstOrDefault(x => x.Code == eRPUserInfoDTO.StaffCode); if (userInfoOld != null) { return content.Error($"工号{userInfoOld.Code},员工{userInfoOld.Name}已存在"); } Dt_UserInfo userInfo = _mapper.Map(eRPUserInfoDTO); Sys_User user = new Sys_User() { UserName = userInfo.Code, RoleId = 0, UserPwd = "LLD123456".EncryptDES(AppSecret.User), RoleName = "", Enable = (byte)userInfo.State, LastModifyPwdDate = DateTime.Now, Address = "系统服务器", TenantId = 0, Creater = "系统", UserTrueName = userInfo.Name, }; //新增 BaseDal.AddData(userInfo); _userRepository.AddData(user); } else if (eRPUserInfoDTO.OperateType == 2) { //判断是否存在 Dt_UserInfo? userInfoOld = OlduserInfos.FirstOrDefault(x => x.Code == eRPUserInfoDTO.StaffCode); if (userInfoOld == null) { return content.Error($"更新工号{eRPUserInfoDTO.StaffCode},员工{eRPUserInfoDTO.StaffName}不存在"); } Dt_UserInfo userInfo = _mapper.Map(eRPUserInfoDTO); userInfo.Id = userInfoOld.Id; Sys_User user = _userRepository.QueryFirst(x=>x.UserName== userInfo.Code); if (userInfoOld == null) { return content.Error($"更新工号{eRPUserInfoDTO.StaffCode},员工{eRPUserInfoDTO.StaffName},WMS账号不存在"); } user.Enable = (byte)userInfo.State; user.UserTrueName = userInfo.Name; //更新 BaseDal.UpdateData(userInfo); _userRepository.UpdateData(user); } else if (eRPUserInfoDTO.OperateType == 3) { //判断是否存在 Dt_UserInfo? userInfoOld = OlduserInfos.FirstOrDefault(x => x.Code == eRPUserInfoDTO.StaffCode); if (userInfoOld == null) { return content.Error($"更新工号{eRPUserInfoDTO.StaffCode},员工{eRPUserInfoDTO.StaffName}不存在"); } BaseDal.DeleteData(userInfoOld); } else { return content.Error("未找到操作类型"); } //更新数据 return content.OK("接收成功"); } catch (Exception ex) { return WebResponseContent.Instance.Error(ex.Message); } } public WebResponseContent AddUser() { try { List userInfos = BaseDal.QueryData().Where(x=>x.Code!= "Admin").ToList(); List userList = new List(); foreach (var item in userInfos) { Sys_User user = new Sys_User() { UserName = item.Code, RoleId = 0, UserPwd="TC123456".EncryptDES(AppSecret.User), RoleName ="", Enable=(byte)item.State, LastModifyPwdDate=DateTime.Now, Address= "系统服务器", TenantId=0, Creater= "系统", UserTrueName=item.Name, }; userList.Add(user); } _userRepository.AddData(userList); return WebResponseContent.Instance.OK(); } catch (Exception ex) { return WebResponseContent.Instance.Error(ex.Message); } } } }