Example #1
0
        public List <IActivity> FeedToAlert(List <FeedDTO> feeds, E_Platforms platform)
        {
            bool newAlert = false;

            List <IActivity> lst = new List <IActivity>();

            foreach (FeedDTO f in feeds)
            {
                if (MainActivitiesList.Where(i => i.Type == E_Activities.Alert && i.Id == f.Id).Count() == 0)
                {
                    switch ((E_Activities)System.Enum.Parse(typeof(E_Activities), f.Author, true))
                    {
                    case E_Activities.Alert:
                        //Information to set similar to other activities
                        //It is separated because of the instantiation of different classes
                        newAlert = true;
                        Alert a = new Alert(f.Title);
                        a.Id               = f.Id;
                        a.PublishDate      = f.PublishDate;
                        a.Platform         = platform;
                        a.PropertyChanged += ActivityStatusChanged;     //This is used to ref

                        //Information to set different from other activities
                        a.Description    = f.Description;
                        a.ExpirationDate = f.ExpireDate;
                        a.Faction        = (E_Factions)System.Enum.Parse(typeof(E_Factions), f.Faction.Split('_')[1], true);

                        //Add the activity to the list
                        lst.Add(a);
                        break;

                    case E_Activities.Outbreak:
                        Outbreak o = new Outbreak(f.Title);
                        o.Id               = f.Id;
                        o.PublishDate      = f.PublishDate;
                        o.Platform         = platform;
                        o.PropertyChanged += ActivityStatusChanged;

                        lst.Add(o);
                        break;

                    case E_Activities.Invasion:
                        Invasion i = new Invasion(f.Title);
                        i.Id               = f.Id;
                        i.PublishDate      = f.PublishDate;
                        i.Platform         = platform;
                        i.PropertyChanged += ActivityStatusChanged;

                        lst.Add(i);
                        break;

                    default:
                        break;
                    }
                }
            }
            //if (newAlert && !_firstUpdate)
            //  PlayNew();
            return(lst);
        }
Example #2
0
            protected void CheckOnAddCase(Outbreak obj, OutbreakCase item)
            {
                using (var manager = DbManagerFactory.Factory.Create(ModelUserContext.Instance))
                {
                    if (obj.idfsDiagnosisOrDiagnosisGroup != null)
                    {
                        var ret = manager.SetCommand("select dbo.fnIsCaseSessionDiagnosesInGroup(@idfCase, @idfsDiagnosisOrDiagnosisGroup)",
                                                     manager.Parameter("@idfCase", item.idfCase),
                                                     manager.Parameter("@idfsDiagnosisOrDiagnosisGroup", obj.idfsDiagnosisOrDiagnosisGroup))
                                  .ExecuteScalar <long>();
                        if (ret == 0)
                        {
                            throw new ValidationModelException("msgOutbreakDiagnosisErrorCases",
                                                               "", "", new object[]
                            {
                                item.strCaseID,
                                obj.strOutbreakID,
                                obj.DiagnosisLookup.Single(c => c.idfsDiagnosisOrDiagnosisGroup == obj.idfsDiagnosisOrDiagnosisGroup).name
                            }, GetType(), ValidationEventType.Error, obj);
                        }
                        if (ret > 0)
                        {
                            throw new ValidationModelException("msgUpOutbreakDiagnosisToGroup",
                                                               "", "", new object[]
                            {
                                obj.DiagnosisLookup.Single(c => c.idfsDiagnosisOrDiagnosisGroup == obj.idfsDiagnosisOrDiagnosisGroup).name,
                                item.strCaseID,
                                obj.DiagnosisLookup.Single(c => c.idfsDiagnosisOrDiagnosisGroup == ret).name,
                                obj.DiagnosisLookup.Single(i => i.idfsDiagnosisOrDiagnosisGroup == obj.DiagnosisLookup.Single(c => c.idfsDiagnosisOrDiagnosisGroup == obj.idfsDiagnosisOrDiagnosisGroup).idfsDiagnosisGroup).name
                            }, GetType(), ValidationEventType.Question, obj);
                        }
                    }

                    var strOutbreakID = manager.SetCommand("select dbo.fnIsCaseInOutbreak(@CaseID, @OutbreakID)",
                                                           manager.Parameter("@CaseID", item.idfCase),
                                                           manager.Parameter("@OutbreakID", obj.idfOutbreak))
                                        .ExecuteScalar <string>();
                    if (!Utils.IsEmpty(strOutbreakID))
                    {
                        throw new ValidationModelException(item.idfsCaseType == (long)CaseTypeEnum.Vector ? "msgSessionInOutbreak" : "msgCaseInOutbreak",
                                                           "", "", new object[]
                        {
                            item.strCaseID,
                            strOutbreakID
                        }, GetType(), ValidationEventType.Question, obj);
                    }
                }
            }
