public DtoOrder AddResponse(int orderId, int drugStoreId, DtoSkuReply skuReplay)
        {
            try
            {
                EnsureArg.IsGt(orderId, 0, nameof(orderId));
            }
            catch (Exception ex)
            {
                throw new BadRequest(ex);
            }


            var order     = OrderQueries.GetOrder(orderId);
            var drugstore = StoreDomain.Get(drugStoreId);

            if (order.Responses != null)
            {
                order.Responses = new List <DtoOrderResponse>();
                var response = new DtoOrderResponse()
                {
                    DrugStore = drugstore,
                    Accepted  = false
                };
                OrderQueries.CreateResponse(ref response, orderId);
                order.Responses.Add(response);
            }
            return(CheckOrder(order));
        }
        public void CreateResponse(ref DtoOrderResponse response, int orderId)
        {
            var model      = response.ToRepository(orderId);
            var insertedId = Insert(model, "OrderResponse");

            response.Id = insertedId;
        }
        public static DtoOrderResponse ToDTO(this OrderResponse model)
        {
            if (model == null)
            {
                return(null);
            }

            var dto = new DtoOrderResponse()
            {
                Id       = model.Id,
                Accepted = model.Accepted,
            };

            return(dto);
        }
        public static OrderResponse ToRepository(this DtoOrderResponse dto, int order_id)
        {
            if (dto == null)
            {
                return(null);
            }

            var model = new OrderResponse()
            {
                Id           = dto.Id,
                Accepted     = dto.Accepted,
                Order_id     = order_id,
                DrugStore_id = dto.DrugStore.Id
            };

            return(model);
        }
        public DtoOrder AddResponse(int id, DtoOrderResponse response, DtoSkuReply sku)
        {
            var session = GetSession();

            return(orderDomain.AddResponse(id, session.StoreId.Value, sku));
        }