From a0a0df2e824b6fe7e5a3c0afce78127fecf84fc9 Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期一, 03 十一月 2025 08:23:05 +0800
Subject: [PATCH] ERP接口代码更新,WCS代码优化,出入库分配优化

---
 项目代码/WMS/WMSServices/WIDESEA_BasicService/UserInfoService.cs |  110 ++++++++++++++++++++++++++++---------------------------
 1 files changed, 56 insertions(+), 54 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/UserInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/UserInfoService.cs"
index f4724bc..3810fe3 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/UserInfoService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/UserInfoService.cs"
@@ -1,4 +1,5 @@
-锘縰sing System;
+锘縰sing AutoMapper;
+using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
@@ -7,6 +8,8 @@
 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;
@@ -18,33 +21,44 @@
     public class UserInfoService : ServiceBase<Dt_UserInfo, IUserInfoRepository>, IUserInfoService
     {
         private readonly ISys_UserRepository _userRepository;
-        public UserInfoService(IUserInfoRepository BaseDal, ISys_UserRepository userRepository) : base(BaseDal)
+        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 ReceiveUser(UserInfoDTO model)
+        /// <summary>
+        /// 鎺ユ敹浜屾湡鍛樺伐淇℃伅
+        /// </summary>
+        /// <param name="eRPUserInfoDTO"></param>
+        /// <returns></returns>
+        public WebResponseContent ReceiveStaff(ERPUserInfoDTO eRPUserInfoDTO)
         {
+            WebResponseContent content = new WebResponseContent();
             try
             {
-                if (model.OperateType == "0")
+                if (eRPUserInfoDTO == null)
                 {
-                    Dt_UserInfo userInfo = new Dt_UserInfo()
+                    return content.Error("鍛樺伐淇℃伅涓嶈兘浼犲叆涓虹┖");
+                }
+                List<Dt_UserInfo> OlduserInfos = BaseDal.QueryData();
+
+                if (eRPUserInfoDTO.OperateType == 1)
+                {
+                    //鍒ゆ柇閲嶅鎻掑叆
+                    Dt_UserInfo? userInfoOld = OlduserInfos.FirstOrDefault(x => x.Code == eRPUserInfoDTO.StaffCode);
+                    if (userInfoOld != null)
                     {
-                        Code = model.Code,
-                        DeptName = model.DeptName,
-                        DeptNo = model.DeptNo,
-                        InvOrgId = model.InvOrgId,
-                        Name = model.Name,
-                        State = model.State
-                    };
+                        return content.Error($"宸ュ彿{userInfoOld.Code}锛屽憳宸userInfoOld.Name}宸插瓨鍦�");
+                    }
+                    Dt_UserInfo userInfo = _mapper.Map<Dt_UserInfo>(eRPUserInfoDTO);
                     Sys_User user = new Sys_User()
                     {
                         UserName = userInfo.Code,
                         RoleId = 0,
-                        UserPwd = "TC123456".EncryptDES(AppSecret.User),
+                        UserPwd = "LLD123456".EncryptDES(AppSecret.User),
                         RoleName = "",
                         Enable = (byte)userInfo.State,
                         LastModifyPwdDate = DateTime.Now,
@@ -53,59 +67,47 @@
                         Creater = "绯荤粺",
                         UserTrueName = userInfo.Name,
                     };
+                    //鏂板
                     BaseDal.AddData(userInfo);
                     _userRepository.AddData(user);
                 }
-                else if (model.OperateType == "1")
+                else if (eRPUserInfoDTO.OperateType == 2)
                 {
-                    Dt_UserInfo userInfo = BaseDal.QueryFirst(x => x.Code == model.Code);
-                    if (userInfo == null)
+                    //鍒ゆ柇鏄惁瀛樺湪
+                    Dt_UserInfo? userInfoOld = OlduserInfos.FirstOrDefault(x => x.Code == eRPUserInfoDTO.StaffCode);
+                    if (userInfoOld == null)
                     {
-                        Dt_UserInfo userInfoAddNew = new Dt_UserInfo()
-                        {
-                            Code = model.Code,
-                            DeptName = model.DeptName,
-                            DeptNo = model.DeptNo,
-                            InvOrgId = model.InvOrgId,
-                            Name = model.Name,
-                            State = model.State
-                        };
-                        Sys_User userAddNew = new Sys_User()
-                        {
-                            UserName = userInfo.Code,
-                            RoleId = 0,
-                            UserPwd = "TC123456".EncryptDES(AppSecret.User),
-                            RoleName = "",
-                            Enable = (byte)userInfo.State,
-                            LastModifyPwdDate = DateTime.Now,
-                            Address = "绯荤粺鏈嶅姟鍣�",
-                            TenantId = 0,
-                            Creater = "绯荤粺",
-                            UserTrueName = userInfo.Name,
-                        };
-                        BaseDal.AddData(userInfoAddNew);
-                        _userRepository.AddData(userAddNew);
+                        return content.Error($"鏇存柊宸ュ彿{eRPUserInfoDTO.StaffCode}锛屽憳宸eRPUserInfoDTO.StaffName}涓嶅瓨鍦�");
                     }
-                    else
+                    Dt_UserInfo userInfo = _mapper.Map<Dt_UserInfo>(eRPUserInfoDTO);
+                    userInfo.Id = userInfoOld.Id;
+                    Sys_User user = _userRepository.QueryFirst(x=>x.UserName== userInfo.Code);
+                    if (userInfoOld == null)
                     {
-                        userInfo.State = model.State;
-                        userInfo.DeptName = model.DeptName;
-                        userInfo.DeptNo = model.DeptNo;
-                        userInfo.InvOrgId = model.InvOrgId;
-                        userInfo.Name = model.Name;
-                        BaseDal.UpdateData(userInfo);
+                        return content.Error($"鏇存柊宸ュ彿{eRPUserInfoDTO.StaffCode}锛屽憳宸eRPUserInfoDTO.StaffName}锛學MS璐﹀彿涓嶅瓨鍦�");
                     }
+                    user.Enable = (byte)userInfo.State;
+                    user.UserTrueName = userInfo.Name;
+                    //鏇存柊
+                    BaseDal.UpdateData(userInfo);
+                    _userRepository.UpdateData(user);
                 }
-                else if (model.OperateType == "2")
+                else if (eRPUserInfoDTO.OperateType == 3)
                 {
-                    Dt_UserInfo userInfo = BaseDal.QueryFirst(x => x.Code == model.Code);
-                    if (userInfo == null)
+                    //鍒ゆ柇鏄惁瀛樺湪
+                    Dt_UserInfo? userInfoOld = OlduserInfos.FirstOrDefault(x => x.Code == eRPUserInfoDTO.StaffCode);
+                    if (userInfoOld == null)
                     {
-                        return WebResponseContent.Instance.Error($"鏈壘鍒拌鍛樺伐鍙枫�恵model.Code}銆戜俊鎭�");
+                        return content.Error($"鏇存柊宸ュ彿{eRPUserInfoDTO.StaffCode}锛屽憳宸eRPUserInfoDTO.StaffName}涓嶅瓨鍦�");
                     }
-                    BaseDal.DeleteData(userInfo);
+                    BaseDal.DeleteData(userInfoOld);
                 }
-                return WebResponseContent.Instance.OK();
+                else
+                {
+                    return content.Error("鏈壘鍒版搷浣滅被鍨�");
+                }
+                //鏇存柊鏁版嵁
+                return content.OK("鎺ユ敹鎴愬姛");
             }
             catch (Exception ex)
             {

--
Gitblit v1.9.3