Esempio n. 1
0
 public static void InsertOrgLocationsClusterList(Guid RuleID, Guid?[] OrgLocationsID)
 {
     using (LinqMicajahDataContext dc = new LinqMicajahDataContext())
     {
         DataRule FirstRule = (from r in dc.DataRule
                               where r.InstanceId == LinqMicajahDataContext.InstanceId && r.Status == true && r.DataRuleID == RuleID
                               select r).FirstOrNull();
         if (FirstRule != null && OrgLocationsID.Length > 1)
         {
             for (int i = 1; i < OrgLocationsID.Length; i++)
             {
                 DataRule OneMoreRule = new DataRule();
                 OneMoreRule.InstanceId                 = FirstRule.InstanceId;
                 OneMoreRule.DataRuleID                 = Guid.NewGuid();
                 OneMoreRule.DataRuleTypeID             = FirstRule.DataRuleTypeID;
                 OneMoreRule.OrderNumber                = FirstRule.OrderNumber;
                 OneMoreRule.OrgLocationID              = OrgLocationsID[i];
                 OneMoreRule.GroupCategoryAspectID      = FirstRule.GroupCategoryAspectID;
                 OneMoreRule.PerformanceIndicatorID     = FirstRule.PerformanceIndicatorID;
                 OneMoreRule.PerformanceIndicatorFormID = FirstRule.PerformanceIndicatorFormID;
                 OneMoreRule.MetricID      = FirstRule.MetricID;
                 OneMoreRule.UserId        = FirstRule.UserId;
                 OneMoreRule.GroupId       = FirstRule.GroupId;
                 OneMoreRule.Status        = FirstRule.Status;
                 OneMoreRule.Created       = FirstRule.Created;
                 OneMoreRule.Updated       = FirstRule.Updated;
                 OneMoreRule.Description   = FirstRule.Description;
                 OneMoreRule.RuleClusterID = FirstRule.RuleClusterID;
                 dc.DataRule.InsertOnSubmit(OneMoreRule);
             }
             dc.SubmitChanges();
         }
     }
 }
Esempio n. 2
0
        public override void OnDeleted(LinqMicajahDataContext dc)
        {
            base.OnDeleted(dc);
            Guid?RuleClusterID = this.RuleClusterID;

            if (RuleClusterID == null && this.DataRuleID != null)
            {
                DataRule dr = (from r in dc.DataRule
                               where r.InstanceId == LinqMicajahDataContext.InstanceId && r.DataRuleID == this.DataRuleID
                               select r).FirstOrNull();
                if (dr != null)
                {
                    RuleClusterID = dr.RuleClusterID;
                }
            }
            if (RuleClusterID != null)
            {
                MetricTrac.Bll.DataRule.DeleteOrgLocationsClusterList((Guid)RuleClusterID, null);
            }
        }
Esempio n. 3
0
        public override void OnInserting(LinqMicajahDataContext dc, ref bool Cancel)
        {
            base.OnInserting(dc, ref Cancel);

            int?     Order = null;
            DataRule rule  = null;

            if (this.RuleClusterID != null)
            {
                rule = (from r in dc.DataRule
                        where r.InstanceId == LinqMicajahDataContext.InstanceId &&
                        r.Status == true &&
                        r.RuleClusterID == this.RuleClusterID &&
                        r.DataRuleTypeID == this.DataRuleTypeID
                        select r).FirstOrNull();
            }

            if (rule != null)
            {
                Order = rule.OrderNumber;
            }
            else
            {
                Order = (
                    from r in dc.DataRule
                    where r.DataRuleTypeID == this.DataRuleTypeID && r.InstanceId == this.InstanceId
                    select(int?) r.OrderNumber
                    ).Min();

                if (Order == null || Order < 1)
                {
                    Order = int.MaxValue / 2;
                }
                else
                {
                    Order--;
                }
            }

            this.OrderNumber = (int)Order;
        }
Esempio n. 4
0
 public static void Delete(Guid DataRuleID)
 {
     using (LinqMicajahDataContext dc = new LinqMicajahDataContext())
     {   
         DataRule rule = (from r in dc.DataRule
                             where  
                                   r.InstanceId == LinqMicajahDataContext.InstanceId
                                   &&
                                   r.DataRuleID == DataRuleID
                                   &&
                                   r.Status == true
                             select r).FirstOrNull();
         if (rule != null)
         {
             rule.Status = false;
             rule.Updated = DateTime.Now;
             dc.SubmitChanges();
         }
         UpdateD_DataRule(dc);
     }
 }
