Ejemplo n.º 1
0
        public List<CSystemPolicy> GetPolicies(IDatabaseProvider Provider)
        {
            var Links = CMetaobjectLink.sGetInternalLinksByClass(this._key, EnMetaobjectClass.ESystemPolicy, Provider);
            foreach (CMetaobjectLink Link in Links)
            {
                CSystemPolicy Policy = new CSystemPolicy(Link.LinkedObjectKey, Provider);
                this._policies.Add(Policy);
            }

            return this._policies;
        }
Ejemplo n.º 2
0
        public List<CSystemPolicy> GetPolicies(IDatabaseProvider Provider)
        {
            this._policies.Clear();

            var Links = CMetaobjectLink.sGetInternalLinksByClass(this._key, EnMetaobjectClass.ESystemPolicy, Provider);
            foreach (CMetaobjectLink Link in Links)
            {
                CSystemPolicy Policy = new CSystemPolicy(Link.LinkedObjectKey, Provider);
                this._policies.Add(Policy);
            }

            Links = CMetaobjectLink.sGetExternalLinksByClass(this._key, EnMetaobjectClass.ESystemUserGroup, Provider);
            foreach (CMetaobjectLink Link in Links)
            {
                CSystemUserGroup Group = new CSystemUserGroup(Provider);
                Group.Key = Link.SourceObjectKey;
                Group.GetPolicies(Provider);
                foreach (CSystemPolicy Policy in Group.Policies)
                {
                    if (this._policies.Where(P => P.ID.ToString() == Policy.ID.ToString()).ToList().Count == 0)
                        this._policies.Add(Policy);
                }
            }
            return this._policies;
        }
Ejemplo n.º 3
0
        public List<CSystemPolicy> sGetAllPolicies(IDatabaseProvider Provider)
        {
            List<CSystemPolicy> R = new List<CSystemPolicy>();

            Hashtable Params = new Hashtable();
            Params.Add(CDBConst.CONST_TABLE_FIELD_OBJ_CLASS, EnMetaobjectClass.ESystemUser);

            var SQL = "SELECT " + CDBConst.CONST_TABLE_FIELD_OBJ_KEY + ", " + CDBConst.CONST_TABLE_FIELD_OBJ_ID + ", ";
            SQL += CDBConst.CONST_TABLE_FIELD_OBJ_PARENT + ", " + CDBConst.CONST_TABLE_FIELD_OBJ_CLASS + ", " + CDBConst.CONST_TABLE_FIELD_OBJ_SYSTEM + ", " + CDBConst.CONST_TABLE_FIELD_OBJ_MOD + ", " + CDBConst.CONST_TABLE_FIELD_OBJ_STATUS;
            SQL += " FROM " + CDBConst.CONST_TABLE_OBJECTS + " WHERE " + CDBConst.CONST_TABLE_FIELD_OBJ_CLASS + " = @p" + CDBConst.CONST_TABLE_FIELD_OBJ_CLASS;

            var T = Provider.QueryGetData(SQL, false, Params);
            if (T == null)
                return R;
            for (int i = 0; i < T.Rows.Count; i++)
            {
                var Policy = new CSystemPolicy(Provider);
                Policy.Key = T.Rows[i][0].PostProcessDatabaseValue<decimal>();
                Policy.ID = Guid.Parse(T.Rows[i][1].PostProcessDatabaseValue<string>());
                Policy.Parent = T.Rows[i][2].PostProcessDatabaseValue<decimal>();
                Policy.Class = T.Rows[i][3].PostProcessDatabaseValue<EnMetaobjectClass>();
                Policy.System = ((T.Rows[i][4]).PostProcessDatabaseValue<int>() == 1);
                Policy.ModificatonDate = T.Rows[0][5].PostProcessDatabaseValue<DateTime>();
                Policy.Status = T.Rows[0][6].PostProcessDatabaseValue<EnMetaobjectStatus>();
                Policy.Attributes.ObjectKey = Policy.Key;
                R.Add(Policy);
            }

            return R;
        }