public List <CalendarModel> GetMaidCalendar(int minTime, int maxTime)
        {
            IEnumerable <string> values;

            if (Request.Headers.TryGetValues("Token", out values))
            {
                var token      = values.First();
                var tokenModel = JsonConvert.DeserializeObject <TokenModel>(Encrypt.Base64Decode(token));
                var maid       = _service.GetActiveMaidById(tokenModel.Id);
                if (Equals(maid, null))
                {
                    ExceptionContent(HttpStatusCode.Unauthorized, "err_account_not_found");
                }
                var x                 = 60 * 60 * 24;
                var result            = new List <CalendarModel>();
                var contractEmployees = _service.GetAllCurrentContractEmployeeByEmployeeId(maid.employee_id);
                while (minTime < maxTime)
                {
                    var max           = minTime + x;
                    var dow           = (int)ConvertDatetime.UnixTimeStampToDateTime(minTime).DayOfWeek;
                    var apartmentList = new List <ApartmentModel>();
                    foreach (var item in contractEmployees)
                    {
                        var days = item.work_date.Split(',').ToList();
                        if (days.IndexOf(dow.ToString()) != -1)
                        {
                            var apartment = new ApartmentModel
                            {
                                Id          = item.contract.apartment.apartment_id,
                                Code        = item.contract.apartment.code,
                                NoBedRoom   = item.contract.no_bedroom,
                                WorkHour    = item.work_hour,
                                Address     = item.contract.address,
                                NoApartment = item.contract.no_apartment,
                                Building    = item.contract.building,
                                Project     = !Equals(item.contract.apartment.project_id, null) ? new ProjectModel
                                {
                                    Name = item.contract.apartment.project.project_content.FirstOrDefault(p => p.language == 0).name
                                } : new ProjectModel()
                            };
                            apartmentList.Add(apartment);
                        }
                    }
                    var calendar = new CalendarModel
                    {
                        ApartmentList = apartmentList,
                        Time          = minTime
                    };
                    result.Add(calendar);
                    minTime = max;
                }

                return(result);
            }
            return(new List <CalendarModel>());
        }