1. 主页
  2. 文档
  3. shopX商城
  4. 后台操作文档
  5. 二开行为说明

商城行为列表

钩子名称 解释
order_create_before 订单创建前,检测用户购买限制等
order_create_after 订单创建后,删除购物车,添加自动关闭队列等
order_payed_after 订单支付成功,只是付款成功
order_close_before 订单关闭前,订单将自动关闭
order_close_after 订单关闭后,将积分优惠券等退回
order_cancel_before 订单取消前,用户手动取消订单
order_cancel_after 订单取消后,将积分优惠券等退回
order_send_before 订单发货前,后台发货前
order_send_after 订单发货后,添加自动收货队列
order_confirm_before 订单确认收货前
order_confirm_after 订单确认收货后,(多个商品会走多次)添加自动评价队列
order_confirm_finish 订单全部确认收货(只会走一次)
order_finish 订单完成行为,订单交易完成(评价完成)
order_comment_before 订单评价前
order_comment_after 订单评价后,判断并完成订单
order_refund_before 订单退款前
order_refund_after 订单退款后
aftersale_finish_before 售后完成前
aftersale_finish_after 售后完成后
aftersale_refuse_before 售后拒绝前
aftersale_refuse_after 售后拒绝后
aftersale_change 售后变动(包含售后完成/拒绝)
activity_update_after 活动更新后,将活动缓存到 redis,添加活动结束队列
activity_delete_after 活动删除之后,将活动从 redis 删除
activity_groupon_finish 拼团成功
activity_groupon_fail 拼团失败

二次开发方式

!!!注意,在研究清楚钩子逻辑之前,请不要置顶自己定义的行为,更不要覆盖商城行为
!!!注意,在研究清楚钩子逻辑之前,请不要置顶自己定义的行为,更不要覆盖商城行为
!!!注意,在研究清楚钩子逻辑之前,请不要置顶自己定义的行为,更不要覆盖商城行为

推荐方法

application/tags.php

return [
    // 应用初始化
    'app_init'     => [],
    // 应用开始
    'app_begin'    => [],
    // 模块初始化
    'module_init'  => [
        'app\\common\\behavior\\Common',
    ],
    // 插件开始
    'addon_begin'  => [
        'app\\common\\behavior\\Common',
    ],
    // 操作开始执行
    'action_begin' => [],
    // 视图内容过滤
    'view_filter'  => [],
    // 日志写入
    'log_write'    => [],
    // 应用结束
    'app_end'      => [],
    
    
    // 在此处追加 shopro 的行为,例如
    
    'order_finish' => [
        // 自定义类1
        // 自定义类2
    ]
];

手动注册

Hook::add('order_finish','自定义类'); 
示例
Hook::add('order_finish','app\\index\\behavior\\CheckLang'); 

重要钩子说明

order_finish

订单交易完成

执行时机

  • 订单全部确认收货,并且全部评价完成,订单状态变为交易完成时候执行

检测时机

  • 订单里面的商品评价后,检测用户订单是否全部评价完成
  • 系统自动好评,检测用户订单是否全部评价完成

钩子作用

  • 可以在这里添加分佣逻辑

注意

  • 注意订单状态必须变为交易完成才会执行

order_confirm_finish

订单确认收货完成

执行时机

  • 订单全部确认收货完成,不论是否进行了评价

检测时机

  • 自动发货订单已支付,自动确认收货后检测是否全部确认收货
  • 用户手动确认收货,检测是否全部确认收货
  • 系统自动确认收货,检测是否全部确认收货

钩子作用

  • 可以在这里添加分佣逻辑

注意

  • 注意这里并不是订单的状态,这时订单状态为待评价状态

order_confirm_after

订单确认收货之后

执行时机

  • 用户自己点击确认收货
  • 系统自动确认收货
  • 自动发货订单,自动确认收货

注意

  • 一个订单如果购买了多个商品会执行多次,因为订单根据商品单独确认收货
这篇文章对您有用吗?

我们要如何帮助您?

发表评论
暂无评论

还没有评论呢,快来抢沙发~