Beispiel #1
0
        private static async Task <Attachment> GetDetailedRoasterCard(Activity activity, TeamsChannelAccount userDetails)
        {
            var  details = JsonConvert.DeserializeObject <AirlineActionDetails>(activity.Value.ToString());
            Crew crew    = await CabinCrewPlansHelper.ReadJson(userDetails.UserPrincipalName);

            var datePlan = crew.plan.FirstOrDefault(c => c.flightDetails.flightStartDate.Date.ToString() == details.Id);

            return(CardHelper.GetDetailedRoster(datePlan));
        }
        private static async Task <Attachment> GetDetailedRoasterCard(Activity activity, TeamsChannelAccount userDetails, GraphHelper graphHelper, IConfiguration configuration)
        {
            var details = JsonConvert.DeserializeObject <AirlineActionDetails>(activity.Value.ToString());
            // Crew crew = await CabinCrewPlansHelper.ReadJson(userDetails.UserPrincipalName);

            string crewid = await graphHelper.GetUserEmployeeIdAsync(userDetails.UserPrincipalName);

            Crew crew = await CabinCrewPlansHelper.ReadJson(crewid, configuration);

            // Crew crew = await CabinCrewPlansHelper.ReadJson("10055"); // ${Debugging}
            var datePlan = crew.plan.FirstOrDefault(c => c.flightDetails.flightStartDate.Date.ToString() == details.Id);

            return(CardHelper.GetDetailedRoster(datePlan));
        }
Beispiel #3
0
        public async Task <ActionResult> Portal(string userEmailId)
        {
            if (string.IsNullOrEmpty(userEmailId))
            {
                return(StatusCode(404));
            }
            // var cabinCrewData = await CabinCrewPlansHelper.MonthsPlan("10055"); // ${Debugging}
            var cabinCrewData = await CabinCrewPlansHelper.MonthsPlan(userEmailId, configuration);

            if (cabinCrewData == null)
            {
                return(StatusCode(404));
            }
            List <Duty> duties = new List <Duty>();
            var         colour = new[] { "pink", "org", "blue" };

            foreach (var item in cabinCrewData)
            {
                duties.Add(item.vacationPlan == true?new Duty()
                {
                    Date = item.vacationDate, isDayOff = item.isDayOff, vacationPlan = item.vacationPlan, Details = new Details()
                    {
                        DisplayText = "AL", Colour = colour[1]
                    }
                }:item.isDayOff == true?new ViewModels.Duty()
                {
                    Date = item.date, isDayOff = item.isDayOff, vacationPlan = item.vacationPlan, Details = new Details()
                    {
                        DisplayText = "OFF", Colour = colour[0]
                    }
                } :new Duty()
                {
                    Date = Convert.ToDateTime(item.flightDetails.flightStartDate), isDayOff = item.isDayOff, vacationPlan = item.vacationPlan, Details = new Details()
                    {
                        DisplayText = item.flightDetails.sourceCode, Colour = colour[2]
                    }
                });
            }
            PortalViewModel viewModel = new PortalViewModel(DateTime.Today, 30, 2, duties);

            viewModel.UserEmailId = userEmailId;
            return(View(viewModel));
        }