yxjapp 3 months ago
parent
commit
7e61d450db

+ 4 - 2
app/admin/controller/notify/RechargeController.php

@@ -97,8 +97,9 @@ class RechargeController
     {
         Log::info("开始充值", ['pay_id' => $payId]);
         $payDetail = PayDetail::find($payId);
-        if (!$payDetail || $payDetail->pay_status != 'SUCCESS') {
-            throw new BusinessException("支付状态异常");
+        if (!$payDetail) {
+            Log::error("充值记录异常");
+            return json_success('支付状态异常');
 //           return json_fail("支付状态异常");
         }
         $extendJson = [];
@@ -167,6 +168,7 @@ class RechargeController
                     // 入收支明细表
                     $params['orderId'] = $payObjectJson['order_id'];
                     $params['inout_category'] = '会员充值';
+                    $params['pay_id'] = $payId;
                     Event::dispatch('statistics.inout.in', $params);
                 }
             }

+ 1 - 1
app/admin/controller/order/DishesController.php

@@ -91,7 +91,7 @@ class DishesController extends Curd
             $payTimeStart = strtotime($where['order_addtimes'][0]);
             $payTimeEnd = strtotime($where['order_addtimes'][1]);
             unset($where['order_addtimes']);
-            $payOrderIds = PayDetailService::getPayOrderId($payTimeStart, $payTimeEnd, ['MEALS']);
+            $payOrderIds = PayDetailService::getPayOrderId($payTimeStart, $payTimeEnd, ['MEALS','DISHES']);
         }
         if ((!empty($orderId) || !empty($goodsName)) && $timeType == 'pay') {
             $orderIds = array_intersect($orderIds, $payOrderIds);

+ 35 - 35
app/admin/controller/order/WholeController.php

@@ -987,7 +987,7 @@ class WholeController extends Curd
                 if (in_array($params['goods_classify'], ['SERVICE', 'CHNMED', 'CHNNCD', 'MEALS'])) {
                     $payDetails = PayDetail::where('join_pay_member_id', $params['join_order_member_id'])
                         ->where('pay_status', 'SUCCESS')
-                        ->where('pay_prepayid', $params['join_order_member_id'] . ' - WELFARE')
+                        ->where('pay_prepayid', $params['join_order_member_id'] . '-WELFARE')
                         ->whereIn('pay_category', ['SERVICE', 'CHNMED', 'CHNNCD', 'MEALS', 'DESHES'])
                         ->get()
                         ->toArray();
@@ -996,7 +996,7 @@ class WholeController extends Curd
 
                     $refundPayDetails = PayDetail::where('join_pay_member_id', $params['join_order_member_id'])
                         ->where('pay_status', 'SUCCESS')
-                        ->where('pay_prepayid', $params['join_order_member_id'] . ' - WELFARE')
+                        ->where('pay_prepayid', $params['join_order_member_id'] . '-WELFARE')
                         ->where('pay_category', 'REFUND')
                         ->get()
                         ->toArray();
@@ -1020,7 +1020,7 @@ class WholeController extends Curd
                 } else {
                     $payDetails = PayDetail::where('join_pay_member_id', $params['join_order_member_id'])
                         ->where('pay_status', 'SUCCESS')
-                        ->where('pay_prepayid', $params['join_order_member_id'] . ' - WELFARE')
+                        ->where('pay_prepayid', $params['join_order_member_id'] . '-WELFARE')
                         ->whereNotIn('pay_category', ['SERVICE', 'CHNMED', 'CHNNCD', 'MEALS', 'DESHES', 'REFUND', 'RECHARGE'])
                         ->get()
                         ->toArray();
@@ -1029,7 +1029,7 @@ class WholeController extends Curd
 
                     $refundPayDetails = PayDetail::where('join_pay_member_id', $params['join_order_member_id'])
                         ->where('pay_status', 'SUCCESS')
-                        ->where('pay_prepayid', $params['join_order_member_id'] . ' - WELFARE')
+                        ->where('pay_prepayid', $params['join_order_member_id'] . '-WELFARE')
                         ->where('pay_category', 'REFUND')
                         ->get()
                         ->toArray();
@@ -1190,11 +1190,11 @@ class WholeController extends Curd
                 $payData['pay_prepayid'] = $params['pay_category'];
                 $payData['pay_json_response'] = $params['pay_json_response'];
             } else if ($params['pay_category'] == 'CASH') {
-                $payData['pay_prepayid'] = $params['join_order_member_id'] . ' - CASH';
+                $payData['pay_prepayid'] = $params['join_order_member_id'] . '-CASH';
             } else if ($params['pay_category'] == 'WELFARE') {
-                $payData['pay_prepayid'] = $params['join_order_member_id'] . ' - WELFARE';
+                $payData['pay_prepayid'] = $params['join_order_member_id'] . '-WELFARE';
             } else if ($params['pay_category'] == 'VIP') {
-                $payData['pay_prepayid'] = $params['join_order_member_id'] . ' - VIP';
+                $payData['pay_prepayid'] = $params['join_order_member_id'] . '-VIP';
             } else if ($params['pay_category'] == 'CARD') {
                 $payData['pay_prepayid'] = $params['card_id'];
             } else if ($params['pay_category'] == 'OFFLINE') {
@@ -1215,7 +1215,7 @@ class WholeController extends Curd
                 $payData['pay_paytimes'] = date('Y-m-d H:i:s');
                 $payData['pay_json_request'] = json_encode($params);   // {"pay-result": "支付成功", "result-datetime": "2024-07-29 18:38:21"}
                 $payData['pay_json_response'] = $payData['pay_status'] == 'SUCCESS' ? json_encode([
-                    'pay - result' => '支付成功', 'result - datetime' => date('Y-m-d H:i:s')
+                    'pay-result' => '支付成功', 'result-datetime' => date('Y-m-d H:i:s')
                 ]) : '[]';
                 $payData['join_pay_object_json'] = !empty($params['orderId']) ? json_encode(['order_id' => $params['orderId']]) : '[]';
                 $payData['pay_addtimes'] = time();
@@ -1558,7 +1558,7 @@ class WholeController extends Curd
                 }
                 if (isset($constituteList['CASH'])) {
                     $params['order_amount_pay'] = $constituteList['CASH'];
-                    $params['pay_category'] = $params['join_order_member_id'] . ' - CASH';
+                    $params['pay_category'] = $params['join_order_member_id'] . '-CASH';
                 }
                 $amount = $account->member_account_surplus + $account->member_account_added;
                 if ($params['order_amount_pay'] > $amount) {
@@ -1569,7 +1569,7 @@ class WholeController extends Curd
                     'group_id' => $params['orderGroupId'],
                     'member_id' => $params['join_order_member_id'],
                     'amount' => $constituteList['CASH'],
-                    'nbr' => $params['join_order_member_id'] . ' - CASH'
+                    'nbr' => $params['join_order_member_id'] . '-CASH'
                 ];
                 // 生成支付记录
                 $params['order_status_payment'] = 'PENDING';
@@ -1864,7 +1864,7 @@ class WholeController extends Curd
 
             $payDetail = PayDetail::where('join_pay_order_id', $order->order_groupby)->first();
             if ($payDetail) {
-                $payType = explode(' - ', $payDetail->pay_prepayid);
+                $payType = explode('-', $payDetail->pay_prepayid);
                 // 余额支付
                 if (isset($payType[1]) && $payType[1] == 'CASH') {
                     $memberAccount = MemberAccount::where('join_account_member_id', $payDetail->join_pay_member_id)
@@ -2170,7 +2170,7 @@ class WholeController extends Curd
                 if (in_array($params['goods_classify'], ['SERVICE', 'CHNMED', 'CHNNCD', 'MEALS'])) {
                     $payDetails = PayDetail::where('join_pay_member_id', $params['join_order_member_id'])
                         ->where('pay_status', 'SUCCESS')
-                        ->where('pay_prepayid', $params['join_order_member_id'] . ' - WELFARE')
+                        ->where('pay_prepayid', $params['join_order_member_id'] . '-WELFARE')
                         ->whereIn('pay_category', ['SERVICE', 'CHNMED', 'CHNNCD', 'MEALS', 'DESHES'])
                         ->get()
                         ->toArray();
@@ -2179,7 +2179,7 @@ class WholeController extends Curd
 
                     $refundPayDetails = PayDetail::where('join_pay_member_id', $params['join_order_member_id'])
                         ->where('pay_status', 'SUCCESS')
-                        ->where('pay_prepayid', $params['join_order_member_id'] . ' - WELFARE')
+                        ->where('pay_prepayid', $params['join_order_member_id'] . '-WELFARE')
                         ->where('pay_category', 'REFUND')
                         ->get()
                         ->toArray();
@@ -2204,7 +2204,7 @@ class WholeController extends Curd
                 } else {
                     $payDetails = PayDetail::where('join_pay_member_id', $params['join_order_member_id'])
                         ->where('pay_status', 'SUCCESS')
-                        ->where('pay_prepayid', $params['join_order_member_id'] . ' - WELFARE')
+                        ->where('pay_prepayid', $params['join_order_member_id'] . '-WELFARE')
                         ->whereNotIn('pay_category', ['SERVICE', 'CHNMED', 'CHNNCD', 'MEALS', 'DESHES', 'REFUND', 'RECHARGE'])
                         ->get()
                         ->toArray();
@@ -2213,7 +2213,7 @@ class WholeController extends Curd
 
                     $refundPayDetails = PayDetail::where('join_pay_member_id', $params['join_order_member_id'])
                         ->where('pay_status', 'SUCCESS')
-                        ->where('pay_prepayid', $params['join_order_member_id'] . ' - WELFARE')
+                        ->where('pay_prepayid', $params['join_order_member_id'] . '-WELFARE')
                         ->where('pay_category', 'REFUND')
                         ->get()
                         ->toArray();
@@ -2795,7 +2795,7 @@ class WholeController extends Curd
 
                 if (isset($constituteList['CASH'])) {
                     $params['order_amount_pay'] = $constituteList['CASH'];
-                    $params['pay_category'] = $params['join_order_member_id'] . ' - CASH';
+                    $params['pay_category'] = $params['join_order_member_id'] . '-CASH';
                 }
                 if ($params['order_amount_pay'] > $amount) {
                     throw new BusinessException("账户余额不足");
@@ -2805,7 +2805,7 @@ class WholeController extends Curd
                     'group_id' => $params['orderGroupId'],
                     'member_id' => $params['join_order_member_id'],
                     'amount' => $constituteList['CASH'],
-                    'nbr' => $params['join_order_member_id'] . ' - CASH'
+                    'nbr' => $params['join_order_member_id'] . '-CASH'
                 ];
 
                 $params['order_status_system'] = $systemStatus;
@@ -3168,7 +3168,7 @@ class WholeController extends Curd
                 'order_id' => $params['orderId'],
                 'order_groupby' => $params['orderGroupId'],
                 'join_order_member_id' => $params['join_order_member_id'],
-                'order_name' => date('Y-m-d H:i:s') . ' - 订单',
+                'order_name' => date('Y-m-d H:i:s') . '-订单',
                 'order_amount_total' => $params['order_amount_total'],
                 'order_amount_pay' => $params['order_amount_pay'],
                 'order_category' => $orderCategory,
@@ -3319,7 +3319,7 @@ class WholeController extends Curd
             } else if ($params['pay_category'] == 'CARD') {
                 $payPrepayid = $params['card_id'];
             } else {
-                $payPrepayid = $params['join_order_member_id'] . ' - ' . $params['pay_category'];
+                $payPrepayid = $params['join_order_member_id'] . '-' . $params['pay_category'];
             }
             $data = [
                 'join_pay_member_id' => $params['join_order_member_id'],
@@ -4202,7 +4202,7 @@ class WholeController extends Curd
         }
 
         $order = Order::with([
-            'return ' => function ($query) {
+            'return' => function ($query) {
                 $query->select('join_return_order_id', 'orders_return_id', 'order_return_status');
             },
             'sheets',
@@ -4345,7 +4345,7 @@ class WholeController extends Curd
             $return->order_return_status = 'DONE';
             $return->order_return_refund_json = json_encode(['amount' => $amount, 'datetime' => date('Y-m-d H:i:s'), 'user_id' => JwtToken::getCurrentId()]);
             $return->save();
-            $payType = explode(' - ', $payDetail->pay_prepayid);
+            $payType = explode('-', $payDetail->pay_prepayid);
             // 区分账户余额支付和在线支付
             if ($payDetail->pay_prepayid == 'WXPAY') {
                 // 退款
@@ -4443,7 +4443,7 @@ class WholeController extends Curd
                 'pay_paytimes' => date('Y-m-d H:i:s'),
                 'pay_json_request' => json_encode($data),
                 'pay_json_response' => $res,
-                'pay_prepayid' => $payType[0] . (!empty($payType[1]) ? ' - ' . $payType[1] : ''),
+                'pay_prepayid' => $payType[0] . (!empty($payType[1]) ? '-' . $payType[1] : ''),
                 'pay_addtimes' => time()
             ];
             PayDetail::insert($payDetailData);
@@ -4488,7 +4488,7 @@ class WholeController extends Curd
             $orderClassify = ['SERVICE', 'CHNMED', 'CHNNCD'];
             $where['order_classify'] = ['in', 'SERVICE,CHNMED,CHNNCD'];
         } else if ($request->get('goods_classify') && $request->get('goods_classify') == 'DISHES') {
-            $orderClassify = ['MEALS'];
+            $orderClassify = ['MEALS','DISHES'];
             $where['order_classify'] = $request->get('goods_classify');
         } else if ($request->get('goods_classify')) {
             $orderClassify = [$request->get('goods_classify')];
@@ -4660,7 +4660,7 @@ class WholeController extends Curd
             if (!empty($item['member']) && $item['member']['member_mobile'] == '0000') {
                 $memberName = '散客';
             } else {
-                $memberName = !empty($item['cert']) ? $item['cert']['member_cert_name'] : (!empty($item['member']) ? (substr($item['member']['member_mobile'], -4) . '会员' . ' - ') : '');
+                $memberName = !empty($item['cert']) ? $item['cert']['member_cert_name'] : (!empty($item['member']) ? (substr($item['member']['member_mobile'], -4) . '会员' . '-') : '');
                 if (!empty($item['member'])) {
                     $memberName .= $item['member']['member_mobile'];
                 }
@@ -4963,7 +4963,7 @@ class WholeController extends Curd
                         $order->order_amount_paid = $order->order_amount_paid + $totalFee;
                         $order->order_amount_pay = $order->order_amount_paid;
                         if ($order->order_amount_paid >= $order->order_amount_total) {
-                            $full = ' - 满额';
+                            $full = '-满额';
                             $order->order_status_payment = 'SUCCESS';
                             $order->order_status_system = 'DONE';
                             $order->order_is_complete = 'Y';
@@ -4986,7 +4986,7 @@ class WholeController extends Curd
                     PayDetail::where('join_pay_order_id', $order->order_groupby)->where('pay_prepayid', '<>', 'WXPAY')->update([
                         'pay_status' => 'SUCCESS',
                         'pay_paytimes' => date('Y-m-d H:i:s'),
-                        'pay_json_response' => json_encode(['pay - result' => '支付成功', 'result - datetime' => date('Y-m-d H:i:s')])
+                        'pay_json_response' => json_encode(['pay - result' => '支付成功', 'result-datetime' => date('Y-m-d H:i:s')])
                     ]);
                     // 加销售量
                     OrderSheetService::addGoodsSales($params['orderId']);
@@ -5013,7 +5013,7 @@ class WholeController extends Curd
                         $order->order_amount_paid = $order->order_amount_paid + $result['total_amount'];
                         $order->order_amount_pay = $order->order_amount_paid;
                         if ($order->order_amount_paid >= $order->order_amount_total) {
-                            $full = ' - 满额';
+                            $full = '-满额';
                             $order->order_status_system = 'DONE';
                             $order->order_status_payment = 'SUCCESS';
                             $order->order_is_complete = 'Y';
@@ -5189,21 +5189,21 @@ class WholeController extends Curd
                     $this->deductAccountOne($groupId, $item, $amount);
                 }
                 // 如果有余额、VIP、福利账户支付
-                // if (in_array($orders[0]['join_order_member_id'] . ' - CASH', $payDetailType)) {
+                // if (in_array($orders[0]['join_order_member_id'] . '-CASH', $payDetailType)) {
                 //     $cashAmount = PayDetail::where('join_pay_order_id', $groupId)
-                //         ->where('pay_prepayid', $orders[0]['join_order_member_id'] . ' - CASH')
+                //         ->where('pay_prepayid', $orders[0]['join_order_member_id'] . '-CASH')
                 //         ->sum('pay_amount');
-                //     $this->deductAccountOne($groupId, $orders[0]['join_order_member_id'] . ' - CASH', $cashAmount);
+                //     $this->deductAccountOne($groupId, $orders[0]['join_order_member_id'] . '-CASH', $cashAmount);
                 // }
-                // if (in_array($orders[0]['join_order_member_id'] . ' - VIP', $payDetailType)) {
+                // if (in_array($orders[0]['join_order_member_id'] . '-VIP', $payDetailType)) {
                 //     $cashAmount = PayDetail::where('join_pay_order_id', $groupId)
-                //         ->where('pay_prepayid', $orders[0]['join_order_member_id'] . ' - VIP')
+                //         ->where('pay_prepayid', $orders[0]['join_order_member_id'] . '-VIP')
                 //         ->sum('pay_amount');
-                //     $this->deductAccountOne($groupId, $orders[0]['join_order_member_id'] . ' - VIP', $cashAmount);
+                //     $this->deductAccountOne($groupId, $orders[0]['join_order_member_id'] . '-VIP', $cashAmount);
                 // }
-                // if (in_array($orders[0]['join_order_member_id'] . ' - WELFARE', $payDetailType)) {
+                // if (in_array($orders[0]['join_order_member_id'] . '-WELFARE', $payDetailType)) {
                 //     $cashAmount = PayDetail::where('join_pay_order_id', $groupId)
-                //         ->where('pay_prepayid', $orders[0]['join_order_member_id'] . ' - WELFARE')
+                //         ->where('pay_prepayid', $orders[0]['join_order_member_id'] . '-WELFARE')
                 //         ->sum('pay_amount');
                 //     $this->deductAccountOne($groupId, $orders[0]['join_order_member_id'] . 'WELFARE', $cashAmount);
                 // }

+ 11 - 6
app/event/statistics/InOutEvent.php

@@ -46,12 +46,17 @@ class InOutEvent
             ])->where('join_sheet_order_id', $params['orderId'])
                 ->get()
                 ->toArray();
-            $payDetails = PayDetail::where('join_pay_order_id', $order->order_groupby)
-                ->whereJsonContains('join_pay_object_json->order_id', $params['orderId'])
-                ->where('pay_status', 'SUCCESS')
-                ->get()
-                ->toArray();
-
+            if (!empty($params['pay_id'])) {
+                $payDetails = PayDetail::where('pay_id', $params['pay_id'])
+                    ->get()
+                    ->toArray();
+            } else {
+                $payDetails = PayDetail::where('join_pay_order_id', $order->order_groupby)
+                    ->whereJsonContains('join_pay_object_json->order_id', $params['orderId'])
+                    ->where('pay_status', 'SUCCESS')
+                    ->get()
+                    ->toArray();
+            
             $data = [
                 'dept_id' => 0,
                 'member_id' => $order->join_order_member_id,

+ 6 - 6
windows.php

@@ -5,9 +5,7 @@
 require_once __DIR__ . '/vendor/autoload.php';
 
 use Dotenv\Dotenv;
-use process\Monitor;
 use support\App;
-use Workerman\Worker;
 
 ini_set('display_errors', 'on');
 error_reporting(E_ALL);
@@ -31,9 +29,10 @@ $runtimeProcessPath = runtime_path() . DIRECTORY_SEPARATOR . '/windows';
 if (!is_dir($runtimeProcessPath)) {
     mkdir($runtimeProcessPath);
 }
-$processFiles = [
-    __DIR__ . DIRECTORY_SEPARATOR . 'start.php'
-];
+$processFiles = [];
+if (config('server.listen')) {
+    $processFiles[] = __DIR__ . DIRECTORY_SEPARATOR . 'start.php';
+}
 foreach (config('process', []) as $processName => $config) {
     $processFiles[] = write_process_file($runtimeProcessPath, $processName, '');
 }
@@ -90,7 +89,8 @@ EOF;
 }
 
 if ($monitorConfig = config('process.monitor.constructor')) {
-    $monitor = new Monitor(...array_values($monitorConfig));
+    $monitorHandler = config('process.monitor.handler');
+    $monitor = new $monitorHandler(...array_values($monitorConfig));
 }
 
 function popen_processes($processFiles)