/// <summary> /// 添加时处理模型的CreateTime、CreateUserId、CreateUserName。更新时处理UpdateTime... /// </summary> /// <typeparam name="T"></typeparam> /// <param name="model">待处理的model</param> /// <param name="emp">操作者员工</param> /// <param name="dic">返回的字典</param> /// <param name="opt">返回的操作者对象</param> public void AddBaseInfo <T>(T model, Employee emp, out Dictionary <string, object> dic, out Service.Models.View.OpertionUser opt) { dic = new Dictionary <string, object>(); opt = new Service.Models.View.OpertionUser(); var propertys = typeof(T).GetProperties(); var idpro = propertys.FirstOrDefault(x => x.Name == "KID"); int kid = 0; if (idpro != null) { kid = idpro.GetValue(model).Toint(); } if (kid > 0) { if (propertys.Count(p => p.Name == "UpdateTime") > 0) { dic.Add("UpdateTime", DateTime.Now); } if (propertys.Count(p => p.Name == "UpdateUserId") > 0) { dic.Add("UpdateUserId", emp?.KID); } if (propertys.Count(p => p.Name == "UpdateUserName") > 0) { dic.Add("UpdateUserName", emp?.UserName); } } else { if (propertys.Count(p => p.Name == "CreateTime") > 0) { dic.Add("CreateTime", DateTime.Now); } if (propertys.Count(p => p.Name == "CreateUserId") > 0) { dic.Add("CreateUserId", emp?.KID); } if (propertys.Count(p => p.Name == "CreateUserName") > 0) { dic.Add("CreateUserName", emp?.UserName); } } opt.UserId = emp?.KID.ToString(); opt.UserName = emp?.UserName; opt.UserClientIp = GetIP(); }
public ActionResult AddOrEditPost(Employee model) { var res = new Result(); try { var emp = EmployeeInfo?.Model; var dic = new Dictionary <string, object>(); var opt = new Service.Models.View.OpertionUser(); AddBaseInfo <Employee>(model, emp, out dic, out opt); if (model.KID > 0) { dic.Add(nameof(Employee.UserName), model.UserName); dic.Add(nameof(Employee.UserNikeName), model.UserNikeName); dic.Add(nameof(Employee.UserPassword), model.UserPassword); res = BlogHelper.UpdateByWhere_Employee(dic, new Dictionary <string, object>() { { nameof(Employee.KID), model.KID } }, opt); } else { dic.Add(nameof(Employee.UserName), model.UserName); dic.Add(nameof(Employee.UserNikeName), model.UserNikeName); dic.Add(nameof(Employee.UserAcount), model.UserAcount); dic.Add(nameof(Employee.IsAdmin), 1); dic.Add(nameof(Employee.UserPassword), model.UserPassword); res = BlogHelper.Adds_Employee(new List <Dictionary <string, object> >() { dic }, opt); } } catch (Exception ex) { res.IsSucceed = false; res.Message = ex.Message; } return(MyJson(res)); }