Esempio n. 5
0
        public static void InsertOrUpdate(Extend DataRule)
        {
            using (LinqMicajahDataContext dc = new LinqMicajahDataContext())
            {
                DataRule dr =(from r in dc.DataRule
                             where
                                r.InstanceId == LinqMicajahDataContext.InstanceId &&
                                r.DataRuleID == DataRule.DataRuleID
                             select r).FirstOrNull();
                bool InsertMode = (dr == null);
                Guid DataRuleID = DataRule.DataRuleID;
                if (dr == null)
                {
                    DataRule NewRule = new DataRule();
                    NewRule.DataRuleID = DataRuleID = Guid.NewGuid();
                    NewRule.Description = DataRule.Description;
                    NewRule.UserId = DataRule.UserId;
                    NewRule.GroupId = DataRule.GroupId;
                    NewRule.DataRuleTypeID = DataRule.DataRuleTypeID;
                    NewRule.GroupCategoryAspectID = DataRule.GroupCategoryAspectID;
                    dc.DataRule.InsertOnSubmit(NewRule);
                }
                else
                {                    
                    dr.Description = DataRule.Description;
                    dr.UserId = DataRule.UserId;
                    dr.GroupId = DataRule.GroupId;
                    dr.GroupCategoryAspectID = DataRule.GroupCategoryAspectID;
                }
                dc.SubmitChanges();
                // save related entities
                if (!InsertMode)
                {
                    IQueryable<DataRuleOrgLocation> OldDataRuleOrgLocation
                        = from drol in dc.DataRuleOrgLocation
                          where drol.InstanceId == LinqMicajahDataContext.InstanceId && drol.DataRuleID == DataRuleID
                          select drol;

                    IQueryable<DataRulePerformanceIndicator> OldDataRulePerformanceIndicator
                        = from drpi in dc.DataRulePerformanceIndicator
                          where drpi.InstanceId == LinqMicajahDataContext.InstanceId && drpi.DataRuleID == DataRuleID
                          select drpi;
                    IQueryable<DataRuleMetric> OldDataRuleMetric
                        = from drm in dc.DataRuleMetric
                          where drm.InstanceId == LinqMicajahDataContext.InstanceId && drm.DataRuleID == DataRuleID
                          select drm;
                    dc.DataRuleOrgLocation.DeleteAllOnSubmit(OldDataRuleOrgLocation);
                    dc.DataRulePerformanceIndicator.DeleteAllOnSubmit(OldDataRulePerformanceIndicator);
                    dc.DataRuleMetric.DeleteAllOnSubmit(OldDataRuleMetric);
                    dc.SubmitChanges();
                }
                foreach (Guid? NewOrgLocationID in DataRule.DataRuleOrgLocation)
                {
                    DataRuleOrgLocation NewOrgLocation = new DataRuleOrgLocation();
                    NewOrgLocation.InstanceId = LinqMicajahDataContext.InstanceId;
                    NewOrgLocation.DataRuleID = DataRuleID;
                    NewOrgLocation.OrgLocationID = (Guid)NewOrgLocationID;
                    NewOrgLocation.DataRuleOrgLocationID = Guid.NewGuid();
                    dc.DataRuleOrgLocation.InsertOnSubmit(NewOrgLocation);
                }
                foreach (Guid? NewPIID in DataRule.DataRulePI)
                {
                    DataRulePerformanceIndicator NewOrgLocation = new DataRulePerformanceIndicator();
                    NewOrgLocation.InstanceId = LinqMicajahDataContext.InstanceId;
                    NewOrgLocation.DataRuleID = DataRuleID;
                    NewOrgLocation.PerformanceIndicatorID = (Guid)NewPIID;
                    NewOrgLocation.DataRulePerformanceIndicatorID = Guid.NewGuid();
                    dc.DataRulePerformanceIndicator.InsertOnSubmit(NewOrgLocation);
                }
                foreach (Guid? NewMetricID in DataRule.DataRuleMetric)
                {
                    DataRuleMetric NewOrgLocation = new DataRuleMetric();
                    NewOrgLocation.InstanceId = LinqMicajahDataContext.InstanceId;
                    NewOrgLocation.DataRuleID = DataRuleID;
                    NewOrgLocation.MetricID = (Guid)NewMetricID;
                    NewOrgLocation.DataRuleMetricID = Guid.NewGuid();
                    dc.DataRuleMetric.InsertOnSubmit(NewOrgLocation);
                }
                dc.SubmitChanges();
                UpdateD_DataRule(dc);
            }
            return;
        }