public JsonResult AddList(string SeriesID) { Guid serID = Guid.Parse(SeriesID); if (_context.StorySeries.AsNoTracking().Where(a => a.ID == serID).FirstOrDefault() != null && _context.UserSchedule.AsNoTracking().Where(a => a.StorySeriesID == serID && a.UserID == GetUserId()).FirstOrDefault() == null) { var newCharacter = CreateCharacter(GetUserId(), Guid.Parse(SeriesID)); var card = _context.StoryCard.AsNoTracking().Where(a => a.IsHead == true && a.StorySeriesID == serID).FirstOrDefault(); UserSchedule userSchedule = new UserSchedule() { ID = Guid.NewGuid(), CharacterID = newCharacter.ID, StorySeriesID = serID, StoryCardID = card == null ? Guid.Empty : card.ID, UserID = GetUserId(), ScheduleStatus = enumStoryStatus.进行中 }; _context.UserCharacter.Add(newCharacter); _context.UserSchedule.Add(userSchedule); _context.SaveChanges(); return(Json(true)); } else { return(Json(false)); } }
public async Task <IHttpActionResult> PutUserSchedule(int id, UserSchedule userSchedule) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != userSchedule.UserScheduleId) { return(BadRequest()); } db.Entry(userSchedule).State = EntityState.Modified; try { await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!UserScheduleExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
/// <summary> /// 返回创建人物故事卡 /// </summary> private void CreateCharacter() { UserCharacter character = new UserCharacter() { ID = Guid.NewGuid(), UserId = GetUserId(), IsActivate = true, }; _context.UserCharacter.Add(character); UserSchedule schedule = new UserSchedule() { ID = Guid.NewGuid(), CharacterID = character.ID, StoryCardID = new DefaultValue().createCharacter, StorySeriesID = new DefaultValue().ScreateCharacter, IsMain = true, IsStory = true, }; _context.UserSchedule.Add(schedule); _context.SaveChanges(); ViewBag.ReadList = _context.StoryCard.AsNoTracking().Include(a => a.StoryOptions).AsNoTracking().SingleOrDefault(a => a.ID == new DefaultValue().createCharacter); ViewBag.InLocation = false; }
public void AddNewUserProgramSchedule(User user, ProgramSchedule schedule) { var userSchedule = _context.UsersPrograms.SingleOrDefault(u => u.UserId == user.Id && u.ProgramScheduleId == schedule.Id); if (userSchedule == null) { var result = new UserSchedule { User = user, ProgramSchedule = schedule, UserId = user.Id, ProgramScheduleId = schedule.Id }; _context.UsersPrograms.Add(result); _context.SaveChanges(); } else { _context.UsersPrograms.Remove(userSchedule); _context.UsersPrograms.Add(new UserSchedule { User = user, ProgramSchedule = schedule, UserId = user.Id, ProgramScheduleId = schedule.Id } ); _context.SaveChanges(); } }
private async void ScheduleAppointment() { var mainviewModel = MainViewModel.GetInstance(); var resc = await Application.Current.MainPage.DisplayAlert( Languages.ConfirmLabel, "Are you sure you want to schedule the appointment " + this.DateSchedule_ + " at " + startHour_ + "?", Languages.Accept, Languages.Cancel); if (!resc) { return; } if (AgendaId == 0) { await Application.Current.MainPage.DisplayAlert( Languages.Error, Languages.DateValidator, Languages.Accept); return; } var userScheduler = new UserSchedule(); userScheduler.UserId = mainviewModel.User.UserId; userScheduler.AgendaId = this.AgendaId; var apiSecurity = Application.Current.Resources["APISecurity"].ToString(); var response = await this.apiService.Post( apiSecurity, "/api", "/UserSchedules", userScheduler); if (!response.IsSuccess) { await Application.Current.MainPage.DisplayAlert( Languages.Error, Languages.ErrorAppointment, Languages.Accept); return; } else { await Application.Current.MainPage.DisplayAlert( Languages.ConfirmLabel, Languages.AppointmentSuccefully, Languages.Accept); mainviewModel.Doctor = new DoctorViewModel(); mainviewModel.Menu = new MenuItemViewModel(); await App.Navigator.PopAsync(); } }
private static void RemindWindow(UserSchedule sched, int minuteIntervalToTvProgrammStart) { var remind = new ReminderForm(sched) { Text = $@"Your programme starts in {minuteIntervalToTvProgrammStart} minutes" }; remind.ShowDialog(); }
private void CopyDefaultSchedulesForUser() { IQueryable <DefaultSchedule> defaults = _repository.DefaultSchedules.Include("DaysToSend").Where(d => d.IsActive == true); foreach (DefaultSchedule defaultSched in defaults) { UserSchedule uc = new UserSchedule(defaultSched, _person); _repository.UserSchedules.Add(uc); } }
public bool insertLectureSchedule(UserSchedule u) { try { unitofwork.UsrSchRepo.Insert(u); unitofwork.Save(); return(true);; } catch (Exception ex) { throw ex; } }
/// <summary> /// 执行道具效果 /// </summary> private void ExeEffect(Guid itemID) { Item item = _context.Item.AsNoTracking().Where(a => a.ID == itemID).First(); UserSchedule schedule = _context.UserSchedule.Where(a => a.UserID == GetUserId() && a.IsMain == true).First(); UserCharacter character = _context.UserCharacter.Where(a => a.ID == schedule.CharacterID).First(); var characterItem = _context.CharacterItem.Where(a => a.CharacterID == character.ID && a.ID == itemID).First(); exeeffect(item.EffectClass1, item.EffectName1, item.EffectType1, item.EffectValue1, character, schedule); exeeffect(item.EffectClass2, item.EffectName2, item.EffectType2, item.EffectValue2, character, schedule); exeeffect(item.EffectClass3, item.EffectName3, item.EffectType3, item.EffectValue3, character, schedule); exeeffect(item.EffectClass4, item.EffectName4, item.EffectType4, item.EffectValue4, character, schedule); exeeffect(item.EffectClass5, item.EffectName5, item.EffectType5, item.EffectValue5, character, schedule); characterItem.Amount--; _context.SaveChanges(); }
/// <summary> /// Method to remove a User Schedule Entry /// </summary> /// <param name="userIdentifier"></param> /// <param name="showId"></param> public void RemoveUserScheduleEntry(string userIdentifier, int showId) { UserSchedule userSchedule = _dataBase.UserSchedule.Where(x => x.UserIdentifier == userIdentifier && x.ShowId == showId).FirstOrDefault(); if (userSchedule == null) { throw new Exception($"The delete operation with userIdentifier: {userIdentifier} and showId: {showId} returned 0 elements"); } _dataBase.UserSchedule.Remove(userSchedule); _dataBase.SaveChanges(); var show = _dataBase.Show.Where(x => x.ShowId == showId).First(); _scheduleExtensionService.RemoveUserFromDistributionListAsync(userIdentifier, show, userSchedule.TimeMinutesToAlert); }
public async Task <IHttpActionResult> PostUserSchedule(UserSchedule userSchedule) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Scheduler scheduler = await db.Schedulers.FindAsync(userSchedule.AgendaId); scheduler.StateId = 2; db.Entry(scheduler).State = EntityState.Modified; await db.SaveChangesAsync(); db.UserSchedules.Add(userSchedule); await db.SaveChangesAsync(); return(CreatedAtRoute("DefaultApi", new { id = userSchedule.UserScheduleId }, userSchedule)); }
public async void LoadMyDates() { this.IsRefreshing = true; var connection = await this.apiService.CheckConnection(); if (!connection.IsSuccess) { this.IsRefreshing = false; await Application.Current.MainPage.DisplayAlert( Languages.Error, connection.Message, Languages.Accept); await Application.Current.MainPage.Navigation.PopAsync(); return; } var mainviewModel = MainViewModel.GetInstance(); var userScheduler = new UserSchedule(); userScheduler.UserId = mainviewModel.User.UserId; var apiHealth = Application.Current.Resources["APISecurity"].ToString(); var response = await this.apiService.GetList <Appointments>( apiHealth, "/api", "/UserSchedules", string.Format("/" + userScheduler.UserId)); if (!response.IsSuccess) { this.IsRefreshing = false; await Application.Current.MainPage.DisplayAlert( Languages.Error, response.Message, Languages.Accept); return; } MainViewModel.GetInstance().AppointmentList = (List <Appointments>)response.Result; this.MyDates_ = new ObservableCollection <MyDatesItemViewModel>(this.ToAppointmentItemViewModel()); this.IsRefreshing = false; }
/// <summary> /// 清除该用户之前的故事记录 /// </summary> /// <param name="SeriesID"></param> /// <param name="userid"></param> private void CleanStory(string SeriesID, Guid userid) { //清除上次运行数据 UserSchedule UserSchedule = _context.UserSchedule.Where(a => a.UserID == userid && a.StorySeriesID == Guid.Parse(SeriesID)).FirstOrDefault(); UserCharacter userCharacter = null; List <CharacterItem> characterItem = new List <CharacterItem>(); if (UserSchedule != null) { userCharacter = _context.UserCharacter.Where(a => a.UserId == userid && a.ID == UserSchedule.CharacterID).FirstOrDefault(); } if (userCharacter != null) { characterItem = _context.CharacterItem.Where(a => a.CharacterID == userCharacter.ID).ToList(); } if (UserSchedule != null) { _context.Remove(UserSchedule); } if (userCharacter != null) { _context.Remove(userCharacter); } if (characterItem.Count > 0) { _context.RemoveRange(characterItem); } //清除旧状态 var statuslist = _context.CharacterStatus.Where(a => a.StorySeries == SeriesID && a.UserID == userid).ToList(); if (statuslist.Count > 0) { _context.CharacterStatus.RemoveRange(statuslist); } //清楚随机数记录 var random = _context.StoryCardRandom.Where(a => a.UserID == GetUserId() && a.StorySeriesID == Guid.Parse(SeriesID)).ToList(); if (random.Count > 0) { _context.StoryCardRandom.RemoveRange(random); } _context.SaveChanges(); }
public async Task <IHttpActionResult> DeleteUserSchedule(int id) { UserSchedule userSchedule = await db.UserSchedules.Where(us => us.AgendaId == id) .FirstOrDefaultAsync(); if (userSchedule == null) { return(NotFound()); } Scheduler scheduler = await db.Schedulers.FindAsync(userSchedule.AgendaId); scheduler.StateId = 3; db.Entry(scheduler).State = EntityState.Modified; db.UserSchedules.Remove(userSchedule); await db.SaveChangesAsync(); return(Ok(userSchedule)); }
public ActionResult EditStudentForm(StudentEnrollment std) { try { UserSchedule usrSch = new UserSchedule(); ScheduleFacade sch = new ScheduleFacade(); if (TempData[Constant.ConstantFields.usrScheduleID] != null) { usrSch.UserScheduleID = (int)TempData[Constant.ConstantFields.usrScheduleID]; } if (TempData[Constant.ConstantFields.scheduleID] != null) { usrSch.ScheduleID = (int)TempData[Constant.ConstantFields.scheduleID]; } usrSch.UserID = std.studentSelected; usrSch.ObsInd = "N"; int uId = (int)usrSch.UserID; int sId = (int)usrSch.ScheduleID; if (sch.isUserEnrolled(uId, sId)) { this.AddNotification("This student already enrolled in this course schedule. ", NotificationType.ERROR); return(RedirectToAction("EditStudentSchedule", new { id = usrSch.UserScheduleID })); //return RedirectToAction("Index", "Home"); } schFacade.updateLectureSchedule(usrSch); StudentSchedule(string.Empty); } catch (Exception ex) { log.Error("Exception ex ", ex); } return(View("StudentSchedule")); }
private void LoadFields(UserSchedule programme) { tbUserName.Text = $@"{programme.User.FirstName} {programme.User.LastName}"; tbProgrTime.Text = programme.TvShow.Date.ToString(CultureInfo.CurrentCulture); tbProgName.Text = programme.TvShow.Name; var phone = programme.User.UserPhones.FirstOrDefault(ph => ph.User == programme.User); if (phone != null) { tbSMSNumber.Text = @"+380" + phone.Number; } else { tbSMSNumber.Text = @"A phone number wasn't enter by user"; } tbEmail.Text = programme.User.UserEmails .FirstOrDefault(ph => ph.User == programme.User) ?.EmailName ?? @"An e-mail wasn't enter by user"; }
public List <UserSchedule> MapScheduleListFromViewToDb(List <Schedule> ScheduleList) { List <UserSchedule> usrScheduleList = new List <UserSchedule>(); foreach (Schedule s in ScheduleList) { UserSchedule uSchedue = new UserSchedule(); uSchedue.ScheduleDate = s.ScheduleDate; if (s.Repeat) { uSchedue.UntilDate = s.UntilDate; } uSchedue.StartTime = s.StartTime; uSchedue.EndTime = s.EndTime; uSchedue.Repeat = s.Repeat; usrScheduleList.Add(uSchedue); } return(usrScheduleList); }
private async Task CreateUserScheduleAsync(int userId, string jobId, string timeZone, string jobConstant) { if (!await ExistJobAsync(jobId)) { var job = new Schedule { JobId = jobId }; var userSchedule = new UserSchedule { UserId = userId, Schedule = job, JobConstant = jobConstant, UserTimeZone = timeZone }; await _uow.UserScheduleRepository.AddAsync(userSchedule); } }
public IHttpActionResult UserDelete(int QuizScheduleId, string UserId) { if ((!helper.ValidateQuizSchedule(QuizScheduleId)) || (!helper.ValidateUserId(UserId))) { return(BadRequest("Invalid Id")); } int QuizId = db.QuizSchedules.FirstOrDefault(x => x.QuizScheduleId == QuizScheduleId).QuizId; UserSchedule user = db.UserSchedules.SingleOrDefault(x => x.QuizScheduleId == QuizScheduleId && x.UserId == UserId && x.QuizId == QuizId); if (user.Taken == false) { db.UserSchedules.Remove(user); db.SaveChanges(); return(Ok()); } else { return(BadRequest("CantDeleteUser")); } }
private void lvShowPrograms_ItemCheck(object sender, ItemCheckEventArgs e) { //tv programme id in listview var id = lvShowPrograms.Items[e.Index].SubItems[6].Text.GetInt(); var userRepo = new BaseRepository <User>(); var scheduleRepo = new BaseRepository <UserSchedule>(userRepo.ContextDb); var user = userRepo.Get(u => u.Id == CurrentUserId).FirstOrDefault(); switch (e.NewValue) { case CheckState.Checked: if (scheduleRepo.GetAll().ToList().Find(s => s.TvShow.Id == id && s.User.Id == CurrentUserId) == null) { var schedule = new UserSchedule { DueDate = DateTime.Now.AddDays(7), User = user, TvShow = new BaseRepository <TvShow>(userRepo.ContextDb) .Get(s => s.Id == id).FirstOrDefault() }; scheduleRepo.Insert(schedule); } break; case CheckState.Unchecked: var removeSh = scheduleRepo.Get(x => x.TvShow.Id == id).FirstOrDefault(); if (removeSh != null) { scheduleRepo.Remove(removeSh); } break; case CheckState.Indeterminate: MessageContainer.DisplayError("Something went wrong in checking/unchecking tvShows (case CheckState.Indeterminate:)", "Error"); break; default: throw new ArgumentOutOfRangeException(); } }
public ActionResult DeleteLecturerSchedule(int id) { try { StudentEnrollment stdmModel = new StudentEnrollment(); if (Session[Constant.ConstantFields.lecturerSchedule] != null) { List <StudentEnrollment> lst = (List <StudentEnrollment>)Session[Constant.ConstantFields.lecturerSchedule]; for (int i = 0; i < lst.Count; i++) { StudentEnrollment std = lst[i]; if (std.usrScheduleId == id) { stdmModel = std; break; } } } UserSchedule sch = new UserSchedule(); sch.ObsInd = "Y"; sch.ScheduleID = stdmModel.scheduleId; sch.UserID = stdmModel.userId; sch.UserScheduleID = stdmModel.usrScheduleId; schFacade.updateLectureSchedule(sch); LecturerSchedule(); } catch (Exception ex) { log.Error("Exception ", ex); } return(View("LecturerSchedule")); }
public ActionResult EditLecturerForm(StudentEnrollment std) { try { UserSchedule usrSch = new UserSchedule(); if (TempData[Constant.ConstantFields.usrScheduleID] != null) { usrSch.UserScheduleID = (int)TempData[Constant.ConstantFields.usrScheduleID]; } if (TempData[Constant.ConstantFields.scheduleID] != null) { usrSch.ScheduleID = (int)TempData[Constant.ConstantFields.scheduleID]; } usrSch.UserID = std.lecturerSelected; usrSch.ObsInd = "N"; if (TempData[Constant.ConstantFields.lecturerName] == null) { schFacade.insertLectureSchedule(usrSch); } else { schFacade.updateLectureSchedule(usrSch); } LecturerSchedule(); } catch (Exception ex) { log.Error("Exception ex ", ex); } return(View("LecturerSchedule")); }
public IHttpActionResult UserAdd(int QuizScheduleId, [FromBody] string[] UserIds) { if (!helper.ValidateQuizSchedule(QuizScheduleId)) { return(BadRequest("Invalid Id")); } UserSchedule userSchedule = new UserSchedule(); userSchedule.QuizScheduleId = QuizScheduleId; userSchedule.QuizId = db.QuizSchedules.FirstOrDefault(x => x.QuizScheduleId == QuizScheduleId).QuizId; userSchedule.Taken = false; foreach (var item in UserIds) { userSchedule.UserId = item; db.UserSchedules.Add(userSchedule); db.SaveChanges(); } var userEmails = db.Users.Where(x => UserIds.Contains(x.Id)).Select(y => y.Email).ToArray(); var quizId = db.QuizSchedules.Single(x => x.QuizScheduleId == QuizScheduleId).QuizId; var time = db.Quizs.Single(y => y.QuizId == quizId).QuizTime; var EmailResponse = helper.InviteUser(userEmails, "Click on the Link Below to take Quiz. \n <a href=\"" + "http://localhost:4200/?take-quiz=" + quizId + "&schedule-id=" + QuizScheduleId + "&time=" + time + "\">Click Here</a>"); return(Ok()); }
public void Init() { instance = new UserSchedule(); }
public async Task <JsonResult> NextCard(Guid optionID) { Guid userid = GetUserId(); try { //校验操作 - 查看该选项是否在故事卡片内并可以选择 var opti = _context.StoryOption.AsNoTracking().Where(a => a.ID == optionID).First(); var storycard = _context.StoryCard.Include(a => a.StoryOptions).AsNoTracking().Where(a => a.ID == opti.StoryCardID).First(); var Schedule = _context.UserSchedule.Where(a => a.UserID == GetUserId() && a.StoryCardID == storycard.ID).First(); if (Check(opti, storycard.StorySeriesID.ToString())) { JsonResult result = Json(string.Empty); //执行操作效果 #region if (!string.IsNullOrWhiteSpace(opti.Effect)) { List <Istatus> storyStatuses = JsonConvert.DeserializeObject <List <Istatus> >(opti.Effect); //人物属性 UserSchedule schedule = _context.UserSchedule.AsNoTracking().Where(a => a.UserID == GetUserId() && a.StorySeriesID == Schedule.StorySeriesID).First(); UserCharacter character = _context.UserCharacter.Where(a => a.ID == schedule.CharacterID).FirstOrDefault(); foreach (var obj in storyStatuses) { //操作 if (Convert.ToInt32(obj.Type) == (int)enumEffectType.结束处理) { return(result = Json(GameOver(Schedule.StorySeriesID))); } switch (obj.Name) { case ("MaxHealthy"): character.MaxHealthy = ExeCharacterEffect(character.MaxHealthy, obj.Value, obj.Type); break; case ("MaxSanity"): character.MaxSanity = ExeCharacterEffect(character.MaxSanity, obj.Value, obj.Type); break; case ("Healthy"): character.Healthy = ExeCharacterEffect(character.Healthy, obj.Value, obj.Type); if (character.Healthy > character.MaxHealthy) { character.Healthy = character.MaxHealthy; } break; case ("Sanity"): character.Sanity = ExeCharacterEffect(character.Sanity, obj.Value, obj.Type); if (character.Sanity > character.MaxSanity) { character.Sanity = character.MaxSanity; } break; case ("ActionPoints"): character.ActionPoints = ExeCharacterEffect(character.ActionPoints, obj.Value, obj.Type); break; case ("Lucky"): character.Lucky = ExeCharacterEffect(character.Lucky, obj.Value, obj.Type); break; case ("Speed"): character.Speed = ExeCharacterEffect(character.Speed, obj.Value, obj.Type); break; case ("Strength"): character.Strength = ExeCharacterEffect(character.Strength, obj.Value, obj.Type); break; case ("Intelligence"): character.Intelligence = ExeCharacterEffect(character.Intelligence, obj.Value, obj.Type); break; case ("Experience"): character.Experience = ExeCharacterEffect(character.Experience, obj.Value, obj.Type); break; case ("Status"): character.Status = ExeCharacterEffect(character.Status, obj.Value, obj.Type); break; case ("Moral"): character.Moral = ExeCharacterEffect(character.Moral, obj.Value, obj.Type); break; default: //道具 //TODO //故事状态 storystatu(userid, storycard, obj); break; } } _context.SaveChanges(); } #endregion //下一页构建 #region var Nextstorycard = _context.StoryCard.Include(a => a.StoryOptions).AsNoTracking().Where(a => a.ID == opti.NextStoryCardID).FirstOrDefault(); if (Nextstorycard != null) { StoryCard resultCard = new StoryCard() { ID = Nextstorycard.ID, StorySeriesID = Nextstorycard.StorySeriesID, StoryName = Nextstorycard.StoryName, Title = Nextstorycard.Title, Text = Nextstorycard.Text, IMG = Nextstorycard.IMG, BackgroundIMG = Nextstorycard.BackgroundIMG, IsHead = Nextstorycard.IsHead, StoryOptions = new List <StoryOption>() }; //去除不显示的选项 foreach (var option in Nextstorycard.StoryOptions) { if (Check(option, storycard.StorySeriesID.ToString())) { resultCard.StoryOptions.Add(option); } } result = Json(resultCard); //保存进度 Schedule.StoryCardID = Nextstorycard.ID; await _context.SaveChangesAsync(); #endregion } return(result); } else { return(Json(false)); } } catch (Exception ex) { return(Json(ex)); } }
private void exeeffect(string EffectClass, string EffectName, string EffectType, string EffectValue, UserCharacter character, UserSchedule schedule) { switch (EffectClass) { case "1": //故事状态 var status = _context.StoryStatus.Where(a => a.Name == EffectName && a.StorySeries == schedule.StorySeriesID.ToString()).First(); status.Value = execharacter(EffectValue, EffectType, float.Parse(status.Value)).ToString(); break; case "2": //角色状态 switch (EffectName) { case "ActionPoints": character.ActionPoints = execharacter(EffectValue, EffectType, character.ActionPoints); break; case "Lucky": character.Lucky = execharacter(EffectValue, EffectType, character.Lucky); break; case "Speed": character.Speed = execharacter(EffectValue, EffectType, character.Speed); break; case "Strength": character.Strength = execharacter(EffectValue, EffectType, character.Strength); break; case "Intelligence": character.Intelligence = execharacter(EffectValue, EffectType, character.Intelligence); break; case "Experience": character.Experience = execharacter(EffectValue, EffectType, character.Experience); break; case "Status": character.Status = execharacter(EffectValue, EffectType, character.Status); break; case "Moral": character.Moral = execharacter(EffectValue, EffectType, character.Moral); break; } break; } }
public ReminderForm(UserSchedule programme) { InitializeComponent(); LoadFields(programme); }