public override VmExceptionalHours TranslateEntityToVm(ServiceHours entity)
        {
            var definition = CreateEntityViewModelDefinition(entity);
            var result     = definitionHelper.AddOpeningHoursDefinition(definition)
                             .AddSimple(input => input.IsClosed, output => output.Closed)
                             .AddPartial(input => input.DailyOpeningTimes.FirstOrDefault(), output => output as IDailyHours)
                             .GetFinal();

            return(result);
        }
Example #2
0
        public override VmNormalHours TranslateEntityToVm(ServiceHours entity)
        {
            var definition = CreateEntityViewModelDefinition(entity);

//                .AddNavigation<ServiceChannelServiceHours, VmHours>(input => input, output => output, true)
            definitionHelper.AddOpeningHoursDefinition(definition);

            var result = definition
                         .AddCollection(input => input.DailyOpeningTimes, output => output.DailyHours)
                         .AddSimple(input => input.DailyOpeningTimes.Count == 0, output => output.Nonstop)
                         .GetFinal();

            result.DailyHours = result.DailyHours.GroupBy(x => x.DayFrom)
                                .Select(x => x.OrderBy(d => d.Extra).Aggregate((d1, d2) =>
            {
                d1.TimeFromExtra = d2.TimeFrom;
                d1.TimeToExtra   = d2.TimeTo;
                d1.Extra         = d2.Extra;
                return(d1);
            })).ToList();
            return(result);
        }