public IActionResult Index(OrderGetDTO dtoGet, OrderPostDTO dtoPost)
        {
            OrderIndexViewModel model = orderManager.PostOrderIndexViewModel(dtoGet, dtoPost);

            dbManager.Commit();
            return(View("Order", model));
        }
Пример #2
0
        public async Task <ActionResult <OrderResponseDTO> > OrderInsert(OrderPostDTO orderPostDTO)
        {
            // Map orderPostDTO to repositories Order entity
            var newOrder = _mapper.Map <Order>(orderPostDTO);

            // Apply audit changes to Order entity
            newOrder = Audit <Order> .PerformAudit(newOrder);

            // Insert new Order into the respository
            newOrder = await _orderRespository.Insert(newOrder);

            // Map the Order entity to DTO response object and return in body of response
            var orderResponseDTO = _mapper.Map <OrderResponseDTO>(newOrder);

            return(CreatedAtAction(nameof(OrderGetById), new { orderResponseDTO.OrderId }, orderResponseDTO));
        }
Пример #3
0
        public OrderIndexViewModel PostOrderIndexViewModel(OrderGetDTO dtoGet, OrderPostDTO dtoPost)
        {
            var model = new OrderIndexViewModel {
                Order = dtoPost.OrderId > 0 ?
                        dbManager.GetById <Order>(dtoPost.OrderId) :
                        Get(dtoGet)
            };

            FillViewModel(model);

            var disp    = dtoPost.DispetcherId > 0 ? dbManager.GetById <Employee>(dtoPost.DispetcherId) : model.Order.Dispetcher;
            var chief   = dtoPost.ChiefId > 0 ? dbManager.GetById <Employee>(dtoPost.ChiefId) : model.Order.Chief;
            var masters = dtoPost?.MastersId?.Length > 0 && dtoPost.MastersId.Any(x => x > 0) ? dbManager.GetByListId <Employee>(dtoPost?.MastersId) : model.Order?.MiningMaster;

            model.Order
            .SetStaff(disp, chief, masters);

            if (model.Order.Id == 0)
            {
                dbManager.AddAsync(model.Order);
            }

            return(model);
        }
Пример #4
0
        public async Task <ActionResult> Create(OrderPostDTO orderPostDTO)
        {
            var orderId = await _bll.Orders.CreateAsync(orderPostDTO);

            return(CreatedAtAction(nameof(GetById), await GetById(orderId, DateTime.Now)));
        }