Ejemplo n.º 1
0
        /// <summary>
        /// 添加部门
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public int Add(SysDepartEntity entity)
        {
            entity.DepartNum  = entity.DepartNum.IsEmpty() ? DateTime.Now.ToString("yyyyMMddHHmmss") + (new Random(DateTime.Now.Millisecond)).Next(1000, 9999) : entity.DepartNum;
            entity.ChildCount = 0;
            SysDepartEntity parent = GetSingle(entity.ParentNum);

            if (parent.IsNotNull())
            {
                entity.Depth = parent.Depth + 1;
                parent.ChildCount++;
                parent.IncludeDepth(true)
                .IncludeChildCount(true)
                .Where <SysDepartEntity>("DepartNum", ECondition.Eth);
                this.SysDepart.Update(parent);
            }
            entity.IncludeDepartNum(true)
            .IncludeDepartName(true)
            .IncludeChildCount(true)
            .IncludeParentNum(true)
            .IncludeDepth(true)
            .IncludeIsDelete(true)
            .IncludeCreateTime(true)
            ;
            int line = this.SysDepart.Add(entity);

            if (line > 0)
            {
                CacheHelper.Remove(CacheKey.JOOSHOW_SYSDEPART_CACHE);
            }
            return(line);
        }