Example #1
0
        public CollectionQueryResult <GetAlterationsDto> Handle(GetAlterationsFilter filter)
        {
            using (var context = new SuitSupplyReadContext())
            {
                var suitQuery = context.Suit.AsQueryable();

                if (filter != null)
                {
                    if (filter.SuitId != null && filter.SuitId != Guid.Empty)
                    {
                        suitQuery = suitQuery.Where(suit => suit.Id == filter.SuitId);
                    }
                }


                var result = suitQuery.Select(i => new GetAlterationsDto()
                {
                    SuitId            = i.Id,
                    AlterationStatus  = i.AlterationStatus,
                    AlteringTailor    = i.AlteringTailor,
                    RightSleeveLength = i.Alteration.RightSleeveLength,
                    LeftSleeveLength  = i.Alteration.LeftSleeveLength,
                    RighTrouserLength = i.Alteration.RighTrouserLength,
                    LeftTrouserLength = i.Alteration.LeftTrouserLength,
                }).ToList();
                return(new CollectionQueryResult <GetAlterationsDto>(result));
            }
        }
        public ActionResult <string> GetAllAlterations()
        {
            var filter = new GetAlterationsFilter();

            try
            {
                var alterations = QueryBus
                                  .Dispatch <GetAlterationsFilter, CollectionQueryResult <GetAlterationsDto> >
                                      (filter);

                return(Ok(alterations.Items));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex.Message));
            }
        }
        public ActionResult <string> GetAlteration(Guid?suitId)
        {
            if (suitId == null)
            {
                return(StatusCode(500, "Invalid SuitId"));
            }
            var filter = new GetAlterationsFilter()
            {
                SuitId = suitId,
            };

            try
            {
                var alterations = QueryBus
                                  .Dispatch <GetAlterationsFilter, CollectionQueryResult <GetAlterationsDto> >
                                      (filter);

                return(Ok(alterations.Items.FirstOrDefault()));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex.Message));
            }
        }