public HttpResponseMessage Modify([FromUri] int userId, [FromBody] User user) { using (var db = new SecureCloud_Entities()) { var paraShow = new StringBuilder(20); try { var userEntity = db.T_DIM_USER.FirstOrDefault(u => u.USER_NO == userId); if (userEntity == null) { return(Request.CreateResponse(HttpStatusCode.BadRequest, StringHelper.GetMessageString("用户不存在"))); } paraShow.AppendFormat("用户名:{0},", userEntity.USER_NAME); if (user.Password != default(string)) { userEntity.USER_PWD = user.Password; paraShow.AppendFormat("密码改为:{0},", StringHelper.Confuse(user.Password)); } if (user.Email != default(string)) { userEntity.USER_EMAIL = user.Email; paraShow.AppendFormat("邮箱改为:{0},", StringHelper.Confuse(user.Email)); } if (user.Phone != default(string)) { userEntity.USER_PHONE = user.Phone; paraShow.AppendFormat("联系电话改为:{0},", user.Phone); } if (user.RoleId != default(int)) { userEntity.ROLE_ID = user.RoleId; var role = db.T_DIM_ROLE.FirstOrDefault(r => r.ROLE_ID == user.RoleId); var roleName = role != null ? role.ROLE_DESCRIPTION : string.Empty; paraShow.AppendFormat("角色改为:{0},", roleName); } // 配置组织 if (user.Orgs != null || user.Orgs == "clear") { var queryOrg = from uo in db.T_DIM_USER_ORG where uo.USER_NO == userId select uo; foreach (var userOrg in queryOrg) { var entry = db.Entry(userOrg); entry.State = System.Data.EntityState.Deleted; } if (user.Orgs == "clear") { paraShow.AppendFormat("清除所属组织单位,"); } if (user.Orgs.Length != 0 && user.Orgs != "clear") { var orgs = user.Orgs.Split(',').Select(o => Convert.ToInt32(o)); var org = db.T_DIM_ORGANIZATION.Where(o => orgs.Contains(o.ID)).Select(o => o.ABB_NAME_CN); paraShow.AppendFormat("所属组织单位改为:{0},", string.Join(",", org)); foreach (var orgId in orgs) { var uo = new T_DIM_USER_ORG { USER_NO = userId, ORGANIZATION_ID = orgId }; var entry2 = db.Entry(uo); entry2.State = System.Data.EntityState.Added; } } } //配置结构物 if (user.Structs != null || user.Structs == "clear") { var queryStc = from us in db.T_DIM_USER_STRUCTURE where us.USER_NO == userId select us; foreach (var userStructure in queryStc) { var entry = db.Entry(userStructure); entry.State = System.Data.EntityState.Deleted; } if (user.Orgs == "clear") { paraShow.AppendFormat("清除关注结构物,"); } if (user.Structs.Length != 0 && user.Structs != "clear") { var stcs = user.Structs.Split(',').Select(o => Convert.ToInt32(o)); var stc = db.T_DIM_STRUCTURE.Where(o => stcs.Contains(o.ID)).Select(o => o.STRUCTURE_NAME_CN); paraShow.AppendFormat("关注结构物改为:{0},", string.Join(",", stc)); foreach (var stcId in user.Structs.Split(',').Select(o => Convert.ToInt32(o))) { var us = new T_DIM_USER_STRUCTURE { USER_NO = userId, STRUCTURE_ID = stcId }; var entry3 = db.Entry(us); entry3.State = System.Data.EntityState.Added; } } } #region 日志信息 this.Request.Properties["ActionParameter"] = JsonConvert.SerializeObject(user); this.Request.Properties["ActionParameterShow"] = paraShow.ToString(); #endregion db.SaveChanges(); return(Request.CreateResponse(HttpStatusCode.Accepted, StringHelper.GetMessageString("用户信息修改成功"))); } catch (Exception e) { return(Request.CreateResponse(HttpStatusCode.BadRequest, StringHelper.GetMessageString("用户信息修改失败"))); } } }
public HttpResponseMessage AddOrg(int userId, [FromBody] OrgModel model) { using (var entity = new SecureCloud_Entities()) { var org = new T_DIM_ORGANIZATION(); org.ABB_NAME_CN = model.OrgName; org.ProvinceCode = model.ProvinceCode; org.CityCode = model.CityCode; org.CountryCode = model.CountryCode; org.ADDRESS_STREET_CN = model.Street; org.ZIPCODE = model.ZipCode; org.MOBILE_PHONE_NUMBER = model.Phone; org.FAX_NUMBER = model.Fax; org.WEBSITE = model.Website; org.IsDeleted = false; org.SystemName = model.SystemName; org.SystemNameAbbreviation = model.SystemAbbreviation; org.Logo = model.Logo; var entry = entity.Entry(org); entry.State = System.Data.EntityState.Added; #region 日志信息 var province = entity.T_DIM_REGION.Where(r => r.REGION_ID == model.ProvinceCode) .Select(r => r.REGION_NAME_CN) .FirstOrDefault(); var city = entity.T_DIM_REGION.Where(r => r.REGION_ID == model.CityCode) .Select(r => r.REGION_NAME_CN) .FirstOrDefault(); var country = entity.T_DIM_REGION.Where(r => r.REGION_ID == model.CountryCode) .Select(r => r.REGION_NAME_CN) .FirstOrDefault(); this.Request.Properties["ActionParameter"] = JsonConvert.SerializeObject(model); this.Request.Properties["ActionParameterShow"] = string.Format( "组织名称:{0},{1}-{2}-{3},{4},邮编:{5},联系电话:{6},传真:{7},网址:{8},系统名称:{9},组织logo:{10}", model.OrgName ?? string.Empty, province ?? string.Empty, city ?? string.Empty, country ?? string.Empty, string.IsNullOrEmpty(model.Street) ? string.Empty : model.Street, string.IsNullOrEmpty(model.ZipCode) ? string.Empty : model.ZipCode, string.IsNullOrEmpty(model.Phone) ? string.Empty : model.Phone, string.IsNullOrEmpty(model.Fax) ? string.Empty : model.Fax, string.IsNullOrEmpty(model.Website) ? string.Empty : model.Website, string.IsNullOrEmpty(model.SystemName) ? string.Empty : model.SystemName, string.IsNullOrEmpty(model.Logo) ? string.Empty : model.Logo); #endregion try { entity.SaveChanges(); /****start*add 用户自动关注组织*****/ int pk = org.ID; var uo = new T_DIM_USER_ORG(); uo.ORGANIZATION_ID = pk; uo.USER_NO = userId; var entryUserOrg = entity.Entry(uo); entryUserOrg.State = System.Data.EntityState.Added; entity.SaveChanges(); /****end******/ return(Request.CreateResponse( HttpStatusCode.Accepted, StringHelper.GetMessageString("新增组织成功"))); } catch (Exception) { return(Request.CreateResponse( HttpStatusCode.BadRequest, StringHelper.GetMessageString("新增组织失败,请检查组织名称是否重复"))); } } }
public HttpResponseMessage Add([FromBody] User user) { using (var db = new SecureCloud_Entities()) { try { var newUser = new T_DIM_USER { USER_NAME = user.UserName, USER_PWD = user.Password, USER_EMAIL = user.Email, USER_PHONE = user.Phone, USER_IS_TRIL = false, USER_IS_ENABLED = true, ROLE_ID = user.RoleId, USER_ORG = user.beOrg }; db.T_DIM_USER.Add(newUser); db.SaveChanges(); int userId = newUser.USER_NO; string sbOrg = string.Empty; // 配置组织 if (user.Orgs != null) { var orgs = user.Orgs.Split(',').Select(o => Convert.ToInt32(o)); var org = db.T_DIM_ORGANIZATION.Where(o => orgs.Contains(o.ID)).Select(o => o.ABB_NAME_CN); sbOrg = string.Join(",", org); foreach (var orgId in orgs) { var uo = new T_DIM_USER_ORG { USER_NO = userId, ORGANIZATION_ID = orgId }; var entry2 = db.Entry(uo); entry2.State = System.Data.EntityState.Added; } } string sbStc = string.Empty; //配置结构物 if (user.Structs != null) { var stcs = user.Structs.Split(',').Select(o => Convert.ToInt32(o)); var st = db.T_DIM_STRUCTURE.Where(s => stcs.Contains(s.ID)).Select(s => s.STRUCTURE_NAME_CN); sbStc = string.Join(",", st); foreach (var stcId in stcs) { var us = new T_DIM_USER_STRUCTURE { USER_NO = userId, STRUCTURE_ID = stcId }; var entry3 = db.Entry(us); entry3.State = System.Data.EntityState.Added; } } db.SaveChanges(); var role = db.T_DIM_ROLE.FirstOrDefault(r => r.ROLE_ID == user.RoleId); var roleName = role != null ? role.ROLE_DESCRIPTION : string.Empty; #region 日志信息 this.Request.Properties["ActionParameter"] = JsonConvert.SerializeObject(user); this.Request.Properties["ActionParameterShow"] = string.Format("用户名:{0},密码:{1},邮箱:{2},联系电话:{3},角色:{4},所属组织:{5},关注结构物:{6}", user.UserName, StringHelper.Confuse(user.Password), StringHelper.Confuse(user.Email), user.Phone, roleName, sbOrg, sbStc); #endregion return(Request.CreateResponse(HttpStatusCode.Accepted, StringHelper.GetMessageString("用户添加成功"))); } catch (Exception e) { return(Request.CreateResponse(HttpStatusCode.BadRequest, StringHelper.GetMessageString("用户添加失败"))); } } }