From f0a19bce4e5b73ac39faab18bc590248d3fbf44c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=B5=9C=EC=A4=80=ED=9D=A0?= Date: Wed, 9 Aug 2023 17:48:53 +0900 Subject: [PATCH] shoppingmallv2 init... --- app/Controllers/Admin/OrderController.php | 13 ++++++++++++- app/Controllers/EcommerceController.php | 2 ++ app/Models/OrderModel.php | 16 +++++++++------- 3 files changed, 23 insertions(+), 8 deletions(-) diff --git a/app/Controllers/Admin/OrderController.php b/app/Controllers/Admin/OrderController.php index 305f48e..c375d6b 100644 --- a/app/Controllers/Admin/OrderController.php +++ b/app/Controllers/Admin/OrderController.php @@ -20,7 +20,7 @@ class OrderController extends AdminController { switch ($action) { case 'update': - return ['product_uid', "cost", "sale", "quantity", "price", "status"]; + return ['product_uid', "cost", "sale", "quantity", "status"]; break; case "index": case "excel": @@ -40,4 +40,15 @@ class OrderController extends AdminController { return ["status"]; } + + //가격이나,할인가,수량 변경했을경우 다시 계산해서 Price에 넣기위해 + protected function update_process($entity) + { + //가격이나,할인가,수량 변경했을경우 다시 계산해서 결제금액(price)에 넣기위해 + $this->_viewDatas['fieldDatas']['price'] = + ($this->_viewDatas['fieldDatas']['cost'] - + $this->_viewDatas['fieldDatas']['sale']) * + $this->_viewDatas['fieldDatas']['quantity']; + return parent::update_process($entity); + } } diff --git a/app/Controllers/EcommerceController.php b/app/Controllers/EcommerceController.php index 8fb8b89..0a42e36 100644 --- a/app/Controllers/EcommerceController.php +++ b/app/Controllers/EcommerceController.php @@ -93,6 +93,8 @@ class EcommerceController extends Controller if ($price != $this->_viewDatas['fieldDatas']['price']) { throw new \Exception("실 상품금액{$price} 와 구매금액{$this->_viewDatas['fieldDatas']['price']}이 서로 다릅니다."); } + // echo var_export($this->_viewDatas['fieldDatas']); + // exit; //상품명을 복사해서 구매한 상품명에 넣기 $this->_viewDatas['fieldDatas'][$this->getOrderModel()->getTitleField()] = $product->getTitle(); //주문추가 diff --git a/app/Models/OrderModel.php b/app/Models/OrderModel.php index f989367..411e526 100644 --- a/app/Models/OrderModel.php +++ b/app/Models/OrderModel.php @@ -88,13 +88,15 @@ class OrderModel extends BaseModel //장바구니에 넣기 public function addCart(array $formDatas): OrderEntity { - $orderFormDatas = [ - $formDatas['product_uid'] = $formDatas['product_uid'], - $formDatas['cost'] = $formDatas['price'], - $formDatas['sale'] = 0, - $formDatas['quantity'] = $formDatas['quantity'], - $formDatas['price'] = ($formDatas['cost'] - $formDatas['sale']) * $formDatas['quantity'], - ]; + $orderFormDatas = []; + $orderFormDatas[$this->getTitleField()] = $formDatas[$this->getTitleField()]; + $orderFormDatas['product_uid'] = $formDatas['product_uid']; + $orderFormDatas['cost'] = $formDatas['price']; + $orderFormDatas['sale'] = 0; + $orderFormDatas['quantity'] = $formDatas['quantity']; + $orderFormDatas['price'] = ($orderFormDatas['cost'] - $orderFormDatas['sale']) * $orderFormDatas['quantity']; + // echo var_export($orderFormDatas); + // exit; return $this->create_process(new OrderEntity(), $orderFormDatas); } //장바구니에 빼기