public Task <string> UpdateOrder(OrderViewModel.OrderSingleResult orderUpdate)
 {
     return(Task.Run(() =>
     {
         //從資料庫抓資料單筆
         var singleOrder = _dbRepository.GetAll <Order>().FirstOrDefault(x => x.OrderId == orderUpdate.OrderId);
         if (singleOrder == null)
         {
             return "無匹配訂單";
         }
         else
         {
             singleOrder.OrderName = orderUpdate.OrderName;
             singleOrder.OrderPhone = orderUpdate.OrderPhone;
             singleOrder.OrderConEmail = orderUpdate.OrderConEmail;
             singleOrder.Condition = orderUpdate.Condition;
             singleOrder.OrderAddress = orderUpdate.OrderAddress;
         }
         using (var transaction = _context.Database.BeginTransaction())
         {
             try
             {
                 _dbRepository.Update(singleOrder);
                 transaction.Commit();
                 return "更新成功";
             }
             catch (Exception ex)
             {
                 transaction.Rollback();
                 return ex.Message;
             }
         }
     }));
 }
 //Delete單筆
 public Task <string> DeleteOrder(OrderViewModel.OrderSingleResult order)
 {
     return(Task.Run(() =>
     {
         var singleOrder = _dbRepository.GetAll <Order>().FirstOrDefault(x => x.OrderId == order.OrderId);
         if (singleOrder == null)
         {
             return "查無此匹配訂單";
         }
         using (var transaction = _context.Database.BeginTransaction())
         {
             try
             {
                 _dbRepository.Delete(singleOrder);
                 transaction.Commit();
                 return "刪除成功";
             }
             catch (Exception ex)
             {
                 transaction.Rollback();
                 return ex.Message;
             }
         }
     }));
 }
Exemple #3
0
        public bool Edit(OrderViewModel.OrderSingleResult orderVM)
        {
            foreach (var orderDetailVM in orderVM.OrderDetailList)
            {
                OrderDetail orderDetail = _dbRepository.GetAll <OrderDetail>().FirstOrDefault(orderDetail =>
                                                                                              orderDetail.OrderDetailId == orderDetailVM.OrderDetailId);
                orderDetail.Quantity     = orderDetailVM.Quantity;
                orderDetail.SpecialPrice = orderDetailVM.SpecialPrice;
                _dbRepository.Update(orderDetail);
            }

            Order order = _dbRepository.GetAll <Order>().FirstOrDefault(order => order.OrderId == orderVM.OrderId);

            order.ShipName       = orderVM.ShipName;
            order.ShipCity       = orderVM.ShipCity;
            order.ShipRegion     = orderVM.ShipRegion;
            order.ShipAddress    = orderVM.ShipAddress;
            order.ShipPostalCode = orderVM.ShipPostalCode;
            order.InvoiceType    = orderVM.InvoiceType;
            order.InvoiceInfo    = orderVM.InvoiceInfo;
            order.UpdateTime     = DateTime.UtcNow.AddHours(8);
            order.PaymentType    = orderVM.PaymentType;
            order.PaymentState   = orderVM.PaymentState;

            _dbRepository.Update(order);
            return(true);
        }
Exemple #4
0
        public BaseModel.BaseResult <OrderViewModel.OrderSingleResult> Edit(OrderViewModel.OrderSingleResult orderVM)
        {
            BaseModel.BaseResult <OrderViewModel.OrderSingleResult> result = new BaseModel.BaseResult <OrderViewModel.OrderSingleResult>();
            result.Body = orderVM;

            try
            {
                result.IsSuccess = _orderService.Edit(orderVM);
                return(result);
            }
            catch (Exception ex)
            {
                result.Msg       = ex.Message;
                result.IsSuccess = false;

                return(result);
            }
        }
Exemple #5
0
        public async Task <ActionResult <BaseModel.BaseResult <OrderViewModel.OrderSingleResult> > > DeleteOrder([FromBody] OrderViewModel.OrderSingleResult orderSingle)
        {
            _logger.LogWarning(2001, DateTime.Now.ToLongTimeString() + "Products控制器Delete方法被呼叫, by" + UriHelper.GetDisplayUrl(Request)); //確認前後端參數是否一致
            var result      = new BaseModel.BaseResult <OrderViewModel.OrderSingleResult>();                                             //刪除單一筆資料
            var deleteOrder = await _orderService.DeleteOrder(orderSingle);

            result.Msg = deleteOrder; //刪除成功 或 錯誤訊息
            if (result.Msg == "無匹配訂單")
            {
                result.IsSuccess = false;
                return(result);
            }
            else if (result.Msg == "刪除成功")
            {
                result.IsSuccess = true;
                return(result);
            }
            else
            {
                result.IsSuccess = false;
                return(result);
            }
        }
Exemple #6
0
        public async Task <ActionResult <BaseModel.BaseResult <OrderViewModel.OrderSingleResult> > > UpdateOrder([FromBody] OrderViewModel.OrderSingleResult orderSingle)
        {
            _logger.LogWarning(2001, DateTime.Now.ToLongTimeString() + "Products控制器PUT方法被呼叫-傳入的資料為:" + System.Text.Json.JsonSerializer.Serialize(orderSingle));

            var result      = new BaseModel.BaseResult <OrderViewModel.OrderSingleResult>();
            var updateOrder = await _orderService.UpdateOrder(orderSingle);

            result.Msg = updateOrder;
            if (result.Msg == "查無此筆訂單")
            {
                result.IsSuccess = false;
                return(result);
            }
            else if (result.Msg == "更新成功")
            {
                result.IsSuccess = true;
                return(result);
            }
            else
            {
                result.IsSuccess = false;
                return(result);
            }
        }