示例#1
0
 private ViewHeatSheetEvent GetHeatSheetEvent(int HeatSheetEventID)
 {
     ViewHeatSheetEvent vhse = new ViewHeatSheetEvent();
     HeatSheetEvent hse = BizMgr.GetHeatSheetEvent(HeatSheetEventID);
     vhse.HeatSheetEventID = hse.HeatSheetEventID;
     vhse.HeatSheetID = hse.HeatSheetID;
     vhse.Sequence = hse.Sequence;
     vhse.Description = hse.Description;
     return vhse;
 }
        private ViewHeatSheetEvents GetHeatSheetEventsByUser(int HeatSheetID)
        {
            ViewHeatSheetEvents vhses = new ViewHeatSheetEvents();
            vhses.HeatSheetID = HeatSheetID;

            HeatSheet hs = BizMgr.GetHeatSheet(HeatSheetID);
            vhses.SwimMeetID = hs.SwimMeetID;

            SwimMeetCollection swimMeets = BizMgr.GetSwimMeetsBySystemUserID(this.CurrentUser.SystemUserID);
            var smAdmin = swimMeets.Where<SwimMeet>(vl => vl.SwimMeetID == vhses.SwimMeetID && vl.IsAdmin);
            vhses.IsAdmin = smAdmin.Count() > 0;

            ViewHeatSheetEvent vhse;
            HeatSheetEventCollection HeatSheetEvents = BizMgr.GetHeatSheetEventsByHeatSheetIDSystemUserID(HeatSheetID, this.CurrentUser.SystemUserID);
            foreach (HeatSheetEvent HeatSheetEvent in HeatSheetEvents)
            {
                vhse = new ViewHeatSheetEvent();
                vhse.HeatSheetEventID = HeatSheetEvent.HeatSheetEventID;
                vhse.Sequence = HeatSheetEvent.Sequence;
                vhse.Description = HeatSheetEvent.Description;
                vhse.HeatSheetID = HeatSheetEvent.HeatSheetID;
                vhses.ViewHeatSheetEventList.Add(vhse);
            }
            return vhses;
        }
        private ViewHeatSheetEvents GetHeatSheetEvents(int HeatSheetID)
        {
            ViewHeatSheetEvents vhses = new ViewHeatSheetEvents();
            vhses.HeatSheetID = HeatSheetID;

            SwimMeetCollection swimMeets = BizMgr.GetSwimMeetsBySystemUserID(this.CurrentUser.SystemUserID);
            var smAdmin = swimMeets.Where<SwimMeet>(vl => vl.SwimMeetID == vhses.SwimMeetID && vl.IsAdmin);
            vhses.IsAdmin = smAdmin.Count() > 0;

            HeatSwimmerCollection heatSwimmers = BizMgr.GetHeatSwimmersByHeatSheetID(HeatSheetID);

            //HeatSheet hs = BizMgr.GetHeatSheet(HeatSheetID);
            //vhses.SwimMeetID = hs.SwimMeetID;

            ViewHeatSheetEvent vhse;
            //HeatSheetEventCollection HeatSheetEvents = BizMgr.GetHeatSheetEventsByHeatSheetID(HeatSheetID);
            var hss = heatSwimmers.GroupBy(hs => hs.HeatSheetEventID).Select(grp => grp.First());

            foreach (HeatSwimmer heatSwimmer in hss)
            {
                vhse = new ViewHeatSheetEvent();
                vhse.HeatSheetEventID = heatSwimmer.HeatSheetEventID;
                vhse.Sequence = heatSwimmer.Sequence;
                vhse.Description = heatSwimmer.Description;
                vhse.HeatSheetID = heatSwimmer.HeatSheetID;
                vhses.ViewHeatSheetEventList.Add(vhse);
            }
            return vhses;
        }
        private HeatSheetEvent GetHeatSheetEventFromVSME(ViewHeatSheetEvent vsme)
        {
            Swimomatic.Entity.HeatSheetEvent HeatSheetEvent = new HeatSheetEvent();
            HeatSheetEvent.HeatSheetID = vsme.HeatSheetID;
            HeatSheetEvent.Distance = vsme.Distance;

            //get the SwimEvent
            SwimEvent swimEvent = BizMgr.GetSwimEventByAgeClassIDStrokeID(vsme.AgeClassID, vsme.StrokeID);
            HeatSheetEvent.SwimEventID = swimEvent.SwimEventID;

            return HeatSheetEvent;
        }
 private ViewHeatSheetEvent GetHeatSheetEvent(int HeatSheetID)
 {
     ViewHeatSheetEvent vhse = new ViewHeatSheetEvent();
     HeatSheetEvent HeatSheetEvent = BizMgr.GetHeatSheetEvent(0);
     vhse.HeatSheetEventID = HeatSheetEvent.HeatSheetEventID;
     vhse.HeatSheetID = HeatSheetID;
     vhse.Sequence = HeatSheetEvent.Sequence;
     vhse.Description = HeatSheetEvent.Description;
     vhse.AgeClassList = GetAgeClasses(0);
     vhse.StrokeList = DataCache.Get<SelectList>("StrokeList", () => GetStrokes(0));
     vhse.DistanceList = GetDistances(0);
     return vhse;
 }
        public ActionResult SaveHeatSheetEvent(ViewHeatSheetEvent vsme)
        {
            Swimomatic.Entity.HeatSheetEvent heatSheetEvent = null;
            try
            {
                bool isValid = true;
                heatSheetEvent = GetHeatSheetEventFromVSME(vsme);
                if (!vsme.ValidateHeatSheetEvent(ModelState))
                {
                    isValid = false;
                }
                if (isValid && BizMgr.HeatSheetEventExists(vsme.Distance, heatSheetEvent.SwimEventID, vsme.HeatSheetID))
                {
                    ModelState.AddModelError("Event", "This event already exists.");
                    isValid = false;
                }

                if (!isValid)
                {
                    ViewBag.HeatSheetEvent = GetHeatSheetEvent(vsme.HeatSheetID);
                    return PartialView("_HeatSheetEvent");
                }
                else
                {
                    heatSheetEvent.HeatSheetEventID = BizMgr.SaveHeatSheetEvent(heatSheetEvent);

                    //Clear the cached so new event will be included in response
                    DataCache.Remove("HeatSheetEvents" + heatSheetEvent.HeatSheetID.ToString());
                }
            }
            catch (Exception ex)
            {
                LogController.LogError(ex, LogEntryType.NormalError, "", "", "SystemUserID=" + base.CurrentUser.SystemUserID.ToString(), "HeatSheetID=" + vsme.HeatSheetEventID.ToString());
            }
            return GetEligibleSwimmers(heatSheetEvent.HeatSheetEventID);
        }