private treedata getNode(SysOrg item, List <SysOrg> col3) { treedata node = new treedata() { id = item.id, name = item.org_name, enabled = item.dept_type, pid = item.parent_id, createTime = item.created_time.ToString(), label = item.org_name }; List <SysOrg> childs = col3.Where(t => t.parent_id == item.id).ToList(); if (childs.Count() > 0) { List <treedata> children = new List <treedata>(); foreach (var childitem in childs) { treedata childnode = getNode(childitem, col3); children.Add(childnode); } node.children = children; } return(node); }
public ResponseMessage <object> QueryDataByNameAndType([FromBody] QueryByPageRequest reqMsg) { List <treedata> reslst = new List <treedata>(); List <SysOrg> col1 = _sysOrgService.GetAll(); List <SysOrg> col2 = _sysOrgService.QueryDataByNameAndType(reqMsg.keyWords, reqMsg.status); SysOrg[] arr = new SysOrg[col2.Count()]; List <SysOrg> col3 = new List <SysOrg>(); col2.CopyTo(arr); col3 = arr.ToList(); foreach (var item in col2) { //补全树 getTree(col1, col3, item); } //构建树结果 foreach (SysOrg item in col3.Where(t => t.parent_id == "0")) { treedata node = getNode(item, col3); reslst.Add(node); } return(new ResponseMessage <object> { data = new { content = reslst, totalElements = col3.Count } }); }
/// <summary> /// 保存机构。 /// </summary> /// <param name="orgId"></param> /// <param name="info"></param> /// <returns></returns> public virtual int SaveOrg(int?orgId, SysOrg info) { info.PyCode = info.Name.ToPinyin(); var treeOper = context.CreateTreeRepository <SysOrg>(); if (orgId == null) { if (info.ParentId == null) { treeOper.Insert(info, null); } else { //插入为parent的孩子 treeOper.Insert(info, context.SysOrgs.Get(info.ParentId), EntityTreePosition.Children); } orgId = info.OrgID; } else { //移动到parent下 treeOper.Move(info.Normalize(orgId), context.SysOrgs.Get(info.ParentId), EntityTreePosition.Children); } return((int)orgId); }
public CustomJsonResult Add(string operater, RopAdminOrgAdd rop) { var result = new CustomJsonResult(); using (TransactionScope ts = new TransactionScope()) { var isExists = CurrentDb.SysOrg.Where(m => m.Name == rop.Name).FirstOrDefault(); if (isExists != null) { return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "该名称已经存在")); } var sysOrg = new SysOrg(); sysOrg.Id = GuidUtil.New(); sysOrg.Name = rop.Name; sysOrg.Description = rop.Description; sysOrg.PId = rop.PId; sysOrg.BelongSite = Enumeration.BelongSite.Admin; sysOrg.ReferenceId = GuidUtil.Empty(); sysOrg.Depth = 0; sysOrg.CreateTime = DateTime.Now; sysOrg.Creator = operater; CurrentDb.SysOrg.Add(sysOrg); CurrentDb.SaveChanges(); ts.Complete(); result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "保存成功"); } return(result); }
private void getTree(List <SysOrg> col1, List <SysOrg> col2, SysOrg node) { if (node.parent_id != "0" && col2.Where(t => t.id == node.parent_id).Count() == 0) { SysOrg parent = col1.Where(t => t.id == node.parent_id).FirstOrDefault(); col2.Add(parent); getTree(col1, col2, parent); } }
public async Task <ResponseMessage <int> > UpdateAsync([FromBody] SysOrg sysOrg) { //SysOrg entity = await _sysOrgService.GetByIdAsync(sysOrg.id); //Utils.CommmonUtils.EntityToEntity(sysOrg, entity, null); //return new ResponseMessage<int> { data = await _sysOrgService.UpdateAsync(entity) }; return(new ResponseMessage <int> { data = await _sysOrgService.UpdateAsync(sysOrg) }); }
public ResponseMessage <int> Update([FromBody] SysOrg sysOrg) { SysOrg entity = _sysOrgService.GetById(sysOrg.id); Utils.CommmonUtils.EntityToEntity(sysOrg, entity, null); return(new ResponseMessage <int> { data = _sysOrgService.Update(entity) }); //return new ResponseMessage<int> { data = _sysOrgService.Update(sysOrg) }; }
public string Update(SysOrg sysOrg) { try { _orgApp.Update(sysOrg); } catch (Exception ex) { Result.Code = 500; Result.Message = ex.InnerException?.Message ?? ex.Message; } return(JsonHelper.Instance.Serialize(Result)); }
public async Task <AjaxResponse> SaveSysOrgModel(SysOrgInput model) { Guid? resId; string parentOrgNode = ""; //验证重复 if (CheckOrgCode(ObjectMapper.Map <SysOrgData>(model))) { throw new UserFriendlyException("机构编码重复", "您设置的机构编码" + model.OrgCode + "重复!"); } if (model.ParentOrgID != null) { var pData = _sysOrgRepository.Get(model.ParentOrgID.Value); if (pData != null) { parentOrgNode = pData.OrgNode; } } if (model.Id == null) { SysOrg modelInput = ObjectMapper.Map <SysOrg>(model); modelInput.OrgNode = parentOrgNode + model.OrgCode + "."; resId = await _sysOrgRepository.InsertAndGetIdAsync(modelInput); } else { //获取需要更新的数据 SysOrg data = _sysOrgRepository.Get((Guid)model.Id); //父节点ID或者OrgCode有变化则当前节点及其子节点的OrgNode也需要改变 if (data.ParentOrgID != model.ParentOrgID || data.OrgCode != model.OrgCode) { string oldOrgNode = data.OrgNode; data.OrgNode = parentOrgNode + model.OrgCode + "."; _sysOrgRepository.UpdateChildrensOrgNode(data.OrgNode, oldOrgNode); } //映射需要修改的数据对象 SysOrg m = ObjectMapper.Map(model, data); //提交修改 await _sysOrgRepository.UpdateAsync(m); resId = model.Id; } return(new AjaxResponse { Success = true, Result = new { id = resId } }); }
/// <summary> /// 查询当前单位及下级单位 /// </summary> /// <param name="id">当前单位id</param> /// <param name="group_id">群组id</param> /// <returns></returns> public List <SysOrg> QueryDataByAuthorize(string id, string group_id) { List <SysOrg> resList = null; List <SysOrg> list = SysOrgRepository.QueryData(group_id); if (list != null && list.Count > 0) { resList = new List <SysOrg>(); //当前单位为根节点 SysOrg rootOrg = list.Where(s => s.id == id).FirstOrDefault(); resList.Add(rootOrg); GetChildOrg(resList, list, id); } return(resList); }
public Response Update(SysOrg obj) { var result = new Response(); try { _app.Update(obj); } catch (Exception ex) { result.Code = 500; result.Message = ex.InnerException?.Message ?? ex.Message; } return(result); }
public Response <SysOrg> Add(SysOrg obj) { var result = new Response <SysOrg>(); try { _app.Add(obj); result.Result = obj; } catch (Exception ex) { result.Code = 500; result.Message = ex.InnerException?.Message ?? ex.Message; } return(result); }
/// <summary> /// 获取机构列表 /// </summary> /// <param name="parentId"></param> /// <param name="targetId"></param> /// <param name="currentId"></param> /// <param name="state"></param> /// <param name="keyword"></param> /// <param name="attribute"></param> /// <returns></returns> public virtual List <SysOrg> GetOrgs(int?parentId, int?targetId, int?currentId, StateFlags?state, string keyword, OrgAttribute?attribute) { if (!string.IsNullOrEmpty(keyword)) { return(context.SysOrgs .Where(s => (s.Name.Contains(keyword)) && !s.Code.StartsWith("99")) .AssertWhere(attribute != null, s => s.Attribute <= attribute && s.Attribute != 0) .AssertWhere(state != null, s => s.State == state) .ToList()); } SysOrg parent = null; if (parentId != null) { parent = context.SysOrgs.FirstOrDefault(s => s.OrgID == parentId); } var treeOper = context.CreateTreeRepository <SysOrg>(); var result = treeOper.QueryChildren(parent) .AssertWhere(attribute != null, s => s.Attribute <= attribute && s.Attribute != 0) //如果指定currentId,则需要排除 .AssertWhere(currentId != null, s => s.OrgID != currentId) .AssertWhere(state != null, s => s.State == state) .Where(s => !s.Code.StartsWith("99")) .OrderBy(s => s.OrderNo) //把HasChildren属性扩展出来 .Select(s => s.ExtendAs <SysOrg>(() => new SysOrg { HasChildren = treeOper.HasChildren(s, t => attribute == null || (attribute != null && t.Attribute <= attribute && t.Attribute != 0)), AttributeName = s.Attribute.GetDescription() })) .ToList(); if (targetId != null && !TreeNodeExpandChecker.IsExpanded()) { var target = context.SysOrgs.Get(targetId); var parents = treeOper.RecurrenceParent(target).Select(s => s.OrgID).ToList(); result.Expand(parents, childId => GetOrgs(childId, targetId, currentId, state, string.Empty, attribute), parents.Count - 1); } return(result); }
/// <summary> /// 添加编辑角色 /// </summary> /// <param name="dto"></param> /// <returns></returns> public void AddEdit(OrgAddEditDto dto) { dto.OrgName = dto.OrgName.Trim(); SysOrg org = null; if (dto.OrgId.HasValue) { org = _repository.FirstOrDefault(o => o.OrgId == dto.OrgId.Value); org.ModifyDate = DateTime.Now; org.ModifyUserId = _userManager.UserId; org.ModifyUserName = _userManager.UserName; } else { org = new SysOrg() { CreateDate = DateTime.Now, CreateUserId = _userManager.UserId, CreateUserName = _userManager.UserName, IsLeaf = false, IsDeleted = false }; } org.OrgName = dto.OrgName; org.ParentOrgId = dto.ParentOrgId; org.ParentOrgName = dto.ParentOrgId > 0 ? dto.ParentOrgName : ""; org.Status = dto.Status; org.SortNo = dto.SortNo ?? 0; if (org.ParentOrgId > 0) { if (dbClint.Queryable <SysOrg>().Where(o => o.OrgName == dto.OrgName && o.ParentOrgId == dto.ParentOrgId && o.OrgId != dto.OrgId && o.IsDeleted == false).Any()) { throw Oops.Oh("同部门下的子部门不能重复!"); } } if (dto.OrgId.HasValue) { dbClint.Updateable(org).ExecuteCommand(); } else { dbClint.Insertable(org).ExecuteCommand(); } }
public LayUITreeDto QueryDataByAuthorizeForLayUITree(string id, string group_id) { LayUITreeDto res = null; List <SysOrg> list = SysOrgRepository.QueryData(group_id); if (list != null && list.Count > 0) { res = new LayUITreeDto(); //当前单位为根节点 SysOrg rootOrg = list.Where(s => s.id == id).FirstOrDefault(); res.title = rootOrg.org_name; res.id = rootOrg.id; res.spread = true; res.pId = rootOrg.parent_id; res.obj = rootOrg; GetChildOrg(res, list, id); } return(res); }
///<summary> ///异步更新 ///</summary> public async Task <int> UpdateAsync(SysOrg sysOrg) { return(await SysOrgRepository.UpdateAsync(sysOrg)); }
///<summary> ///更新 ///</summary> public int Update(SysOrg sysOrg) { return(SysOrgRepository.Update(sysOrg)); }
///<summary> ///异步新增 ///</summary> public async Task <string> InsertAsync(SysOrg sysOrg) { return(await SysOrgRepository.InsertAsync(sysOrg)); }
///<summary> ///新增 ///</summary> public string Insert(SysOrg sysOrg) { return(SysOrgRepository.Insert(sysOrg)); }
public async Task <JsonResult> Save(int?id, SysOrg info) { id = await adminService.SaveOrgAsync(id, info); return(Json(Result.Success("保存成功。", id))); }
public async Task <IActionResult> Delete([FromBody] SysOrg sysOrg) { var sys_org = sysOrg.BuildAdapter().AdaptToType <sys_org>(); return(Ok(await Task.FromResult(_sysOrgService.DeleteOrg(sys_org)))); }
public ResponseMessage <int> Update([FromBody] SysOrg sysOrg) { return(new ResponseMessage <int> { data = _sysOrgService.Update(sysOrg) }); }
public ResponseMessage <string> Insert([FromBody] SysOrg sysOrg) { return(new ResponseMessage <string> { data = _sysOrgService.Insert(sysOrg) }); }
public CustomJsonResult Add(string operater, RopMerchMasterAdd rop) { var result = new CustomJsonResult(); if (string.IsNullOrEmpty(rop.UserName)) { return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "用户名不能为空")); } if (string.IsNullOrEmpty(rop.Password)) { return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "密码不能为空")); } var isExistUserName = CurrentDb.SysUser.Where(m => m.UserName == rop.UserName).FirstOrDefault(); if (isExistUserName != null) { return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, string.Format("该用户名({0})已被使用", rop.UserName))); } using (TransactionScope ts = new TransactionScope()) { string merchId = GuidUtil.New(); var user = new SysMerchUser(); user.Id = GuidUtil.New(); user.MerchId = merchId; user.PId = GuidUtil.Empty(); user.UserName = rop.UserName; user.FullName = rop.FullName; user.PasswordHash = PassWordHelper.HashPassword(rop.Password); user.Email = rop.Email; user.PhoneNumber = rop.PhoneNumber; user.BelongSite = Enumeration.BelongSite.Merch; user.IsDelete = false; user.IsDisable = false; user.IsMaster = true; user.Creator = operater; user.CreateTime = DateTime.Now; user.RegisterTime = DateTime.Now; user.SecurityStamp = Guid.NewGuid().ToString().Replace("-", ""); CurrentDb.SysMerchUser.Add(user); var merch = new LocalS.Entity.Merch(); merch.Id = merchId; merch.UserId = user.Id; merch.Name = rop.FullName; merch.CreateTime = DateTime.Now; merch.Creator = operater; CurrentDb.Merch.Add(merch); var sysRole = CurrentDb.SysRole.Where(m => m.BelongSite == Enumeration.BelongSite.Merch && m.IsSuper == true).FirstOrDefault(); if (sysRole == null) { return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "未配置系统管理角色")); } CurrentDb.SysUserRole.Add(new SysUserRole { Id = GuidUtil.New(), RoleId = sysRole.Id, UserId = user.Id, Creator = operater, CreateTime = DateTime.Now }); var sysOrg = new SysOrg(); sysOrg.Id = GuidUtil.New(); sysOrg.Name = "根组织"; sysOrg.PId = GuidUtil.Empty(); sysOrg.BelongSite = Enumeration.BelongSite.Merch; sysOrg.ReferenceId = merch.Id; sysOrg.IsDelete = false; sysOrg.Priority = 0; sysOrg.Depth = 0; sysOrg.CreateTime = DateTime.Now; sysOrg.Creator = operater; CurrentDb.SysOrg.Add(sysOrg); var sysUserOrg = new SysUserOrg(); sysUserOrg.Id = GuidUtil.New(); sysUserOrg.OrgId = sysOrg.Id; sysUserOrg.UserId = user.Id; sysUserOrg.CreateTime = DateTime.Now; sysUserOrg.Creator = operater; CurrentDb.SysUserOrg.Add(sysUserOrg); CurrentDb.SaveChanges(); ts.Complete(); result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "新建成功"); } return(result); }
public async Task <ResponseMessage <string> > InsertAsync([FromBody] SysOrg sysOrg) { return(new ResponseMessage <string> { data = await _sysOrgService.InsertAsync(sysOrg) }); }
public JsonResult Save(int?id, SysOrg info) { id = adminService.SaveOrg(id, info); return(Json(Result.Success("保存成功。", id))); }