public void NewServeEvent(NewServeEventModel model) { try { //Prepare Event Information var eventName = model.Title; var sEvent = _eventService.GetServeEvent(eventName, DateTime.Today); if (sEvent == null) { sEvent = _eventService.NewServeEvent(new serveevent() { Title = model.Title, StartDateTime = DateTime.Now }); } //Get Member Information var client = new FSLLProxies.Core.Clients.AccountClient(); var targetMember = client.GetMember(model.Target.ID).ToResult<FSLLProxies.Core.Models.MemberModel>(); if (targetMember == null) { targetMember = new MemberModel() { MemberName = model.Target.Name }; } //Update Member Requirements UpdateMemberRequirements(model.Requirements, targetMember); //Update Feedback UpdateServeEventFeedback(model.Feedbacks, sEvent.ID, targetMember); //Update Event From list UpdateServeEventFrom(model.Froms, sEvent.ID); //Update Event Target list UpdateServeEventTarget(model.Requirements, sEvent.ID, targetMember); } catch (Exception ex) { throw ex; } }
private void UpdateServeEventFrom(IList<NewServeEventModel._MemberModel> froms, int eventID) { var client = new FSLLProxies.Core.Clients.AccountClient(); foreach (var f in froms) { if (_eventService.IsServeEventFromExist(eventID, f.Name)) continue; var eventFrom = new serveeventfrom(); eventFrom.ServeEventID = eventID; if (f.Type == FeedbackConstants.SERVE_EVENT_MEMBER_TYPE_GROUP) { eventFrom.GroupID = f.ID; eventFrom.GroupName = f.Name; } else { var member = client.GetMember(f.ID).ToResult<MemberModel>(); if (member != null) { eventFrom.MemberID = f.ID; eventFrom.MemberName = f.Name; if (member.DefaultGroup != null) { eventFrom.GroupName = member.DefaultGroup.GroupName; eventFrom.GroupID = member.DefaultGroup.GroupID; } } else eventFrom.MemberName = f.Name; } _eventService.NewServeEventFrom(eventFrom); } }