diff --git a/addons/shopro/controller/zy/Activity.php b/addons/shopro/controller/zy/Activity.php index c9e0e32..9af9faf 100644 --- a/addons/shopro/controller/zy/Activity.php +++ b/addons/shopro/controller/zy/Activity.php @@ -222,7 +222,7 @@ class Activity extends Base 'game_id' => $game['id'], 'signin' => 0, 'order' => $order, - 'status' => 1, + 'status' => ($order > $game['limit_num']) ? 0 : 1, //超过报名人数为候补 ]; if ($u['gender'] == 0) { $gender['woman'] += 1; diff --git a/addons/shopro/job/OrderAutoOper.php b/addons/shopro/job/OrderAutoOper.php index f7e05d7..f719806 100644 --- a/addons/shopro/job/OrderAutoOper.php +++ b/addons/shopro/job/OrderAutoOper.php @@ -2,19 +2,16 @@ namespace addons\shopro\job; -use think; -use think\Db; -use think\Log; use think\queue\Job; +use think\Log; +use think\Db; use think\Collection; -use app\admin\model\zy\game\GameJoin; -use app\admin\model\shopro\order\Order; -use app\admin\model\shopro\order\Action; -use app\admin\model\zy\game\Participant; -use addons\shopro\service\order\OrderOper; use think\exception\HttpResponseException; -use app\admin\model\shopro\order\OrderItem; use addons\shopro\exception\ShoproException; +use app\admin\model\shopro\order\Order; +use app\admin\model\shopro\order\OrderItem; +use addons\shopro\service\order\OrderOper; +use app\admin\model\shopro\order\Action; /** * 订单自动操作 @@ -25,13 +22,12 @@ class OrderAutoOper extends BaseJob /** * 订单自动关闭 */ - public function autoClose(Job $job, $data) - { + public function autoClose(Job $job, $data){ if (check_env('yansongda', false)) { set_addon_config('epay', ['version' => 'v3'], false); \think\Hook::listen('epay_config_init'); } - + try { $order = $data['order']; @@ -43,12 +39,6 @@ class OrderAutoOper extends BaseJob $orderOper = new OrderOper(); $order = $orderOper->close($order, null, 'system'); - // zy体育报名处理(未支付,自动退坑) - $join = GameJoin::where('order_id', $data['order']['id'])->find(); - if (!empty($join)) { - $join->save(['status' => -1]); - Participant::where('game_join_id', $join['id'])->update(['status' => -1]); - } return $order; }); } @@ -77,8 +67,7 @@ class OrderAutoOper extends BaseJob /** * 订单自动确认收货 */ - public function autoConfirm(Job $job, $data) - { + public function autoConfirm(Job $job, $data) { try { $order = $data['order']; $items = $data['items']; @@ -91,7 +80,7 @@ class OrderAutoOper extends BaseJob $order = Db::transaction(function () use ($order, $itemIds) { $orderOper = new OrderOper(); $order = $orderOper->confirm($order, $itemIds, null, 'system'); - + return $order; }); } @@ -118,8 +107,7 @@ class OrderAutoOper extends BaseJob - public function autoComment(Job $job, $data) - { + public function autoComment(Job $job, $data) { try { $order = $data['order']; $item = $data['item']; @@ -135,7 +123,7 @@ class OrderAutoOper extends BaseJob 'item_id' => $item['id'], 'level' => 5, ]; - + // 评价一个订单商品 $order = $orderOper->comment($order, $comments, null, 'system'); @@ -164,4 +152,4 @@ class OrderAutoOper extends BaseJob $job->delete(); } } -} +} \ No newline at end of file diff --git a/addons/shopro/job/OrderPaid.php b/addons/shopro/job/OrderPaid.php index bf0f2a1..5e21faa 100644 --- a/addons/shopro/job/OrderPaid.php +++ b/addons/shopro/job/OrderPaid.php @@ -2,18 +2,15 @@ namespace addons\shopro\job; -use think\Db; use think\queue\Job; -use addons\shopro\service\StockSale; -use addons\shopro\controller\zy\Game; -use app\admin\model\shopro\user\User; -use app\admin\model\zy\game\GameJoin; -use app\admin\model\shopro\order\Order; -use app\admin\model\zy\game\Participant; -use addons\shopro\service\order\OrderOper; +use think\Db; use think\exception\HttpResponseException; -use addons\shopro\facade\Activity as ActivityFacade; +use app\admin\model\shopro\order\Order; +use addons\shopro\service\StockSale; +use app\admin\model\shopro\user\User; use app\admin\model\shopro\order\Invoice as OrderInvoice; +use addons\shopro\service\order\OrderOper; +use addons\shopro\facade\Activity as ActivityFacade; /** * 订单自动操作 @@ -55,13 +52,10 @@ class OrderPaid extends BaseJob // 将订单参与活动信息改为已支付 $orderOper = new OrderOper(); $orderOper->activityOrderPaid($order); - + // 触发订单支付完成事件 $data = ['order' => $order, 'user' => $user]; \think\Hook::listen('order_paid_after', $data); - - // zy体育报名处理 - GameJoin::where('order_id', $order->id)->update(['status' => 1]); }); } @@ -102,9 +96,6 @@ class OrderPaid extends BaseJob // 触发订单选择线下支付(货到付款)完成事件 $data = ['order' => $order, 'user' => $user]; \think\Hook::listen('order_offline_after', $data); - - // zy体育报名处理 - GameJoin::where('order_id', $order->id)->update(['status' => 1]); }); } @@ -119,4 +110,4 @@ class OrderPaid extends BaseJob format_log_error($e, 'OrderPaid.offline'); } } -} +} \ No newline at end of file diff --git a/addons/shopro/listener/Order.php b/addons/shopro/listener/Order.php index 4160707..9788915 100644 --- a/addons/shopro/listener/Order.php +++ b/addons/shopro/listener/Order.php @@ -2,30 +2,32 @@ namespace addons\shopro\listener; -use addons\shopro\library\notify\Notify; -use addons\shopro\library\Pipeline; -use addons\shopro\service\order\OrderThrough; -use app\admin\model\shopro\user\User; -use app\admin\model\shopro\Admin; +use addons\shopro\facade\Wechat; use app\admin\model\shopro\Cart; -use app\admin\model\shopro\user\Coupon; -use app\admin\model\shopro\order\Order as OrderModel; -use app\admin\model\shopro\order\OrderItem; -use app\admin\model\shopro\order\Invoice as OrderInvoiceModel; -use app\admin\model\shopro\order\Express as OrderExpressModel; -use app\admin\model\shopro\order\Action; -use app\admin\model\shopro\order\Invoice; +use app\admin\model\shopro\Admin; use app\admin\model\shopro\Config; +use addons\shopro\library\Pipeline; use addons\shopro\service\StockSale; use addons\shopro\traits\CouponSend; -use addons\shopro\service\order\OrderRefund; +use app\admin\model\shopro\user\User; +use app\admin\model\zy\game\GameJoin; use addons\shopro\service\pay\PayOper; +use app\admin\model\shopro\user\Coupon; +use addons\shopro\library\notify\Notify; +use app\admin\model\shopro\order\Action; +use app\admin\model\zy\game\Participant; +use app\admin\model\shopro\order\Invoice; use addons\shopro\service\order\OrderOper; -use addons\shopro\service\user\User as UserService; +use app\admin\model\shopro\order\OrderItem; +use addons\shopro\service\order\OrderRefund; +use addons\shopro\service\order\OrderThrough; use addons\shopro\service\order\OrderDispatch; use addons\shopro\library\activity\traits\GiveGift; +use addons\shopro\service\user\User as UserService; use addons\shopro\facade\Activity as ActivityFacade; -use addons\shopro\facade\Wechat; +use app\admin\model\shopro\order\Order as OrderModel; +use app\admin\model\shopro\order\Express as OrderExpressModel; +use app\admin\model\shopro\order\Invoice as OrderInvoiceModel; use addons\shopro\library\easywechatPlus\WechatMiniProgramShop; class Order @@ -252,6 +254,9 @@ class Order ]) ); } + + // zy体育报名处理 + GameJoin::where('order_id', $order->id)->update(['status' => 1]); } @@ -599,6 +604,13 @@ class Order // 将开票信息取消 $this->cancelInvoice($order, 'invalid'); + // zy体育报名处理(未支付,自动退坑) + $join = GameJoin::where('order_id', $order->id)->find(); + if (!empty($join)) { + $join->save(['status' => -1]); + Participant::where('game_join_id', $join['id'])->update(['status' => -1]); + } + return $order; }