From 8259f3f8e4402d89e46845b4a2d7d8a449a82ebc Mon Sep 17 00:00:00 2001 From: yanzai Date: Wed, 13 Aug 2025 12:05:28 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=20=E7=BA=BF=E4=B8=8B?= =?UTF-8?q?=E9=A2=84=E7=BA=A6=E9=80=9A=E7=9F=A5=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/API/H5/OrderNewController.php | 68 +++++++++++++------ 1 file changed, 48 insertions(+), 20 deletions(-) diff --git a/Laravel/app/Http/Controllers/API/H5/OrderNewController.php b/Laravel/app/Http/Controllers/API/H5/OrderNewController.php index 3809be2..c993075 100644 --- a/Laravel/app/Http/Controllers/API/H5/OrderNewController.php +++ b/Laravel/app/Http/Controllers/API/H5/OrderNewController.php @@ -768,38 +768,42 @@ class OrderNewController extends Controller if($type==1){ $AspZhuan = new AspNetZhuanController(); $targetTimes = [$date1, $date2]; - $orders = DB::table('orders') + $orders1 = DB::table('orders') ->where('status', 1) - ->whereIn(DB::raw('TIMESTAMP(appointment_date, appointment_time)'), $targetTimes) + ->whereIn(DB::raw('TIMESTAMP(appointment_date, appointment_time)'), [$date1]) + ->where('source', 'like', '%线下体检预约%') + ->where('offline_sendmsg_status', '<>', 2) + ->get(); + $orders2 = DB::table('orders') + ->where('status', 1) + ->whereIn(DB::raw('TIMESTAMP(appointment_date, appointment_time)'), [$date2]) ->where('source', 'like', '%线下体检预约%') ->where('offline_sendmsg_status', '<>', 2) ->get(); $orderids=[]; - foreach ($orders as $order) { - $orderids[]=$order->id; + foreach ($orders1 as $order) { $offline_sendmsg_status=0; if($order->offline_sendmsg_status==0 or $order->offline_sendmsg_status==null or $order->offline_sendmsg_status==''){ $offline_sendmsg_status=1; + $orderids[]=$order->id; + }else{ + continue; } - if($order->offline_sendmsg_status==1){ + + DB::table('orders')->where(['id'=>$order->id])->update(['offline_sendmsg_status'=>$offline_sendmsg_status]); + $this->sendWXNotice($AspZhuan, $order); + } + foreach ($orders2 as $order) { + $offline_sendmsg_status=0; + if($order->offline_sendmsg_status<>2){ $offline_sendmsg_status=2; + $orderids[]=$order->id; + }else{ + continue; } + DB::table('orders')->where(['id'=>$order->id])->update(['offline_sendmsg_status'=>$offline_sendmsg_status]); - $person=DB::table('web_user_person')->where(['id_number'=>$order->id_number,'is_del'=>0])->first(); - if(!$person) continue; - $reqst_data = [ - 'ghzid' => $person->ghzid, - 'yyid' => 6, - 'type' => 28, - 'msg1' => $person['name'], - 'msg2' => $order->title, - 'msg3' => number_format($order->true_price, 2, '.', ''), - 'msg4' => $order->appointment_date . ' ' . $order->appointment_time, - 'msg5' => "健康管理中心", - 'msg6' => "", - 'url' => "pages/other/entry/index?path=/pages/other/jump-h5/index&src=https%3A%2F%2Ftj-h5.hnxdfe.com%2Fh5%2F%23%2Fpages%2Fmain%2Flogin%2Flogin%3Fpath%3Dorder&scene=1014", - ]; - $AspZhuan::WeiXinSend($reqst_data); + $this->sendWXNotice($AspZhuan, $order); } return \Yz::Return(true,"线下订单通知完成",['find_orderids'=>$orderids]); } @@ -821,6 +825,30 @@ class OrderNewController extends Controller return \Yz::Return(true,"线下订单自动取消完成",['find_orderids'=>$orderids]); } } + private function sendWXNotice($aspZhuan, $order) + { + $person = DB::table('web_user_person') + ->where('id_number', $order->id_number) + ->where('is_del', 0) + ->first(); + + if (!$person) return; + + $reqst_data = [ + 'ghzid' => $person->ghzid, + 'yyid' => 6, + 'type' => 28, + 'msg1' => $person->name, + 'msg2' => $order->title, + 'msg3' => number_format($order->true_price, 2, '.', ''), + 'msg4' => $order->appointment_date . ' ' . $order->appointment_time, + 'msg5' => "健康管理中心", + 'msg6' => "", + 'url' => "pages/other/entry/index?path=/pages/other/jump-h5/index&src=https%3A%2F%2Ftj-h5.hnxdfe.com%2Fh5%2F%23%2Fpages%2Fmain%2Flogin%2Flogin%3Fpath%3Dorder&scene=1014", + ]; + + $aspZhuan::WeiXinSend($reqst_data); + } public function item_check($hospital, $data) { $peis = new PEISApiController();