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); }
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); } } }
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); }
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); } } }
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); } } } }
private void Awake() { Instance = this; }