private SQuery _SQ_GetInGroupResources(params int[] pgidS) { if (pgidS.Length == 0) { throw new BCFException("GetInGroupResources(pgdiS)::@pgidS长度必须大于0"); } Resource_LinkedM rl = new Resource_LinkedM(); rl.IncludeAll(false); rl.LK_OBJT.IsInc = true; rl.P_Express.IsInc = true; ResourceExView rv = new ResourceExView(false); SQuery SQ = NewSQ(); SQ.From(rv) .InnerJoin(rl) .On(rv.RSID == rl.RSID) .Where(rl.LK_OBJT == Group.LK_OBJT) .And(rl.LK_OBJT_ID.In(pgidS)) .And(rv.Is_Disabled == false) .And(rv.PKG_Is_Disabled == false); this._Sort(SQ, rv); return(SQ); }
/// <summary> /// 获取指定包里的资源 /// </summary> /// <param name="packageIds">包ID组</param> /// <param name="incDisabled">是否包括忆禁用的部分</param> /// <returns>资源列表</returns> public List <Resource> GetResources(bool incDisabled, params int[] packageIds) { ResourceM r = new ResourceM(); Resource_LinkedM rl = new Resource_LinkedM(); rl.IncludeAll(false); SQuery SQ = NewSQ(); SQ.From(r) .InnerJoin(rl) .On(rl.RSID == r.RSID) .Where(r.RSID != "0") .And(rl.LK_OBJT == Package.LK_OBJT) .And(rl.LK_OBJT_ID.In(packageIds)); if (incDisabled == false) { SQ.And(r.Is_Disabled == false); } if (_OrderColumnName == null) { SQ.OrderBy(r.Order_Index); } else { if (r.Contains(_OrderColumnName)) { SQ.OrderBy(r[_OrderColumnName]); } else if (rl.Contains(_OrderColumnName)) { SQ.OrderBy(r[_OrderColumnName]); } else if (_OrderColumnName.IndexOf(",") > 0) { SQ.OrderBy(r.CN_Name.Exp(_OrderColumnName)); } else { SQ.OrderBy(r.Order_Index); } } return(SQ.Select <Resource>()); }
/// <summary> /// 构造函数 /// </summary> /// <param name="isOnlyLink">是否办需要关联信息</param> public ResourceExView(bool isOnlyLink) { this.IsOnlyLink = isOnlyLink; PKG.CN_Name.AsName = "PG_CN_Name"; PKG.EN_Name.AsName = "PG_EN_Name"; PKG.Order_Index.AsName = "PG_Order_Index"; PKG.Is_Disabled.AsName = "PG_Is_Disabled"; PKG.IncludeAll(false); PKG.PGID.IsInc = true; PKG.Is_Disabled.IsInc = true; if (IsOnlyLink == false) { PKG.CN_Name.IsInc = true; PKG.EN_Name.IsInc = true; PKG.Order_Index.IsInc = true; } else //[IsOnlyLink == true] { SRC.IncludeAll(false); SRC.Is_Disabled.IsInc = true; SRC.RSID.IsInc = true; } __link.IncludeAll(false); SQuery SQ = new SQuery(); this.Code = SQ.From(SRC) .InnerJoin(__link).On(SRC.RSID == __link.RSID) .InnerJoin(PKG).On(PKG.PGID == __link.LK_OBJT_ID) .Where(PKG.R_PGID == Package.DEFINE) .SubSelect().Code; this.As("RV"); //视图建好后,重新调整名称 // InnerColumn(PKG.CN_Name, "PG_CN_Name"); InnerColumn(PKG.EN_Name, "PG_EN_Name"); InnerColumn(PKG.Order_Index, "PG_Order_Index"); InnerColumn(PKG.Is_Disabled, "PG_Is_Disabled"); }