Example #3
0
        private List <IActivity> FeedToActivity(List <FeedDTO> feeds, Enum platform)
        {
            List <IActivity> lst = new List <IActivity>();

            foreach (FeedDTO f in feeds)
            {
                IActivity activity = _mData.Activities.Where(i => i.Id == f.Id).FirstOrDefault();
                if (activity == null)
                {
                    switch ((GAME.Modules.Warframe.Common.Missions.Enums.Type)System.Enum.Parse(typeof(GAME.Modules.Warframe.Common.Missions.Enums.Type), f.Author, true))
                    {
                    case GAME.Modules.Warframe.Common.Missions.Enums.Type.Alert:
                        //Information to set different from other activities
                        //It is separated because of the instantiation of different classes
                        activity = new Alert(f.Title);

                        ((Alert)activity).Description    = f.Description;
                        ((Alert)activity).ExpirationDate = f.ExpireDate;
                        //a.Faction = (E_Factions)System.Enum.Parse(typeof(E_Factions), f.Faction.Split('_')[1], true);
                        break;

                    case GAME.Modules.Warframe.Common.Missions.Enums.Type.Outbreak:
                        activity = new Outbreak(f.Title);
                        break;

                    case GAME.Modules.Warframe.Common.Missions.Enums.Type.Invasion:
                        activity = new Invasion(f.Title);
                        break;

                    default:
                        break;
                    }

                    activity.Id          = f.Id;
                    activity.PublishDate = f.PublishDate;
                    activity.Platform    = platform;
                    activity.Viewed      = _oData.ViewedActivities.Contains(activity.Id);
                    activity.Done        = false;
                    activity.Marked      = false;
                }
                //a.PropertyChanged += ActivityStatusChanged; //This is used to ref

                //Add the activity to the list
                lst.Add(activity);
            }
            return(lst);
        }
Example #4
0
 protected void CheckDiagnosisOnChange(Outbreak obj)
 {
     using (var manager = DbManagerFactory.Factory.Create(ModelUserContext.Instance))
     {
         var strWarn = "";
         var strErr  = "";
         obj.Cases.Where(c => !c.IsMarkedToDelete).ToList().ForEach(c =>
         {
             if (obj.idfsDiagnosisOrDiagnosisGroup != null)
             {
                 var ret = manager.SetCommand("select dbo.fnIsCaseSessionDiagnosesInGroup(@idfCase, @idfsDiagnosisOrDiagnosisGroup)",
                                              manager.Parameter("@idfCase", c.idfCase),
                                              manager.Parameter("@idfsDiagnosisOrDiagnosisGroup", obj.idfsDiagnosisOrDiagnosisGroup))
                           .ExecuteScalar <long>();
                 if (ret > 0)
                 {
                     strWarn += (strWarn.Length > 0 ? ", " : "") + c.strCaseID;
                 }
                 else if (ret == 0)
                 {
                     strErr += (strErr.Length > 0 ? ", " : "") + c.strCaseID;
                 }
             }
         });
         if (strErr.Length > 0)
         {
             throw new ValidationModelException("msgOutbreakDiagnosisErrorCases2",
                                                "idfsDiagnosisOrDiagnosisGroup", "idfsDiagnosisOrDiagnosisGroup",
                                                new object[] { strErr }, GetType(), ValidationEventType.Error, obj);
         }
         if (strWarn.Length > 0)
         {
             throw new ValidationModelException("msgUpOutbreakDiagnosisToGroup2",
                                                "idfsDiagnosisOrDiagnosisGroup", "idfsDiagnosisOrDiagnosisGroup",
                                                new object[]
             {
                 obj.DiagnosisLookup.Single(c => c.idfsDiagnosisOrDiagnosisGroup == obj.idfsDiagnosisOrDiagnosisGroup).name,
                 strWarn,
                 obj.DiagnosisLookup.Single(i => i.idfsDiagnosisOrDiagnosisGroup == obj.DiagnosisLookup.Single(c => c.idfsDiagnosisOrDiagnosisGroup == obj.idfsDiagnosisOrDiagnosisGroup).idfsDiagnosisGroup).name
             }, GetType(), ValidationEventType.Question, obj);
         }
     }
 }
Example #5
0
 protected void CheckOutbreak(HumanCase obj)
 {
     using (var manager = DbManagerFactory.Factory.Create(ModelUserContext.Instance))
     {
         if (obj.idfOutbreak.HasValue && obj.idfOutbreak.Value != 0)
         {
             var idfsCaseDiagnosis = manager.SetCommand("select dbo.fnIsCaseSessionDiagnosesInGroupOutbreak(@idfCase, @idfOutbreak)",
                                                        manager.Parameter("@idfCase", obj.idfCase),
                                                        manager.Parameter("@idfOutbreak", obj.idfOutbreak))
                                     .ExecuteScalar <long>();
             if (idfsCaseDiagnosis == 0)
             {
                 Outbreak outbreak = Outbreak.Accessor.Instance(null).SelectByKey(manager, obj.idfOutbreak);
                 throw new ValidationModelException("msgOutbreakDiagnosisErrorCases", "idfOutbreak", "idfOutbreak",
                                                    new object[]
                 {
                     obj.strCaseID,
                     outbreak.strOutbreakID,
                     outbreak.Diagnosis == null ? "" : outbreak.Diagnosis.name
                 }, GetType(), ValidationEventType.Error, obj);
             }
             if (idfsCaseDiagnosis > 0)
             {
                 Outbreak outbreak = Outbreak.Accessor.Instance(null).SelectByKey(manager, obj.idfOutbreak);
                 throw new ValidationModelException("msgUpOutbreakDiagnosisToGroup", "idfOutbreak", "idfOutbreak",
                                                    new object[]
                 {
                     outbreak.Diagnosis.name,
                     obj.strCaseID,
                     obj.strDiagnosis,
                     outbreak.DiagnosisLookup.Single(i => i.idfsDiagnosisOrDiagnosisGroup == outbreak.DiagnosisLookup.Single(c => c.idfsDiagnosisOrDiagnosisGroup == outbreak.idfsDiagnosisOrDiagnosisGroup).idfsDiagnosisGroup).name
                 }, GetType(), ValidationEventType.Question, obj);
             }
         }
     }
 }
Example #6
0
 private void Awake()
 {
     Instance = this;
 }