Example #1
0
        public List <AppointmentEntityModel> LoadAppointmentSummaryInDateRange(double start, double end)
        {
            var fromDate = ConvertFromUnixTimestamp(start);
            var toDate   = ConvertFromUnixTimestamp(end);

            var rslt = _unitOfWork.Repository <CaseAppointment>().Table().Where(s => s.CaseAppointmentDate >= fromDate && EntityFunctions.AddMinutes(s.CaseAppointmentDate, s.AppointmentLength) <= toDate)
                       .GroupBy(s => EntityFunctions.TruncateTime(s.CaseAppointmentDate))
                       .Select(x => new { DateTimeScheduled = x.Key, Count = x.Count() });

            List <AppointmentEntityModel> result = new List <AppointmentEntityModel>();
            int i = 0;

            foreach (var item in rslt)
            {
                AppointmentEntityModel rec = new AppointmentEntityModel();
                rec.ID = i;                                     //we dont link this back to anything as its a group summary but the fullcalendar needs unique IDs for each event item (unless its a repeating event)
                string StringDate = string.Format("{0:yyyy-MM-dd}", item.DateTimeScheduled);
                rec.StartDateString = StringDate + "T00:00:00"; //ISO 8601 format
                rec.EndDateString   = StringDate + "T23:59:59";
                rec.Title           = "Booked: " + item.Count.ToString();

                result.Add(rec);
                i++;
            }

            return(result);
        }
Example #2
0
        public List <AppointmentEntityModel> LoadAllAppointmentsInDateRange(double start, double end)
        {
            var fromDate = ConvertFromUnixTimestamp(start);
            var toDate   = ConvertFromUnixTimestamp(end);
            List <AppointmentEntityModel> result = new List <AppointmentEntityModel>();

            if (_unitOfWork.Repository <CaseAppointment>().Table().Count() > 0)
            {
                //var rslt = _unitOfWork.Repository<CaseAppointment>().Table().Where(s => s.CaseAppointmentDate >= fromDate && EntityFunctions.AddMinutes(s.CaseAppointmentDate, s.AppointmentLength) <= toDate);
                var rslt = _unitOfWork.SQLQuery <sp_getCaseAppointment>("sp_getCaseAppointment").Where(s => s.CaseAppointmentDate >= fromDate && s.AppointmentDate <= toDate);

                foreach (var item in rslt)
                {
                    AppointmentEntityModel rec = new AppointmentEntityModel();
                    rec.ID = Convert.ToInt32(item.CaseAppointmentId);
                    rec.StartDateString = item.CaseAppointmentDate.ToString("s");                                    // "s" is a preset format that outputs as: "2009-02-27T12:12:22"
                    rec.EndDateString   = item.CaseAppointmentDate.AddMinutes(item.AppointmentLength).ToString("s"); // field AppointmentLength is in minutes
                    rec.Title           = item.CaseAppointmentTitle + " - " + item.AppointmentLength.ToString() + " mins";
                    rec.StatusString    = Enums.GetName <AppointmentStatus>((AppointmentStatus)item.StatusENUM);
                    rec.StatusColor     = Enums.GetEnumDescription <AppointmentStatus>(rec.StatusString);
                    string ColorCode = rec.StatusColor.Substring(0, rec.StatusColor.IndexOf(":"));
                    rec.ClassName                = rec.StatusColor.Substring(rec.StatusColor.IndexOf(":") + 1, rec.StatusColor.Length - ColorCode.Length - 1);
                    rec.StatusColor              = ColorCode;
                    rec.CaseAppointmentTitle     = item.CaseAppointmentTitle;
                    rec.CaseAppointmentTime      = item.CaseAppointmentTime;
                    rec.AppointmentLength        = item.AppointmentLength;
                    rec.CaseAppointmentCateTitle = item.AppointmentCategoryTitle;
                    result.Add(rec);
                }
            }

            return(result);
        }
Example #3
0
        public bool AddOrUpdateCaseAppointment(AppointmentEntityModel appointmententitymodel)
        {
            bool flag = false;

            if (appointmententitymodel.CaseAppointmentId > 0)
            {
                //Update
            }
            else
            {
                //Insert
                Mapper.CreateMap <AppointmentEntityModel, CaseAppointment>();
                var caseappointmentdetails = Mapper.Map <AppointmentEntityModel, CaseAppointment>(appointmententitymodel);
                caseappointmentdetails.CaseId = appointmententitymodel.CaseId;
                caseappointmentdetails.CaseAppointmentDate        = appointmententitymodel.CaseAppointmentDate;
                caseappointmentdetails.CaseAppointmentTime        = appointmententitymodel.CaseAppointmentTime.ToString();
                caseappointmentdetails.CaseAppointmentTitle       = appointmententitymodel.CaseAppointmentTitle;
                caseappointmentdetails.CaseAppointmentDescription = appointmententitymodel.CaseAppointmentDescription;
                caseappointmentdetails.CaseAppointmentCategory    = appointmententitymodel.CaseAppointmentCategory;
                caseappointmentdetails.CaseAppointmentProgress    = appointmententitymodel.CaseAppointmentProgress.ToString();
                caseappointmentdetails.CaseAppointmentCreatedDate = DateTime.Now;
                caseappointmentdetails.CaseAppointmentStatus      = true;
                caseappointmentdetails.CaseAppointmentCreatedBy   = appointmententitymodel.CaseAppointmentCreatedBy;
                caseappointmentdetails.CaseAppointmentDelete      = false;
                _unitOfWork.Repository <CaseAppointment>().Add(caseappointmentdetails);
                _unitOfWork.Save();
                flag = true;
            }
            return(flag);
        }