| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 | <?phpnamespace app\admin\service\order;use app\model\Order;use app\model\OrderSheet;use support\Db;use support\Redis;class OrderService{    /**     * @Desc 自动确认收货     * @Author Gorden     * @Date 2024/4/11 16:09     *     * @return void     */    public static function AutomaticReceipt()    {        try {            Db::beginTransaction();            $timeUnix = strtotime("-7 days");            $orders = Order::where('order_status_system', 'SIGNED')                ->where('order_addtimes', '<', $timeUnix)                ->get();            foreach ($orders as $order) {                // 订单主表                Order::where('order_id', $order->order_id)->update([                    'order_is_complete' => 'Y',                    'order_status_system' => 'CONFIRM'                ]);                // 订单详情表                OrderSheet::where('join_sheet_order_id', $order->order_id)->update(['order_sheet_status' => 'CONFIRM']);            }            Db::commit();        } catch (\Exception $e) {            Db::rollBack();        }    }    public static function checkPayingOrder()    {        try {            Db::beginTransaction();            $timeUnix = strtotime("-30 minutes");            $orders = Order::where('order_status_system', 'PAYING')                ->where('order_addtimes', '<', $timeUnix)                ->get();            foreach ($orders as $order) {                // 订单主表                Order::where('order_id', $order->order_id)->update([                    'order_category' => 'CANCEL',                    'order_status_system' => 'CANCEL',                    'order_status_payment' => 'CANCEL'                ]);                // 订单详情表                OrderSheet::where('join_sheet_order_id', $order->order_id)->update(['order_sheet_status' => 'CANCEL']);            }            Db::commit();        } catch (\Exception $e) {            Db::rollBack();        }    }}
 |