Forráskód Böngészése

员工详细信息 查询、修改

amigotrip 7 hónapja%!(EXTRA string=óta)
szülő
commit
47680ec7fd

+ 27 - 1
OASystem/OASystem.Api/Controllers/SystemController.cs

@@ -1180,8 +1180,34 @@ namespace OASystem.API.Controllers
         /// <returns></returns>
         [HttpPost]
         [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
-        public async Task<IActionResult> EditUserInfo()
+        public async Task<IActionResult> EditUserInfo(EditUserInfoDto _dto)
         {
+            EditUserInfoDtoValidator validator = new EditUserInfoDtoValidator();
+            var validatorRes = await validator.ValidateAsync(_dto);
+            if (!validatorRes.IsValid)
+            {
+                var errors = new StringBuilder();
+                foreach (var error in validatorRes.Errors) errors.AppendLine(error.ErrorMessage);
+
+                return Ok(JsonView(false, errors.ToString()));
+            }
+
+            var userInfo = _mapper.Map<Sys_Users>(_dto);
+            var res = await _sqlSugar.Updateable(userInfo)
+                                     .IgnoreColumns(x => new
+                                     {
+                                         x.Rdate,
+                                         x.Seniority,
+                                         x.HrAudit,
+                                         x.CreateUserId,
+                                         x.CreateTime,
+                                         x.DeleteUserId,
+                                         x.DeleteTime,
+                                         x.IsDel
+                                     })
+                                     .Where(x => x.Id == _dto.Id)
+                                     .ExecuteCommandAsync();
+            if (res > 0) return Ok(JsonView(true, "操作成功!"));
 
             return Ok(JsonView(false,"操作失败!"));
         }

+ 1 - 0
OASystem/OASystem.Domain/AutoMappers/_baseMappingProfile.cs

@@ -71,6 +71,7 @@ namespace OASystem.Domain.AutoMappers
             CreateMap<UserDto, Sys_Users>();
             CreateMap<Sys_Users, UserInfo>();
             CreateMap<UserInfo, UserInfoWebView>();
+            CreateMap<EditUserInfoDto, Sys_Users>();
 
             #endregion
 

+ 20 - 13
OASystem/OASystem.Domain/Dtos/System/UserDto.cs

@@ -252,7 +252,7 @@ namespace OASystem.Domain.Dtos.System
 
     public class EditUserInfoDto
     {
-        public int CurrUserId { get; set; }
+        //public int CurrUserId { get; set; }
 
         public int Id { get; set; }
 
@@ -316,19 +316,19 @@ namespace OASystem.Domain.Dtos.System
         /// <summary>
         /// 入职时间
         /// </summary>
-        public DateTime Edate { get; set; }
-        /// <summary>
-        /// 离职时间
-        /// </summary>
-        public DateTime Rdate { get; set; }
-        /// <summary>
-        /// 工龄
-        /// </summary>
-        public int Seniority { get; set; }
+        public string Edate { get; set; }
+        ///// <summary>
+        ///// 离职时间
+        ///// </summary>
+        //public DateTime Rdate { get; set; }
+        ///// <summary>
+        ///// 工龄
+        ///// </summary>
+        //public int Seniority { get; set; }
         /// <summary>
         /// 生日
         /// </summary> 
-        public DateTime? Birthday { get; set; }
+        public string Birthday { get; set; }
         /// <summary>
         /// 身份证号码
         /// </summary>
@@ -397,9 +397,16 @@ namespace OASystem.Domain.Dtos.System
                                     .Length(6, 20).WithMessage("密码长度必须在6到20个字符之间!");
             RuleFor(x => x.ComfirmPassword).NotEmpty().WithMessage("确认密码不能为空!")
                                            .Equal(x => x.Password).WithMessage("两次密码输入不一致!");
-
             RuleFor(x => x.Sex).InclusiveBetween(0,2).WithMessage("性别:0 男;1 女;2 未设置;");
-
+            RuleFor(x => x.Phone).NotEmpty().WithMessage("手机号不能为空!");
+            RuleFor(x => x.UrgentPhone).NotEmpty().WithMessage("手机号不能为空!");
+            RuleFor(x => x.Email).NotEmpty().WithMessage("邮箱不能为空!");
+            RuleFor(x => x.Address).NotEmpty().WithMessage("住址不能为空!");
+            RuleFor(x => x.Edate).NotEmpty().WithMessage("入职时间不能为空!");
+            RuleFor(x => x.Birthday).NotEmpty().WithMessage("生日不能为空!");
+            RuleFor(x => x.IDCard).NotEmpty().WithMessage("身份证号码不能为空!");
+            RuleFor(x => x.TheOrAdultEducation).InclusiveBetween(0, 3).WithMessage("学历类型 0 未设置 1 成教 2 统招 3 留学");
+            RuleFor(x => x.Education).InclusiveBetween(0, 6).WithMessage("学历 0 未设置 1 小学、2 初中、3 高中、4 专科、5 本科、6 研究生");
         }
     }
 }