From d201eb2132c17bba5e4e3ff2d3ebed8799852185 Mon Sep 17 00:00:00 2001 From: qianhy Date: Tue, 20 Dec 2022 15:22:21 +0800 Subject: [PATCH] order edit_price or edit_srv add order_status_check_after_adjust_fee --- admin/controllers/receiver/orderv2/Orders.php | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/admin/controllers/receiver/orderv2/Orders.php b/admin/controllers/receiver/orderv2/Orders.php index f9b84f3e..db3a7805 100644 --- a/admin/controllers/receiver/orderv2/Orders.php +++ b/admin/controllers/receiver/orderv2/Orders.php @@ -1289,6 +1289,48 @@ class Orders extends HD_Controller } } + //2022.12.19, 修改订单的优惠金额/服务费,判断是否到开票 + private function order_status_check_after_adjust_fee($id){ + if (!$id){ + return false; + } + $where = [ + 'o_id' => $id, + 'status' => 1, + 'pay_price>' => 0, + 'type!=' => 7 + ]; + $sum = $this->app_liche_orders_model->sum('total_price', $where); //已收金额 + $total_price = $sum['total_price']; + /*$need_price = $this->orders_v2_entity->recevable_price($id); //应收金额 + if ($total_price >= $need_price) { + //- 已收总额 >= 应收总额:如“已配车”,调整为“待开票” + $bill_status = $this->receiver_order_status_model->get(['o_id'=>$id,'pid_status'=>3,'status'=>1]); //是否已开票 + $bill_status && $this->receiver_order_status_model->delete(['o_id'=>$id,'pid_status'=>3,'status'=>1]); + } + else{ + //- 已收总额 < 应收总额:如“待开票”,调整为“已配车” + $bill_status = $this->receiver_order_status_model->get(['o_id'=>$id,'pid_status'=>3,'status'=>0]); //是否待开票 + $bill_status && $this->receiver_order_status_model->delete(['o_id'=>$id,'pid_status'=>3,'status'=>0]); + }*/ + + //是否已付款 + if ($total_price > 0){ + $this->orders_status_entity->set_status($id,0,2); + } + else{ + $fee_status = $this->receiver_order_status_model->get(['o_id'=>$id,'pid_status'=>0,'status'=>2]); //是否已付款 + $fee_status && $this->receiver_order_status_model->delete(['o_id'=>$id,'pid_status'=>0,'status'=>2]); + } + + //是否已配车 + $car_status = $this->receiver_order_status_model->get(['o_id'=>$id,'pid_status'=>2,'status'=>1]); + if (!$car_status){ + $row = $this->receiver_orders_v2_model->get(['id'=>$id]); + $row && $row['item_id'] && $this->orders_status_entity->set_status($id,2,1); + } + } + public function edit_price(){ $id = $this->input->get_post('id'); $row = $this->receiver_orders_v2_model->get(['id' => $id]); @@ -1311,6 +1353,7 @@ class Orders extends HD_Controller $userinfo = $this->app_liche_users_model->get(['mobile'=>$row['mobile']]); $this->orders_v2_entity->add_order($id,$userinfo['id']); } + $this->order_status_check_after_adjust_fee($id); //重新生成合同 $this->order_contracts_model->delete(['o_id'=>$id]); $url = http_host_com('api')."/wxapp/licheb/protocol/create_pdf?id={$id}"; @@ -1364,6 +1407,7 @@ class Orders extends HD_Controller $userinfo = $this->app_liche_users_model->get(['mobile'=>$row['mobile']]); $this->orders_v2_entity->add_order($id,$userinfo['id']); } + $this->order_status_check_after_adjust_fee($id); //重新生成合同 $this->order_contracts_model->delete(['o_id'=>$id]); $url = http_host_com('api')."/wxapp/licheb/protocol/create_pdf?id={$id}";