From 2e4d73d62462ae7c1067604a4106928bde4fb15b Mon Sep 17 00:00:00 2001 From: gongfuxiang <2499232802@qq.com> Date: Wed, 24 Jul 2019 00:12:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=95=86=E5=93=81=E4=BF=9D=E5=AD=98=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E9=92=A9=E5=AD=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/admin/controller/Goods.php | 18 ++++++++++---- .../admin/view/default/goods/save_info.html | 24 +++++++++++++++++++ .../admin/view/default/payment/save_info.html | 2 +- .../admin/view/default/user/save_info.html | 2 +- application/service/GoodsService.php | 14 +++++++++++ application/service/UserService.php | 2 +- 6 files changed, 55 insertions(+), 7 deletions(-) diff --git a/application/admin/controller/Goods.php b/application/admin/controller/Goods.php index 69def51d1..cdb077b55 100755 --- a/application/admin/controller/Goods.php +++ b/application/admin/controller/Goods.php @@ -10,6 +10,7 @@ // +---------------------------------------------------------------------- namespace app\admin\controller; +use think\facade\Hook; use app\service\ResourcesService; use app\service\GoodsService; use app\service\RegionService; @@ -129,7 +130,6 @@ class Goods extends Common $specifications = GoodsService::GoodsEditSpecifications($ret['data'][0]['id']); $this->assign('specifications', $specifications); } - $this->assign('data', $data); // 地区信息 $this->assign('region_province_list', RegionService::RegionItems(['pid'=>0])); @@ -144,12 +144,22 @@ class Goods extends Common $goods_spec_extends = GoodsService::GoodsSpecificationsExtends(); $this->assign('goods_specifications_extends', $goods_spec_extends['data']); - // 参数 - $this->assign('params', $params); + // 商品编辑页面钩子 + $this->assign('plugins_view_admin_goods_save_data', Hook::listen('plugins_view_admin_goods_save', + [ + 'hook_name' => 'plugins_view_admin_goods_save', + 'is_backend' => false, + 'goods_id' => $params['id'], + 'data' => &$data, + 'params' => &$params, + ])); - // 编辑器文件存放地址 + // 编辑器文件存放地址 $this->assign('editor_path_type', 'goods'); + // 数据 + $this->assign('data', $data); + $this->assign('params', $params); return $this->fetch(); } diff --git a/application/admin/view/default/goods/save_info.html b/application/admin/view/default/goods/save_info.html index 53be260e4..cf9326490 100755 --- a/application/admin/view/default/goods/save_info.html +++ b/application/admin/view/default/goods/save_info.html @@ -36,6 +36,9 @@
  • 电脑端详情
  • +
  • + 扩展数据 +
  • SEO
  • @@ -377,6 +380,27 @@ + +
    + + + {{if isset($shopxo_is_develop) and $shopxo_is_develop eq true}} +
    + plugins_view_admin_goods_save +
    + {{/if}} + {{if !empty($plugins_view_admin_goods_save_data) and is_array($plugins_view_admin_goods_save_data)}} + {{foreach $plugins_view_admin_goods_save_data as $hook}} + {{if is_string($hook) or is_int($hook)}} + {{$hook|raw}} + {{/if}} + {{/foreach}} + {{else /}} +
    没有扩展数据
    + {{/if}} + +
    +
    diff --git a/application/admin/view/default/payment/save_info.html b/application/admin/view/default/payment/save_info.html index e408be755..6566f875e 100755 --- a/application/admin/view/default/payment/save_info.html +++ b/application/admin/view/default/payment/save_info.html @@ -39,7 +39,7 @@ {{if !empty($data['element'])}}
    - + {{foreach $data.element as $element}}
    diff --git a/application/admin/view/default/user/save_info.html b/application/admin/view/default/user/save_info.html index 6da7e7258..fed2a4398 100755 --- a/application/admin/view/default/user/save_info.html +++ b/application/admin/view/default/user/save_info.html @@ -75,7 +75,7 @@ {{/if}} {{if !empty($plugins_view_admin_user_save_data) and is_array($plugins_view_admin_user_save_data)}}
    - +
    {{foreach $plugins_view_admin_user_save_data as $hook}} {{if is_string($hook) or is_int($hook)}} diff --git a/application/service/GoodsService.php b/application/service/GoodsService.php index d1ff5c5ec..250e08795 100755 --- a/application/service/GoodsService.php +++ b/application/service/GoodsService.php @@ -1090,6 +1090,20 @@ class GoodsService 'seo_desc' => empty($params['seo_desc']) ? '' : $params['seo_desc'], ]; + // 商品保存处理钩子 + $hook_name = 'plugins_service_goods_save_handle'; + $ret = Hook::listen($hook_name, [ + 'hook_name' => $hook_name, + 'is_backend' => true, + 'params' => &$params, + 'data' => &$data, + 'goods_id' => isset($params['id']) ? intval($params['id']) : 0, + ]); + if(isset($ret['code']) && $ret['code'] != 0) + { + return $ret; + } + // 启动事务 Db::startTrans(); diff --git a/application/service/UserService.php b/application/service/UserService.php index 9cd8de590..956f13134 100755 --- a/application/service/UserService.php +++ b/application/service/UserService.php @@ -299,7 +299,7 @@ class UserService 'upd_time' => time(), ]; - // 用户编辑处理钩子 + // 用户保存处理钩子 $hook_name = 'plugins_service_user_save_handle'; $ret = Hook::listen($hook_name, [ 'hook_name' => $hook_name,